This application relates generally to cameras and specifically to the design of a camera that corrects distortion introduced by optical components which can capture wide field of view.
Different lens/image sensor combinations produce different types and degrees of distortion. This distortion makes viewing or interpreting an image difficult. Furthermore, an optical system may be designed in with distortions to provide a specific field of view.
Accordingly, what is needed is a system and method for reducing and correcting distortion in lens/image sensor combinations.
In preferred embodiments, the present inventions are implemented using a camera comprising the following. A camera that is capable of reducing distortion from an optical system has an optical system that is configured to capture a wide field of view. An image sensor and circuitry are coupled to the optical system and are configured to convert the output of the optical system to electrical signals suitable for use by an image processing circuit. The image processing circuit is coupled to the image sensor and is configured to reduce optical distortions from the combination of the optical system and the image sensor where the correction includes reference to a table of parameters held in a solid-state memory, attached to said image processing circuit, wherein the table of parameters may be specific to the particular combination of said optical system and said image.
The invention relates generally to video cameras and specifically to the design of a camera that corrects distortion introduced by optical components. The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a patent application and its requirements. Various modifications to the preferred embodiment and the generic principles and features described herein will be readily apparent to those skilled in the art. Thus, the invention is not intended to be limited to the embodiment shown but is to be accorded the widest scope consistent with the principles and features described herein.
The invention includes image-processing circuitry and discloses how the parameters used in the correction may be obtained automatically or manually. Correction of optical distortion has many advantages including, but not limited to, the possibility of achieving high quality images from low cost optical systems. The invention applies equally to still and video cameras.
In one embodiment image processing circuit 40 is implemented in a programmable device such as a digital signal processor, for example Texas Instruments TMS320C6414, which may be used to execute other algorithms upon the image including, but not limited to, sharpening, contrast adjustment, color adjustment, and resizing. It should however be clear to those skilled in the art that the algorithms mentioned here may be implemented with a combination of fixed-function and programmable hardware, or solely by fixed-function hardware.
The distortion is corrected by reference to a table held in a solid-state memory that indicates the mapping between pixels (i.e. picture elements, an individual dot in the image) of the distorted image and pixels of the correct image. This mapping table may be constructed for each optical system or batch of systems produced, hence removing the need for high accuracy components. The mapping table may be specific to a particular lens/image sensor combination, a type of lens or a type of image sensor, and so on. Additionally, the mapping table may stored within the lens and loaded in to the camera upon attachment of the lens to the camera.
The table is typically one of two types: it may be a forward table in which the mapping from distorted image to correct image is held (see
Referring again to
value=(weighta*pixela)+(weightb*pixelb)+(weightc*pixelc)
which is a weighted sum of selected pixels.
The contents of either the forward or reverse mapping tables may be generated automatically by directing the camera at a test pattern, typically a grid of black lines on a white background. With knowledge about the viewing conditions and relative positions of camera and test pattern, it is straightforward to determine corresponding intersections of horizontal and vertical lines on the test pattern and the distorted image. When the correspondence is known a mapping table is simple to construct and in the context of a production line this may be done automatically. If the camera is deployed, however, aging effects or damage may result in a need to recalculate the tables. As it may be difficult to construct good conditions for automatic calibration it may be necessary to resort to manual calibration in which a service engineer or similar adjusts the correction table until the displayed result is within a required tolerance. To achieve manual calibration is useful to be able to attach a test card to the camera such that it is in a known position and the camera housing may have attachment points to facilitate this. It is also possible that automatic calibration is applied first, followed by manual adjustment, and this is referred to as semi-automatic calibration. Note that the camera may provide some assistance in this procedure by performing operations such as edge enhancement to make the test pattern more easily visible. Alternatively, if the distortion of the optical system is well understood the mapping tables may be generated analytically.
Only those pixels that lie on the marked points of the test pattern have a known mapping, so a test pattern with more points will produce more accurate results. Those pixels which do not have a known mapping may use an interpolated mapping derived by inspecting the mapping of neighboring pixels and estimating a new mapping. The estimation may be done by linear interpolation or a higher-order interpolation as desired. It is possible that this estimation is performed within the camera instead of as part of the table generation. In this case the table may not hold as many entries as previously disclosed, which would have the benefit of reducing the amount of memory needed to hold it. It would, however, increase the computation needed to correct the distorted image by requiring interpolation of intermediate mappings. The opportunity to balance processing power and memory requirements is a useful benefit of the algorithm presented here.
A different mapping table may be constructed for each aperture setting of the optical system if changing the aperture significantly changes the characteristics of the distortion. If the optical system has a variable focal length (e.g. it is a zoom lens) it may be appropriate to generate different mapping table for different focal lengths.
For example, table 220 represents a mapping at one focal length while table 230 represents a mapping at another focal length, with “i” the distance from the first focal length and “j” the distance from the second focal length, wherein the point at which “i” and “j” meet is the desired focal length. One point of interest is between points A, B, C, and D of table 220. In order to interpolate between the two tables, value “a” of table 220 is multiplied by C and added to the product of “a” multiplied by D. This sum is then multiplied by the value “b”. The value “d” is multiplied by A and added to the product of “d” multiplied by B. This sum is then multiplied by the value “c”. For table 230, value “a” is multiplied by G and added to the product of “a” multiplied by H. This sum is then multiplied by the value “b”. The value “d” is multiplied by E and added to the product of “d” multiplied by F. This sum is then multiplied by the value “c”. The sum of values for table 220 is then multiplied by “j” and added to the product of table 230 and “i,” for an interpolated value.
In another embodiment, the projection of the image onto the sensor may be adjusted, for example to improve resolution in selected area. As the image projection is adjusted a different table may be used to correct the distortion.
In general any number of tables may be used to correct any geometric distortion that varies as a function of some parameter of the system.
A separate and distinct mapping table or set of mapping tables may be determined for several different optical systems and held in the camera. The camera may automatically determine the type of optical system in use and the appropriate table used. Alternatively, the table may be held in solid-state memory attached to the optical system such that each optical system presents a set of correction tables to the image processing circuit on attachment to the camera.
The foregoing has described methods for the correction of optical lens distortion by an image processing circuit within a camera that are given for illustration and not for limitation. Thus the invention is to be limited only by the appended claims. Although the invention has been described in accordance with the embodiments shown, one of ordinary skill in the art will readily recognize that there could be variations to the embodiments and those variations would be within the spirit and scope of the present invention. Accordingly, many modifications may be made by one of ordinary skill in the art without departing from the spirit and scope of the appended claims.
This application claims the benefit of U.S. Provisional Application No. 60/467,705 filed on May 2, 2003. The present application is related to the following U.S. patent applications: U.S. patent application Ser. No. 10/837,355, entitled “Multiple View Processing in Wide-Angle Video Camera”, filed on even date herewith and assigned to the assignee of the present invention. U.S. patent application Ser. No. 10/837,326, entitled “Multiple Object Processing in Wide-Angle Video Camera”, filed on even date herewith and assigned to the assignee of the present invention. U.S. patent application Ser. No. 10/837,019, entitled “Method and System of Simultaneously Displaying Multiple View for Video Surveillance”, filed on even date herewith and assigned to the assignee of the present invention.
Number | Name | Date | Kind |
---|---|---|---|
3725563 | Woycechowsky | Apr 1973 | A |
4543601 | Harada et al. | Sep 1985 | A |
4652928 | Endo et al. | Mar 1987 | A |
4667236 | Dresdner | May 1987 | A |
4728839 | Coughlan et al. | Mar 1988 | A |
4763280 | Robinson et al. | Aug 1988 | A |
4821209 | Hempel et al. | Apr 1989 | A |
5027287 | Artigalas et al. | Jun 1991 | A |
5067019 | Juday et al. | Nov 1991 | A |
5185667 | Zimmermann | Feb 1993 | A |
5321776 | Shapiro | Jun 1994 | A |
5359363 | Kuban et al. | Oct 1994 | A |
5396284 | Freeman | Mar 1995 | A |
5434617 | Bianchi | Jul 1995 | A |
5489940 | Richardson et al. | Feb 1996 | A |
5495292 | Zhang | Feb 1996 | A |
5666157 | Aviv | Sep 1997 | A |
5684937 | Oxaal | Nov 1997 | A |
6049281 | Osterweil | Apr 2000 | A |
6147709 | Martin et al. | Nov 2000 | A |
6215519 | Nayar et al. | Apr 2001 | B1 |
6243099 | Oxaal | Jun 2001 | B1 |
6243131 | Martin | Jun 2001 | B1 |
6344852 | Zhu | Feb 2002 | B1 |
6345129 | Aharon | Feb 2002 | B1 |
6509926 | Mills et al. | Jan 2003 | B1 |
6724421 | Glatt | Apr 2004 | B1 |
6738057 | Campbell | May 2004 | B1 |
6757434 | Miled et al. | Jun 2004 | B2 |
6763068 | Oktem | Jul 2004 | B2 |
6845190 | Smithwick et al. | Jan 2005 | B1 |
7202888 | Tecu et al. | Apr 2007 | B2 |
7224392 | Cahill et al. | May 2007 | B2 |
20020122117 | Nakagawa et al. | Sep 2002 | A1 |
20020154240 | Tamai et al. | Oct 2002 | A1 |
20030063815 | Watanabe | Apr 2003 | A1 |
20030128756 | Oktem | Jul 2003 | A1 |
Number | Date | Country |
---|---|---|
1120746 | Aug 2001 | EP |
1 341 383 | Sep 2003 | EP |
WO 02062056 | Aug 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20050007477 A1 | Jan 2005 | US |
Number | Date | Country | |
---|---|---|---|
60467705 | May 2003 | US |