Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: How to calculate the angle between two images?
Replies: 41   Last Post: Dec 8, 2012 11:02 PM

 Messages: [ Previous | Next ]
 khoo Posts: 63 Registered: 8/9/08
Re: How to calculate the angle between two images?
Posted: Apr 3, 2009 8:22 AM

> One method that I found for easily determining the relative
> angle of 'twist' between a known reference image and a rotated image was accomplished very reliably even for arbitrary images.
>
> 1) Compute the vertical and horizontal gradient of every
> pixel
> 2) Use the atan2 function to convert the image to an angle
> image. Note that pixels on a featureless region returns
> angles that are purely dictated by noise.
> 3) Calculate an edge image - using edge, Canny is a good
> choice, but Sobel will probably work - depending on the
> complexity of the image.
> 4) Fatten up the edge lines using morphology operators
> dilate/erode. Binarize into a mask image
> meaningless angle pixels. We are only looking at gradients
> that are real.
> 6) Apply this to the reference image, and the target image
> 7) Histogram the results. Remember as the pixels represent
> angles, the histogram essentially wraps round 0 mapping to
> 8) Compare the histograms, I found correlation a good way
> to do this, the peak on the correlogram provides you with
> the relative rotation between the two images.
>
> One danger point is that if your image suffers badly from
> digital stepping (aliasing) you can get peaks at 0 and 90
> degrees on both images. So you need to do something
> intelligent at removing this from your histograms prior to
>
> One of the fun things that I tried, was to use fast
> correlation to do the matching. I FFT'd both histograms,
> then extended the spectra by zero packing, done the
> multiplication in the frequency domain, then followed up by
> the IFFT. This generated a very nicely interpolated measure
> of the relative rotation between the two images.
>
> Hope that this is helpful, and makes sense
>
> Regards
>
> Dave Robinson

4) Binarize into a mask image
> meaningless angle pixels. We are only looking at gradients
> that are real.

i no understand this two sentence meaning..can u explain it or provide the code need to be used??

Date Subject Author
4/3/09 khoo
4/3/09 Dave Robinson
4/3/09 khoo
4/3/09 Dave Robinson
4/3/09 khoo
4/3/09 Dave Robinson
4/3/09 khoo
4/3/09 khoo
4/4/09 khoo
4/4/09 Dave Robinson
4/4/09 khoo
4/4/09 khoo
4/5/09 khoo
4/5/09 Dave Robinson
4/5/09 khoo
4/5/09 khoo
4/5/09 Dave Robinson
4/5/09 khoo
4/6/09 khoo
4/6/09 Dave Robinson
4/6/09 khoo
4/6/09 Dave Robinson
4/6/09 khoo
4/6/09 Dave Robinson
4/6/09 khoo
4/6/09 khoo
4/6/09 khoo
4/7/09 khoo
4/7/09 khoo
4/7/09 Dave Robinson
12/8/12 Jeff
4/3/09 Skeptic
4/3/09 Dave Robinson
4/3/09 Roger Stafford
4/3/09 khoo
4/3/09 Roger Stafford
4/3/09 ImageAnalyst
4/3/09 khoo
4/4/09 khoo
4/6/09 Matt
4/6/09 khoo
4/6/09 Matt