Design pseudocode for the image comparison algorithm

Assignment Help Basic Computer Science
Reference no: EM13935266

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.
https://class.coloradotech.edu/CbFileShareCommon/ctu/CS627/Assignment_Assets/158328_a.jpg

Use the following recurrence relation to develop your pseudocode:
https://class.coloradotech.edu/CbFileShareCommon/ctu/CS627/Assignment_Assets/158328_b.jpg

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 = Σi 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 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.

Reference no: EM13935266

Questions Cloud

Ict technology for task2b according to the requirements : Use new ICT technology for task2B according to the requirements mentioned above. Already I have uploaded Assignment 1 for your reference because the current assignment deals with continuation of assignment 1 So please read the requirement carefull..
Which type of application presents the biggest challenge : When constructing cDNA libraries it is very important to copy the whole of an mRNA into cDNA. One way to try and ensure that the 5' end of a mRNA is represented in a cDNA copy is to use "cap-trapper" technology.
Employees in todays globalised business world : Its an essay based on the case study given in the assignment. Discuss the key factors in play in the competition for skilled and values employees in today's globalised business world.
Identify three types of manufacturing companies : Identify three types of manufacturing companies for which process costing would be an appropriate product costing system.
Design pseudocode for the image comparison algorithm : 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 ..
Explain the major differences between job order : Explain the major differences between job order and process costing systems.
Determine the required torque : Determine the required torque M as a function of (). The mass of eight cubes is 0.25 kg, and the center- of-mass distance r = 0.55r. Neglect friction, and assume that the resultant of the distributed normal force acting on the cube passes through ..
Recurrence relation to develop your pseudocode : 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 ..
Describes two functions of dna : Explain how knowledge of DNA and technology is being used today to do things that we could not have done 50 years ago. Address how control of gene expression affects biotechnology.

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Write algorithm to save few new phone numbers

write algorithm to save few new phone numbers in the address book of cell phone. algorithm should work even if there's only one new phone number or several new phone numbers to save. ke sure to handle the scene if the address book is full.

  What does function declaration and function call do

What does Function Declaration and Function Call do

  What are the benefits of using tangible interfaces

What are the benefits of using tangible interfaces compared with other interfaces like GUI, pen-based or gesture?

  Explain integration between systems and infrastructure

Describe the relationship and integration between systems and infrastructure. Note: Database and Data Warehousing, Analytics, Interfaces and Cloud Technology, and Infrastructure and Security should be considered.

  Use the mvc design pattern to create a gui program

Use the MVC design pattern to create a GUI program for Triangle objects. Include a form for users to enter values for a triangle;s three sides and a button that when clicked, displays data from the Triangle object created from the input.

  What is an html text editor

Windows NotePad is a simple text editor. What is the difference between a text editor and a word processor?" What is an HTML Text Editor? What is it used for and how does it compare to a regular text editor

  Calculate the sum of all the elements of firstarray

Calculate the sum of all the elements of FirstArray and put the sum in EAX. Use indirect addressing to access the elements of array.

  How structured approach associates to creating programs

When building the house, structured, modular approach is better than haphazard approach. Describe how structured approach associates to creating programs.

  Using a truth table or equivalent determine following

Using a Truth Table or equivalent determine

  The program by three-dimensional array

Write a small program that will read in 52 cards from a file, shuffle the cards, print the unshuffled deck to the screen, and print the shuffled deck into new file. The unshuffled deck of cards should be represented in the program by three-dimensiona..

  Prepare disaster recovery plan for organization

Prepare a Disaster Recovery (DR) Plan for following organization; Company; Widget Works Electronics, Employees; 250, Infrastructure; 1 Central Office building housing primary datacenter. 10 satellite sales branches.

  Create an array of integers 10 elements long

Create an array of integers 10 elements long. ? Loop through this array (using its length value), assigning a random value between 0 and 100 (inclusive) to each element. Remember: random(100) returns a float and will never return 100.0.

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