METHOD, SYSTEM, AND COMPUTER PROGRAM PRODUCT TO DETECT MICRON SCALE DISPLACEMENT OF OBJECTS FROM A LONG RANGE WITH AND OPTICAL DEVICE AND RELATED COMPUTER IMPLEMENTED METHODS
First Claim
1. A computer implemented method to detect displacement of objects from a long range, the computer implemented method comprising the steps of:
- determining a cross-correlation between at least a portion of a first numerical function and a second numerical function by shifting a pixel at a time the portion of the first numerical function over the second numerical function to thereby determine the cross-correlation as a cross-correlation numerical value, the first numerical function derived from a first image of an identifier located on an object to be tracked when located at a first position, the second numerical function derived from a second image of the identifier located on the object to be tracked when located at a second position, the second image taken at a time temporally later than a time for the first image, the first image and the second image obtained by an optical device, the cross-correlation numerical value determined between the first image and the second image at a pixel produced by the optical device;
repeating the step of determining the cross-correlation between the portion of the first numerical function and the second numerical function by shifting the portion of the first numerical function over the second numerical function by a pixel offset to thereby generate a plurality of cross correlation numerical values where each cross-correlation numerical value corresponds to a distinct pixel;
comparing the plurality of cross-correlation numerical values to thereby determine a relative pixel location at which a peak cross-correlation value occurs;
fitting a curve through the peak cross-correlation value by selecting two cross-correlation values adjacent and to either side of the peak cross-correlation value to refine the determined relative pixel location;
determining a number of pixels the portion of the first numerical function moved that resulted in the peak cross-correlation value with the second numerical function, the peak cross-correlation corresponding to the refined relative pixel location; and
determining a displacement of the object to be tracked by dividing the number of pixels that the portion of the first numerical function moved by a pixel per measurement unit, the displacement being perpendicular to a line of sight with respect to the optical device.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of systems, program products, and computer implemented methods to measure the displacement of an object located in a hazardous or otherwise inaccessible location at a long range from an optical device with micron-level accuracy are provided the object being. The objects can be machinery, valves, containers, or any other object whose displacement is to be measured. The object can be located in radioactive, chemically reactive, high voltage, or otherwise hazardous or inaccessible locations that are not accessible for conventional displacement measurement by personnel. A system can comprise an identifier on the object to be tracked, an optical device, an computer with at least processing, storage, and memory facilities, and a communications network.
12 Citations
25 Claims
-
1. A computer implemented method to detect displacement of objects from a long range, the computer implemented method comprising the steps of:
-
determining a cross-correlation between at least a portion of a first numerical function and a second numerical function by shifting a pixel at a time the portion of the first numerical function over the second numerical function to thereby determine the cross-correlation as a cross-correlation numerical value, the first numerical function derived from a first image of an identifier located on an object to be tracked when located at a first position, the second numerical function derived from a second image of the identifier located on the object to be tracked when located at a second position, the second image taken at a time temporally later than a time for the first image, the first image and the second image obtained by an optical device, the cross-correlation numerical value determined between the first image and the second image at a pixel produced by the optical device; repeating the step of determining the cross-correlation between the portion of the first numerical function and the second numerical function by shifting the portion of the first numerical function over the second numerical function by a pixel offset to thereby generate a plurality of cross correlation numerical values where each cross-correlation numerical value corresponds to a distinct pixel; comparing the plurality of cross-correlation numerical values to thereby determine a relative pixel location at which a peak cross-correlation value occurs; fitting a curve through the peak cross-correlation value by selecting two cross-correlation values adjacent and to either side of the peak cross-correlation value to refine the determined relative pixel location; determining a number of pixels the portion of the first numerical function moved that resulted in the peak cross-correlation value with the second numerical function, the peak cross-correlation corresponding to the refined relative pixel location; and determining a displacement of the object to be tracked by dividing the number of pixels that the portion of the first numerical function moved by a pixel per measurement unit, the displacement being perpendicular to a line of sight with respect to the optical device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system to detect the displacement of objects from a long range, the system comprising:
-
an optical device for obtaining a first image and a second image of an identifier located on an object to be tracked; a computer in communication with the optical device and having a processor and a memory element; and a program product stored in the memory element of the computer, the program product comprising; an image capturer configured to capture the first image and the second image of the identifier located on the object to be tracked to thereby convert the first image into a first numerical function and the second image into a second numerical function, the first image and the second image obtained by the optical device; an image preprocessor configured to remove noise from the first numerical function and the second numerical function by removing a plurality of image vectors from each of the first and the second numerical functions; an image cross-correlator configured to compare a portion of the first numerical function for the identifier located on the object to be tracked to the second numerical function of the same identifier to thereby determine a peak cross-correlation value between the portion of the first numerical function and the second numerical function at a pixel generated by the optical device, the portion of the first numerical function defining an extracted function portion of the first numerical function;
the image cross-correlator comparing by shifting the portion of the of the first numerical function pixel by pixel in an axis to thereby determine a cross-correlation value at each pixel and thereby generate a plurality of cross-correlation values, the peak cross-correlation peak value chosen from among the plurality of cross-correlation values to determine a relative pixel location,the image cross-correlator further configured to fit a curve around the peak correlation value to determine a refined pixel location, the image cross-correlator further configured to determine a displacement of the object to be tracked by utilizing the refined pixel location to determine a number of pixels the extracted portion of the first numerical function moved that resulted in the peak correlation value with the second numerical function; and the image cross-correlator further configured to determine a displacement of the object to be tracked by dividing the number of pixels that the extracted portion of the first numerical function moved by a pixel per unit of measurement, the displacement being perpendicular to a line of sight with respect to the optical device. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. Program product to detect the displacement of objects from a long range, the program product stored in a tangible computer readable medium and including instructions that when executed by a computer, cause the computer to perform the operations of:
-
converting a first image of an identifier into a first numerical function and a second image of the identifier into a second numerical function, the identifier located on an object to be tracked, the first numerical function derived from a first numerical array representing the first image of the identifier located on the object to be tracked when located at a first position, the second numerical function derived from a second numerical array representing the second image of the identifier located on the object to be tracked when located at a second position, the first and second numerical arrays each derived from a plurality of pixels occupied by a plurality of stripes on the identifier located on the object to be tracked, the pixels generated by an optical device, the stripes being of random width and having random spacing, the second image taken at a time temporally later than a time for the first image, the first image and the second image of the identifier located on the object to be tracked obtained by the optical device; obtaining a portion of the first numerical function for comparison with the second numerical function, by extracting the portion from the first numerical function with a window function having a length and a height; removing a plurality of image vectors from the first numerical function and a plurality of image vectors from the second numerical function of the identifier located on the object to be tracked to facilitate the identification of a peak cross-correlation value, the removed image vectors having a magnitude exceeding the height of the window function used to extract the portion of the first numerical function; determining a relative pixel location at which a peak cross-correlation value occurs by comparing the portion extracted from the first numerical function to the second numerical function of the same identifier located on the object to be tracked, comparing including shifting portion extracted from the first numerical function pixel by pixel over the second numerical function in an axis perpendicular to a line of sight of the optical device to thereby generate a cross-correlation value at each pixel, the relative pixel location at which the peak cross-correlation value determined from among the cross-correlation values generated at each pixel; fitting a polynomial around the determined peak cross-correlation value to refine the determined relative pixel location at which the peak cross-correlation value occurs; determining a number of pixels the portion of the first numerical function moved that resulted in the peak cross-correlation value with the second numerical function, the peak cross-correlation corresponding to the refined relative pixel location; and determining a displacement of the object to be tracked by dividing the number of pixels that the portion of the first numerical function moved by a pixel per measurement unit, the displacement being perpendicular to a line of sight with respect to the optical device. - View Dependent Claims (23, 24, 25)
-
Specification