E27 computer vision spring 2016 - homework 4 a line has two


E27: Computer Vision Spring 2016 - HOMEWORK 4

1. Normalized correlation and template matching.

Download and run the findx example from the course website. Then, read the documentation for the OpenCV functions cv2.matchTemplate(), cv2.rectangle(), and cv2.minMaxLoc(). Finally, supply comments in the source file to explain the function of each line of code. The comments should answer at least the following questions:

  • What is the purpose of matchTemplate here?
  • One of the rectangle calls is necessary for the operation of the program, and the other is for display only. Which is which, and why? (Hint: you can find out by commenting out one or the other...)
  • What is the r variable controlling? What happens if you set it to 1? To 500?

2. Hough lines

Find an image with strong linear edges such as the one on the left below. Then write a script which uses cv2.Canny to identify the edges in the image, and cv2.HoughLines and/or cv2.HoughLinesP to identify the parametric equations of the lines (or line segments) in the image, and plot the identified lines using the cv2.line function as shown below:

94_Figure.png

Note that cv2.HoughLines returns the identified lines in the two-parameter (ρ, θ) format, but cv2.line expects two line segment endpoints of the form (x1, y1) and (x2, y2) as pairs (tuples) of integers. The following code will help you convert from the first to the second:

1385_Figure1.png

Also note that you have a large number of parameters to select: thresholds for the Canny edge detector, as well as discretization sizes and threshold for Hough lines. Include comments on how you identified these parameters (with more detail than just "trial and error", please).

3. Hough circles

This question is very Google-able, so please think about it for a while before you search for answers (if you do search for answers, please indicate where you found them).

a. A line has two degrees of freedom in 2D. How many degrees of freedom does a circle have? That is, what is the minimum number of parameters needed to uniquely specify any circle in the plane? How would you parameterize it?

b. If you plot the set of "votes" for lines corresponding to a particular (x, y) location in the plane in the two-parameter (ρ, θ) space, you will obtain a sinusoidal curve. Explain what type of curve or surface you would obtain if you plot the set of "votes" for circles for a given (x, y) location, based on your parameterization above.

Attachment:- findx.zip

Request for Solution File

Ask an Expert for Answer!!
Computer Engineering: E27 computer vision spring 2016 - homework 4 a line has two
Reference No:- TGS01476194

Expected delivery within 24 Hours