JP2008092602A - Image processor, camera system, and image processing method - Google Patents

Image processor, camera system, and image processing method Download PDF

Info

Publication number
JP2008092602A
JP2008092602A JP2007318820A JP2007318820A JP2008092602A JP 2008092602 A JP2008092602 A JP 2008092602A JP 2007318820 A JP2007318820 A JP 2007318820A JP 2007318820 A JP2007318820 A JP 2007318820A JP 2008092602 A JP2008092602 A JP 2008092602A
Authority
JP
Japan
Prior art keywords
image
correction
interpolation
horizontal
data
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.)
Granted
Application number
JP2007318820A
Other languages
Japanese (ja)
Other versions
JP4285575B2 (en
Inventor
Koji Aoyama
幸治 青山
Toru Kurata
徹 倉田
Atsushi Nose
敦 能勢
Jinko Wada
仁孝 和田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2007318820A priority Critical patent/JP4285575B2/en
Publication of JP2008092602A publication Critical patent/JP2008092602A/en
Application granted granted Critical
Publication of JP4285575B2 publication Critical patent/JP4285575B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processor, a camera system, and an image processing method for correcting distortion of the image at low cost, and for producing a high-quality image in real time. <P>SOLUTION: The image processor corrects a distorted original image. The processor is provided with a horizontal correction means for correcting the distortion of the original image in the horizontal direction by performing an interpolating calculation to the original image, by means of a horizontal correction parameter indicating a horizontal correction amount in a pixel point constituting the original image; and a vertical correction means for correcting the distortion in the vertical direction by performing the interpolating calculation to the image corrected through the horizontal correction means, by means of a vertical correction parameter indicating a vertical correction amount in the pixel point constituting the original image. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明はビデオカメラやデジタルスチルカメラ、銀塩カメラなどに用いられる画像処理装置とカメラシステム及び画像処理方法に関するものである。   The present invention relates to an image processing apparatus, a camera system, and an image processing method used for a video camera, a digital still camera, a silver salt camera, and the like.

従来より、ビデオカメラやデジタルスチルカメラ、あるいは銀塩カメラなどにより撮像された画像においては、撮像レンズの歪曲収差特性の影響により歪みが生じていた。ここで、高精度で高性能なレンズにおいて該歪みは目立たないが、コストが低いレンズを使用する場合や光学ズームレンズを使用する場合には、画歪みの影響を完全に回避することは難しい。   Conventionally, in an image captured by a video camera, a digital still camera, a silver salt camera, or the like, distortion has occurred due to the distortion aberration characteristic of the imaging lens. Here, the distortion is inconspicuous in a high-precision and high-performance lens, but it is difficult to completely avoid the influence of image distortion when using a low-cost lens or using an optical zoom lens.

そこで、近年、該歪みを信号処理により補正する画像処理装置が提案されてきている。図33は、従来における画像処理装置100の構成を示す。図33に示されるように従来の画像処理装置100は、レンズ200と撮像素子300、データ変換部400、信号処理部500、画像メモリ600、制御マイコン700、同期信号生成部800、補正データテーブル1010、記録部1100、再生部1200、及び表示系処理部1300とを備える。   Therefore, in recent years, an image processing apparatus that corrects the distortion by signal processing has been proposed. FIG. 33 shows a configuration of a conventional image processing apparatus 100. As shown in FIG. 33, the conventional image processing apparatus 100 includes a lens 200, an image sensor 300, a data conversion unit 400, a signal processing unit 500, an image memory 600, a control microcomputer 700, a synchronization signal generation unit 800, and a correction data table 1010. A recording unit 1100, a reproduction unit 1200, and a display system processing unit 1300.

ここで、図34のフローチャートを参照しつつ、上記画像処理装置100の動作の概要を説明する。まずステップS1では、レンズ200及び撮像素子300を介して被写体101に対するアナログ画像信号を入力する。そして、ステップS2ではデータ変換部400で該アナログ画像信号をデジタル画像信号に変換し、画像102を生成する。   Here, the outline of the operation of the image processing apparatus 100 will be described with reference to the flowchart of FIG. First, in step S <b> 1, an analog image signal for the subject 101 is input via the lens 200 and the image sensor 300. In step S2, the data conversion unit 400 converts the analog image signal into a digital image signal to generate an image 102.

次に、ステップS3において、信号処理部500は補正データテーブル1010に格納された歪み補正ベクトル(以下、単に「補正ベクトル」ともいう)を用いて歪んだ画像102に対し補正演算を施す。そして、ステップS4において、制御マイコン700は画像の入力を終了するか否かを判断し、終了しないと判断した場合にはステップS1へ戻る。   Next, in step S <b> 3, the signal processing unit 500 performs a correction operation on the distorted image 102 using a distortion correction vector (hereinafter also simply referred to as “correction vector”) stored in the correction data table 1010. In step S4, the control microcomputer 700 determines whether or not to end the input of the image. If it is determined not to end the process, the process returns to step S1.

以上が、図33に示された従来の画像処理装置100の動作の概要であるが、以下において該動作を詳しく説明する。   The above is the outline of the operation of the conventional image processing apparatus 100 shown in FIG. 33. The operation will be described in detail below.

レンズ200は被写体101からの反射光を集光して撮像素子300に写影する。また、撮像素子300はCCDやCMOSセンサなどから構成され、写影された映像をキャプチャーして、アナログの画像信号を生成する。また、データ変換部400は撮像素子300から供給された該アナログ信号をデジタルの画像信号に変換し、画像102を生成する。一方、制御マイコン700は外部のユーザインタフェースへの入力に応じて、所定の動作を命令するコマンドを発行する。   The lens 200 collects the reflected light from the subject 101 and projects it on the image sensor 300. The image sensor 300 is composed of a CCD, a CMOS sensor, or the like, and captures the projected video to generate an analog image signal. The data conversion unit 400 converts the analog signal supplied from the image sensor 300 into a digital image signal, and generates an image 102. On the other hand, the control microcomputer 700 issues a command for instructing a predetermined operation in response to an input to an external user interface.

また、信号処理部500は制御マイコン700から供給されたコマンドに応じてデータ変換部400により生成されたデジタル画像信号を画像メモリ600へ格納する。そして、信号処理部500は補正データテーブル1010に予め記録された全画素に対応する補正ベクトルを該テーブルから読み出し、該補正情報に応じて画像メモリ600から必要な画像信号を取得した後、該画像信号につき2次元補間方式による幾何学補正を実行することによって、データ変換部400から出力された画像102の歪みを補正する。   Further, the signal processing unit 500 stores the digital image signal generated by the data conversion unit 400 in the image memory 600 in accordance with the command supplied from the control microcomputer 700. Then, the signal processing unit 500 reads out correction vectors corresponding to all pixels recorded in advance in the correction data table 1010 from the table, obtains a necessary image signal from the image memory 600 according to the correction information, and then reads the image The distortion of the image 102 output from the data conversion unit 400 is corrected by executing geometric correction on the signal by a two-dimensional interpolation method.

ここで、信号処理部500において生成された画像信号は、表示系処理部1300へ供給されることにより該画像がモニタに表示され、あるいは記録部1100へ供給されることにより外部のテープやディスクあるいはメモリなどのメディア1400に記録される。また、メディア1400に記録された画像信号は、再生部1200により再生され、該再生信号が表示系処理部1300へ供給されることにより該再生画像がモニタに表示される。   Here, the image signal generated in the signal processing unit 500 is supplied to the display system processing unit 1300 so that the image is displayed on the monitor, or is supplied to the recording unit 1100 so that an external tape, disk, or the like is displayed. It is recorded on a medium 1400 such as a memory. The image signal recorded on the medium 1400 is reproduced by the reproduction unit 1200, and the reproduction signal is supplied to the display system processing unit 1300, whereby the reproduced image is displayed on the monitor.

なお、同期信号生成部800は、外部から供給されるクロック信号CLKに応じて内部同期信号を生成し、撮像素子300とデータ変換部400及び信号処理部10へ供給する。   The synchronization signal generation unit 800 generates an internal synchronization signal in accordance with a clock signal CLK supplied from the outside, and supplies the internal synchronization signal to the image sensor 300, the data conversion unit 400, and the signal processing unit 10.

図35は、図33に示された信号処理部500の構成を示すブロック図である。図35に示されるように、信号処理部500はタイミング制御部510と補間位相・入力データ座標計算部520、データ取得部530、補間係数生成部540、データ補間計算部550、出力データバッファ560、及びデータ書き込み部570とを含む。   FIG. 35 is a block diagram showing a configuration of the signal processing unit 500 shown in FIG. As shown in FIG. 35, the signal processing unit 500 includes a timing control unit 510, an interpolation phase / input data coordinate calculation unit 520, a data acquisition unit 530, an interpolation coefficient generation unit 540, a data interpolation calculation unit 550, an output data buffer 560, And a data writing unit 570.

ここで、データ書き込み部570はデータ変換部400から供給されたデジタル画像信号を書き込み制御信号Swと共に画像メモリ600へ供給し、画像メモリ600に対して該デジタル画像信号を格納させる。   Here, the data writing unit 570 supplies the digital image signal supplied from the data conversion unit 400 to the image memory 600 together with the write control signal Sw, and causes the image memory 600 to store the digital image signal.

また、タイミング制御部510は同期信号生成部800から供給された内部同期信号に応じて制御タイミング信号Stを生成し、補間位相・入力データ座標計算部520は供給された制御タイミング信号Stに応じて出力画像の座標を計算し、得られた座標に対する補正ベクトルを要求する補正ベクトル要求信号Saを補正データテーブル1010へ供給する。   The timing control unit 510 generates a control timing signal St according to the internal synchronization signal supplied from the synchronization signal generation unit 800, and the interpolation phase / input data coordinate calculation unit 520 corresponds to the supplied control timing signal St. The coordinates of the output image are calculated, and a correction vector request signal Sa for requesting a correction vector for the obtained coordinates is supplied to the correction data table 1010.

補正データテーブル1010は、内蔵する該テーブルにより補正ベクトル要求信号Saに応じた補正ベクトルを求め、データ取得部530及び補間係数生成部540へ供給する。データ取得部530は、読み出し制御信号Srを画像メモリ600へ供給することにより、補正データテーブル1010から出力された補正ベクトルの整数成分に応じた補間用データを画像メモリ600から取得する。なお、データ取得部530は取得した該補間用データをデータ補間計算部550へ供給する。   The correction data table 1010 obtains a correction vector corresponding to the correction vector request signal Sa from the built-in table and supplies the correction vector to the data acquisition unit 530 and the interpolation coefficient generation unit 540. The data acquisition unit 530 acquires the interpolation data corresponding to the integer component of the correction vector output from the correction data table 1010 from the image memory 600 by supplying the read control signal Sr to the image memory 600. The data acquisition unit 530 supplies the acquired interpolation data to the data interpolation calculation unit 550.

一方、補間係数生成部540は、補正データテーブル1010から供給された補正ベクトルの小数成分に応じて補間係数を生成し、データ補間計算部550へ供給する。そして、データ補間計算部550はデータ取得部530から供給された補間用データと、補間係数生成部540から供給された補間係数とに応じて補間演算を実行する。なお、該補間演算として2次元の補間演算が実行される。   On the other hand, the interpolation coefficient generation unit 540 generates an interpolation coefficient according to the decimal component of the correction vector supplied from the correction data table 1010 and supplies the generated interpolation coefficient to the data interpolation calculation unit 550. Then, the data interpolation calculation unit 550 performs an interpolation operation according to the interpolation data supplied from the data acquisition unit 530 and the interpolation coefficient supplied from the interpolation coefficient generation unit 540. Note that a two-dimensional interpolation calculation is executed as the interpolation calculation.

以下、2次元補間による画像変換を図36を参照しつつ説明する。図36(a)は2次元補間の前後における画像を示し、図36(b)は図36(a)の一部を拡大した図を示す。   Hereinafter, image conversion by two-dimensional interpolation will be described with reference to FIG. FIG. 36A shows images before and after the two-dimensional interpolation, and FIG. 36B shows an enlarged view of a part of FIG.

ここで、例えば図36(a)に示された点a1から点a4までを結ぶ矢印が出力画像であるとき、該出力画像を構成する点a1から点a4までに対応する画像102上の点は点A1から点A4までとする。従って、図36(a)では点A1から点A4までを結ぶ矢印からなる原画像が、2次元補間により点a1から点a4までを結ぶ出力画像に変換された場合が示される。   Here, for example, when an arrow connecting the points a1 to a4 shown in FIG. 36A is an output image, the points on the image 102 corresponding to the points a1 to a4 constituting the output image are Let it be point A1 to point A4. Therefore, FIG. 36 (a) shows a case where the original image composed of arrows connecting the points A1 to A4 is converted into an output image connecting the points a1 to a4 by two-dimensional interpolation.

このときx及びy方向においてそれぞれ2つ(2×2)の画像データを用いて出力画像の各点の画像を決定する場合には、例えば点A1を囲む4つの格子点K00,K01,K10,K11における画像データを用いて点a1の画像データが決定される。なお、点A2から点A4までについても同様な演算が実行されることにより、点a2から点a4の画像データが決定される。ここで、上記4つの格子点K00,K01,K10,K11は、補正データテーブル1010から出力された補正座標に応じて決定される。   At this time, when the image of each point of the output image is determined using two (2 × 2) image data in the x and y directions, for example, four grid points K00, K01, K10, The image data at the point a1 is determined using the image data at K11. Note that the same calculation is performed for the points A2 to A4, thereby determining the image data of the points a2 to a4. Here, the four grid points K00, K01, K10, and K11 are determined according to the correction coordinates output from the correction data table 1010.

また、図36(b)に示されるように、格子点K00と格子点K10との間、及び格子点K10と格子点K11との間の距離を共に1としたとき、x方向及びy方向における点A1の位置はそれぞれ小数パラメータPx,Pyにより特定される。このとき、点a1の画像データを算出する際に用いられる格子点K00,K01,K10,K11の各画像データの重み付け(補間係数)Cn(n=1〜4)は、補正データテーブル1010から供給される上記補正ベクトルの小数成分、すなわち該小数パラメータPx,Pyにより決定される。   As shown in FIG. 36 (b), when the distances between the lattice point K00 and the lattice point K10 and between the lattice point K10 and the lattice point K11 are 1, both in the x direction and the y direction. The position of the point A1 is specified by decimal parameters Px and Py, respectively. At this time, the weighting (interpolation coefficient) Cn (n = 1 to 4) of each image data of the grid points K00, K01, K10, and K11 used when calculating the image data of the point a1 is supplied from the correction data table 1010. Determined by the decimal component of the correction vector, that is, the decimal parameters Px and Py.

また、データ補間計算部550による補間演算の結果得られたデータは、出力データバッファ560に保持され、所定のタイミングで表示系処理部1300又は記録部1100へ出力される。   Further, data obtained as a result of the interpolation calculation by the data interpolation calculation unit 550 is held in the output data buffer 560 and is output to the display system processing unit 1300 or the recording unit 1100 at a predetermined timing.

ここで、従来のデータ補間計算部550は図37に示されるように構成される。なお、図37においては、x及びy方向にそれぞれ4つ並んだ(4×4)合計16個からなる画像データを用いて出力画像の各点の画像が決定される場合の構成が示される。   Here, the conventional data interpolation calculation unit 550 is configured as shown in FIG. FIG. 37 shows a configuration in which an image of each point of the output image is determined using image data consisting of a total of 16 pieces (4 × 4) arranged in the x and y directions.

図37に示されるように、従来のデータ補間計算部550は4つのラインメモリ900と、各ラインメモリ900の出力ノードにそれぞれ4つずつ直列接続された合計16個のレジスタ901と、各レジスタ901から出力された画像データと対応する補間係数CHn(n=00〜33)とをそれぞれ乗算する16個の乗算回路902と、該16個の乗算回路902により得られたデータを加算する加算回路904と、加算回路904により得られたデータを除算する除算回路905とを含む。   As shown in FIG. 37, the conventional data interpolation calculation unit 550 includes four line memories 900, a total of 16 registers 901 connected in series to the output nodes of each line memory 900, and each register 901. 16 multiplication circuits 902 for multiplying the image data outputted from the corresponding interpolation coefficient CHn (n = 00 to 33), respectively, and an addition circuit 904 for adding the data obtained by the 16 multiplication circuits 902 And a dividing circuit 905 that divides the data obtained by the adding circuit 904.

しかしながら、上記のような従来の画像処理装置によれば、リアルタイムに画像の歪みを補正することもできるが、全画素に対応する補正ベクトルを持つ必要があるために回路規模が大きくなり、コストがかかるという問題がある。   However, according to the conventional image processing apparatus as described above, it is possible to correct the distortion of the image in real time. However, since it is necessary to have a correction vector corresponding to all pixels, the circuit scale is increased and the cost is increased. There is a problem that it takes.

さらに、レンズ200の位置を変動させる場合やレンズ交換を行う場合には、該レンズの歪曲収差特性の変化に応じて補正ベクトルを更新する必要があるため、コストの高い大容量の補正データテーブル1010が必要となる。   Further, when the position of the lens 200 is changed or when the lens is exchanged, it is necessary to update the correction vector according to the change in the distortion aberration characteristic of the lens. Is required.

また、補正データテーブル1010の該更新は、ユーザインタフェースからの指示により制御マイコン700により実行されるが、制御マイコン700と補正データテーブル1010との間においては大きな通信容量が必要とされるため、制御マイコン700によるリアルタイム処理が困難になるという問題もある。   Further, the update of the correction data table 1010 is executed by the control microcomputer 700 according to an instruction from the user interface. However, since a large communication capacity is required between the control microcomputer 700 and the correction data table 1010, control is performed. There is also a problem that real-time processing by the microcomputer 700 becomes difficult.

なお、補正データテーブル1010を備える代わりに該補正ベクトルを逐次演算する方法もあるが、かかる方法ではいわゆるフレーム遅延のないリアルタイム処理が困難であり、リアルタイム処理を実現するためには大きなハードウェアが必要となってコストがかかるという問題がある。   In addition, there is a method of sequentially calculating the correction vector instead of providing the correction data table 1010. However, with this method, real-time processing without so-called frame delay is difficult, and a large amount of hardware is required to realize real-time processing. There is a problem that it becomes costly.

また、上記のように2次元補間では、1点の画像データを補正するために画像が形成される2次元平面上の複数の点における画像データが用いられるが、質の高い画像を得るためには多数の点における画像データが必要となるため、画像メモリ600に対するアクセス頻度が高くなり動作の高速化を図ることができないという問題がある。   Also, as described above, in two-dimensional interpolation, image data at a plurality of points on a two-dimensional plane on which an image is formed is used to correct one point of image data, but in order to obtain a high-quality image. Since image data at a number of points is necessary, there is a problem that the access frequency to the image memory 600 is high and the operation speed cannot be increased.

また、2次元補間を実行する場合には、画像メモリ600のポート幅が出力レートの数倍のバンド幅であることが必要となる。すなわち例えば、2次元補間において4画素の画像データから1画素の画像データを生成する場合には、該ポート幅は1画素のバンド幅の4倍であることが必要となる。   In addition, when performing two-dimensional interpolation, it is necessary that the port width of the image memory 600 has a bandwidth that is several times the output rate. That is, for example, when one pixel image data is generated from four pixel image data in two-dimensional interpolation, the port width needs to be four times the bandwidth of one pixel.

このように、2次元補間を実行する場合には該ポート幅に一定の条件が必要とされるため、高次タップ(「タップ」とは、画像処理の対象とされる一方向におけるデータ数を意味する)の高性能フィルタを用いることが非常に困難であることから、高画質な画像を得ることが難しいという問題がある。   Thus, when two-dimensional interpolation is performed, a certain condition is required for the port width. Therefore, a high-order tap (“tap” means the number of data in one direction to be subjected to image processing. This means that it is very difficult to use a high-performance filter.

本発明は上記のような問題を解消するためになされたもので、低コストで画像の歪みを補正し、高品質な画像をリアルタイムに生成するための画像処理装置とカメラシステム及び画像処理方法を提供することを目的とする。   The present invention has been made to solve the above-described problems. An image processing apparatus, a camera system, and an image processing method for correcting image distortion at low cost and generating a high-quality image in real time are provided. The purpose is to provide.

本発明は、歪みを持った原画像を補正する画像処理装置であって、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と、前記水平補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段とを備えたことを特徴とする。   The present invention is an image processing apparatus that corrects a distorted original image, and performs an interpolation operation on the original image using a horizontal correction parameter that indicates a correction amount in a horizontal direction at a pixel point constituting the original image. By applying the correction, a horizontal correction unit that corrects distortion in the horizontal direction of the original image, and an amount of correction in the vertical direction at the pixel points constituting the original image with respect to the image obtained by the correction by the horizontal correction unit are shown. And a vertical correction unit that corrects distortion in the vertical direction of the original image by performing an interpolation calculation using a vertical correction parameter.

好適には、前記水平補正手段は、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することによって、前記原画像を水平方向において伸縮すると共に、前記垂直補正手段は、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することによって、前記原画像を垂直方向において伸縮する。   Preferably, the horizontal correction unit expands or contracts the original image in the horizontal direction by adjusting a horizontal interval between pixel points for which image data is obtained by the interpolation calculation, and the vertical correction unit performs the interpolation. The original image is expanded or contracted in the vertical direction by adjusting the interval in the vertical direction of pixel points for which image data is obtained by calculation.

好ましくは、前記水平補正手段は、前記水平補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第一データ取得手段と、前記水平補正パラメータの小数成分に応じて補間係数を生成する第一補間係数生成手段と、前記第一データ取得手段により取得された前記画像データと、前記第一補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第一補間演算手段とを含み、前記垂直補正手段は、前記垂直補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第二データ取得手段と、前記垂直補正パラメータの小数成分に応じて補間係数を生成する第二補間係数生成手段と、前記第二データ取得手段により取得された前記画像データと、前記第二補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第二補間演算手段とを含む。   Preferably, the horizontal correction means includes first data acquisition means for selectively acquiring image data at the pixel point according to an integer component of the horizontal correction parameter, and an interpolation coefficient according to a decimal component of the horizontal correction parameter. The interpolation calculation is performed using the first interpolation coefficient generation means for generating the image data, the image data acquired by the first data acquisition means, and the interpolation coefficient generated by the first interpolation coefficient generation means. First interpolation calculation means, wherein the vertical correction means selectively acquires image data at the pixel point according to an integer component of the vertical correction parameter, and a decimal number of the vertical correction parameter. Second interpolation coefficient generation means for generating an interpolation coefficient according to the component; the image data acquired by the second data acquisition means; and the second interpolation. And a second interpolation operation means for performing the interpolation calculation using said interpolation coefficients generated by the number generator.

好ましくは、前記水平補正手段による補正により得られた水平補正画像を記憶する記憶手段をさらに備え、前記垂直補正手段は、前記記憶手段から前記垂直補正パラメータに応じた前記水平補正画像を取得するデータ取得手段と、前記データ取得手段により取得された前記水平補正画像に対して、前記垂直補正パラメータを用いた補間演算を施す補間演算手段とを含む。   Preferably, the apparatus further comprises storage means for storing a horizontal correction image obtained by correction by the horizontal correction means, and the vertical correction means obtains the horizontal correction image according to the vertical correction parameter from the storage means. Acquisition means, and interpolation calculation means for performing interpolation calculation using the vertical correction parameter for the horizontal correction image acquired by the data acquisition means.

好ましくは、前記水平補正手段は、補間演算を施すことにより、前記原画像の水平方向における歪みを補正し、前記垂直補正手段は、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する。   Preferably, the horizontal correction unit corrects distortion in the horizontal direction of the original image by performing an interpolation calculation, and the vertical correction unit corrects distortion in the vertical direction of the original image by performing an interpolation calculation. to correct.

また本発明は、歪みを持った原画像を補正する画像処理装置であって、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を前記原画像に対して施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と、前記垂直補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段とを備えたことを特徴とする。   The present invention is also an image processing apparatus for correcting an original image having distortion, and performing an interpolation operation using a vertical correction parameter indicating a correction amount in a vertical direction at a pixel point constituting the original image on the original image. And a vertical correction unit for correcting distortion in the vertical direction of the original image, and a horizontal correction amount at pixel points constituting the original image with respect to the image obtained by the correction by the vertical correction unit. And a horizontal correction means for correcting distortion in the horizontal direction of the original image by performing an interpolation calculation using a horizontal correction parameter indicating.

好適には、前記垂直補正手段は、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することによって、前記原画像を垂直方向において伸縮すると共に、前記水平補正手段は、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することによって、前記原画像を水平方向において伸縮する。   Preferably, the vertical correction unit expands or contracts the original image in the vertical direction by adjusting a vertical interval between pixel points for which image data is obtained by the interpolation calculation, and the horizontal correction unit includes the interpolation The original image is expanded and contracted in the horizontal direction by adjusting the horizontal interval between pixel points for which image data is obtained by calculation.

好ましくは、前記垂直補正手段は、前記垂直補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第一データ取得手段と、前記垂直補正パラメータの小数成分に応じて補間係数を生成する第一補間係数生成手段と、前記第一データ取得手段により取得された前記画像データと、前記第一補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第一補間演算手段とを含み、前記水平補正手段は、前記水平補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第二データ取得手段と、前記水平補正パラメータの小数成分に応じて補間係数を生成する第二補間係数生成手段と、前記第二データ取得手段により取得された前記画像データと、前記第二補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第二補間演算手段とを含む。   Preferably, the vertical correction means includes first data acquisition means for selectively acquiring image data at the pixel point according to an integer component of the vertical correction parameter, and an interpolation coefficient according to a decimal component of the vertical correction parameter. The interpolation calculation is performed using the first interpolation coefficient generation means for generating the image data, the image data acquired by the first data acquisition means, and the interpolation coefficient generated by the first interpolation coefficient generation means. First correction calculation means, wherein the horizontal correction means selectively acquires image data at the pixel point according to an integer component of the horizontal correction parameter, and a decimal number of the horizontal correction parameter. Second interpolation coefficient generation means for generating an interpolation coefficient according to the component; the image data acquired by the second data acquisition means; and the second interpolation. And a second interpolation operation means for performing the interpolation calculation using said interpolation coefficients generated by the number generator.

好ましくは、前記垂直補正手段による補正により得られた垂直補正画像を記憶する記憶手段をさらに備え、前記水平補正手段は、前記記憶手段から前記水平補正パラメータに応じた前記垂直補正画像を取得するデータ取得手段と、前記データ取得手段により取得された前記垂直補正画像に対して、前記水平補正パラメータを用いた補間演算を施す補間演算手段とを含む。   Preferably, the apparatus further comprises storage means for storing a vertical correction image obtained by correction by the vertical correction means, and the horizontal correction means obtains the vertical correction image according to the horizontal correction parameter from the storage means. Acquisition means, and interpolation calculation means for performing interpolation calculation using the horizontal correction parameter for the vertical correction image acquired by the data acquisition means.

好ましくは、前記垂直補正手段は、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正し、前記水平補正手段は、補間演算を施すことにより、前記原画像の水平方向における歪みを補正する。   Preferably, the vertical correction unit corrects distortion in the vertical direction of the original image by performing an interpolation calculation, and the horizontal correction unit corrects distortion in the horizontal direction of the original image by performing an interpolation calculation. to correct.

また本発明は、被写体からの光を集光するレンズと、前記レンズからの射影光より撮像画像信号を生成する撮像素子と、前記撮像素子からの撮像画像信号をデジタル画像信号に変換するデータ変換回路と、前記データ変換回路からのデジタル画像信号を信号処理して記録画像データを生成する信号処理回路と、前記信号処理回路からの記録画像データを記録する記録部とを含むカメラシステムであって、前記信号処理回路は、レンズ歪みを持った原画像を補正する画像補正手段を具備し、前記画像補正手段は、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と、前記水平補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段とを備えたことを特徴とする。   The present invention also provides a lens that collects light from a subject, an image sensor that generates a captured image signal from projection light from the lens, and data conversion that converts the captured image signal from the image sensor into a digital image signal. A camera system comprising: a circuit; a signal processing circuit that generates a recording image data by processing a digital image signal from the data conversion circuit; and a recording unit that records the recording image data from the signal processing circuit. The signal processing circuit includes image correction means for correcting an original image having lens distortion, and the image correction means has a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image. A horizontal correction means for correcting distortion in the horizontal direction of the original image by performing an interpolation operation on the original image, and a correction by the horizontal correction means. A vertical correction for correcting distortion in the vertical direction of the original image by performing an interpolation operation using a vertical correction parameter indicating a correction amount in the vertical direction at the pixel points constituting the original image on the obtained image Means.

また本発明は、被写体からの光を集光するレンズと、前記レンズからの射影光より撮像画像信号を生成する撮像素子と、前記撮像素子からの撮像画像信号をデジタル画像信号に変換するデータ変換回路と、前記データ変換回路からのデジタル画像信号を信号処理して記録画像データを生成する信号処理回路と、前記信号処理回路からの記録画像データを記録する記録部とを含むカメラシステムであって、前記信号処理回路は、レンズ歪みを持った原画像を補正する画像補正手段を具備し、前記画像補正手段は、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と、前記垂直補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段とを備えたことを特徴とする。   The present invention also provides a lens that collects light from a subject, an image sensor that generates a captured image signal from projection light from the lens, and data conversion that converts the captured image signal from the image sensor into a digital image signal. A camera system comprising: a circuit; a signal processing circuit that generates a recording image data by processing a digital image signal from the data conversion circuit; and a recording unit that records the recording image data from the signal processing circuit. The signal processing circuit includes image correction means for correcting an original image having lens distortion, and the image correction means has a vertical correction parameter indicating a correction amount in a vertical direction at a pixel point constituting the original image. A vertical correction unit that corrects distortion in the vertical direction of the original image by performing an interpolation operation on the original image, and a correction by the vertical correction unit. A horizontal correction for correcting distortion in the horizontal direction of the original image by performing an interpolation operation using a horizontal correction parameter indicating a horizontal correction amount at pixel points constituting the original image on the obtained image Means.

また本発明は、歪みを持った原画像を補正する画像処理方法であって、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する第一のステップと、前記第一のステップにおいて得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する第二のステップとを有することを特徴とする。   The present invention is also an image processing method for correcting a distorted original image, wherein an interpolation operation is performed on the original image using a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image. The first step of correcting distortion in the horizontal direction of the original image, and the vertical correction amount at the pixel points constituting the original image with respect to the image obtained in the first step. And a second step of correcting distortion in the vertical direction of the original image by performing an interpolation calculation using the vertical correction parameter shown.

好適には、少なくとも前記第一のステップにおいて、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することにより前記原画像を水平方向において伸縮し、または前記第二のステップにおいて、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することにより前記原画像を垂直方向において伸縮する。   Preferably, at least in the first step, the original image is expanded or contracted in the horizontal direction by adjusting an interval in a horizontal direction between pixel points for which image data is obtained by the interpolation operation, or in the second step, The original image is expanded and contracted in the vertical direction by adjusting the interval in the vertical direction of pixel points for which image data is obtained by the interpolation calculation.

好ましくは、前記第一のステップにおける補正により得られた水平補正画像を記憶手段に記憶させるステップをさらに備え、前記第二のステップは、前記記憶手段から前記垂直補正パラメータに応じた前記水平補正画像を取得するデータ取得ステップと、前記データ取得ステップにおいて取得された前記水平補正画像に対して、前記垂直補正パラメータを用いた補間演算を施す補間演算ステップとを含む。   Preferably, the method further includes a step of storing a horizontal correction image obtained by the correction in the first step in a storage unit, and the second step includes the step of storing the horizontal correction image according to the vertical correction parameter from the storage unit. And a data acquisition step for performing an interpolation operation using the vertical correction parameter on the horizontal correction image acquired in the data acquisition step.

好ましくは、前記第一のステップは、補間演算を施すことにより、前記原画像の水平方向における歪みを補正し、前記第二のステップは、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する。   Preferably, the first step corrects a distortion in the horizontal direction of the original image by performing an interpolation operation, and the second step performs an interpolation operation in the vertical direction of the original image. Correct distortion.

また本発明は、歪みを持った原画像を補正する画像処理方法であって、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する第一のステップと、前記第一のステップにおいて得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する第二のステップとを有することを特徴とする。   The present invention is also an image processing method for correcting a distorted original image, wherein an interpolation operation is performed on the original image using a vertical correction parameter indicating a correction amount in a vertical direction at a pixel point constituting the original image. By performing the first step of correcting distortion in the vertical direction of the original image, and with respect to the image obtained in the first step, the horizontal correction amount at the pixel points constituting the original image is set. And a second step of correcting distortion in the horizontal direction of the original image by performing an interpolation operation using the horizontal correction parameter shown.

好適には、少なくとも前記第一のステップにおいて、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することにより前記原画像を垂直方向において伸縮し、または前記第二のステップにおいて、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することにより前記原画像を水平方向において伸縮する。   Preferably, at least in the first step, the original image is expanded or contracted in the vertical direction by adjusting an interval in a vertical direction of pixel points for which image data is obtained by the interpolation operation, or in the second step, The original image is expanded or contracted in the horizontal direction by adjusting the horizontal interval between pixel points for which image data is obtained by the interpolation calculation.

好ましくは、前記第一のステップにおける補正により得られた垂直補正画像を記憶手段に記憶させるステップをさらに備え、前記第二のステップは、前記記憶手段から前記水平補正パラメータに応じた前記垂直補正画像を取得するデータ取得ステップと、前記データ取得ステップにおいて取得された前記垂直補正画像に対して、前記水平補正パラメータを用いた補間演算を施す補間演算ステップとを含む。   Preferably, the method further comprises a step of storing a vertical correction image obtained by the correction in the first step in a storage unit, wherein the second step includes the vertical correction image corresponding to the horizontal correction parameter from the storage unit. And a data acquisition step for performing an interpolation operation using the horizontal correction parameter for the vertical correction image acquired in the data acquisition step.

好ましくは、前記第一のステップは、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正し、前記第二のステップは、補間演算を施すことにより、前記原画像の水平方向における歪みを補正する。   Preferably, the first step corrects a distortion in the vertical direction of the original image by performing an interpolation operation, and the second step performs an interpolation operation in the horizontal direction of the original image. Correct distortion.

本発明に係る画像処理装置とカメラシステム及び画像処理方法によれば、低コストでリアルタイムに原画像の歪みを補正することができるため、高品質な画像を容易に得ることができる。   According to the image processing apparatus, the camera system, and the image processing method according to the present invention, the distortion of the original image can be corrected in real time at a low cost, so that a high-quality image can be easily obtained.

以下において、本発明の実施の形態を図面を参照しつつ詳しく説明する。なお、図中同一符号は同一または相当部分を示す。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same reference numerals indicate the same or corresponding parts.

図1は、本発明の実施の形態に係る画像処理システムの構成を示すブロック図である。図1に示されるように、本発明の実施の形態に係る画像処理システムは画像処理装置2と前処理装置3及びメディア1400を備え、画像処理装置2はレンズ200と撮像素子300、データ変換部400、信号処理部10、画像メモリ7、制御マイコン8、補正パラメータデコーダ9、同期信号生成部800、記録部1100、再生部1200、及び表示系処理部1300とを含み、前処理装置3は補正パラメータエンコーダ5と補正パラメータ導出部6とを含む。   FIG. 1 is a block diagram showing a configuration of an image processing system according to an embodiment of the present invention. As shown in FIG. 1, an image processing system according to an embodiment of the present invention includes an image processing device 2, a preprocessing device 3, and a medium 1400. The image processing device 2 includes a lens 200, an image sensor 300, and a data conversion unit. 400, a signal processing unit 10, an image memory 7, a control microcomputer 8, a correction parameter decoder 9, a synchronization signal generation unit 800, a recording unit 1100, a reproduction unit 1200, and a display system processing unit 1300. A parameter encoder 5 and a correction parameter derivation unit 6 are included.

ここで、レンズ200は被写体101からの反射光を集光して撮像素子300に写影するものであって、単焦点のレンズにとどまらずズーム機能を有するものであっても良い。また、撮像素子300はCCDやCMOSセンサなどから構成され、同期信号生成部800から供給された内部同期信号に応じて、写影された映像をキャプチャーしアナログ画像信号を生成する。   Here, the lens 200 condenses the reflected light from the subject 101 and projects it on the image sensor 300, and may have a zoom function as well as a single focus lens. In addition, the image pickup device 300 is configured by a CCD, a CMOS sensor, or the like, and captures a projected video and generates an analog image signal in accordance with an internal synchronization signal supplied from the synchronization signal generation unit 800.

データ変換部400は撮像素子300に接続され、同期信号生成部800から供給された内部同期信号に応じて、撮像素子300により生成されたアナログ画像信号をデジタル画像信号に変換し画像102を生成する。   The data conversion unit 400 is connected to the image sensor 300 and converts the analog image signal generated by the image sensor 300 into a digital image signal in accordance with the internal synchronization signal supplied from the synchronization signal generation unit 800 to generate the image 102. .

信号処理部10は、制御マイコン8とデータ変換部400、画像メモリ7、補正パラメータデコーダ9及び同期信号生成部800に接続される。そして、信号処理部10は、制御マイコン8から供給されたコマンドに応じて、データ変換部400から供給されるデジタル画像信号を画像メモリ7へ格納すると共に、補正パラメータデコーダ9から供給される補正量パラメータによって格納された該画像信号に対する補正処理を実行する。そして、信号処理部10は、該補正により得られた画像信号を表示系処理部1300及び記録部1100へ供給する。なお、信号処理部10については後に詳しく説明する。   The signal processing unit 10 is connected to the control microcomputer 8, the data conversion unit 400, the image memory 7, the correction parameter decoder 9, and the synchronization signal generation unit 800. The signal processing unit 10 stores the digital image signal supplied from the data conversion unit 400 in the image memory 7 in accordance with the command supplied from the control microcomputer 8 and the correction amount supplied from the correction parameter decoder 9. Correction processing for the image signal stored by the parameter is executed. Then, the signal processing unit 10 supplies the image signal obtained by the correction to the display system processing unit 1300 and the recording unit 1100. The signal processing unit 10 will be described in detail later.

一方、補正パラメータ導出部6は、レンズ200の歪曲収差に関するデータなどから、全画素の各位置に応じた補正量ベクトルを予め計算する。また、補正パラメータエンコーダ5は補正パラメータ導出部6及びユーザインタフェースに接続され、ユーザインタフェースから供給された制御信号Ln,Lwに応じて、補正パラメータ導出部6から供給された補正量ベクトルを圧縮(エンコード)し、該圧縮データPcを補正パラメータデコーダ9へ供給する。   On the other hand, the correction parameter deriving unit 6 calculates in advance a correction amount vector corresponding to each position of all pixels from data relating to the distortion aberration of the lens 200. The correction parameter encoder 5 is connected to the correction parameter deriving unit 6 and the user interface, and compresses (encodes) the correction amount vector supplied from the correction parameter deriving unit 6 in accordance with the control signals Ln and Lw supplied from the user interface. The compressed data Pc is supplied to the correction parameter decoder 9.

なお、補正パラメータ導出部6における演算及び上記エンコードは、共に非常に負荷の大きな演算となるが、別途パーソナルコンピュータ等を用いて計算すればよく、画像処理装置2によるリアルタイム処理に影響を与えるものでない。   Note that the calculation in the correction parameter deriving unit 6 and the above encoding are both operations with a very large load, but may be calculated using a separate personal computer or the like, and do not affect the real-time processing by the image processing apparatus 2. .

また、本発明の実施の形態に係る画像処理システムでは、前処理装置3は必須の構成要素とされず、画像処理装置2の外から上記圧縮データPcが補正パラメータデコーダ9へ供給される種々の実施の形態が同様に考えられる。   Further, in the image processing system according to the embodiment of the present invention, the preprocessing device 3 is not an essential component, and the compressed data Pc is supplied to the correction parameter decoder 9 from outside the image processing device 2. Embodiments are conceivable as well.

また、制御マイコン8はユーザインタフェースからの制御信号に応じて、所定の動作を命令するコマンド等を信号処理部10へ出力すると共に、レンズ200の位置情報などを補正パラメータデコーダ9へ供給する。   The control microcomputer 8 outputs a command or the like for instructing a predetermined operation to the signal processing unit 10 in accordance with a control signal from the user interface, and supplies the position information of the lens 200 to the correction parameter decoder 9.

補正パラメータデコーダ9は、補正パラメータエンコーダ5と制御マイコン8及び信号処理部10に接続される。そして、補正パラメータデコーダ9は、制御マイコン8から供給された情報等に応じて、補正パラメータエンコーダ5から供給されたエンコードされた圧縮データPcを各画素に対応した補正量パラメータに伸長(デコード)し、該補正量パラメータを信号処理部10へ供給する。   The correction parameter decoder 9 is connected to the correction parameter encoder 5, the control microcomputer 8, and the signal processing unit 10. Then, the correction parameter decoder 9 expands (decodes) the encoded compressed data Pc supplied from the correction parameter encoder 5 into a correction amount parameter corresponding to each pixel in accordance with the information supplied from the control microcomputer 8. The correction amount parameter is supplied to the signal processing unit 10.

ここで、補正パラメータデコーダ9は、信号処理部10において実行される補間方式によらず、上記補正量パラメータを信号処理部10へ供給する。なお、上記補正パラメータエンコーダ5及び補正パラメータデコーダ9については、後に詳しく説明する。   Here, the correction parameter decoder 9 supplies the correction amount parameter to the signal processing unit 10 regardless of the interpolation method executed in the signal processing unit 10. The correction parameter encoder 5 and the correction parameter decoder 9 will be described in detail later.

また、記録部1100は信号処理部10に接続され、信号処理部10により生成された画像信号をテープやフレキシブルディスク、DVD(デジタル多用途ディスク)、ハードディスク、メモリなどのメディア(記録媒体)1400に記録する。なお、信号処理部10により生成された画像信号は、インターネットやワイヤレス通信等を用いてメディア1400に記録されるようにすることもできる。   The recording unit 1100 is connected to the signal processing unit 10, and the image signal generated by the signal processing unit 10 is transferred to a medium (recording medium) 1400 such as a tape, a flexible disk, a DVD (digital versatile disk), a hard disk, or a memory. Record. The image signal generated by the signal processing unit 10 can be recorded on the medium 1400 using the Internet, wireless communication, or the like.

また、再生部1200はメディア1400に接続され、メディア1400に格納された画像信号を再生して表示系処理部1300へ供給する。表示系処理部1300は信号処理部10及び再生部1200に接続され、信号処理部10又は再生部1200から供給された画像信号をモニタに表示する。   Further, the playback unit 1200 is connected to the medium 1400, plays back an image signal stored in the medium 1400, and supplies the image signal to the display system processing unit 1300. The display system processing unit 1300 is connected to the signal processing unit 10 and the reproduction unit 1200, and displays the image signal supplied from the signal processing unit 10 or the reproduction unit 1200 on a monitor.

なお、同期信号生成部800は外部から供給されたクロック信号CLKに応じて内部同期信号を生成し、撮像素子300とデータ変換部400及び信号処理部10へ供給する。   The synchronization signal generation unit 800 generates an internal synchronization signal according to the clock signal CLK supplied from the outside, and supplies the internal synchronization signal to the image sensor 300, the data conversion unit 400, and the signal processing unit 10.

図2は、図1に示された信号処理部10の構成を示すブロック図である。図2に示されるように、信号処理部10は水平1次元補間部501と垂直1次元補間部502とを含む。なお、画像メモリ7は水平処理用FIFOメモリからなる画像メモリ601と垂直処理用ラインバッファからなる画像メモリ602とを含み、補正パラメータデコーダ9はx方向用の画歪補正パラメータデコーダ33とy方向用の画歪補正パラメータデコーダ34とを含む。   FIG. 2 is a block diagram showing a configuration of the signal processing unit 10 shown in FIG. As shown in FIG. 2, the signal processing unit 10 includes a horizontal one-dimensional interpolation unit 501 and a vertical one-dimensional interpolation unit 502. The image memory 7 includes an image memory 601 composed of a horizontal processing FIFO memory and an image memory 602 composed of a vertical processing line buffer. The correction parameter decoder 9 includes an image distortion correction parameter decoder 33 for x direction and an image memory 602 for y direction. Image distortion correction parameter decoder 34.

なお、画像メモリ602は垂直方向の歪み補正を実現するために必要な最小限のライン数分に渡るデータを格納できるだけの容量を有するものとされるが、この点については後述する。また、通常上記容量は、出力データバッファ32に供給される出力同期信号の周波数に応じて決定される。   Note that the image memory 602 has a capacity sufficient to store data for a minimum number of lines necessary to realize vertical distortion correction, which will be described later. The capacity is generally determined according to the frequency of the output synchronization signal supplied to the output data buffer 32.

そして、水平1次元補間部501はデータ書き込み部21と演算制御部22、補間位相・入力データ座標計算部23、データ取得部24、補間係数生成部25、及びデータ補間計算部26を含み、垂直1次元補間部502は演算制御部27と補間位相・入力データ座標計算部28、データ取得部29、補間係数生成部30、データ補間計算部31、及び出力データバッファ32を含む。   The horizontal one-dimensional interpolation unit 501 includes a data writing unit 21, an operation control unit 22, an interpolation phase / input data coordinate calculation unit 23, a data acquisition unit 24, an interpolation coefficient generation unit 25, and a data interpolation calculation unit 26. The one-dimensional interpolation unit 502 includes an arithmetic control unit 27, an interpolation phase / input data coordinate calculation unit 28, a data acquisition unit 29, an interpolation coefficient generation unit 30, a data interpolation calculation unit 31, and an output data buffer 32.

ここで、データ書き込み部21はデータ変換部400に接続され、演算制御部22は同期信号生成部800に接続される。また、補間位相・入力データ座標計算部23は演算制御部22及び制御マイコン8に接続され、データ取得部24は補間位相・入力データ座標計算部23と画像メモリ601及び画歪補正パラメータデコーダ33に接続される。また、補間係数生成部25は画歪補正パラメータデコーダ33に接続され、データ補間計算部26はデータ取得部24及び補間係数生成部25に接続される。   Here, the data writing unit 21 is connected to the data conversion unit 400, and the calculation control unit 22 is connected to the synchronization signal generation unit 800. The interpolation phase / input data coordinate calculation unit 23 is connected to the calculation control unit 22 and the control microcomputer 8, and the data acquisition unit 24 is connected to the interpolation phase / input data coordinate calculation unit 23, the image memory 601, and the image distortion correction parameter decoder 33. Connected. The interpolation coefficient generation unit 25 is connected to the image distortion correction parameter decoder 33, and the data interpolation calculation unit 26 is connected to the data acquisition unit 24 and the interpolation coefficient generation unit 25.

なお、画像メモリ601はデータ書き込み部21及びデータ取得部24に接続され、画像メモリ602はデータ補間計算部26及びデータ取得部29に接続される。また、画歪補正パラメータデコーダ33は補間位相・入力データ座標計算部23及びデータ取得部24に接続される。   The image memory 601 is connected to the data writing unit 21 and the data acquisition unit 24, and the image memory 602 is connected to the data interpolation calculation unit 26 and the data acquisition unit 29. The image distortion correction parameter decoder 33 is connected to the interpolation phase / input data coordinate calculation unit 23 and the data acquisition unit 24.

一方、演算制御部27は同期信号生成部800に接続され、補間位相・入力データ座標計算部28は演算制御部27及び制御マイコン8に接続される。また、データ取得部29は補間位相・入力データ座標計算部28と画像メモリ602及び画歪補正パラメータデコーダ34に接続され、補間係数生成部30は画歪補正パラメータデコーダ34に接続される。また、データ補間計算部31はデータ取得部29及び補間係数生成部30に接続され、出力データバッファ32はデータ補間計算部31及び同期信号生成部800に接続される。   On the other hand, the calculation control unit 27 is connected to the synchronization signal generation unit 800, and the interpolation phase / input data coordinate calculation unit 28 is connected to the calculation control unit 27 and the control microcomputer 8. The data acquisition unit 29 is connected to the interpolation phase / input data coordinate calculation unit 28, the image memory 602, and the image distortion correction parameter decoder 34, and the interpolation coefficient generation unit 30 is connected to the image distortion correction parameter decoder 34. The data interpolation calculation unit 31 is connected to the data acquisition unit 29 and the interpolation coefficient generation unit 30, and the output data buffer 32 is connected to the data interpolation calculation unit 31 and the synchronization signal generation unit 800.

なお、出力データバッファ32の出力ノードは表示系処理部1300及び記録部1100に接続される。また、画歪補正パラメータデコーダ34は補間位相・入力データ座標計算部28に接続される。   The output node of the output data buffer 32 is connected to the display system processing unit 1300 and the recording unit 1100. The image distortion correction parameter decoder 34 is connected to the interpolation phase / input data coordinate calculation unit 28.

上記のような構成を有する信号処理部10では、まず水平1次元補間部501が水平方向(x方向)の1次元補間演算を実行し、続いて垂直1次元補間部502が垂直方向(y方向)の1次元補間演算を実行する。ここで、信号処理部10による該演算の概要を、図3を参照しつつ説明する。なお、図3においては、x及びy方向にそれぞれ4つ並んだ(4×4)合計16個からなる画像データを用いて出力画像の各点の画像データが決定される場合が例示される。   In the signal processing unit 10 having the above-described configuration, the horizontal one-dimensional interpolation unit 501 first performs a one-dimensional interpolation operation in the horizontal direction (x direction), and then the vertical one-dimensional interpolation unit 502 performs the vertical direction (y direction). ) One-dimensional interpolation operation is executed. Here, an outline of the calculation by the signal processing unit 10 will be described with reference to FIG. FIG. 3 illustrates a case where the image data of each point of the output image is determined using image data consisting of a total of 16 pieces (4 × 4) arranged in the x and y directions.

そして、図3(a)はx方向の補正により、歪みを伴う原画像を構成する点B1〜B4に対応してそれぞれ点B10〜B40の画像データが算出されたことを示し、図3(b)はさらにy方向の補正により、点B10〜B40に対応して点b1〜b4の画像データが算出されたことを示す。   FIG. 3A shows that the image data of points B10 to B40 corresponding to the points B1 to B4 constituting the original image with distortion is calculated by the correction in the x direction, and FIG. ) Indicates that the image data of the points b1 to b4 are calculated corresponding to the points B10 to B40 by further correcting in the y direction.

