Thursday, December 30, 2010

Image Transform Samples

Pyramid Thresholds

  • Changing Pyramid Levels from 4 to 6 makes the regions bigger ( threshold2 = 0)
  • Significant differences with each step observed at lower end of threshold2.

  • Use pictures of simple geometry to better tell the characteristics of output. Real life images seem to just give a gray noisy output.
  • My understanding of DFT is it breaks down an image into a series of simpler images superimposed together, similar to the way Fourier Thereom describes. A periodic function is made up of a series of sine waves of different amplitudes in frequency multiples of the original, of different phases. I got this idea after reading from the website above and a quick read of DCT Basis Functions section from Digital Video Decompression.
Distance Transform

  • Good introduction:
  • The contours gets 'rounder' as going C -> L1 -> L2.
  • Grid size 3, 5, Exact only makes significant differences in L2 from my tests using lena.jpg and stuffs.jpg
  • The objects of which their edges are detected varies with the edge-threshold. It makes sense as more details are revealed of a certain object when the threshold gets close to the intensity level of the object (in grayscale).

  • Added HoughCircles to the sample program. The radius is often wrong with small circles (pic1.png). The centers are correct. It is consistent with a comment from the OpenCV book regarding the radius value should not be used.
  • HoughCircles() has built-in Canny. Running a second Canny on a Canny Edge Detected image would add an dotted edge inside that first one. Resulting in a double-circle. And somehow this would get more accurate radius value.
  • Still unable to get all the circles detected from pic1.png test image.
  • >>> See later post on Randomized Hough Transforms for ellipse detection. <<<
Laplace Edge Detector
  • Added a switch to disable the edge detector, to compare the effects of different blurring methods.
  • Output from Median filtering is like drawing with a thick paint brush.
  • Added Bilateral Filtering to the rotation - significantly slows down the movie.
  • Median filtering is slower than Gaussian, but a bit faster than Bilateral.
  • Bilateral filtering shows thick edges like Median, and preserve more edges than the latter.
  • Getting more bang for the buck with Gaussian.
  • Higher Sigma -> Larger Window -> Slower and Blurrier images except Bilateral.
  • Made the Laplace aperture (odd and < 31) a function of Sigma. Reasonable output obtained within 7. Fewer and thinner edges with smaller aperture.

No comments:

Post a Comment