Hough transform method for linear ribbon and circular ring detection in the gradient domain
AssigneeAdobe Systems Incorporated
InventorsXinju Li, Simon Chen, Jen-Chen Chien
Life of this patent
Estimating the term…
Abstract
A method for converting a portion of an image from a first domain to a second domain. The method may apply a Hough transform on the converted portion of the image, including calculating a range of angles for each tested pixel q relative to a center pixel p, quantizing the range of angles into a plurality of bins, voting each tested pixel q using a range of bins using a weighted voting schema; and detecting one or more features in the portion of the image. The methods may be implemented by program instructions executing in parallel on CPU(s) or GPUs.
Claims24
A computer-implemented method, comprising:
- converting a portion of an image from a first domain to a second domain to generate a converted portion of the image, wherein the portion of the image comprises a plurality of pixels, wherein each pixel has a value, wherein the converted portion of the image comprises gradient magnitudes corresponding to changes in values for respective pixels in the portion of the image, wherein the plurality of pixels comprises a center pixel;
- finding one or more edge pixels in the portion of the image using a weight function applied to a gradient magnitude of the one or more edge pixels, the weight function being based on an angle between a gradient direction of the one or more edge pixels, and a line between the one or more edge pixels and the center pixel;
- using each of the one or more edge pixels and the center pixel, calculating a range of radii for each of the one or more edge pixels that contains one or more rings that pass through both the edge pixel and the center pixel;
- using the range of radii for each of the one or more edge pixels, voting for each of the one or more edge pixels in a histogram having plurality of bins, wherein each bin of the plurality of bins corresponds to a quantization of radii;
- and
- using the histogram, detecting one or more features in the portion of the image.
A system, comprising:
- one or more processors;
- and
- a memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to perform operations including:
- converting a portion of an image from a first domain to a second domain to generate a converted portion of the image, wherein the portion of the image comprises a plurality of pixels, wherein each pixel has a value, wherein the converted portion of the image comprises gradient magnitudes corresponding to changes in values for of pixels comprises a center pixel;
- finding one or more edge pixels in the portion of the image;
- using each of the one or more edge pixels and the center pixel, calculating a range of radii for each of the one or more edge pixels that contains one or more rings that pass through both the edge pixel and the center pixel;
- using the range of radii for each of the one or more edge pixels, voting for each of the one or more edge pixels in a histogram having plurality of bins, wherein each bin of the plurality of bins corresponds to a quantization of radii;
- and
- using the histogram, detecting one or more features in the portion of the image by;
- combining votes in the histogram corresponding to a same edge direction to create a merged histogram;
- and
- finding candidates for the one or more features based on peaks in the merged histogram.
A computer-readable storage medium storing program instructions executable to implement operations comprising:
- un-warping an image to correct one or more geometric distortions in the image;
- converting a portion of the image from a first domain to a second domain to generate a converted portion of the image, wherein the portion of the image comprises a plurality of pixels, wherein each pixel has a value, wherein the converted portion of the image comprises gradient magnitudes corresponding to changes in values for respective pixels in the portion of the image, wherein the plurality of pixels comprises a center pixel;
- finding one or more edge pixels in the portion of the image;
- using each of the one or more edge pixels and the center pixel, calculating a range of radii for each of the one or more edge pixels that contains one or more rings that pass through both the edge pixel and the center pixel;
- using the range of radii for each of the one or more edge pixels, voting for each of the one or more edge pixels in a histogram having plurality of bins, wherein each bin of the plurality of bins corresponds to a quantization of radii;
- and
- using the histogram, detecting one or more features in the portion of the image.
Dependencies are inferred from the claim text.