より具体的には、例えば水平方向に連続した点B1を跨ぐ4つの格子点の画像データに所定の補間演算を施すことにより点B10の画像データが算出され、同様に点B2〜B4に対応してそれぞれ点B20〜B40の画像データが算出される。   More specifically, for example, the image data of the point B10 is calculated by performing a predetermined interpolation operation on the image data of four grid points straddling the point B1 that is continuous in the horizontal direction, and similarly, the image data of the point B2 to B4 corresponds to the points B2 to B4. Thus, the image data of the points B20 to B40 are calculated.

次に、図3(b)に示されるように、例えば点B30に対しては、垂直方向に連続した点B30を跨ぐ破線内の4つの格子点(点K20〜K23)における画像データに所定の補間演算を施すことにより点b3の画像データが算出される。また同様に、点B10,B20,B40に対応してそれぞれ点b1,b2,b4の画像データが算出される。   Next, as shown in FIG. 3B, for example, with respect to the point B30, the image data at four lattice points (points K20 to K23) in the broken line straddling the point B30 continuous in the vertical direction is set to a predetermined value. The image data of the point b3 is calculated by performing the interpolation calculation. Similarly, image data of points b1, b2, and b4 are calculated corresponding to points B10, B20, and B40, respectively.

ここで、上記のような水平方向における1次元補間演算は、データ補間計算部26に含まれる図4に示された水平処理回路40により実現される。図4に示されるように水平処理回路40は、ラインメモリ900と、ラインメモリ900の出力ノードに直列接続された4つのレジスタ901と、各レジスタ901から出力されたデータと対応する補間係数CHk(k=0〜3)とを乗算する4つの乗算回路902と、4つの乗算回路902により得られたデータを加算する加算回路903とを含む。   Here, the one-dimensional interpolation calculation in the horizontal direction as described above is realized by the horizontal processing circuit 40 shown in FIG. 4 included in the data interpolation calculation unit 26. As shown in FIG. 4, the horizontal processing circuit 40 includes a line memory 900, four registers 901 connected in series to an output node of the line memory 900, and an interpolation coefficient CHk ( 4 multiplication circuits 902 for multiplying k = 0 to 3), and an addition circuit 903 for adding the data obtained by the four multiplication circuits 902.

