Patent Publication Number: US-2013242059-A1

Title: Primary and auxiliary image capture devices for image processing and related methods

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 13/584,744, filed Aug. 13, 2012 and to be issued as U.S. Pat. No. 8,441,520; which is a continuation of U.S. patent application Ser. No. 13/115,589, filed May 25, 2011 and issued as U.S. Pat. No. 8,274,552; which claims the benefit of U.S. Provisional Patent Application Ser. No. 61/427,278, filed Dec. 27, 2010; the contents of all of which are hereby incorporated by reference in their entireties. This application is related to U.S. patent application Ser. No. 13/751,203, which is a continuation-in-part of U.S. patent application Ser. No. 13/584,744. 
    
    
     TECHNICAL FIELD 
     The subject matter disclosed herein relates to image processing. In particular, the subject matter disclosed herein relates to primary and auxiliary capture devices for image processing and related methods. 
     BACKGROUND 
     Stereoscopic, or three-dimensional, imagery is based on the principle of human vision. Two separate detectors detect the same object or objects in a scene from slightly different positions and/or angles and project them onto two planes. The resulting images are transferred to a processor which combines them and gives the perception of the third dimension, i.e. depth, to a scene. 
     Many techniques of viewing stereoscopic images have been developed and include the use of colored or polarizing filters to separate the two images, temporal selection by successive transmission of images using a shutter arrangement, or physical separation of the images in the viewer and projecting them separately to each eye. In addition, display devices have been developed recently that are well-suited for displaying stereoscopic images. For example, such display devices include digital still cameras, personal computers, digital picture frames, set-top boxes, high-definition televisions (HDTVs), and the like. 
     The use of digital image capture devices, such as digital still cameras, digital camcorders (or video cameras), and phones with built-in cameras, for use in capturing digital images has become widespread and popular. Because images captured using these devices are in a digital format, the images can be easily distributed and edited. For example, the digital images can be easily distributed over networks, such as the Internet. In addition, the digital images can be edited by use of suitable software on the image capture device or a personal computer. 
     Digital images captured using conventional image capture devices are two-dimensional. It is desirable to provide methods and systems for using conventional devices for generating three-dimensional images. In addition, it is desirable to provide systems for providing improved techniques for processing images for generating three-dimensional images or two-dimensional images. 
     SUMMARY 
     This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. 
     Disclosed herein are primary and auxiliary image capture devices for image processing and related methods. According to an aspect, a method may include using primary and auxiliary image capture devices, each including an image sensor and a lens, to perform image processing. The method may include using the primary image capture device to capture a first image of a scene, the first image having a first quality characteristic. Further, the method may include using the auxiliary image capture device to capture a second image of the scene. The second image may have a second quality characteristic. The second quality characteristic may be of lower quality than the first quality characteristic. The method may also include adjusting at least one parameter of one of the captured images to create a plurality of adjusted images for one of approximating and matching the first quality characteristic. Further, the method may include utilizing the adjusted images for image processing. 
     According to another aspect, a method may include using primary and auxiliary image capture devices to generate a still image without blurring. The method may include using the primary image capture device to capture a first image of a scene. Further, the method may include using the auxiliary image capture device to capture a plurality of other images of the scene. The method may also include determining a motion blur kernel based on the plurality of other images. Further, the method may include applying the motion blur kernel to remove blur from the first image of the scene. 
     According to another aspect, a method may include using primary and auxiliary image capture devices to generate a video sequence without handshaking. The method may include using the primary image capture device to capture a first sequence of images of a scene. Further, the method may include using the auxiliary image capture device to capture a second sequence of images of the scene. The method may also include creating a disparity map. Further, the method may include determining an object having the same disparity between two successive images in the sequences. The method may also include identifying the object as a non-moving object in response to determining that the object has the same disparity. Further, the method may include calculating a shaking motion vector for the non-moving object. The method may also include compensating for shaking in one of a video and still image of the scene generated based on the images. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The foregoing summary, as well as the following detailed description of various embodiments, is better understood when read in conjunction with the appended drawings. For the purposes of illustration, there is shown in the drawings exemplary embodiments; however, the presently disclosed subject matter is not limited to the specific methods and instrumentalities disclosed. In the drawings: 
         FIG. 1  is a block diagram of an exemplary image capture system including a primary image capture device an auxiliary image capture device for use in capturing images of a scene and performing image processing according to embodiments of the presently disclosed subject matter; 
         FIG. 2  is a flow chart of an exemplary method for performing image processing using the system shown in  FIG. 1 , alone or together with any other suitable device, in accordance with embodiments of the present disclosure; 
         FIGS. 3A and 3B  are perspective views of an example video camera including a primary image capture device and an auxiliary image capture device according to embodiments of the present disclosure; 
         FIG. 4  is a perspective view of an example digital camera including a primary image capture device and an auxiliary image capture device according to embodiments of the present disclosure; 
         FIG. 5  illustrates steps in an example method for creating a stereoscopic image pair in accordance with embodiments of the present disclosure; 
         FIG. 6  is a flow chart of an exemplary method for 3D construction according to embodiments of the present disclosure; 
         FIG. 7  is a flow chart of an exemplary method for frame matching in accordance with embodiments of the present disclosure; 
         FIG. 8  is a flow chart of an exemplary method for image view matching according to embodiments of the present disclosure; 
         FIG. 9  is a flow chart of an exemplary method for color and luminance matching according to embodiments of the present disclosure; 
         FIGS. 10A and 10B  depict a flow chart of an exemplary method for generating a high-dynamic range image using primary and auxiliary image capture devices according to embodiments of the present disclosure; 
         FIG. 11  is a flow chart of an exemplary method for removing motion blur using a system having primary and auxiliary image capture devices according to embodiments of the present disclosure; 
         FIG. 12  is a flow chart of an exemplary method for video stabilization in a system having primary and auxiliary image capture devices according to embodiments of the present disclosure; 
         FIGS. 13A and 13B  are perspective views of an example mobile telephone with an auxiliary image capture device in a position to face a user and another position to face a scene together with a primary image capture device according to embodiments of the present disclosure; 
         FIG. 13C  illustrates a cross-sectional view of another example mobile telephone according to embodiments of the present disclosure; 
         FIGS. 14A ,  14 B, and  14 C are different views of another example mobile telephone with an auxiliary image capture device in a position to face a user and another position to face a scene together with a primary image capture device according to embodiments of the present disclosure; and 
         FIGS. 15A ,  15 B,  15 C, and  15 D illustrate different views of an example mobile telephone with an auxiliary image capture device in a position to face a user and another position to face a scene together with a primary image capture device according to embodiments of the present disclosure. 
     
    
    
     DETAILED DESCRIPTION 
     The presently disclosed subject matter is described with specificity to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or elements similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the term “step” may be used herein to connote different aspects of methods employed, the term should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described. 
     In accordance with embodiments of the presently disclosed subject matter, primary and auxiliary image capture devices for image processing and related methods are disclosed herein. Each of the primary and auxiliary image capture devices includes an image sensor and a lens. In an example use, the primary image capture device captures an image of a scene. The captured image may have a first quality characteristic, which may include a particular resolution, particular sensor size and/or pixel pitch, particular view angle and focal length, particular color accuracy, particular lens distortion characteristic, and the like. The auxiliary image capture device captures another image of the scene. This other captured image may have a quality characteristic that is of lower quality in at least one aspect than is the quality characteristic of the image captured by the primary image capture device. One or more parameters of one or both of the captured images may be adjusted to create multiple adjusted images for approximating or matching the quality characteristic of the image captured by the primary image capture device. For example, one or more of a cropping factor, size, focal length, and scaling of one or both of the images may be adjusted to match a resolution and/or approximate a field of view of the images. In another example, the distortion characteristics of at least one of the capture devices can be calculated and a transformative procedure can be applied to the image data captured from that device to align it with the image data from the other sensor. In another example, a color of one image can be adjusted to match or approximate a color of the other image. The adjusted images may be used for image processing. In an example use, one or more stereoscopic still images or video sequences may be generated by performing a registration or a rectification process based on the captured images and the adjusted images. In another example, data obtained from the auxiliary and primary capture devices, such as, but not limited, to disparity map, can be used to recreate a new view using data from the main capture device using a depth image based rendering technique (DIBR) to create a stereoscopic pair of images. 
     In other embodiments of the presently disclosed subject matter, primary and auxiliary capture devices may be used to calculate the proper stereo base when creating stereoscopic images by taking two pictures side-by-side. The disparity data calculated by both captured images can be used to calculate the ideal stereo base to make a stereoscopic image with comfortable viewing attributes. Under the same embodiment, the live data of the captured devices can be used to determine the proper positioning of the main capture device to take the second picture. 
     In other embodiment of the presently disclosed subject matter, the disparity map calculated using the auxiliary and main images can be scaled up or down to create a different stereoscopic representation compared to the one generated from the true separation of the two captured devices. This is particularly useful in cases where the ideal stereo base is either larger or smaller to the stereo base provided by the fixed separation of the two captured devices. 
     In other embodiment of the presently disclosed subject matter, the disparity map calculated using the primary and auxiliary images may be used to identify objects with large or infinite disparity as a result of either moving objects or objects that are too close or too far away for comfortable viewing. In such cases, objects with large disparity can be moved from one image to another image, or can be moved within the same image, or can be removed from one image or both images to correct for such large disparity. Unfilled areas resulting from the movement or removal of objects, can be filled using image data from the other image or interpolated using data from the same image. 
     In other embodiments of the presently disclosed subject matter, primary and auxiliary image capture devices may be used to generate still images without blurring. In many situations, conventional cameras are limited in their ability to capture high speed motion obtain while maintaining proper exposure. ISO gain can only increase to a certain amount without significant noise, and as such, the necessary shutter speed may be impossible to achieve. This may result in image blurring at high motion. The presently disclosed subject matter, when implemented using a high speed auxiliary camera system, provides a means of reducing and/or removing this blur. For example, a primary image capture device may be used to capture an image of a scene. An auxiliary image capture device may be used to capture multiple other images of the scene. Further, a motion blur kernel may be determined based on the multiple other images. The motion blur kernel may then be applied to remove blur from the first image of the scene. 
     In other embodiments of the presently disclosed subject matter, primary and auxiliary image capture devices may be used to generate a video sequence without handshaking. For example, a primary image capture device may be used to capture a sequence of images of a scene. An auxiliary image capture device may be used to capture another sequence of images of the scene. Next, a disparity map is generated. Further, an object having the same disparity between two successive images in the sequences may be determined. In response to determining that the object has the same disparity, the object is identified as a non-moving object. Next, a shaking motion vector for the non-moving object is calculated. The shaking in a video and/or still image of the scene generated based on the images may be compensated. 
     Stereoscopic, or three-dimensional, content is based on the principle of human vision. Two separate detectors detect the same object—or objects—in a plurality of images from slightly different angles and project them onto two planes. The plurality of images is then transferred to a processor which assigns the captured images as the one view (i.e., left or right eye), analyzes the individual images, possibly interpolates additional frames/frame views, and for each image generates a corresponding view for the other eye. Those two images or sequences are then combined to create stereoscopic (three dimensional) content. The resulting three-dimensional content can further be encoded using, but not limited, to one of the video encoding popular formats such as JPEG, MPEG, H.264, etc. The generated content can further be stored with audio to a digital media using one of popular containers such as .avi, .mpg, etc. In other embodiments of the presently disclosed subject matter, primary and auxiliary image capture devices may be used to generate a focus stacking image. The main captured device can be configured to capture an image on the desired focal distance, whereas the auxiliary sensor can be used to capture an image on a different focal distance. The data from the two captured devices can then be combined to create a focus stacking image. 
     Content captured using conventional image capture devices are often limited in their ability to reproduce the dynamic range of a scene. In certain scenes where very light and very dark objects coexist, it is impossible for typical image sensors to obtain the correct exposure across the image, and hence, impossible for the camera to reproduce what the user of the camera sees. The presently disclosed subject matter allows the two cameras in the system to properly adjust their exposure settings to capture the bright and dark areas separately to create a High-Dynamic-Range (HDR) image of the scene with balanced bright and dark areas. 
     Embodiments of the presently disclosed subject matter may be implemented on a camera or other image capture system including primary and auxiliary image capture devices. Each of the primary and auxiliary image capture devices may include an image sensor and one or more lenses. The camera may be implemented on a mobile device such as a mobile phone or smart phone. Further, embodiments of the presently disclosed subject matter may also be based on the technology that allows a user to capture a pair of two-dimensional video sequences, one from the primary image capture device of the camera and the other from the auxiliary image capture device for creating a three-dimensional video sequence. The functions disclosed herein can be implemented in hardware, software, and/or firmware that can be executed within, for example, but not limited to the proposed camera, a digital still camera, another type of video camera (or camcorder), a personal computer, a digital picture frame, a set-top box, an HDTV, a phone, or the like. 
     In an example, a portable capture device such as a cellphone, camera, or a tablet may include primary and auxiliary image capture devices according to embodiments of the present disclosure. The auxiliary image capture device may be attached to or otherwise integrated with the camera or cellphone for capturing one or more images of a scene. Data of the images captured by the auxiliary image capture device may be used together with data of one or more images captured by the primary image capture device for creating a three-dimensional image or video sequence. In an example attachment of the auxiliary image capture device, the auxiliary image capture device can be placed on a back of a rotatable LCD display housing such that when the LCD display housing is in an open position, the image plane of the auxiliary image capture device is parallel—or nearly parallel—to the image plane of the primary image capture device. On cellphones, the inwards facing camera that is primarily used for video conferencing applications, can be used as the auxiliary capture device by modifying its design and allowing it to either capture images from the person holding the cellphone or the scene with the same field of view as the main camera. The auxiliary image capture device and its lens can have a quality characteristic that is of lower quality than a quality characteristic of the primary image capture device and its lens. It is noted that the quality and the resolution of resulting three-dimensional image or video may depend directly on the quality and resolution of the primary image capture device and its lens and may not directly depend on the quality and resolution of the auxiliary image capture device and its lens. Such three-dimensional still pictures or video sequences can be viewed or displayed on a suitable stereoscopic display. 
     Method embodiments described herein can be implemented on a system capable of capturing still images or video sequences, displaying three-dimensional images or videos, and executing computer executable instructions on a processor. The device may be, for example, a digital still camera, a video camera (or camcorder), a personal computer, a digital picture frame, a set-top box, an HDTV, a phone, or the like. The functions of the device may include methods for selecting video segments, creating corresponding views for each image in the main video sequence, rectifying and registering at least two views, matching the color and edges of the views, performing stabilization of the sequence, calculating a sparse or dense depth map, synthesizing views, altering the perceived depth of objects, and any final display-specific transformation to create a single, high-quality three-dimensional video sequence. 
       FIG. 1  illustrates a block diagram of an exemplary image capture system  100  including a primary image capture device  102  and an auxiliary image capture device  104  for use in capturing images of a scene and performing image processing according to embodiments of the presently disclosed subject matter. In this example, the system  100  is a digital camera capable of capturing multiple consecutive, still digital images of a scene. The devices  102  and  104  may each capture multiple consecutive still digital image of the scene. In another example, the system  100  may be a video camera capable of capturing a video sequence including multiple still images of a scene. In this example, the devices  102  and  104  may each capture a video sequence including multiple still images of the scene. A user of the system  100  may position the system in different positions for capturing images of different perspective views of a scene. The captured images may be suitably stored and processed for generating three-dimensional images as described herein. For example, subsequent to capturing the images of the different perspective views of the scene, the system  100 , alone or in combination with a computer such as computer  106 , may use the images for generating a three-dimensional image of the scene and for displaying the three-dimensional image to the user. 
     Referring to  FIG. 1 , the primary and auxiliary image capture devices  102  and  104  may include image sensors  108  and  110 , respectively. The image sensor  110  may be of a lesser quality than the image sensor  108 . For example, the quality characteristics of images captured by use of the image sensor  110  may be of lower quality than the quality characteristics of images captured by use of the image sensor  108 . The image sensors  108  and  110  may each include an array of charge coupled device (CCD) or CMOS sensors. The image sensors  108  and  110  may be exposed to a scene through lenses  112  and  114 , respectively, and a respective exposure control mechanism. The lens  114  may be of lesser quality that the lens  112 . The system  100  may also include analog and digital circuitry such as, but not limited to, a memory  116  for storing program instruction sequences that control the system  100 , together with at least one CPU  118 , in accordance with embodiments of the presently disclosed subject matter. The CPU  118  executes the program instruction sequences so as to cause the system  100  to expose the image sensors  108  and  110  to a scene and derive digital images corresponding to the scene. The digital image may be captured and stored in the memory  116 . All or a portion of the memory  116  may be removable, so as to facilitate transfer of the digital image to other devices such as the computer  106 . Further, the system  100  may be provided with an input/output (I/O) interface  120  so as to facilitate transfer of digital image even if the memory  116  is not removable. The system  100  may also include a display  122  controllable by the CPU  118  and operable to display the captured images in real-time for real-time viewing by a user. 
     The memory  116  and the CPU  118  may be operable together to implement an image processor  124  for performing image processing including generation of three-dimensional images in accordance with embodiments of the presently disclosed subject matter. The image processor  124  may control the primary image capture device  102  and the auxiliary image capture device  104  for capturing images of a scene. Further, the image processor  124  may further process the images and generate three-dimensional images as described herein.  FIG. 2  illustrates a flow chart of an exemplary method for performing image processing using the system  100 , alone or together with any other suitable device, in accordance with embodiments of the present disclosure. Referring to  FIG. 2 , the method includes using  200  a primary image capture device to capture a first image of a scene. For example, the image processor  124  shown in  FIG. 1  may control the primary image capture device  102  to capture an image of a scene. The captured image may have a particular quality characteristic, which may include a particular resolution, particular sensor size and/or pixel pitch, particular view angle and focal length, particular color accuracy, particular lens distortion characteristic, and the like. The captured image may be one of multiple images captured by the primary image capture device  102 . The different images can include images of the same or different perspective views of the scene. The CPU  106  may then implement instructions stored in the memory  104  for storing the captured images in the memory  104 . 
     The method of  FIG. 2  includes using  202  an auxiliary image capture device to capture another image of the scene. For example, the image processor  124  shown in  FIG. 1  may control the auxiliary image capture device  104  to capture an image of a scene. The image captured by the auxiliary image capture device  104  may have a particular quality characteristic that is of lower quality than the quality characteristic of the image captured by the primary image capture device  102 . 
     The method of  FIG. 2  includes adjusting  204  one or more parameters of one or both of the captured images to create a multiple, adjusted images for approximating or matching a quality characteristic of the image captured by the primary image capture device  102 . For example, the image processor  124  may adjust a cropping factor, size, scaling, the like, or combinations thereof of one or both of the images captured by the primary image capture device  102  and the auxiliary image capture device  104  such that a resolution of the captured images are matched. In another example, the image processor  124  may adjusting a cropping factor, size, scaling, the like, or combinations thereof of one or both of the images captured by the primary image capture device  102  and the auxiliary image capture device  104  such that a field of view of other captured images is approximated. In another example, the image processor  124  may adjust a color of one image to match or approximate a color of the other image. 
     The method of  FIG. 2  includes utilizing  206  the adjusted images for image processing. The image processing functions may include any of registration, rectification, disparity calculation, stereo-base calculations, or depth-based rendering to generate stereoscopic images or video sequences, High-Dynamic-Range techniques to balance dark and bright areas or the scene, anti-blurring techniques to remove motion blurring, video stabilization techniques, and focus stacking functions. 
       FIGS. 3A and 3B  illustrates perspective views of an example video camera  300  including a primary image capture device and an auxiliary image capture device according to embodiments of the present disclosure. The video camera  300  includes a rotatable component  302  that can be positioned in a closed position as shown in  FIG. 3A  or an open position as shown in  FIG. 3B . A user can manually rotate the component  302  along a hinge  304  for positioning the component  302  in either the open or closed positions. In this example, the component  304  includes an LCD display (not shown because it is located on an opposing side of the component  304 ). In the open position, the LCD display can be viewed by the user. On a facing side  306  of the component  304  (i.e., a side opposing the LCD display), the auxiliary image capture device  308  is positioned for capture of images in accordance with embodiments of the present disclosure. 
     In this example, a main body  310  of the video camera  300  includes the primary image capture device. The primary image capture device  312  may be positioned on a front portion of the main body  310 . The captured devices  308  and  312  may be positioned such that the image planes of the primary and auxiliary image capture devices are parallel or nearly parallel to one another. A micro-switch or a magnetic switch can be placed between the rotatable portion  306  and the body  310  to inform the user when the portion  306  has reached the proper position for capturing 3D videos or other applications in accordance with embodiments of the present disclosure. This information can be displayed on the LCD screen, or by any other suitable technique such as turning on an indicator light such as an LED. 
       FIG. 4  illustrates a perspective view of an example digital camera  400  including a primary image capture device and an auxiliary image capture device according to embodiments of the present disclosure. Referring to  FIG. 4 , the camera  400  includes a main body  402  having a primary image capture device  404  and an auxiliary image capture device  406 . Capture devices  404  and  406  may be located at any suitable position on the body  402 . 
     In an embodiment, the resolution and the frame rate of the auxiliary image capture device may be the same as or equal to the resolution and the frame rate of the primary image capture device. In situations in which the frame rates of the sensors are different, piece-wise constant, linear, or other suitable techniques of interpolation between frames can be used to compensate for missing frames in a video sequence captured by the auxiliary image capture device. This may apply to both cases in which output of the auxiliary image capture device is a video stream, or a set of consecutive image captures at constant or variable frame rates. 
     In addition, the quality and focal length of the lens of the auxiliary image capture device, and its zooming capabilities if applicable, may be equal to those of the lens of the primary image capture device. There are however limitations on the optics relationship of the main and auxiliary cameras. At the shortest focal length of the main cameras zoom lens, the auxiliary camera may have the same angle of view, hence necessitating an equivalent focal length of the auxiliary camera equal to the widest focal length of the main zoom. Similarly, however, there are practical limits to the amount of digital zoom that can be accomplished while still being able to reasonably match data between the cameras, likely limiting the longest zoom focal length to somewhere between 4× and 8× the shortest focal length, although this is not a specific limitation of the design described herein. In cases in which the primary lens has zooming capabilities but the auxiliary lens does not, the image sensor of the auxiliary image capture device may have higher resolution than the image sensor of the primary image capture device. This greater resolution may allow for more accurate “digital zooming,” the process of which is discussed in further detail herein below. It is noted that the optimal quality specifications for the sensors of the primary and auxiliary image capture devices should not be considered absolute requirements. In other words, the presently disclosed subject matter is not limited to the systems with optimal specifications described herein above. 
     In accordance with embodiments of the present disclosure, the distance between the sensors of the primary and auxiliary image capture devices and the angle between the two sensor planes can be constant or adaptive. In the latter case, the auxiliary sensor and lens may be attached to, for example, a sliding mechanism inside a rotatable portion, such as, the portion  302  shown in  FIGS. 3A and 3B . The position and angle of the auxiliary sensor and lens can be, for example, controlled by a user, manually by a stepper-motor, or automatically based on computer control that determines a suitable distance between the auxiliary sensor and the primary sensor depending on a scene being captured. 
       FIG. 5  illustrates steps in an example method for creating a stereoscopic image pair in accordance with embodiments of the present disclosure. In an example embodiment, the stereoscopic image pair may be created by modifying an image or video sequence captured using an auxiliary image capture device directly (as indicated by dashed lines in  FIG. 5 ). This example technique may be best suited to high-quality auxiliary image capture devices and is applicable to both video and still applications. 
     In another example embodiment, a method may apply depth-based image synthesis processes on a plurality of image frames comprising a video sequence, as by the specific configuration of the hardware described herein. While matching lens/sensor optics combinations for the primary and auxiliary image capture devices may be utilized, in application, this is may be infeasible, owing to the zoom requirements of the main camera and the space limitations for the auxiliary. In such a scenario, if video capture is required, this methodology is most suitable. In the example of  FIG. 5 , the stereoscopic image pair may be created by modifying an image or video sequence captured using an auxiliary image capture device indirectly using a depth map and view synthesis (as indicated by solid lines in  FIG. 5 ). 
     Referring to  FIG. 5 , in a process using the auxiliary image capture device directly, a primary image capture device may capture a video sequence  500 . In addition, the auxiliary image capture device may capture a video sequence  502 . The video sequences  500  and  502  may be captured of the same scene at approximately the same time. The images of the video sequence  500  may be directly used without modification for creating a three-dimensional video sequence  504  along with adjusted images captured by the auxiliary image capture device. In a first example step of adjusting the images captured by the auxiliary image capture device, the images may be frame interpolated  506 . In a subsequent, example step, a resolution of the images may be adjusted such as by, for example, digital zoom  508 . In another subsequent, example step, a color and/or luminance of the images may be adjusted  510 . In direct 3D construction, the images may be suitable combined with the images captured by the primary image capture device to result in the three-dimensional video sequence  504 . 
     In the example of creating the stereoscopic image pair by use of a depth map and view synthesis (as indicated by solid lines in  FIG. 5 ), a depth map may be calculated by use of the images captured by the primary image capture device and the adjusted images of the auxiliary image capture device  512 . 
     Finally, in accordance with another embodiment, possibly best suited to still image capture and/or a low quality auxiliary camera system, the image data from the auxiliary camera can be used to correlate to the primary camera, extract minimum and maximum disparities to identify near and far focus windows, and apply this data to calculate an optimal stereo baseline for the scene. The user can then be instructed in any number of ways to move to a proper offset for a second image capture to complete a stereo pair. 
       FIG. 6  illustrates a flow chart of an exemplary method for 3D construction according to embodiments of the present disclosure. The steps of  FIG. 6  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 6 , the method may be applied sequentially for each frame from a main video sequence or image set (step  600 ). The main video sequence or image set may be captured by a primary image capture device. Next, the method includes determining  602  whether the main and auxiliary images or frames are synched. It may be important to make sure that each frame from the auxiliary sequence corresponds to one and only one frame from the main sequence; therefore, if it is known that the frame rate for the auxiliary camera is different than the frame rate of the main camera, a between-frame interpolation method can be used to achieve this objective. Since the optics of the two cameras are likely incongruent, it is necessary to first configure their outputs so that 3D registration, and hence depth extraction, can be performed for a given image pair. Therefore, in response to determining that the main and auxiliary images or frames are synched, the method may proceed to step  604 . Conversely, in response to determining that the main and auxiliary images or frames are not synched, the method may proceed to step  606 . It is noted that in case the synchronization information between the two cameras is already available, such as absolute or relative timestamps, or synchronization frames in both cameras along with known frame rates, the order in which the synchronization and image modification processes described below take place can be reversed. That is, first matching frames could be selected and then the view modification and color/luminance adjustments could be applied. An example of this technique is described in the example of  FIG. 6 . 
     At step  604 , the method includes finding a matching image or frame from the auxiliary video sequence or image set. In an example, images or frames may be matched based on a time of capture. Other examples of matching images or frames are described in further detail herein. 
     Subsequent to step  604 , the method may include adjusting  608  a size, resolution, and zoom level of the auxiliary frame to match the corresponding main frame. For example, one or more of a cropping factor, size, and scaling of a captured image may be adjusted to match a resolution and approximate a field of view of a corresponding image. Other examples described in further detail herein. 
     Subsequent to step  608 , the method may include adjusting  610  color and/or luminance of the auxiliary frame to match the corresponding main frame. For example, the color in an area of an auxiliary image may be adjusted to match the color in a corresponding area of the corresponding primary image. In another example, regions of an overlapping field of view of the image capture devices may be identified. In this example, the color properties of the regions may be extracted. Next, in this example, color matching and correction operations may be performed to equalize the images. An exemplary method for this purpose involves leveling of each of the R, G, and B channels in the auxiliary frame such that the mean of the pixel colors equates to the mean of pixel colors in the main frame. This method is more suitable if it is believed that the auxiliary frame can be directly used to create a stereoscopic pair of images along with the main frame. Alternatively, RGB values of all pixels in both frames could be adjusted so that their corresponding mean values would be neutral grey ([128,128,128]). This is not necessarily the appropriate color “correction” for either camera, but rather, a means of equating the camera outputs to make feature matching more accurate. This may be done globally, or within local windows across the images to increase the accuracy of the correction. Other examples described in further detail herein. 
     Now referring to step  606 , the method may include adjusting  612  color and/or luminance of a number N frames of the auxiliary sequence to match frames in the vicinity of a main frame. An example of this step is described in further detail herein. Subsequently, the method may include adjusting  614  color and/or luminance of the auxiliary frame to match the corresponding main frame. Additionally, if this should be performed before attempting to synchronize the two cameras, the averaging is further extended to measure and correct for the mean over a windowed number of frames, N. Subsequently, the method may include finding  614  a matching image or frame from the auxiliary video sequence or image set. Concurrent with these digital zoom and windowed color equalization operations, the actual process of synchronization may be performed. The same N windowed data used for color equalization can be used to recognize pixel patterns and movements within the frames from the individual cameras, particularly tailored to the likely overlap region of the cameras, the specifics of which may be dictated by the camera optics and the known separation (stereo base) of the cameras as physically defined by the camera design. If any image stabilization mechanism is used for the main camera, ideally either the information about such mechanism should be available at this time to be used on the auxiliary video sequence, or the same mechanism must be used on the auxiliary camera as well with precise synchronization between the two cameras. 
     The method of  FIG. 6  may include determining  616  whether the auxiliary frame is acceptable to be used directly. Criteria of acceptability for direct use may include the comparative effective resolution of the two sensors (which will depend both on the absolute resolution, and the scaling change necessary due to any difference in angle of view between the optics/camera combinations of the primary and auxiliary camera), the amount and degree of uncorrectable color differential between the two images, any difference in the noise profiles of the two cameras, and the amount and degree of uncorrectable distortion, as examples. In response to determining that the auxiliary frame is acceptable, the method may proceed to step  618  where the auxiliary frame is used as the complementary frame. 
     Conversely, in response to determining that the auxiliary frame is unacceptable, the method may proceed to step  620  where a disparity map is created. For example, a disparity map may be generated for a horizontal positional offset of pixels of one or more images, such as stereoscopic still images. The method may include creating  622  a depth map. For example, the disparity map may be used to generate the depth map for a scene as described in further detail herein. The complementary view may then be synthesized  624  for the main frame. 
     Subsequent to steps  618  and  624 , the method may include displaying and/or saving  626  the 3D frame, which may include the main frame and the adjusted auxiliary frame. At step  628 , the method includes determining whether there are additional frames or images to process. In response to determining that there are additional frames or images, the method may proceed to step  600  for processing the next frames. Otherwise, the method may end at step  630 . 
       FIG. 7  illustrates a flow chart of an exemplary method for frame matching in accordance with embodiments of the present disclosure. This method may be an example of steps  604  or  614  of the method of  FIG. 6 . The steps of  FIG. 7  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 7 , the method may begin at step  700 . 
     Subsequently, the method of  FIG. 7  may include determining  700  whether an exact matching frame can be found. For example, it may be determined whether an auxiliary frame matching a main frame can be found. For example, the auxiliary frame and main frame may have the same timestamp. In response to determining that the exact matching frame can be found, the matching frame may be selected from the auxiliary sequence (step  704 ), and the method ends (step  706 ). 
     In response to determining that the exact matching frame cannot be found, the process may proceed to step  708 . At step  708 , the method includes determining whether timestamps are available for both frames. In response to determining that timestamps are available for both frames, the method may include using between frame interpolation to synthesize a matching frame (step  710 ). When timestamps are available, there is a known offset between auxiliary and main captured devices. A weighted average technique based on the offset of the main and auxiliary captured devices can be used to synthesize the desired frame using image date from the previous and next frame in the target video sequence. More advanced techniques can use motion estimation techniques to estimate motion of moving objects and compensate for this factor as well. 
     In response to determining that timestamps are unavailable for both frames, the method includes determining  712  whether a scene in the video sequence can be used to synchronize frames. This step involves frame matching techniques where features are extracted from both main and auxiliary capture devices. The features of one frame in one sequence are compared with the features in a number of frames on the other sequence that are in the vicinity of the first sequence. In response to determining that the scene in the video sequence cannot be used to synchronize frames, it is determined that exact 3D construction is not possible (step  714 ) and the method ends (step  706 ). 
     In response to determining that the scene in the video sequence can be used to synchronize frames, the method may include adjusting  716  a color and/or view of the images, synchronizing  718  two sequences, and creating  720  timestamps indicating the offset between frames in auxiliary and main capture devices. The method may then proceed to step  702  for processing the next main frame. 
       FIG. 8  illustrates a flow chart of an exemplary method for image view matching according to embodiments of the present disclosure. This method may be an example of steps  606  or  608  of the method of  FIG. 6 . The steps of  FIG. 8  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 8 , the method may begin at step  800 . 
     Subsequently, the method includes determining  802  whether focal length information is available. In response to determining that focal length information is available, the method may include calculating  804  the matching view window on the auxiliary image. In response to determining that focal length information is unavailable, the method may include finding  806  the corresponding view on the auxiliary image using registration. This may be accomplished using a variety of methods including identification and matching of key points, block matching on the boundaries, as well as other less sophisticated methods that look at various statistics on the images, or combination of any other examples described herein. 
     The method of  FIG. 8  also include cropping  808  the auxiliary image to match the field of view of the main image. The cropped auxiliary frame may be enlarged or reduced to match the size of the main frame (step  810 ). Subsequently, the method may end (step  812 ). 
       FIG. 9  illustrates a flow chart of an exemplary method for color and luminance matching according to embodiments of the present disclosure. This method may be an example of steps  610  or  612  of the method of  FIG. 6 . The steps of  FIG. 9  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 9 , the method may begin at step  900 . 
     At step  902 , the method may include determining whether color calibration information is available by the primary or auxiliary image capture devices. In response to determining that such color calibration information is available, the method may include matching  904  the auxiliary frame&#39;s color and/or luminance to the main frame based on the calibration information. Subsequently, the method may end (step  906 ). 
     In response to determining that color calibration information is unavailable, the method may proceed to step  908  where it is determined whether the frames will be used for direct or indirect 3D construction. In response to determining that the frames will be used for direct 3D construction, the method may proceed to step  910  as described herein below. In response to determining that the frames will be used for indirect 3D construction, the method may proceed to step  912  wherein it is determined whether registration/feature detection is needed. In response to determining that detection is needed, the method includes matching  914  color or luminance information of both frames to a reference. In response to determining that detection is not needed the method may implement step  914  and step  910  wherein color information of the auxiliary frame is matched to the main frame. Subsequently, the method may end (step  906 ). 
     At this point, the system should have available, from each camera, image pairs that are believed with some high confidence to be color equivalent, synchronized, and representing equivalent views. In an embodiment, using auxiliary data directly, captured pairs may then be sent to still image or video compression for creation of stereo 3D. Otherwise, extraction of pixel disparities then follows, for the purpose of converting disparity to depth. Any number of processes for disparity extraction may be utilized. Disparity, and in turn depth measures (as dictated by the equation, depth=baseline*focal length/disparity) must be measured with the specifics of the primary camera optics in mind, which is to say, the focal length of that cameras lens and the pixel pitch of that cameras sensor. For another embodiment of stereo creation, depths are then compared to find windows of minimum and maximum depth, the information of which can be fed to a process that calculates an appropriate stereo base and directs the user on how to take a second capture to create the desired stereo pair. 
     Implementing an embodiment of 3D creation, for a given image frame in the video sequence, having the raster data and the approximated depth map, a corresponding image view (or views) may be synthesized. Any suitable technique for depth-based image view synthesis may be utilized, although the preferred embodiment herein is the conversion of depth information to a Z-axis measure in pixels, followed by angular rotation of the raster data about the Y-axis. In this embodiment, the depth profile of the initial image pair of a video sequence should be analyzed to determine the positioning of the viewer screen plane, such that some percentage of pixels may fall in front or behind, and such that the rotation occurs about the central point (0,0,0) that represents the center of the 2D image at a depth equal to the chosen distance of the screen plane. This methodology affords one the ability to choose the perceived depth of the frame pairs (using a larger rotation angle to create a sense of larger stereo baseline, or vice-versa), possibly with input from the autofocus mechanism of the camera as to the approximate focus distance of the objects in frame (short distances dictate a targeted smaller stereo base, and longer distances, the opposite). One image may be synthesized, using the initial raster data as the other of a pair, or alternatively, two images may be synthesized with opposite rotations to generate left and right images. It is noted that the screen plane and angular rotation chosen for the first image of a sequence cannot be altered after the fact. 
     Creation of the final 3D video sequence involves video encoding of the individual frame sequences in a manner consistent with 3D video representation. Any suitable technique may be utilized. 
       FIGS. 10A and 10B  depict a flow chart of an exemplary method for generating a high-dynamic range image using primary and auxiliary image capture devices according to embodiments of the present disclosure. The steps of  FIGS. 10A and 10B  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIGS. 10A and 10B , the method may begin at step  1000  wherein a system having primary and auxiliary image capture devices according to embodiments of the present disclosure may enter a live view mode for displaying images to a user. 
     The method of  FIGS. 10A and 10B  includes analyzing  1002  to determine bright and dark areas of the scene. Further, the method may include determining  1004  light conditions of one or more focus objects or objects of interest. Subsequently, the method may include setting  1006  capture characteristics of the primary image capture device for optimal exposure of the focus object. 
     The method of  FIGS. 10A and 10B  also include determining  1008  the exposure condition of remaining objects in the scene. In response to determining that the objects have the same exposure, the method may end (step  1010 ). In response to determining there is overexposure, the method may include decreasing  1012  sensitivity of the auxiliary image capture device to bring overexposed areas to ideal exposure conditions. In response to determining there is underexposure, the method may include increasing  1014  sensitivity of the auxiliary image capture device to bring overexposed areas to ideal exposure conditions. 
     Subsequently, the method includes capturing  1016  images by firing simultaneously the primary and auxiliary image capture devices. Next, the method may include performing  1018  image view matching of the image captured by the auxiliary image capture device. For example, the method described with respect to  FIG. 8  may be implemented. Next, the method may include performing color and/or luminance matching of the image captured by the auxiliary image capture device. For example, the method described with respect to  FIG. 9  may be implemented. The method may then include composing  1022  a final image by performing suitable transformations between the image captured by the primary image capture device and the calibrated and equalized data of the auxiliary image capture device to compensate for underexposed or overexposed areas in images captured by the primary image capture device. The method may then end (step  1024 ). 
     System and method embodiments for blur correction are disclosed herein. In an example, image blurring may result at high motion. The auxiliary image capture device may be used to correct image blurring as follows: given a high resolution low speed main camera (MC) and a low resolution high speed second camera (SC), image blurring can be reduced by estimation motion flow in SC and use this information to recover the blur kernel in MC. The blur kernel is then used to remove blurring from the MC images. 
       FIG. 11  illustrates a flow chart of an exemplary method for removing motion blur using a system having primary and auxiliary image capture devices according to embodiments of the present disclosure. The steps of  FIG. 11  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 11 , the method may begin at step  1100  wherein a system having primary and auxiliary image capture devices according to embodiments of the present disclosure may enter a motion de-blurring mode. 
     The method of  FIG. 11  includes capturing  1102  high-speed images by use of the auxiliary image capture device. Further, the method may include focusing and capturing  1104  a primary image using a primary image capture device. The last N number of image captured by the auxiliary image capture device may be used to calculate the motion blur kernel (step  1106 ). Subsequently, the method may include applying  1108  the motion blur kernel extracted from an auxiliary imager to remove blur. The method may then end (step  1110 ). 
     In accordance with embodiments disclosed herein, video stabilization may be provided. For example,  FIG. 12  illustrates a flow chart of an exemplary method for video stabilization in a system having primary and auxiliary image capture devices according to embodiments of the present disclosure. The steps of  FIG. 12  may be implemented by suitable hardware, software, and/or firmware. For example, the steps may be implemented by the image processor  124  shown in  FIG. 1 . Referring to  FIG. 12 , the method may begin at step  1200  wherein a system having primary and auxiliary image capture devices according to embodiments of the present disclosure may enter a video stabilization mode. In this mode, the primary and auxiliary image capture devices may capture sequences of images of a scene (step  1202 ) and equalize and calibrate the images in the video sequences (step  1204 ). 
     The method of  FIG. 12  includes assisting  1210  in video and/or still image stabilization by adding an element to the calculations when compensating  1212  for camera shake. Typical image stabilization algorithms rely on the evaluation and analysis of temporal displacement between frames (of video or other camera capture data), and are subject to error introduced to the calculations by objects moving in the scene. Utilizing the auxiliary camera, offset between the two camera views for a single temporal instance (frame) can be calculated as an additive “structural” component for this process. Changes in this “structural” offset between temporally correlated blocks/regions of the image is indicative of moving objects in these location that may then be excluded from overall stabilization calculations. The method may then end (step  1214 ). Next, the method includes creating  1206  a disparity map. The method also includes determining  1208  that objects in the images with different disparity between two successive frames are moving objects, whereas objects with the same disparity are non-moving objects and the only movement in this case is due to shaking. 
     The method of  FIG. 12  includes calculating  1210  shaking motion vectors. Further, the method includes compensating  1212  for shaking. Shaking motion vectors can be obtained by performing motion compensation analysis between the captured frames, removing motion vectors of moving objects, and using the remaining motion vectors to calculate the shaking vectors. The method may then end (step  1214 ). 
     In accordance with embodiments of the present disclosure, the primary and auxiliary image capture devices may be components of a mobile telephone. The auxiliary image capture device may be configured to face in a first position towards a user and to face in a second position towards a scene to be image captured. The auxiliary image capture device may include a mechanism for directing a path of light from the scene towards the auxiliary image capture device such that the primary image capture device and the auxiliary image capture device can capture images of the scene.  FIGS. 13A and 13B  illustrate perspective views of an example mobile telephone  1300  with an auxiliary image capture device  1302  in a position to face a user and another position to face a scene together with a primary image capture device  1304  according to embodiments of the present disclosure. 
     Referring to  FIG. 13A , the auxiliary image capture device  1302  and its mirror mechanism  1306  may be positioned within the telephone  1300 . The mirror mechanism  1306  may be mechanically or electronically rotated or otherwise moved to a position for directing light passing through an opening (not shown) toward the device  1302  for capturing an image of a user, for example. In another position shown in  FIG. 13B , the mirror mechanism  1306  may be mechanically rotated or otherwise moved to a position for directing light passing through an opening  1308  toward the device  1302  for capturing an image of a scene together with the device  1304 . 
       FIG. 13C  illustrates a cross-sectional view of another example mobile telephone according to embodiments of the present disclosure. Referring to  FIG. 13C , the mirror can be replaced with two fixed light paths  1320  and  1322  that can be constructed using a fiber optic material. One path  1320  collecting the light from the scene and directing in one position  1324  and the other one  1322  collecting the light from the inwards field of view and directing it in a different location  1326 . By then moving the sensor  1330  using a slide  1332  or any other manual or electronically controlled mechanism to either  1324  or  1326  positions, capturing of the proper images according to the function of the phone is accomplished. 
       FIGS. 14A ,  14 B, and  14 C illustrate different views of an example mobile telephone  1400  with an auxiliary image capture device  1402  in a position to face a user and another position to face a scene together with a primary image capture device  1404  according to embodiments of the present disclosure. In this example, the auxiliary image capture device  1402  may be rotated along a vertical or a horizontal axis to a position shown in  FIG. 14A  for capturing an image of a user. The device  1402  may be rotated to a position shown in  FIG. 14C  for capturing an image of a scene together with the device  1404 . 
       FIGS. 15A ,  15 B,  15 C, and  15 D illustrate different views of an example mobile telephone  1500  with an auxiliary image capture device  1502  in a position to face a user and another position to face a scene together with a primary image capture device  1504  according to embodiments of the present disclosure. In this example, the device  1502  is detachable from the body of the telephone  1500  for positioning on a front side or a rear side of the telephone  1500 . The device  1502  may be attached to a front side of the telephone  1500  for capturing images of the user as shown in  FIGS. 15B and 15C . The device  1502  may be attached to a rear side of the telephone  1500  for capturing images of a scene together with the device  1504  as shown in  FIGS. 15A and 15D . 
     The various techniques described herein may be implemented with hardware or software or, where appropriate, with a combination of both. Thus, the methods and apparatus of the disclosed embodiments, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the presently disclosed subject matter. In the case of program code execution on programmable computers, the computer will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device and at least one output device. One or more programs are preferably implemented in a high level procedural or object oriented programming language to communicate with a computer system. However, the program(s) can be implemented in assembly or machine language, if desired. In any case, the language may be a compiled or interpreted language, and combined with hardware implementations. 
     The described methods and apparatus may also be embodied in the form of program code that is transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via any other form of transmission, wherein, when the program code is received and loaded into and executed by a machine, such as an EPROM, a gate array, a programmable logic device (PLD), a client computer, a video recorder or the like, the machine becomes an apparatus for practicing the presently disclosed subject matter. When implemented on a general-purpose processor, the program code combines with the processor to provide a unique apparatus that operates to perform the processing of the presently disclosed subject matter. 
     While the embodiments have been described in connection with the preferred embodiments of the various figures, it is to be understood that other similar embodiments may be used or modifications and additions may be made to the described embodiment for performing the same function without deviating therefrom. Therefore, the disclosed embodiments should not be limited to any single embodiment, but rather should be construed in breadth and scope in accordance with the appended claims.