Visual imaging system and method
First Claim
1. A method for inspecting a test object as compared to a baseline object, comprising the steps of:
- forming a first digital characterization of the baseline object by capturing a first plurality of digital features from the object;
thereafter storing said first digital characterization of the baseline object into a memory by writing, responsive to each one said digital features of said first plurality of digital features, a first preselected value into an address location of said memory that is determined from said one digital feature;
thereafter forming a second digital characterization of the test object by capturing a second plurality of digital features from the test object; and
thereafter comparing said second digital feature to said first digital characterization by reading, for each one digital feature of said second plurality of features, a second plurality of address locations of said memory that are determined from said second plurality of digital features to determine a number of said second plurality of address locations that do not have said first preselected value; and
thereafter identifying the test object as varying from the baseline object when said number exceeds a threshold value.
0 Assignments
0 Petitions
Accused Products
Abstract
An object recognition apparatus and method for real-time training and recognition/inspection of test objects. To train the system, digital features of an object are captured as sub-frames extracted from a data stream. The data is thresholded and digitized and used to produce an address representing the digital feature. The address is used to write a value into a memory. During recognition or inspection, extracting digital features from a test object, converting the digital features extracted from the test object into addresses, and using the addresses developed from the test object to address the memory to correlate whether the same memory locations are addressed determines whether the test object matches the reference object.
71 Citations
27 Claims
-
1. A method for inspecting a test object as compared to a baseline object, comprising the steps of:
-
forming a first digital characterization of the baseline object by capturing a first plurality of digital features from the object;
thereafterstoring said first digital characterization of the baseline object into a memory by writing, responsive to each one said digital features of said first plurality of digital features, a first preselected value into an address location of said memory that is determined from said one digital feature;
thereafterforming a second digital characterization of the test object by capturing a second plurality of digital features from the test object; and
thereaftercomparing said second digital feature to said first digital characterization by reading, for each one digital feature of said second plurality of features, a second plurality of address locations of said memory that are determined from said second plurality of digital features to determine a number of said second plurality of address locations that do not have said first preselected value; and
thereafteridentifying the test object as varying from the baseline object when said number exceeds a threshold value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
converting an image of the baseline object into a binary image; and
sampling periodically, according to a predetermined pattern, selected ones of a plurality of bits making up said binary image to form said first plurality of digital features.
-
-
3. The inspecting method of claim 2 wherein said binary image is an array and wherein said sampling step comprises extracting a plurality of tiles of said binary image, each tile being m×
- n bits, with m and n being positive integers.
-
4. The inspecting method of claim 3 wherein said storing step further comprises the steps of:
converting said m×
n bits of a particular tile into an address for said address location of said particular tile.
-
5. The inspecting method of claim 4 wherein said converting step produces said address having a number of bit positions equal to a product of m and n.
-
6. The inspecting method of claim 4 wherein said converting step further comprises the step of:
hashing said address to form said address having a number of bit positions less than a product of m and n.
-
7. The inspecting method of claim 1 further comprising the steps of:
-
forming, after said second digital characterization forming step and prior to said comparing step, a third digital characterization of a third digital characterization of a third object by capturing a third plurality of digital features from said third object; and
thereafterremoving, prior to said comparing step, said third plurality of digital features from said memory, responsive to each one of said third plurality of digital features, by writing a second preselected value into an address location of said memory that is determined from said one third digital feature.
-
-
8. The inspecting method of claim 1 wherein said digital characterization forming steps fire comprise the steps of:
-
capturing an analog video image;
thereaftersampling periodically said analog video image to produce a series of sampled image blocks; and
thereafterthresholding said series of sampled image blocks to form a series binary image pixels, each particular one said binary image pixel having a first predetermined value when a particular one sampled image block thresholded to form said particular one binary image exceeds a first threshold value, otherwise said particular one binary image pixel having a second predetermined value.
-
-
9. The inspecting method of claim 1 wherein said digital characterization forming steps further comprise the steps of:
-
capturing an analog video image;
thereaftersampling periodically said analog video image to produce a series of sampled image blocks each block having an amplitude; and
thereafterthresholding said series of sampled image blocks to form a series binary image pixels, each particular one said binary image pixel having a first predetermined value when a particular one sampled image block thresholded to form said particular one binary image has an amplitude that exceeds a first threshold value, said particular one binary image pixel having a second predetermined value when said particular one sampled image block thresholded to form said particular one binary image has an amplitude that is less than a second threshold value.
-
-
10. The inspecting method of claim 9 wherein said first threshold value and said second threshold value are equal.
-
11. The inspecting method of claim 9 wherein said binary image pixel has an associated validity bit.
-
12. The inspecting method of claim 11 wherein an associated validity bit is set to a validity value indicating an invalid pixel when said associated binary image pixel is formed from a sampled image block having an amplitude that is less than said first threshold value and greater than said second threshold.
-
13. The inspecting method of claim 1 wherein each address location of said memory has an associated counter, said first digital characterization storing step further comprising:
incrementing, for each address location, said counter associated with said address location each time said first preselected value is written to said address location.
-
14. The inspecting method of claim 13 further comprising the steps of:
incrementing a count value associated with each counter each time said first preselected value is written into said address location associated with said counter.
-
15. The inspecting method of claim 14 further comprising the steps of:
-
reading periodically each count value of each counter associated with an address location;
thereaftercomparing each count value to a commit value;
thereafterresetting said count value of each said counter associated with each particular address location when said count value is less than said commit value; and
thereafterclearing said first predetermined value from each said particular address location associated with each counter that is reset.
-
-
16. A method for recognizing an object, comprising the steps of:
-
forming a first digital characterization of the object by capturing a first plurality of digital features from the object, wherein said first plurality of digital features include information derived from relative positional relationship of sampled pixels;
thereafterstoring said first digital characterization of the object into a memory by writing, responsive to each one said digital features of said first plurality of digital features, a signature value into an address location of said memory that is determined from said one digital feature;
thereafterforming a second digital characterization of a second object by capturing a second plurality of digital features from said second object, wherein said second plurality of digital features include information derived from relative positional relationship of sampled pixels; and
thereaftercomparing said second digital characterization to said first digital characterization by reading, for each one digital feature of said second plurality of features, a second plurality of address locations of said memory that are determined from said second plurality of digital features to determine a number of said second plurality of address locations that have a corresponding matching signature value; and
thereafterrecognizing said second object as the object when said number exceeds a threshold value. - View Dependent Claims (17, 18, 19)
reading said address location prior to writing said signature value to obtain a read signature value;
thereaftercomparing said read signature to said signature value prior to writing said signature value; and
thereafterincrementing, for each address location, said counter associated with said address location each time a matching signature value is written to said address location.
-
-
18. The recognizing method of claim 17 further comprising the steps of:
-
clearing, after said comparing step, said counter when said signature value does not match said read signature value; and
writing, after said comparing step, said non matching signature value into said memory.
-
-
19. The recognizing method of claim 18 further comprising the step of:
-
reading, prior to said counter clearing step and prior to said signature value writing step, a count value stored in said counter associated with said address location;
and thereafter inhibiting said counter clearing step and said nonmatching signature writing step when said count value exceeds a commit value.
-
-
20. A method for recognizing an object, comprising the steps of:
-
forming a first digital characterization of the object by capturing a first plurality of digital features from the object, wherein said first plurality of digital features include information derived from a color of sampled pixels;
thereafterstoring said first digital characterization of the object into a memory by writing, responsive to each one said digital features of said first plurality of digital features, a signature value into an address location of said memory that is determined from said one digital feature;
thereafterforming a second digital characterization of a second object by capturing a second plurality of digital features from said second object, wherein said second plurality of digital features include information derived from a color of sampled pixels; and
thereaftercomparing said second digital characterization to said first digital characterization by reading, for each one digital feature of said second plurality of features, a second plurality of address locations of said memory that are determined from said second plurality of digital features to determine a number of said second plurality of address locations that have a corresponding matching signature value; and
thereafterrecognizing said second object as the object when said number exceeds a threshold value. - View Dependent Claims (22, 23, 24)
reading said address location prior to writing said signature value to obtain a read signature value;
thereaftercomparing said read signature to said signature value prior to writing said signature value; and
thereafterincrementing, for each address location, said counter associated with said address location each time a matching signature value is written to said address location.
-
-
23. The recognizing method of claim 22 further comprising the steps of:
-
clearing, after said comparing step, said counter when said signature value does not match said read signature value; and
writing, after said comparing step, said non matching signature value into said memory.
-
-
24. The recognizing method of claim 23 further comprising the step of:
-
reading, prior to said counter clearing step and prior to said signature value writing step, a count value stored in said counter associated with said address location;
and thereafter inhibiting said counter clearing step and said nonmatching signature writing step when said count value exceeds a commit value.
-
-
21. A method for recognizing an object, comprising the steps of:
-
forming a first digital characterization of the object by capturing a first plurality of digital features from the object, wherein said first plurality of digital features are limited to a color of sampled pixel;
thereafterstoring said first digital characterization of the object into a memory by writing, responsive to each one said digital features of said first plurality of digital features, a signature value into an address location of said memory that is determined from said one digital feature;
thereafterforming a second digital characterization of a second object by capturing a second plurality of digital features form said second object wherein said second plurality of digital features are limited to a color of sampled pixels; and
thereaftercomparing said second digital characterization to said first digital characterization by reading, for each one digital feature of said second plurality of features, a second plurality of address locations of said memory that are determined from said second plurality of digital features to determine a number of said second plurality of address locations that have a corresponding matching signature value; and
thereafterrecognizing said second object as the object when said number exceeds a threshold value. - View Dependent Claims (25, 26, 27)
reading said address location prior to writing said signature value to obtain a read signature value;
thereaftercomparing said read signature to said signature value prior to writing said signature value; and
thereafterincrementing, for each address location, sad counter associated with said address location each time a matching signature value is written to said address location.
-
-
26. The recognizing method of claim 25 further comprising the steps of:
-
clearing, after said comparing step, said counter when said signature value does not match said read signature value; and
writing, after said comparing step, said non matching signature value into said memory.
-
-
27. The recognizing method of claim 26 further comprising the step of:
-
reading, prior to said counter clearing step and prior to said signature value writing step, a count value stored in said counter associated with said address location;
and thereafter inhibiting said counter clearing step and said nonmatching signature writing step when said count value exceeds a commit value.
-
Specification