なお、上記のような垂直方向における1次元補間演算は後述する図25に示された回路により実現されるが、これについては後に詳しく説明する。   The one-dimensional interpolation calculation in the vertical direction as described above is realized by a circuit shown in FIG. 25 described later, which will be described in detail later.

次に、図2に示された信号処理部10の動作の概要を説明する。まずデータ変換部400から水平1次元補間部501へ入力された画像データは、データ書き込み部21によって書き込み制御信号と共に画像メモリ601へ供給され、該書き込み制御信号に応じて画像メモリ601に書き込まれる。   Next, an outline of the operation of the signal processing unit 10 shown in FIG. 2 will be described. First, the image data input from the data conversion unit 400 to the horizontal one-dimensional interpolation unit 501 is supplied to the image memory 601 together with the write control signal by the data writing unit 21, and is written to the image memory 601 in accordance with the write control signal.

このとき、データ取得部24は読み出し制御信号を水平処理用の画像メモリ601へ供給することにより、画歪補正パラメータデコーダ33から供給されるx方向用の補正量パラメータXmに応じて、画像メモリ601から水平方向に並ぶ画像データを補間用データとして取得する。   At this time, the data acquisition unit 24 supplies the read control signal to the image memory 601 for horizontal processing, so that the image memory 601 corresponds to the x-direction correction amount parameter Xm supplied from the image distortion correction parameter decoder 33. To obtain image data arranged in the horizontal direction as interpolation data.

そして、データ補間計算部26が補間係数生成部25から供給された補間係数を用いて水平方向の1次元補間演算を実行し、垂直処理用の画像メモリ602が該演算結果を格納する。   The data interpolation calculation unit 26 executes horizontal one-dimensional interpolation calculation using the interpolation coefficient supplied from the interpolation coefficient generation unit 25, and the image memory 602 for vertical processing stores the calculation result.

次に、垂直1次元補間部502では、データ取得部29が画歪補正パラメータデコーダ34から供給されるy方向用の補正量パラメータYmに応じて、垂直処理用の画像メモリ602から垂直方向に並ぶ画像データを補間用データとして取得する。そして、データ補間計算部31が補間係数生成部30から供給された補間係数を用いて垂直方向の1次元補間演算を実行し、出力データバッファ32は出力同期信号に応じて該演算結果を出力する。   Next, in the vertical one-dimensional interpolation unit 502, the data acquisition unit 29 is arranged in the vertical direction from the image memory 602 for vertical processing according to the correction amount parameter Ym for y direction supplied from the image distortion correction parameter decoder 34. Image data is acquired as interpolation data. Then, the data interpolation calculation unit 31 performs vertical one-dimensional interpolation calculation using the interpolation coefficient supplied from the interpolation coefficient generation unit 30, and the output data buffer 32 outputs the calculation result according to the output synchronization signal. .

なお、上記のように、水平1次元補間部501及び垂直1次元補間部502により実行される補間演算は1次元補間演算とされるため、キュービック補間のような4タップのフィルタ、又はより高次タップ数のフィルタを用いることができる。   As described above, since the interpolation calculation executed by the horizontal one-dimensional interpolation unit 501 and the vertical one-dimensional interpolation unit 502 is a one-dimensional interpolation calculation, a 4-tap filter such as cubic interpolation or a higher order filter is used. A tap count filter can be used.

すなわち、1次元補間演算は上記のように簡易な回路により実現されるため、2次元補間演算では難しい高次タップのフィルタによる演算が容易に実現できることから、より高画質な画像を得ることができる。なお、一般的な画素数変換回路などは1次元補間を実行する回路とされているため、既存の該回路を上記演算に共用しても良い。   That is, since the one-dimensional interpolation calculation is realized by a simple circuit as described above, the calculation using a high-order tap filter, which is difficult with the two-dimensional interpolation calculation, can be easily realized, so that a higher quality image can be obtained. . Note that since a general pixel number conversion circuit or the like is a circuit that performs one-dimensional interpolation, the existing circuit may be shared for the above-described calculation.

また、上記においては、水平方向の1次元補間演算を実行した後に垂直方向の1次元補間演算を実行する実施の形態を説明したが、逆に垂直方向の1次元補間演算を先に実行し、その後に水平方向の1次元補間演算を実行するようにしても良い。なお、この場合にはデータ変換部400から出力される画像データは垂直1次元補間部502へ入力され、垂直1次元補間演算が施された後に一旦水平処理用の画像メモリ601へ格納される。そして、このように画像メモリ601に格納された画像データは、さらに水平1次元補間部501により水平1次元補間演算が施され、完全に歪みが補正されて信号処理部10の外部へ出力される。   In the above description, the embodiment in which the one-dimensional interpolation calculation in the vertical direction is executed after the one-dimensional interpolation calculation in the horizontal direction has been described. Conversely, the one-dimensional interpolation calculation in the vertical direction is executed first, Thereafter, a one-dimensional interpolation calculation in the horizontal direction may be executed. In this case, the image data output from the data conversion unit 400 is input to the vertical one-dimensional interpolation unit 502, and after being subjected to the vertical one-dimensional interpolation calculation, is temporarily stored in the image memory 601 for horizontal processing. The image data stored in the image memory 601 is further subjected to horizontal one-dimensional interpolation calculation by the horizontal one-dimensional interpolation unit 501, completely corrected for distortion, and output to the outside of the signal processing unit 10. .

また、上記における演算処理は1系統のデータに適用するのみならず、色信号(RGB,YUV)に対して系統毎に適用しても良い。さらに、動画像に対して該補間演算を施す場合には、垂直同期信号に同期して該演算を実行すれば良い。   In addition, the arithmetic processing described above may be applied not only to one system of data but also to each system for color signals (RGB, YUV). Further, when the interpolation calculation is performed on the moving image, the calculation may be executed in synchronization with the vertical synchronization signal.

ところで、ビデオカメラやデジタルスチルカメラなどの撮像装置では、いわゆる光学ズーム機能や手ぶれ補正機能が搭載されることが多い。ここで、上記機能により光学ズームを行うと、テレ(ズームアップ)かワイド(ズームダウン)かに応じてレンズの歪み特性が変動する。すなわち、一般的に、ワイドの向きにレンズ200が移動すると画像に樽歪みが生じ、テレの向きにレンズ200が移動すると画像に糸巻き型の歪みが発生する。   By the way, an imaging apparatus such as a video camera or a digital still camera is often equipped with a so-called optical zoom function and a camera shake correction function. Here, when the optical zoom is performed by the above function, the distortion characteristics of the lens vary depending on whether it is tele (zoom up) or wide (zoom down). That is, generally, when the lens 200 moves in the wide direction, barrel distortion occurs in the image, and when the lens 200 moves in the tele direction, pincushion distortion occurs in the image.

このとき、該光学ズームに応じた適切な補正ベクトルにより該画像が補正されないときは画質が劣化するため、補正パラメータデコーダ9はレンズの位置に応じた最適な補正量パラメータを選択するものとされる。   At this time, since the image quality deteriorates when the image is not corrected by an appropriate correction vector corresponding to the optical zoom, the correction parameter decoder 9 selects an optimal correction amount parameter corresponding to the lens position. .

具体的には、補正パラメータデコーダ9は制御マイコン8からレンズ200の位置を示す情報を受け取り、補正パラメータエンコーダ5から供給された圧縮データPcを該位置情報に応じて選択的にデコードする。   Specifically, the correction parameter decoder 9 receives information indicating the position of the lens 200 from the control microcomputer 8 and selectively decodes the compressed data Pc supplied from the correction parameter encoder 5 according to the position information.

このように、図1に示された画像処理装置2によれば、レンズ200の特性が変動するような場合においても、該特性に応じてデコードされた補正量パラメータのみが補間演算に使用されるため、該演算に使用されるデータ量を最小限に抑えることができ、その結果として製造コストを低減することができる。   As described above, according to the image processing apparatus 2 shown in FIG. 1, even when the characteristic of the lens 200 varies, only the correction amount parameter decoded according to the characteristic is used for the interpolation calculation. Therefore, the amount of data used for the calculation can be minimized, and as a result, the manufacturing cost can be reduced.

次に、上記手ぶれ補正機能について説明する。一般的に、手ぶれによる画像の歪みを補正する方法には、アクティブプリズム方式やアクティブレンズ方式のようにレンズ等の位置を制御して該画像を光学的に補正する方法と、アクティブイメージエリア方式のように得られた画像信号に所定の処理を施すことにより電気的に補正する方法とがある。   Next, the camera shake correction function will be described. In general, as a method of correcting image distortion due to camera shake, a method of optically correcting the image by controlling the position of a lens or the like like an active prism method or an active lens method, and an active image area method are used. Thus, there is a method of electrically correcting the obtained image signal by performing predetermined processing.

ここで、光学的な補正方法はレンズ200の位置に応じてレンズ特性が変動することから、本発明の実施の形態に係る画像処理装置2で実現するのは難しい。   Here, the optical correction method is difficult to be realized by the image processing apparatus 2 according to the embodiment of the present invention because the lens characteristics vary depending on the position of the lens 200.

一方、上記の電気的な補正方法は、角速度センサ等により検知された手ぶれ位置の情報に基づいて、画像全体から一部(有効エリア)の画像を切り出す信号処理により実現される。このとき、該有効エリアの位置等に応じて画像処理の対象が変化するため、該対象に応じて補間演算を施す際に使用する補正ベクトルを変更する必要がある。   On the other hand, the above-described electrical correction method is realized by signal processing for cutting out a part (effective area) of an image from the entire image based on information on a camera shake position detected by an angular velocity sensor or the like. At this time, since the target of image processing changes according to the position of the effective area, etc., it is necessary to change the correction vector used when performing the interpolation calculation according to the target.

そこで、補正パラメータデコーダ9はさらに、制御マイコン8から手ぶれ位置の情報を受け取り、補正パラメータエンコーダ5から供給された圧縮データPcを該位置情報に応じて選択的にデコードすることによって、手ぶれ補正を実現する。   Accordingly, the correction parameter decoder 9 further receives camera shake position information from the control microcomputer 8, and realizes camera shake correction by selectively decoding the compressed data Pc supplied from the correction parameter encoder 5 in accordance with the position information. To do.

なお、本実施の形態に係る画像処理装置2では、レンズ200を交換したような場合にも同様に、補正パラメータデコーダ9が該新たなレンズ200等に応じて選択的に該圧縮データPcをデコードすることとすれば、部品交換後においても容易に高画質の画像を得ることができる。   In the image processing apparatus 2 according to the present embodiment, even when the lens 200 is replaced, the correction parameter decoder 9 selectively decodes the compressed data Pc according to the new lens 200 and the like. If so, a high-quality image can be easily obtained even after the parts are replaced.

次に、図5及び図6のフローチャートを参照しつつ、図2に示された水平1次元補間部501の動作を詳しく説明する。まず、演算制御部22は、同期信号生成部800から供給される内部同期信号に応じて制御タイミング信号を生成する。そして、補間位相・入力データ座標計算部23は、演算制御部22から供給された制御タイミング信号に応じて動作し、信号処理部10に入力された画像に歪みがない場合における座標系での補間点の座標を小数点付きで計算する。   Next, the operation of the horizontal one-dimensional interpolation unit 501 shown in FIG. 2 will be described in detail with reference to the flowcharts of FIGS. 5 and 6. First, the arithmetic control unit 22 generates a control timing signal in accordance with the internal synchronization signal supplied from the synchronization signal generation unit 800. The interpolation phase / input data coordinate calculation unit 23 operates according to the control timing signal supplied from the calculation control unit 22 and performs interpolation in the coordinate system when the image input to the signal processing unit 10 is not distorted. Calculate point coordinates with a decimal point.

具体的には、ステップS1において補間位相・入力データ座標計算部23は、図7(a)に示されるように歪み補正され等倍変換された画像上の座標(x,y)として、切り出した画像CIの左上の座標(Sx,Sy)を初期設定し、画歪補正パラメータデコーダ33へ補正パラメータ要求信号Rxを供給する。一方、ステップS2において、画歪補正パラメータデコーダ33は供給された補正パラメータ要求信号Rx及び該座標(Sx,Sy)に対応する補正量パラメータXmを求め、データ取得部24及び補間係数生成部25へ供給する。   Specifically, in step S1, the interpolation phase / input data coordinate calculation unit 23 cuts out the image as coordinates (x, y) on the image subjected to distortion correction and equal magnification conversion as shown in FIG. The upper left coordinates (Sx, Sy) of the image CI are initialized, and a correction parameter request signal Rx is supplied to the image distortion correction parameter decoder 33. On the other hand, in step S2, the image distortion correction parameter decoder 33 obtains the supplied correction parameter request signal Rx and the correction amount parameter Xm corresponding to the coordinates (Sx, Sy), and sends them to the data acquisition unit 24 and the interpolation coefficient generation unit 25. Supply.

ここで画歪補正パラメータデコーダ33は、例えばROM(Read Only Memory)を内蔵し、該ROMにx座標と補正量パラメータXmとの間の対照テーブルを予め格納しておくようにしても良いし、補正量パラメータXmをx座標のある関数として近似し、該関数を用いて補正量パラメータXmを求めても良いが、後に詳しく説明する。   Here, the image distortion correction parameter decoder 33 includes, for example, a ROM (Read Only Memory), and a comparison table between the x coordinate and the correction amount parameter Xm may be stored in advance in the ROM. The correction amount parameter Xm may be approximated as a function having an x coordinate, and the correction amount parameter Xm may be obtained using the function, which will be described in detail later.

次に、ステップS3において、データ取得部24は補間位相・入力データ座標計算部23から供給された座標(X,Y)に、画歪補正パラメータデコーダ33から供給された補正量パラメータXmに応じた補正量ベクトル(Xm,0)を加える。これより、図7(b)に示されるように、補正前の原画像OIにおいて上記座標(X,Y)に対応する点の座標(X+Xm,Y)、すなわち補正ベクトルが求められたことになる。   Next, in step S3, the data acquisition unit 24 uses the coordinates (X, Y) supplied from the interpolation phase / input data coordinate calculation unit 23 in accordance with the correction amount parameter Xm supplied from the image distortion correction parameter decoder 33. A correction amount vector (Xm, 0) is added. Accordingly, as shown in FIG. 7B, the coordinates (X + Xm, Y) of the point corresponding to the coordinates (X, Y) in the original image OI before correction, that is, the correction vector is obtained. .

