Patent Document

BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    This invention relates to illumination normalization of digital images, and more particularly, to methods and apparatuses for using various types of diffusion processing for removing intensity variations in an image which are caused by illumination. 
         [0003]    2. Description of the Related Art 
         [0004]    Images may contain variations in intensity which are introduced by the light source used to illuminate the subject and/or scene composing the image. These intensity variations may be undesirable because not only can they be visually distracting and reduce the aesthetic quality of an image, but they may also pose difficulties for various types of image processing algorithms, such as, for example, algorithms used for automatic facial recognition. These variations may manifest themselves in the form of edge artifacts, which are referred to herein as spurious edges. Spurious edges can be quite distracting because they can mask real edges in the image, where real edges, which are the result of the underling structure of the subject or scene within the image, contain information typically of most interest to image users. Spurious edges, as well as other undesirable illumination variations, can be corrected through the use of illumination normalization techniques. 
         [0005]    Conventional illumination normalization techniques include level compression techniques to mitigate the appearance of illumination variations. Some level compression techniques use logarithmic functions to compress the dynamic range of the image, thus reducing the perception illumination gradients. Other techniques may use statistical approaches such as histogram stretching or equalization. Histogram approaches may seek to alter the intensity distribution of the image to improve overall contrast and reduce the effect of unwanted variations in intensity due to illumination. However, such conventional techniques may have difficulty compensating for sharp spurious edges, and may further cause other global variations in intensity which may be undesirable. Accordingly, there is a need for approaches to reduce spurious edges in digital images without affecting other portions therein in a detrimental manner. 
       SUMMARY OF THE INVENTION 
       [0006]    Embodiments consistent with the present invention are directed to methods and apparatuses for illumination normalization. One embodiment consistent with the invention is a method for performing illumination normalization on a digital image, which includes receiving an input image having at least one spurious edge directly resulting from illumination present when the input image was acquired, performing anisotropic diffusion on the input image to form a diffusion image, and removing at the least one spurious edge using the diffusion image. 
         [0007]    Yet another embodiment consistent with the invention is an apparatus for performing illumination normalization in an image which includes a processor operably coupled to memory storing input image data which contains an object of interest having at least one spurious edge directly resulting from illumination present when the input image was acquired, a model of a representative object of interest and functional processing units for controlling image processing, wherein the functional processing units further include a model generation module, and a model based anisotropic diffusion module which predicts edge information regarding the object of interest based upon the model, and produces a reflectance estimation utilizing the predicted edge information. 
         [0008]    Another embodiment consistent with the invention is an apparatus for performing illumination normalization in an image which includes a processor operably coupled to memory storing input image data having at least one spurious edge directly resulting from illumination present when the input image was acquired, and functional processing units for controlling image processing, wherein the functional processing units include an anisotropic diffusion module to perform anisotropic diffusion on the input image to form a diffusion image, and a combination module which removes at the least one spurious edge using the diffusion image. 
     
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0009]    Further aspects and advantages of the present invention will become apparent upon reading the following detailed description taken in conjunction with the accompanying drawings, in which: 
           [0010]      FIG. 1  depicts an exemplary flowchart for illumination normalization consistent with an embodiment of the present invention; 
           [0011]      FIG. 2  shows an exemplary flowchart for illumination normalization utilizing model-based anisotropic diffusion consistent with the another embodiment of the invention; 
           [0012]      FIG. 3  shows an exemplary flowchart providing further detail for the embodiment described in  FIG. 2 ; 
           [0013]      FIG. 4  depicts provides another exemplary flowchart for illumination normalization using model-based anisotropic diffusion consistent with yet another embodiment of the present invention; 
           [0014]      FIG. 5  illustrates an exemplary flowchart for model generation consistent with yet another embodiment of the present invention; 
           [0015]      FIG. 6  shows an exemplary flow diagram for an embodiment having a direct reflectance estimation illumination normalization which is consistent with the present invention; and 
           [0016]      FIG. 7  shows an exemplary apparatus consistent with another embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0017]    Aspects of the invention are more specifically set forth in the following description with reference to the appended figures. Although the detailed embodiments described below relate to face recognition or verification, principles of the present invention described herein may also be applied to different object types appearing in digital images. 
         [0018]    Generally speaking, an input image I(x,y) may be conceptualized as the product of a reflectance image R(x,y) and lighting image L(x,y); mathematically speaking, I(x,y)=R(x,y)*L(x,y), where (*) denotes a pixel-by-pixel product of two images. The reflectance image may be illumination invariant, and contrast variations, textures, real edges, etc. may be caused by the underling structure of the contents and/or objects (e.g., faces) represented within the image. The lighting image may be the result of contrast variations, such as, for example, spurious edges, resulting from the illumination of the contents and/or objects. For example, if a strong light source was placed in a specific location next to a face during the acquisition of an image, spurious edges may appear in the image as a function of the location of the strong light source. Real edges (represented by reflectance R(x,y)), resulting from structural facial features such as the eyes, nose, mouth, etc., also appear intermixed with the spurious edges. 
         [0019]    Typically, it is the reflectance R(x,y) image which is output of the illumination normalization process, which can be recovered in a variety of ways using diffusion processing. In one embodiment, diffusion techniques, including model-based anisotropic diffusion (described further below) can be used to estimate the reflectance R(x,y) indirectly. Other embodiments can include using model based anisotropic diffusion to estimate the reflectance R(x,y) directly. 
       Indirect Reflectance Estimation using Conventional Anisotropic Diffusion 
       [0020]      FIG. 1  depicts an exemplary flowchart for illumination normalization process  100  which estimates the reflectance model R(x,y) indirectly. Illumination normalization process  100  includes a diffusion step  105  and a combine step  110 . Diffusion processing is initially performed on the input image. An input image is provided which may be a digital image obtained from any known image acquisition device, including, for example, a digital camera, a scanner, etc. The input image may also be an image created through any known synthetic techniques, such as computer generated animation, or may be a combination of digital data which is acquired via a sensor and synthetically generated. Diffusion processing could be any general diffusion processing algorithm known in the art, and may include conventional anisotropic diffusion. Conventional anisotropic diffusion (AD) techniques may be used for edge-preserving noise reduction in digital image data. AD algorithms may remove noise from an image by modifying the image through the application of partial differential equations. This modification typically involves the iterative application of a filtering operator which varies as a function of edge information detected within the image. The location of such edges may be determined utilizing conventional edge detectors such as, for example, those employing gradient functions. In practice, Gaussian filters may provide a reliable way to perform the gradient operations when used conjunction with, for example, a Laplace operator; as well as performing the noise reduction filtering operations. 
         [0021]    Implementation of the AD algorithm can be viewed as solving the diffusion differential equation via iterative numerical differential equation solvers, wherein each iteration over the image corresponds to a time step. For each iteration, the scale of a Gaussian filter may be altered, and a gradient function is used to determine whether an edge locally exists within the image. If it is determined that an edge exists, Gaussian filtering may not be performed in order to preserve the edge. If no edge is detected, the area may be filtered to reduce noise. These operations are performed for each iteration, and the local result is combined with the image. 
         [0022]    In this embodiment, diffusion  105  can produce a diffusion image which may be an estimate of the illumination, L′(x,y). Parameters, such as, for example, the filter coefficients (or weights), may be selected so diffusion  105  creates an edge preserved, smoothed version of the input image I(x,y). L′(x,y) may have large, strong edges preserved which correspond to spurious edges due to illumination. The illumination estimate L′(x,y) and the input image I(x,y) may then be processed together in combine step  110 . Combine step  110  may include simply dividing the illumination estimate L′(x,y) into the input image I(x,y) to determine a reflectance estimate image R′(x,y); that is, R′(x,y)=I(x,y)/L′(x,y). In other embodiments, the reflectance estimate R′(x,y) may be determined by subtraction: R′(x,y)=I(x,y)−L′(x,y). Other known image processing techniques, such as filtering, scaling, non-linear intensity mapping, could be performed in combine step  110  to enhance the reflectance estimate R′(x,y). One of ordinary skill in the art would appreciate that various other ways of combining L′(x,y) and I(x,y) could be utilized to estimate the reflectance R′(x,y). In generating the reflectance estimate R′(x,y), combine step  110  produces the output image which may have had the spurious edges removed and the real edges ideally left unaltered, thus producing an illumination normalized image. 
       Indirect Reflectance Estimation using Model Based Anisotropic Diffusion 
       [0023]    When illumination normalization is performed using conventional anisotropic diffusion, real edges, which may be due to object structure, can be mistaken as spurious edges which may be the result of illumination variations. This inability of conventional anisotropic diffusion to distinguish between real and spurious edges may result in a loss of desirable information within the processed image. Model based anisotropic diffusion (MBAD) illumination normalization can differentiate between edges caused by the object represented in the image and edges due to some other effect such as illumination variations. 
         [0024]      FIG. 2  shows an exemplary flow diagram of an MBAD illumination normalization embodiment  200  which estimates the reflectance R′(x,y) indirectly. MBAD illumination normalization  200  may include optional geometric normalization  205 , model based anisotropic diffusion  210 , model  215 , combine step  120 . The input image I(x,y) may optionally first undergo geometric normalization  205 , shown in  FIG. 2 , using dashed lines to indicate that it is an optional process. Geometric normalization  205  can process the input image so it has a greater degree of compatibility with model  215 . Geometric normalization may register the input image with model  215  to improve the overall performance of image processing method  200 . The registration may be performed using any registration techniques known in the art, and can further include rotation, scaling, warping, cropping, and/or translation of the of the input image, or any combination thereof. Registration can allow the input image to be transformed into canonical form so that objects represented therein may be associated with representative objects in model  215 . As stated above, geometric normalization  205  is optional, and its use may depend upon the object being modeled. For example, if the model was being used to represent the edges of a human face, geometric normalization  205  may typically be performed. 
         [0025]    Generally speaking, model  215  may provide additional information regarding an object of interest which cannot be determined from the input image itself. In one embodiment, model  215  can provide information regarding edges within a representative object, which may include the location and likelihood of real edges within the representative object. As used herein, the term “real edges” may be defined as localized contrast variations (i.e. an edge) within an image which solely result from features associated with an object. The real edges typically may not be caused by other effects external to the object, such as environmental phenomena or sensor artifacts. For example, as described in more detail below, if the representative object in model  215  is a face, real edges indicated in the model may be the result of the structural variations in the features naturally occurring in a face, such as, for example, the eyes, nose, mouth, etc. Other representative objects may be generated depending upon what artifacts need to be removed in the input image and the input image&#39;s contents. 
         [0026]    Model  215  may be represented using a variety of different methods. One representation may include a multi-dimensional mathematical function which indicates the probability of an edge as a function of pixel position within the input image. The mathematical function could be determined using regression or other modeling techniques. Model  215  may also be represented by a two-dimensional dataset, having a structure like an image or a surface, where pixel indices in the horizontal and vertical directions represent location, and pixel values represent the probability of a real edge. The values pixel values may take on values between 0 and 1. Details regarding one embodiment for creating a model are presented in further detail below in the description of  FIG. 5 . Model  215  provides real edge information to model based anisotropic diffusion  210 . 
         [0027]    Model based anisotropic diffusion  210  may perform the well known anisotropic diffusion process while utilizing real edge information supplied by model  215 . While embodiments herein so far have described using anisotropic diffusion, other embodiments of the invention may contemplate other types of diffusion processes, which are known in the art, that could benefit from the information supplied by model  215 . 
         [0028]    Like standard diffusion algorithms, model based anisotropic diffusion (MBAD)  210  may iteratively perform noise reduction filtering over successive time periods, and use gradient information to determine whether or not an edge exists underneath a filter kernel for a given iteration. However, to improve the edge detection process, MBAD  210  can utilize information from model  215  to determine if an edge underling the filter kernel is a real edge. This information may be utilized during each iteration in the diffusion process, therefore this embodiment of MBAD  210  can modify the internal operations of the algorithm. These modifications can be implemented in a variety of ways. For example, model information  215  may be used to determine whether or not to apply filtering. In another example, model  215  information may be used to alter the filtering parameters, such as, for example, the filter weights, which is described in more detail below in  FIG. 3 . In this embodiment, the output of MBAD  210  may be an considered an illumination estimate L′(x,y), while preserving real edge information originally present in the input image of the object. 
         [0029]    Once the illumination estimate L′(x,y) is determined, the illumination estimate L′(x,y) may be combined with the input image I(x,y) in combine step  220 , if no geometric normalization  205  was performed. If the geometric normalization was performed, combine step  220  would combine the geometrically normalized image with the illumination estimate L′(x,y). As described in the embodiment shown in  FIG. 1 , combine step  220  may include simply dividing the illumination estimate L′(x,y) into the input image I(x,y) to determine a reflectance estimate image R′(x,y). In other embodiments, the reflectance estimate R′(x,y) may be determined by subtraction: R′(x,y)=I(x,y)−L′(x.y). Other known image processing techniques, such as filtering, scaling, non-linear intensity mapping, could be performed in combine step  220  to enhance the reflectance estimate R′(x,y). One of ordinary skill in the art would appreciate that various other ways of combining L′(x,y) and I(x,y) could be utilized to estimate the reflectance R′(x,y). 
         [0030]    In generating the reflectance estimate R′(x,y), combine step  220  produces the output image which may have had the spurious edges removed, and the real edges ideally left unaltered, thus producing an illumination normalized image. This embodiment may improve the quality of the estimate R′(x,y) because it utilizes the additional real edge information provided by model  215 . 
         [0031]      FIG. 3  shows a more detailed exemplary flowchart for model-based anisotropic diffusion  210  consistent with the embodiment shown in  FIG. 2 .  FIG. 3  details an embodiment of MBAD  210  whereby the filter coefficients are modified on the basis of real edge information provided by model  215 . Here, a model  215  may provide an indication of a real edge in step  305 . On the basis of this information, MBAD  210  may select filter parameters in step  310 . Typically, if a real edge is indicated, less filtering may be performed in order to preserve the edge. If no real edge is indicated, the more filtering may be performed to better reduce noise. 
         [0032]    The filter parameters may be selected in a variety of different ways in step  315 . In one embodiment, the actual size of the filter kernel could be varied. If the probability of an edge is indicated as high, the size of the filter kernel could be reduced, thus reducing the noise filtering effects. If the probability of a real edge is low, the size of the filter kernel could be increased to better reduce noise. In another embodiment, the values of the filter coefficients themselves may be changed based upon the value of the probability of a real edge. These values could be determined by a look-up table based upon real-edge probabilities, or they could be determined by a mathematical function known to one of ordinary skill in the art. In a simple embodiment, one may adjust the filter parameters so no filtering is performed when the probability of a real edge exceeds a threshold value. Once the filter parameters are determined, the image may be filtered in step  320  using the selected parameters. The filtering may be standard convolutional filtering, or any other filtering known to one of ordinary skill in the art. 
         [0033]    The real edge information provided by model  215  may be solely used in selecting filter parameters, or this information may be combined with the gradient edge information typically provided by the anisotropic diffusion process. How these two types of information may be combined may be based upon by the level of confidence in the model of the representative object itself, and/or information regarding the conditions from which the input image was collected. 
         [0034]      FIG. 4  depicts provides another exemplary flowchart for illumination normalization  400  using MBAD consistent with yet another embodiment of the present invention. MBAD based illumination normalization  400  includes optional geometric normalization  205 , anisotropic diffusion  405 , model  215 , model application  410 , and combine step  220 . 
         [0035]    An input image may first undergo an optional geometric normalization step  205 , which may be the same process described above in illumination normalization  200  shown in  FIG. 2 . This embodiment differs from illumination normalization  200  in that MBAD  210  is broken down into two components, the first is a conventional anisotropic diffusion process  405 , and the second is a model application process  410 . This embodiment differs from the embodiment shown in  FIG. 2  in that information from model  215  may not be directly applied during anisotropic diffusion  405 , but may be applied after the input image has undergone anisotropic diffusion, for which the result is referred to as a diffusion image. The model information, provided by model  215 , is combined with the diffusion image in model application step  410 . Model  215  may be the same model discussed above for the embodiment shown in  FIG. 2 . Anisotropic diffusion  405  may utilize any conventional anisotropic diffusion process known in the art, or for that matter, use any form of known diffusion algorithm. 
         [0036]    Model  215  supplies real edge information to model application  410 . This information may be combined with the diffusion image and the input image to improve the filtering process. In one embodiment, the diffusion image and the input image may be combined using a simple linear combination, wherein values from model  215  provide weights. The resultant linear combination produces an illumination estimate L′(x,y). The linear combination may be mathematically described by following equation: 
         [0000]        L ′( x,y )= I ( x,y )[1 −M ( x,y )]+ D ( x,y ) M ( x,y )       where
           L′(x,y): illumination estimate;   I(x,y): input image   D(x,y): diffusion image; and   M(x,y): model values.   
                 
         [0042]    So for example, in areas of the input image where the edge probability is low, M(x,y) may take on values close to zero. In these areas, illumination estimate L′(x,y) will be similar to the input image I(x,y). 
         [0043]    As in illumination normalization embodiment  200  shown in  FIG. 2 , once the illumination estimate L′(x,y) is determined, it may be combined with the input image I(x,y) in combination step  220 . If geometric normalization  205  is performed, the output of geometric normalization step  205  is combined with the illumination estimate L′(x,y). The combine step  220  may operate in the same manner as provided above in the description of  FIG. 2 . The output image of combine step  220  is the reflectance estimate R′(x,y). 
         [0044]      FIG. 5  illustrates an exemplary flowchart for model generation consistent with yet another embodiment of the present invention. Model  215  may be created by using a set of training images which each contain a representative object of interest. Each training image may be optionally processed with a geometric normalization process similar to the one described above, to ensure each object is a canonical reference (not shown). Next, edge information is extracted from each image in step  510 . The edge information may be extracted using any known edge detector, such as, for example, a Sobel edge detector. Once the edge information is extracted from each of the training images, the images may be combined in step  515 . The combination may include summing the images together and performing subsequent low pass filtering using a Gaussian kernel. The summing and filtering allows illumination and other variations which occur in each individual training image to be averaged out, reducing spurious edges, and reinforcing real edges corresponding to the representative object. The filtered image may then have a non-linear function applied, such as, for example, a gamma correction, which is known in the art. Further processing may also convert combined image into a probability lying between 0 and 1. The final output is the model  215  which may take the form of a multi-dimensional dataset. In one embodiment, the training images contained faces as the representative object, and created a model providing information relating to real edges within a face. A surface plot  520  of this model is shown in  FIG. 5 , where peaks can be seen which correspond to facial features. In other embodiments, other meta information could be added to model  215  to improve accuracy. The meta information may include information regarding the sensors which collected the training images, or other information know to one of ordinary skill in the art, such as, for example, the fact that there should be no albedo changes on the nose of a face. Other embodiments may allow the model to take the form of a mathematical function instead of a multi-dimensional dataset. 
       Direct Reflectance Estimation using Model-Based Anisotropic Diffusion 
       [0045]      FIG. 6  shows an exemplary flow diagram for another illumination normalization embodiment  600  consistent with the present invention. Direct reflectance estimation (DRE) illumination normalization  600  may include an optional geometric normalization step  205 , MBAD direct reflectance estimation step  710 , and model  215 . 
         [0046]    As described in the embodiment shown in  FIGS. 2 and 4 , geometric normalization is optional and used if the input image should be registered to the model  215 . Both geometric normalization  205  and model  215  operate as described above in  FIGS. 2 and 4 . MBAD direct reflectance estimation step can outputs the reflectance estimate R′(x,y) without having to perform the combine step described above in  FIGS. 2 and 4 . In this embodiment, the MBAD parameters are selected so that more filtering is performed in areas which correspond to spurious edges, thus significantly blurring out illumination edges, and leaving real edges corresponding real features on the object in the image, the locations of which are estimated by model  215 . 
         [0047]    The selected parameters within MBAD direct reflectance estimation  710  may be the parameters which control the filtering. One way to increase the amount of filtering to increase the filter size that is used for the spurious edges. Another way to increase the amount of filtering would be to alter the filter coefficients so that the filter cutoff point is reduced in frequency, thus narrowing the pass band of the low-pass Gaussian filter. 
       Apparatus for Direct or Indirect Reflectance Estimation 
       [0048]      FIG. 7  shows an exemplary processing apparatus  700  consistent with another embodiment of the present invention. Processing apparatus  700  may include at least one processor  710 , a memory  715 , a mass storage device  720 , an I/O interface  725 , a network interface  727 , an output display  730 , and a user interface  735 . Note that processing apparatus  700  can be any data processing equipment known to one of ordinary skill in the art, such as, for example, workstations, personal computers, special purpose computational hardware, special purpose digital image processors, and/or embedded processors. Processor  710  can execute instructions and perform calculations on image data based upon program instructions. Modules containing executable instructions, and digital image data, can be stored wholly or partially in memory  715 , and transferred to processor  710  over a data bus  740 . Memory  715  may contain a model generation module  750  to generate model  215 , a geometric normalization module  755  to perform optional geometric normalization  205 , a model based anisotropic diffusion module  760  to perform MBAD  210  which is performed in the model based anisotropic diffusion step  210  shown in  FIG. 2 . Alternatively, this module could contain a conventional anisotropic diffusion module  765  and a model application module  770  which perform of the anisotropic diffusion step  405  and the model application step  410  provided in the embodiment shown in  FIG. 4 . Memory  715  also may contain combination module  785  which may perform the combine steps  220  described in  FIG. 2  and  FIG. 4  Memory  715  may further contain the model module  775  containing the model  215 , and image data  780 , which could include the input image data, output image data (reflectance estimate R′(x,y)), diffusion image data (illumination estimate L′(x,y)), and the training image data. 
         [0049]    Mass storage  720  can also store program instructions and digital data, and communicate to processor  710  over data bus  740 . Processing system can provide and receive other information through I/O interface  725  and network interface  727 , to provide information to users on display  730 , and receive user commands and/or data through user I/O interface  735 . 
         [0050]    Although detailed embodiments and implementations of the present invention have been described above, it should be apparent that various modifications are possible without departing from the spirit and scope of the present invention.

Technology Category: g