Exercises

  1. Generate 1,000 random numbers ri between 0 and 1. Decide on a bin size and then take a histogram of 1/ri.

    1. Are there similar numbers of entries (i.e., within a factor of ±10) in each histogram bin?

    2. Propose a way of dealing with distributions that are highly nonlinear so that each bin has, within a factor of 10, the same amount of data.

  2. Take three images of a hand in each of the three lighting conditions discussed in the text. Use cvCalcHist() to make an RGB histogram of the flesh color of one of the hands photographed indoors.

    1. Try using just a few large bins (e.g., 2 per dimension), a medium number of bins (16 per dimension) and many bins (256 per dimension). Then run a matching routine (using all histogram matching methods) against the other indoor lighting images of hands. Describe what you find.

    2. Now add 8 and then 32 bins per dimension and try matching across lighting conditions (train on indoor, test on outdoor). Describe the results.

  3. As in exercise 2, gather RGB histograms of hand flesh color. Take one of the indoor histogram samples as your model and measure EMD (earth mover's distance) against the second indoor histogram and against the first outdoor shaded and first outdoor sunlit histograms. Use these measurements to set a distance threshold.

    1. Using this EMD threshold, see how well you detect the flesh histogram of the third indoor histogram, the second outdoor shaded, and the second outdoor sunlit histograms. Report your results.

    2. Take histograms of randomly chosen nonflesh ...

Get Learning OpenCV now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.