なお、データ取得部24の替わりに、画歪補正パラメータデコーダ33が補間位相・入力データ座標計算部23から供給されたx座標に応じて上記補正ベクトルを求め、該補正ベクトルをデータ取得部24へ供給するようにしても良い。   Instead of the data acquisition unit 24, the image distortion correction parameter decoder 33 obtains the correction vector according to the x coordinate supplied from the interpolation phase / input data coordinate calculation unit 23, and sends the correction vector to the data acquisition unit 24. You may make it supply.

このとき、データ取得部24はx座標の整数値がXmを加えることで変化したか否かを判断し、変化したと判断した場合にはステップS5へ進み、変化していないと判断した場合にはステップS6へ進む。   At this time, the data acquisition unit 24 determines whether or not the integer value of the x coordinate has been changed by adding Xm. If it is determined that the value has changed, the process proceeds to step S5. Advances to step S6.

ステップS5では、データ取得部24が、さらに該整数値は2以上変化したか否かを判断し、2以上変化したと判断した場合にはステップS8へ進み、1のみ変化したと判断した場合にはステップS7へ進む。一方、ステップS6では、画像メモリ601がデータ取得部24から供給されたホールド信号Shに応じて、前サイクルに出力したものと同じ補間用データを再度データ取得部24へ供給する。   In step S5, the data acquisition unit 24 further determines whether or not the integer value has changed by 2 or more. When it is determined that the integer value has changed by 2 or more, the process proceeds to step S8. Advances to step S7. On the other hand, in step S <b> 6, the image memory 601 supplies the same interpolation data output in the previous cycle to the data acquisition unit 24 again in response to the hold signal Sh supplied from the data acquisition unit 24.

上記において、データ取得部24は生成された補正ベクトルのx成分(X+Xm)の整数値に応じて画像メモリ601から読み出すべきデータのアドレスを生成し、読み出し制御信号を画像メモリ601に供給することによって該アドレスに応じた補間用データを取得する。   In the above, the data acquisition unit 24 generates an address of data to be read from the image memory 601 according to the integer value of the x component (X + Xm) of the generated correction vector, and supplies a read control signal to the image memory 601. Interpolation data corresponding to the address is acquired.

ここで、画像メモリ601は先頭アドレスからアドレスを1づつインクリメントしつつ該アドレスに応じた補間用データを順次出力すると共に、データ取得部24からホールド信号Shが供給されることによって、上記インクリメントを一時的に停止する。   Here, the image memory 601 sequentially outputs the interpolation data corresponding to the address while incrementing the address one by one from the head address, and the hold signal Sh is supplied from the data acquisition unit 24, so that the increment is temporarily performed. Stop.

なお、画像メモリ601はデータ取得部24から読み出し開始アドレスを受け取り、該読み出し開始アドレスを上記先頭アドレスとした所定数の連続データを出力するものであっても良い。   The image memory 601 may receive a read start address from the data acquisition unit 24 and output a predetermined number of continuous data with the read start address as the head address.

ここで、上記ホールド信号Sh及び読み出し開始アドレスは、画歪補正パラメータデコーダ33から出力される補正量パラメータXmの整数成分から求められる。   Here, the hold signal Sh and the read start address are obtained from the integer component of the correction amount parameter Xm output from the image distortion correction parameter decoder 33.

一方、補間係数生成部25は、画歪補正パラメータデコーダ33から供給される補正量パラメータXmの小数成分を水平補間フィルタの位相として扱い、該小数成分に応じて補間係数を生成する。なお、このような動作は、信号処理部10に入力される画像102がRGBフォーマットの場合に適用される。一方、YUVフォーマットの場合には輝度信号Yのフィルタ位相はRGBフォーマットのフィルタ位相と同じように扱うことができ、色差信号Cb/Crについては、補正量パラメータXmの小数成分だけでなく整数成分も併用して該位相を算出することができる。   On the other hand, the interpolation coefficient generation unit 25 treats the decimal component of the correction amount parameter Xm supplied from the image distortion correction parameter decoder 33 as the phase of the horizontal interpolation filter, and generates an interpolation coefficient according to the decimal component. Such an operation is applied when the image 102 input to the signal processing unit 10 is in the RGB format. On the other hand, in the case of the YUV format, the filter phase of the luminance signal Y can be handled in the same way as the filter phase of the RGB format. For the color difference signal Cb / Cr, not only the decimal component but also the integer component of the correction amount parameter Xm. The phase can be calculated in combination.

そして、ステップS7においてデータ補間計算部26は、データ取得部24から供給された補間用データと上記補間係数とに応じて1次元補間演算を実行し、ステップS9へ進む。   In step S7, the data interpolation calculation unit 26 performs a one-dimensional interpolation operation according to the interpolation data supplied from the data acquisition unit 24 and the interpolation coefficient, and the process proceeds to step S9.

ここで、上記の1次元補間演算では、例えばYUVフォーマットにおいては、図7(c)に示されるように補正ベクトル(X+Xm,Y)の近傍から水平方向において8画素の輝度データDtが補間用データとして利用され、上記小数成分を位相とした8タップの補間演算が実行される。なお、該補間演算により得られた結果は出力画像の輝度データ等として利用され、これより水平方向の歪みが補正される。   Here, in the above one-dimensional interpolation calculation, for example, in the YUV format, the luminance data Dt of 8 pixels in the horizontal direction from the vicinity of the correction vector (X + Xm, Y) as shown in FIG. And an 8-tap interpolation operation with the decimal component as a phase is executed. Note that the result obtained by the interpolation calculation is used as luminance data of the output image, and the horizontal distortion is corrected thereby.

一方、ステップS8ではデータ取得部24が補間位相・入力データ座標計算部23と画歪補正パラメータデコーダ33及びデータ補間計算部26へスキップ信号skを供給し、これら補間位相・入力データ座標計算部23と画歪補正パラメータデコーダ33及びデータ補間計算部26の動作を停止させる。   On the other hand, in step S 8, the data acquisition unit 24 supplies the skip signal sk to the interpolation phase / input data coordinate calculation unit 23, the image distortion correction parameter decoder 33 and the data interpolation calculation unit 26, and these interpolation phase / input data coordinate calculation unit 23. And the operations of the image distortion correction parameter decoder 33 and the data interpolation calculation unit 26 are stopped.

ここで、ステップS5においてx座標が2以上変化したと判断される場合は、実際に補間演算する中心座標が2画素以上移動する場合を意味するため、データ補間計算部26による画像メモリ602へのデータ出力が中断される。また、実際に補間演算する中心座標が2画素以上移動する場合は、画歪補正パラメータデコーダ33から出力される補正量パラメータXmの小数成分(補間位相)は次サイクルまで保持されることから、画歪補正パラメータデコーダ33の動作が停止される。   Here, if it is determined in step S5 that the x coordinate has changed by 2 or more, it means that the center coordinate actually interpolated is moved by 2 pixels or more, and therefore the data interpolation calculation unit 26 applies the data to the image memory 602. Data output is interrupted. In addition, when the center coordinates actually interpolated are moved by two or more pixels, the decimal component (interpolation phase) of the correction amount parameter Xm output from the image distortion correction parameter decoder 33 is held until the next cycle. The operation of the distortion correction parameter decoder 33 is stopped.

そして、ステップS13では、補間位相・入力データ座標計算部23がx座標に水平方向の拡大縮小パラメータHaを加算し、ステップS2へ進む。なお、この拡大縮小パラメータHaは、補正後の画像に対する歪みを持った原画像の水平方向における長さの比により決定され、補正後に画像を水平方向に拡大する場合には1より小さな値とされ、逆に縮小する場合は1より大きな値とされ、等倍の場合には1とされる。   In step S13, the interpolation phase / input data coordinate calculation unit 23 adds the horizontal enlargement / reduction parameter Ha to the x coordinate, and the process proceeds to step S2. The enlargement / reduction parameter Ha is determined by a ratio of lengths in the horizontal direction of the original image having distortion with respect to the image after correction, and is set to a value smaller than 1 when the image is enlarged in the horizontal direction after correction. On the contrary, when the image is reduced, the value is larger than 1, and when the image is scaled, the value is 1.

ステップS9ではデータ補間計算部26が、得られた画像データを垂直処理用ラインバッファからなる画像メモリ602へ格納する。そして、ステップS10では補間位相・入力データ座標計算部23が現時点のx座標を基に1ライン分、すなわち出力水平画素数HS分の画像データが画像メモリ602へ出力されたか否かを判断し、1ライン分のデータが出力されたと判断した場合にはステップS11へ進み、1ライン分のデータが出力されていないと判断した場合にはステップS13へ進む。   In step S9, the data interpolation calculation unit 26 stores the obtained image data in the image memory 602 including a vertical processing line buffer. In step S10, the interpolation phase / input data coordinate calculation unit 23 determines whether image data for one line, that is, the number of output horizontal pixels HS has been output to the image memory 602 based on the current x coordinate, If it is determined that one line of data has been output, the process proceeds to step S11. If it is determined that one line of data has not been output, the process proceeds to step S13.

ステップS11では補間位相・入力データ座標計算部23がx座標をSxとすると共に、y座標に1を加える。そして、ステップS12では補間位相・入力データ座標計算部23がさらにy座標を基に1フレーム分、すなわち出力垂直ライン数分の画像データが画像メモリ602へ出力されたか否かを判断し、1フレーム分のデータが出力されたと判断した場合には動作を終了し、1フレーム分のデータが出力されていないと判断した場合にはステップS13へ進む。   In step S11, the interpolation phase / input data coordinate calculation unit 23 sets the x coordinate to Sx and adds 1 to the y coordinate. In step S12, the interpolation phase / input data coordinate calculation unit 23 further determines whether one frame of image data, that is, the number of output vertical lines, has been output to the image memory 602 based on the y coordinate. The operation is terminated when it is determined that the amount of data has been output, and the processing proceeds to step S13 when it is determined that the data for one frame has not been output.

以上より、水平1次元補間部501は、歪みを持った原画像に対して水平方向の1次元補間演算を施すことにより、水平画歪み補正処理と水平方向の拡大・縮小処理を同時に実現し、得られた画像を垂直処理用の画像メモリ602に保存する。   As described above, the horizontal one-dimensional interpolation unit 501 performs horizontal image distortion correction processing and horizontal enlargement / reduction processing at the same time by performing horizontal one-dimensional interpolation operation on the original image having distortion, The obtained image is stored in the image memory 602 for vertical processing.

なお、上記水平1次元補間による等倍変換の具体例が図8に示される。ここで、図8は輝度信号に関する変換を示し、図8(a)は信号処理部10に入力された補間用データD0〜D9、図8(b)及び図8(f)は補正量パラメータXm、図8(c)及び図8(d)はそれぞれ補正後の画像を構成するデータのサンプリング位置及び番号を示す。   A specific example of the equal magnification conversion by the horizontal one-dimensional interpolation is shown in FIG. 8 shows conversion relating to the luminance signal, FIG. 8A shows the interpolation data D0 to D9 input to the signal processing unit 10, and FIGS. 8B and 8F show the correction amount parameter Xm. FIG. 8C and FIG. 8D show sampling positions and numbers of data constituting the corrected image, respectively.

また、図8(e)は補間位相・入力データ座標計算部23から画歪補正パラメータデコーダ33へ供給されるx座標(xt)を示し、図8(g)はデータ取得部24により生成される補正ベクトルのx座標(補正パラメータ)、図8(h)は補正前の画像における補間用データのアドレス、図8(i)は補間位相をそれぞれ示す。   8E shows the x coordinate (xt) supplied from the interpolation phase / input data coordinate calculation unit 23 to the image distortion correction parameter decoder 33. FIG. 8G is generated by the data acquisition unit 24. The x coordinate (correction parameter) of the correction vector, FIG. 8H shows the address of the interpolation data in the image before correction, and FIG. 8I shows the interpolation phase.

例えば、図8に示されるように、補正後の画像においてx座標が2.0の点に位置するデータの補正量パラメータXmは1.25とされる。その結果、補正前の画像における該点の対応点のx座標は、該2.0に補正量パラメータXmを加算して3.25と求められる。このとき、該x座標(3.25)の整数成分(3)が補正前の画像における該データのアドレスを示し、0.25が補間位相を示す。従って、補正後の画像におけるx座標が2.0の点の輝度信号は、補正前の画像において3近傍のxアドレスを有する複数の連続データを対象とし、水平補間フィルタの位相を0.25とした1次元補間演算により求められることになる。   For example, as shown in FIG. 8, the correction amount parameter Xm of the data located at the point where the x coordinate is 2.0 in the corrected image is 1.25. As a result, the x coordinate of the corresponding point of the point in the image before correction is obtained as 3.25 by adding the correction amount parameter Xm to 2.0. At this time, the integer component (3) of the x coordinate (3.25) indicates the address of the data in the image before correction, and 0.25 indicates the interpolation phase. Therefore, the luminance signal at the point where the x coordinate is 2.0 in the image after correction is a one-dimensional interpolation in which the phase of the horizontal interpolation filter is set to 0.25 for a plurality of continuous data having three adjacent x addresses in the image before correction. It will be obtained by calculation.

図9は、図8に示された等倍変換の動作タイミングを示すタイミング図である。ここで、図9(a)は演算制御部22に供給される内部同期信号を示し、図9(b)は演算制御部22により生成される制御タイミング信号、図9(c)はデータ取得部24から画像メモリ601に供給される読み出し制御信号、図9(d)は画像メモリ601からデータ取得部24へ入力される補間用データ、図9(e)は補間位相・入力データ座標計算部23から画歪補正パラメータデコーダ33へ供給されるx座標(xt)をそれぞれ示す。   FIG. 9 is a timing chart showing the operation timing of the equal magnification conversion shown in FIG. Here, FIG. 9A shows an internal synchronization signal supplied to the arithmetic control unit 22, FIG. 9B shows a control timing signal generated by the arithmetic control unit 22, and FIG. 9C shows a data acquisition unit. FIG. 9D shows data for interpolation input from the image memory 601 to the data acquisition unit 24, and FIG. 9E shows the interpolation phase / input data coordinate calculation unit 23. The x-coordinates (xt) supplied to the image distortion correction parameter decoder 33 are respectively shown.

また、図9(f)は画歪補正パラメータデコーダ33から出力される補正量パラメータXmを示し、図9(g)はデータ取得部24により生成される補正パラメータ、図9(h)は補正前の画像における補間用データのアドレス、図9(i)は補間位相、図9(j)及び図9(k)はそれぞれデータ取得部24により生成されるスキップ信号sk及びホールド信号Sh、図9(l)は画像メモリ601から読み出される2タップのデータ、図9(m)はデータ補間計算部26から画像メモリ602へ出力されるデータ、図9(n)はデータ補間計算部26で内部生成される出力イネーブル信号をそれぞれ示す。なお、ここでは説明を簡略化するために、一つのデータを得るための補間演算においては、図9(l)に示される2タップのデータが使用されるものとする。   FIG. 9F shows the correction amount parameter Xm output from the image distortion correction parameter decoder 33, FIG. 9G shows the correction parameter generated by the data acquisition unit 24, and FIG. 9 (i) is the interpolation phase, FIGS. 9 (j) and 9 (k) are the skip signal sk and hold signal Sh generated by the data acquisition unit 24, respectively. l) is 2-tap data read from the image memory 601, FIG. 9 (m) is data output from the data interpolation calculation unit 26 to the image memory 602, and FIG. 9 (n) is internally generated by the data interpolation calculation unit 26. Each output enable signal is shown. In order to simplify the description, it is assumed that 2-tap data shown in FIG. 9L is used in the interpolation calculation for obtaining one data.

図9(b)に示されるように、時刻T1において制御タイミング信号が内部同期信号に応じてハイレベルに活性化されると、図9(e)に示されるように補間位相・入力データ座標計算部23は0.0から1.0づつインクリメントされるx座標(xt)を順次画歪補正パラメータデコーダ33へ供給する。   As shown in FIG. 9B, when the control timing signal is activated to a high level according to the internal synchronization signal at time T1, interpolation phase / input data coordinate calculation is performed as shown in FIG. 9E. The unit 23 sequentially supplies the x coordinate (xt) incremented by 0.0 to 1.0 to the image distortion correction parameter decoder 33.

これより、図9(f)に示されるように画歪補正パラメータデコーダ33は対応する補正量パラメータXmを求め、その後にデータ取得部24は図9(g)に示される補正パラメータを算出する。ここで、図9(h)に示されるように、データ取得部24は該補正パラメータの整数成分から補正前の画像における補間用データの先頭アドレスを0と特定する。そして、図9(c)及び図9(d)に示されるように、データ取得部24は活性化された読み出し制御信号と共に、上記のように特定されたアドレス0を画像メモリ601へ供給する。   Accordingly, as shown in FIG. 9F, the image distortion correction parameter decoder 33 obtains the corresponding correction amount parameter Xm, and thereafter, the data acquisition unit 24 calculates the correction parameter shown in FIG. 9G. Here, as shown in FIG. 9H, the data acquisition unit 24 specifies 0 as the leading address of the interpolation data in the image before correction from the integer component of the correction parameter. Then, as shown in FIGS. 9C and 9D, the data acquisition unit 24 supplies the image memory 601 with the address 0 specified as described above, together with the activated read control signal.

これより、図9(d)に示されるように、画像メモリ601は該先頭アドレス0に対応するデータD0から順次補間用データをデータ取得部24へ連続的に出力する。   As a result, as shown in FIG. 9D, the image memory 601 sequentially outputs the interpolation data sequentially from the data D0 corresponding to the head address 0 to the data acquisition unit 24.

また、図9(g)及び図9(j)に示されるように、時刻T2においてデータ取得部24は補正パラメータの整数成分が2以上増加したと判断すると、ハイレベル(H)のスキップ信号skを生成して補間位相・入力データ座標計算部23とデータ補間計算部26及び画歪補正パラメータデコーダ33へ供給する。この結果、図9(e)から図9(g)に示されるように時刻T3から1サイクルの間補正パラメータの生成動作が停止されると共に、図9(m)及び図9(n)に示されるように出力イネーブル信号がロウレベルに不活性化されることによって、データ補間計算部26から画像メモリ602へのデータ出力が停止される。   9 (g) and 9 (j), when the data acquisition unit 24 determines that the integer component of the correction parameter has increased by 2 or more at time T2, the high-level (H) skip signal sk Is supplied to the interpolation phase / input data coordinate calculation unit 23, the data interpolation calculation unit 26, and the image distortion correction parameter decoder 33. As a result, as shown in FIGS. 9 (e) to 9 (g), the correction parameter generation operation is stopped for one cycle from time T3, and also shown in FIGS. 9 (m) and 9 (n). As described above, when the output enable signal is inactivated to a low level, data output from the data interpolation calculation unit 26 to the image memory 602 is stopped.

また、図9(g)及び図9(k)に示されるように、データ取得部24は時刻T4において生成された補正パラメータ(8.75)の整数成分が1サイクル前の補正パラメータ(8.25)の整数成分と同じであると判断し、時刻T4においてホールド信号Shをハイレベルに活性化させる。これより、図9(l)に示されるように時刻T5において、データ取得部24は画像メモリ601から前サイクルと同じ2タップの補間用データD8,D9を取得する。   Further, as shown in FIGS. 9 (g) and 9 (k), the data acquisition unit 24 uses the integer component of the correction parameter (8.75) generated at time T4 as the integer of the correction parameter (8.25) one cycle before. It is determined that the component is the same as the component, and the hold signal Sh is activated to a high level at time T4. Thus, as shown in FIG. 9L, at time T5, the data acquisition unit 24 acquires the same 2-tap interpolation data D8 and D9 from the image memory 601 as in the previous cycle.

なお、図10は図8と同様に水平1次元補間による拡大変換の具体例を示し、図11は図9と同様に該拡大変換の動作タイミングを示す。この拡大変換の例では、図10(e)に示されるように、データ番号が2から6近傍までのデータが水平方向の拡大縮小パラメータHaを0.5として水平方向に拡大される。ここで、図10(b)はデータ番号が0から9までの10個のデータについての補正量パラメータXmを示し、図10(f)は該拡大による補間点、すなわちx座標が2.0から6.5までにおける0.5間隔の10個の点における補正量パラメータXmを示す。   10 shows a specific example of enlargement conversion by horizontal one-dimensional interpolation as in FIG. 8, and FIG. 11 shows the operation timing of the enlargement conversion as in FIG. In this example of enlargement conversion, as shown in FIG. 10E, data with data numbers 2 to 6 is enlarged in the horizontal direction with the horizontal enlargement / reduction parameter Ha being 0.5. Here, FIG. 10B shows the correction amount parameter Xm for 10 data with data numbers 0 to 9, and FIG. 10F shows the interpolation point by the enlargement, that is, the x coordinate is 2.0 to 6.5. The correction amount parameter Xm at 10 points at intervals of 0.5 is shown.

そして、このような拡大変換においては、図11(g)に示されるように時刻T2,T3,T4,T5,T6において補正パラメータの整数成分が変化しないため、各時刻において1サイクルの間ホールド信号Shがハイレベルに活性化される。   In such enlargement conversion, since the integer component of the correction parameter does not change at times T2, T3, T4, T5, and T6 as shown in FIG. 11 (g), the hold signal for one cycle at each time. Sh is activated to a high level.

次に、図12及び図13のフローチャートを参照しつつ、図2に示された垂直1次元補間部502の動作を詳しく説明する。まず、演算制御部27は、同期信号生成部800から供給される内部同期信号に応じて制御タイミング信号を生成する。そして、補間位相・入力データ座標計算部28は、演算制御部27から供給された制御タイミング信号に応じて動作し、信号処理部10に入力された画像に歪みがない場合における座標系での補間点の座標を小数点付きで計算する。   Next, the operation of the vertical one-dimensional interpolation unit 502 shown in FIG. 2 will be described in detail with reference to the flowcharts of FIGS. First, the arithmetic control unit 27 generates a control timing signal in accordance with the internal synchronization signal supplied from the synchronization signal generation unit 800. The interpolation phase / input data coordinate calculation unit 28 operates in accordance with the control timing signal supplied from the calculation control unit 27 and performs interpolation in the coordinate system when the image input to the signal processing unit 10 is not distorted. Calculate point coordinates with a decimal point.

