This application claims the benefit of Taiwan application Serial No. 104122716, filed Jul. 14, 2015, the disclosure of which is incorporated by reference herein in its entirety.
The disclosure relates in general to an image processing method, an image processing device and a display system.
Along with the development of multi-media technology, the application of digital image and digital video is getting more and more poplar, and various needs in the application of panoramic image, such as the needs for video conferencing and security surveillance, also arise.
Conventionally, the construction of a panoramic image is implemented by stitching a series of images shot by a user at different angles. During the process of generating the panoramic image, the computing device combines images according to the similarities between the images. Since such method consumes a large amount of computing resources and is normally implemented in an off-line manner, the panoramic image cannot be instantly displayed for the user to browse.
Therefore, how to provide a display technology capable of instantly displaying the panoramic image has become a prominent task for the industries.
The disclosure is directed to an image processing method, an image processing device and a display system for the user to view the panoramic image instantly.
According to one embodiment, an image processing device including an image obtaining circuit, a storage module and an image processing module is provided. The image obtaining circuit is for receiving a first fisheye image and a second fisheye image. The storage module is for storing a fisheye lens information. The image processing module is coupled to the image obtaining circuit and the storage module for generating a first converted image and a second converted image by converting the first and second fisheye images with panoramic coordinate conversion according to the fisheye lens information and stitching the first and second converted images to generate a panoramic image.
According to another embodiment, an image processing method is provided. The method includes following steps: receiving a first fisheye image and a second fisheye image; generating a first converted image and a second converted image by converting the first and second fisheye images with panoramic coordinate conversion according to the fisheye lens information; and stitching the first and second converted images to generate a panoramic image.
According to an alternative embodiment, a display system including an image capturing device and an image processing device is provided. The image capturing device includes a first fisheye lens module, a second fisheye lens module and a transmission circuit. The first fisheye lens module is for capturing a first fisheye image. The second fisheye lens module is for capturing a second fisheye image. The transmission circuit is for outputting the first and second fisheye images in the form of streams. The image processing device includes an image obtaining circuit, a storage module and an image processing module. The image obtaining circuit is for receiving the first and second fisheye images from the image capturing device. The storage module is for storing a fisheye lens information. The image processing module is coupled to the image obtaining circuit and the storage module for generating a first converted image and a second converted image by converting the first and second fisheye images with panoramic coordinate conversion according to the fisheye lens information and stitching the first and second converted images to generate a panoramic image.
The above and other aspects of the invention will become better understood with regard to the following detailed description of the preferred but non-limiting embodiment(s). The following description is made with reference to the accompanying drawings.
In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the disclosed embodiments. It will be apparent, however, that one or more embodiments may be practiced without these specific details. In other instances, well-known structures and devices are schematically shown in order to simplify the drawing.
A number of embodiments are disclosed below for elaborating the invention. However, the embodiments of the invention are for detailed descriptions only, not for limiting the scope of protection of the invention. Furthermore, secondary or unimportant elements are omitted in the accompanying diagrams of the embodiments for highlighting the technical features of the invention.
The image capturing device 102 includes a first fisheye lens module 1020, a second fisheye lens module 1022 and a transmission circuit 1024. The first fisheye lens module 1020 and the second fisheye lens module 1022 can be realized by video recorders, cameras or image capturing modules equipped with fisheye lens for capturing images from different fields of views. Since the fisheye lens has the feature of ultra-wide angle, a panoramic image with ultra-wide field of vision can be obtained by stitching the images captured by the first fisheye lens module 1020 and the second fisheye lens module 1022 whose relative positions are suitable arranged.
The transmission circuit 1024 can encode and stream image data and further transit the encoded streaming image data to the image processing device 104 by way of wireless or wired communication. As indicated in
The image processing device 104 can be realized by a portable electronic device (mobile carrier such as smart phone, notebook computer, or tablet PC), personal computer, monitoring equipment, or any electronic device with image processing function. The image processing device 104 mainly includes an image obtaining circuit 1040, a storage module 1042 and an image processing module 1044. The image obtaining circuit 1040 is for receiving a first fisheye image F1 and a second fisheye image F2. In the present example, the image obtaining circuit 1040, such as a reception circuit, can decode the received streaming data to obtain the first fisheye image F1 and the second fisheye image F2.
The storage module 1042 is for storing a fisheye lens information, and the storage can be implemented by various storage media such as memory circuit and lookup table. The fisheye lens information can be any lens parameters associated with the first fisheye lens module 1020 and the second fisheye lens module 1022. Examples of the lens parameters include lens center position, focal length and view angle. The fisheye lens information can be obtained through lens calibration performed before the image capturing device 102 leaves the factory. The fisheye lens information is provided to the image processing module 1044 for subsequent image processing.
The image processing module 1044 is coupled to the image obtaining circuit 1040 and the storage module 1042 for generating a first converted image and a second converted image by converting the first fisheye image F1 and the second fisheye image F2 with panoramic coordinate conversion according to the fisheye lens information and stitching the first and second converted images to generate a panoramic image. The image processing module 1044 can be implemented by processor, chip, hardware circuits, software programs, firmware or medium storing instructions for execution.
Panoramic coordinate conversion disclosed above can be used to eliminate the distortion in the image content of the first fisheye image F1 and the second fisheye image F2. Therefore, a panoramic image with ultra-wide field of vision or full field can be obtained by suitably stitching the first and second converted images generated from panoramic coordinate conversion. Details of panoramic coordinate conversion and stitching process are disclosed with reference to
The image processing system 100 further includes a user interface 1046 for selecting a viewing mode in response to an external instruction, such that the panoramic image is converted into a display image corresponding to the viewing mode. The user interface 1046 can be realized by a touch screen or an interface with operation display function. Examples of the viewing mode include sphere mode, panorama mode and fisheye mode. However, the invention is not limited thereto, and the said viewing mode can also be realized by other browsing modes with different visual effects.
For example, suppose the image capturing device 102 is a monitor installed at a remote end, and the image processing device 104 is a smart phone. The image processing device 104 can use an APP to decode and convert the image streaming data, transmitted by the image capturing device 102 from a remote end, with panoramic coordinate conversion. The dual-band images (that is, the first and second converted images) can be cropped and stitched to generate a corresponding panoramic image. The image processing module 1044 can perform parameter computation for various visual fields such that the user can browse the panoramic image at a remote end through the selected viewing mode.
Since the image processing device of the invention can instantly convert the received first and second fisheye images with panoramic coordinate conversion according to the fisheye lens information and stitch the converted imaged, the scenery shot by the image capturing device can be instantly displayed on the browser window in a viewing mode preferred by the user. In an embodiment, the image processing device further increases the overall video display efficiency using the OpenGL and/or digital signal processing technology.
⊖=PI×(x/width−0.5)
Ø=PI×(y/height−0.5)
Wherein PI represents circular ratio; width represents image width; and height represents image height.
Then, in step S404, the image processing module constructs a 3D vector according to the angle in the polar coordinate obtained through conversion. For example, the image processing module constructs 3D vectors (spX, spY, spZ) using the angle (⊖, Ø) in the polar coordinate according to the following formulas:
spX=cos Ø×sin ⊖
spY=cos Ø×cos ⊖
spZ=sin Ø
Then, in step S406, the image processing module calculates the polar coordinate (r, ⊖1, Ø1) from the 3D vectors (spX, spY, spZ) according to the following formulas.
⊖1=arctan(spZ/spX)
Ø1=arctan(sqrt(spX×spX+spZ×spZ)/spY)
r=width×Ø1/FOV
Wherein FOV represents the scope of visual field. Lastly, in step S408, the image processing module calculates the original coordinate (x1, y1) of the fisheye image according to the polar coordinate (r, ⊖1) and the fisheye lens information:
x1=Cx+r×cos ⊖1
y1=Cy+r×sin ⊖1
Wherein, Cx and Cy represent coordinates of the center position of calibrated fisheye lens. Thus, coordinate conversion relationship between the original coordinate of the fisheye image and the polar coordinate of the panoramic image can be obtained. However, the invention is not limited to the above exemplifications. Panoramic coordinate conversion can also be implemented through other 2D/3D coordinate conversion. Besides, the parameters in the above formulas are merely an exemplification, and can be adjusted according to different display needs.
As disclosed above, the image processing module can obtain the panoramic image with wider field of vision by suitably stitching the first and second converted images.
To suitably stitch the first and second converted images CF1′ and CF2′, the image processing module captures the edge features of the first and second converted image CF1′ and CF2′ from the image overlapping region OVR. The edge features can be captured using various image processing technologies by judging image contrast, color difference, or pattern continuity.
Theoretically, the image content of the first and second converted images CF1′ and CF2′ in the image overlapping region OVR is repetitive or similar. Therefore, the image processing module can determine the image stitching point according to the degree of similarity between the features of the first and second images. As indicated in
After the image stitching points are determined, the image processing module can crop and stitch the first converted image CF1′ and the second converted image CF2′ according to the image stitching points. The edge at which two images are stitched is smoothed according to the ratio of the pixel value of the image and the distance to the overlapping boundary. Then, the images are smoothed, combined and outputted to generate a panoramic image AI.
In an embodiment, the image processing device can be disposed in the image capturing device. As indicated in
As indicated in
The terminal device 804 includes a reception circuit 8042, a processor 8044 and a user interface 8046. The reception circuit 8042 receives and decode the received streaming data to obtain a panoramic image. Through the computation of the processor 8044, the user interface 8046 can display the panoramic image in a selected viewing mode preferred by the user.
To summarize, the wide visual field of double fisheye lens used in the image processing method, the image processing device and the display system of the invention overcomes the restraint of visual field to which an ordinary lens is subjected. Through the pre-stored fisheye lens information and the streaming technology, the image processing device can instantly calibrate and stitch the dual-channel fisheye images to generate a corresponding panoramic image, which provides the user with a panoramic viewing experience.
It will be apparent to those skilled in the art that various modifications and variations can be made to the disclosed embodiments. It is intended that the specification and examples be considered as exemplary only, with a true scope of the disclosure being indicated by the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
104122716 | Jul 2015 | TW | national |