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

Resolution method - artificial intelligence, Resolution Method - Artificial...

Resolution Method - Artificial intelligence: A minor miracle happened in 1965 when Alan Robinson published his resolution function. This function uses a generalized format of t

Dynamic cons, i want dynamic cons simple program in c++

i want dynamic cons simple program in c++

Calculate the shortest distance using minimum spanning tree, Does the minim...

Does the minimum spanning tree of a graph give the shortest distance between any 2 specified nodes? No. The Minimal spanning tree makes sure that the total weight of the tree i

Give an example of resource allocation graph & deadlocked, Suppose there ar...

Suppose there are 2 copies of resource A, 3 copies of resource B, and 3 copies of resource C. Suppose further that process 1 holds one unit of resources B and C and is waiting for

Example of arrays pointers, Q. Example of arrays pointers? General form...

Q. Example of arrays pointers? General form of declaration of array in Fortran 90 is type, DIMENSION(bound) [,attr] :: name E.g. the declaration          INTEGER, D

Determine the operations from functions, Operations from Functions As ...

Operations from Functions As we know, function is actually operations on object. These   functions could be simple and summarized on object model. Organise functions into oper

What are disadvantages of eprom, What are disadvantages of EPROM? The c...

What are disadvantages of EPROM? The chip must be physically removed from the circuit for reprogramming and its whole contents are erased by the UV light.

Define superscalar processors, In scalar processors just one instruction is...

In scalar processors just one instruction is implemented per cycle which means just one instruction is issued for each cycle and only that one instruction is completed however the

Explain micro-operations performed by cpu, Q. Explain Micro-operations perf...

Q. Explain Micro-operations performed by CPU? The micro-operations performed by CPU can be categorized as:    Micro-operations for data transfer from register-memory, re

What are the advantages of batch processing, What are the advantages of bat...

What are the advantages of batch processing This has the advantage which jobs can be processed when computer resources are less busy (for example during the evening or at night

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