具体的には、ステップS1において補間位相・入力データ座標計算部28は、図14(a)に示されるように歪み補正され等倍変換された画像上の座標(x,y)として、切り出した画像CIの左上の座標(Sx,Sy)を初期設定し、画歪補正パラメータデコーダ34へ補正パラメータ要求信号Ryを供給する。一方、ステップS2において、画歪補正パラメータデコーダ34は供給された補正パラメータ要求信号Ryに応じて該y座標に対応する補正量パラメータYmを求め、データ取得部29及び補間係数生成部30へ供給する。   Specifically, in step S1, the interpolation phase / input data coordinate calculation unit 28 cuts out the image as coordinates (x, y) on the image subjected to distortion correction and equal magnification conversion as shown in FIG. The upper left coordinates (Sx, Sy) of the image CI are initialized, and a correction parameter request signal Ry is supplied to the image distortion correction parameter decoder 34. On the other hand, in step S 2, the image distortion correction parameter decoder 34 obtains a correction amount parameter Ym corresponding to the y coordinate in accordance with the supplied correction parameter request signal Ry, and supplies it to the data acquisition unit 29 and the interpolation coefficient generation unit 30. .

ここで画歪補正パラメータデコーダ34は、例えばROM(Read Only Memory)を内蔵し、該ROMにy座標と補正量パラメータYmとの間の対照テーブルを予め格納しておくようにしても良いし、補正量パラメータYmをy座標のある関数として近似し、該関数を用いて補正量パラメータYmを求めても良いが、後に詳しく説明する。   Here, the image distortion correction parameter decoder 34 may include, for example, a ROM (Read Only Memory), and a comparison table between the y coordinate and the correction amount parameter Ym may be stored in advance in the ROM. The correction amount parameter Ym may be approximated as a function having a y coordinate, and the correction amount parameter Ym may be obtained using the function, which will be described in detail later.

次に、ステップS3において、データ取得部29は補間位相・入力データ座標計算部28から供給された座標(X,Y)に、画歪補正パラメータデコーダ34から供給された補正量パラメータYmに応じた補正量ベクトル(0,Ym)を加える。これより、図14(b)に示されるように、補正前の原画像OIにおいて上記座標(X,Y)に対応する点の座標(X,Y+Ym)、すなわち補正ベクトルが求められる。このとき、データ取得部29は生成された補正ベクトルのy成分(Y+Ym)の整数値に応じて画像メモリ602から読み出すべきデータのアドレスを生成し、メモリ制御信号と共に画像メモリ602へ供給する。   Next, in step S3, the data acquisition unit 29 corresponds to the correction amount parameter Ym supplied from the image distortion correction parameter decoder 34 to the coordinates (X, Y) supplied from the interpolation phase / input data coordinate calculation unit 28. A correction amount vector (0, Ym) is added. As a result, as shown in FIG. 14B, the coordinates (X, Y + Ym) of the point corresponding to the coordinates (X, Y) in the original image OI before correction, that is, the correction vector is obtained. At this time, the data acquisition unit 29 generates an address of data to be read from the image memory 602 according to the integer value of the y component (Y + Ym) of the generated correction vector, and supplies it to the image memory 602 together with a memory control signal.

なお、データ取得部29の替わりに、画歪補正パラメータデコーダ34が補間位相・入力データ座標計算部28から供給されたy座標に応じて上記補正ベクトルを求め、該補正ベクトルをデータ取得部29等へ供給するようにしても良い。   Instead of the data acquisition unit 29, the image distortion correction parameter decoder 34 obtains the correction vector in accordance with the y coordinate supplied from the interpolation phase / input data coordinate calculation unit 28, and the correction vector is obtained as the data acquisition unit 29 or the like. You may make it supply to.

そして、ステップS4においては、垂直処理用の画像メモリ602が供給された上記アドレスに応じて、座標Xにおいて垂直方向に複数ラインに渡って並ぶ複数の補間用データを同時にデータ取得部29へ出力する。   In step S 4, a plurality of interpolation data arranged in a plurality of lines in the vertical direction at the coordinate X are simultaneously output to the data acquisition unit 29 in accordance with the address supplied to the image memory 602 for vertical processing. .

ここで、画像メモリ602は、データ取得部29から読み出しを開始する先頭アドレスを受け取り、該アドレスを1づつインクリメントすることにより該アドレスに応じた補間用データを順次出力するか、あるいは、アドレスをインクリメントすることなく、受け取った該先頭アドレスから所定数連続したデータを出力するものとされる。ここで、上記先頭アドレスは、画歪補正パラメータデコーダ34から出力される補正量パラメータYmの整数成分から求められる。   Here, the image memory 602 receives the head address to start reading from the data acquisition unit 29, and sequentially outputs the interpolation data corresponding to the address by incrementing the address by 1, or increments the address. Without this, a predetermined number of continuous data are output from the received head address. Here, the head address is obtained from the integer component of the correction amount parameter Ym output from the image distortion correction parameter decoder 34.

一方、補間係数生成部30は、画歪補正パラメータデコーダ34から供給される補正量パラメータYmの小数成分を垂直補間フィルタの位相として扱い、該小数成分に応じて補間係数を生成する。   On the other hand, the interpolation coefficient generation unit 30 treats the decimal component of the correction amount parameter Ym supplied from the image distortion correction parameter decoder 34 as the phase of the vertical interpolation filter, and generates an interpolation coefficient according to the decimal component.

そして、ステップS5においてデータ補間計算部31は、データ取得部29から供給された補間用データと上記補間係数とに応じて1次元補間演算を実行する。なお、上記補間演算は、信号処理部10に入力される画像102がRGBフォーマットの場合にのみ適用されるものでない。すなわち、YUVフォーマットの場合、輝度信号と色差信号の垂直方向におけるデータ密度が同じ場合には輝度信号のフィルタ位相を色差信号のフィルタ位相としても利用でき、該データ密度が異なる場合には補正量パラメータYmの小数成分だけでなく整数成分も併用することにより色差信号のフィルタ位相が算出される。   In step S5, the data interpolation calculation unit 31 executes a one-dimensional interpolation calculation according to the interpolation data supplied from the data acquisition unit 29 and the interpolation coefficient. The interpolation calculation is not applied only when the image 102 input to the signal processing unit 10 is in the RGB format. That is, in the case of the YUV format, when the data density in the vertical direction of the luminance signal and the color difference signal is the same, the filter phase of the luminance signal can be used as the filter phase of the color difference signal, and when the data density is different, the correction amount parameter The filter phase of the color difference signal is calculated by using not only the decimal component of Ym but also the integer component.

また、YUVフォーマットにおいては、図14(c)に示されるように補正ベクトル(X,Y+Ym)の近傍から垂直方向において例えば8画素の輝度データDt等が補間用データとして利用され、上記小数成分を位相とした8タップの補間演算が実行される。なお、該補間演算により得られた結果は出力画像の輝度データや色差データとして利用され、これより垂直方向の歪みが補正される。   In the YUV format, as shown in FIG. 14C, luminance data Dt of 8 pixels, for example, in the vertical direction from the vicinity of the correction vector (X, Y + Ym) is used as interpolation data, and the decimal component is used as the interpolation data. An 8-tap interpolation operation with the phase is executed. Note that the result obtained by the interpolation calculation is used as luminance data and color difference data of the output image, thereby correcting vertical distortion.

次に、ステップS6において、出力データバッファ32は該補間演算により得られた画像データを出力する。ステップS7では、補間位相・入力データ座標計算部23が現時点のx座標を基に1ライン分、すなわち出力水平画素数HS分の画像データが出力されたか否かを判断し、1ライン分のデータが出力されたと判断した場合にはステップS8へ進み、1ライン分のデータが出力されていないと判断した場合にはステップS10へ進む。   Next, in step S6, the output data buffer 32 outputs the image data obtained by the interpolation calculation. In step S7, the interpolation phase / input data coordinate calculation unit 23 determines whether image data for one line, that is, the output horizontal pixel number HS has been output based on the current x coordinate, and data for one line. If it is determined that the data is output, the process proceeds to step S8. If it is determined that the data for one line is not output, the process proceeds to step S10.

ステップS8では、補間位相・入力データ座標計算部28がx座標をSxとすると共に、y座標に垂直方向の拡大縮小パラメータVaを加算する。一方、ステップS10ではx座標に水平方向の拡大縮小パラメータHaを加算し、ステップS2へ戻る。なお、上記拡大縮小パラメータVaは、補正後の画像に対する歪みを持った原画像の垂直方向における長さの比により決定され、補正後に画像を垂直方向に拡大する場合には1より小さな値とされ、逆に縮小する場合は1より大きな値とされ、等倍の場合には1とされる。   In step S8, the interpolation phase / input data coordinate calculation unit 28 sets the x coordinate to Sx, and adds the enlargement / reduction parameter Va in the vertical direction to the y coordinate. On the other hand, in step S10, the horizontal enlargement / reduction parameter Ha is added to the x coordinate, and the process returns to step S2. The enlargement / reduction parameter Va is determined by a ratio of lengths of the original image having distortion to the corrected image in the vertical direction, and is set to a value smaller than 1 when the image is enlarged in the vertical direction after correction. On the contrary, when the image is reduced, the value is larger than 1, and when the image is scaled, the value is 1.

ステップS9では補間位相・入力データ座標計算部28がさらにy座標を基に1フレーム分、すなわち垂直ライン数(垂直画素数)分の画像データが出力データバッファ32から出力されたか否かを判断し、1フレーム分のデータが出力されたと判断した場合には動作を終了し、1フレーム分のデータが出力されていないと判断した場合にはステップS10へ進む。   In step S9, the interpolation phase / input data coordinate calculation unit 28 further determines whether image data for one frame, ie, the number of vertical lines (number of vertical pixels) has been output from the output data buffer 32 based on the y coordinate. If it is determined that one frame of data has been output, the operation is terminated. If it is determined that one frame of data has not been output, the process proceeds to step S10.

なお、以上のような垂直方向における1次元補間では、水平方向に関するデータの補間や画像の拡大・縮小を伴わないため、図14(a)に示される水平方向のスキャンにおいては毎サイクル同様な動作が繰り返される。しかしながら、補正量パラメータYmが大きいときには、画像メモリ602における格納場所に応じて然るべき補間用データを読み出す時間が大きくなる場合がある。このような場合に、データ取得部29は補間位相・入力データ座標計算部28及び画歪補正パラメータデコーダ34へ活性化された待機信号WTを供給し、待機信号WTの該活性期間において補間位相・入力データ座標計算部28及び画歪補正パラメータデコーダ34の動作を中断させる。   Note that the one-dimensional interpolation in the vertical direction as described above does not involve the interpolation of the data in the horizontal direction and the enlargement / reduction of the image. Therefore, in the horizontal scanning shown in FIG. Is repeated. However, when the correction amount parameter Ym is large, it may take a long time to read appropriate interpolation data depending on the storage location in the image memory 602. In such a case, the data acquisition unit 29 supplies the standby signal WT that has been activated to the interpolation phase / input data coordinate calculation unit 28 and the image distortion correction parameter decoder 34, and the interpolation phase / The operations of the input data coordinate calculation unit 28 and the image distortion correction parameter decoder 34 are interrupted.

以上より、垂直1次元補間部502は、歪みを持った原画像に対して垂直方向の1次元補間演算を施すことにより、垂直画歪み補正処理と垂直方向の拡大・縮小処理を同時に実現し、完全に歪みの取れた画像を生成して出力する。   As described above, the vertical one-dimensional interpolation unit 502 simultaneously performs vertical image distortion correction processing and vertical enlargement / reduction processing by performing vertical one-dimensional interpolation operation on the original image having distortion, Generate and output a fully distorted image.

なお、上記垂直1次元補間による等倍変換の具体例が図15に示される。ここで、図15は輝度信号に関する変換を示すグラフであり、横軸はx座標、縦軸は補正されたy座標(Y+Ym)を示す。   A specific example of the equal magnification conversion by the vertical one-dimensional interpolation is shown in FIG. Here, FIG. 15 is a graph showing conversion relating to the luminance signal, where the horizontal axis represents the x coordinate and the vertical axis represents the corrected y coordinate (Y + Ym).

そして、図15において、y座標が0でx座標が0.0から10.0の10個の点は補正後の画像上における点を示し、矢印は該各点に対応する原画像上の点までの補正量パラメータYmを示す。すなわち例えば、補正後の画像において座標(1.0,0)の点は、補正前の原画像において座標(1.0,7.1)の点に対応し、補正量パラメータが7.1で補間位相がその小数成分0.1とされる。   In FIG. 15, 10 points with a y coordinate of 0 and an x coordinate of 0.0 to 10.0 indicate points on the corrected image, and the arrows indicate the correction amount up to the point on the original image corresponding to each point. Parameter Ym is shown. That is, for example, the point at the coordinate (1.0, 0) in the image after correction corresponds to the point at the coordinate (1.0, 7.1) in the original image before correction, the correction amount parameter is 7.1, and the interpolation phase is the fractional component 0.1. Is done.

次に、図1に示された前処理装置3及び補正パラメータデコーダ9について詳しく説明する。最初に、図16に示されたフローチャートを参照しつつ、前処理装置3及び補正パラメータデコーダ9の動作の概要を説明する。   Next, the preprocessing device 3 and the correction parameter decoder 9 shown in FIG. 1 will be described in detail. First, the outline of the operations of the preprocessing device 3 and the correction parameter decoder 9 will be described with reference to the flowchart shown in FIG.

図16に示されるように、ステップS1では、補正パラメータエンコーダ5が補正パラメータ導出部6から全画素点の補正量ベクトルを読み込む。次に、ステップS2に示されるように、補正パラメータエンコーダ5は該全画素点の補正量ベクトルを区分毎に分割するための格子線を決定する。なお、該格子線の決定については後に詳しく説明する。   As shown in FIG. 16, in step S <b> 1, the correction parameter encoder 5 reads correction amount vectors for all pixel points from the correction parameter deriving unit 6. Next, as shown in step S2, the correction parameter encoder 5 determines a grid line for dividing the correction amount vector of all the pixel points for each section. The determination of the lattice lines will be described in detail later.

ステップS3では、補正パラメータエンコーダ5が該格子線により分割された各区分の補正量ベクトルを圧縮して圧縮データPcとして補正パラメータデコーダ9へ供給すると共に、ステップS4では撮像素子300が画像を撮像する。なお、補正量ベクトルの該圧縮については後に詳しく説明する。   In step S3, the correction parameter encoder 5 compresses the correction amount vector of each section divided by the grid lines and supplies it as compressed data Pc to the correction parameter decoder 9. In step S4, the image sensor 300 captures an image. . The compression of the correction amount vector will be described in detail later.

そして、ステップS5ではデータ変換部400が該撮像により生成されたアナログ画像信号をデジタル画像信号に変換する。ステップS6では、補正パラメータデコーダ9は補正量パラメータの信号処理部10への読み出しに必要な格子を決定し、ステップS7において信号処理部10から供給された座標を該格子に応じて正規化する。   In step S5, the data converter 400 converts the analog image signal generated by the imaging into a digital image signal. In step S6, the correction parameter decoder 9 determines a grid necessary for reading the correction amount parameter to the signal processing unit 10, and normalizes the coordinates supplied from the signal processing unit 10 in step S7 according to the grid.

次にステップS8においては、補正パラメータデコーダ9が該格子を利用して補正パラメータエンコーダ5から供給された圧縮データPcをデコードし、得られた補正量パラメータを信号処理部10へ供給する。そして、ステップS9においては、信号処理部10が該補正量パラメータを用いて原画像に対する補間演算を施す。ここで、ステップS10において制御マイコン8が信号処理部10への原画像の入力を終了させるか否かを判断し、終了させると判断した場合には画像処理装置2の動作を終了させ、該入力を終了させないと判断した場合にはステップS4へ戻る。   In step S8, the correction parameter decoder 9 decodes the compressed data Pc supplied from the correction parameter encoder 5 using the lattice, and supplies the obtained correction amount parameter to the signal processing unit 10. In step S9, the signal processing unit 10 performs an interpolation operation on the original image using the correction amount parameter. Here, in step S10, the control microcomputer 8 determines whether or not the input of the original image to the signal processing unit 10 is to be ended. If it is determined that the input is to be ended, the operation of the image processing apparatus 2 is ended and the input is performed. If it is determined not to end the process, the process returns to step S4.

図17は、図1に示された補正パラメータエンコーダ5の構成を示すブロック図である。図17に示されるように、補正パラメータエンコーダ5は格子分割部11とパラメータ圧縮部12とを含む。ここで、格子分割部11はユーザインタフェースに接続され、パラメータ圧縮部12は格子分割部11と補正パラメータ導出部6に接続される。以下において、図18から図23を参照しつつ、補正パラメータエンコーダ5の動作を詳しく説明する。   FIG. 17 is a block diagram showing a configuration of the correction parameter encoder 5 shown in FIG. As shown in FIG. 17, the correction parameter encoder 5 includes a lattice division unit 11 and a parameter compression unit 12. Here, the lattice division unit 11 is connected to the user interface, and the parameter compression unit 12 is connected to the lattice division unit 11 and the correction parameter derivation unit 6. Hereinafter, the operation of the correction parameter encoder 5 will be described in detail with reference to FIGS.

まず、格子分割部11はデータ変換部400により得られた画像102を複数の領域に分割するための格子線を決定する。そして、パラメータ圧縮部12は、このような格子線により分割された領域毎に格子点を利用して画像の補正量ベクトルを圧縮し、得られた圧縮データPcを補正パラメータデコーダ9へ供給する。   First, the lattice division unit 11 determines lattice lines for dividing the image 102 obtained by the data conversion unit 400 into a plurality of regions. Then, the parameter compression unit 12 compresses the correction amount vector of the image using the grid points for each area divided by such grid lines, and supplies the obtained compressed data Pc to the correction parameter decoder 9.

このような方法によれば、補正パラメータデコーダ9により保持すべき補正量ベクトルの数を削減することができると共に、全点の補正量ベクトルを保持する場合と同様にx及びy方向の補正ベクトルを分けて演算することができ、高速な補間演算を実現することができる。   According to such a method, the number of correction amount vectors to be held by the correction parameter decoder 9 can be reduced, and correction vectors in the x and y directions can be obtained as in the case of holding correction point vectors for all points. The calculation can be performed separately, and a high-speed interpolation calculation can be realized.

以下において、図17に示された格子分割部11による格子分割動作を説明する。なお、実際にはデータ変換部400により生成された画像102の歪みは中心(原点)に対して点対称に発生するため、図18(a)に示されるように、画像102の1/4の領域、例えば第一象限Q1のみを格子分割の対象領域とすれば足りる。   Hereinafter, the lattice division operation by the lattice division unit 11 shown in FIG. 17 will be described. Actually, the distortion of the image 102 generated by the data conversion unit 400 occurs point-symmetrically with respect to the center (origin), and therefore, ¼ of the image 102 as shown in FIG. Only a region, for example, the first quadrant Q1 is sufficient as a target region for lattice division.

すなわち、上記歪みは中心からの距離によって決まるため、第一象限Q1における画像処理はx座標又はy座標、あるいはその双方の符号を反転させることにより他の象限における画像処理にそのまま適用することができる。   That is, since the distortion is determined by the distance from the center, the image processing in the first quadrant Q1 can be applied as it is to the image processing in the other quadrants by reversing the signs of the x coordinate and / or the y coordinate. .

格子分割決定方法には、所定の領域をx方向及びy方向において均等に分割する方法(均等分割)と、各格子の幅が2のべき乗となるように分割する方法(べき乗分割)と、最適分割位置において分割する方法(最適分割)とがある。   The grid division determination method includes a method of dividing a predetermined region equally in the x and y directions (equal division), a method of dividing each grid so that the width of each grid is a power of 2 (power division), and an optimum There is a method of dividing at the dividing position (optimum division).

ここで、格子分割部11はユーザインタフェースから格子分割方法を指定する信号Lwと格子分割数を指定する信号Lnとを受け取り、図18(b)に示されるように、該指定された方法により格子50を用いて画像102を指定された分割数に分割する。   Here, the grid division unit 11 receives a signal Lw for designating a grid division method and a signal Ln for designating the number of grid divisions from the user interface, and as shown in FIG. 50 is used to divide the image 102 into a designated number of divisions.

このとき、上記のような格子分割により得られた格子点における補正量ベクトル、すなわち各方向につき(1/格子幅)毎の補正量ベクトルのみが該補間演算に利用される。なお、上記べき乗分割では格子の幅が2のべき乗とされることにより、各格子点における補正量ベクトルの演算が容易となるため、回路規模を軽減することができる。   At this time, only the correction amount vector at the lattice point obtained by the lattice division as described above, that is, the correction amount vector for each direction (1 / grid width) is used for the interpolation calculation. In the power division, since the grid width is set to a power of 2, calculation of the correction amount vector at each grid point is facilitated, so that the circuit scale can be reduced.

以下において、図19及び図20のフローチャートを参照しつつ、格子分割部11により実行される上記最適分割方法を説明する。   Hereinafter, the optimum dividing method executed by the lattice dividing unit 11 will be described with reference to the flowcharts of FIGS. 19 and 20.

ステップS1では、まず画像処理における走査方向をx方向と決定する。次に、ステップS2では図18(a)に示される画面上端における1ラインL1の補正量パラメータを取得して、該補正量パラメータのx依存性を調べる。そして例えば、基準点をx=0としたときにおける該補正量パラメータXm(x)のx依存性の一例が図21(a)に示される。   In step S1, the scanning direction in image processing is first determined as the x direction. Next, in step S2, a correction amount parameter for one line L1 at the upper end of the screen shown in FIG. 18A is acquired, and the x dependency of the correction amount parameter is examined. For example, FIG. 21A shows an example of x dependency of the correction amount parameter Xm (x) when the reference point is x = 0.

