The present invention relates to an image processing device, and particularly to an image processing device that reduces width of an image applied to the image processing device.
An image processor usually has a restriction on a size of an input image due to a structure of the image processor. Specifically, the size of the input image is defined by a width and a height, and the restriction of the image processor limits the width of the input image to be equal to or less than a certain value. However, as image capturing technology improves, a resolution of the input image may become higher. Consequently, because the size of the input image may become larger, the width of the input image may exceed the restriction of the image processor, resulting in the input image not being applied to the image processor. Therefore, how to process the input image that exceeds the restriction of the image processor is an important issue for an image processor designer.
An embodiment of the present invention provides an image processing device. The image processing device includes a rotation processor and an image processor. The rotation processor receives an input image and generates a temporary image according to the input image. The image processor is coupled to the rotation processor and outputs a processed image according to the temporary image, wherein the image processor has a predetermined image processing width, a width of the input image is larger than the predetermined image processing width, and a width of the temporary image is less than the predetermined image processing width.
Another embodiment of the present invention provides an image processing device. The image processing device includes a rotation processor and a depth map generator. The rotation processor receives a left-eye processed image and a right-eye processed image and generates a left-eye temporary image and a right-eye temporary image according to the left-eye processed image and the right-eye processed image. The depth map generator is coupled to the rotation processor and outputs a depth map according to the left-eye temporary image and the right-eye temporary image, wherein the depth map generator has a predetermined image processing width, widths of the left-eye processed image and the right-eye processed image are larger than the predetermined image processing width respectively, and widths of the left-eye temporary image and the right-eye temporary image are less than the predetermined image processing width respectively.
The present invention provides an image processing device. The image processing device receives at least one image, and utilizes a rotation processor included in the image processing device to generate at least one temporary image according to the at least one image, or according to at least one processed image further generated according to the at least one image, wherein at least one width of the at least one image is larger than a predetermined image processing width defined by the image processing device, and at least one width of the at least one temporary image is less than the predetermined image processing width. Therefore, compared to the prior art, the present invention can process the at least one image even if the at least one width of the at least one image is larger than the predetermined image processing width defined by the image processing device.
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
Moreover, the rotation processor 101 includes a dynamic random-access memory (DRAM) (not shown in
In addition, as shown in
In addition, after the image processor 103 receives the temporary image, the image processor 103 can execute an image processing on the temporary image. The image processing includes at least one operation of color space conversion, luminance adjustment, resolution adjustment, noise cancellation, edge sharpening, interpolation, and contrast adjustment. Because the image processor 103 executing the image processing is obvious to those of ordinary skill in the art, further description thereof is omitted for simplicity. In addition, after executing the image processing on the temporary image, the image processor 103 generates a processed image (as shown in
The image processor 103 can further flag the processed image being processed by the image processor 103 as a rotation status, wherein the rotation status is used for indicating a display direction of the processed image corresponding to a display direction of the input image. For example, some formats of image compression like JPEG are employed with exchangeable image file format (EXIF), wherein EXIF information can indicate a display direction of a JPEG image, and a display system can display the JPEG image in a desired display direction according to the EXIF information. But, the present invention is not limited to the processed image being the JPEG image, that is, the processed image can be an image with other image compression format. Therefore, after the image processor 103 flags the processed image as the rotation status, even if the processed image is generated by rotating the input image 90 degrees, the processed image still can be displayed in the display direction of the input image.
In addition, one of ordinary skill in the art should clearly realize functions of the rotation processor 101 and the image processor 103 through the above-mentioned corresponding descriptions of the rotation processor 101 and the image processor 103, so one of ordinary skill in the art can easily implement the rotation processor 101 and the image processor 103 through a field programmable gate array (FPGA) with the above-mentioned functions of the rotation processor 101 and the image processor 103, or an application-specific integrated circuit (ASIC) with the above-mentioned functions of the rotation processor 101 and the image processor 103, or a software module with the above-mentioned functions of the rotation processor 101 and the image processor 103, or an analog integrated circuit with the above-mentioned functions of the rotation processor 101 and the image processor 103. Therefore, further description of a corresponding structure of the rotation processor 101 and the image processor 103 is omitted for simplicity.
Please refer to
In addition, after the image processor 401 receives the left-eye input image and the right-eye input image, the image processor 401 can execute the image processing on the left-eye input image and the right-eye input image respectively. The image processing can be referred to the above-mentioned descriptions of the image processing of the image processor 103, so further description thereof is also omitted for simplicity. After executing the image processing on the left-eye input image and the right-eye input image respectively, the image processor 401 generates a left-eye processed image and a right-eye processed image.
The rotation processor 403 receives the left-eye processed image and the right-eye processed image and further utilizes a DRAM (not shown in
FR=inverse(R)*A (1)
Another embodiment of the present invention provides clockwise 90 degrees rotation matrix to substitute counterclockwise 90 degrees rotation matrix.
Therefore, the rotation processor 403 may utilize the final matrix FR to rotate and to dewarp the left-eye processed image and the right-eye processed image in the single step.
Please refer to
In addition, as shown in
In addition, after the depth map generator 405 receives the left-eye temporary image and the right-eye temporary image, because there is a disparity between the left-eye temporary image and the right-eye temporary image, the depth map generator 405 can generate the depth map (as shown in
However, in another embodiment of the present invention, the image processing device 400 further includes a synchronization unit (not shown in
In addition, the depth map generator 405 can further flag the depth map as a rotation status, wherein the rotation status is used for indicating a display direction of the depth map corresponding to display directions of the left-eye processed image and the right-eye processed image. The rotation status can be referred to the above-mentioned descriptions of the rotation status of the image processor 103, so further description thereof is omitted for simplicity.
In addition, in another embodiment of the present invention, after rotating the input image, or rotating the left-eye processed image and the right-eye processed image, at least one operation of image scaling and an image cropping can further be executed. For example, after rotating the input image, the input image can further be scaled down, so a width of the input image can be reduced again to meet the predetermined image processing width W. The at least one operation of image scaling and an image cropping can be executed as an independent function, or integrated into the dewarp function. In addition, the present invention is not limited to the at least one operation of image scaling and an image cropping being executed after rotating the input image, that is, the at least one operation of image scaling and an image cropping can be executed before rotating the input image.
In addition, one of ordinary skill in the art should clearly realize functions of the image processor 401, the rotation processor 403 and the depth map generator 405 through the above-mentioned corresponding descriptions of the image processor 401, the rotation processor 403 and the depth map generator 405, so one of ordinary skill in the art can easily implement the image processor 401, the rotation processor 403 and the depth map generator 405 through a field programmable gate array (FPGA) with the above-mentioned functions of the image processor 401, the rotation processor 403 and the depth map generator 405, or an application-specific integrated circuit (ASIC) with the above-mentioned functions of the image processor 401, the rotation processor 403 and the depth map generator 405, or a software module with the above-mentioned functions of the image processor 401, the rotation processor 403 and the depth map generator 405, or an analog integrated circuit with the above-mentioned functions of the image processor 401, the rotation processor 403 and the depth map generator 405. Therefore, further description of a corresponding structure of the image processor 401, the rotation processor 403 and the depth map generator 405 is omitted for simplicity.
In addition, please again refer to
To sum up, the image processing device provided by the present invention receives at least one image, and utilizes a rotation processor included in the image processing device to generate at least one temporary image according to the at least one image, or according to at least one processed image further generated according to the at least one image, wherein at least one width of the at least one image is larger than a predetermined image processing width defined by the image processing device, and at least one width of the at least one temporary image is less than the predetermined image processing width. Therefore, compared to the prior art, the present invention can process the at least one image even if the at least one width of the at least one image is larger than the predetermined image processing width, and accordingly the restriction on the width of the input image of the image processing device can be improved.
Although the present invention has been illustrated and described with reference to the embodiments, it is to be understood that the invention is not to be limited to the disclosed embodiments, but on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
This application is a division of U.S. application Ser. No. 16/432,888, filed on Jun. 5, 2019, which claims the benefit of U.S. Provisional Application No. 62/681,683, filed on Jun. 7, 2018. The contents of these applications are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4988984 | Gonzalez-Lopez | Jan 1991 | A |
5111192 | Kadakia | May 1992 | A |
5726704 | Uomori | Mar 1998 | A |
5986672 | Groezinger | Nov 1999 | A |
6028795 | Kimura | Feb 2000 | A |
6137491 | Szeliski | Oct 2000 | A |
6437790 | Kimura | Aug 2002 | B1 |
6563535 | Anderson | May 2003 | B1 |
7307634 | Karlov | Dec 2007 | B2 |
7535474 | Scholander | May 2009 | B1 |
7643038 | King | Jan 2010 | B2 |
7876977 | Walton | Jan 2011 | B2 |
7965776 | Kuroki | Jun 2011 | B2 |
7995867 | Walton | Aug 2011 | B2 |
8587807 | Matsuhira | Nov 2013 | B2 |
9497441 | Myokan | Nov 2016 | B2 |
10237528 | Tzur | Mar 2019 | B2 |
10708520 | Lee | Jul 2020 | B2 |
20030035001 | Van Geest | Feb 2003 | A1 |
20040008356 | Fujisawa | Jan 2004 | A1 |
20070024614 | Tam | Feb 2007 | A1 |
20100110492 | Matsuhira | May 2010 | A1 |
20100194886 | Asari | Aug 2010 | A1 |
20100295948 | Xie | Nov 2010 | A1 |
20110026042 | Cogan | Feb 2011 | A1 |
20110317988 | Lee | Dec 2011 | A1 |
20120274739 | Li | Nov 2012 | A1 |
20120315022 | Nagasawa | Dec 2012 | A1 |
20130027584 | Zerwick | Jan 2013 | A1 |
20130077882 | Venkataraman | Mar 2013 | A1 |
20140168211 | Kawada | Jun 2014 | A1 |
20140225985 | Klusza | Aug 2014 | A1 |
20140267602 | Tzur | Sep 2014 | A1 |
20150213607 | Jeong | Jul 2015 | A1 |
20150314443 | Yu | Nov 2015 | A1 |
20160029009 | Lu | Jan 2016 | A1 |
20160089882 | Ishida | Mar 2016 | A1 |
20160219258 | Woodgate | Jul 2016 | A1 |
20160291594 | Zhao | Oct 2016 | A1 |
20170010452 | Patzwald | Jan 2017 | A1 |
20170078644 | Chen | Mar 2017 | A1 |
20170161561 | Marty | Jun 2017 | A1 |
20170372452 | Wang | Dec 2017 | A1 |
20180061021 | Lin | Mar 2018 | A1 |
20180139431 | Simek | May 2018 | A1 |
20180278916 | Kim | Sep 2018 | A1 |
20190019476 | Ge | Jan 2019 | A1 |
20190259178 | Hafner | Aug 2019 | A1 |
20190378301 | Lee | Dec 2019 | A1 |
20190379842 | Lee | Dec 2019 | A1 |
20230231965 | Lee | Jul 2023 | A1 |
Number | Date | Country |
---|---|---|
103729883 | Apr 2014 | CN |
105609087 | May 2016 | CN |
106416240 | Feb 2017 | CN |
106576160 | Apr 2017 | CN |
107167996 | Sep 2017 | CN |
201447228 | Dec 2014 | TW |
201733350 | Sep 2017 | TW |
Number | Date | Country | |
---|---|---|---|
20230231965 A1 | Jul 2023 | US |
Number | Date | Country | |
---|---|---|---|
62681683 | Jun 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16432888 | Jun 2019 | US |
Child | 18092947 | US |