The present disclosure relates to a method used in an image processing, and more particularly, to a method of adaptive image stitching and a related device.
In order to get wide field of view (FOV), fisheye camera is applied for 180° panoramic viewing. However, an image captured by the fisheye camera may have lower pixel utilization ratio in region of interest (ROI) and the objects in the outer area of the captured image may suffer severe distortion. Besides, fisheye camera is more expensive than cameras with normal lens (i.e. FOV is 120°).
In addition, image stitching operation is introduced for combining multiple images with overlapping fields of view captured from multiple cameras with normal lens, for getting wider FOV and higher resolution image. In detail, image stitching operation involves stitching radius calculated according to an object depth of the images. However, the applicant notices that conventional image stitching operation may result in ghost problem or unseen problem. Reference is made to
As can be seen, conventional solutions for getting wide FOV have disadvantages, such as abovementioned ghost problem, unseen problem, lens distortion and parallax problem, which may reduce reliability of the image processing system.
It is therefore an objective to provide a method of adaptive image stitching to solve the above problems.
The present disclosure provides a method of adaptive image stitching for an image stitching device. The method comprises receiving two images respectively captured by two cameras in different angle of views, from the two cameras, performing image motion estimation on an overlapping region of the two images, for obtaining correspondence between the two images with a plurality of motion vectors for indicating a geometry relation between the two images, performing dominant vector calculation according to the plurality of motion vectors of the image motion estimation, for obtaining a dominant motion vector in region of interest of the overlapping region, and stitching the two images into a single seamless image with a stitching radius calculated according to the dominant motion vector.
The present disclosure provides an image stitching device for adaptive image stitching. The image stitching device comprises an image receiving module, for receiving two images respectively captured by two cameras in different angle of views, from the two cameras, a correspondence matching module, coupled to the image receiving module, for obtaining correspondence between two images with a plurality of motion vectors for indicating a geometry relation between the two images in an overlapping region, a dominant vector calculating module, coupled to the correspondence matching module, for calculating a dominant motion vector in region of interest (ROI) of the overlapping region according to the plurality of motion vectors, and a stitching module, coupled to the dominant vector calculating module, for stitching the two images into a single seamless image with a stitching radius calculated according to the dominant motion vector.
The present disclosure provides an image processing system for adaptive image stitching. The image processing system comprises a plurality of cameras, for capturing images in different angle of views, and an image stitching device, connecting to the cameras for performing an image stitching operation, wherein the image stitching device includes a processing means for executing a program, and a storage unit coupled to the processing means for storing the program, wherein the program instructs the processing means to perform the following steps receiving two images respectively captured by two cameras in different angle of views, from the two cameras, performing image motion estimation on an overlapping region of the two images, to obtain correspondence between two images with a plurality of motion vectors for indicating a geometry relation between the two images, performing dominant vector calculation according to the plurality of motion vectors of the image motion estimation, for obtaining a dominant motion vector in region of interest (ROI) of the overlapping region, and stitching the two images into a single seamless image with a stitching radius calculated according to the dominant motion vector.
These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
Please refer to
Please refer to
Step 410: Receive two images respectively captured by the two cameras in different angle of views.
Step 420: Perform image motion estimation on an overlapping region of the two images, for obtaining correspondence between the two images with a plurality of motion vectors, wherein the plurality of motion vectors are used for indicating a geometry relation between the two images.
Step 430: Perform dominant vector calculation according to the plurality of motion vectors of the image motion estimation, for obtaining a dominant motion vector in ROI of the overlapping region.
Step 440: Stitch the two images into a panoramic image with a stitching radius calculated according to the dominant motion vector.
According to the process 40, the cameras C1 and C2 of the image processing system performs image acquisition to obtain images with overlap, and then transmits the images to the image stitching device 20 for image stitching operation. On the other hand, the image stitching device 20 performs image motion estimation on the overlapping region of the two images, to obtain motion vectors (e.g. horizontal or vertical translations), and then performs dominant vector calculation according to the obtained motion vectors, for extracting the most dominant motion vector in ROI of the overlapping region, so as to increase the reliability of the correspondence between the images. Finally, the image stitching device 20 stitches the images with the stitching radius in accordance with the most dominant motion vector, so as to generate a panoramic image.
Reference is made to
In addition, referring to
After obtaining the optical flow vectors, as shown in
For enhancement of image stitching quality, the image stitching device 20 may perform a spatial-temporal refinement to update the dominant flow vector in a time domain. In other words, the dominant flow vector is optimized with consideration of visual continuity for the user. In detail, the spatial-temporal refinement provides functionality of predicting at stitching direction/speed change, smoothing and denoising on the stitching radius while stitching the images A1 and A2, for getting adaptive dominant flow vector. Consequently, stitching radius is dynamically changed according to the dominant flow vector, so as to realize image stitching operation in real-time.
The abovementioned steps of the processes/operations including suggested steps can be realized by means that could be a hardware, a firmware known as a combination of a hardware device and computer instructions and data that reside as read-only software on the hardware device or an electronic system. Examples of hardware can include analog, digital and mixed circuits known as microcircuit, microchip, or silicon chip. Examples of the electronic system can include a system on chip (SOC), system in package (SiP), a computer on module (COM) and the image stitching device 20.
In conclusion, the present invention provides an image stitching operation, which is able to get an accurate stitching radius for stitching images, so as to avoid unseen and ghost problems. In addition, with adaptive stitching radius of the present invention, a real-time image stitching operation is implemented.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.