ステップS3では、該基準点(原点)の2画素右方にターゲット点を設定し、基準点と該ターゲット点との間(一区分)における全点を2次多項式(以下、「区分2次多項式」ともいう)でフィッティングする。   In step S3, a target point is set two pixels to the right of the reference point (origin), and all points between the reference point and the target point (one section) are quadratic polynomials (hereinafter referred to as “section quadratic polynomials”). ”).

このとき、該区分において補正量パラメータXm(x)の値と該2次多項式により求められた補正量との差(コストともいう)が所定値より小さいという条件を満たす場合には、ターゲット点をさらに右へ1画素ずらして該コスト計算を繰り返す。このようにして、上記条件を満足する最大点を探索する(右方向探索)。   At this time, if the condition that the difference (also referred to as cost) between the value of the correction amount parameter Xm (x) and the correction amount obtained by the quadratic polynomial is smaller than a predetermined value in the section, the target point is determined. Further, the cost calculation is repeated by shifting one pixel to the right. In this way, the maximum point satisfying the above condition is searched (rightward search).

ステップS4では基準点をターゲット点にずらし、次区分における右方向探索を実行する。なお、このような方法により、例えば図21(b)に示された点X1,X2,X3が順次決定され、xの関数としての補正量パラメータXm(x)が区分毎に2次多項式で近似される。   In step S4, the reference point is shifted to the target point, and a right direction search in the next section is executed. By such a method, for example, the points X1, X2, and X3 shown in FIG. 21B are sequentially determined, and the correction amount parameter Xm (x) as a function of x is approximated by a quadratic polynomial for each section. Is done.

ステップS5ではターゲット点が右端であるか否かを判断し、右端であると判断した場合にはステップS6へ進むと共に、右端でないと判断した場合にはステップS3へ戻る。   In step S5, it is determined whether or not the target point is the right end. If it is determined that the target point is the right end, the process proceeds to step S6. If it is determined that the target point is not the right end, the process returns to step S3.

ステップS6では右端のデータを基準点として該基準点の2画素左方にターゲット点を設定し、上記右方向探索と同様に左方向探索を実行する。そして、該コスト計算によりある区分が決定された後は、ステップS7において基準点を該ターゲット点にずらし、次区分における左方向探索を実行する。なお、このような方法により、例えば図21(c)に示された点X5,X4が順次決定され、xの関数としての補正量パラメータXm(x)が区分毎に2次多項式で近似される。   In step S6, the right end data is used as a reference point, a target point is set to the left of two pixels of the reference point, and a left direction search is executed in the same manner as the right direction search. Then, after a certain segment is determined by the cost calculation, the reference point is shifted to the target point in step S7, and a leftward search in the next segment is executed. By such a method, for example, the points X5 and X4 shown in FIG. 21C are sequentially determined, and the correction amount parameter Xm (x) as a function of x is approximated by a quadratic polynomial for each section. .

ステップS8ではターゲット点が左端であるか否かを判断し、左端であると判断した場合にはステップS9へ進むと共に、左端でないと判断した場合にはステップS6へ戻る。   In step S8, it is determined whether or not the target point is the left end. If it is determined that the target point is the left end, the process proceeds to step S9. If it is determined that the target point is not the left end, the process returns to step S6.

次にステップS9においては、図21(d)に示されるように、上記右方向探索により求められた点と左方向探索により求められた点とを比較し、全体の該コストが最小となる分割位置(最適点)を求める。ここで例えば、図21(d)に示されるように、点X4と点X1とを比較することにより点X6を決定し、点X5と点X2とを比較することによって点X7を決定する。   Next, in step S9, as shown in FIG. 21 (d), the points obtained by the above-mentioned right direction search are compared with the points obtained by the left direction search, so that the total cost is minimized. Find the position (optimum point). Here, for example, as shown in FIG. 21D, the point X6 is determined by comparing the point X4 and the point X1, and the point X7 is determined by comparing the point X5 and the point X2.

ステップS10では、分割位置の探索方向がx方向であるか否かを判断し、x方向であると判断した場合にはステップS11へ進むと共に、x方向でなくy方向であると判断した場合には動作を終了する。   In step S10, it is determined whether or not the search direction of the division position is the x direction. If it is determined that it is the x direction, the process proceeds to step S11, and if it is determined that it is the y direction instead of the x direction. Ends the operation.

ステップS11では、分割対象領域の右端における1ラインの補正量パラメータを取得して該補正量パラメータのy依存性を調べ、ステップS3へ戻る。なお、基準点をy=0とし、横軸をy座標、縦軸を補正量パラメータXm(y)とした関数は図21(a)と同様に示され、該関数に対してx方向と同様に該探索動作が実行される。格子分割部11は、このようにx方向及びy方向においてそれぞれ分割位置を決定して格子50を確定する。なお、この確定された格子位置は、格子情報Liとしてパラメータ圧縮部12へ供給される。   In step S11, a correction amount parameter for one line at the right end of the division target region is acquired, the y dependency of the correction amount parameter is examined, and the process returns to step S3. A function in which the reference point is y = 0, the horizontal axis is the y coordinate, and the vertical axis is the correction amount parameter Xm (y) is shown in the same manner as in FIG. The search operation is executed at the same time. In this way, the lattice division unit 11 determines the division positions in the x direction and the y direction to determine the lattice 50. The determined lattice position is supplied to the parameter compression unit 12 as lattice information Li.

図17に示されたパラメータ圧縮部12は、格子分割部11から供給された格子情報Liに応じて、各格子点における補正量ベクトルのみを保持する。そしてパラメータ圧縮部12は、図22(a)に示されるように格子50を構成する線分L2を処理対象として決定する。ここで例えば、線分L2の両端のx座標をX0及びX2とし、これら両端における補正量パラメータをそれぞれXm0及びXm2としたとき、線分L2上の各点におけるx座標と補正量パラメータとの関係は例えば図22(b)のように示される。このとき、線分L2上の画素におけるx座標をX1、補正量パラメータをXm1として、以下の式(1)を満たす係数Ca,Cb,Ccを算出する。   The parameter compressing unit 12 illustrated in FIG. 17 holds only the correction amount vector at each lattice point according to the lattice information Li supplied from the lattice dividing unit 11. And the parameter compression part 12 determines the line segment L2 which comprises the grating | lattice 50 as a process target, as FIG. 22 (a) shows. Here, for example, when the x-coordinates at both ends of the line segment L2 are X0 and X2, and the correction amount parameters at these ends are Xm0 and Xm2, respectively, the relationship between the x-coordinate and the correction amount parameter at each point on the line segment L2. For example, as shown in FIG. At this time, coefficients Ca, Cb, and Cc satisfying the following expression (1) are calculated by setting the x coordinate of the pixel on the line segment L2 to X1 and the correction amount parameter to Xm1.

Figure 2008092602
なお、図22(b)及び図22(c)に示されるように、X1はX0からX2まで順次1だけインクリメントされ、線分L2上の各点において補正量パラメータの大きさと該区分2次多項式による近似値との差が順次比較される。そして、該差が最小となる点のx座標及び補正量パラメータが、それぞれX1及びXm1として上記式(1)に代入される。
Figure 2008092602
As shown in FIGS. 22B and 22C, X1 is sequentially incremented by 1 from X0 to X2, and the magnitude of the correction amount parameter and the piecewise quadratic polynomial at each point on the line segment L2. The difference from the approximate value is sequentially compared. Then, the x coordinate and the correction amount parameter of the point where the difference becomes the minimum are substituted into the above equation (1) as X1 and Xm1, respectively.

ここでパラメータ圧縮部12は、格子50をなす全線分について上記係数Ca,Cb,Ccを算出して保持すると共に、これらの係数Ca,Cb,Ccを圧縮データPcとして補正パラメータデコーダ9へ供給する。   Here, the parameter compression unit 12 calculates and holds the coefficients Ca, Cb, Cc for all the line segments forming the lattice 50, and supplies these coefficients Ca, Cb, Cc to the correction parameter decoder 9 as compressed data Pc. .

図23は、図2に示されたx方向用の画歪補正パラメータデコーダ33の構成を示すブロック図である。図23に示されるように、画歪補正パラメータデコーダ33は歪みパラメータバッファ61と格子決定部62、正規化部63、関数変換部64、及び平面補間部65を含む。   FIG. 23 is a block diagram showing a configuration of the image distortion correction parameter decoder 33 for the x direction shown in FIG. As shown in FIG. 23, the image distortion correction parameter decoder 33 includes a distortion parameter buffer 61, a lattice determination unit 62, a normalization unit 63, a function conversion unit 64, and a plane interpolation unit 65.

ここで、歪みパラメータバッファ61は制御マイコン8及び補正パラメータエンコーダ5に接続され、格子決定部62と正規化部63及び関数変換部64は共に歪みパラメータバッファ61に接続される。さらに、格子決定部62は信号処理部10に接続され、正規化部63は格子決定部62に接続される。また、関数変換部64は正規化部63に接続され、平面補間部65は関数変換部64に接続される。なお、信号処理部10は平面補間部65に接続される。   Here, the distortion parameter buffer 61 is connected to the control microcomputer 8 and the correction parameter encoder 5, and the lattice determination unit 62, the normalization unit 63, and the function conversion unit 64 are all connected to the distortion parameter buffer 61. Further, the lattice determination unit 62 is connected to the signal processing unit 10, and the normalization unit 63 is connected to the lattice determination unit 62. The function conversion unit 64 is connected to the normalization unit 63, and the plane interpolation unit 65 is connected to the function conversion unit 64. The signal processing unit 10 is connected to the plane interpolation unit 65.

上記のような構成を有する画歪補正パラメータデコーダ33は、補正パラメータエンコーダ5から供給された圧縮データPcをデコードして画面上の各点におけるx方向の補正量パラメータを復元するが、該動作を以下に詳しく説明する。   The image distortion correction parameter decoder 33 having the above configuration decodes the compressed data Pc supplied from the correction parameter encoder 5 to restore the correction amount parameter in the x direction at each point on the screen. This will be described in detail below.

なお、図2に示されたy方向用の画歪補正パラメータデコーダ34は、x方向用の画歪補正パラメータデコーダ33と同様な構成を有し、該画歪補正パラメータデコーダ33と同様に動作する。   The image distortion correction parameter decoder 34 for y direction shown in FIG. 2 has the same configuration as the image distortion correction parameter decoder 33 for x direction, and operates in the same manner as the image distortion correction parameter decoder 33. .

まず歪みパラメータバッファ61は、補正パラメータエンコーダ5より圧縮データPcと、該圧縮データPcに対応する格子の位置を示す格子位置情報Lpと、該格子の幅の逆数からなる格子定数情報Lcとを入力して格納すると共に、制御マイコン8からコマンド信号Cdを入力する。   First, the distortion parameter buffer 61 receives the compressed data Pc, the lattice position information Lp indicating the position of the lattice corresponding to the compressed data Pc, and lattice constant information Lc consisting of the reciprocal of the width of the lattice from the correction parameter encoder 5. And a command signal Cd is input from the control microcomputer 8.

格子決定部62は、信号処理部10から補正後の画像を求める点のx座標(xt)及びy座標(yt)を補正パラメータ要求信号Rxと共に受領し、該点が含まれる格子枠を決定する。ここで、格子決定部62は供給された座標(xt,yt)と歪みパラメータバッファ61から供給される格子情報LIとを比較することにより該格子枠を決定する。   The lattice determination unit 62 receives the x-coordinate (xt) and y-coordinate (yt) of the point for which a corrected image is to be obtained from the signal processing unit 10 together with the correction parameter request signal Rx, and determines a lattice frame including the point. . Here, the lattice determination unit 62 determines the lattice frame by comparing the supplied coordinates (xt, yt) with the lattice information LI supplied from the distortion parameter buffer 61.

次に、正規化部63は格子決定部62により決定された格子枠の範囲で所定の補間演算を実行するため、座標(xt,yt)を以下の式(2)により正規化する。但し、ここでは図24(a)に示されるように、座標(xt,yt)を含む格子枠の四隅の座標が(X0,Y0)と(X0,Y2)、(X2,Y0)及び(X2,Y2)であると仮定する。   Next, the normalizing unit 63 normalizes the coordinates (xt, yt) by the following equation (2) in order to execute a predetermined interpolation calculation within the range of the lattice frame determined by the lattice determining unit 62. However, here, as shown in FIG. 24A, the coordinates of the four corners of the lattice frame including the coordinates (xt, yt) are (X0, Y0), (X0, Y2), (X2, Y0) and (X2). , Y2).

Figure 2008092602
なお、上記式(2)における1/(X2−X0)及び1/(Y2−Y0)の値は補正パラメータエンコーダ5に含まれた格子分割部11において算出され、正規化部63は歪みパラメータバッファ61から該値を格子定数情報Lcとして受領する。これより、正規化部63において上記値を用いた乗算を実行することによって、座標(px,py)が算出される。
Figure 2008092602
Note that the values of 1 / (X2−X0) and 1 / (Y2−Y0) in the above equation (2) are calculated by the lattice division unit 11 included in the correction parameter encoder 5, and the normalization unit 63 stores the distortion parameter buffer. The value is received from 61 as lattice constant information Lc. Thus, the coordinates (px, py) are calculated by executing multiplication using the above values in the normalizing unit 63.

関数変換部64は、図24(b)に示されるように座標(xt,yt)を含む該格子枠において、x又はyの関数としての補正量パラメータf(x)とg(x)、m(y)、及びn(y)を求める。また関数変換部64は、上記4つの関数のそれぞれにおける係数Ca,Cb,Ccを、係数情報CLとして歪みパラメータバッファ61から受領する。   As shown in FIG. 24B, the function conversion unit 64 uses the correction amount parameters f (x) and g (x), m as functions of x or y in the lattice frame including the coordinates (xt, yt). (Y) and n (y) are obtained. The function converter 64 receives the coefficients Ca, Cb, and Cc in each of the four functions from the distortion parameter buffer 61 as coefficient information CL.

そして、関数変換部64は、上記4つの関数を用いて上記座標(xt,yt)の補正量パラメータを求めるが、x方向及びy方向における関数の連続性を担保するため、該4つの関数f,g,m,nを例えば下記の式(3)に示されるような重み付けを考慮した近似関数F,G,M,Nに変換する。なお、式(3)におけるfa,fb,fcは、関数fにおいて上記係数Ca,Cb,Ccに対応する係数を示し、同様にga,gb,gcは関数gの、ma,mb,mcは関数mの、na,nb,ncは関数nの該係数をそれぞれ示す。   The function conversion unit 64 obtains the correction amount parameter for the coordinates (xt, yt) using the four functions. In order to ensure the continuity of the function in the x direction and the y direction, the four functions f , G, m, n are converted into approximate functions F, G, M, N in consideration of weighting as shown in the following equation (3), for example. In Equation (3), fa, fb, and fc indicate coefficients corresponding to the coefficients Ca, Cb, and Cc in the function f. Similarly, ga, gb, and gc are functions of the function g, and ma, mb, and mc are functions. m, na, nb, and nc represent the coefficients of the function n, respectively.

Figure 2008092602
なお、関数変換部64は正規化部63より供給された座標(px,py)を、そのまま平面補間部65へ供給する。
Figure 2008092602
The function conversion unit 64 supplies the coordinates (px, py) supplied from the normalization unit 63 to the plane interpolation unit 65 as they are.

そして、平面補間部65は、関数変換部64により得られた関数F,G,M,Nと上記座標(px,py)を示す情報とを用いて、下記の式(4)によって上記座標(xt,yt)における補正量パラメータXmを算出する。   Then, the plane interpolation unit 65 uses the functions F, G, M, and N obtained by the function conversion unit 64 and the information indicating the coordinates (px, py) to express the coordinates ( A correction amount parameter Xm at xt, yt) is calculated.

Figure 2008092602
平面補間部65は、このような方法により算出された補正量パラメータXmを、該パラメータの算出動作が終了したことを示すイネーブル信号ENと共に信号処理部10へ供給する。なお、y方向用の画歪補正パラメータデコーダ34は、上記と同様な方法により補正量パラメータYmを算出し、イネーブル信号ENと共に信号処理部10へ供給する。
Figure 2008092602
The plane interpolation unit 65 supplies the correction amount parameter Xm calculated by such a method to the signal processing unit 10 together with the enable signal EN indicating that the parameter calculation operation has been completed. The image distortion correction parameter decoder 34 for y direction calculates the correction amount parameter Ym by the same method as described above, and supplies it to the signal processing unit 10 together with the enable signal EN.

なお、格子枠をなす上記関数f,g,m,nは、上記のように区分2次多項式によって近似する他、一般的にn次多項式(nは自然数)により近似しても良い。   The functions f, g, m, and n forming the lattice frame may be approximated by an nth order polynomial (n is a natural number) in addition to being approximated by a piecewise second order polynomial as described above.

図25は、図2に示された画像メモリ602とデータ取得部29及びデータ補間計算部31の構成を示す図である。なお、図25は、画像処理装置2が(4×4)タップの16画素の画像データを利用した補間演算によって各画素の画像データを生成する場合の構成を示す。   FIG. 25 is a diagram illustrating a configuration of the image memory 602, the data acquisition unit 29, and the data interpolation calculation unit 31 illustrated in FIG. FIG. 25 shows a configuration in the case where the image processing apparatus 2 generates image data of each pixel by interpolation calculation using 16 pixel image data of (4 × 4) taps.

図25に示されるように、画像メモリ602はセレクタ67と、垂直タップ数より1だけ大きな5つのメモリ、すなわちAメモリ71とBメモリ72、Cメモリ73、Dメモリ74、及びEメモリ75を含み、データ取得部29は制御部80とAバッファ81、Bバッファ82、Cバッファ83、Dバッファ84、Eバッファ85、サイクル分割部560、及びセレクタ96〜99を含む。なお、サイクル分割部560はセレクタ91〜95を含む。   As shown in FIG. 25, the image memory 602 includes a selector 67 and five memories that are one larger than the number of vertical taps, that is, an A memory 71 and a B memory 72, a C memory 73, a D memory 74, and an E memory 75. The data acquisition unit 29 includes a control unit 80, an A buffer 81, a B buffer 82, a C buffer 83, a D buffer 84, an E buffer 85, a cycle division unit 560, and selectors 96 to 99. Note that the cycle division unit 560 includes selectors 91 to 95.

ここで、データ取得部29には、上記のように垂直タップ数より1だけ多い5つのバッファ(Aバッファ81からEバッファ85)及び対応する5つのセレクタ91〜95と、垂直タップ数である4つのセレクタ96〜99が含まれることになる。   Here, the data acquisition unit 29 includes five buffers (A buffer 81 to E buffer 85) that are one more than the number of vertical taps as described above and the corresponding five selectors 91 to 95, and the number of vertical taps 4 Two selectors 96 to 99 are included.

また、データ補間計算部31は4つのレジスタ901及び乗算回路902と加算回路43を含む。   The data interpolation calculation unit 31 includes four registers 901, a multiplication circuit 902, and an addition circuit 43.

上記において、セレクタ67はデータ補間計算部26及び制御部80に接続され、Aメモリ71とBメモリ72、Cメモリ73、Dメモリ74、及びEメモリ75はセレクタ67に接続される。   In the above, the selector 67 is connected to the data interpolation calculation unit 26 and the control unit 80, and the A memory 71 and the B memory 72, the C memory 73, the D memory 74, and the E memory 75 are connected to the selector 67.

また、制御部80は画歪補正パラメータデコーダ34に接続され、Aバッファ81はAメモリ71に接続され、Bバッファ82はBメモリ72に接続される。同様に、Cバッファ83はCメモリ73に接続され、Dバッファ84はDメモリ74に接続され、Eバッファ85はEメモリ75に接続される。   The control unit 80 is connected to the image distortion correction parameter decoder 34, the A buffer 81 is connected to the A memory 71, and the B buffer 82 is connected to the B memory 72. Similarly, the C buffer 83 is connected to the C memory 73, the D buffer 84 is connected to the D memory 74, and the E buffer 85 is connected to the E memory 75.

また、セレクタ91はAバッファ81に接続され、セレクタ92はBバッファ82に接続され、セレクタ93はCバッファ83に接続される。同様に、セレクタ94はDバッファ84に接続され、セレクタ95はEバッファ85に接続される。また、セレクタ96〜99はそれぞれ5つのセレクタ91〜95に接続される。なお、セレクタ91〜99はそれぞれ制御部80により制御される。   The selector 91 is connected to the A buffer 81, the selector 92 is connected to the B buffer 82, and the selector 93 is connected to the C buffer 83. Similarly, the selector 94 is connected to the D buffer 84 and the selector 95 is connected to the E buffer 85. The selectors 96 to 99 are connected to the five selectors 91 to 95, respectively. The selectors 91 to 99 are controlled by the control unit 80, respectively.

また、セレクタ96〜99にはそれぞれレジスタ901が接続され、各レジスタ901には乗算回路902が接続される。そして、4つの乗算回路902は一つの加算回路43が接続される。   A register 901 is connected to each of the selectors 96 to 99, and a multiplication circuit 902 is connected to each register 901. The four multiplier circuits 902 are connected to one adder circuit 43.

ここで、上記のように、データ補間計算部26により水平方向の補間処理がなされたデータは画像メモリ602へ書き込まれ、同時にデータ取得部29により画像メモリ602から取得されたデータに垂直方向の補間処理が施されるため、処理待ち時間としてのフレーム遅延を生じさせることなく画歪み補正が実行される。   Here, as described above, the data subjected to the horizontal interpolation processing by the data interpolation calculation unit 26 is written into the image memory 602, and at the same time, the data obtained from the image memory 602 by the data acquisition unit 29 is vertically interpolated. Since the processing is performed, the image distortion correction is executed without causing a frame delay as a processing waiting time.

以下において、図25に示された画像メモリ602とデータ取得部29及びデータ補間計算部31の動作を詳しく説明する。まず、水平方向の補間処理がなされたデータはデータ補間計算部26から順次セレクタ67へ供給されるが、該データは制御部80により制御されるセレクタ67によってAメモリ71からEメモリ75までの5つのメモリへ振り分けられて格納される。   Hereinafter, operations of the image memory 602, the data acquisition unit 29, and the data interpolation calculation unit 31 illustrated in FIG. 25 will be described in detail. First, the data subjected to the horizontal interpolation processing is sequentially supplied from the data interpolation calculation unit 26 to the selector 67, and the data is transferred from the A memory 71 to the E memory 75 by the selector 67 controlled by the control unit 80. It is sorted and stored in one memory.

