Abstract:
Detection and tracking of an object by exploiting its unique reflectance signature. This is done by examining every image pixel and computing how closely that pixel&#39;s spectrum matches a known object spectral signature. The measured radiance spectra of the object can be used to estimate its intrinsic reflectance properties that are invariant to a wide range of illumination effects. This is achieved by incorporating radiative transfer theory to compute the mapping between the observed radiance spectra to the object&#39;s reflectance spectra. The consistency of the reflectance spectra allows for object tracking through spatial and temporal gaps in coverage. Tracking an object then uses a prediction process followed by a correction process.

Description:
CROSS REFERENCE TO RELATED APPLICATION 
     This application claims the benefit of U.S. Provisional Application No. 61/269,317, filed on Jun. 22, 2009 which is incorporated herein by reference in its entirety. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The invention described herein relates to imaging and object tracking. 
     2. Background Art 
     Acquiring and tracking a moving object can be aided by automated processing to improve speed and accuracy. Such processing may include technology that includes computer vision. Computer vision algorithms generally exploit shape and/or appearance features for automated analysis of images and video. 
     Appearance-based methods are challenged by the changes in an object&#39;s appearance. The changes may be due to several factors. These may include a) different illumination sources and conditions, b) variations of the object&#39;s orientation with respect to the illumination source and camera, and c) different reflectance properties of objects in the scene. Such variability compromises the performance of many vision systems, including background subtraction methods for motion detection, appearance-based trackers, face recognition algorithms, and change detection. 
     What are needed, therefore, are systems and methods that provide for the acquisition and tracking of an object where the tracking can be maintained even if changes occur in the illumination sources, object orientation, and appearances of other objects in a scene, or if tracking is momentarily lost. 
     BRIEF SUMMARY OF THE INVENTION 
     Identification of an object may be based on its spectral fingerprint. This fingerprint is the object&#39;s unique spectral signature based on its molecular composition. This allows two seemingly similar objects to be uniquely distinguished from each other in the presence of other objects. The spectral fingerprint can be either the intrinsic reflectance of an object or the emissivity of an object based on the wavelengths being recorded. Reflectance occurs in the visible, near-infrared, and short wave infrared part of the electromagnetic spectrum and is the ratio of the amount of light striking an object to the amount of light being reflected from an object. Emissivity is a measure of the amount of energy emitted from an object compared to a uniform emitter. By identifying the reflectance or emissivity of an object, a unique spectral fingerprint can be used for surveillance of an object. As will be described in greater detail below, reflectance spectra can be used to perform detection, tracking and association, which are necessary steps for object surveillance. 
     The detection of an object can exploit its spectral fingerprint by leveraging its unique reflectance signature. Detecting objects in images is often difficult when objects in the scene have similar appearance (e.g., shape and intensity). However if this object&#39;s specific spectral signature is known, it can then be unambiguously detected and discriminated from the surrounding objects and background. This is done by examining every image pixel and computing how closely that pixel&#39;s spectrum matches a known object spectral signature. Alternatively, if the surrounding background spectral signature is known, it can be used for detecting new and unusual objects. 
     Tracking an object from one image to another image requires finding the corresponding locations of an object in both images. Stated differently, after various objects have been detected in both images, one needs to find a single match between each object in one image and the next image, a process called association. Association is often difficult when there are many objects in a scene, when objects look similar, or when many of these objects appear and/or disappear from the scene. This problem can be addressed by using spectral information: by looking at the fine spectral signature of each object detected in the first image, this signature can be used to find the closest match in the set of objects detected in the next image. When association is done, physical models can be used to refine each object&#39;s spectral signature. This refined spectral signature is then used again for doing future associations. 
     The use of reflectance spectra for detection, tracking and association of objects allows for the following new capabilities: 
     Illumination-invariant Tracking 
     The reflectance spectrum of an object is independent of the illumination and atmospheric conditions under which it is observed. Hence, with the ability to estimate the reflectance spectrum under a wide range of viewing conditions, illumination-invariant tracking can be achieved by using the reflectance spectrum to detect, track, and associate the object across multiple images. 
     Track Through Gaps in Coverage 
     Since the reflectance spectrum of an object is consistent over time and independent of illumination conditions, spectral matching algorithms can be used to track and associate the object across spatial and temporal gaps in coverage. For example, if the object leaves the field of view (FOV) of the sensor and re-appears in minutes/hours/days, spectral matching algorithms can be used to determine where and when it has re-appeared in the sensor&#39;s FOV. 
     Tracking in the Presence of Confusers 
     The performance of many existing tracking algorithms suffers when there are multiple objects with similar appearance/color in the sensor&#39;s FOV. The invention described herein addresses this problem by exploiting high-resolution reflectance spectra, which often provides a unique signature/fingerprint that can distinguish the tracked object from others with the same color. For example, when tracking a single white object of interest in a crowd of white objects, the reflectance spectrum of the object of interest can be used to discriminate it from the other white objects, and thus reduce the false alarms that often confuse existing surveillance systems. 
     A hyperspectral video surveillance system is described herein, which uses a hyperspectral video (HSV) camera. This sensor captures hyperspectral imagery at near-video rates. While standard video cameras capture only three wide-bandwidth color images, the HSV camera collects many narrow-bandwidth images of the scene. For many vision systems, an HSV camera provides several advantages. An HSV camera provides high spatial and temporal resolution to detect and track moving objects. The high spectral resolution allows distinction between objects with similar color. An HSV camera also provides the ability to incorporate radiative transfer theory models to mitigate the effects of illumination variations. Moreover, since a hyperspectral video camera is able to simultaneously capture images with high temporal, spatial, and spectral resolution, it combines the advantages of both video and hyperspectral imagery. HSV cameras are commercially available from vendors such as Surface Optics Corporation of San Diego, Calif. 
     An HSV camera allows for illumination-invariant vision algorithms for a wide range of problems. Specifically, the measured radiance spectra of the object can be used to estimate its intrinsic reflectance properties that are invariant to a wide range of illumination effects. This is achieved by incorporating radiative transfer theory to compute the mapping between the observed radiance spectra to the object&#39;s reflectance spectra. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES 
         FIG. 1  is a block diagram illustrating the overall structure of an embodiment of the invention. 
         FIG. 2  is a flowchart illustrating the processing of an embodiment of the invention. 
         FIG. 3  is a flowchart illustrating the tracking process, according to an embodiment of the invention. 
         FIG. 4  is a flowchart illustrating the prediction process, according to an embodiment of the invention. 
         FIG. 5  is a flowchart illustrating the correction process, according to an embodiment of the invention. 
         FIG. 6  is a block diagram illustrating a software or firmware embodiment of the invention. 
     
    
    
     Further embodiments, features, and advantages of the present invention, as well as the operation of the various embodiments of the present invention, are described below with reference to the accompanying drawings. 
     DETAILED DESCRIPTION OF THE INVENTION 
     A preferred embodiment of the present invention is now described with reference to the figures, where like reference numbers indicate identical or functionally similar elements. Also in the figures, the leftmost digit of each reference number corresponds to the figure in which the reference number is first used. While specific configurations and arrangements are discussed, it should be understood that this is done for illustrative purposes only. A person skilled in the relevant art will recognize that other configurations and arrangements can be used without departing from the spirit and scope of the invention. It will be apparent to a person skilled in the relevant art that this invention can also be employed in a variety of other systems and applications. 
       FIG. 1  illustrates the overall system of the invention, according to an embodiment. An object  105  is shown being imaged by a hyperspectral video (HSV) camera  110 . Most modern video cameras provide imagery with high spatial and temporal resolution. This can be somewhat useful for detecting and tracking moving objects. However, their low spectral resolution limits their ability to classify or identify objects based on color alone. Conversely, traditional hyperspectral sensors offer high-resolution spectral and spatial imagery at low temporal resolutions with modest frame rates (up to 0.5 Hz). Hence, they have been utilized extensively for object detection and classification, but only in static, non-dynamic environments, such as geological imaging. 
     HSV cameras are now available, which are able to capture hyperspectral datacubes at near video rates. The HSV camera offers high spatial, temporal, and spectral resolution imagery. The HSV camera combines the benefits of video and hyperspectral data to allow simultaneously detecting, tracking, and identifying objects using computer vision and hyperspectral image analysis methods. 
     In an embodiment, the HSV camera is a passive sensor that measures the optical spectra of every pixel from 400-1000 nm (visible and near-IR wavelengths). It acquires datacubes using a line scanning technique. An oscillating mirror scans the scene up to ten times a second, and for each mirror position one horizontal scan line is acquired and its pixels are decomposed by a spectrometer into a full spectral plane. The spectral plane is captured by a charge coupled device (CCD), and is built into a datacube as the mirror completes a vertical scan of the scene. The acquired cube is then either immediately processed in real time or stored, e.g., on a hard drive. Acquisition conditions may be controlled by an operator through an on-board computer. Integration time can also be modified to accommodate low light conditions. 
     Referring again to  FIG. 1 , hyperspectral data  120  is output from HSV  110  in the illustrated embodiment. At  130 , the hyperspectral data  120  is processed to extract the radiance spectra. This is shown as radiance spectra  140 . Note that in an embodiment of the invention, the radiance spectra may have been captured independently of the other data captured by the HSV camera, i.e., spatial and temporal data. In this case, a distinct extraction process for the radiance spectra may not be necessary. At  150 , the radiance spectra  140  is converted to reflectance spectra  160 . The reflectance spectra  160  is then used in a tracking process  170 . Processes  150  and  170  are described in greater detail below. 
     In an embodiment, processes  130  and  150  may be implemented in a single module  180 . Module  180  may be implemented in software, firmware, hardware, or some combination thereof. Software/firmware implementations may use assembly language or any higher order language, as would be known to a person of ordinary skill in the art. Hardware embodiments may be implemented using application specific integrated circuitry, field programmable gate arrays (FPGA), or any other hardware technology know in the art. In an alternative embodiment (not shown), the tracking process  170  may also be implemented by module  180 . 
     The overall processing of the invention is shown in  FIG. 2 , according to an embodiment. At  210 , hyperspectral data is captured. As discussed above, this data may be captured by an HSV camera in an embodiment of the invention. At  220 , radiance spectra is extracted from the hyperspectral data, as necessary. 
     At  230 , the radiance spectra is converted to reflectance spectra. In an embodiment of the invention, the reflectance spectra is obtained from the radiance by using a physics modeling system taking into account environmental, weather and atmospheric conditions. One embodiment of this modeling system is MODTRAN. 
     Generally, in the reflectance domain, there are six main sources of light. The most obvious source is the sun. Light is generated at the sun, passes through the atmosphere, reflects off of the object being imaged, and eventually reaches the sensor. Along the way, the spectral properties of the light are changed as photons are absorbed and scattered through the atmosphere. 
     Skylight takes a very similar path to sunlight. Once the light reaches the object being imaged, it reflects the same as the sunlight (assuming a diffuse material), and is reflected back through the atmosphere to the sensor along the same path as the sun light. The difference however is that skylight is generated by light scattered in the atmosphere from all directions. 
     The remaining four sources of light (upwelled radiance, multipath effects, adjacency effects, and trapping effects) are typically orders of magnitude less energetic than sunlight or skylight. Because of this fact, these effects can largely be ignored for short-range, ground-based imaging. However, sometimes multipath and adjacency effects can become noticeable given the unique geometries of ground-based sensing. For example, light reflected from vegetation surrounding an object being imaged can impart part of the vegetative reflectance signature to the object—especially when the object is in full shade conditions where limited skylight is able to reach the object (e.g. dark shadows). 
     As would be understood by a person of ordinary skill in the art, the full radiometric equation is a sum of the six different sources of light. In an embodiment, the radiometric transfer function can be suitably expressed by using the three most significant terms. The radiometric transfer function for this can therefore be expressed as
 
 L ( x,y, λ)= R ( x,y,λ ){ A (λ)+ F ( x,y ) B (λ)}
 
where A(λ) represents the radiance due to sunlight, F(x,y) represents the amount of sky light at pixel (x,y) (i.e., in shadow zones the amount of sky not blocked by the object creating the shadow), R(x,y,λ) is the reflectance of the object being imaged, and B(λ) represents the radiance due to sky light. This assumes that the scene is small enough that the source-object-receiver geometry is similar across the image. Also, the terms A(λ) and B(λ) are considered to be independent of pixel location when small areas are imaged (i.e., the sunlight and skylight terms do not vary over the small area being imaged).
 
     Using the radiometric theory described, one can approximate the underlying reflectance signatures in an image. To do this, the image must contain an object with a known reflectance signature. One approach is to identify objects in the scene that have nearly flat reflectance signatures (i.e. constant and independent of wavelength) in full sunlight conditions. Examples of common materials with flat reflectance include concrete and asphalt. The above equation then becomes
 
 L   flat (λ)= k{A (λ)+ FB (λ)}
 
where k now represents an unknown flat reflectance value independent of wavelength. One may also note that the location (x,y) has been removed as there is a need only to identify the flat reflectance object in the scene, not its location. If the entire image is in sunlight, then the reflectance of the image can be calculated as
 
               R   ⁡     (     x   ,   y   ,   λ     )       =     k   ⁢       L   ⁡     (     x   ,   y   ,   λ     )           L   flat     ⁡     (   λ   )                 
