JP2005045513A - 画像処理装置及び歪補正方法 - Google Patents
画像処理装置及び歪補正方法 Download PDFInfo
- Publication number
- JP2005045513A JP2005045513A JP2003202663A JP2003202663A JP2005045513A JP 2005045513 A JP2005045513 A JP 2005045513A JP 2003202663 A JP2003202663 A JP 2003202663A JP 2003202663 A JP2003202663 A JP 2003202663A JP 2005045513 A JP2005045513 A JP 2005045513A
- Authority
- JP
- Japan
- Prior art keywords
- image
- data
- distortion correction
- processing apparatus
- image processing
- 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.)
- Pending
Links
- 238000012937 correction Methods 0.000 title claims abstract description 155
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000012545 processing Methods 0.000 claims abstract description 145
- 238000003384 imaging method Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims description 30
- 238000005070 sampling Methods 0.000 claims description 17
- 238000001914 filtration Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 abstract description 37
- 230000015654 memory Effects 0.000 description 73
- 238000010586 diagram Methods 0.000 description 21
- 238000012546 transfer Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 241000226585 Antennaria plantaginifolia Species 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 230000012447 hatching Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000010408 sweeping Methods 0.000 description 2
- 101100115215 Caenorhabditis elegans cul-2 gene Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000011295 pitch Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- GGCZERPQGJTIQP-UHFFFAOYSA-N sodium;9,10-dioxoanthracene-2-sulfonic acid Chemical compound [Na+].C1=CC=C2C(=O)C3=CC(S(=O)(=O)O)=CC=C3C(=O)C2=C1 GGCZERPQGJTIQP-UHFFFAOYSA-N 0.000 description 1
Images
Landscapes
- Television Signal Processing For Recording (AREA)
- Studio Devices (AREA)
- Image Processing (AREA)
Abstract
【課題】小領域の空間的な位置を算出可能とし、小領域単位での歪補正処理を実現可能とし、更に、間引き取り込みされた画像データに対しても、任意領域を切り出したデータに対しても、正確な歪補正を行える画像処理装置及び歪補正方法を提供すること。
【解決手段】画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置において、補正画像の各画素に対応する座標系での第1の位置を生成し、この第1の位置を、歪補正座標変換[式1]に従って歪補正前の画像データ内における座標系での第2の位置に変換し、この歪補正前の画像データ内における座標系での第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換した後、前記設定領域内での座標に基づいて補間処理を行い、補正画像の各画素のデータを生成するようにした。この歪補正では、補正画像に含まれる小領域を単位に処理を行う。
【選択図】 図7
【解決手段】画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置において、補正画像の各画素に対応する座標系での第1の位置を生成し、この第1の位置を、歪補正座標変換[式1]に従って歪補正前の画像データ内における座標系での第2の位置に変換し、この歪補正前の画像データ内における座標系での第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換した後、前記設定領域内での座標に基づいて補間処理を行い、補正画像の各画素のデータを生成するようにした。この歪補正では、補正画像に含まれる小領域を単位に処理を行う。
【選択図】 図7
Description
【0001】
【発明の属する技術分野】
本発明は、主に、デジタルカメラ等の電子的撮像装置に用いられる画像処理装置及び歪補正方法に関し、特に、小領域(例えばブロックライン)単位での歪補正処理を行う場合に、小領域の空間的な位置を算出可能とした画像処理装置及び歪補正方法に関する。
【0002】
【従来の技術】
デジタルカメラ,銀塩カメラを問わず、一般的にカメラの光学系においては歪曲収差が現れる。また、現在発売されているカメラでは、光学ズームが可能な機種が殆どであり、その場合、ワイド端からテレ端にかけて、歪曲収差の状態が変化する。ワイド端では樽型歪が多く、テレ端では糸巻き型歪が多い。
【0003】
歪曲収差は、例えば格子状の被写体を撮影すると、樽型歪、糸巻き型歪として観測される。
【0004】
図14(a)は格子状の被写体、(b)は樽型歪を生じた撮影画像、(c)は糸巻き型歪を生じた撮影画像である。
【0005】
ところで、デジタルカメラにおいては、CCD等の撮像素子のデータに対し、様々な画像処理を行なった後、JPEG等の圧縮方式で圧縮したデータをメモリカード等の記録媒体に記録する。
【0006】
図15(a)は一般的なデジタルカメラで行われている画像処理手順の概念を示している。CCDから取り込まれた撮像信号は、プリプロセスで画素欠陥処理やA/D変換等の処理が行われ、SDRAM等のフレームメモリに一旦記憶される。次に、フレームメモリに記憶された画像データが読み出されて、イメージプロセス1、イメージプロセス2、…、イメージプロセスNにより各種の画像処理が行われる。画像処理後の画像データは、さらにJPEG処理等の圧縮方式で圧縮されて、記録媒体としてのメモリカード等へ記録される。
【0007】
図15(b)は従来のデジタルカメラの画像処理装置のブロック図(例えば特開2000−312327号公報での従来例)を示している。
【0008】
図15(b)において、従来の画像処理装置は、バス103にCPU104と共にプリプロセス回路102,複数のイメージプロセス回路106−1〜106−n,JPEG処理部107,フレームメモリ105及び記録媒体としてのメモリカード等108が接続されている。そして、CPU104の制御により、CCD101からの撮像信号がプリプロセス回路102で画素欠陥処理やA/D変換等が施された後、バス103を通してフレームメモリ105に一旦記憶される。次に、フレームメモリ105から画像データを読み出し、バス103を通してイメージプロセス回路106−1に入力して所定の画像処理を行い、再びバス103を通してフレームメモリ105に書き直す。以下同様にして、バス103を介してフレームメモリ105とイメージプロセス回路106−2〜106−nとの間でデータのやり取りを順次行って、最後にJPEG処理部107でJPEG圧縮処理を行い、画像処理したデータをフレームメモリ105に一旦記憶し、フレームメモリ105から読み出した処理データをメモリカード等108に記録するようになっている。以上の各段のイメージプロセス及びJPEG処理では、小領域(ブロックライン)を単位として画像処理が行われる。
【0009】
一方、通常、CCD等の撮像素子の読み出しは、(1)本撮影用の全画素読み出し、(2)スルー画用の間引き読み出し、の2種類の読み出しが可能である。間引き読み出し等によって、撮像したデータから一部を取り込んだ画像データは、アスペクト比が1:1ではないため、そのままでは正確な歪補正が行えない。
【0010】
また、従来、この画像処理の一部として歪補正を行う先行技術が開示されている。例えば、特開6−181530号公報がある。
【0011】
特開6−181530号公報には、撮影時における撮像ズームレンズの撮像ポジションが歪曲収差の大きいポジション内であることが検出手段にて検出されている場合には、この撮像ズームレンズによって生じた像の幾何学的歪みを、固体撮像素子の撮像データを幾何学的変形に基づき読み出すことにより補正することが記載されている。
【0012】
【特許文献1】
特開2000−312327号公報(第3頁、図19)
【0013】
【特許文献2】
特開6−181530号公報(第1,2頁、図2)
【0014】
【発明が解決しようとする課題】
しかしながら、特許文献1の従来例では、フレームメモリと各イメージプロセス回路間のデータのやり取りが多く、バスのデータ転送量が増大するという問題がある。さらに、小領域(ブロックライン)単位での歪補正処理については全く記載されていない。
【0015】
特許文献2では、歪補正処理を行うことが述べられているが、図16に示すようにCCDの撮像面における画素(黒丸印にて示される縦横の格子点)31に対して、本来直線であるべき被写体像が光学レンズの歪曲収差により湾曲して結像(符号32にて示す)すると、歪曲収差補正回路内のラインメモリに大容量バッファメモリが必要となる。さらに、バッファメモリの容量で処理できる画像サイズが制限されてしまう。さらに、バッファメモリに保持されているデータの空間的な位置の確定方法等についての記載がない。またさらに、特許文献2では、小領域(ブロックライン)単位での歪補正処理については全く記載されていない。
【0016】
そこで、本発明は上記の問題に鑑み、小領域(例えばブロックライン)の空間的な位置を算出可能とし、小領域単位での歪補正処理を実現可能とした画像処理装置及び歪補正方法を提供することを目的とするものである。
【0017】
また、本発明は、間引き取り込みされた画像データに対しても、正確な歪補正を行える一方、デジタルズームなど、任意領域を切り出したデータに対しても正確な歪補正を行える画像処理装置及び歪補正方法を提供することを目的とするものである。
【0018】
【課題を解決するための手段】
請求項1の発明は、画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置において、前記歪補正手段は、補正前の画像データ内において、補正画像の各画素が対応する位置を所定の補正式に従って算出する際、撮像面における空間的な位置を記述可能な座標系において算出することを特徴とする。
【0019】
この構成では、補正前の画像データ内において、補正画像の各画素が対応する位置を算出する際、撮像面に対応する座標系(即ち2次元空間における位置)を基準にして計算を行う。
【0020】
請求項2の発明は、請求項1に記載の画像処理装置において、前記歪補正手段は、補正画像に含まれる第1の小領域を単位に処理を行い、前記第1の小領域の各画素の座標位置を前記補正式に従って変換した小領域を含む撮像面における第2の小領域について、前記撮像面に対応する座標系での位置を、前記第2の小領域での座標に変換した後に、前記補正画像の各画素のデータを生成することを特徴とする。
【0021】
この構成では、変換される小領域内での座標に基づいて、補間処理を行うことができる。
【0022】
請求項3の発明は、請求項1又は2に記載の画像処理装置において、前記画像データは、撮像データの一部のみを取り込んだ部分画像データであることを特徴とする。
【0023】
この構成では、画像データとしては、撮像したデータ全てではなくその一部、例えばデジタルズームの際に撮像データの中央部分から切り出されるデータや、撮像データから間引きによって生成される縮小データに対しても、適用することができる。
【0024】
請求項4の発明は、請求項3記載の画像処理装置において、前記部分画像データは、前記撮像データの一部を切り出したデータであることを特徴とする。
【0025】
この構成でのデータとしては、例えばデジタルズームの際に撮像データの中央部分から切り出されるデータや、監視カメラのように全画面データから取り込まれる画面の端部分に相当する領域のデータなどがある。
【0026】
請求項5の発明は、請求項3記載の画像処理装置において、前記部分画像データは、前記撮像データの横または縦の少なくとも一方向に間引かれたデータであることを特徴とする。
【0027】
この構成でのデータとしては、撮像データから間引きによって生成される解像度を低くした縮小データや、CCDのモニタリングモードでのラインが間引きかれたデータや、YC422データにおける色データのように横方向に間引かれたデータなどがある。縦,横両方向に間引かれたデータであってもよい。
【0028】
請求項6の発明は、請求項1記載の画像処理装置において、前記画像データは、前記撮像データに対してフィルタリング,空間サンプリングまたは補間処理の少なくともいずれか1つを行って生成されるデータであることを特徴とする。
【0029】
この構成では、画像データとしては、周波数的に制限するフィルタリングを行ったり、撮像デバイスの撮像面のような2次元的空間から適宜にサンプリングしたり、補間処理(標本化処理などで離散化した画素と画素の間に、周囲の画素からの推定によって画素を作り出す処理)したり、することによって得られるデータなどがある。
【0030】
請求項7の発明は、請求項1に記載の画像処理装置において、前記画像データは、各画素が撮像面で空間的に位置する間隔が縦方向及び横方向で異なることを特徴とする。
【0031】
この構成でのデータは、空間的なサンプリング間隔が縦方向及び横方向で異なる場合のデータである。例えば、CCDのモニタリングモードでのラインが間引きかれたデータや、YC422データにおける横方向に間引かれた色データなどがある。
【0032】
請求項8の発明は、請求項1〜7のいずれか1つに記載の画像処理装置において、画像データにおける各画素の空間的なサンプリング間隔が縦横で異なる場合、歪補正前の画像内における座標を求める補正式は、縦横でのサンプリング間隔の違いを補正する係数を含むことを特徴とする。
【0033】
この構成では、歪補正式における、縦横で空間的なサンプリング比が異なる現象を補正する補正係数Sx,Syを含むことを意味している。
【0034】
請求項9の発明は、請求項1〜8のいずれか1つに記載の画像処理装置において、歪補正前の画像内における座標を求める補正式は、所定量のオフセット補正が可能であることを特徴とする。
【0035】
この構成では、歪補正式における、歪補正処理によって、撮影時とは被写***置がずれてしまう現象(オフセット現象)を補正することを意味している。
【0036】
請求項10の発明は、請求項9に記載の画像処理装置において、前記オフセット補正は、歪の中心と画像の中心が一致しない場合に行うことを特徴とする。
【0037】
この構成では、例えば光学系レンズの幾何学的変形の中心に対応した歪中心(光軸)と撮影画像の中心(CCDの中心)が一致しない場合に、歪補正を行うと補正の前後で画像の中心がずれてしまう現象を、中心ずれの補正係数Xoff,Yoff によって、出力画像範囲に対する画像の中心ずれを無くすことができる。
【0038】
請求項11の発明は、画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置の歪補正方法であって、前記歪補正方法は、補正画像の各画素に対応する座標系での第1の位置を生成するステップと、前記第1の位置を、歪補正式に従って歪補正前の画像データ内における座標系での第2の位置に変換するステップと、前記歪補正前の画像データ内における座標系での第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換するステップと、前記設定領域内での座標に基づいて補間処理を行い、前記補正画像の各画素のデータを生成するステップと、を有することを特徴とする。
【0039】
この歪補正方法では、例えば撮像レンズによる幾何学的歪みを補正する補正式によって、補正画像の各画素のデータを得る際には、補正画像の各画素に対応する座標系での第1の位置に対して、歪補正式に従って歪補正前の画像データ内における座標系での第2の位置に変換し、この変換された第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換し、この座標に基づいて補間処理を行って補正画像の画素データを生成する。
【0040】
請求項12の発明は、前記請求項11記載の歪補正方法においては、前記補正画像に含まれる小領域を単位に処理を行うことを特徴とする。
【0041】
この方法では、補正画像に含まれる小領域(例えばブロックラインと呼ばれる領域)を単位に処理を行うものである。
【0042】
【発明の実施の形態】
発明の実施の形態について図面を参照して説明する。
図1は本発明の一実施の形態の画像処理装置の全体構成を示すブロック図である。図2は図1における歪補正処理部の構成を示すブロック図である。
【0043】
図1の画像処理装置においては、バス3に接続された各部の制御を行うCPU4の制御により、CCD1からの撮像信号をプリプロセス回路2で画素欠陥処理やA/D変換等を行い、得られた画像データを、バス3を介してフレームメモリ5に一旦記憶する。フレームメモリ5は、SDRAM等で構成され、画像処理前のデータ及び画像処理後のデータを格納するメモリである。次いで、フレームメモリ5から読み出した画像データをバス3を介して、第1データ順序変換部6に入力する。第1データ順序変換部6は、後に図6(A)で説明するように、ブロック単位のデータを記憶可能なメモリを複数、ここでは2つ備えている。第1データ順序変換部6は、 フレームメモリ5から行方向にデータを読み出して記憶した後、列方向にデータを順に読み出し、イメージプロセス回路7に出力する。
【0044】
イメージプロセス回路7は入力したデータに対して所定の画像処理を行って次段の歪補正手段としての歪補正処理部8に転送する。歪補正処理部8は入力したデータに対して歪補正処理を行って次段の第2データ順序変換部9へ転送する。第2データ順序変換部9は、後に図6(B)で説明するように、ブロック単位のデータを記憶可能なメモリを複数、ここでは2つ備えている。第2データ順序変換部9は、 歪補正処理部8から列方向にデータを読み出して記憶した後、行方向にデータを順に読み出し、JPEG処理部10に転送する。そして、JPEG処理部10でJPEG圧縮処理を行い、処理データをフレームメモリ5に一旦記憶し、フレームメモリ5から読み出した処理データをメモリカード等11に記録するようになっている。
【0045】
歪補正処理部8は、図2に示すように、歪補正後の補正画像の位置(補間位置という、X,Y)とこれに対応した歪補正前の元の画像の位置(X’,Y’)を生成する補間座標生成部81と、歪補正処理部8の前段ブロックの回路からの画像データの一部を一時的に格納しておくバッファメモリ(以下、単にバッファ)としての内部メモリ部82と、その内部メモリ部82に対する書き込み及び読み出しの制御を行うメモリ制御部83と、変換した歪補正前の画像位置の座標(X’,Y’)に従って画像処理をしてデータの歪補正をする補間演算部84と、を有して構成されている。
【0046】
補間座標生成部81は、図2に示すように、補間座標(X,Y)を生成する座標生成部811と、生成された補間座標(X,Y)に対して所定の歪補正式[式1](後述する)を適用して変換した補正前の座標(X’,Y’)を出力する歪補正座標変換部812と、座標生成部811からの補間座標(X,Y)と歪補正座標変換部812からの変換座標(X’,Y’)とを選択的に出力可能なセレクタ813と、で構成されている。歪補正処理部8における座標生成部811,歪補正座標変換部812,セレクタ813,メモリ制御部83については、制御データを格納した制御レジスタ85に設定された各ブロックに対する設定値に従って動作する。また、処理結果のステータスなどをCPUから参照することができる。
【0047】
以上のように構成された本発明による画像処理装置においては、上記第1データ順序変換部6からJPEG処理部10までは、バス3を介することなく、該バス3とは異なる情報伝達経路でパイプライン処理可能なように接続されていて、画像データを、2次元的な画素配列における所定のブロック単位で転送して処理するようになっている。このようにバス3を介したデータ転送は、フレームメモリ5から第1データ順序変換部6への転送と、JPEG処理部10からフレームメモリ5への転送及びフレームメモリ5からメモリカード11への転送だけとなり、したがってフレームメモリと各イメージプロセス回路との間でデータのやりとりを行っていた従来例(図15(b))と比べて、バス3によるデータ転送量を大幅に低減させることができ、バス3の負荷を大幅に軽減することが可能となる。また、この図1に示す例においては、画像処理を行うイメージプロセス回路7を1つのみ設けているが、複数あっても構わない。さらに、図では、イメージプロセス回路7の後段に歪補正処理部8が設けられているが、逆の構成であっても構わない。
【0048】
初段のイメージプロセス回路7と2段目のイメージプロセス回路である歪補正処理部8で構成されるイメージプロセス回路部では、各イメージプロセス回路7,8の前段或いは内部にパイプラインレジスタとして、図示しない小容量のメモリが配置されていて、該小メモリを介して、各イメージプロセス回路7,8がパイプライン処理動作を行うように構成されている。これらの小容量のメモリは、各イメージプロセス回路7,8で空間的な画像処理を行う場合、画像処理に必要な周辺データの記憶をするために、また画像データをブロック単位で読み出して配列換えなどを行って処理する必要があるために、設けられている。
【0049】
図3は歪補正処理部8における座標変換の概念図を示している。図3(a)は元データである撮像画像データ、同図(b)は補正画像、同図(c)は(b)の補正画像の座標位置(X,Y)に対して(a)の元データの座標上に変換された座標位置Pでのデータの座標(X’,Y’)(この座標は元データを実際に構成する複数の画素の位置には必ずしも正確には一致しない座標位置にある)を示している。そのP点での座標位置(X’,Y’)はそのP点の周辺の画素16点の座標を使って算出されると共にP点での画像データはその周囲の前記16点の画素データを用いて補間演算される。補間演算部84にて点Pの位置のデータをその周囲の16点の画素値(輝度データ)から補間演算するべく処理が行われる。図2の補間位置生成部811で補間座標を生成するというのは、図3(b)の補正画像側でどこの画素位置(X,Y)を指し示すか、ということである。
【0050】
[式1]では、歪補正後の画素位置(X,Y)に対する歪補正前の画素位置(X’,Y’)を算出することができる。但し、歪補正前の画素位置(X’,Y’)は元画像データ上の画素位置に対応した整数値になるとは限らないことは前述した通りである。
【0051】
[式1]に従うと、図3(b)の座標(X,Y)が同図(a)のように座標(X’,Y’)に変換される。これにより、元データの中のどこの座標位置のデータを作成すれば、よいかを知ることができ、その位置(X’,Y’)のデータを16点補間処理を行う補間式を用いて周囲16点の既知の画素値(図3(c) の黒丸印の入力画像データ)から算出して得ることができる。
【0052】
【式1】
[式1]におけるZは、歪中心(Xd,Yd)から今注目している点(X,Y)までの距離である。[式1]によって、補正画像の点(X,Y)に対して歪んでいる元画像の方の座標(X’,Y’)が算出される。[式1]について補足説明すると、Mは光学系のデータを用いて理論的に補正した際、補正後に画像がはみ出したり、不足したりする現象を補正するための補正倍率である。Sx,Syは間引き取込みなど、縦横で空間的なサンプリング間隔が異なる現象の補正をするためのサンプリング比である。Xoff,Yoffは歪補正処理によって、歪補正処理後に、被写***置が撮影時の位置とはずれてしまう現象の補正をする中心ずれの値である。
【0053】
本発明に係る[式1]では、高次項(具体的にはZ4、Z6、…)を考慮することで、より複雑な陣笠型の歪(図4参照)にも対応できるようにしている。また、中心が一致していても撮像素子の一部しかデータを取り込まない場合や、光軸中心と撮像素子中心がずれている場合など、歪中心(Xd,Yd)を考慮する必要がある。さらに、歪補正処理により被写***置が撮影時の位置からずれる現象を補正するため、中心ずれ補正値(Xoff,Yoff)を考慮する必要がある。間引き取込みの場合や輝度データ(Y)と色データ(Cb,Cr)からなるYC画像を処理する場合は、X,Yで空間的なサンプリングが異なる。そこで係数としてサンプリング比(SX,Sy)を導入して、座標変換を補正するようにしている。
【0054】
次に、図5,図6を参照して画像データの書き込み及び読み出しの処理及び順序について説明する。
【0055】
図5は、本実施の形態におけるフレームメモリからの画像データの読み出し順序を説明する図である。
画像データは、通常は、ライン方向、つまり行方向にスイープさせて書き込まれていて、読み出し時は行方向に読み出されるようになっており、1ラインの画像データを全て読み出して、次に隣接するラインの画像データを全て読み出すといった動作を繰り返して行うのが普通である。
【0056】
これに対して、本発明に係る画像処理装置は、行方向にスイープさせて書き込まれた画像データを、列方向にある一定の長さを単位に、行方向の画像データを順番にイメージプロセス部7に入力し、以降、順次隣の列をイメージプロセス部7に入力して、画像の右端まで繰り返して得られる小領域(矩形状の画像データ)をブロックライン(BL)と呼ぶ。
【0057】
こうした画像データの読み出しを可能にするための第1データ順序変換部6と、第2データ順序変換部9との構成を、図6を参照して説明する。図6は、第1,第2データ順序変換部の構成を示すブロック図である。
【0058】
第1データ順序変換部6は、図6(A)に示すように、ブロック単位の画像データを記憶可能なメモリを複数、ここでは2つ備えており、この2つのメモリ6aとメモリ6bが書き込み側,読み出し側の各スイッチにて書き込み,読み出しが交互に切り換えられるようになっている。すなわち、フレームメモリ5は、書き込み側のスイッチにて、これらメモリ6aとメモリ6bとに切換可能に接続されているとともに、イメージプロセス部7も読み出し側のスイッチにてこれらのモリ6aとメモリ6bとに切換可能に接続されていて、フレームメモリ5がメモリ6aとメモリ6bとの一方に接続されているときには、該メモリ6aとメモリ6bとの他方がイメージプロセス部7に接続されるように切り換えられる。すなわち、メモリ6a,6bは、フレームメモリ5とイメージプロセス部7との両方に同時に接続されることがないようにスイッチングされ、交互に書き込み,読み出しが行われるようになっている。
【0059】
フレームメモリ5に記憶されているフレーム画像の一部は、ブロック単位でライン方向に読み出され、一方のメモリ、ここでは例えばメモリ6aに記憶される。
【0060】
これと並行して、メモリ6bからは、既にフレームメモリ5から読み出されて記憶されているブロック単位の画像データが、列方向(縦方向)に順に読み出されて、イメージプロセス部7へ出力される。
【0061】
フレームメモリ5からメモリ6aへの書き込みと、メモリ6bからイメージプロセス部7への読み出しが終了すると、書き込み側のスイッチおよび読み出し側のスイッチが切り換えられて、次に、フレームメモリ5からメモリ6bへ次のブロック単位の画像データの書き込みが開始されるとともに、メモリ6aからイメージプロセス部7へのブロック単位の画像データの読み出しが開始される。
【0062】
第2データ順序変換部9も、図6(B)に示すように、上記第1データ順序変換部6とほぼ同様に構成されていて、ほぼ同様に動作するようになっている。
【0063】
すなわち、第2データ順序変換部9は、メモリ9a,メモリ9bと、書き込み側スイッチ,読み出し側スイッチとを有して構成されている。
【0064】
そして、該第2データ順序変換部9の動作時には、歪補正処理部8からの書き込みがメモリ9aとメモリ9bとの一方に対して列方向(縦方向)に行われ、メモリ9aとメモリ9bとの他方からは行方向(横方向)に読み出しが行われて、JPEG処理部10へ出力されるようになっている。
歪補正座標変換の[式1]は、あくまでも全画面の中の画像であって、補正画像についてもその座標変換結果の(X’,Y’)の画像にしても、全画面中で何処に位置しているかを計算している。
【0065】
ところが、歪補正処理部8に入力される画像データはブロックライン単位である。歪補正処理部8としては、入力される画像データの空間的な位置関係(2次元空間における位置)を知る必要がある。制御レジスタ85は、歪補正処理部8で処理するブロックラインの位置を指定している。
【0066】
図7は、補正前の撮像画像データと補正後の補正画像の関係を示している。図7(a)は撮影画像データ、同図(b)は補正画像を示している。図7(a),(b)は補正画像(出力側画像)の或るブロックラインBLの或る画素位置Aに注目している場合の概念図である。補正画像(出力画像)内の位置Aの座標(X,Y)は、歪補正座標変換の[式1]を用いて(入力画像)内の位置A’の座標(X’,Y’)に変換される。
【0067】
座標位置(X,Y)及び(Xblst,Yblst)、座標位置(X’,Y’)及び(X’blst,Y’blst)は、全画面の原点からの位置を示している。ここでは、原点は、全画面の左上端部としている。
【0068】
歪補正ブロックへ入力される画像データは、符号BLにて示すブロックライン単位である。そのため、まず補正画像の例えば画素Aを歪座標変換処理するには、最終的な補間処理ができるようにブロックラインBL内での座標系における座標位置(x’,y’)に変換する必要がある。
【0069】
まず、図7(b)の補正画像(出力画像)の各画素に対する座標位置(X,Y)は、下記の式2で生成する。
【0070】
[式2]
X=Xblst+m×ΔX
Y=Yblst+n×ΔY
ΔX,ΔYは補間ピッチで、1.0以上なら縮小画像が生成され、1.0以下なら拡大画像が生成される。座標位置(Xblst,Yblst)は歪補正ブロックの出力側ブロックラインの左肩の位置、すなわち、ブロックラインのスタート位置に相当している。(m,n)=(0,0)のとき、X=Xblst,Y=Yblstとなるので、[式2]から座標位置(Xblst,Yblst)を算出できることになる。m=0,n=0から始めて、m,nを例えば交互に1ずつ増やしていけば、ブロックラインBL内の全ての画素の座標位置(X,Y)を生成することができる。
【0071】
このBLに対し、BL内全ての画像の座標位置を式1に従って変換すると、図7(a)の変形したハッチング領域BL″にマッピングされる。図7(a)のBL’は、図7(b)のBLを処理するのに必要な入力データの範囲となる。(X’blst,Y’blst)は、BL’の左上位置であり、補間に必要な画素等を考慮すると、変形したハッチング領域の左上位置とは一致しない。BL’は、本願と同日出願の特願2003‐202493号に詳細を説明したサポート機能(歪補正範囲算出部)を利用して設定する。
【0072】
[式2]で生成された補正後の出力画像の座標位置(X,Y)を、[式1]で座標変換して図7(a)の補正前の入力画像の座標位置(X’,Y’)を求める。そして、座標変換された座標位置(X’,Y’)と、座標位置(X’blst,Y’blst)との差分をとることにより、ブロックライン(太い点線の矩形)の左肩を原点とする座標位置(x’,y’)を求めることができる。
【0073】
その結果、このブロックライン内での座標位置(x’,y’)に基づき、ブロックライン単位での補間処理を行えることになる。
【0074】
図7(a)に示す入力画像側の太い点線で示すブロックラインBL’はレジスタ85によって設定するが、その値を生成するためには、歪の変形を考慮して画像データの入力範囲(歪補正範囲)を算出可能とするサポート機能が必要となる。このサポート機能は、歪補正処理部8の歪補正処理機能に付加するなどして設ければよい。
【0075】
次に、図8を参照して歪補正処理フローを説明する。図8は図7の歪補正処理のフローチャートである。
【0076】
まず、図7(b)のハッチングを施したところのブロックライン処理を開始する(ステップS1)。前述の[式2]で、(m,n)=(0,0)とおくことにより(ステップS2)、図7(b)のハッチング領域の左肩、すなわちブロックラインのスタート座標位置(Xblst,Yblst)を求める。そして、[式2]から補正画像の座標位置(X,Y)を求めることができる。この場合、m,nをそれぞれ1ずつ増やしていけば、図7(b)のハッチングで示すブロックラインBL内の各画素の座標位置(X,Y)を生成することができる(ステップS3)。
【0077】
次に、[式1]を用いて補正画像における座標系の位置(X,Y)を、補正前の撮影画像における座標系の位置(X’,Y’)に変換する(ステップS4)。
【0078】
そして、撮影画像における座標系の位置(X’,Y’)を、前述した方法で入力ブロックラインBL内の座標系の位置(x’,y’)に変換する(ステップS5)。
【0079】
次に、このブロックラインBL内での座標位置(x’,y’)に基づいて補間処理を行い、座標位置(X’,Y’)における16点補間などで周辺の複数の画素データから補間データを算出することで、1画素分の補正画像データが得られる(ステップS6)。
【0080】
そして、以上のステップが、補正画像の座標系のBL内全画素について行われたか否かについて判断し(ステップS7)、終了していなければ次のm,nを設定して(ステップS8)、ステップS3〜S7を繰り返し行い、ステップS7の判定で全画素について処理が終了していれば、ステップS9に移行する。
【0081】
ステップS9では、全画面(フレーム)内の全てのブロックラインBLについて歪補正処理が終了したか否かを判断しており、終了していなければ次の入力ブロックラインBLを選択し、ステップS1〜ステップS9を繰り返し、ステップS9の判定で全画面ついて処理が終了していれば、終了する。
【0082】
図9及び図10は、図8の変形例とも言うべきものである。
デジタルズームを行う場合や注目する小領域のみを切り出す場合、撮像データの一部しか使わなくても構わない。選択的にCCDから撮像データの一部を取り込むことでメモリを節約することができる。この場合に歪補正をブロックライン単位で行うためには、取り込まれたデータが、撮像素子上でどこに位置するかの情報(X’imgst,Y’imgst)が必要である。
【0083】
図9は、デジタルズームの場合を示し、撮像した画像データから中央部分のみを取り込むものである。図8の場合と異なる点は、上述したように、全画面の中で何処を取り込むかをプリプロセス回路2で設定している点である。この設定に基づいて必要な部分のみを取り込んでおり、その範囲を図9(a)のE’で示す。
【0084】
まず、図9(b)で全画面の中のデジタルズームする範囲Eの左肩に当たるスタート位置(Ximgst,Yimgst)を設定する。次に、ブロックラインBLを設定するが、ここでは梨地にて示す部分である。このとき、取り込み範囲Eの左肩を原点とする、位置座標(Xblst,Yblst)が決定し、[式2]と同様にm,nを変化させることで、ブロックラインBL内における各画素の座標を生成することができる。
【0085】
この結果、座標位置(Ximgst,Yimgst)、(Xblst,Yblst)、(m×ΔX,n×ΔY)から全画面の座標における位置(X,Y)が決定される。
【0086】
撮影画像における座標位置(X’,Y’)は、上記のように決定された座標位置(X,Y)から[式1]を用いて求めることができる。
【0087】
そして次に、撮影画像データにおけるブロックラインBL’の中での座標位置(x’,y’)を求める。
【0088】
まず、取り込まれた撮像データの撮像面における設定範囲E’から左肩の座標(X’imgst,Y’imgst)が分かる。取り込み範囲E’の左肩を原点とする座標で、ブロックラインBL’の左肩の座標位置(X’blst,Y’blst)はサポート機能を利用して予め求められており、ブロックラインBL’内での座標における座標位置(x’,y’)が決定される。その結果、ブロックラインごとの補間処理が行われる。
【0089】
図10は撮像データから或る領域、例えば画面の端の方を切り出す場合である。これは、監視カメラなどにおいて、撮像データの端部分を取り込むような場合に相当する。図10の場合も、図9と同様な符号を付してある。図9と切り出す位置が異なっているだけで、図9の場合と同様な動作となる。
【0090】
なお、通常のデジタルカメラでは、CPUが制御レジスタに切り出す領域を設定するため、切り出し位置が分かっており、上記の変換が可能だが、記録後のデータに歪補正処理を行う場合ではタグ等に切り出し領域の位置とサイズを同時に記録する必要がある。このとき、同時に補正係数も記録しておく。
【0091】
ところで、撮像素子としてのCCDにはモニターモード(撮像した全画面を読み出さないモード)が用意されることが多い。モニターモードでは、ラインが間引かれることが多く、撮像素子における2次元空間的には同一でも、データ上ではサイズが異なることがある。また、プリプロセスにおいて、横方向の画素も間引かれることがある。また、CCDからの撮像データにローパスフィルタ(LPF)などのフィルタリング処理をかけたり、補間処理をしてフレームメモリに取り込むことがある。この場合、縦横のサンプリング比が整数にならない場合が生じる。さらに、JPEGにおけるYCbCrの記録では、CbやCr成分の横方向は2倍の間隔でサンプリングされることが多く、データとしては横方向が縮んだ形になる。これらは、[式1]では、Sx,Syによって補正する。
【0092】
図11(a)は、撮像時のデータ取り込みにおいて、実際にCCDから送られてくるデータが黒丸印のところしかなく、縦方向に3ライン間引いている状態を示している。モニターモードでは、このようにCCDからは間引かれたデータしか出力されず、これをメモリに取り込むと、図11(b)のように間引きによって上下方向につぶれた画像データとなる。図11(c)のように、空間的に中心から同じ距離にあるデータを取り出しても、同図(b)のように横方向に対して画像が短く出力されるという現象が現れる。この結果、[式1]による歪補正では、中心からの距離が遠いほど歪補正の効果が大きくなるようにしてあるので、縦と横で、歪補正の効果が変わってしまう。
【0093】
このように縦と横で画像が非対称となるのを補正する目的で、補正係数Sx,Syが設けられている。図11(b)の場合には、縦方向に伸ばす必要があるため、Sx=1,Sy=4とする。
【0094】
このSx,Syの効果により、縦,横のサンプリング比が異なっても正確な歪補正が可能となる。
【0095】
また、前述のように、サンプリング比が整数でない場合は、Sx,Syも非整数で設定すればよい。さらに、撮像素子の各画素の間隔が縦横で異なる場合でも可能(例えば長方画素)である。
【0096】
ところで、通常、JPEGだとYCbCrというデータで記録されるのが一般的であるが、そのときの設定として、図12に示すような場合が考えられる。例えば、YC422という形式のデータの場合は、輝度データに比べて色データについての解像度は横方向が1/2となっている。この場合は、色データについてはSx=2,Sy=1と設定して、補正処理を行えばよい。
【0097】
ところで、歪の中心と画像の中心が一致しない場合、補正前に中心にあった被写体が、補正後は中心からずれてしまう。[式1] では、中心ずれ補正値(Xoff,Yoff)で補正することにより、補正前後で画像の中心に来る被写体が変化しないようにすることが可能である。
【0098】
図13は、画像の中心ずれを説明する図である。
図13は補正画像を示す。前述の図3(b)では、歪の中心と画像の中心が一致している、すなわち、CCDの中心(画像の中心)がレンズ光軸(歪の中心)に一致している場合であった。
【0099】
図13は、CCDの中心に対して歪の中心がずれている場合である。図13では、歪中心(Xd,Yd)が画像の中心と異なるので、中心ずれを考慮せずに歪補正を行った場合、出力範囲Hに対する画像の中心PがQ点(大きな黒丸にて示す)にずれる。ユーザにとっては、実際に撮影した画像と歪補正後に表示される画像の中心がずれると、非常に違和感を感じるものである。そこで、元々歪補正前に出力範囲Hの中心にあったデータを、出力範囲に対して中心の位置にくるようにするために、歪補正された画像データの切り出した方を変える。それを行うためには、画像の中心ずれを(Xoff,Yoff)で定義して、画像データの切り出した方を変えればよい。画像の中心ずれ(Xoff,Yoff)を設定することで出力範囲をHからH’に移動させ、元々画像の中心Pにあった被写体を、補正後の出力範囲H’においても中心にくるように補正することができる。
【0100】
図13の実施の形態によれば、中央の被写体がずれることによる違和感を無くすことが出来る。
【0101】
【発明の効果】
以上述べたように本発明によれば、小領域(例えばブロックライン)の空間的な位置を算出可能とし、小領域単位での歪補正処理を実現することができる。また、間引き取り込みされた画像データに対しても、正確な歪補正を行える一方、デジタルズームなど、任意領域を切り出したデータに対しても正確な歪補正を行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態の画像処理装置の全体構成を示すブロック図。
【図2】図1における歪補正処理部の構成を示すブロック図。
【図3】歪補正処理部における座標変換の概念図。
【図4】陣笠型の歪を生じた撮影画像を示す図。
【図5】本実施の形態におけるフレームメモリからの画像データの読み出し順序を説明する図。
【図6】第1,第2データ順序変換部の構成を示すブロック図。
【図7】補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図8】図7の歪補正処理のフローチャート。
【図9】デジタルズームの場合で、補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図10】撮像データから或る領域を切り出す場合で、補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図11】CCDのモニターモードにおけるライン間引きを説明する図。
【図12】YC422形式のデータにおける横方向の間引きを説明する図。
【図13】画像の中心ずれを説明する図。
【図14】格子状の被写体、樽型歪を生じた撮影画像、糸巻き型歪を生じた撮影画像を示す図。
【図15】一般的なデジタルカメラの画像処理手順の概念、及び従来のデジタルカメラの画像処理装置におけるブロック構成を示す図。
【図16】CCDの画素と像の関係を示す図。
【符号の説明】
1…CCD
3…バス
4…CPU
5…フレームメモリ
6…第1データ順序変換部
7…イメージプロセス回路
6…第1データ順序変換部
8…歪補正処理部(歪補正手段)
9…第2データ順序変換部
10…JPEG処理部
11…メモリカード(記録媒体)
82…内部メモリ部(バッファ)
83…メモリ制御部
85…制御レジスタ
【発明の属する技術分野】
本発明は、主に、デジタルカメラ等の電子的撮像装置に用いられる画像処理装置及び歪補正方法に関し、特に、小領域(例えばブロックライン)単位での歪補正処理を行う場合に、小領域の空間的な位置を算出可能とした画像処理装置及び歪補正方法に関する。
【0002】
【従来の技術】
デジタルカメラ,銀塩カメラを問わず、一般的にカメラの光学系においては歪曲収差が現れる。また、現在発売されているカメラでは、光学ズームが可能な機種が殆どであり、その場合、ワイド端からテレ端にかけて、歪曲収差の状態が変化する。ワイド端では樽型歪が多く、テレ端では糸巻き型歪が多い。
【0003】
歪曲収差は、例えば格子状の被写体を撮影すると、樽型歪、糸巻き型歪として観測される。
【0004】
図14(a)は格子状の被写体、(b)は樽型歪を生じた撮影画像、(c)は糸巻き型歪を生じた撮影画像である。
【0005】
ところで、デジタルカメラにおいては、CCD等の撮像素子のデータに対し、様々な画像処理を行なった後、JPEG等の圧縮方式で圧縮したデータをメモリカード等の記録媒体に記録する。
【0006】
図15(a)は一般的なデジタルカメラで行われている画像処理手順の概念を示している。CCDから取り込まれた撮像信号は、プリプロセスで画素欠陥処理やA/D変換等の処理が行われ、SDRAM等のフレームメモリに一旦記憶される。次に、フレームメモリに記憶された画像データが読み出されて、イメージプロセス1、イメージプロセス2、…、イメージプロセスNにより各種の画像処理が行われる。画像処理後の画像データは、さらにJPEG処理等の圧縮方式で圧縮されて、記録媒体としてのメモリカード等へ記録される。
【0007】
図15(b)は従来のデジタルカメラの画像処理装置のブロック図(例えば特開2000−312327号公報での従来例)を示している。
【0008】
図15(b)において、従来の画像処理装置は、バス103にCPU104と共にプリプロセス回路102,複数のイメージプロセス回路106−1〜106−n,JPEG処理部107,フレームメモリ105及び記録媒体としてのメモリカード等108が接続されている。そして、CPU104の制御により、CCD101からの撮像信号がプリプロセス回路102で画素欠陥処理やA/D変換等が施された後、バス103を通してフレームメモリ105に一旦記憶される。次に、フレームメモリ105から画像データを読み出し、バス103を通してイメージプロセス回路106−1に入力して所定の画像処理を行い、再びバス103を通してフレームメモリ105に書き直す。以下同様にして、バス103を介してフレームメモリ105とイメージプロセス回路106−2〜106−nとの間でデータのやり取りを順次行って、最後にJPEG処理部107でJPEG圧縮処理を行い、画像処理したデータをフレームメモリ105に一旦記憶し、フレームメモリ105から読み出した処理データをメモリカード等108に記録するようになっている。以上の各段のイメージプロセス及びJPEG処理では、小領域(ブロックライン)を単位として画像処理が行われる。
【0009】
一方、通常、CCD等の撮像素子の読み出しは、(1)本撮影用の全画素読み出し、(2)スルー画用の間引き読み出し、の2種類の読み出しが可能である。間引き読み出し等によって、撮像したデータから一部を取り込んだ画像データは、アスペクト比が1:1ではないため、そのままでは正確な歪補正が行えない。
【0010】
また、従来、この画像処理の一部として歪補正を行う先行技術が開示されている。例えば、特開6−181530号公報がある。
【0011】
特開6−181530号公報には、撮影時における撮像ズームレンズの撮像ポジションが歪曲収差の大きいポジション内であることが検出手段にて検出されている場合には、この撮像ズームレンズによって生じた像の幾何学的歪みを、固体撮像素子の撮像データを幾何学的変形に基づき読み出すことにより補正することが記載されている。
【0012】
【特許文献1】
特開2000−312327号公報(第3頁、図19)
【0013】
【特許文献2】
特開6−181530号公報(第1,2頁、図2)
【0014】
【発明が解決しようとする課題】
しかしながら、特許文献1の従来例では、フレームメモリと各イメージプロセス回路間のデータのやり取りが多く、バスのデータ転送量が増大するという問題がある。さらに、小領域(ブロックライン)単位での歪補正処理については全く記載されていない。
【0015】
特許文献2では、歪補正処理を行うことが述べられているが、図16に示すようにCCDの撮像面における画素(黒丸印にて示される縦横の格子点)31に対して、本来直線であるべき被写体像が光学レンズの歪曲収差により湾曲して結像(符号32にて示す)すると、歪曲収差補正回路内のラインメモリに大容量バッファメモリが必要となる。さらに、バッファメモリの容量で処理できる画像サイズが制限されてしまう。さらに、バッファメモリに保持されているデータの空間的な位置の確定方法等についての記載がない。またさらに、特許文献2では、小領域(ブロックライン)単位での歪補正処理については全く記載されていない。
【0016】
そこで、本発明は上記の問題に鑑み、小領域(例えばブロックライン)の空間的な位置を算出可能とし、小領域単位での歪補正処理を実現可能とした画像処理装置及び歪補正方法を提供することを目的とするものである。
【0017】
また、本発明は、間引き取り込みされた画像データに対しても、正確な歪補正を行える一方、デジタルズームなど、任意領域を切り出したデータに対しても正確な歪補正を行える画像処理装置及び歪補正方法を提供することを目的とするものである。
【0018】
【課題を解決するための手段】
請求項1の発明は、画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置において、前記歪補正手段は、補正前の画像データ内において、補正画像の各画素が対応する位置を所定の補正式に従って算出する際、撮像面における空間的な位置を記述可能な座標系において算出することを特徴とする。
【0019】
この構成では、補正前の画像データ内において、補正画像の各画素が対応する位置を算出する際、撮像面に対応する座標系(即ち2次元空間における位置)を基準にして計算を行う。
【0020】
請求項2の発明は、請求項1に記載の画像処理装置において、前記歪補正手段は、補正画像に含まれる第1の小領域を単位に処理を行い、前記第1の小領域の各画素の座標位置を前記補正式に従って変換した小領域を含む撮像面における第2の小領域について、前記撮像面に対応する座標系での位置を、前記第2の小領域での座標に変換した後に、前記補正画像の各画素のデータを生成することを特徴とする。
【0021】
この構成では、変換される小領域内での座標に基づいて、補間処理を行うことができる。
【0022】
請求項3の発明は、請求項1又は2に記載の画像処理装置において、前記画像データは、撮像データの一部のみを取り込んだ部分画像データであることを特徴とする。
【0023】
この構成では、画像データとしては、撮像したデータ全てではなくその一部、例えばデジタルズームの際に撮像データの中央部分から切り出されるデータや、撮像データから間引きによって生成される縮小データに対しても、適用することができる。
【0024】
請求項4の発明は、請求項3記載の画像処理装置において、前記部分画像データは、前記撮像データの一部を切り出したデータであることを特徴とする。
【0025】
この構成でのデータとしては、例えばデジタルズームの際に撮像データの中央部分から切り出されるデータや、監視カメラのように全画面データから取り込まれる画面の端部分に相当する領域のデータなどがある。
【0026】
請求項5の発明は、請求項3記載の画像処理装置において、前記部分画像データは、前記撮像データの横または縦の少なくとも一方向に間引かれたデータであることを特徴とする。
【0027】
この構成でのデータとしては、撮像データから間引きによって生成される解像度を低くした縮小データや、CCDのモニタリングモードでのラインが間引きかれたデータや、YC422データにおける色データのように横方向に間引かれたデータなどがある。縦,横両方向に間引かれたデータであってもよい。
【0028】
請求項6の発明は、請求項1記載の画像処理装置において、前記画像データは、前記撮像データに対してフィルタリング,空間サンプリングまたは補間処理の少なくともいずれか1つを行って生成されるデータであることを特徴とする。
【0029】
この構成では、画像データとしては、周波数的に制限するフィルタリングを行ったり、撮像デバイスの撮像面のような2次元的空間から適宜にサンプリングしたり、補間処理(標本化処理などで離散化した画素と画素の間に、周囲の画素からの推定によって画素を作り出す処理)したり、することによって得られるデータなどがある。
【0030】
請求項7の発明は、請求項1に記載の画像処理装置において、前記画像データは、各画素が撮像面で空間的に位置する間隔が縦方向及び横方向で異なることを特徴とする。
【0031】
この構成でのデータは、空間的なサンプリング間隔が縦方向及び横方向で異なる場合のデータである。例えば、CCDのモニタリングモードでのラインが間引きかれたデータや、YC422データにおける横方向に間引かれた色データなどがある。
【0032】
請求項8の発明は、請求項1〜7のいずれか1つに記載の画像処理装置において、画像データにおける各画素の空間的なサンプリング間隔が縦横で異なる場合、歪補正前の画像内における座標を求める補正式は、縦横でのサンプリング間隔の違いを補正する係数を含むことを特徴とする。
【0033】
この構成では、歪補正式における、縦横で空間的なサンプリング比が異なる現象を補正する補正係数Sx,Syを含むことを意味している。
【0034】
請求項9の発明は、請求項1〜8のいずれか1つに記載の画像処理装置において、歪補正前の画像内における座標を求める補正式は、所定量のオフセット補正が可能であることを特徴とする。
【0035】
この構成では、歪補正式における、歪補正処理によって、撮影時とは被写***置がずれてしまう現象(オフセット現象)を補正することを意味している。
【0036】
請求項10の発明は、請求項9に記載の画像処理装置において、前記オフセット補正は、歪の中心と画像の中心が一致しない場合に行うことを特徴とする。
【0037】
この構成では、例えば光学系レンズの幾何学的変形の中心に対応した歪中心(光軸)と撮影画像の中心(CCDの中心)が一致しない場合に、歪補正を行うと補正の前後で画像の中心がずれてしまう現象を、中心ずれの補正係数Xoff,Yoff によって、出力画像範囲に対する画像の中心ずれを無くすことができる。
【0038】
請求項11の発明は、画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置の歪補正方法であって、前記歪補正方法は、補正画像の各画素に対応する座標系での第1の位置を生成するステップと、前記第1の位置を、歪補正式に従って歪補正前の画像データ内における座標系での第2の位置に変換するステップと、前記歪補正前の画像データ内における座標系での第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換するステップと、前記設定領域内での座標に基づいて補間処理を行い、前記補正画像の各画素のデータを生成するステップと、を有することを特徴とする。
【0039】
この歪補正方法では、例えば撮像レンズによる幾何学的歪みを補正する補正式によって、補正画像の各画素のデータを得る際には、補正画像の各画素に対応する座標系での第1の位置に対して、歪補正式に従って歪補正前の画像データ内における座標系での第2の位置に変換し、この変換された第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換し、この座標に基づいて補間処理を行って補正画像の画素データを生成する。
【0040】
請求項12の発明は、前記請求項11記載の歪補正方法においては、前記補正画像に含まれる小領域を単位に処理を行うことを特徴とする。
【0041】
この方法では、補正画像に含まれる小領域(例えばブロックラインと呼ばれる領域)を単位に処理を行うものである。
【0042】
【発明の実施の形態】
発明の実施の形態について図面を参照して説明する。
図1は本発明の一実施の形態の画像処理装置の全体構成を示すブロック図である。図2は図1における歪補正処理部の構成を示すブロック図である。
【0043】
図1の画像処理装置においては、バス3に接続された各部の制御を行うCPU4の制御により、CCD1からの撮像信号をプリプロセス回路2で画素欠陥処理やA/D変換等を行い、得られた画像データを、バス3を介してフレームメモリ5に一旦記憶する。フレームメモリ5は、SDRAM等で構成され、画像処理前のデータ及び画像処理後のデータを格納するメモリである。次いで、フレームメモリ5から読み出した画像データをバス3を介して、第1データ順序変換部6に入力する。第1データ順序変換部6は、後に図6(A)で説明するように、ブロック単位のデータを記憶可能なメモリを複数、ここでは2つ備えている。第1データ順序変換部6は、 フレームメモリ5から行方向にデータを読み出して記憶した後、列方向にデータを順に読み出し、イメージプロセス回路7に出力する。
【0044】
イメージプロセス回路7は入力したデータに対して所定の画像処理を行って次段の歪補正手段としての歪補正処理部8に転送する。歪補正処理部8は入力したデータに対して歪補正処理を行って次段の第2データ順序変換部9へ転送する。第2データ順序変換部9は、後に図6(B)で説明するように、ブロック単位のデータを記憶可能なメモリを複数、ここでは2つ備えている。第2データ順序変換部9は、 歪補正処理部8から列方向にデータを読み出して記憶した後、行方向にデータを順に読み出し、JPEG処理部10に転送する。そして、JPEG処理部10でJPEG圧縮処理を行い、処理データをフレームメモリ5に一旦記憶し、フレームメモリ5から読み出した処理データをメモリカード等11に記録するようになっている。
【0045】
歪補正処理部8は、図2に示すように、歪補正後の補正画像の位置(補間位置という、X,Y)とこれに対応した歪補正前の元の画像の位置(X’,Y’)を生成する補間座標生成部81と、歪補正処理部8の前段ブロックの回路からの画像データの一部を一時的に格納しておくバッファメモリ(以下、単にバッファ)としての内部メモリ部82と、その内部メモリ部82に対する書き込み及び読み出しの制御を行うメモリ制御部83と、変換した歪補正前の画像位置の座標(X’,Y’)に従って画像処理をしてデータの歪補正をする補間演算部84と、を有して構成されている。
【0046】
補間座標生成部81は、図2に示すように、補間座標(X,Y)を生成する座標生成部811と、生成された補間座標(X,Y)に対して所定の歪補正式[式1](後述する)を適用して変換した補正前の座標(X’,Y’)を出力する歪補正座標変換部812と、座標生成部811からの補間座標(X,Y)と歪補正座標変換部812からの変換座標(X’,Y’)とを選択的に出力可能なセレクタ813と、で構成されている。歪補正処理部8における座標生成部811,歪補正座標変換部812,セレクタ813,メモリ制御部83については、制御データを格納した制御レジスタ85に設定された各ブロックに対する設定値に従って動作する。また、処理結果のステータスなどをCPUから参照することができる。
【0047】
以上のように構成された本発明による画像処理装置においては、上記第1データ順序変換部6からJPEG処理部10までは、バス3を介することなく、該バス3とは異なる情報伝達経路でパイプライン処理可能なように接続されていて、画像データを、2次元的な画素配列における所定のブロック単位で転送して処理するようになっている。このようにバス3を介したデータ転送は、フレームメモリ5から第1データ順序変換部6への転送と、JPEG処理部10からフレームメモリ5への転送及びフレームメモリ5からメモリカード11への転送だけとなり、したがってフレームメモリと各イメージプロセス回路との間でデータのやりとりを行っていた従来例(図15(b))と比べて、バス3によるデータ転送量を大幅に低減させることができ、バス3の負荷を大幅に軽減することが可能となる。また、この図1に示す例においては、画像処理を行うイメージプロセス回路7を1つのみ設けているが、複数あっても構わない。さらに、図では、イメージプロセス回路7の後段に歪補正処理部8が設けられているが、逆の構成であっても構わない。
【0048】
初段のイメージプロセス回路7と2段目のイメージプロセス回路である歪補正処理部8で構成されるイメージプロセス回路部では、各イメージプロセス回路7,8の前段或いは内部にパイプラインレジスタとして、図示しない小容量のメモリが配置されていて、該小メモリを介して、各イメージプロセス回路7,8がパイプライン処理動作を行うように構成されている。これらの小容量のメモリは、各イメージプロセス回路7,8で空間的な画像処理を行う場合、画像処理に必要な周辺データの記憶をするために、また画像データをブロック単位で読み出して配列換えなどを行って処理する必要があるために、設けられている。
【0049】
図3は歪補正処理部8における座標変換の概念図を示している。図3(a)は元データである撮像画像データ、同図(b)は補正画像、同図(c)は(b)の補正画像の座標位置(X,Y)に対して(a)の元データの座標上に変換された座標位置Pでのデータの座標(X’,Y’)(この座標は元データを実際に構成する複数の画素の位置には必ずしも正確には一致しない座標位置にある)を示している。そのP点での座標位置(X’,Y’)はそのP点の周辺の画素16点の座標を使って算出されると共にP点での画像データはその周囲の前記16点の画素データを用いて補間演算される。補間演算部84にて点Pの位置のデータをその周囲の16点の画素値(輝度データ)から補間演算するべく処理が行われる。図2の補間位置生成部811で補間座標を生成するというのは、図3(b)の補正画像側でどこの画素位置(X,Y)を指し示すか、ということである。
【0050】
[式1]では、歪補正後の画素位置(X,Y)に対する歪補正前の画素位置(X’,Y’)を算出することができる。但し、歪補正前の画素位置(X’,Y’)は元画像データ上の画素位置に対応した整数値になるとは限らないことは前述した通りである。
【0051】
[式1]に従うと、図3(b)の座標(X,Y)が同図(a)のように座標(X’,Y’)に変換される。これにより、元データの中のどこの座標位置のデータを作成すれば、よいかを知ることができ、その位置(X’,Y’)のデータを16点補間処理を行う補間式を用いて周囲16点の既知の画素値(図3(c) の黒丸印の入力画像データ)から算出して得ることができる。
【0052】
【式1】
[式1]におけるZは、歪中心(Xd,Yd)から今注目している点(X,Y)までの距離である。[式1]によって、補正画像の点(X,Y)に対して歪んでいる元画像の方の座標(X’,Y’)が算出される。[式1]について補足説明すると、Mは光学系のデータを用いて理論的に補正した際、補正後に画像がはみ出したり、不足したりする現象を補正するための補正倍率である。Sx,Syは間引き取込みなど、縦横で空間的なサンプリング間隔が異なる現象の補正をするためのサンプリング比である。Xoff,Yoffは歪補正処理によって、歪補正処理後に、被写***置が撮影時の位置とはずれてしまう現象の補正をする中心ずれの値である。
【0053】
本発明に係る[式1]では、高次項(具体的にはZ4、Z6、…)を考慮することで、より複雑な陣笠型の歪(図4参照)にも対応できるようにしている。また、中心が一致していても撮像素子の一部しかデータを取り込まない場合や、光軸中心と撮像素子中心がずれている場合など、歪中心(Xd,Yd)を考慮する必要がある。さらに、歪補正処理により被写***置が撮影時の位置からずれる現象を補正するため、中心ずれ補正値(Xoff,Yoff)を考慮する必要がある。間引き取込みの場合や輝度データ(Y)と色データ(Cb,Cr)からなるYC画像を処理する場合は、X,Yで空間的なサンプリングが異なる。そこで係数としてサンプリング比(SX,Sy)を導入して、座標変換を補正するようにしている。
【0054】
次に、図5,図6を参照して画像データの書き込み及び読み出しの処理及び順序について説明する。
【0055】
図5は、本実施の形態におけるフレームメモリからの画像データの読み出し順序を説明する図である。
画像データは、通常は、ライン方向、つまり行方向にスイープさせて書き込まれていて、読み出し時は行方向に読み出されるようになっており、1ラインの画像データを全て読み出して、次に隣接するラインの画像データを全て読み出すといった動作を繰り返して行うのが普通である。
【0056】
これに対して、本発明に係る画像処理装置は、行方向にスイープさせて書き込まれた画像データを、列方向にある一定の長さを単位に、行方向の画像データを順番にイメージプロセス部7に入力し、以降、順次隣の列をイメージプロセス部7に入力して、画像の右端まで繰り返して得られる小領域(矩形状の画像データ)をブロックライン(BL)と呼ぶ。
【0057】
こうした画像データの読み出しを可能にするための第1データ順序変換部6と、第2データ順序変換部9との構成を、図6を参照して説明する。図6は、第1,第2データ順序変換部の構成を示すブロック図である。
【0058】
第1データ順序変換部6は、図6(A)に示すように、ブロック単位の画像データを記憶可能なメモリを複数、ここでは2つ備えており、この2つのメモリ6aとメモリ6bが書き込み側,読み出し側の各スイッチにて書き込み,読み出しが交互に切り換えられるようになっている。すなわち、フレームメモリ5は、書き込み側のスイッチにて、これらメモリ6aとメモリ6bとに切換可能に接続されているとともに、イメージプロセス部7も読み出し側のスイッチにてこれらのモリ6aとメモリ6bとに切換可能に接続されていて、フレームメモリ5がメモリ6aとメモリ6bとの一方に接続されているときには、該メモリ6aとメモリ6bとの他方がイメージプロセス部7に接続されるように切り換えられる。すなわち、メモリ6a,6bは、フレームメモリ5とイメージプロセス部7との両方に同時に接続されることがないようにスイッチングされ、交互に書き込み,読み出しが行われるようになっている。
【0059】
フレームメモリ5に記憶されているフレーム画像の一部は、ブロック単位でライン方向に読み出され、一方のメモリ、ここでは例えばメモリ6aに記憶される。
【0060】
これと並行して、メモリ6bからは、既にフレームメモリ5から読み出されて記憶されているブロック単位の画像データが、列方向(縦方向)に順に読み出されて、イメージプロセス部7へ出力される。
【0061】
フレームメモリ5からメモリ6aへの書き込みと、メモリ6bからイメージプロセス部7への読み出しが終了すると、書き込み側のスイッチおよび読み出し側のスイッチが切り換えられて、次に、フレームメモリ5からメモリ6bへ次のブロック単位の画像データの書き込みが開始されるとともに、メモリ6aからイメージプロセス部7へのブロック単位の画像データの読み出しが開始される。
【0062】
第2データ順序変換部9も、図6(B)に示すように、上記第1データ順序変換部6とほぼ同様に構成されていて、ほぼ同様に動作するようになっている。
【0063】
すなわち、第2データ順序変換部9は、メモリ9a,メモリ9bと、書き込み側スイッチ,読み出し側スイッチとを有して構成されている。
【0064】
そして、該第2データ順序変換部9の動作時には、歪補正処理部8からの書き込みがメモリ9aとメモリ9bとの一方に対して列方向(縦方向)に行われ、メモリ9aとメモリ9bとの他方からは行方向(横方向)に読み出しが行われて、JPEG処理部10へ出力されるようになっている。
歪補正座標変換の[式1]は、あくまでも全画面の中の画像であって、補正画像についてもその座標変換結果の(X’,Y’)の画像にしても、全画面中で何処に位置しているかを計算している。
【0065】
ところが、歪補正処理部8に入力される画像データはブロックライン単位である。歪補正処理部8としては、入力される画像データの空間的な位置関係(2次元空間における位置)を知る必要がある。制御レジスタ85は、歪補正処理部8で処理するブロックラインの位置を指定している。
【0066】
図7は、補正前の撮像画像データと補正後の補正画像の関係を示している。図7(a)は撮影画像データ、同図(b)は補正画像を示している。図7(a),(b)は補正画像(出力側画像)の或るブロックラインBLの或る画素位置Aに注目している場合の概念図である。補正画像(出力画像)内の位置Aの座標(X,Y)は、歪補正座標変換の[式1]を用いて(入力画像)内の位置A’の座標(X’,Y’)に変換される。
【0067】
座標位置(X,Y)及び(Xblst,Yblst)、座標位置(X’,Y’)及び(X’blst,Y’blst)は、全画面の原点からの位置を示している。ここでは、原点は、全画面の左上端部としている。
【0068】
歪補正ブロックへ入力される画像データは、符号BLにて示すブロックライン単位である。そのため、まず補正画像の例えば画素Aを歪座標変換処理するには、最終的な補間処理ができるようにブロックラインBL内での座標系における座標位置(x’,y’)に変換する必要がある。
【0069】
まず、図7(b)の補正画像(出力画像)の各画素に対する座標位置(X,Y)は、下記の式2で生成する。
【0070】
[式2]
X=Xblst+m×ΔX
Y=Yblst+n×ΔY
ΔX,ΔYは補間ピッチで、1.0以上なら縮小画像が生成され、1.0以下なら拡大画像が生成される。座標位置(Xblst,Yblst)は歪補正ブロックの出力側ブロックラインの左肩の位置、すなわち、ブロックラインのスタート位置に相当している。(m,n)=(0,0)のとき、X=Xblst,Y=Yblstとなるので、[式2]から座標位置(Xblst,Yblst)を算出できることになる。m=0,n=0から始めて、m,nを例えば交互に1ずつ増やしていけば、ブロックラインBL内の全ての画素の座標位置(X,Y)を生成することができる。
【0071】
このBLに対し、BL内全ての画像の座標位置を式1に従って変換すると、図7(a)の変形したハッチング領域BL″にマッピングされる。図7(a)のBL’は、図7(b)のBLを処理するのに必要な入力データの範囲となる。(X’blst,Y’blst)は、BL’の左上位置であり、補間に必要な画素等を考慮すると、変形したハッチング領域の左上位置とは一致しない。BL’は、本願と同日出願の特願2003‐202493号に詳細を説明したサポート機能(歪補正範囲算出部)を利用して設定する。
【0072】
[式2]で生成された補正後の出力画像の座標位置(X,Y)を、[式1]で座標変換して図7(a)の補正前の入力画像の座標位置(X’,Y’)を求める。そして、座標変換された座標位置(X’,Y’)と、座標位置(X’blst,Y’blst)との差分をとることにより、ブロックライン(太い点線の矩形)の左肩を原点とする座標位置(x’,y’)を求めることができる。
【0073】
その結果、このブロックライン内での座標位置(x’,y’)に基づき、ブロックライン単位での補間処理を行えることになる。
【0074】
図7(a)に示す入力画像側の太い点線で示すブロックラインBL’はレジスタ85によって設定するが、その値を生成するためには、歪の変形を考慮して画像データの入力範囲(歪補正範囲)を算出可能とするサポート機能が必要となる。このサポート機能は、歪補正処理部8の歪補正処理機能に付加するなどして設ければよい。
【0075】
次に、図8を参照して歪補正処理フローを説明する。図8は図7の歪補正処理のフローチャートである。
【0076】
まず、図7(b)のハッチングを施したところのブロックライン処理を開始する(ステップS1)。前述の[式2]で、(m,n)=(0,0)とおくことにより(ステップS2)、図7(b)のハッチング領域の左肩、すなわちブロックラインのスタート座標位置(Xblst,Yblst)を求める。そして、[式2]から補正画像の座標位置(X,Y)を求めることができる。この場合、m,nをそれぞれ1ずつ増やしていけば、図7(b)のハッチングで示すブロックラインBL内の各画素の座標位置(X,Y)を生成することができる(ステップS3)。
【0077】
次に、[式1]を用いて補正画像における座標系の位置(X,Y)を、補正前の撮影画像における座標系の位置(X’,Y’)に変換する(ステップS4)。
【0078】
そして、撮影画像における座標系の位置(X’,Y’)を、前述した方法で入力ブロックラインBL内の座標系の位置(x’,y’)に変換する(ステップS5)。
【0079】
次に、このブロックラインBL内での座標位置(x’,y’)に基づいて補間処理を行い、座標位置(X’,Y’)における16点補間などで周辺の複数の画素データから補間データを算出することで、1画素分の補正画像データが得られる(ステップS6)。
【0080】
そして、以上のステップが、補正画像の座標系のBL内全画素について行われたか否かについて判断し(ステップS7)、終了していなければ次のm,nを設定して(ステップS8)、ステップS3〜S7を繰り返し行い、ステップS7の判定で全画素について処理が終了していれば、ステップS9に移行する。
【0081】
ステップS9では、全画面(フレーム)内の全てのブロックラインBLについて歪補正処理が終了したか否かを判断しており、終了していなければ次の入力ブロックラインBLを選択し、ステップS1〜ステップS9を繰り返し、ステップS9の判定で全画面ついて処理が終了していれば、終了する。
【0082】
図9及び図10は、図8の変形例とも言うべきものである。
デジタルズームを行う場合や注目する小領域のみを切り出す場合、撮像データの一部しか使わなくても構わない。選択的にCCDから撮像データの一部を取り込むことでメモリを節約することができる。この場合に歪補正をブロックライン単位で行うためには、取り込まれたデータが、撮像素子上でどこに位置するかの情報(X’imgst,Y’imgst)が必要である。
【0083】
図9は、デジタルズームの場合を示し、撮像した画像データから中央部分のみを取り込むものである。図8の場合と異なる点は、上述したように、全画面の中で何処を取り込むかをプリプロセス回路2で設定している点である。この設定に基づいて必要な部分のみを取り込んでおり、その範囲を図9(a)のE’で示す。
【0084】
まず、図9(b)で全画面の中のデジタルズームする範囲Eの左肩に当たるスタート位置(Ximgst,Yimgst)を設定する。次に、ブロックラインBLを設定するが、ここでは梨地にて示す部分である。このとき、取り込み範囲Eの左肩を原点とする、位置座標(Xblst,Yblst)が決定し、[式2]と同様にm,nを変化させることで、ブロックラインBL内における各画素の座標を生成することができる。
【0085】
この結果、座標位置(Ximgst,Yimgst)、(Xblst,Yblst)、(m×ΔX,n×ΔY)から全画面の座標における位置(X,Y)が決定される。
【0086】
撮影画像における座標位置(X’,Y’)は、上記のように決定された座標位置(X,Y)から[式1]を用いて求めることができる。
【0087】
そして次に、撮影画像データにおけるブロックラインBL’の中での座標位置(x’,y’)を求める。
【0088】
まず、取り込まれた撮像データの撮像面における設定範囲E’から左肩の座標(X’imgst,Y’imgst)が分かる。取り込み範囲E’の左肩を原点とする座標で、ブロックラインBL’の左肩の座標位置(X’blst,Y’blst)はサポート機能を利用して予め求められており、ブロックラインBL’内での座標における座標位置(x’,y’)が決定される。その結果、ブロックラインごとの補間処理が行われる。
【0089】
図10は撮像データから或る領域、例えば画面の端の方を切り出す場合である。これは、監視カメラなどにおいて、撮像データの端部分を取り込むような場合に相当する。図10の場合も、図9と同様な符号を付してある。図9と切り出す位置が異なっているだけで、図9の場合と同様な動作となる。
【0090】
なお、通常のデジタルカメラでは、CPUが制御レジスタに切り出す領域を設定するため、切り出し位置が分かっており、上記の変換が可能だが、記録後のデータに歪補正処理を行う場合ではタグ等に切り出し領域の位置とサイズを同時に記録する必要がある。このとき、同時に補正係数も記録しておく。
【0091】
ところで、撮像素子としてのCCDにはモニターモード(撮像した全画面を読み出さないモード)が用意されることが多い。モニターモードでは、ラインが間引かれることが多く、撮像素子における2次元空間的には同一でも、データ上ではサイズが異なることがある。また、プリプロセスにおいて、横方向の画素も間引かれることがある。また、CCDからの撮像データにローパスフィルタ(LPF)などのフィルタリング処理をかけたり、補間処理をしてフレームメモリに取り込むことがある。この場合、縦横のサンプリング比が整数にならない場合が生じる。さらに、JPEGにおけるYCbCrの記録では、CbやCr成分の横方向は2倍の間隔でサンプリングされることが多く、データとしては横方向が縮んだ形になる。これらは、[式1]では、Sx,Syによって補正する。
【0092】
図11(a)は、撮像時のデータ取り込みにおいて、実際にCCDから送られてくるデータが黒丸印のところしかなく、縦方向に3ライン間引いている状態を示している。モニターモードでは、このようにCCDからは間引かれたデータしか出力されず、これをメモリに取り込むと、図11(b)のように間引きによって上下方向につぶれた画像データとなる。図11(c)のように、空間的に中心から同じ距離にあるデータを取り出しても、同図(b)のように横方向に対して画像が短く出力されるという現象が現れる。この結果、[式1]による歪補正では、中心からの距離が遠いほど歪補正の効果が大きくなるようにしてあるので、縦と横で、歪補正の効果が変わってしまう。
【0093】
このように縦と横で画像が非対称となるのを補正する目的で、補正係数Sx,Syが設けられている。図11(b)の場合には、縦方向に伸ばす必要があるため、Sx=1,Sy=4とする。
【0094】
このSx,Syの効果により、縦,横のサンプリング比が異なっても正確な歪補正が可能となる。
【0095】
また、前述のように、サンプリング比が整数でない場合は、Sx,Syも非整数で設定すればよい。さらに、撮像素子の各画素の間隔が縦横で異なる場合でも可能(例えば長方画素)である。
【0096】
ところで、通常、JPEGだとYCbCrというデータで記録されるのが一般的であるが、そのときの設定として、図12に示すような場合が考えられる。例えば、YC422という形式のデータの場合は、輝度データに比べて色データについての解像度は横方向が1/2となっている。この場合は、色データについてはSx=2,Sy=1と設定して、補正処理を行えばよい。
【0097】
ところで、歪の中心と画像の中心が一致しない場合、補正前に中心にあった被写体が、補正後は中心からずれてしまう。[式1] では、中心ずれ補正値(Xoff,Yoff)で補正することにより、補正前後で画像の中心に来る被写体が変化しないようにすることが可能である。
【0098】
図13は、画像の中心ずれを説明する図である。
図13は補正画像を示す。前述の図3(b)では、歪の中心と画像の中心が一致している、すなわち、CCDの中心(画像の中心)がレンズ光軸(歪の中心)に一致している場合であった。
【0099】
図13は、CCDの中心に対して歪の中心がずれている場合である。図13では、歪中心(Xd,Yd)が画像の中心と異なるので、中心ずれを考慮せずに歪補正を行った場合、出力範囲Hに対する画像の中心PがQ点(大きな黒丸にて示す)にずれる。ユーザにとっては、実際に撮影した画像と歪補正後に表示される画像の中心がずれると、非常に違和感を感じるものである。そこで、元々歪補正前に出力範囲Hの中心にあったデータを、出力範囲に対して中心の位置にくるようにするために、歪補正された画像データの切り出した方を変える。それを行うためには、画像の中心ずれを(Xoff,Yoff)で定義して、画像データの切り出した方を変えればよい。画像の中心ずれ(Xoff,Yoff)を設定することで出力範囲をHからH’に移動させ、元々画像の中心Pにあった被写体を、補正後の出力範囲H’においても中心にくるように補正することができる。
【0100】
図13の実施の形態によれば、中央の被写体がずれることによる違和感を無くすことが出来る。
【0101】
【発明の効果】
以上述べたように本発明によれば、小領域(例えばブロックライン)の空間的な位置を算出可能とし、小領域単位での歪補正処理を実現することができる。また、間引き取り込みされた画像データに対しても、正確な歪補正を行える一方、デジタルズームなど、任意領域を切り出したデータに対しても正確な歪補正を行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態の画像処理装置の全体構成を示すブロック図。
【図2】図1における歪補正処理部の構成を示すブロック図。
【図3】歪補正処理部における座標変換の概念図。
【図4】陣笠型の歪を生じた撮影画像を示す図。
【図5】本実施の形態におけるフレームメモリからの画像データの読み出し順序を説明する図。
【図6】第1,第2データ順序変換部の構成を示すブロック図。
【図7】補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図8】図7の歪補正処理のフローチャート。
【図9】デジタルズームの場合で、補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図10】撮像データから或る領域を切り出す場合で、補正前の撮像画像データと補正後の補正画像の関係を示す図。
【図11】CCDのモニターモードにおけるライン間引きを説明する図。
【図12】YC422形式のデータにおける横方向の間引きを説明する図。
【図13】画像の中心ずれを説明する図。
【図14】格子状の被写体、樽型歪を生じた撮影画像、糸巻き型歪を生じた撮影画像を示す図。
【図15】一般的なデジタルカメラの画像処理手順の概念、及び従来のデジタルカメラの画像処理装置におけるブロック構成を示す図。
【図16】CCDの画素と像の関係を示す図。
【符号の説明】
1…CCD
3…バス
4…CPU
5…フレームメモリ
6…第1データ順序変換部
7…イメージプロセス回路
6…第1データ順序変換部
8…歪補正処理部(歪補正手段)
9…第2データ順序変換部
10…JPEG処理部
11…メモリカード(記録媒体)
82…内部メモリ部(バッファ)
83…メモリ制御部
85…制御レジスタ
Claims (12)
- 画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置において、
前記歪補正手段は、
補正前の画像データ内において、補正画像の各画素が対応する位置を所定の補正式に従って算出する際、撮像面における空間的な位置を記述可能な座標系において算出することを特徴とする画像処理装置。 - 前記歪補正手段は、
補正画像に含まれる第1の小領域を単位に処理を行い、
前記第1の小領域の各画素の座標位置を前記補正式に従って変換した小領域を含む撮像面における第2の小領域について、前記撮像面に対応する座標系での位置を、前記第2の小領域での座標に変換した後に、
前記補正画像の各画素のデータを生成することを特徴とする請求項1に記載の画像処理装置。 - 前記画像データは、
撮像データの一部のみを取り込んだ部分画像データであることを特徴とする請求項1又は2に記載の画像処理装置。 - 前記部分画像データは、
前記撮像データの一部を切り出したデータであることを特徴とする請求項3記載の画像処理装置。 - 前記部分画像データは、
前記撮像データの横または縦の少なくとも一方向に間引かれたデータであることを特徴とする請求項3記載の画像処理装置。 - 前記画像データは、
前記撮像データに対してフィルタリング,空間サンプリングまたは補間処理の少なくともいずれか1つを行って生成されるデータであることを特徴とする請求項1記載の画像処理装置。 - 前記画像データは、
各画素が撮像面で空間的に位置する間隔が縦方向及び横方向で異なることを特徴とする請求項1に記載の画像処理装置。 - 画像データにおける各画素の空間的なサンプリング間隔が縦横で異なる場合、歪補正前の画像内における座標を求める補正式は、縦横でのサンプリング間隔の違いを補正する係数を含むことを特徴とする請求項1〜7のいずれか1つに記載の画像処理装置。
- 歪補正前の画像内における座標を求める補正式は、
所定量のオフセット補正が可能であることを特徴とする請求項1〜8のいずれか1つに記載の画像処理装置。 - 前記オフセット補正は、
歪の中心と画像の中心が一致しない場合に行うことを特徴とする請求項9に記載の画像処理装置。 - 画像データに対して歪補正処理を行う歪補正手段を有する画像処理装置の歪補正方法であって、
前記歪補正方法は、
補正画像の各画素に対応する座標系での第1の位置を生成するステップと、
前記第1の位置を、歪補正式に従って歪補正前の画像データ内における座標系での第2の位置に変換するステップと、
前記歪補正前の画像データ内における座標系での第2の位置を、撮像面に対応する座標系を基準とする設定領域内での座標に変換するステップと、
前記設定領域内での座標に基づいて補間処理を行い、前記補正画像の各画素のデータを生成するステップと、
を有することを特徴とする歪補正方法。 - 前記請求項11記載の歪補正方法においては、前記補正画像に含まれる小領域を単位に処理を行うことを特徴とする歪補正方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003202663A JP2005045513A (ja) | 2003-07-28 | 2003-07-28 | 画像処理装置及び歪補正方法 |
EP12006314.4A EP2533192B1 (en) | 2003-07-28 | 2004-07-27 | Image processing apparatus, image processing method, and distortion correcting method |
PCT/JP2004/011010 WO2005010818A1 (ja) | 2003-07-28 | 2004-07-27 | 画像処理装置、画像処理方法及び歪補正方法 |
EP04771117.1A EP1650705B1 (en) | 2003-07-28 | 2004-07-27 | Image processing apparatus, image processing method, and distortion correcting method |
US10/566,408 US7813585B2 (en) | 2003-07-28 | 2004-07-27 | Image processing apparatus, image processing method, and distortion correcting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003202663A JP2005045513A (ja) | 2003-07-28 | 2003-07-28 | 画像処理装置及び歪補正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005045513A true JP2005045513A (ja) | 2005-02-17 |
Family
ID=34262308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003202663A Pending JP2005045513A (ja) | 2003-07-28 | 2003-07-28 | 画像処理装置及び歪補正方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005045513A (ja) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008096533A1 (ja) * | 2007-02-07 | 2008-08-14 | Nikon Corporation | 画像処理装置および画像処理方法 |
KR100856729B1 (ko) | 2007-04-04 | 2008-09-04 | 장상진 | 왜곡 영상 보정 장치 및 방법 |
JP2008227582A (ja) * | 2007-03-08 | 2008-09-25 | Hoya Corp | 撮像装置 |
JP2008252522A (ja) * | 2007-03-30 | 2008-10-16 | Hoya Corp | カメラ |
JP2009296174A (ja) * | 2008-06-03 | 2009-12-17 | Canon Inc | 撮像装置及び補正方法 |
JP2009296031A (ja) * | 2008-06-02 | 2009-12-17 | Canon Inc | 画像処理装置、制御方法、及びプログラム |
JP2010103840A (ja) * | 2008-10-24 | 2010-05-06 | Olympus Corp | 撮像装置 |
CN102055909A (zh) * | 2009-11-06 | 2011-05-11 | 奥林巴斯映像株式会社 | 图像拍摄装置以及图像拍摄方法 |
JP2012120035A (ja) * | 2010-12-02 | 2012-06-21 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
JP2015136106A (ja) * | 2015-01-06 | 2015-07-27 | ルネサスエレクトロニクス株式会社 | 半導体集積回路 |
WO2017163468A1 (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
JP2019101192A (ja) * | 2017-11-30 | 2019-06-24 | パナソニックIpマネジメント株式会社 | 画像表示装置 |
CN110786017A (zh) * | 2017-11-29 | 2020-02-11 | 近江数码制造株式会社 | 分发图像生成方法 |
-
2003
- 2003-07-28 JP JP2003202663A patent/JP2005045513A/ja active Pending
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8089535B2 (en) | 2007-02-07 | 2012-01-03 | Nikon Corporation | Image processing device and image processing method |
WO2008096533A1 (ja) * | 2007-02-07 | 2008-08-14 | Nikon Corporation | 画像処理装置および画像処理方法 |
JP2008227582A (ja) * | 2007-03-08 | 2008-09-25 | Hoya Corp | 撮像装置 |
JP2008252522A (ja) * | 2007-03-30 | 2008-10-16 | Hoya Corp | カメラ |
KR100856729B1 (ko) | 2007-04-04 | 2008-09-04 | 장상진 | 왜곡 영상 보정 장치 및 방법 |
US8417056B2 (en) | 2008-06-02 | 2013-04-09 | Canon Kabushiki Kaisha | Image processing apparatus and image processing method |
JP2009296031A (ja) * | 2008-06-02 | 2009-12-17 | Canon Inc | 画像処理装置、制御方法、及びプログラム |
JP2009296174A (ja) * | 2008-06-03 | 2009-12-17 | Canon Inc | 撮像装置及び補正方法 |
JP2010103840A (ja) * | 2008-10-24 | 2010-05-06 | Olympus Corp | 撮像装置 |
CN102055909A (zh) * | 2009-11-06 | 2011-05-11 | 奥林巴斯映像株式会社 | 图像拍摄装置以及图像拍摄方法 |
CN102055909B (zh) * | 2009-11-06 | 2013-06-12 | 奥林巴斯映像株式会社 | 图像拍摄装置以及图像拍摄方法 |
US8913173B2 (en) | 2009-11-06 | 2014-12-16 | Olympus Imaging Corp. | Imaging apparatus and imaging method |
JP2012120035A (ja) * | 2010-12-02 | 2012-06-21 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
JP2015136106A (ja) * | 2015-01-06 | 2015-07-27 | ルネサスエレクトロニクス株式会社 | 半導体集積回路 |
WO2017163468A1 (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
JP2017175498A (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
CN108770374A (zh) * | 2016-03-25 | 2018-11-06 | 日立汽车***株式会社 | 图像处理装置及图像处理方法 |
US10672100B2 (en) | 2016-03-25 | 2020-06-02 | Hitachi Automotive Systems, Ltd. | Image processing apparatus and image processing method |
CN108770374B (zh) * | 2016-03-25 | 2022-04-01 | 日立安斯泰莫株式会社 | 图像处理装置及图像处理方法 |
CN110786017A (zh) * | 2017-11-29 | 2020-02-11 | 近江数码制造株式会社 | 分发图像生成方法 |
CN110786017B (zh) * | 2017-11-29 | 2023-09-01 | 近江数码制造株式会社 | 分发图像生成方法 |
JP2019101192A (ja) * | 2017-11-30 | 2019-06-24 | パナソニックIpマネジメント株式会社 | 画像表示装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1650705B1 (en) | Image processing apparatus, image processing method, and distortion correcting method | |
JP4772281B2 (ja) | 画像処理装置及び画像処理方法 | |
TWI336200B (ja) | ||
JP2021533507A (ja) | 画像繋ぎ合わせ方法及び装置、車載画像処理装置、電子機器、記憶媒体 | |
JP4596986B2 (ja) | 画像撮像装置 | |
JP4196216B2 (ja) | 画像合成システム、画像合成方法及びプログラム | |
JP4556813B2 (ja) | 画像処理装置、及びプログラム | |
JP2004362069A (ja) | 画像処理装置 | |
WO2008143360A1 (ja) | 画像処理装置又は画像処理プログラム | |
US20090046182A1 (en) | Pixel aspect ratio correction using panchromatic pixels | |
JP2005045513A (ja) | 画像処理装置及び歪補正方法 | |
US11244431B2 (en) | Image processing | |
JP4553798B2 (ja) | 画像撮像装置 | |
JP4608436B2 (ja) | 画像撮影装置 | |
JP2000069343A (ja) | デジタル撮像装置 | |
JP4596987B2 (ja) | 画像撮像装置 | |
JP2001186533A (ja) | 画像処理装置 | |
JP4334932B2 (ja) | 画像処理装置及び画像処理方法 | |
JP3730450B2 (ja) | 画像入力装置および画像入力方法 | |
JP2008003683A (ja) | 画像生成装置及びその方法並びに記録媒体 | |
JPH11250240A (ja) | Yuvデータによりディストーション補正を行うディジタル撮像装置 | |
JP4873721B2 (ja) | 画像処理方法及び装置 | |
JP2003219246A (ja) | 電子カメラ及び電子カメラシステム | |
JP2009003953A (ja) | 画像処理装置 | |
KR20120069543A (ko) | 화상 처리 장치, 화상 처리 방법 및 촬상 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060404 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090317 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090518 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090609 |