そして、Aメモリ71に格納されたデータはAバッファ81を介してセレクタ91へ供給され、Bメモリ72に格納されたデータはBバッファ82を介してセレクタ92へ供給される。同様に、Cメモリ73に格納されたデータはCバッファ83を介してセレクタ93へ供給され、Dメモリ74に格納されたデータはDバッファ84を介してセレクタ94へ供給され、Eメモリ75に格納されたデータはEバッファ85を介してセレクタ95へ供給される。   The data stored in the A memory 71 is supplied to the selector 91 via the A buffer 81, and the data stored in the B memory 72 is supplied to the selector 92 via the B buffer 82. Similarly, data stored in the C memory 73 is supplied to the selector 93 via the C buffer 83, and data stored in the D memory 74 is supplied to the selector 94 via the D buffer 84 and stored in the E memory 75. The processed data is supplied to the selector 95 via the E buffer 85.

ここで、サイクル分割部560に含まれた各セレクタ91〜95は、制御部80による制御に応じて、Aバッファ81からEバッファ85へ例えば2画素単位で読み出されたデータを分割し、1サイクル毎に1画素分のデータをセレクタ96〜99へ供給する。   Here, each of the selectors 91 to 95 included in the cycle dividing unit 560 divides data read from the A buffer 81 to the E buffer 85 in units of, for example, two pixels in accordance with control by the control unit 80. Data for one pixel is supplied to the selectors 96 to 99 for each cycle.

そして、各セレクタ96〜99はセレクタ91〜95から供給されたデータを制御部80による制御により選択的にレジスタ901へ出力する。これより、垂直方向の補間処理に必要なタップ数である4つのデータが、選択的にデータ補間計算部31へ供給されることになる。   The selectors 96 to 99 selectively output the data supplied from the selectors 91 to 95 to the register 901 under the control of the control unit 80. As a result, four data, which is the number of taps necessary for the vertical interpolation process, are selectively supplied to the data interpolation calculation unit 31.

さらに、レジスタ901に格納された各データは、各乗算回路902において補間係数C0〜C3との間で積がとられ、該4つの積が加算回路43で加算されることにより垂直方向の補間演算が施され、出力データバッファ32へ供給される。   Further, each data stored in the register 901 is multiplied with the interpolation coefficients C0 to C3 in each multiplication circuit 902, and the four products are added by the addition circuit 43, whereby an interpolation operation in the vertical direction is performed. Is supplied to the output data buffer 32.

ここで、図26を参照しつつ、本発明の実施の形態に係る画像処理装置2の動作を説明する。なお、図26(a)〜(d)においては、1フレーム分の画像データが示される。   Here, the operation of the image processing apparatus 2 according to the embodiment of the present invention will be described with reference to FIG. In FIGS. 26A to 26D, image data for one frame is shown.

まず図26(a)に示されるように、時刻T1から信号処理部10へ画像データが入力されると、時刻T2から水平1次元補間部501により水平方向の補間処理が施される。そして、図26(c)に示されるように、水平方向の補間処理が施された画像は時刻T2以降において、画像メモリ602に含まれたAメモリ71からEメモリ75へ順次書き込まれる。ここで、例えば奇数サイクルにおいて画像メモリ602からデータ取得部29へ垂直処理用のデータが読み出され、偶数サイクルにおいてデータ補間計算部26から水平処理がなされたデータが画像メモリ602へ書き込まれることによって、2サイクル周期による歪み補正処理が実行される。   First, as shown in FIG. 26A, when image data is input to the signal processing unit 10 from time T1, the horizontal one-dimensional interpolation unit 501 performs horizontal interpolation processing from time T2. Then, as shown in FIG. 26C, the image subjected to the horizontal interpolation process is sequentially written from the A memory 71 included in the image memory 602 to the E memory 75 after time T2. Here, for example, data for vertical processing is read from the image memory 602 to the data acquisition unit 29 in an odd cycle, and data subjected to horizontal processing from the data interpolation calculation unit 26 is written to the image memory 602 in an even cycle. A distortion correction process with a two-cycle period is executed.

このとき、図27に示されるように、画像102における水平ラインの最大歪み曲線104における垂直方向の最大歪み量に応じたライン数分のデータDmxが画像メモリ602に格納された時刻T3から、各ラインの垂直方向における補間演算が順次実行される。従って、該補間演算における遅延時間は時刻T1から時刻T3までとされ、1フレーム分のデータに水平方向の補間処理が施される時間(フレーム遅延)を待ち時間とする必要がないため、リアルタイムに画歪み補正を実行することができる。   At this time, as shown in FIG. 27, from time T3 when the data Dmx corresponding to the number of lines corresponding to the maximum amount of distortion in the vertical direction in the maximum distortion curve 104 of the horizontal line in the image 102 is stored in the image memory 602, each time Interpolation operations in the vertical direction of the line are sequentially executed. Accordingly, the delay time in the interpolation calculation is from time T1 to time T3, and it is not necessary to use the time (frame delay) in which the horizontal interpolation processing is performed on the data for one frame as a waiting time. Image distortion correction can be executed.

また、全体として画像メモリ602は、垂直方向においては上記最大歪み量に対応したライン数と垂直処理用タップ数(例えば4タップ)を加算した数、水平方向においては信号処理部10へ入力された画像の水平方向画素数分のデータを記憶するメモリ容量を有する。なお、図25に示されたAメモリ71からEメモリ75までの5つのメモリは例えば同容量とされ、各メモリのポート幅は例えば32ビットとされる。   Also, as a whole, the image memory 602 is the number obtained by adding the number of lines corresponding to the maximum distortion amount and the number of vertical processing taps (for example, 4 taps) in the vertical direction, and is input to the signal processing unit 10 in the horizontal direction. It has a memory capacity for storing data for the number of pixels in the horizontal direction of the image. Note that the five memories from A memory 71 to E memory 75 shown in FIG. 25 have the same capacity, for example, and the port width of each memory is, for example, 32 bits.

ここで、画像102の領域102Pにおけるデータを画像メモリ602へ格納する方法が図28に示される。なお、図28において「A」から「E」は、それぞれ図25に示された「Aメモリ」71から「Eメモリ」75を意味する。また、上記のように各メモリのポート幅が32ビットで、1画素分のデータがY信号(輝度情報)とC信号(色差情報)を含む16ビットからなる場合には、セレクタ67は2画素分のデータを単位として該データをAメモリ71からEメモリ75へ順次格納する。   Here, FIG. 28 shows a method for storing the data in the area 102P of the image 102 in the image memory 602. In FIG. 28, “A” to “E” mean “A memory” 71 to “E memory” 75 shown in FIG. Further, when the port width of each memory is 32 bits and the data for one pixel consists of 16 bits including the Y signal (luminance information) and the C signal (color difference information) as described above, the selector 67 has two pixels. The data is sequentially stored from the A memory 71 to the E memory 75 in units of minutes.

すなわちセレクタ67は、図28に示されるように、まず0ライン目の0から23画素目までのデータをAメモリ71に格納し、次に1ライン目の0から23画素目までのデータをBメモリ72に格納する。また同様に、セレクタ67は2ライン目の0から23画素目までのデータをCメモリ73に格納し、3ライン目の0から23画素目までのデータをDメモリ74に格納し、4ライン目の0から23画素目までのデータをEメモリ75に格納する。なお、セレクタ67は、以下同様に各ラインのデータをライン毎に順次Aメモリ71からEメモリ75へ格納する。   That is, as shown in FIG. 28, the selector 67 first stores the data from the 0th to 23rd pixels of the 0th line in the A memory 71, and then stores the data from the 0th to 23rd pixels of the 1st line to the Bth line. Store in the memory 72. Similarly, the selector 67 stores data from the 0th pixel to the 23rd pixel on the second line in the C memory 73, stores data from the 0th pixel to the 23rd pixel on the third line in the D memory 74, and stores the data on the fourth line. Are stored in the E memory 75. The selector 67 stores the data of each line sequentially from the A memory 71 to the E memory 75 for each line in the same manner.

以下において、データ取得部29に垂直タップ数より1多い数のバッファが必要とされる理由を説明する。歪みを持った画像102を局所的に見た場合、図29(a)〜(c)のパターン1から3に示されるように、水平方向に隣接する2画素間においては画像データが垂直方向に2画素以上移動していることはない。   Hereinafter, the reason why the number of buffers one more than the number of vertical taps is required for the data acquisition unit 29 will be described. When the image 102 having distortion is viewed locally, as shown in patterns 1 to 3 in FIGS. 29A to 29C, the image data is in the vertical direction between two pixels adjacent in the horizontal direction. It has never moved more than two pixels.

すなわち、図29(a)のパターン1に示されるように水平方向に隣接する画素間で該画像データは垂直方向に全く移動しないか、図29(b)や図29(c)のパターン2やパターン3に示されるように垂直方向に1画素分移動するものの、図30(a)や図30(b)に示されるように、水平方向に隣接する画素間で該画像データが垂直方向に2画素分以上移動することはない。   That is, as shown in the pattern 1 of FIG. 29A, the image data does not move in the vertical direction between pixels adjacent in the horizontal direction, or the pattern 2 of FIG. 29B and FIG. Although it moves by one pixel in the vertical direction as shown in pattern 3, as shown in FIGS. 30 (a) and 30 (b), the image data is 2 in the vertical direction between adjacent pixels in the horizontal direction. It does not move more than the amount of pixels.

ここで、該垂直4タップ処理においては、図31に示されるように中心画素Icに対して垂直方向に隣接する3つの周辺画素Ipを含めた4画素のデータを用いてフィルタリング処理が実行される。   Here, in the vertical 4-tap processing, as shown in FIG. 31, filtering processing is executed using data of four pixels including three peripheral pixels Ip adjacent in the vertical direction to the central pixel Ic. .

このとき、図32に示されるように、画像メモリ602に含まれたAメモリ71からEメモリ75の5つのメモリは、例えばそれぞれ32ビットのポートを持つものとされ、この場合には1回のアクセスにより該各ポートを介して16ビットの画像データが2画素分出力される。   At this time, as shown in FIG. 32, the five memories A memory 71 to E memory 75 included in the image memory 602 each have, for example, a 32-bit port. By accessing, 16-bit image data for two pixels is output through each port.

すなわち、図32に示されるように、1回のアクセスによってAメモリ71からは各々16ビットからなる画像データIa0,Ia1が2画素単位で読み出され、Bメモリ72からは各々16ビットからなる画像データIb0,Ib1が2画素単位で読み出され、Cメモリ73からは各々16ビットからなる画像データIc0,Ic1が2画素単位で読み出される。また同様に、Dメモリ74からは各々16ビットからなる画像データId0,Id1が2画素単位で読み出され、Eメモリ75からは各々16ビットからなる画像データIe0,Ie1が2画素単位で読み出される。   That is, as shown in FIG. 32, image data Ia0 and Ia1 each consisting of 16 bits are read from the A memory 71 in units of two pixels by one access, and an image consisting of 16 bits each from the B memory 72. Data Ib0 and Ib1 are read in units of two pixels, and image data Ic0 and Ic1 each having 16 bits are read from the C memory 73 in units of two pixels. Similarly, image data Id0 and Id1 each having 16 bits are read from the D memory 74 in units of two pixels, and image data Ie0 and Ie1 each having 16 bits are read from the E memory 75 in units of two pixels. .

このように、隣接する2画素分の画像データを垂直方向にタップ数より1だけ多く読み出すことによって、隣接画素間の変化が図29(a)から図29(c)に示されるパターン1からパターン3までのいずれであっても、各列において同じ処理が実行される。すなわち例えば図32の斜線部に示されるように、各列において中心画素Icの1つ上の画素から2つ下の画素まで垂直方向に並ぶ4つの画素における画像データを対象としたフィルタリング処理を実行することにより、水平方向に隣接する2画素の画像データがそれぞれ生成される。   In this way, by reading out the image data for two adjacent pixels by one more than the number of taps in the vertical direction, the change between the adjacent pixels changes from pattern 1 shown in FIGS. 29 (a) to 29 (c). In any case up to 3, the same processing is executed in each column. That is, for example, as shown in the shaded area in FIG. 32, filtering processing is performed on image data in four pixels arranged in the vertical direction from the pixel one pixel above the center pixel Ic to the pixel two pixels below in each column. As a result, image data of two pixels adjacent in the horizontal direction is generated.

なお、隣接画素間の該変化が図29(a)から図29(c)に示されたパターン1からパターン3のどれにあたるかは、制御部80により該フィルタリング処理前に予め識別される。   Note that the control unit 80 identifies in advance which of the patterns 1 to 3 shown in FIGS. 29 (a) to 29 (c) corresponds to the change between adjacent pixels.

より具体的には、制御部80が画歪補正パラメータデコーダ34から水平方向に隣接する2列における2つの中心画素Icのy座標を受け、該y座標の差に応じてセレクタ96〜99を制御することにより、図32の斜線部に示された画像データがフィルタリング処理の対象として選択的にデータ補間計算部31へ供給される。   More specifically, the control unit 80 receives the y coordinates of two central pixels Ic in two columns adjacent in the horizontal direction from the image distortion correction parameter decoder 34, and controls the selectors 96 to 99 according to the difference between the y coordinates. As a result, the image data indicated by the hatched portion in FIG. 32 is selectively supplied to the data interpolation calculation unit 31 as a filtering processing target.

なお、上記においては例として4タップのフィルタリング処理を説明したが、本発明の実施の形態に係る画像処理方法は、画像メモリ602とデータ取得部29及びデータ補間計算部31をタップ数に応じた構成とし、画像メモリ602に対するデータの入出力サイクルを変更することによって4タップ以外のフィルタリング処理にも適用することができることはいうまでもない。   In the above description, the 4-tap filtering process has been described as an example. However, in the image processing method according to the embodiment of the present invention, the image memory 602, the data acquisition unit 29, and the data interpolation calculation unit 31 correspond to the number of taps. It goes without saying that the present invention can be applied to filtering processing other than four taps by changing the data input / output cycle to the image memory 602.

以上より、本発明の実施の形態に係る画像処理システムによれば、撮像された光学歪みを伴う画像に対して水平及び垂直方向に1次元補間演算が施され、補正ベクトルが効率的に利用されるため、静止画像だけでなくリアルタイム処理が必要な動画像に対する歪み補正が簡易な構成により実現され、歪みの無い高画質な画像を容易に得ることができる。   As described above, according to the image processing system according to the embodiment of the present invention, the one-dimensional interpolation operation is performed in the horizontal and vertical directions on the captured image with the optical distortion, and the correction vector is efficiently used. Therefore, distortion correction for not only a still image but also a moving image that requires real-time processing is realized with a simple configuration, and a high-quality image without distortion can be easily obtained.

また、本発明の実施の形態に係る画像処理システムによれば、信号処理によりリアルタイムに画像の歪みを補正することができるため、レンズ設計の自由度を高めることができ、レンズの小型化やレンズの低コスト化を容易に実現することができる。   In addition, according to the image processing system according to the embodiment of the present invention, image distortion can be corrected in real time by signal processing, so that the degree of freedom in lens design can be increased, and the lens can be downsized and the lens can be reduced. The cost can be easily reduced.

本発明の実施の形態に係る画像処理システムの構成を示すブロック図である。1 is a block diagram illustrating a configuration of an image processing system according to an embodiment of the present invention. 図1に示された信号処理部の構成を示すブロック図である。It is a block diagram which shows the structure of the signal processing part shown by FIG. 図2に示された信号処理部により実行される1次元補間演算の概要を説明する図である。It is a figure explaining the outline | summary of the one-dimensional interpolation calculation performed by the signal processing part shown by FIG. 図2に示されたデータ補間計算部に含まれる水平処理回路の構成を示す図である。It is a figure which shows the structure of the horizontal processing circuit contained in the data interpolation calculation part shown by FIG. 図2に示された水平1次元補間部の動作を示す第一のフローチャートである。FIG. 3 is a first flowchart showing an operation of the horizontal one-dimensional interpolation unit shown in FIG. 2. FIG. 図2に示された水平1次元補間部の動作を示す第二のフローチャートであるFIG. 3 is a second flowchart showing the operation of the horizontal one-dimensional interpolation unit shown in FIG. 2. 図5及び図6に示された動作を説明する図である。It is a figure explaining the operation | movement shown by FIG.5 and FIG.6. 水平1次元補間における等倍変換の一例を示す図である。It is a figure which shows an example of the equal magnification conversion in horizontal one-dimensional interpolation. 図8に示された等倍変換の動作タイミングを示すタイミング図である。FIG. 9 is a timing chart showing the operation timing of equal magnification conversion shown in FIG. 8. 水平1次元補間における水平拡大変換の一例を示す図である。It is a figure which shows an example of the horizontal expansion conversion in horizontal one-dimensional interpolation. 図10に示された水平拡大変換の動作タイミングを示すタイミング図である。FIG. 11 is a timing chart showing the operation timing of horizontal enlargement conversion shown in FIG. 10. 図2に示された垂直1次元補間部の動作を示す第一のフローチャートである。3 is a first flowchart showing an operation of the vertical one-dimensional interpolation unit shown in FIG. 2. 図2に示された垂直1次元補間部の動作を示す第二のフローチャートである。FIG. 4 is a second flowchart showing an operation of the vertical one-dimensional interpolation unit shown in FIG. 2. 図12及び図13に示された動作を説明する図である。It is a figure explaining the operation | movement shown by FIG.12 and FIG.13. 垂直1次元補間における垂直拡大変換の一例を示す図である。It is a figure which shows an example of the vertical expansion conversion in vertical one-dimensional interpolation. 図1に示された前処理装置及び補正パラメータデコーダの動作の概要を示すフローチャートである。2 is a flowchart showing an outline of operations of a preprocessing device and a correction parameter decoder shown in FIG. 1. 図1に示された補正パラメータエンコーダの構成を示すブロック図である。It is a block diagram which shows the structure of the correction parameter encoder shown by FIG. 図17に示された格子分割部の動作の概要を説明する図である。It is a figure explaining the outline | summary of operation | movement of the lattice division part shown by FIG. 最適分割の方法を示す第一のフローチャートである。It is a 1st flowchart which shows the method of optimal division | segmentation. 最適分割の方法を示す第二のフローチャートである。It is a 2nd flowchart which shows the method of optimal division | segmentation. 図19及び図20に示された動作を説明する第一の図である。FIG. 21 is a first diagram illustrating the operation shown in FIGS. 19 and 20. 図19及び図20に示された動作を説明する第二の図である。FIG. 21 is a second diagram for explaining the operation shown in FIGS. 19 and 20. 図2に示されたx方向用の画歪補正パラメータデコーダの構成を示すブロック図である。FIG. 3 is a block diagram showing a configuration of an image distortion correction parameter decoder for x direction shown in FIG. 2. 図23に示された補正パラメータデコーダの動作を説明する図である。FIG. 24 is a diagram for explaining the operation of the correction parameter decoder shown in FIG. 23. 図2に示された画像メモリとデータ取得部及びデータ補間計算部の構成を示す図である。It is a figure which shows the structure of the image memory shown by FIG. 2, a data acquisition part, and a data interpolation calculation part. 水平1次元補間処理及び垂直1次元補間処理のタイミングを示すタイミング図である。It is a timing diagram which shows the timing of a horizontal one-dimensional interpolation process and a vertical one-dimensional interpolation process. 水平1次元補間及び垂直1次元補間を実行するために必要なメモリ容量を説明する図である。It is a figure explaining memory capacity required in order to perform horizontal one-dimensional interpolation and vertical one-dimensional interpolation. 図25に示された画像メモリへのデータ格納方法を説明する図である。It is a figure explaining the data storage method to the image memory shown by FIG. 隣接画素における垂直方向の取り得る変化パターンを示す図である。It is a figure which shows the change pattern which the vertical direction can take in an adjacent pixel. 隣接画素における垂直方向の有り得ない変化パターンを示す図である。It is a figure which shows the change pattern which cannot be the vertical direction in an adjacent pixel. 垂直4タップ処理を説明する図である。It is a figure explaining a vertical 4 tap process. 図25に示された画像メモリからのデータ読み出し方法を説明する図である。FIG. 26 is a diagram illustrating a method of reading data from the image memory illustrated in FIG. 25. 従来における画像処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the conventional image processing apparatus. 図33に示された画像処理装置の動作の概要を示すフローチャートである。It is a flowchart which shows the outline | summary of operation | movement of the image processing apparatus shown by FIG. 図33に示された信号処理部の構成を示すブロック図である。It is a block diagram which shows the structure of the signal processing part shown by FIG. 2次元補間による画像変換の原理を示す図である。It is a figure which shows the principle of the image conversion by two-dimensional interpolation. 図35に示されたデータ補間計算部の構成を示すブロック図である。FIG. 36 is a block diagram showing a configuration of a data interpolation calculation unit shown in FIG. 35.

符号の説明Explanation of symbols

