Algorithms, Computer Engineering

Assignment Help:
Design an algorithm (using pseudocode) that takes in as an input, two 2-D int arrays that are assumed to be 2 black-and-white images: initialImage x, whose dimensions are IxJ, and finalImage y, whose dimensions are IxK. The algorithm will compare x to the y, row-by-row, as defined below. Your algorithm will employ a dynamic programming scheme to compare X to Y identifying the minimal difference between each row.

Because you are working with black-and-white images only, you should assume that each image is a 2-D int array consisting of 2 possible values: 0 or 1, where 0 represents black and 1 represents white. Thus, this 2-D grid of 0 and 1 values comprise a 2-D black-and-white image. Each row of this image is then simply a 1-D int array filled with either 0s or 1s. Therefore, you must define how you will measure the difference between the strings of 0s and 1s in each row.

Remember that you will do the comparison one row in the images at a time.

First, compare X1,* to Y1,*. (Here X1,* is the first row in image X and Y1,* is the first row in image Y ). Next, compare X2 to Y2... Each one of these comparisons will require the construction of a D (distance) matrix.

In the following example, the first row of X is X1,*, and the first row of Y is Y1,* = 00110.



Use the following recurrence relation to develop your pseudocode:



After the D matrix is completed, the minimum number in the bottom row is the minimal mismatch for this row. You will assign this value to the variable minVali. This number tells how different row X1,* is from row Y1,* . You will then repeat this comparison for all rows i and aggregate the difference when complete into variable totalDifference = Si minVali.

As a result, the algorithm will compare the total difference to a threshold value called thresh. If total value is above the threshold, the images are declared different, otherwise they are declared to be similar images. You can assume that the thresh variable is supplied as an input to your algorithm.

Part 1

Create a portfolio that includes all previous IPs.

Part 2a:

Design pseudocode for the image comparison algorithm discussed above, given input Images X, Y, and thresh. The output is a declaration: The images are similar, or the images are different.

Part 2b:

Discuss the optimality of the dynamic programming solution. Discuss the time complexity of this algorithm in terms of the size of the inputs X and Y.

Related Discussions:- Algorithms

Main problems with evaluation functions, Main problems with evaluation func...

Main problems with evaluation functions: Superlatively, evaluation functions should be quick calculates. Wherever is chance they take a long time to estimate, so after then le

Explain the main part of step by step switching system, Explain the main pa...

Explain the main part of configuration of a step by step switching system with the help of a neat diagram . Configuration of a step by step switching system: A step

Identify the fastest logic gate, Which of the following is the fastest logi...

Which of the following is the fastest logic ECL, TTL, CMOS or LSI ? Ans. The fastest logic is ECL.

Explain the fetch cycle, Q. Explain the Fetch Cycle? The beginning of e...

Q. Explain the Fetch Cycle? The beginning of every instruction cycle is the fetch cycle and causes an instruction tobe fetched from memory.   The fetch cycle comprises four

What is system prompt, Q. What is System Prompt? On loading (or Switchi...

Q. What is System Prompt? On loading (or Switching to) DOS, the screen displays C :\>, C>, A :\> or a similar message. The message displayed by DOS is called DOS Prompt or Sys

C LANGUAGE PROGRAMME, find a c program to find the area under the curve y=f...

find a c program to find the area under the curve y=f(x) between x=a and x=b,intregrate y=f(x)between the limits of a and b.the area under a curve between two points can be found b

What is missing offset, Q. What is Missing offset? The xxxx in machine ...

Q. What is Missing offset? The xxxx in machine language for instruction at line 0010 is there since the assembler doesn't know DATA segment location which will be determined at

Future scope of the internet, Q. Future scope of the Internet? The futu...

Q. Future scope of the Internet? The future scope of the Internet, along with the World Wide Web (born in 1990), and the commercialization of the Internet are bound to grow exp

Higher order predicate logic - artificial intelligence, Higher Order Predic...

Higher Order Predicate Logic: In first order predicate logic, we are allowed to quantify over objects only. If we let  ourselves  to  quantify  over  predicate  or  function  s

What is importance of ras and cas in sdram, What is importance of RAS and C...

What is importance of RAS and CAS in SDRAM? SDRAM acquires its address command into two address words. This uses a multiplex scheme to save input pins. The initial address word

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd