Patent Publication Number: US-9432576-B2

Title: Method and apparatus for fusing images from an array of cameras

Description:
CROSS REFERENCES TO RELATED APPLICATIONS 
     This application claims priority from U.S. Provisional Patent Application No. 61/861,752 filed on Aug. 2, 2013, which is hereby incorporated by reference in its entirety. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     Embodiments of the present invention generally relate to a method and apparatus for combining images taken from an array of parallel cameras while preserving and enhancing details and decreasing noise. 
     2. Description of the Related Art 
     It is desirable to use an array of parallel cameras to determine details in an image. In such a setup, cameras are usually side by side looking in the same direction. The images produced by the array of cameras are usually used to produce a high-resolution image. Thus, such a setup, allows for using a regular camera to produce a high-resolution image. In addition, such a setup allows for determining depth information, which may not be available otherwise. 
     However, such a setup is usually not efficient. Therefore, there is a need for a method and/or apparatus for efficiently combining images taken from an array of parallel cameras while preserving and enhancing details and decreasing noise. 
     SUMMARY OF THE INVENTION 
     Embodiments of the present invention relate to an image fusing method, apparatus and system for fusing images from an array of cameras. The method includes retrieving input images from an array of cameras, selecting at least one camera from the array of cameras as a reference camera, estimating misalignment between the retrieved input images from the at least one reference camera and the retrieved input images from the other cameras in the array of cameras, estimating misalignment parameters between the at least one reference camera and the other cameras in the array of cameras, estimating local disparity between the reference camera image data and the other cameras in the array of cameras based on the estimated misalignment parameters, using the estimated misalignment parameters and the estimated disparity values, mapping the image data into a reference camera grid, wherein the retrieved input image data from the other cameras in the array of cameras is fused in the reference camera grid utilizing fractional offsets from integer coordinates, and producing an output image grid on the reference camera grid and interpolate output pixels using processed data for producing a high-resolution image. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       So that the manner in which the above recited features of the present invention may be understood in detail, a more particular description of the invention, briefly summarized above, may be made by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments. 
         FIG. 1  is an embodiment of a 2×2 camera array; 
         FIG. 2  is an embodiment for fusing images to produce a resolution image; 
         FIG. 3  is an embodiment of a flow diagram depicting an image fusing method for fusing images from an array of cameras; 
         FIG. 4  is an embodiment for mapping image data onto a reference camera grid; and 
         FIG. 5  is an embodiment of a Lanczos filter and its application to a reference camera grid. 
     
    
    
     DETAILED DESCRIPTION 
     This invention relates to camera arrays where cameras are aligned in an N×M grid where N and M are the number of cameras in the vertical and horizontal directions, respectively. For example,  FIG. 1  is an embodiment of a 2×2 camera array. Such a camera may be connected to a system containing a digital processor for performing the fusing as described in  FIG. 2  and  FIG. 3  below. In another embodiment, such a system may be internal to at least one camera in the array of cameras. Such a system usually may contain a digital processor, memory, non-transitory readable medium, power module and the like. 
     After capturing images from using an array of cameras, the images are fused to produce a single image.  FIG. 2  is an embodiment for fusing images to produce a resolution image. For example, if the individual cameras in the 2×2 example above are 1 megapixel each, the fused image will be larger than 1 megapixel. The exact number of output megapixels may be selected depending on desired output image size. In the 2×2 example above, the typical output size would be 4 megapixels. 
     In one embodiment, an improved method aligns the images coming from different cameras using a modified perspective transform model, estimates the disparity present between them, and uses the pixel data coming from all images in a local window to interpolate the output pixels. 
       FIG. 3  is an embodiment of a flow diagram depicting an image fusing method for fusing images from an array of cameras. As shown in  FIG. 3 , the method selects one of the cameras as the reference camera. The reference camera output defines a center grid and the data coming from other cameras are registered on this grid based on calibration and disparity estimation. Assuming all the cameras in the array are identical, any one of them may be selected as the reference. However, usually, one may select a central or close to the central camera as the reference so as to minimize maximum disparity in the calculations. 
     Next, the method estimates the global misalignment parameters between each camera and the reference camera, for example using the method described in U.S. patent application Ser. No. 13/298,936, which is herein incorporated by reference. For misalignment estimation, one may use a modified perspective transformation model. For a two-dimensional camera array (e.g. having multiple cameras in both directions), the baseline between the cameras may not always be horizontal or vertical. 
     Depending on the configuration, there may be a need to handle diagonal baselines. In such a case, the algorithm may generate parameters for arbitrary baselines without the need to rotate the input images. Using homogenous coordinates, a perspective transformation may be written as follows: 
               [         X           Y           Z         ]     =       [         a       b       c           d       e       f           g       h       1         ]     ⁡     [         x           y           1         ]             
Thus, modifying the original transformation model by taking out the directional component that is parallel to the baseline in consideration:
 
               [         Y           Z         ]     =       [         d       e       f           g       h       1         ]     ⁡     [         x           y           1         ]             
Hence, this enables the user to eliminate the uncertainty caused by the unknown disparity between the views. For instance, for a horizontal baseline, the disparity may show up in the horizontal direction as a function of the scene depth.
 
     For each additional camera, the method estimates local disparity between misalignments, corrected image data and the reference camera image data. In one embodiment, a multi-sized block is used for matching solution for such purposes. However, any disparity estimation algorithm may be used. To estimate the disparity at the sub-pixel level, some type of curve fitting may be employed, for example, a variable second degree polynomial formula for this purpose. 
     For each additional camera, using global misalignment parameters estimated (e.g. the estimates described in the above), and local disparity values estimated (e.g. the estimates described in the above), the image data may be mapped onto the reference camera grid.  FIG. 4  is an embodiment for mapping image data onto a reference camera grid. As a result, the image data from additional cameras is placed on the reference camera grid in terms of fractional offsets from integer coordinates. 
     In the next step, the method may perform un-sharp masking on combined non-uniform image data coming from all cameras. This optional step is aimed at increasing the fidelity of the low-resolution pixels by using their neighbors coming from other images. Any un-sharp masking approach that could work on non-uniform samples may be used here. 
     Finally, depending on the desired output size, the method may define an output image grid on the reference camera grid, and interpolate output pixels using processed data described in step  5 . For example, Lanczos filter may be used for this interpolation, but other filters may be used as well.  FIG. 5  is an embodiment of a Lanczos filter and its application to a reference camera grid. The output of the Lanczos filter provides the high-resolution output image. 
     Other methods assume a rotational and translational relationship between the input images. For a camera array that is not perfectly calibrated, this assumption does not hold. Thus, in one embodiment, the method and apparatus described herein accounts for the small perspective differences between the cameras with a modified perspective transformation model. Furthermore, the method and apparatus described above may not be iterative in nature and may not perform any additional processing for de-noising; thus, noise reduction and resolution enhancement are achieved with a single interpolation process. Hence, creating a single high-resolution low-noise image from several low-resolution high-noise samples obtained from an array of cameras is enabled herein without requiring perfect camera calibration to achieve this. 
     While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.