Abstract:
A video image processing system includes an image sensor for sensing an image and generating an image signal therefor; and a histogram computation mechanism for generating, on-line, a histogram from said image signal. 
     A method of analyzing a video image includes sensing an image; generating an image signal therefor; and computing, on-line, a histogram for the image from the image signal.

Description:
FIELD OF THE INVENTION 
   This invention relates to on-line computation of color (intensity) histograms during image capture or acquisition in an imaging appliance and storage of histograms in the imaging appliance, and specifically to a system and method using an image recording device, i.e., a still or video camera, where color histograms are computed on-line during image acquisition, and where the computed histograms are stored in the image recording device. 
   BACKGROUND OF THE INVENTION 
   Use of color histograms to perform image and video analysis for database applications is common place. A histogram is an array of value-versus-count, where “count” contains the number of occurrence of that particular “value”. In the case of image intensity histogram, “value” is the pixel value and “count” is the number of pixels in the image attaining that value. Histograms of separate color channels may also be computed in a similar fashion. Histograms of separate color channels may be concatenated into a single color histogram array. Histograms of DC coefficients of block DCT (Discrete Cosine Transform) of images may also be calculated, where value equals the DC value and count is the number of blocks with the same DC value. 
   A histogram, or a set of statistics of the histogram, e.g., the first three orders of statistics, are often used as image feature descriptors in analyzing and representing the associated images. In video analysis, histograms are used to compute scene changes, video summaries. In image analysis, color feature of the image is described via its color histogram. In that case, for example, a color image may be represented by nine numbers corresponding to the first three orders of statistics per each color channel histogram, or a set of three histograms themselves. Histograms are often used in image and video analysis. Histogram computation may present a computational bottleneck. 
   None of the prior art discloses a camera that has on-line computation and storage capability for image histograms, or a system employing such a camera that is capable of quick analysis of image content. 
   U.S. Pat. No. 4,606,065 to Beg et al. describes an image processing system that includes a ‘histogram mode’ wherein locations in a memory circuit function as sorting bins. 
   U.S. Pat. No. 4,742,551 to Deering describes a mechanism for computing grey-scale histograms. 
   U.S. Pat. No. 5,339,166 to LeBrat et al. describes an image classification system based which calculates histograms to determine scene motion. 
   U.S. Pat. No. 5,521,841 to Arman et al. describes a video browser that is shape-dependent. 
   U.S. Pat. No. 5,606,655 to Arman et al. describes a method for determining a representative frame taken from a group of frames. 
   R. L. Lagendijk et al. “Visual Search in A SMASH System,” Proceedings of IEEE ICIP 96  Conference, pp. 671-674, Lausanne, Switzerland, 1996. 
   B. Yeo and B. Liu, “Rapid scene analysis on compressed video,” IEEE Trans. On Circuits and Systems for Video Technology, vol. 5, no. 6, 1995. 
   SUMMARY OF THE INVENTION 
   A video image processing system includes an image sensor for sensing an image and generating an image signal therefor; and a histogram computation mechanism for generating, on-line, a histogram from said image signal. 
   A method of analyzing a video image includes sensing an image; generating an image signal therefor; and computing, on-line, a histogram for the image from the image signal. 
   The system and method of the invention are applicable to video and still imaging systems. 
   An object of the invention is to provide for on-line color histogram computation. 
   Another object of the invention is to provide for histogram computation during image acquisition. 
   These and other objects and advantages of the invention will become more fully apparent as the description which follows is read in conjunction with the drawings. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is an example of a histogram having values quantized to 256 different possible values. 
       FIG. 2  is an example of a histogram having values quantized to 64 different possible values. 
       FIG. 3  is a block diagram of an image acquisition device constructed according to the invention. 
       FIG. 4  is a block diagram of a system constructed according to the invention. 
       FIG. 5  is a variation of the system of the invention. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   Color is often a distinctive characteristic of an image and is used as an image feature described by a color-histogram. Color histograms are commonly used in quick and effective analysis of video. For example, color histograms are widely used in detecting shot boundaries and in reconstructing video summaries by detecting the most representative frames in a video sequence. Differences in contents of successive frames may be effectively represented, in many cases, by difference measures defined in terms of their respective color histograms. However, computation of color histograms may correspond to a significant portion of the total processing time required. In the prior art, in implementation of the method of video summarization, color histogram computation takes about ten times as much computational time than the rest of the summarization process. 
   To save storage space needed to store the histograms and computational complexity in subsequent computational procedures that make use of the histogram, the value may be quantized to a coarser scale. Also, only a subset of pixels may be considered in computing the count. Instead of storing histograms themselves, only their sample statistics (e.g., mean, variance and skewness) may be stored and used. If a histogram is computed and stored on-line, in a way transparent to the user, computational efficiency of post-processing that utilize histograms will increase. This invention relieves the post-processing application from computing the histograms. For instance, given a video camera containing embedded video summarization software, and on-line computed and stored histograms, the user may activate a “summarize” functionality to directly utilize the readily available histograms and compute a summary of the recorded content in terms of its most representative frames and visualize the summary on camera display and store it for future use in quick identification of video content or for indexing and annotation for storage in a database. 
   Referring now to  FIG. 1 , a portion of a histogram  10  is depicted for values which are quantized to 256 different possible values, e.g., this is an image intensity histogram for an 8-bit image.  FIG. 2  shows a similar histogram  12  quantized to 64 possible values, e.g., an image intensity histogram for a 6-bit image. Both histograms  10  and  12  are what are referred to herein as “full scale histograms.” 
   An image acquisition device is shown in  FIG. 3  at  14 . Device, or camera,  14  includes an image sensor  16 , which generates an analog image signal, A, representative of a sensed image, I, and an analog-to-digital converter  18 , which converts analog image signal A into a digital image signal D. Camera  14  also includes a conventional in-camera image processing mechanism  20  for processing signal D. A storage mechanism  22  is provided, which may take the form of a video tape or other storage media, such as optical disc, flash memory in a video cassette, e.g., memory-in-cassette (MIC) in a DVC cassette, or in flash memory in a camera  14 , e.g., in an analog video camera. Image and related data may also be stored on conventional photographic film. The processed image signal from mechanism  20  is stored in an image storage mechanism  24  of storage mechanism  22 , and may also be displayed by an optional on-camera display  26 . 
   Simultaneously with image processing, on-line histogram computation occurs, block  28 , in camera  14 . Histograms are computed from signal D. The computed histograms are stored in histogram storage mechanism  30  of storage mechanism  22 , which may be any of the varieties of memory described in connection with image storage mechanism  22 . As used herein, “on-line” means that the histograms are computed in real time as the image is acquired or captured, eliminating the need for such computation during post-processing. 
   Such computation is, in general, less costly compared to other usual signal and image processing that is performed in the camera and hence, does not hinder the usual camera performance. Information, e.g., a table, linking histograms with their associated images are also recorded and made available to subsequent post-processing procedures. 
   The following equations represent the first three moments, i.e., “sample statistics” of full scale histogram c(v), as shown in  FIGS. 1 and 2 , where N is the total number of different possible values.
 
 m   1 =1/ NΣ   v   c ( v ) 
 
 m   2 =(1/ NΣ   v ( c ( v )− m   1 ) 2 ) 1/2  
 
 m   3 =(1 /NΣ   v ( c ( v )− m   1 ) 3 ) 1/3  
 
   If color histograms are computed on-line during image acquisition via in-camera hardware/software and stored along with the associated image information in the camera, the user application does not have to be burdened by downloading the images to a host platform, e.g., a personal computer (PC), and computing their color histograms before further processing the images. The computed histograms may be readily available to the user application. Thus, a quick analysis of the content is possible without the need for downloading images by accessing them one-by-one, and computing their histograms. This will result in time savings as well as reduced memory requirements for the host platform. For example, a summary of the video may be quickly computed using the histograms. Given the histogram of the most representative frames that constitute the summary and the information about which frames the histograms are associated with, the summary may be visually presented to the user by downloading only those frames that are contained in the summary. Then, the user may only download, for instance, the interesting segments of the video suggested by the summary. 
   In the above-described process, only the first three order statistics: 1st order moment (mean), 2nd order moment (variance), and third order moment, as shown by the equations, above, may be computed and stored. This provides savings in storage because three statistics for each one of the three color channel results in a total number of nine numbers only. 
   A video capturing device employing on-line histogram computation may generate a video summary upon a user&#39;s request. Camera  14 , and now referring to  FIG. 4 , may include a video analysis engine  32 , which identifies the representative keyframes  33  from stored histograms  30 , for example, using the method proposed by Lagendijk et al. Frames corresponding to the keyframe of the summary are then selected from image storage mechanism  24  to generate the video content summary, which may be visualized. The video content summary may be displayed by a display  35 , and/or stored in the camera, on tape, on a hard drive, etc. Alternatively, camera  14  may be switched to a “record summary mode,” where only the summary images are maintained by the camera, and where summary keyframes are identified on-line using the on-line computed histogram information. This may be a preferable mode for a camera with limited storage, or for one that is connected to a low-bandwidth channel. 
   The invention may also be implemented by utilizing appropriate hardware/firmware in a digital camera to compute the histograms. The color histogram data may be compressed in the camera using standard lossless compression methods for efficient storage, if desired. Another major step required is a simple mechanism for linking the histogram data with their associated frames. This is required if histograms are stored separate from the image data, i.e., in a histogram file. Separate storage of histograms provides fast access to them. Such a link may be achieved in many different ways, for example by appending an identifier to each histogram to reference to its associated image. In a DVC compliant camera, for example, color histograms may be stored in the “memory-in-cassette” (MIC), or on the tape itself, as auxiliary data. 
   A video camera constructed according to the invention may be connected to a host platform, such as a PC, as shown at  36  in  FIG. 5 , which is also referred to herein as a peripheral processing mechanism. Camera  14  is connected to PC  36  by means of an interface  38 , which is operable to transfer image data, histogram data and video content summary data, as directed by the user. PC  36  also includes a video analysis engine  40 , similar to that used in camera  14 , which provides for database indexing, block  42 , and the generation of a database  44 . The software application accesses the histogram data directly, without accessing images, to analyze the video. A “quick summary” may be computed using the histograms and visually presented to the user by downloading the keyframes contained in the summary. The user may then choose to view the video clip represented by a certain keyframe in the summary (i.e., video frames between two successive keyframes), or start annotating the summary frames for storage in a database. The user may also transfer the video summary to the camera for storage. Interface  38  may take the form of a fast wireless or wired link, such as a serial link, e.g., IEEE 1394 connection. In such a system, video analysis computation may be performed on the PC and the keyframes and video may be downloaded to the PC platform. 
   The video analysis engines described herein implement a tool for histogram based video summarization. This may be performed in the camera provided that the summarization engine, as proposed by Lagendijk, et al., is implemented in the camera. The other possibility is to perform the analysis on a PC platform that may be interfaced with the camera, as depicted in the following diagram. It is assumed that a mapping mechanism is used to keep track of the identity of the histograms, i.e., which histogram belongs to which image. 
   Analysis may be performed on a PC, rather than on the camera. If the analysis task is generation of a video content summary, the summary may be stored back in the camera as shown in FIG.  5 . The video may be indexed on the basis of its summary keyframes and stored in a database. The keyframes may be used for annotating the video for storage in database  44 . 
   The color histograms are also valuable in their own right, in addition to their utility as tools for video summarization. Color is a widely used feature for content-based representation of images and video frames, and a color histogram is a commonly used descriptor for color. Hence, the available histograms may be directly utilized in color-based indexing of images in a content-based database application. 
   The present invention may be extended to on-line computation and storage of image feature descriptors other than color histograms. Histograms, or other feature descriptors, may be used so long as the use of such feature descriptors does not hinder normal camera operation and so long as the camera contains adequate computational power. Histograms of appropriate transform coefficients may be computed in a camera that employs transform-based compression. For instance, histograms of DC coefficients of DCT are commonly used for video analysis. Alternately, functions of histograms, e.g., sample statistics of histograms, may be computed. 
   In a single sensor color camera, histograms may be directly computed from a sparse set of color values, resulting from a color filter array. In the case of a monochrome sensor, a gray-level histogram may be computed and stored. 
   Although a preferred embodiment of the invention, and a variation thereof, have been disclosed, it should be appreciated that further variations and modifications may be made thereto without departing from the scope of the invention as defined in the appended claims. Particularly, the system and method are applicable to both video cameras and still cameras.