to within some unknown offset k. To remove the effects of k, each pixel is normalized to have the same energy. The result is an image with fewer illumination differences.
 
     For images that contain shadow zones, the process is slightly more complicated. First, a shadow mask must be estimated. The energy of each pixel, computed using either the L 1  or L 2  norm of its spectra, is thresholded to produce the shadow mask. In this process, very dark objects will be considered in shadow zones independent of their true illumination condition, but the process produces good results in an efficient manner. 
     Once a shadow mask has been created, a shadow line must be found that crosses across the same material. For the pixels in the full sunlight condition, the previous equation is applied to estimate the reflectance. Using the estimated reflectance, the skylight effects can be estimated such that 
                 kF   ⁡     (     x   ,   y     )       ⁢     B   ⁡     (   λ   )         =       L   ⁡     (     x   ,   y   ,   λ     )         R   ⁡     (     x   ,   y   ,   λ     )               
for pixels of the same material just inside the shadow zone. Now estimates for both full sun and full shade conditions are available.
 
     Using these estimates and the shadow mask, pixels in full sun can be converted to reflectance. For pixels in shade, their reflectance can be calculated using 
               R   ⁡     (     x   ,   y   ,   λ     )       =       L   ⁡     (     x   ,   y   ,   λ     )           kF   ⁡     (     x   ,   y     )       ⁢     B   ⁡     (   λ   )                 
Again, the offsets due to k or F(x,y) are not known, but this can be handled by normalizing the resulting reflectance as was done above.
 
     At  240 , the resulting reflectance spectra may be used for locating or tracking an object. This process is illustrated in greater detail in  FIG. 3 . At  310 , state data for a current frame or image is received, where the state data includes the reflectance spectra of the object. In an embodiment, the state data may be organized as a formatted state description. 
     In an embodiment, the state description may take the form of a state vector for example, of the form
 
X i =[ref1_spectrum, H, W, x, y, {dot over (x)}, {dot over (y)}] T ,
 
where i denotes the frame, H and W specify the height and width of the bounding box containing the object in the image, x, y are the horizontal and vertical position of the center of the object&#39;s bounding box in the image, {dot over (x)},{dot over (y)} are the horizontal and vertical velocities of the object&#39;s bounding box in the image, and T denotes transposition. Note that while the example above uses a rectangular bounding box, in general any bounding shape or area (and a specification thereof) may be used.
 
     Embodiments of a state description may include one or more of the following: a spectral vector, spatial descriptors, shape descriptors, spatio-temporal descriptors, temporal descriptors, or kinematic descriptors. Examples of shape descriptors include parametric descriptors such as moment descriptors, Fourier shape descriptors, active contours, active volumes, snakes, dynamic curves, and any combination of these. Kinematic descriptors may include position, velocity, acceleration and any higher order derivative. Appearance descriptors may include feature vectors that are derived from the spectral vectors by using methods such as dimensionality reduction or reprojection or filtering of the spectra. Such methods include PCA, LDA, projection pursuit, wavelet descriptors, and any related method. 
     Tracking an object includes a prediction process  320  followed by a correction process  330 , as shown in the illustrated embodiment. Given the reflectance spectra from the HSV camera, various processes can be used to track objects in challenging scenarios. Tracking may be based on frame-to-frame matching so as to minimize the need to exploit the kinematics of the object across frames. Since the reflectance spectra are invariant to the imaging conditions, the objects can be tracked by comparing the spectra of every pixel with the spectra of the tracked object. The additional spectral features observed by the HSV camera allow a tracking process to discern between objects of similar colors that would have otherwise not have been separated by a traditional red/green/blue (RGB) camera. 
     The detection problem may be posed as a one-class hypothesis test in an embodiment. A parametric model for the reflectance spectra of the tracked object may be adopted. Pixels in the HSV sequence that are well-matched to the model are considered to be the tracked object. In an embodiment, a Gaussian model may be assumed for the spectra, which allows use of the Mahalanobis distance classifier. 
     Specifically, the mean vector m and the covariance matrix Σ of the object&#39;s reflectance spectra are estimated to form the Gaussian model N(m, Σ). In each successive HSV frame, the Mahalanobis distance test
 
 m   M ( x )=( x−m )Σ −1 ( x−m )≦ T  
 
is computed for every pixel x. The threshold T can be determined by using a constant false alarm rate argument. Pixels whose Mahalanobis distance is below T are considered to be the tracked object. Note that since the process operates on each pixel independently, it can be implemented in parallel for real-time operation in an embodiment. As would be understood by a person of ordinary skill in the art, alternatives to the use of the Mahalanobis distance test and a Gaussian model are available and may be used instead. Rather, the Mahalanobis test and Gaussian model are presented here as examples, and are not meant to limit the scope of the invention.
 
     The prediction process  320  may be performed using a tracking process. A tracking process may include the use of one or more of a Bayes filter, an observer-predictor filter, an alpha-beta filter, a Kalman filter, an extended Kalman filter, an Unscented Kalman filter, an iterated extended Kalman filter, a particle filter, a condensation filter, and any related filter. One embodiment of the particle filter tracker can use importance sampling, sequential importance sampling, factored sampling, or any related sampling. 
     One embodiment of a prediction process is illustrated in  FIG. 4 , according to an embodiment. At  410 , the state vector for the current frame is read. In an embodiment the state vector may have the form X i =[ref1_spectrum, H, W, x, {dot over (y)}, {dot over (x)}] T , as noted above. The prediction step uses the velocity and other dynamic model parameters to predict the value of the state vector at frame k from X k-1 . To do this, a delta description is determined, as shown at  420 . In the illustrated embodiment, the delta description may take the form of a vector. This delta vector may be combined at  430  with the state vector of a preceding frame k−1, shown here as X k-1 . The predicted state may therefore be expressed as the vector {circumflex over (X)} k =X k-1 +[0,ΔH,ΔW,{dot over (x)},{dot over (y)},{umlaut over (x)},ÿ] T +n, where 0 is the zero vector (since the reflectance spectrum is constant for the tracked object), ΔH, ΔW are the expected changes in the height and width of the object, and {umlaut over (x)},ÿ are the horizontal and vertical image accelerations of the tracked object. The vector n is a random Gaussian noise vector that represents uncertainty in the dynamic model. 
     The correction process is shown in  FIG. 5 , according to an embodiment. At  510 , a probability distribution for the next state is calculated. Probabilisitic modeling can be embodied by using a parametric or non-parametric distribution. Embodiments of a non-parametric distribution use a Parzen window PDF estimator, a mixture of Gaussian estimators, mixtures of arbitrary kernels, a support vector PDF estimator, or any related estimator. Embodiments of parametric distribution modeling may use uniform, Gaussian, Cauchy, gamma, beta, exponential, symmetric alpha stable, K, Weibull, Ricean, log normal, Pearson, or Polya modeling, or any variations and/or combinations of the above. 
     In the illustrated embodiment, the correction process uses a measurement function and the new observation (the hyperspectral video image) to update probabilities of the state vector X k  for frame k. In an embodiment, the likelihood or probability of the state vector is given by
 