2,100 画像処理装置、3 前処理装置、5 補正パラメータエンコーダ、6 補正パラメータ導出部、7,600,601,602 画像メモリ、8,700 制御マイコン、9 補正パラメータデコーダ、10,500 信号処理部、11 格子分割部、12 パラメータ圧縮部、21,570 データ書き込み部、22,27 演算制御部、23,28,520 補間位相・入力データ座標計算部、24,29,530 データ取得部、25,30,540 補間係数生成部、26,31,550 データ補間計算部、32,560 出力データバッファ、33,34 画歪補正パラメータデコーダ、40 水平処理回路、42,43,903,904 加算回路、61 歪みパラメータバッファ、62 格子決定部、63 正規化部、64 関数変換部、65 平面補間部、67,91〜98 セレクタ、71 Aメモリ、72 Bメモリ、73 Cメモリ、74 Dメモリ、75 Eメモリ、80 制御部、81 Aバッファ、82 Bバッファ、83 Cバッファ、84 Dバッファ、85 Eバッファ、200 レンズ、300 撮像素子、400 データ変換部、501 水平1次元補間部、502
垂直1次元補間部、510 タイミング制御部、800 同期信号生成部、900 ラインメモリ、901 レジスタ、902 乗算回路、905 除算回路、1010 補正データテーブル、1100 記録部、1200 再生部、1300 表示系処理部、1400 メディア。
2,100 image processing device, 3 preprocessing device, 5 correction parameter encoder, 6 correction parameter derivation unit, 7,600, 601,602 image memory, 8,700 control microcomputer, 9 correction parameter decoder, 10,500 signal processing unit , 11 Grid division unit, 12 parameter compression unit, 21,570 data writing unit, 22, 27 calculation control unit, 23, 28, 520 interpolation phase / input data coordinate calculation unit, 24, 29, 530 data acquisition unit, 25, 30, 540 interpolation coefficient generation unit, 26, 31, 550 data interpolation calculation unit, 32, 560 output data buffer, 33, 34 image distortion correction parameter decoder, 40 horizontal processing circuit, 42, 43, 903, 904 addition circuit, 61 Distortion parameter buffer, 62 lattice determination unit, 63 normalization unit, 64 function conversion unit, 65 plane Interpolation unit, 67, 91-98 selector, 71 A memory, 72 B memory, 73 C memory, 74 D memory, 75 E memory, 80 control unit, 81 A buffer, 82 B buffer, 83 C buffer, 84 D buffer, 85 E buffer, 200 lens, 300 image sensor, 400 data conversion unit, 501 horizontal one-dimensional interpolation unit, 502
Vertical one-dimensional interpolation unit, 510 timing control unit, 800 synchronization signal generation unit, 900 line memory, 901 register, 902 multiplication circuit, 905 division circuit, 1010 correction data table, 1100 recording unit, 1200 playback unit, 1300 display system processing unit 1400 media.

Claims (20)

歪みを持った原画像を補正する画像処理装置であって、
前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と、
前記水平補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と
を備えたことを特徴とする画像処理装置。
An image processing apparatus for correcting an original image having distortion,
Horizontal correction means for correcting distortion in the horizontal direction of the original image by performing an interpolation operation on the original image using a horizontal correction parameter indicating a horizontal correction amount at pixel points constituting the original image;
The image obtained by the correction by the horizontal correction means is subjected to an interpolation operation using a vertical correction parameter indicating a vertical correction amount at a pixel point constituting the original image, so that the original image in the vertical direction is corrected. An image processing apparatus comprising: vertical correction means for correcting distortion.
前記水平補正手段は、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することによって、前記原画像を水平方向において伸縮すると共に、
前記垂直補正手段は、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することによって、前記原画像を垂直方向において伸縮する
請求項1に記載の画像処理装置。
The horizontal correcting means expands and contracts the original image in the horizontal direction by adjusting a horizontal interval between pixel points for which image data is obtained by the interpolation calculation,
The image processing apparatus according to claim 1, wherein the vertical correction unit expands or contracts the original image in a vertical direction by adjusting a vertical interval between pixel points for which image data is obtained by the interpolation calculation.
前記水平補正手段は、
前記水平補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第一データ取得手段と、
前記水平補正パラメータの小数成分に応じて補間係数を生成する第一補間係数生成手段と、
前記第一データ取得手段により取得された前記画像データと、前記第一補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第一補間演算手段とを含み、
前記垂直補正手段は、
前記垂直補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第二データ取得手段と、
前記垂直補正パラメータの小数成分に応じて補間係数を生成する第二補間係数生成手段と、
前記第二データ取得手段により取得された前記画像データと、前記第二補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第二補間演算手段と
を含む請求項1に記載の画像処理装置。
The horizontal correction means includes
First data acquisition means for selectively acquiring image data at the pixel points according to an integer component of the horizontal correction parameter;
First interpolation coefficient generation means for generating an interpolation coefficient in accordance with the decimal component of the horizontal correction parameter;
First interpolation calculation means for executing the interpolation calculation using the image data acquired by the first data acquisition means and the interpolation coefficient generated by the first interpolation coefficient generation means,
The vertical correction means includes
Second data acquisition means for selectively acquiring image data at the pixel points according to an integer component of the vertical correction parameter;
Second interpolation coefficient generating means for generating an interpolation coefficient in accordance with the decimal component of the vertical correction parameter;
The second interpolation calculation means for executing the interpolation calculation using the image data acquired by the second data acquisition means and the interpolation coefficient generated by the second interpolation coefficient generation means. An image processing apparatus according to 1.
前記水平補正手段による補正により得られた水平補正画像を記憶する記憶手段をさらに備え、
前記垂直補正手段は、
前記記憶手段から前記垂直補正パラメータに応じた前記水平補正画像を取得するデータ取得手段と、
前記データ取得手段により取得された前記水平補正画像に対して、前記垂直補正パラメータを用いた補間演算を施す補間演算手段と
を含む請求項1に記載の画像処理装置。
Storage means for storing a horizontal correction image obtained by the correction by the horizontal correction means,
The vertical correction means includes
Data acquisition means for acquiring the horizontal correction image according to the vertical correction parameter from the storage means;
The image processing apparatus according to claim 1, further comprising: an interpolation calculation unit that performs an interpolation calculation using the vertical correction parameter for the horizontal correction image acquired by the data acquisition unit.
前記水平補正手段は、補間演算を施すことにより、前記原画像の水平方向における歪みを補正し、
前記垂直補正手段は、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する
請求項1に記載の画像処理装置。
The horizontal correction means corrects distortion in the horizontal direction of the original image by performing an interpolation operation,
The image processing apparatus according to claim 1, wherein the vertical correction unit corrects distortion in the vertical direction of the original image by performing an interpolation operation.
歪みを持った原画像を補正する画像処理装置であって、
前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を前記原画像に対して施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と、
前記垂直補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と
を備えたことを特徴とする画像処理装置。
An image processing apparatus for correcting an original image having distortion,
Vertical correction means for correcting distortion in the vertical direction of the original image by performing an interpolation operation on the original image using a vertical correction parameter indicating a vertical correction amount at a pixel point constituting the original image; ,
The image obtained by the correction by the vertical correction unit is subjected to an interpolation operation using a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image, thereby causing the original image in the horizontal direction to be corrected. An image processing apparatus comprising: a horizontal correction unit that corrects distortion.
前記垂直補正手段は、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することによって、前記原画像を垂直方向において伸縮すると共に、
前記水平補正手段は、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することによって、前記原画像を水平方向において伸縮する
請求項6に記載の画像処理装置。
The vertical correction means expands and contracts the original image in the vertical direction by adjusting a vertical interval between pixel points for which image data is obtained by the interpolation calculation, and
The image processing apparatus according to claim 6, wherein the horizontal correction unit expands and contracts the original image in a horizontal direction by adjusting a horizontal interval between pixel points for which image data is obtained by the interpolation calculation.
前記垂直補正手段は、
前記垂直補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第一データ取得手段と、
前記垂直補正パラメータの小数成分に応じて補間係数を生成する第一補間係数生成手段と、
前記第一データ取得手段により取得された前記画像データと、前記第一補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第一補間演算手段とを含み、
前記水平補正手段は、
前記水平補正パラメータの整数成分に応じて前記画素点における画像データを選択的に取得する第二データ取得手段と、
前記水平補正パラメータの小数成分に応じて補間係数を生成する第二補間係数生成手段と、
前記第二データ取得手段により取得された前記画像データと、前記第二補間係数生成手段により生成された前記補間係数とを用いて前記補間演算を実行する第二補間演算手段と
を含む請求項6に記載の画像処理装置。
The vertical correction means includes
First data acquisition means for selectively acquiring image data at the pixel points according to an integer component of the vertical correction parameter;
First interpolation coefficient generation means for generating an interpolation coefficient in accordance with the decimal component of the vertical correction parameter;
First interpolation calculation means for executing the interpolation calculation using the image data acquired by the first data acquisition means and the interpolation coefficient generated by the first interpolation coefficient generation means,
The horizontal correction means includes
Second data acquisition means for selectively acquiring image data at the pixel points according to an integer component of the horizontal correction parameter;
Second interpolation coefficient generating means for generating an interpolation coefficient according to the decimal component of the horizontal correction parameter;
The second interpolation calculation means for executing the interpolation calculation using the image data acquired by the second data acquisition means and the interpolation coefficient generated by the second interpolation coefficient generation means. An image processing apparatus according to 1.
前記垂直補正手段による補正により得られた垂直補正画像を記憶する記憶手段をさらに備え、
前記水平補正手段は、
前記記憶手段から前記水平補正パラメータに応じた前記垂直補正画像を取得するデータ取得手段と、
前記データ取得手段により取得された前記垂直補正画像に対して、前記水平補正パラメータを用いた補間演算を施す補間演算手段と
を含む請求項6に記載の画像処理装置。
Storage means for storing a vertical correction image obtained by correction by the vertical correction means;
The horizontal correction means includes
Data acquisition means for acquiring the vertical correction image according to the horizontal correction parameter from the storage means;
The image processing apparatus according to claim 6, further comprising: an interpolation calculation unit that performs an interpolation calculation using the horizontal correction parameter on the vertical correction image acquired by the data acquisition unit.
前記垂直補正手段は、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正し、
前記水平補正手段は、補間演算を施すことにより、前記原画像の水平方向における歪みを補正する
請求項6に記載の画像処理装置。
The vertical correction means corrects distortion in the vertical direction of the original image by performing an interpolation operation,
The image processing apparatus according to claim 6, wherein the horizontal correction unit corrects distortion in the horizontal direction of the original image by performing an interpolation operation.
被写体からの光を集光するレンズと、
前記レンズからの射影光より撮像画像信号を生成する撮像素子と、
前記撮像素子からの撮像画像信号をデジタル画像信号に変換するデータ変換回路と、
前記データ変換回路からのデジタル画像信号を信号処理して記録画像データを生成する信号処理回路と、
前記信号処理回路からの記録画像データを記録する記録部と
を含むカメラシステムであって、
前記信号処理回路は、レンズ歪みを持った原画像を補正する画像補正手段を具備し、
前記画像補正手段は、
前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と、
前記水平補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と
を備えたことを特徴とするカメラシステム。
A lens that collects light from the subject,
An image sensor that generates a captured image signal from projection light from the lens;
A data conversion circuit that converts a captured image signal from the image sensor into a digital image signal;
A signal processing circuit for generating recorded image data by performing signal processing on the digital image signal from the data conversion circuit;
A recording unit that records recording image data from the signal processing circuit,
The signal processing circuit comprises image correction means for correcting an original image having lens distortion,
The image correcting means includes
Horizontal correction means for correcting distortion in the horizontal direction of the original image by performing an interpolation operation on the original image using a horizontal correction parameter indicating a horizontal correction amount at pixel points constituting the original image;
The image obtained by the correction by the horizontal correction means is subjected to an interpolation operation using a vertical correction parameter indicating a vertical correction amount at a pixel point constituting the original image, so that the original image in the vertical direction is corrected. A camera system comprising: vertical correction means for correcting distortion.
被写体からの光を集光するレンズと、
前記レンズからの射影光より撮像画像信号を生成する撮像素子と、
前記撮像素子からの撮像画像信号をデジタル画像信号に変換するデータ変換回路と、
前記データ変換回路からのデジタル画像信号を信号処理して記録画像データを生成する信号処理回路と、
前記信号処理回路からの記録画像データを記録する記録部と
を含むカメラシステムであって、
前記信号処理回路は、レンズ歪みを持った原画像を補正する画像補正手段を具備し、
前記画像補正手段は、
前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する垂直補正手段と、
前記垂直補正手段による補正により得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する水平補正手段と
を備えたことを特徴とするカメラシステム。
A lens that collects light from the subject,
An image sensor that generates a captured image signal from projection light from the lens;
A data conversion circuit that converts a captured image signal from the image sensor into a digital image signal;
A signal processing circuit for generating recorded image data by performing signal processing on the digital image signal from the data conversion circuit;
A recording unit that records recording image data from the signal processing circuit,
The signal processing circuit comprises image correction means for correcting an original image having lens distortion,
The image correcting means includes
Vertical correction means for correcting distortion in the vertical direction of the original image by performing an interpolation operation on the original image using a vertical correction parameter indicating a correction amount in the vertical direction at the pixel points constituting the original image;
The image obtained by the correction by the vertical correction unit is subjected to an interpolation operation using a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image, thereby causing the original image in the horizontal direction to be corrected. A camera system comprising: horizontal correction means for correcting distortion.
歪みを持った原画像を補正する画像処理方法であって、
前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の水平方向における歪みを補正する第一のステップと、
前記第一のステップにおいて得られた画像に対し、前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いた補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する第二のステップと
を有することを特徴とする画像処理方法。
An image processing method for correcting an original image having distortion,
A first step of correcting a distortion in the horizontal direction of the original image by performing an interpolation operation on the original image using a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image; ,
The image obtained in the first step is subjected to an interpolation operation using a vertical correction parameter indicating a vertical correction amount at a pixel point constituting the original image, so that the original image is distorted in the vertical direction. A second step of correcting the image processing method.
少なくとも前記第一のステップにおいて、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することにより前記原画像を水平方向において伸縮し、または
前記第二のステップにおいて、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することにより前記原画像を垂直方向において伸縮する
請求項13に記載の画像処理方法。
At least in the first step, the original image is expanded or contracted in the horizontal direction by adjusting a horizontal interval between pixel points for which image data is obtained by the interpolation calculation, or in the second step by the interpolation calculation. The image processing method according to claim 13, wherein the original image is expanded and contracted in the vertical direction by adjusting a vertical interval between pixel points for which image data is obtained.
前記第一のステップにおける補正により得られた水平補正画像を記憶手段に記憶させるステップをさらに備え、
前記第二のステップは、
前記記憶手段から前記垂直補正パラメータに応じた前記水平補正画像を取得するデータ取得ステップと、
前記データ取得ステップにおいて取得された前記水平補正画像に対して、前記垂直補正パラメータを用いた補間演算を施す補間演算ステップと
を含む請求項13に記載の画像処理方法。
A step of storing a horizontal correction image obtained by the correction in the first step in a storage unit;
The second step includes
A data acquisition step of acquiring the horizontal correction image according to the vertical correction parameter from the storage means;
The image processing method according to claim 13, further comprising: an interpolation calculation step of performing an interpolation calculation using the vertical correction parameter for the horizontal correction image acquired in the data acquisition step.
前記第一のステップは、補間演算を施すことにより、前記原画像の水平方向における歪みを補正し、
前記第二のステップは、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する
請求項13に記載の画像処理方法。
The first step corrects distortion in the horizontal direction of the original image by performing an interpolation operation,
The image processing method according to claim 13, wherein the second step corrects a distortion in the vertical direction of the original image by performing an interpolation operation.
歪みを持った原画像を補正する画像処理方法であって、
前記原画像を構成する画素点における垂直方向の補正量を示す垂直補正パラメータを用いて前記原画像に対し補間演算を施すことにより、前記原画像の垂直方向における歪みを補正する第一のステップと、
前記第一のステップにおいて得られた画像に対し、前記原画像を構成する画素点における水平方向の補正量を示す水平補正パラメータを用いた補間演算を施すことにより、前記原画像の水平方向における歪みを補正する第二のステップと
を有することを特徴とする画像処理方法。
An image processing method for correcting an original image having distortion,
A first step of correcting distortion in the vertical direction of the original image by performing an interpolation operation on the original image using a vertical correction parameter indicating a vertical correction amount at a pixel point constituting the original image; ,
The image obtained in the first step is subjected to an interpolation operation using a horizontal correction parameter indicating a horizontal correction amount at a pixel point constituting the original image, whereby the distortion of the original image in the horizontal direction is performed. A second step of correcting the image processing method.
少なくとも前記第一のステップにおいて、前記補間演算により画像データを求める画素点の垂直方向における間隔を調整することにより前記原画像を垂直方向において伸縮し、
または
前記第二のステップにおいて、前記補間演算により画像データを求める画素点の水平方向における間隔を調整することにより前記原画像を水平方向において伸縮する
請求項17に記載の画像処理方法。
At least in the first step, the original image is expanded and contracted in the vertical direction by adjusting a vertical interval between pixel points for which image data is obtained by the interpolation calculation,
The image processing method according to claim 17, wherein in the second step, the original image is expanded or contracted in the horizontal direction by adjusting a horizontal interval between pixel points for which image data is obtained by the interpolation calculation.
前記第一のステップにおける補正により得られた垂直補正画像を記憶手段に記憶させるステップをさらに備え、
前記第二のステップは、
前記記憶手段から前記水平補正パラメータに応じた前記垂直補正画像を取得するデータ取得ステップと、
前記データ取得ステップにおいて取得された前記垂直補正画像に対して、前記水平補正パラメータを用いた補間演算を施す補間演算ステップとを含む
請求項17に記載の画像処理方法。
A step of storing a vertical correction image obtained by the correction in the first step in a storage unit;
The second step includes
A data acquisition step of acquiring the vertical correction image according to the horizontal correction parameter from the storage means;
The image processing method according to claim 17, further comprising: an interpolation calculation step of performing an interpolation calculation using the horizontal correction parameter for the vertical correction image acquired in the data acquisition step.
前記第一のステップは、補間演算を施すことにより、前記原画像の垂直方向における歪みを補正し、
前記第二のステップは、補間演算を施すことにより、前記原画像の水平方向における歪みを補正する
請求項17に記載の画像処理方法。
The first step corrects a distortion in the vertical direction of the original image by performing an interpolation operation;
The image processing method according to claim 17, wherein the second step corrects distortion in the horizontal direction of the original image by performing an interpolation operation.
JP2007318820A 2007-12-10 2007-12-10 Image processing apparatus, camera system, and image processing method Expired - Fee Related JP4285575B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007318820A JP4285575B2 (en) 2007-12-10 2007-12-10 Image processing apparatus, camera system, and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007318820A JP4285575B2 (en) 2007-12-10 2007-12-10 Image processing apparatus, camera system, and image processing method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002239865A Division JP4144292B2 (en) 2002-08-20 2002-08-20 Image processing apparatus, image processing system, and image processing method

Publications (2)

Publication Number Publication Date
JP2008092602A true JP2008092602A (en) 2008-04-17
JP4285575B2 JP4285575B2 (en) 2009-06-24

Family

ID=39376179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007318820A Expired - Fee Related JP4285575B2 (en) 2007-12-10 2007-12-10 Image processing apparatus, camera system, and image processing method

Country Status (1)

Country Link
JP (1) JP4285575B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010024303A1 (en) * 2008-08-26 2010-03-04 シャープ株式会社 Defect detecting apparatus, defect detecting method, defect detecting program, and computer-readable recording medium in which that program has been recorded
EP2293240A1 (en) 2009-09-03 2011-03-09 Ricoh Company, Ltd. Image processing device and imaging apparatus
WO2013114675A1 (en) * 2012-01-31 2013-08-08 株式会社日立ハイテクノロジーズ Image processing device, distortion correction map creation device, and semiconductor measurement device
JP2016063493A (en) * 2014-09-19 2016-04-25 キヤノン株式会社 Image processing device, imaging device, image processing method, and program

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010024303A1 (en) * 2008-08-26 2010-03-04 シャープ株式会社 Defect detecting apparatus, defect detecting method, defect detecting program, and computer-readable recording medium in which that program has been recorded
JP2010054247A (en) * 2008-08-26 2010-03-11 Sharp Corp Defect detecting apparatus, defect detecting method, defect detecting program and computer-readable recording medium with the program recorded thereon
JP4528850B2 (en) * 2008-08-26 2010-08-25 シャープ株式会社 Defect detection apparatus, defect detection method, defect detection program, and computer-readable recording medium recording the program
EP2293240A1 (en) 2009-09-03 2011-03-09 Ricoh Company, Ltd. Image processing device and imaging apparatus
US8570334B2 (en) 2009-09-03 2013-10-29 Ricoh Company, Limited Image processing device capable of efficiently correcting image data and imaging apparatus capable of performing the same
WO2013114675A1 (en) * 2012-01-31 2013-08-08 株式会社日立ハイテクノロジーズ Image processing device, distortion correction map creation device, and semiconductor measurement device
JP2013156959A (en) * 2012-01-31 2013-08-15 Hitachi High-Technologies Corp Image processing device and method, distortion correction map creation device and method, and semiconductor measurement device
JP2016063493A (en) * 2014-09-19 2016-04-25 キヤノン株式会社 Image processing device, imaging device, image processing method, and program

Also Published As

Publication number Publication date
JP4285575B2 (en) 2009-06-24

Similar Documents

Publication Publication Date Title
JP4144292B2 (en) Image processing apparatus, image processing system, and image processing method
US7424172B2 (en) Image processing method, image processing apparatus and image pickup apparatus and display apparatus suitable for the application of image processing method
US9232139B2 (en) Image stabilization using striped output transformation unit
US7596286B2 (en) Image processing apparatus, image processing system, imaging apparatus and image processing method
JP4337463B2 (en) Image processing apparatus, image processing system, imaging apparatus, and image processing method
US8928782B2 (en) Image processing device and image capture device
JP2003333588A (en) Correction method and correction apparatus for optical distortion
JP2008227996A (en) Image processor, camera device, image processing method and program
JP4285575B2 (en) Image processing apparatus, camera system, and image processing method
JP2022548556A (en) image dewarping circuit
JP2008067230A (en) Image processing apparatus, image processing method, and program
JP2006185123A (en) Pixel interpolation device
JP4333270B2 (en) Image processing apparatus, image processing system, imaging apparatus, and image processing method
JP2009116763A (en) Image processing apparatus, and memory access method for image data
JP4720626B2 (en) Image processing system, image processing method, and program
JP4803224B2 (en) Image processing apparatus, image processing system, imaging apparatus, and image processing method
JP4719564B2 (en) Imaging apparatus, control method thereof, and program
JP4888306B2 (en) Image processing apparatus and image processing method
JP2002101296A (en) Image processing method and image processor
JP2009065323A (en) Image processing device, image processing method, imaging apparatus, and imaging method
JP2008079202A (en) Image processing apparatus and method, and camera system
JP2009140046A (en) Image processing apparatus and memory access method for image data
JPH07177408A (en) Signal processor
WO2012011211A1 (en) Thumbnail image generation device, magnified image generation device, thumbnail image generation method, and magnified image generation method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090209

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: 20090303

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: 20090316

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130403

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130403

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140403

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees