BLURRING BASED CONTENT RECOGNIZER
First Claim
1. A computer implemented method, comprising:
- receiving an image;
pre-processing the image resulting in a pre-processed image;
calculating a metric based on the pre-processed image;
generating a binary image from the pre-processed image based on the metric;
identifying one or more regions of the binary image using connected components analysis;
selecting a region of interest in the image based on an analysis of the identified regions of the binary image; and
using a probabilistic cost function to refine the region of interest.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer program products, for identifying regions of interest in an image and identifying a barcode in a degraded image are provided. A region of interest is identified by pre-processing an image, generating a binary image based on a metric calculated on the pre-processed image, and analyzing regions of the image identified using connected components and other analysis. A barcode is identified by searching a population of barcodes, degrading ideal image intensity profiles of candidate barcodes, and comparing the degraded ideal image intensity profiles to an image intensity profile of the degraded image.
-
Citations
36 Claims
-
1. A computer implemented method, comprising:
-
receiving an image; pre-processing the image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the image based on an analysis of the identified regions of the binary image; and using a probabilistic cost function to refine the region of interest. - View Dependent Claims (2, 3, 4)
-
-
5. A computer implemented method, comprising:
-
receiving a degraded image of a first barcode; generating an image intensity profile of the degraded image; searching a population of barcodes, the searching including selecting a candidate barcode from the population of barcodes and comparing a degraded version of an ideal image intensity profile of the candidate barcode to the image intensity profile of the degraded image; and selecting a final barcode from the population of barcodes based on the comparison. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer implemented method, comprising:
-
receiving a degraded image of a first barcode; generating an image intensity profile for the degraded image; searching a population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to an intensity profile of the degraded image; and updating the current population using the calculated fitness scores; and selecting a final barcode from the population of barcodes based on the calculated fitness scores.
-
-
20. A computer implemented method, comprising:
-
receiving a degraded image of a first barcode; pre-processing the degraded image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the degraded image based on an analysis of the identified regions of the binary image; using a probabilistic cost function to refine the region of interest; generating an intensity profile of the refined region of interest. searching a finite population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to the intensity profile of the refined region of interest; and updating the current population using the calculated fitness scores; and selecting a final barcode from the population of barcodes based on the calculated fitness scores.
-
-
21. A system comprising:
-
a processor; and a computer-readable medium coupled to the processor and including instructions, which, when executed by the processor, causes the processor to perform operations comprising; receiving an image; pre-processing the image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the image based on an analysis of the identified regions of the binary image; and using a probabilistic cost function to refine the region of interest.
-
-
22. A system comprising:
-
a processor; and a computer-readable medium coupled to the processor and including instructions, which, when executed by the processor, cause the processor to perform operations comprising; receiving a degraded image of a first barcode from a client; generating an image intensity profile of the degraded image; searching a population of barcodes, the searching including selecting a candidate barcode from the population of barcodes and comparing a degraded version of an ideal image intensity profile of the candidate barcode to the image intensity profile of the degraded image; selecting a final barcode from the population of barcodes based on the comparison; and sending the final barcode to the client. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A system comprising:
-
a processor; and a computer-readable medium coupled to the processor and including instructions, which, when executed by the processor, cause the processor to perform operations comprising; receiving a degraded image of a first barcode from a client; generating an image intensity profile for the degraded image; searching a population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to an intensity profile of the degraded image; and updating the current population using the calculated fitness scores; selecting a final barcode from the population of barcodes based on the calculated fitness scores; and sending the final barcode to the client.
-
-
28. A system comprising:
-
a processor; and a computer-readable medium coupled to the processor and including instructions, which, when executed by the processor, cause the processor to perform operations comprising; receiving a degraded image of a first barcode from a client; pre-processing the degraded image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the degraded image based on an analysis of the identified regions of the binary image; using a probabilistic cost function to refine the region of interest; generating an intensity profile of the refined region of interest. searching a finite population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to the intensity profile of the refined region of interest; and updating the current population using the calculated fitness scores; selecting a final barcode from the population of barcodes based on the calculated fitness scores; and sending the final barcode to the client.
-
-
29. A computer-readable medium having instructions stored thereon, which, when executed by a processor, causes the processor to perform operations comprising:
-
receiving an image; pre-processing the image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the image based on an analysis of the identified regions of the binary image; and using a probabilistic cost function to refine the region of interest.
-
-
30. A computer-readable medium having instructions stored thereon, which, when executed by a processor, causes the processor to perform operations comprising:
-
receiving a degraded image of a first barcode; generating an image intensity profile of the degraded image; searching a population of barcodes, the searching including selecting a candidate barcode from the population of barcodes and comparing a degraded version of an ideal image intensity profile of the candidate barcode to the image intensity profile of the degraded image; and selecting a final barcode from the population of barcodes based on the comparison. - View Dependent Claims (31, 32, 33, 34)
-
-
35. A computer-readable medium having instructions stored thereon, which, when executed by a processor, causes the processor to perform operations comprising:
-
receiving a degraded image of a first barcode; generating an image intensity profile for the degraded image; searching a population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to an intensity profile of the degraded image; and updating the current population using the calculated fitness scores; and selecting a final barcode from the population of barcodes based on the calculated fitness scores.
-
-
36. A computer-readable medium having instructions stored thereon, which, when executed by a processor, causes the processor to perform operations comprising:
-
receiving a degraded image of a first barcode; pre-processing the degraded image resulting in a pre-processed image; calculating a metric based on the pre-processed image; generating a binary image from the pre-processed image based on the metric; identifying one or more regions of the binary image using connected components analysis; selecting a region of interest in the degraded image based on an analysis of the identified regions of the binary image; using a probabilistic cost function to refine the region of interest; generating an intensity profile of the refined region of interest. searching a finite population of barcodes, the searching including identifying a current population of barcodes and repeating the following steps one or more times; for each barcode in the current population, calculating a fitness score comparing a degraded version of an ideal intensity profile corresponding to the barcode to the intensity profile of the refined region of interest; and updating the current population using the calculated fitness scores; and selecting a final barcode from the population of barcodes based on the calculated fitness scores.
-
Specification