p(X k |Z 1:k )∝exp{−(x−y) T Σ −1 (x−y)},
 
Where in this context x is the average reflectance spectrum of the tracked object, y is the average reflectance spectrum in the part of the image specified by the bounding box X k , and Σ is the spectral covariance matrix of the tracked object.
 
     At  520 , a determination is made for the probability that the predicted state is correct. At  530 , a decision is made as to whether this probability exceeds a predetermined threshold. If so, then at  540  the predicted state is used. Otherwise, at  550  the most likely state is used, as determined by the probability distribution. An optimal estimate for the state vector X k  is the one that has the maximum probability or likelihood value. 
     The processing described above for the conversion of radiance to reflectance spectra, prediction, and correction may be implemented using digital logic in the form of software, firmware, or hardware, or some combination thereof. A hardware implementation may take the form of one or more field programmable gate arrays (FPGAs) for example. Alternatively, a hardware implementation may take the form of one or more application specific integrated circuits (ASICs) or other forms of hardware logic, as would be understood by a person of ordinary skill in the art. 
     The term software, as used herein, refers to a computer program product including a computer readable medium having computer program logic stored therein to cause a computer system to perform one or more features and/or combinations of features disclosed herein. A software embodiment is illustrated in the context of a computing system  600  in  FIG. 6 . System  600  may include a processor  620  and a body of memory  610  that may include one or more computer readable media that may store computer program logic  640 . Memory  610  may be implemented as random access memory (RAM), read-only memory (ROM), or some combination thereof, for example. Processor  620  and memory  610  may be in communication using any of several technologies known to one of ordinary skill in the art, such as a bus. Computer program logic  640  is contained in memory  610  and may be read and executed by processor  620 . One or more I/O ports and/or I/O devices, shown collectively as I/O 930, may also be connected to processor 920 and memory  610 . Computing system may be incorporated in one or both of a transmission node or a receive node. 
     In the illustrated embodiment, computer program logic  640  includes radiance/reflectance conversion logic  650 . The process for conversion of radiance spectra to reflectance spectra includes receiving radiance spectrum from an HSV camera and transforming the radiance spectrum to reflectance spectra in the manner described above. Computer program logic  640  may also include prediction logic  660 . Prediction logic  660  may be responsible for predicting the location of an object in a succeeding frame, based on observation and parameters derived from a current frame, as described above. Computer program logic  640  may also include correction logic  670 . This latter module may be responsible for determining and applying a correction to a predicted location of the object, as described above. 
     It is to be appreciated that the Detailed Description section, and not the Summary and Abstract sections, is intended to be used to interpret the claims. The Summary and Abstract sections may set forth one or more but not all exemplary embodiments of the present invention as contemplated by the inventor(s), and thus, are not intended to limit the present invention and the appended claims in any way. 
     The present invention has been described above with the aid of functional building blocks illustrating the implementation of specified functions and relationships thereof. The boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. 
     While various embodiments are disclosed herein, it should be understood that they have been presented by way of example only, and not limitation. It will be apparent to persons skilled in the relevant art that various changes in form and detail may be made therein without departing from the spirit and scope of the methods and systems disclosed herein. Thus, the breadth and scope of the claims should not be limited by any of the exemplary embodiments disclosed herein.