JP4919836B2 - Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion - Google Patents
Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion Download PDFInfo
- Publication number
- JP4919836B2 JP4919836B2 JP2007049281A JP2007049281A JP4919836B2 JP 4919836 B2 JP4919836 B2 JP 4919836B2 JP 2007049281 A JP2007049281 A JP 2007049281A JP 2007049281 A JP2007049281 A JP 2007049281A JP 4919836 B2 JP4919836 B2 JP 4919836B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- image
- output
- input
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Studio Devices (AREA)
Description
本発明は、撮像素子によって撮像された画像の歪みを電子的に補正する画像処理装置およびそれを用いた撮像装置に関する。 The present invention relates to an image processing apparatus that electronically corrects distortion of an image captured by an image sensor and an imaging apparatus using the same.
一般にレンズを介して取り込んだ光学情報を撮影する撮影装置では、レンズの収差により撮影画像に歪みが発生する。この歪みの種類にはタル型歪みや、糸巻き型歪みがあり、歪みの度合はレンズの倍率やレンズの仕様に応じて異なる。例えば、ズームレンズでは、ワイド側(焦点距離が短い側)で歪みが生じやすい。 Generally, in a photographing apparatus that photographs optical information captured through a lens, distortion occurs in a photographed image due to aberration of the lens. The types of distortion include tall distortion and pincushion distortion, and the degree of distortion varies depending on the magnification of the lens and the specifications of the lens. For example, in a zoom lens, distortion tends to occur on the wide side (side with a short focal length).
電子カメラの分野においては、このようなレンズ特性に起因する歪みを電子的に補正(以下「歪曲補正」という。)する技術が考案されている(例えば、特許文献1参照)。 In the field of electronic cameras, a technique has been devised to electronically correct distortion caused by such lens characteristics (hereinafter referred to as “distortion correction”) (see, for example, Patent Document 1).
例えば、図18(a)に示す被写体を電子カメラで撮像した場合、電子カメラにおけるCCD等の撮像素子上には図18(b)に示すようなレンズ特性によりタル型に歪曲した画像が形成される。図18(c)はその歪曲した画像を電子的に補正した画像である。図18において点s1と点a1と点b1とが対応し、点smと点amと点bmとが対応する。点a1近傍では点am近傍に比して大きく歪曲していることが分かる。図18(c)に示すように歪曲補正処理によって点a1と点amはそれぞれ元の位置に補正されている。 For example, when the subject shown in FIG. 18A is picked up by an electronic camera, an image distorted into a tall shape is formed on an image pickup device such as a CCD in the electronic camera due to lens characteristics as shown in FIG. The FIG. 18C is an image obtained by electronically correcting the distorted image. In FIG. 18, the points s1, a1, and b1 correspond to each other, and the points sm, am, and bm correspond to each other. It can be seen that the vicinity of the point a1 is greatly distorted compared to the vicinity of the point am. As shown in FIG. 18C, the points a1 and am are corrected to their original positions by the distortion correction processing.
画像の歪曲補正処理は次のように写像変換により行う。撮像画像上の座標系(以下「入力座標系」という。)と、補正画像上の座標系(以下「出力座標系」という。)とを考え、撮像画像と補正画像それぞれの画素の位置に入力座標系と出力座標系それぞれの格子点の位置を対応させる。歪曲補正処理では、このような座標系において、入力座標系上の各画素の画像データを、出力座標系に所定の関数fを用いて写像する。そして、出力座標系上の格子点(以下「出力座標点」という。)の画像情報(輝度情報、色差情報)を、その近傍にある、写像された画素の画像情報を補間(合成)することで求める。このようにして出力座標系上の各格子点(画素)について画像情報を求めることで歪曲補正を行う。 Image distortion correction processing is performed by mapping conversion as follows. Considering the coordinate system on the captured image (hereinafter referred to as “input coordinate system”) and the coordinate system on the corrected image (hereinafter referred to as “output coordinate system”), input to the pixel positions of the captured image and the corrected image. The positions of the grid points in the coordinate system and the output coordinate system are made to correspond. In the distortion correction process, in such a coordinate system, image data of each pixel on the input coordinate system is mapped to the output coordinate system using a predetermined function f. Then, the image information (luminance information, color difference information) of the grid points on the output coordinate system (hereinafter referred to as “output coordinate points”) is interpolated (synthesized) with the image information of the mapped pixels in the vicinity thereof. Ask for. In this way, distortion correction is performed by obtaining image information for each grid point (pixel) on the output coordinate system.
図19を参照し、より具体的に説明する。入力座標系(撮像画像上の座標系)における点a1は写像関数fにより、出力座標系(補正画像上の座標系)上の点b1に写像される。入力座標系における他の点amは写像関数fにより、出力座標系(補正画像の座標系)の点bmに写像される。写像関数fはレンズ特性及びズーム倍率に基づき求められる。 This will be described more specifically with reference to FIG. A point a1 in the input coordinate system (coordinate system on the captured image) is mapped to a point b1 on the output coordinate system (coordinate system on the corrected image) by the mapping function f. Another point am in the input coordinate system is mapped to a point bm in the output coordinate system (corrected image coordinate system) by the mapping function f. The mapping function f is obtained based on lens characteristics and zoom magnification.
補正画像上において必要な情報は、出力座標系の格子点(出力座標点)上の画像情報であり、一般に写像された出力座標系上の点b1、bmは出力座標点上にはないので、出力座標点の画像データは、その近傍に写像された複数の画素の画像データを補間(合成)することで求められる。例えば、図19に示すように、出力座標点Q1の画像データは、その近傍に写像された画素b1、b2、bk、bk+1の画像データを補間(合成)することで求められる。同様に、出力座標点Qmの画像データは、その近傍に写像された画素bm、bm+1、bn、bn+1の画像データを補間することで求められる。このように、出力座標系においては補間(合成)することで出力座標点の画像データすなわち補正後のデータを求める。 Necessary information on the corrected image is image information on a grid point (output coordinate point) of the output coordinate system, and generally the points b1 and bm on the output coordinate system mapped are not on the output coordinate point. The image data of the output coordinate point is obtained by interpolating (synthesizing) image data of a plurality of pixels mapped in the vicinity thereof. For example, as shown in FIG. 19, the image data of the output coordinate point Q1 is obtained by interpolating (synthesizing) the image data of the pixels b1, b2, bk, bk + 1 mapped in the vicinity thereof. Similarly, the image data of the output coordinate point Qm is obtained by interpolating the image data of the pixels bm, bm + 1, bn, bn + 1 mapped in the vicinity thereof. Thus, in the output coordinate system, the image data of the output coordinate point, that is, the corrected data is obtained by interpolation (synthesis).
撮像画像の各入力座標点を順にスキャンしながら、上記のようにして出力座標系上の写像点を求め、合成することで画像全体の歪曲補正を行う。 While scanning each input coordinate point of the captured image in order, the mapping point on the output coordinate system is obtained and synthesized as described above, thereby correcting the distortion of the entire image.
図18(c)において点b1近傍は、撮像画像において比較的歪みの大きい領域を補正して得られ、点bm近傍は比較的歪みの小さい領域の補正により得られる。点b1近傍領域のような歪みの大きい領域の補正には、撮像画像において複数のラインの画像を読み出さないと、補正に必要な情報を得ることができない。これに対して、点bm近傍領域のような歪みの小さい領域の補正には、撮像画像において比較的少ない数のラインの画像を読み出すことで、補正に必要な情報を得ることができる。 In FIG. 18C, the vicinity of the point b1 is obtained by correcting an area having a relatively large distortion in the captured image, and the vicinity of the point bm is obtained by correcting an area having a relatively small distortion. For correction of a region with large distortion such as the region near the point b1, information necessary for correction cannot be obtained unless images of a plurality of lines are read out in the captured image. On the other hand, for correction of a region with a small distortion such as a region near the point bm, information necessary for correction can be obtained by reading out an image of a relatively small number of lines in the captured image.
このように補正画像の1ラインを写像によって得るために入力画像の多数のラインに相当するデータを必要とする場合がある。つまり、補正画像のデータをバッファメモリにライン毎に出力するためには、未処理の画素に対する処理を待つ間に、入力画像のうち多数のラインのデータを保持するためのラインメモリが多数必要である。しかし、撮像装置においてラインメモリを多数備えることは、構成上ラインメモリの分だけ部品点数が増加するという問題がある。 As described above, in order to obtain one line of the corrected image by mapping, data corresponding to many lines of the input image may be required. In other words, in order to output the corrected image data to the buffer memory line by line, a large number of line memories are required to hold data of a large number of lines in the input image while waiting for processing on unprocessed pixels. is there. However, the provision of a large number of line memories in the imaging apparatus has a problem in that the number of components increases by the amount of the line memory due to the configuration.
本発明は、上記課題を解決すべくなされたものであり、その目的とするところは、レンズ特性に起因する画像の歪みの補正を可能とする撮像装置において容易な構成の撮像装置を提供することにある。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide an imaging apparatus having an easy configuration in an imaging apparatus that enables correction of image distortion caused by lens characteristics. It is in.
本発明に係る画像処理装置は、入力画像の歪みを電子的に補正して出力画像を生成する画像処理装置である。画像処理装置は、入力画像のデータを画素毎に走査順に順次読み込み、読み込んだ画素のデータを用いて出力画像の画素毎に補正処理を行うことにより、出力画像の各画素のデータを求める補正処理部を備える。補正処理部は、補正処理が完了した画素のデータを、出力画像の走査順とは異なる順序で出力する。 An image processing apparatus according to the present invention is an image processing apparatus that electronically corrects distortion of an input image to generate an output image. The image processing apparatus sequentially reads input image data for each pixel in the scanning order, and performs correction processing for each pixel of the output image using the read pixel data, thereby obtaining correction data for each pixel of the output image. A part. The correction processing unit outputs pixel data for which correction processing has been completed in an order different from the scanning order of the output image.
補正処理部は、入力画像データの一部である複数ライン分の入力画素のデータを一時的に記憶するラインメモリと、ある出力画素のデータを生成するために必要な複数の入力画素のデータがラインメモリに記憶されているかどうかを判断する制御部と、制御部が出力画素のデータを生成するのに必要な複数の入力画素のデータが前記ラインメモリに記憶されていると判断した場合、それらの複数の入力画素のデータを合成することで補正処理を行う合成処理部とを含む。所定ライン数は、一つの出力画素のデータを生成するために使用される複数の入力画素のそれぞれが位置するラインの数と等しい数である。
The correction processing unit includes a line memory that temporarily stores input pixel data for a plurality of lines, which is a part of input image data, and a plurality of input pixel data necessary to generate data for a certain output pixel. A control unit that determines whether or not the data is stored in the line memory, and when the control unit determines that the data of the plurality of input pixels necessary for generating the output pixel data is stored in the line memory. And a combining processing unit that performs correction processing by combining the data of the plurality of input pixels . The predetermined number of lines is a number equal to the number of lines in which each of the plurality of input pixels used for generating data of one output pixel is located.
また、補正処理部は、出力画像の画素に対応する入力画像上の逆写像点を求める座標算出部をさらに備えてもよい。この場合、制御部は、座標算出部で求めた逆写像点に基づいて、前記複数の入力画素のデータが前記ラインメモリに記憶されているか否かを判断する。 The correction processing unit may further include a coordinate calculation unit that obtains a reverse mapping point on the input image corresponding to the pixel of the output image. In this case, the control unit determines whether data of the plurality of input pixels is stored in the line memory based on the inverse mapping point obtained by the coordinate calculation unit.
また、補正処理部は、入力画像の画素と、その入力画像の画素のデータを用いて合成される出力画像の画素とを関連づけた情報をさらに有してもよい。 The correction processing unit may further include information that associates the pixel of the input image with the pixel of the output image that is synthesized using the pixel data of the input image.
補正処理部は、補正処理が完了した画素のデータを一時的に格納し、ページ単位で出力するキャッシュメモリをさらに有してもよい。 The correction processing unit may further include a cache memory that temporarily stores data of pixels for which correction processing has been completed and outputs the data in units of pages.
本発明に係る撮像装置は、レンズと、レンズを介して入力した光学情報を電気的な画像情報に変換する撮像素子と、撮像素子で撮像された画像データの歪みを電子的に補正する、上記の画像処理装置とを備える。 An imaging apparatus according to the present invention includes a lens, an imaging element that converts optical information input through the lens into electrical image information, and electronically corrects distortion of image data captured by the imaging element. Image processing apparatus.
本発明に係る歪曲補正方法は、入力画像の歪みを電子的に補正して出力画像を生成する方法である。歪曲補正方法は、入力画像のデータを画素毎に走査順に順次読み込むステップと、出力画像の各画素のデータを求めるために、読み込んだ画素のデータを用いて出力画像の画素毎に補正処理を行うステップと、補正処理が完了した画素のデータを、読み込み時の画素の順とは異なる順序で出力するステップとを含む。補正処理を行うステップは、入力画像データの一部である所定ライン数分の入力画素のデータをラインメモリに一時的に記憶し、ある出力画素のデータを生成するために必要な複数の入力画素のデータが前記ラインメモリに記憶されているかどうかを判断し、出力画素のデータを生成するのに必要な複数の入力画素のデータが前記ラインメモリに記憶されていると判断した場合、それらの複数の入力画素のデータを合成することで前記補正処理を行う。所定ライン数は、一つの出力画素のデータを生成するために使用される複数の入力画素のそれぞれが位置するラインの数と等しい数である。
The distortion correction method according to the present invention is a method of generating an output image by electronically correcting distortion of an input image. The distortion correction method includes a step of sequentially reading input image data for each pixel in the scanning order, and performing correction processing for each pixel of the output image using the read pixel data in order to obtain data of each pixel of the output image. And a step of outputting pixel data for which correction processing has been completed in an order different from the order of the pixels at the time of reading. The step of performing the correction process is to temporarily store input pixel data for a predetermined number of lines, which is a part of the input image data, in a line memory, and to generate a plurality of input pixels necessary for generating data of a certain output pixel. Are determined to be stored in the line memory, and when it is determined that data of a plurality of input pixels necessary for generating output pixel data is stored in the line memory, The correction processing is performed by combining the data of the input pixels. The predetermined number of lines is a number equal to the number of lines in which each of the plurality of input pixels used for generating data of one output pixel is located .
本発明によれば、歪曲補正処理において補間を行う際に、補間処理に必要なライン数だけ入力画像をラインメモリに用意しておけばよく、多数ライン分の入力画像を用意しておく必要はない。よって、本実施形態の撮像装置によれば、入力画像データを保存するラインメモリ容量を削減でき、撮像装置の構成の簡単化が図れる。 According to the present invention, when performing interpolation in distortion correction processing, it is sufficient to prepare as many input images as the number of lines necessary for interpolation processing in the line memory, and it is necessary to prepare input images for many lines. Absent. Therefore, according to the imaging apparatus of the present embodiment, the line memory capacity for storing input image data can be reduced, and the configuration of the imaging apparatus can be simplified.
以下、添付の図面を参照して本発明の実施の形態を説明する。
以下の説明において、画素の輝度情報及び色差情報に関するデータを「画素データ」という。また、撮像素子上で得られる歪曲補正処理前の画像データを「元データ」といい、歪曲補正処理後の画像データを「出力データ」という。また、元データ上の座標系を「入力座標系」、出力データ上の座標系を「出力座標系」といい、元データ及び出力データの各画素の位置に対応させて入力座標系及び出力座標系上の格子点を設ける。入力座標系及び出力座標系上の格子点をそれぞれ「入力座標点」及び「出力座標点」という。
Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
In the following description, data relating to pixel luminance information and color difference information is referred to as “pixel data”. Further, image data before distortion correction processing obtained on the image sensor is referred to as “original data”, and image data after distortion correction processing is referred to as “output data”. Also, the coordinate system on the original data is called the “input coordinate system”, the coordinate system on the output data is called the “output coordinate system”, and the input coordinate system and the output coordinate corresponding to the position of each pixel of the original data and the output data. A grid point on the system is provided. The grid points on the input coordinate system and the output coordinate system are referred to as “input coordinate point” and “output coordinate point”, respectively.
実施の形態1
(撮像装置の構成)
図1は、本発明の撮像装置の構成を示した図である。撮像装置は、レンズ3と、光学情報を電気信号に変換する撮像素子であるCCD11と、アナログ信号をデジタル信号に変換するAD変換器13と、撮像装置全体の動作を制御する画像処理回路15と、歪曲補正前後の画像データを一時的に格納するバッファメモリ17と、画像データを格納するメモリーカード19を装着するカードスロット21とを備える。撮像装置はさらにフォーカス動作、ズーム動作においてレンズ3を移動させるためのモータ9を有する。
(Configuration of imaging device)
FIG. 1 is a diagram showing a configuration of an imaging apparatus according to the present invention. The imaging apparatus includes a
画像処理回路15は、画像処理回路15内の各処理部とバッファメモリ17及びメモリーカード19とのアクセスを制御するメモリーコントローラ23と、画像データに対してガンマ補正等の前処理を行う前処理部25と、YC処理を行うYC処理部27と、複数の入力座標点に対する画素データを合成(補間)して補正後の画素データを求める合成処理部29と、画像に対して圧縮、伸張処理を行う圧縮伸張処理部31とを備える。YC処理とは、その後の圧縮処理を容易化するために画像データのY信号(輝度成分)とC信号(色成分)を分離する処理である。画像処理回路15はさらに座標算出部33と、メモリ35と、倍率取得部37と、FIFOメモリ41とを備える。本実施形態では、メモリーコントローラ23、合成処理部29、座標算出部33、メモリ35及びFIFOメモリ41が補正処理部を構成する。
The
座標算出部33は歪曲補正のための逆写像f-1(詳細は後述)を算出する機能を有する。倍率取得部37はズーム倍率に関する情報をモータ9から取得する。メモリ35には逆写像f-1を算出するために必要な情報(種々の条件に対する逆写像f-1の関数に関する情報)が格納されている。
The coordinate
ここで逆写像f-1について説明する。写像fとは、撮像画像すなわち元データの座標系(入力座標系)上の点を、歪曲補正後の画像の出力座標系上の点に対応づける写像である。逆写像f-1はこの写像fの逆写像であり、歪曲補正後の画像上の出力座標系の各点を、歪曲補正前の撮像素子上の入力座標系の各点に対応づける関数である。写像f、逆写像f-1はレンズ特性及びズーム倍率に応じて決定される。 Here, the inverse map f −1 will be described. The mapping f is a mapping that associates a captured image, that is, a point on the coordinate system (input coordinate system) of the original data with a point on the output coordinate system of the image after distortion correction. The inverse map f −1 is a reverse map of the map f, and is a function that associates each point of the output coordinate system on the image after distortion correction with each point of the input coordinate system on the image sensor before distortion correction. . The mapping f and the inverse mapping f −1 are determined according to the lens characteristics and the zoom magnification.
FIFOメモリ41には、元データの各入力座標点(画素)が出力データ中のいずれの出力座標点(出力画像の画素)の補間に使用されるのかを示す情報(以下「対応座標点リスト」という。)が格納される。対応座標点リストの詳細は後述する。
The
(撮像装置の全体動作)
以上のように構成される撮像装置についてその全体動作を説明する。
撮像装置において、レンズ3を介して入力された光学情報はCCD11によりアナログ電気信号に変換される。AD変換器13はCCD11からのアナログ電気信号をデジタル信号の画像情報に変換する。画像処理回路15はAD変換器13からデジタル信号の画像情報を受け、所定の画像処理を行った後最終的にメモリーカード19に記録する。
(Overall operation of the imaging device)
The overall operation of the imaging apparatus configured as described above will be described.
In the imaging apparatus, optical information input through the
より具体的には、画像処理回路15においては、AD変換器13からの画像信号に対して、前処理部25によりガンマ補正等の前処理が行われ、YC処理部27によりYC処理が行われる。それらの処理がなされた画像データはバッファメモリ17に格納される。
More specifically, in the
次に、合成処理部29と座標算出部33等により、バッファメモリ17に格納された画像データに対して歪曲補正がなされる。歪曲補正後の画像データは、再度バッファメモリ17に格納される。このようにして、バッファメモリ17上において歪曲補正された画像が得られる。
Next, distortion correction is performed on the image data stored in the
(対応座標点リストの生成)
FIFOメモリ41に格納される対応座標点リストの生成について説明する。対応座標点リストは座標算出部33により次のようにして生成される。
(Corresponding coordinate point list generation)
Generation of the corresponding coordinate point list stored in the
座標算出部33は、各出力座標点について逆写像f-1により元データ上の逆写像点を求める。求めた逆写像点を中心とした所定範囲Δ内の領域に存在する元データの入力座標点を、当該出力座標点の画素データを求めるための補間に必要な入力座標点とする。座標算出部33はそのような方法で求めた入力座標点と、出力座標点とを関連づけて対応座標点リストとしてFIFOメモリ41に出力する。
The coordinate
図2は、レンズ3がタル型歪み特性を有する場合の、元データにおける入力座標点と出力データにおける出力座標点との間の対応関係を示した図である。図2はさらに、FIFOメモリ41に格納される対応座標点リストの一例も示している。
FIG. 2 is a diagram illustrating a correspondence relationship between the input coordinate points in the original data and the output coordinate points in the output data when the
図2において、例えば、出力データの出力座標点A1の逆写像点は入力座標点Z1の近傍に位置する。同様に、出力座標点B1の逆写像点も、入力座標点Z1の近傍に位置する。出力座標点A1、B1のそれぞれの逆写像点は双方とも、入力座標点Z1の所定範囲Δ内の領域にある。よって、図2に示す例では、元データの入力座標点Z1が、出力座標点A1、B1の画素データを求めるための補間に必要な点となる。よって、FIFOメモリ41の対応座標点リストにおいて、入力座標点Z1と、出力座標点A1、B1とが関連づけて記録される。図2に示す対応座標点リストから、入力座標点X1、X2はいずれの出力座標点の補間にも使用されず、また、入力座標点Y2は出力座標点A2の補間に必要であることがわかる。なお、FIFOメモリ41に格納される対応座標点リストは、すべての入力座標点についての情報を同時に含む必要はなく、対応座標点リストが参照される処理において必要なライン数の入力座標点に関する情報を含んでいればよい。例えば、対応座標点リストは、処理される元データの入力座標点に応じて、元データの10ライン毎に生成されてもよい。
In FIG. 2, for example, the inverse mapping point of the output coordinate point A1 of the output data is located in the vicinity of the input coordinate point Z1. Similarly, the inverse mapping point of the output coordinate point B1 is also located in the vicinity of the input coordinate point Z1. Both inverse mapping points of the output coordinate points A1 and B1 are in a region within the predetermined range Δ of the input coordinate point Z1. Therefore, in the example shown in FIG. 2, the input coordinate point Z1 of the original data is a point necessary for interpolation for obtaining pixel data of the output coordinate points A1 and B1. Therefore, in the corresponding coordinate point list of the
(歪曲補正処理)
図3を参照し、本実施形態の撮像装置の歪曲補正処理の概要を説明する。
本実施形態では、元データ上の入力座標点の画素データをバッファメモリ17から順に読み込むとともに、FIFOメモリ41に格納された対応座標点リストを参照し、その入力座標点がいずれかの出力座標点の画素データの補間(合成)に使用されるか否かを判断する。例えば、図2に示す対応座標点リストでは、入力座標点X1はいずれの出力座標点(出力画像の画素)の補間にも使用されないと判断され、入力座標点Y3は、出力データの出力座標点A3及びB3の補間に使用されると判断される。
(Distortion correction processing)
With reference to FIG. 3, an outline of the distortion correction processing of the imaging apparatus of the present embodiment will be described.
In the present embodiment, the pixel data of the input coordinate points on the original data are sequentially read from the
その入力座標点がいずれかの出力座標点の補間に使用されると判断されると、その入力座標点の画素データが、合成処理部29に送られ、出力座標点(出力画像の画素)に関連づけられて所定の記憶領域に記憶される。各出力座標点(出力画像の画素)については、補間が必要な入力座標点の数は事前に決定している。図3は、1つの出力座標点の補間に4個の入力座標点を用いる例を示している。合成処理部29は、各出力座標点について、補間に必要な入力座標点が揃ったか否かを判断し、揃った出力座標点について補間処理を行い、バッファメモリ17に出力する。図3では、画素Dに対応する出力座標点において補間に必要な入力座標点が揃っているので、補間処理がなされてバッファメモリ17に出力されている。画素A〜Cに対応する出力座標点では必要な出力座標点が未だ揃っていないので、補間処理がなされず、バッファメモリ17に出力されていない。
When it is determined that the input coordinate point is used for interpolation of any output coordinate point, the pixel data of the input coordinate point is sent to the
以上のように、本実施形態の歪曲補正処理においては、元データの各入力座標点について出力座標点の補間に使用されるか否かの判断を行い、出力座標点の補間に使用されると判断された入力座標点の画素データのみが出力座標点(出力画像の画素)と関連づけて記憶される。そして、必要な入力座標点の情報が満たされた順に出力座標点の補間処理が行われ、出力される。このため、出力画像の走査順と補正後のデータの出力順とは一致しない。ここで、出力画像の走査順とは、バッファメモリ17に一旦格納された出力画像が、再度メモリーコントローラ23に読み出される順であって、画面の左上から水平方向に移動し、その水平方向の順を垂直下方向に繰り返す順をいう。
As described above, in the distortion correction processing of this embodiment, it is determined whether or not each input coordinate point of the original data is used for interpolation of the output coordinate point, and is used for interpolation of the output coordinate point. Only the pixel data of the determined input coordinate point is stored in association with the output coordinate point (pixel of the output image). Then, the output coordinate points are interpolated in the order in which the necessary input coordinate point information is satisfied and output. For this reason, the scanning order of the output image does not match the output order of the corrected data. Here, the scanning order of the output image is the order in which the output image once stored in the
図4は、本実施形態の撮像装置による歪曲補正処理を示すフローチャートである。
CCD11で撮像された画像データは、前処理部25やYC処理部27により所定の処理がなされた後、バッファメモリ17に元データとして格納される(S31)。次に、座標算出部33により、元データの入力座標点が出力データのいずれの出力座標点の補間に使用されるかを示す対応座標点リストの生成を開始する(S32)。生成された対応座標点リストはFIFOメモリ41に格納される。
FIG. 4 is a flowchart showing distortion correction processing by the imaging apparatus of the present embodiment.
The image data picked up by the
メモリーコントローラ23はバッファメモリ17から一つの入力座標点x1の画素データを読み出す(S33)。入力座標点x1が読み出せた場合(S34でNO)、メモリーコントローラ23はFIFOメモリ41から対応座標点リストのデータを順次読み出し、対応座標点リストに入力座標点x1があるか否かを判断する(S35)。すなわち、対応座標点リストを参照し、入力座標点x1がいずれかの出力座標点の補間に使用されるか否かを判断する。
The
対応座標点リストに入力座標点x1がないとき、すなわち、入力座標点x1がいずれの出力座標点の補間にも使用されないと判断されるときは、その入力座標点については特に処理を行わず、次の入力座標点に進み(S39)、上記と同様の処理を実施する。なお、メモリーコントローラ23は入力座標点を画像の左上端の画素から、ライン毎に上から下に且つ同ライン中は左から右に順次、画素データを読み出し、処理するものとする。
When there is no input coordinate point x1 in the corresponding coordinate point list, that is, when it is determined that the input coordinate point x1 is not used for interpolation of any output coordinate point, the input coordinate point is not particularly processed. The process proceeds to the next input coordinate point (S39), and the same processing as described above is performed. Note that the
メモリーコントローラ23は対応座標点リストに入力座標点x1があるとき、すなわち、入力座標点x1が、いずれかの出力座標点の補間に使用されると判断されたときは、当該入力座標点x1の画素データを合成処理部29に送り、合成処理部29で補間処理が実施される(S36)。具体的には、合成処理部29は、当該入力座標点x1の画素データを、対応座標点リストによりその入力座標点に関連づけられた出力座標点に対応した記憶領域に保持する。その後、合成処理部29は、各出力座標点について、補間に必要な数の入力座標点が揃ったか否かを判断し、揃った場合に格納した入力座標点の画素データを用いて補間処理(合成処理)を行い、出力座標点の画素データすなわち補正後の画素データを求める。
When the
メモリーコントローラ23は補間処理終了後、補間が完了した出力座標点があるか否かを判断し(S37)、補間完了の出力座標点がある場合、その出力座標点の画素データをバッファメモリ17に記録する(S38)。補間完了の出力座標点がないと判断されたときは、次の入力座標点に進み(S39)、上記と同様の処理を繰り返す。
After completion of the interpolation process, the
一方、ステップS34において、バッファメモリ17から元データの全ての入力座標点x1についての読み出しが終了した場合(S34でYES)、処理を終了する。
On the other hand, in step S34, when reading of all the input coordinate points x1 of the original data from the
(歪曲補正済みデータの出力状況)
図5、図6を参照して、本実施形態による歪曲補正処理済みデータの出力状況を説明する。図5(a)は元データを、図5(b)〜(d)は出力データにおける歪曲補正処理の進行状況をそれぞれ示している。図6は、バッファメモリ17への歪曲補正後の画像データの出力状況を示した図である。
(Output status of distortion-corrected data)
With reference to FIGS. 5 and 6, the output state of the distortion-corrected data according to this embodiment will be described. FIG. 5A shows the original data, and FIGS. 5B to 5D show the progress of the distortion correction process in the output data. FIG. 6 is a diagram showing an output state of image data after distortion correction to the
元データの第1ライン目がスキャンされた時点では、入力座標点A’以後(A’より右側)のデータは読み込まれるが、出力座標点B、Cの補間に必要な入力座標点B’、C’のデータは未だ読み込まれていない。よって、この時点では、図5(b)に示すように、出力座標点Aを含む一部の出力座標点群についてのみ補間処理が完了し、バッファメモリ17に出力される。よって、バッファメモリ17への補正後データの出力状況は図6(a)に示すようになる。
When the first line of the original data is scanned, the data after the input coordinate point A ′ (on the right side of A ′) is read, but the input coordinate point B ′ necessary for interpolation of the output coordinate points B and C, The data of C ′ has not been read yet. Therefore, at this time, as shown in FIG. 5B, the interpolation processing is completed only for a part of the output coordinate point group including the output coordinate point A, and is output to the
次に、元データの第2ライン目がスキャンされた時点では、入力座標点B’以後のデータは読み込まれるが、出力座標点Cの補間に必要な画素C’のデータは未だ読み込まれていない。よって、この時点では、図5(c)に示すように、出力データの第1ライン目において出力座標点Bと出力座標点Aの間のデータについて新たに補間され、バッファメモリ17に出力される。さらに、出力データの第2ライン目においても、中央部の出力座標点が補間される。よって、バッファメモリ17への補正後データの出力状況は図6(b)に示すようになる。
Next, when the second line of the original data is scanned, the data after the input coordinate point B ′ is read, but the data of the pixel C ′ necessary for interpolation of the output coordinate point C is not yet read. . Therefore, at this time, as shown in FIG. 5C, the data between the output coordinate point B and the output coordinate point A is newly interpolated in the first line of the output data, and is output to the
さらに、元データの第3ライン目がスキャンされた時点では、入力座標点C’以後のデータが読み込まれる。よって、この時点では、図5(d)に示すように、出力データの第1ライン目において出力座標点Cと出力座標点B間のデータが新たに補間され、バッファメモリ17に出力される。また、出力データの第2、3ライン目においても、中央部の出力座標点が補間される。よって、バッファメモリ17への補正後データの出力状況は図6(c)に示すようになる。
Further, when the third line of the original data is scanned, data after the input coordinate point C ′ is read. Therefore, at this time, as shown in FIG. 5D, the data between the output coordinate point C and the output coordinate point B is newly interpolated and output to the
以上のように、本実施形態では、元データについて画像の左上端からスキャンした場合であっても、歪曲補正後の画像データは、画像の左上端からバッファメモリ17に出力されず、補間が完了した画素から、すなわち、図6に示すようにラインの中央部分から出力される。よって、歪曲補正された画素のバッファメモリ17への出力順は、バッファメモリ17に格納された補正完了後の出力画像を再度バッファメモリ17から読み出すときの順(出力画像の画素順)と異なる。
As described above, in this embodiment, even when the original data is scanned from the upper left end of the image, the image data after distortion correction is not output to the
(まとめ)
以上のように本実施形態の撮像装置によれば、歪曲補正処理において補間を行う際に、補間処理に必要なライン数だけ入力画像データを格納可能な容量のラインメモリを備えておけばよく、多数ライン分の入力画像データを格納しておく必要はない。よって、本実施形態の撮像装置によれば、ラインメモリ容量を削減でき、画像装置の構成の簡単化が図れる。
(Summary)
As described above, according to the imaging apparatus of the present embodiment, when performing interpolation in the distortion correction process, it is only necessary to have a line memory having a capacity capable of storing input image data for the number of lines necessary for the interpolation process. There is no need to store input image data for many lines. Therefore, according to the imaging apparatus of the present embodiment, the line memory capacity can be reduced, and the configuration of the image apparatus can be simplified.
また、本実施形態の撮像装置によれば、出力データの出力座標点に対応する元データ中の逆写像点を求め、その逆写像点近傍の画素データを用いて出力座標点の画素データを求めている。このような方法で求められた画素データは必ず出力座標系の格子点上のものとなり、且つ、歪のない入力座標系から補間されるため、誤差を含まない良質な画像が得られる。一方、入力画像を一旦写像した後補間をするという従来の技術では、写像点が必ずしも出力画像の格子点上にはなく、写像した座標が歪曲しているにも拘らず正方格子と近似して補間を行っていたため、出力データにおいて誤差を含むという問題が生じていたが、本実施形態の撮像装置によれば、上記理由により、画素データは必ず出力座標系の格子点上のものとなるため、従来の問題を解決できる。 Further, according to the imaging apparatus of the present embodiment, the inverse mapping point in the original data corresponding to the output coordinate point of the output data is obtained, and the pixel data of the output coordinate point is obtained using the pixel data near the inverse mapping point. ing. Since the pixel data obtained by such a method is always on the grid points of the output coordinate system and is interpolated from the input coordinate system without distortion, a high-quality image containing no error can be obtained. On the other hand, in the conventional technique in which the input image is mapped once and then interpolated, the mapping point is not necessarily on the lattice point of the output image, and it approximates to a square lattice although the mapped coordinates are distorted. Since interpolation has been performed, there has been a problem that the output data includes an error. However, according to the imaging apparatus of the present embodiment, the pixel data is always on the grid points of the output coordinate system for the above reason. Can solve the conventional problem.
実施の形態2
図7は、本発明の別の実施形態の撮像装置の構成を示した図である。
本実施形態の撮像装置は、図1に示す構成に加えて、合成処理部29とメモリーコントローラ23との間にキャッシュメモリ43をさらに備えている。キャッシュメモリ43は合成処理部29における補間(合成)が完了した画素をページ単位で格納する。本実施形態の撮像装置の基本的な動作は実施の形態1のものと同様であるが、キャッシュメモリ43に関する歪曲補正処理の内容が異なる。なお、本実施形態では、メモリーコントローラ23、合成処理部29、座標算出部33、メモリ35、FIFOメモリ41及びキャッシュメモリ43が補正処理部を構成する。
FIG. 7 is a diagram illustrating a configuration of an imaging apparatus according to another embodiment of the present invention.
The imaging apparatus according to the present embodiment further includes a
図8は本実施形態の歪曲補正処理を説明した図である。元データの入力座標点の画素データをバッファメモリ17から順次読み出し、FIFOメモリ41に格納された対応座標点リストを参照して、その入力座標点がいずれかの出力座標点の補間に使用されるか否かを判断する。いずれかの出力座標点の補間に使用されると判断されると、その入力座標点の情報が合成処理部29に送られる。合成処理部29において、出力座標点(出力画像の画素)に対応させて当該入力座標点の画素データが記憶される。合成処理部29は、各出力座標点について、補間に必要な入力座標点が揃ったか否かを判断し、揃った出力座標点について補間処理を行い、キャッシュメモリ43に出力する。
FIG. 8 is a diagram for explaining the distortion correction processing of this embodiment. The pixel data of the input coordinate point of the original data is sequentially read out from the
キャッシュメモリ43はページ単位で出力座標点(出力画像の画素)を管理しており、出力座標点が満たされたページが発生した場合に、そのページのデータをバッファメモリ17に出力する。図8の例では、ページ2のデータがバッファメモリ17に出力される。キャッシュメモリ43において、バッファメモリ17に出力されたデータの領域は解放される。
The
このように本実施形態では、バッファメモリ17に対してページ単位で画素データが出力される。なお、図8の例では、2画素で1ページを構成しているが、さらに多くの画素で1ページを構成してもよい。
Thus, in this embodiment, pixel data is output to the
図9は、本実施形態の撮像装置による歪曲補正処理を示すフローチャートである。図9のフローチャートは、図4に示すフローチャートのステップに加えて、ステップS37とステップS38の間にさらにステップS37aとステップS37bを、また、ステップS34と終了の間にステップS40とステップS41を有する。 FIG. 9 is a flowchart illustrating distortion correction processing by the imaging apparatus according to the present embodiment. In addition to the steps of the flowchart shown in FIG. 4, the flowchart of FIG. 9 further includes steps S37a and S37b between step S37 and step S38, and steps S40 and S41 between steps S34 and S38.
本実施形態では、補間が完了した出力座標点(出力画像の画素)の画素データは合成処理部29からキャッシュメモリ43へ一旦出力される(S37a)、メモリコントローラ23は、キャッシュメモリ43において画素データが充足したページからそのページのデータをバッファメモリ17に出力する(S37b、S38)。また、バッファメモリ17から元データの全ての入力座標点x1についての読み出しが終了した場合(S34でYES)、一部の画素データのみを含み画素データが完全に充足していないページのデータをキャッシュメモリ43からバッファメモリ17に出力する(S40、S41)。
In this embodiment, the pixel data of the output coordinate point (pixel of the output image) for which interpolation has been completed is temporarily output from the
本実施形態では、補間後のデータをページ単位でバッファメモリ17に出力するため、実施の形態1の場合に比して、バッファメモリ17へのアクセス回数をより低減でき、処理速度をより向上することができる。
In this embodiment, since the interpolated data is output to the
実施の形態3
図10は、本発明のさらに別の実施形態の撮像装置の構成を示した図である。
撮像装置は、レンズ3と、光学情報を電気信号に変換する撮像素子であるCCD11と、アナログ信号をデジタル信号に変換するAD変換器13と、撮像装置の全体の動作を制御する画像処理回路15と、歪曲補正前後の画像データを一時的に格納するバッファメモリ17と、メモリーカード19を装着するカードスロット21とを備える。撮像装置はさらにフォーカス動作、ズーム動作においてレンズ3を移動させるためのモータ9を有する。
FIG. 10 is a diagram illustrating a configuration of an imaging apparatus according to still another embodiment of the present invention.
The imaging apparatus includes a
画像処理回路15は、画像処理回路15内の各処理部の動作を制御するメモリーコントローラ23と、画像情報に対しガンマ補正等の前処理を行う前処理部25と、YC処理を行うYC処理部27と、歪曲補正処理のための補間を行う合成処理部29と、画像に対して圧縮、伸張処理を行う圧縮伸張処理部31とを備える。画像処理回路15はさらに座標算出部33と、メモリ35と、倍率取得部37とを備える。なお、本実施形態では、メモリーコントローラ23、合成処理部29、座標算出部33及びメモリ35が補正処理部を構成する。
The
座標算出部33は歪曲補正のための逆写像f-1を算出する機能を有する。倍率取得部37はズーム倍率に関する情報をモータ9から取得する。メモリ35には逆写像f-1を算出するために必要な情報(種々の条件に対する逆写像f-1の関数に関する情報)が格納されている。
The coordinate
以上のように構成される撮像装置の動作を説明する。
撮像装置において、レンズ3を介して入力された光学情報はCCD11によりアナログ電気信号に変換される。AD変換器13はCCD11からのアナログ電気信号をデジタル信号の画像情報に変換する。画像処理回路15はAD変換器13からデジタル信号の画像情報を受け、所定の画像処理を行った後メモリーカード19に記録する。
The operation of the imaging apparatus configured as described above will be described.
In the imaging apparatus, optical information input through the
より具体的には、画像処理回路15においては、AD変換器13からの画像データに対して、前処理部25によりガンマ補正等の前処理が行われ、YC処理部27によりYC処理が行われる。それらの処理がなされた画像データはバッファメモリ17に格納される。
More specifically, in the
次に、合成処理部29と座標算出部33等により、バッファメモリ17に格納された画像データに対して歪曲補正がなされる。歪曲補正後の画像データは、再度バッファメモリ17に格納される。
Next, distortion correction is performed on the image data stored in the
次に、本実施形態の撮像装置による歪曲補正処理の詳細について説明する。
最初に、図11を参照し、本実施形態の撮像装置による歪曲補正処理の概要を説明する。本実施形態の歪曲補正処理では、出力データを構成する全画素を順にスキャンしながら、各画素毎に以下の処理を行う。
Next, details of distortion correction processing by the imaging apparatus of the present embodiment will be described.
First, an outline of distortion correction processing by the imaging apparatus of the present embodiment will be described with reference to FIG. In the distortion correction processing of the present embodiment, the following processing is performed for each pixel while sequentially scanning all the pixels constituting the output data.
出力データ上の一つの出力座標点xoに対して、逆写像f-1により元データの入力座標系上の対応点Pを求める。次に、対応点Pの画素データの値を、元データ上の対応点Pの近傍にある入力座標点の画素データを用いて補間することにより求める。そして、このようにして求めた対応点Pの画素データの値を出力座標点xoの画素データとする。 For one output coordinate point xo on the output data, a corresponding point P on the input coordinate system of the original data is obtained by inverse mapping f −1 . Next, the value of the pixel data of the corresponding point P is obtained by interpolating using the pixel data of the input coordinate point in the vicinity of the corresponding point P on the original data. Then, the pixel data value of the corresponding point P obtained in this way is set as the pixel data of the output coordinate point xo.
例えば図11において出力座標点x01の画素データは次のようにして求められる。出力座標点x01の逆写像f-1を算出し、元データ上の対応点P1(=f-1(x01))を求める。そして、対応点P1周辺にある入力座標点xa、xa+1、xb、xb+1の画素データを補間(合成)することで、対応点P1の画素データの値を求める。別の出力座標点x0mについても同様にして対応点Pmを求め、その対応点Pmの周辺にある入力座標点xm、xm+1、xk、xk+1を用いて補間することで対応点Pmの画素データを求める。 For example, in FIG. 11, the pixel data of the output coordinate point x01 is obtained as follows. The inverse map f −1 of the output coordinate point x01 is calculated, and the corresponding point P1 (= f −1 (x01)) on the original data is obtained. Then, by interpolating (combining) the pixel data of the input coordinate points xa, xa + 1, xb, xb + 1 around the corresponding point P1, the value of the pixel data of the corresponding point P1 is obtained. Similarly, the corresponding point Pm is obtained for another output coordinate point x0m, and interpolation is performed using the input coordinate points xm, xm + 1, xk, and xk + 1 around the corresponding point Pm. Obtain pixel data.
上記のような方法で画素データを求めた出力座標点x01、x0mは必ず出力座標系の格子点上にあるため、出力データにおいて位相が不連続となることはなく、不連続性に起因する画質の劣化を生じることはない。 Since the output coordinate points x01 and x0m for which the pixel data is obtained by the above method are always on the grid points of the output coordinate system, the phase does not become discontinuous in the output data, and the image quality caused by the discontinuity It will not cause any deterioration.
図12は、本実施形態の撮像装置による歪曲補正処理を示すフローチャートである。
CCD11で撮像された画像データは、前処理部25やYC処理部27により所定の処理がなされた後、バッファメモリ17に元データとして格納される(S11)。座標算出部33により、一つの出力座標点x0について逆写像点f-1(x0)が算出される(S12)。このとき、座標算出部33は、倍率取得部37からの倍率情報に基づきメモリ35に格納された変換情報から適切な逆写像関数f-1を取得する。
FIG. 12 is a flowchart illustrating distortion correction processing by the imaging apparatus according to the present embodiment.
The image data picked up by the
メモリーコントローラ23は、算出された逆写像点f-1(x0)を参照し、その逆写像点f-1(x0)の画素データを求めるための補間(合成)に使用する入力座標点の画素データをバッファメモリ17から取得する(S13)。例えば、逆写像点f-1(x0)が図11における逆写像点P1である場合、その周辺の入力座標点xa、xa+1、xb、xb+1の画素データを取得する。
メモリーコントローラ23は、求めた画素データを補間(合成)して逆写像点f-1(x0)の画素データを求める(S14)。このようにして補間により得られた画素データを、出力座標点x0についての歪曲補正後のデータとしてバッファメモリ17に記録する(S15)。
The
メモリーコントローラ23は、出力データの次の出力座標点について(S16、S17)、同様の処理を行う。出力データの全ての出力座標点について上記補正処理が実施されるまで上記の処理が繰り返される。なお、逆写像の際に、出力データは画像の左上端の出力座標点からライン毎に且つ同ライン中は左から順にスキャンされるものとする。以上のようにして歪曲補正後の画像データが得られる。
The
以上のように、本実施形態の撮像装置では、出力データの出力座標点に対応する元データ中の逆写像点を求め、その逆写像点近傍の画素データを用いて出力座標点の画素データを求める。このような方法で求められた画素データは必ず出力座標系の格子点上のものとなるため、出力データにおいて位相が不連続となることはなく、歪曲補正による劣化のない良質な画像が得られる。 As described above, in the imaging apparatus of the present embodiment, the inverse mapping point in the original data corresponding to the output coordinate point of the output data is obtained, and the pixel data of the output coordinate point is obtained using the pixel data in the vicinity of the inverse mapping point. Ask. Since the pixel data obtained by such a method is always on the grid points of the output coordinate system, the output data does not have a discontinuous phase, and a high-quality image without deterioration due to distortion correction can be obtained. .
実施の形態4
図13は、本発明のさらに別の実施形態の撮像装置の構成を示した図である。
本実施形態の撮像装置は、図10に示す構成に加えてラインメモリ45をさらに備えている。ラインメモリ45は所定ライン数分の入力画像(歪曲補正対象の画像)のデータを格納する。本実施形態では、ラインメモリ45は2ライン分の入力画像のデータを格納する。本実施形態の撮像装置の基本的な動作は前述の実施の形態のものと同様であるが、歪曲補正処理の内容が異なる。なお、本実施形態では、メモリーコントローラ23、合成処理部29、座標算出部33、メモリ35、ラインメモリ45が補正処理部を構成する。
FIG. 13 is a diagram illustrating a configuration of an imaging apparatus according to still another embodiment of the present invention.
The imaging apparatus according to the present embodiment further includes a
図14を参照し、本実施形態の撮像装置の歪曲補正処理の概要を説明する。
ラインメモリ45にはバッファメモリ17から読み出された元データの2ライン分のデータ(以下「入力ラインデータ」という。)が格納される。出力データを構成する全出力座標点(出力画像の画素)を順にスキャンしながら、各(出力座標点)毎に以下の処理を行う。
With reference to FIG. 14, an outline of distortion correction processing of the imaging apparatus of the present embodiment will be described.
The
出力データ上の一つの出力座標点xoに対して逆写像点f-1(x0)を求める。そして、このようにして求めた逆写像点f-1(x0)が、ラインメモリ45に格納された入力ラインデータが示す画像の領域(以下「入力ライン領域」という。)内に存在しているか否かを判断する。逆写像点f-1(x0)が入力ライン領域内に存在する場合、その逆写像点f-1(x0)の近傍にある、ラインメモリ45に格納された入力座標点の画素データの値を用いて補間(合成)して、逆写像点f-1(x0)における画素データの値を求める。このようにして求めた値を元の出力座標点x0の画素データとする。
An inverse mapping point f −1 (x0) is obtained for one output coordinate point xo on the output data. Whether or not the inverse mapping point f −1 (x0) obtained in this way exists in the area of the image indicated by the input line data stored in the line memory 45 (hereinafter referred to as “input line area”). Judge whether or not. When the inverse mapping point f −1 (x0) exists in the input line area, the pixel data value of the input coordinate point stored in the
ここで、逆写像点f-1(x0)が入力ライン領域外にあるときは、次の出力座標点に進む。ここで、次の出力座標点は、出力データにおいて補間(合成)済み領域を避けて、その領域に沿うように決定された経路に沿って順に定める。例えば、図15に示す場合、第1、第2ライン目の中央領域Rが補間済みであるため、破線Tで示すように領域Rの周囲を沿うような経路を定め、その経路に沿って出力座標点を順次進めていく。このように、補間済みの領域を沿うような経路に沿って補正対象の座標点を順に決定することで、既に処理済みの座標点についての二重の処理を回避できるため、無駄な処理を削減でき、処理効率を向上できる。 If the inverse mapping point f −1 (x0) is outside the input line area, the process proceeds to the next output coordinate point. Here, the next output coordinate point is determined in order along a path determined so as to avoid the interpolated (synthesized) area in the output data. For example, in the case shown in FIG. 15, since the center region R of the first and second lines has already been interpolated, a route along the periphery of the region R as shown by the broken line T is determined and output along that route. The coordinate points are advanced sequentially. In this way, by sequentially determining the coordinate points to be corrected along the path along the interpolated area, it is possible to avoid double processing for already processed coordinate points, thus reducing unnecessary processing. Processing efficiency can be improved.
以上のような方法で出力座標点を進めながら補間を実行していき、1ライン上の最後(画像の右端)の出力座標点の処理が終了したときに、ラインメモリ45内の入力ラインデータを1ライン分進める。なお、入力ラインデータを1ライン分進めるとは、ラインメモリ45に第mラインと第m+1ラインのデータが格納されている場合、第m+1ラインと第m+2ラインのデータに更新することである。
Interpolation is performed while advancing the output coordinate point in the above manner, and when the processing of the last output coordinate point on the line (the right end of the image) is completed, the input line data in the
本実施形態の撮像装置による歪曲補正処理の詳細について図16のフローチャートを用いて説明する。 Details of the distortion correction processing by the imaging apparatus of the present embodiment will be described with reference to the flowchart of FIG.
CCD11で撮像された画像データは、前処理部25やYC処理部27により所定の処理がなされた後、バッファメモリ17に元データとして格納される(S51)。次に、メモリコントローラ23により、元データの最初の2ライン分のデータが入力ラインデータとしてラインメモリ45に格納される(S52)。
The image data picked up by the
座標算出部33により、一つの出力座標点x0について逆写像点f-1(x0)が算出される(S53)。このとき、座標算出部33は、倍率取得部37からの倍率情報に基づきメモリ35に格納された変換情報から適切な逆写像関数f-1を取得する。
The coordinate
メモリーコントローラ23は算出された逆写像点f-1(x0)の垂直座標と、ラインメモリ45中に格納された入力ラインデータの垂直座標とが一致するか否かを判断する(S54)。すなわち、メモリーコントローラ23は、逆写像点f-1(x0)が入力ライン領域に存在するか否かを判断する。
The
両者の垂直座標が一致しなかったとき、すなわち、逆写像点f-1(x0)がラインメモリ45に格納された画素の領域外であったときは、次の出力座標点に進む(S59)。このとき、次の出力座標点は補間(合成)済み領域を沿うようにして決定される(図15参照)。例えば、出力座標点のうち補間(合成)済み領域を記憶しておき、新たな出力座標点に進む際に、補間(合成)済みかどうかを判断してもよい。また、未補間領域と既補間領域との境界が分かる情報を記憶しておき、その情報に基づいて、新たな出力座標点に進むようにしてもよい。例えば、未補間領域を走査していった場合に、未補間領域が下のラインへと変化する画素と対応付けて「DOWN」という情報を記憶し、未補間領域が上のラインへと変化する画素と対応付けて「UP」という情報を記憶しておく。そして、あるラインを走査する際に、そのラインの前のラインにおける「DOWN」及び「UP」の情報にしたがって、走査ラインを上下に変更しつつ新たな出力座標点に進むようにしてもよい。
When the vertical coordinates of the two do not match, that is, when the inverse mapping point f −1 (x0) is outside the pixel area stored in the
このようにして進めた出力座標点が出力画像の右端を超えた場合、ラインメモリ45に格納されている画像データのラインを1ライン分進める(S61)。すなわち、ラインメモリ45内の入力ラインデータを、第mラインと第m+1ライン目のデータから、第m+1ラインと第m+2ライン目のデータに更新する。その後、次の入力ラインデータについて、上記と同様の方法で逆写像点f-1(x0)がその入力ライン領域内に存在するか否かを判断する(S53〜S54)。
When the output coordinate point advanced in this way exceeds the right end of the output image, the line of the image data stored in the
逆写像点f-1(x0)が入力ライン領域内に存在するとき(S54でYES)、メモリーコントローラ23は、入力ラインデータ中の、逆写像点f-1(x0)近傍の画素の画素データを取得する(S55)。合成処理部29は、取得された画素データを用いて補間(合成)し、逆写像点f-1(x0)の画素データを求める(S56)。
When the inverse mapping point f -1 (x0) exists in the input line area (YES in S54), the
メモリーコントローラ23は、このようにして補間により得られた画素データを、出力座標点x0についての歪曲補正後のデータとしてバッファメモリ17に記録する(S57)。そして、補間(合成)済みの出力座標点の情報として、その出力座標点x0をメモリ35に記憶する(S58)。この記憶された情報を参照することで、メモリーコントローラ23はステップS59において、処理済みの出力座標点を避けて、次の出力座標点を決定することができる。
The
その後、次の出力座標点に進み(S59)、1画面分のデータに対する処理が終了するまで(S62)、各出力座標点について上記の処理を実行する。 Thereafter, the process proceeds to the next output coordinate point (S59), and the above-described processing is executed for each output coordinate point until the processing for the data for one screen is completed (S62).
図17を参照し、上記のフローに基づくラインメモリ45内の入力ラインデータの変化及び出力データにおける出力座標点の進行状況を具体例を挙げて説明する。今、図17(a)に示すように出力データ内の画像領域A、B、C、Dを考える。領域A、C、D内の出力座標点(出力画像の画素)は元データの第3、第4ライン目のデータを用いて補間処理が行われ、領域B内の出力座標点は元データの第1、第2ライン目のデータを用いて補間処理が行われるとする。なお、図17の出力データ中の矢印は処理対象となる出力座標点の進行方向を示す。この場合、本実施形態の歪曲補正処理は以下のように進行する。
With reference to FIG. 17, the change of the input line data in the
最初、図17(b)に示すように、ラインメモリ45には、入力ラインデータとして元データの第1,第2ラインのデータが格納されている。出力データにおいて、領域Aの左端の出力座標点(出力画像の画素)から順に逆写像点を求めていき(すなわち、走査していき)、逆写像点が入力ライン領域内にあるか否か判断する。領域Aは第3、第4ラインのデータを用いて補間処理が行われることから、出力画像に対する第1回目の走査時においては、領域Aの出力座標点の逆写像点は、入力ライン領域の範囲外にあり、よって補間処理はなされない。領域Bは、元データの第1、第2ラインのデータを用いて補間処理が行われることから、入力ライン領域の範囲内にあり、領域Bの出力座標点の補間処理がなされる。領域Aと同様に領域Cの出力座標点は補間処理がなされない。
First, as shown in FIG. 17B, the
第1回目の走査が終了すると、すなわち、出力データの第1ライン目の右端の出力座標点について上記の処理が終了すると、図17(c)に示すように入力ラインデータが1ライン分更新される。つまり、ラインメモリ45のデータが、元データの第2,第3ライン目のデータに更新される。そして、補間がなされていない出力座標点について逆写像点を求め、新たに更新されたラインメモリ45を参照しながら、補間処理を行う。このときの出力座標点のスキャン方向は、既に補間済みの画像領域(領域B)に沿うようにして決定される。すなわち、図17(c)の例では、第2回目の走査において、処理対象の出力座標点を領域A、D、Cと進める。第2回目の走査において、ラインメモリ45は元データの第2,第3ライン目のデータを格納するため、この時点においても、元データの第3、第4ライン目のデータを用いて補間処理が行われる領域A、C、Dの各出力座標点は補間されない。
When the first scan is completed, that is, when the above processing is completed for the output coordinate point at the right end of the first line of the output data, the input line data is updated by one line as shown in FIG. The That is, the data in the
第2回目の走査が終了すると、図17(d)に示すようにラインメモリ45の入力ラインデータが元データの第3,第4ライン目のデータに更新される。そして、第3回目の走査が行われる。第3回目の走査において、領域A、D、Cの各出力座標点の逆写像点はラインメモリ45に格納されるデータの画像範囲内にあるため、この時点で、領域A、D、Cの各出力座標点は補間される。
When the second scan is completed, as shown in FIG. 17D, the input line data in the
第3回目の走査が終了すると、すなわち、右端の領域Cの出力座標点の補間処理が終了すると、図17(e)に示すようにラインメモリ45のデータが元データの第4,第5ライン目のデータに更新され、以降、補間がなされていない出力座標点について同様の処理が行われる。
When the third scan is completed, that is, when the interpolation process of the output coordinate point of the rightmost region C is completed, the data in the
以上のように本実施形態では、出力データにおける各出力座標点x0の逆写像点f-1(x0)と、ラインメモリ45に読み出した入力ラインデータと比較し、その比較結果に基づき出座標点x0の補正処理の可否を判断する。
As described above, in this embodiment, the inverse mapping point f −1 (x0) of each output coordinate point x0 in the output data is compared with the input line data read to the
以上のように本実施形態の撮像装置によれば、歪曲補正処理において補間を行う際に、補間処理に必要なライン数だけ入力画像データを格納可能な容量のラインメモリを備えておけばよく、多数ライン分の入力画像データを格納しておく必要はない。よって、本実施形態の撮像装置によれば、ラインメモリ容量を削減でき、画像装置の構成の簡単化が図れる。 As described above, according to the imaging apparatus of the present embodiment, when performing interpolation in the distortion correction process, it is only necessary to have a line memory having a capacity capable of storing input image data for the number of lines necessary for the interpolation process. There is no need to store input image data for many lines. Therefore, according to the imaging apparatus of the present embodiment, the line memory capacity can be reduced, and the configuration of the image apparatus can be simplified.
また、従来例のように入力データの座標点を基準に、入力画素の出力座標における写像を求め、これらを線形補間して出力座標点の画素データを得る方法は、出力座標上に写像した入力座標が非線形に歪んでいるために近似値しか得られず、近似値と真値の間の誤差の極性が出力画像の画素間で反転する所では出力画像に不連続が生じる。しかし、本実施形態の撮像装置によれば、出力データの出力座標点に対応する元データ中の逆写像点を求め、その逆写像点近傍の画素データを用いて出力座標点の画素データを求めているので、この方法で求められた画素データは真の出力座標系の格子点上の画素となるため、出力データにおいて位相が不連続となることはなく、歪曲補正による劣化のない良質な画像が得られる。 Also, as in the prior art, the method of obtaining the mapping at the output coordinate of the input pixel with reference to the coordinate point of the input data and obtaining the pixel data of the output coordinate point by linearly interpolating these is the input mapped to the output coordinate Since the coordinates are distorted nonlinearly, only an approximate value can be obtained, and a discontinuity occurs in the output image where the polarity of the error between the approximate value and the true value is reversed between pixels of the output image. However, according to the imaging apparatus of this embodiment, the inverse mapping point in the original data corresponding to the output coordinate point of the output data is obtained, and the pixel data of the output coordinate point is obtained using the pixel data in the vicinity of the inverse mapping point. Therefore, since the pixel data obtained by this method is a pixel on the grid point of the true output coordinate system, the phase does not become discontinuous in the output data, and a high-quality image without deterioration due to distortion correction Is obtained.
なお、本実施形態のステップS54では、2ライン分の入力画素から出力画素を生成する例を説明した。すなわち、出力画素の逆写像点が入力画素の2ライン間に存在するかどうかを判断することによって、逆写像点f-1(x0)が入力ライン領域に存在するか否かを判断していた。しかし、本発明はこれには限られない。例えば、3ライン以上のラインの入力画素から出力画素を生成してもよい。また、入力画素の中間線±0.5ラインの中に逆写像点が存在するかどうかを判断することにより、逆写像点が入力ライン領域に存在するか否かを判断してもよい。 In step S54 of the present embodiment, an example in which output pixels are generated from input pixels for two lines has been described. That is, it is determined whether or not the reverse mapping point f −1 (x0) exists in the input line area by determining whether or not the reverse mapping point of the output pixel exists between the two lines of the input pixel. . However, the present invention is not limited to this. For example, output pixels may be generated from input pixels on three or more lines. Further, it may be determined whether or not a reverse mapping point exists in the input line area by determining whether or not a reverse mapping point exists in the intermediate line ± 0.5 line of the input pixel.
また、本実施形態において、実施の形態2と同様に、キャッシュメモリ43を設けてもよい。
In the present embodiment, a
本発明は、撮像素子を用いて画像を撮像する撮像装置であって、特にレンズ特性に起因する画像の歪みを電子的に補正する撮像装置に適用できる。 The present invention is an image pickup apparatus that picks up an image using an image pickup element, and is particularly applicable to an image pickup apparatus that electronically corrects image distortion caused by lens characteristics.
3 レンズ
9 モータ
11 CCD
13 AD変換器
15 コントローラ
17 バッファメモリ
19 メモリーカード
23 メモリーコントローラ
25 前処理部
27 YC処理部
29 合成処理部
31 圧縮伸張部
33 座標算出部
35 メモリ
37 倍率取得部
41 FIFOメモリ
43 キャッシュメモリ
45 ラインメモリ
S 被写体
3
13
Claims (9)
入力画像のデータを画素毎に走査順に順次読み込み、前記読み込んだ画素のデータを用いて出力画像の画素毎に補正処理を行う補正処理部を備え、
前記補正処理部は、
入力画像データの一部である所定ライン数分の入力画素のデータを一時的に記憶するラインメモリと、
ある出力画素のデータを生成するために必要な複数の入力画素のデータが前記ラインメモリに記憶されているかどうかを判断する制御部と、
前記制御部が前記出力画素のデータを生成するのに必要な複数の入力画素のデータが前記ラインメモリに記憶されていると判断した場合、それらの複数の入力画素のデータを合成することで前記補正処理を行う合成処理部とを含み、
前記所定ライン数は、一つの出力画素のデータを生成するために使用される複数の入力画素のそれぞれが位置するラインの数と等しい数であり、
前記補正処理部は、前記補正処理が完了した画素のデータを出力画像の走査順とは異なる順序で出力する、
ことを特徴とする画像処理装置。 An image processing apparatus that electronically corrects distortion of an input image and generates an output image,
A correction processing unit that sequentially reads input image data for each pixel in the scanning order, and performs correction processing for each pixel of the output image using the read pixel data,
The correction processing unit
A line memory that temporarily stores data of input pixels for a predetermined number of lines that are a part of the input image data;
A control unit that determines whether data of a plurality of input pixels necessary for generating data of a certain output pixel is stored in the line memory;
When the control unit determines that data of a plurality of input pixels necessary for generating the data of the output pixel is stored in the line memory, the data of the plurality of input pixels is synthesized to Including a synthesis processing unit that performs correction processing,
The predetermined number of lines is a number equal to the number of lines where each of a plurality of input pixels used to generate data of one output pixel is located,
The correction processing unit outputs pixel data for which the correction processing has been completed in an order different from the scanning order of the output image;
An image processing apparatus.
前記制御部は、前記座標算出部で求めた逆写像点に基づいて、前記複数の入力画素のデータが前記ラインメモリに記憶されているか否かを判断する、
ことを特徴とする請求項1記載の画像処理装置。 The correction processing unit further includes a coordinate calculation unit for obtaining a reverse mapping point on the input image corresponding to the pixel of the output image,
The control unit determines whether data of the plurality of input pixels is stored in the line memory based on the inverse mapping point obtained by the coordinate calculation unit.
The image processing apparatus according to claim 1 .
前記レンズを介して入力した光学情報を電気的な画像情報に変換する撮像素子と、
前記撮像素子で撮像された画像データの歪みを電子的に補正する請求項1ないし4のいずれか1つに記載の画像処理装置と
を備えた、ことを特徴とする撮像装置。 A lens,
An image sensor that converts optical information input through the lens into electrical image information;
Said an image processing apparatus according to distortion of the image data imaged in any one of claims 1 to 4 electronically corrected by the imaging device, an imaging apparatus, characterized in that.
入力画像のデータを画素毎に走査順に順次読み込むステップと、
出力画像の各画素のデータを求めるために、前記読み込んだ画素のデータを用いて出力画像の画素毎に補正処理を行うステップと、
前記補正処理が完了した画素のデータを、読み込み時の画素の順とは異なる順序で出力するステップと、
を含み、
前記補正処理を行うステップは、
入力画像データの一部である所定ライン数分の入力画素のデータをラインメモリに一時的に記憶し、
ある出力画素のデータを生成するために必要な複数の入力画素のデータが前記ラインメモリに記憶されているかどうかを判断し、
前記出力画素のデータを生成するのに必要な複数の入力画素のデータが前記ラインメモリに記憶されていると判断した場合、それらの複数の入力画素のデータを合成することで前記補正処理を行い、
前記所定ライン数は、一つの出力画素のデータを生成するために使用される複数の入力画素のそれぞれが位置するラインの数と等しい数である、
ことを特徴とする歪曲補正方法。 A distortion correction method for generating an output image by electronically correcting distortion of an input image,
Sequentially reading input image data for each pixel in scanning order;
Performing correction processing for each pixel of the output image using the read pixel data in order to obtain data of each pixel of the output image;
Outputting the pixel data for which the correction processing has been completed in an order different from the order of the pixels at the time of reading;
Including
The step of performing the correction process includes:
Data of input pixels for a predetermined number of lines, which is a part of input image data, are temporarily stored in a line memory,
Determining whether data of a plurality of input pixels necessary for generating data of a certain output pixel is stored in the line memory;
When it is determined that the data of a plurality of input pixels necessary for generating the data of the output pixels is stored in the line memory, the correction process is performed by combining the data of the plurality of input pixels. ,
The predetermined number of lines is equal to the number of lines in which each of a plurality of input pixels used to generate data of one output pixel is located.
A distortion correction method characterized by the above.
出力画像の画素に対応する入力画像上の逆写像点を求め、
前記求めた逆写像点に基づいて、前記複数の入力画素のデータが前記ラインメモリに記憶されているか否かを判断する、
ことを特徴とする請求項6記載の歪曲補正方法。 The step of performing the correction process includes:
Find the inverse mapping point on the input image corresponding to the pixel of the output image,
Determining whether data of the plurality of input pixels is stored in the line memory based on the obtained inverse mapping point;
The distortion correction method according to claim 6 .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007049281A JP4919836B2 (en) | 2006-03-01 | 2007-02-28 | Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006054943 | 2006-03-01 | ||
JP2006054943 | 2006-03-01 | ||
JP2007049281A JP4919836B2 (en) | 2006-03-01 | 2007-02-28 | Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007267379A JP2007267379A (en) | 2007-10-11 |
JP4919836B2 true JP4919836B2 (en) | 2012-04-18 |
Family
ID=38639850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007049281A Active JP4919836B2 (en) | 2006-03-01 | 2007-02-28 | Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4919836B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5593060B2 (en) * | 2009-11-26 | 2014-09-17 | 株式会社メガチップス | Image processing apparatus and method of operating image processing apparatus |
JP5602532B2 (en) | 2010-07-30 | 2014-10-08 | オリンパス株式会社 | Image processing apparatus and image processing method |
JP5299383B2 (en) | 2010-08-20 | 2013-09-25 | 株式会社Jvcケンウッド | Image correction apparatus and image correction method |
US9105090B2 (en) | 2011-07-13 | 2015-08-11 | Analog Devices, Inc. | Wide-angle lens image correction |
WO2013136458A1 (en) * | 2012-03-14 | 2013-09-19 | 富士機械製造株式会社 | Image correction processing device |
JP6076053B2 (en) * | 2012-11-21 | 2017-02-08 | 三菱電機株式会社 | Image interpolation device |
JP6373904B2 (en) * | 2016-07-07 | 2018-08-15 | 株式会社メガチップス | Data transfer apparatus and data transfer method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002056385A (en) * | 2000-08-08 | 2002-02-20 | Toyota Central Res & Dev Lab Inc | Image correcting method and image correcting device |
JP4700843B2 (en) * | 2001-06-13 | 2011-06-15 | キヤノン株式会社 | Camera system |
JP2003110790A (en) * | 2001-09-27 | 2003-04-11 | Canon Inc | Imaging device, image managing device, image managing system, method for controlling imaging device, method for managing image, recording medium and program |
-
2007
- 2007-02-28 JP JP2007049281A patent/JP4919836B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2007267379A (en) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8503817B2 (en) | Apparatus, method and imaging apparatus for correcting distortion of image data using interpolation | |
JP4446193B2 (en) | Image processing apparatus and method, and program | |
JP4919836B2 (en) | Image processing apparatus, image pickup apparatus, and image distortion correction method for correcting image distortion | |
JP4657367B2 (en) | Image processing apparatus, imaging apparatus, and image distortion correction method | |
JP4470930B2 (en) | Image processing apparatus, image processing method, and program | |
JP4487952B2 (en) | Camera device and monitoring system | |
JP4919978B2 (en) | Distortion correction device | |
EP2081375A2 (en) | Image processing system and camera including the same | |
US7499082B2 (en) | Distortion correction circuit for generating distortion-corrected image using data for uncorrected image | |
US8289420B2 (en) | Image processing device, camera device, image processing method, and program | |
JP2013218654A (en) | Image processing device | |
KR20190109196A (en) | Image processing device and image processing method | |
JPH11252431A (en) | Digital image-pickup device provided with distortion correction function | |
US20040001152A1 (en) | Digital image data correction apparatus, digital image data correction method and digital image pickup apparatus | |
JP2001186533A (en) | Image processing unit | |
JPH11250239A (en) | Digital image pickup device for operating distortion correction by yuv data | |
JP2005135096A (en) | Image processing method, image processing apparatus and program | |
JP4606218B2 (en) | Distortion correction device | |
JP4225241B2 (en) | Image display device | |
JPH11250240A (en) | Digital image pickup device for operating distortion correction by yuv data | |
JPWO2007108081A1 (en) | Imaging apparatus, imaging method and program, imaging apparatus table creation apparatus and method, video processing apparatus and method | |
JP5676233B2 (en) | Image processing apparatus, image processing method, and imaging apparatus | |
JP2010028758A (en) | Image processing apparatus and method, program, and imaging apparatus | |
JP2008235958A (en) | Imaging apparatus | |
JP6440465B2 (en) | Image processing apparatus, image processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091105 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110510 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110711 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120117 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120131 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4919836 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150210 Year of fee payment: 3 |