JP2005011268A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2005011268A JP2005011268A JP2003177290A JP2003177290A JP2005011268A JP 2005011268 A JP2005011268 A JP 2005011268A JP 2003177290 A JP2003177290 A JP 2003177290A JP 2003177290 A JP2003177290 A JP 2003177290A JP 2005011268 A JP2005011268 A JP 2005011268A
- Authority
- JP
- Japan
- Prior art keywords
- interpolation
- distortion correction
- processing
- unit
- 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
- 238000012545 processing Methods 0.000 claims abstract description 259
- 238000012937 correction Methods 0.000 claims abstract description 192
- 230000003287 optical effect Effects 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims description 38
- 238000006243 chemical reaction Methods 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 25
- 230000009467 reduction Effects 0.000 claims description 19
- 238000003384 imaging method Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 2
- 230000009466 transformation Effects 0.000 abstract description 3
- 230000008602 contraction Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 22
- 230000005540 biological transmission Effects 0.000 description 15
- 238000012544 monitoring process Methods 0.000 description 8
- 230000004075 alteration Effects 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 3
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 3
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 3
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000011946 reduction process Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 241000226585 Antennaria plantaginifolia Species 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling 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
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Abstract
【解決手段】拡大縮小処理後の画素位置に対応する補間位置を生成する補間位置生成部21と、該補間位置を歪補正処理した後の画素位置に対応する補間処理前の補間座標データを生成する歪補正座標変換部22と、歪補正処理を行わない場合には補間位置生成部21の出力を選択し歪補正処理を行う場合には歪補正座標変換部22の出力を選択するセレクタ23と、を有してなる補間座標生成部20と、光学系を介して撮像された画像データを順次格納する内部メモリ部25と、補間座標データに基づいて内部メモリ部25への画像データの読み書きを制御するメモリ制御部24と、内部メモリ部25から読み出された画像データを補間演算する補間演算部26と、を有してなる歪補正処理部7を備えた画像処理装置。
【選択図】 図2
Description
【発明の属する技術分野】
本発明は、画像処理装置、より詳しくは、光学系を介して撮像された電子的な画像データを処理する画像処理装置に関する。
【0002】
【従来の技術】
デジタルカメラ等の電子的撮像装置においては、光学系により結像された被写体像を、CCD等の撮像素子により光電変換して撮像データを取得し、この撮像データに種々の画像処理を施した後に、JPEG等の圧縮方式で圧縮してメモリカード等の記録媒体に記録するのが一般的であり、該デジタルカメラ等の電子的撮像装置は、画像処理装置を兼ねたものとなっている。
【0003】
図11は画像処理装置における一般的な画像処理の手順を示す図である。
【0004】
CCD等の撮像素子は、光学系により結像された光学的な被写体像を光電変換して電気的な撮像信号を生成する。この撮像信号は、画素欠陥の補正やA/D変換などのプリプロセス処理が行われた後に、フレームメモリに記憶される。
【0005】
次に、フレームメモリに記憶された画像データが、読み出されて、第1のイメージプロセス、第2のイメージプロセス、…、第Nのイメージプロセス等により、単板信号から3板信号への変換処理や、ローパスフィルタ処理、エッジ強調処理、拡大縮小処理などの各種の画像処理が行われる。
【0006】
画像処理後の画像信号は、さらにJPEGなどの圧縮方式により圧縮されて、画像ファイルとしてメモリカードへ記録される。
【0007】
図12は、上記図11に示したような一般的な画像処理を行うための従来の画像処理装置の構成を示すブロック図である。
【0008】
この画像処理装置は、CCD91と、プリプロセス部92と、フレームメモリ94と、第1イメージプロセス部95a,第2イメージプロセス部95b,…,第Nイメージプロセス部95nと、JPEG処理部96と、メモリカード等97と、上記CCD91を除く上記各回路と後述するCPU93とが接続されているバス98と、上述した各回路を含むこの画像処理装置を統括的に制御するCPU93と、を有して構成されている。
【0009】
この図12に示したような構成の画像処理装置により、上記図11に示したような処理を行う場合には、具体的には次のような手順になる。
【0010】
まず、プリプロセス部92からの画像データをバス98を介してフレームメモリ94に一旦記憶させる。
【0011】
次に、該フレームメモリ94から画像データを読み出して、バス98を介して第1イメージプロセス部95aに入力し、第1の画像処理を行って、処理後の画像データをフレームメモリ94上に書き込む。
【0012】
同様にして、該フレームメモリ94から第1の画像処理後の画像データを読み出して、バス98を介して第2イメージプロセス部95bに入力し、第2の画像処理を行って、処理後の画像データをフレームメモリ94上に書き込む、という処理を行い、同様の処理を各イメージプロセス部毎に繰り返して行う。
【0013】
このように、画像処理を行う際には、画像データが何度もバス98を流れることになるが、画像データは一般的にデータサイズが大きいために、バス98には大きな負荷がかかることになる。このようなバス98に対する大きな負荷は、連写機能を使用しているときなどに、より顕著である。
【0014】
こうした観点から、複数のイメージプロセス部をパイプライン処理可能なように接続して、フレームメモリからの画像をパイプライン処理することにより、バスの負荷を減らすようにした技術が、例えば特開2000−311241号公報に記載されていて、バスの負荷を減らしながら、メモリ容量を増やすことなく拡大縮小処理を含む画像処理をリアルタイムで行うことができるようになっている。
【0015】
さらに、特開2000−312327号公報には、フレームメモリに記憶されている画像をブロック単位で所定方向(列方向)に読み出すことで、パイプライン処理を行う際のバッファ量を減らす技術も記載されていて、低消費電力、省メモリの画像処理装置を構成することができるようになっている。
【0016】
ところで、デジタルカメラや銀塩カメラを含むカメラの光学系においては、大小の差こそあれ、歪曲収差を生じるのが一般的である。この歪曲収差は、例えば、格子状の被写体を撮影すると、樽型、糸巻き型などとして観測される(本発明の実施形態に係る図3(A)、図3(B)、図3(C)参照)。また、現在発売されているカメラは、光学ズームを行い得る機種が多いが、こうしたズーム可能な光学系は、ワイド端からテレ端にかけてのズームレンジ内で焦点距離を変更すると、歪曲収差の状態が変化することが多い。
【0017】
このような現象に対し、画像処理の一部として歪補正を行う技術が、従来より開発されており、その一例として、例えば特開平6−181530号公報に記載されたものが挙げられる。該公報に記載されたような通常の画像処理では、フレームメモリから例えばライン単位でデータを読み出すようになっている。
【0018】
また、画像処理の一部として歪補正を行う他の技術として、例えば特開平10−224695号公報には、各イメージプロセス部がフレームメモリにランダムにアクセスするようにした技術が記載されている。この技術によれば、イメージプロセス部内にバッファを設ける必要がなくなるために、該イメージプロセス部の回路規模を小さくすることができる利点がある。
【0019】
【特許文献1】
特開2000−311241号公報
【0020】
【特許文献2】
特開2000−312327号公報
【0021】
【特許文献3】
特開平6−181530号公報
【0022】
【特許文献4】
特開平10−224695号公報
【0023】
【発明が解決しようとする課題】
上記特開平6−181530号公報に記載されたものでは、画像処理としての歪補正を、補正後の画像の1ライン分について行うためには、図13に示すような、補正前の画像データを、歪補正に必要な複数ライン分だけ、画像全体の横方向の幅に渡って読み出す必要がある。この図13は、従来において歪補正処理を行うために必要なメモリ量を説明するための図である。これら複数ライン分の画像データは、イメージプロセス部の内部に設けられたバッファに一旦蓄積されてから処理されるために、1ライン分の補正画像を得るには、バッファとして比較的大きな容量が必要になり、回路規模が大きくなって製造コストが増すとともに消費電力も増加してしまう。さらに、イメージプロセス部内のバッファメモリ容量によって、処理可能な画像サイズが制限されてしまうことになる。
【0024】
また、上記特開平10−224695号公報に記載されたものでは、SDRAM等で構成されたフレームメモリにランダムにアクセスしようとすると、バースト転送ができないために、その度毎にアドレスの転送が必要となって、結局バスの負荷が増大し、消費電力も増加してしまう。さらに、ランダムにアクセスするため、SDRAMから高速に読み出せるバースト転送に比べて、データの転送時間が全体の処理時間を増大させる要因となる。
【0025】
ところで、画像処理装置に、上述したような歪補正処理を行うための処理ブロックと、拡大縮小処理を行うための処理ブロックと、の両方を設けることにより、拡大縮小処理と歪補正処理との両方を行うことが可能となる。しかし、これらの処理は画素毎の補間演算を伴うものであって、処理回路も大規模になるために、単純に両方の処理回路を設ける構成では、回路構成が大きくなって消費電力が上がるとともに製造コストも増すことになってしまう。
【0026】
本発明は上記事情に鑑みてなされたものであり、拡大縮小処理と歪補正処理とを行い得る回路規模が小さく低消費電力な画像処理装置を提供することを目的としている。
【0027】
【課題を解決するための手段】
上記の目的を達成するために、第1の発明による画像処理装置は、光学系を介して撮像することにより得られた電子的な画像データに歪補正処理および拡大縮小処理を含む画像処理を行い得る画像処理装置であって、歪補正処理と拡大縮小処理とを含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間座標データを生成するための補間座標生成部と、上記画像データの少なくとも一部を格納するためのメモリ部と、上記補間座標データに基づいて上記画像データの一部を上記メモリ部に書き込む制御と該メモリ部から読み出す制御とを行うメモリ制御部と、上記メモリ制御部の制御により上記メモリ部から読み出された画像データを補間演算することにより補間処理を行った後の画素位置における画像データを生成する補間演算部と、を有してなる歪補正処理部を具備したものである。
【0028】
また、第2の発明による画像処理装置は、上記第1の発明による画像処理装置において、上記補間座標生成部が、歪補正処理を含まず拡大縮小処理を含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間位置を生成する補間位置生成部と、上記補間位置生成部により生成された補間位置を用いて歪補正処理を含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間座標データを生成する歪補正座標変換部と、歪補正処理を行わない場合には上記補間位置生成部の出力を選択し歪補正処理を行う場合には上記歪補正座標変換部の出力を選択して上記メモリ制御部へ出力するセレクタと、を有して構成されたものである。
【0029】
さらに、第3の発明による画像処理装置は、上記第2の発明による画像処理装置において、上記歪補正座標変換部が、上記光学系の歪曲収差による座標の変化を示す係数である歪補正係数を算出する歪補正係数算出回路と、上記歪補正係数算出回路により算出された歪補正係数を用いて上記補間位置生成部により生成された補間位置を補正することにより上記補間座標データを生成する補間位置補正回路と、を有して構成されたものである。
【0030】
第4の発明による画像処理装置は、上記第2または第3の発明による画像処理装置において、上記歪補正処理部が、クロックを供給されることにより動作を行うものであって、該歪補正処理部における上記歪補正座標変換部は、該歪補正処理部における該歪補正座標変換部以外の部分に供給されるクロックとは異なるクロックが供給され得るように構成されている。
【0031】
第5の発明による画像処理装置は、上記第2から第4の発明による画像処理装置において、上記歪補正処理部が、クロックを供給されることにより動作を行うものであって、上記補間位置生成部、または該補間位置生成部および上記歪補正座標変換部は、補間位置の生成、または補間位置の生成および補間座標データの生成を、毎クロックではない隔クロックに行い得るように構成されたものである。
【0032】
第6の発明による画像処理装置は、上記第2から第5の発明による画像処理装置において、上記歪補正座標変換部が、基本的な数式に基づく場合よりも乗算の回数が減るように変形した実用的な数式に基づいて、補間座標データを生成するように構成されたものである。
【0033】
第7の発明による画像処理装置は、上記第3の発明による画像処理装置において、上記歪補正係数算出回路が、上記歪補正係数を、歪補正後の画像内の注目画素に対応する位置と歪中心位置との間の距離に基づいて算出するものであって、該算出における演算処理の少なくとも一部を浮動小数演算により行うように構成されている。
【0034】
第8の発明による画像処理装置は、上記第7の発明による画像処理装置において、上記歪補正係数算出回路が、上記距離の2乗値と上記歪補正係数との対応関係を記憶するルックアップテーブルを有して構成されており、該距離の2乗値を上記浮動小数演算により求めて、求めた距離の2乗値に基づき該ルックアップテーブルを参照することにより上記歪補正係数を求めるものである。
【0035】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
図1から図10は本発明の一実施形態を示したものであり、図1は画像処理装置の構成を示すブロック図である。
【0036】
この画像処理装置は、光学系により結像された光学的な被写体像を光電変換して電気的な撮像信号を生成する撮像素子たるCCD1と、このCCD1から出力される撮像信号に画素欠陥の補正やA/D変換などのプリプロセス処理を行うプリプロセス部2と、このプリプロセス部2により処理された後のフレーム画像を記憶するフレームメモリ4と、このフレームメモリ4に記憶された画像データを後述するバス11を介して所定ブロック毎に読み出し所定の画像処理を施す画像処理部たるイメージプロセス部6と、このイメージプロセス部6による処理後の画像データに歪補正処理や拡大縮小処理を行うための画像処理部たる歪補正処理部7と、この歪補正処理部7から出力される画像データをJPEG等の圧縮方式で圧縮する画像処理部たるJPEG処理部9と、このJPEG処理部9により圧縮された画像データを後述するバス11を介して一旦フレームメモリ4に書き込み、この書き込まれた画像データをバス11を介して読み出して入力し画像ファイルとして記憶する不揮発性の記憶手段たるメモリカード等10と、上記CCD1を除く上記各回路と後述するCPU3とが接続されているバス11と、上述した各回路を含むこの画像処理装置を統括的に制御する制御手段たるCPU3と、を有して構成されている。
【0037】
ここに、上記イメージプロセス部6、歪補正処理部7、JPEG処理部9は、バス11を介することなく、該バス11とは異なる情報伝達経路によりパイプライン処理可能なように接続されていて、画像データを、2次元的な画素配列における所定のブロック単位で転送して処理するようになっている。これにより、データ量の大きい画像データが、各プロセス毎にバス11を何度も転送されることがなくなるために、バス11の負荷を大幅に軽減することが可能であるとともに、処理をブロック単位で行うことにより画像処理部の内部バッファ(後述する図2に示す内部メモリ部25または図6に示す2ポートSRAM25a)の容量を小さくすることが可能となっている。
【0038】
また、この図1に示す例においては、画像処理を行うイメージプロセス部6を1つのみ設けているが、複数の画像処理に対応した複数のイメージプロセス部を、上記パイプライン処理の経路上に配置するようにしても構わないことは勿論である。ここに画像処理の例としては、上述と同様に、単板信号から3板信号への変換処理や、ローパスフィルタ処理、エッジ強調処理、拡大縮小処理などが挙げられる。このときの配置は、上記歪補正処理部7よりも前段側であっても構わないし、後段側であっても構わない。
【0039】
次に、図2は、上記歪補正処理部7の構成を示すブロック図である。
【0040】
この歪補正処理部7は、前段の処理ブロックから画像データを所定ブロック単位で受け取って、歪補正を行った後に、後段の処理ブロックへ出力するものであり、上記図1に示したような構成例においては、前段の処理ブロックがイメージプロセス部6に対応し、後段の処理ブロックがJPEG処理部9に対応している。
【0041】
この歪補正処理部7には、制御レジスタ7aが付随して設けられており、CPU3からの該歪補正処理部7に対する設定値や各種データなどが設定され、同時に処理結果のステータスなどを該CPU3から読むことができるようになっている。
【0042】
該歪補正処理部7の処理の概要は、図4や図5にも示すように、おおよそ、次のようになっている。図4は歪補正を含む補間処理の概要を説明するための図、図5は16点補間による処理を説明するための図である。
【0043】
まず、図4(B)に示すような歪補正処理後の画像の座標系(X,Y)を予め準備しておく。この座標系(X,Y)における画像データは、歪補正処理を開始する前は、当然にしてまだ何も求められていない。
【0044】
該座標系(X,Y)における着目点(注目画素)(これは、歪補正処理後の画像における各画素の座標に対応しており、同様に、(X,Y)と表す。)を設定して、該着目点(X,Y)に対応する画像データの座標(補間座標データ)(X’,Y’)を座標変換により求める(図4(A)参照)。この(X,Y)と(X’,Y’)との対応関係は、上記CCD1へ被写体像を結像するための光学系の光学的性質により決まるものであり、該対応関係を定義付けるパラメータ等は、光学系の設計値から、あるいは製造後の光学系の検査から、予め求められて、図示しない不揮発性メモリ等に記憶されている。そして、上記CPU3が、この不揮発性メモリ等からパラメータを読み出して、上記制御レジスタ7aに設定するようになっている。
【0045】
こうして対応関係により座標(X’,Y’)を求めると、該座標(X’,Y’)における画像データを求めるために必要な周辺の画像データの座標が決定される。例えば、Cubic補間処理を行う場合には、図5に示すように、該座標(X’,Y’)(図5における画像データがDout となっている点)に対して周辺の16点の座標が決定される。
【0046】
従って、これら16点の座標における画像データD0〜D15から、白丸で示されている座標(X’,Y’)の点の画像データDout を所定の補間式を用いて求めることにより、それが歪補正処理後の画像の着目点(X,Y)における画像データとなる。
【0047】
上記着目点(X,Y)を移動させながら、必要な範囲の全ての画像データを算出することにより、歪補正後の画像データが生成される。
【0048】
このような処理を行うための歪補正処理部7は、図2に示すように、着目点の座標(X,Y)を生成するための補間位置生成部21と、この補間位置生成部21により生成された着目点の座標(X,Y)から歪補正処理前の画像データの座標(X’,Y’)を算出するための歪補正座標変換部22と、歪補正処理を行わない場合には上記補間位置生成部21から出力される座標(X,Y)を選択し歪補正処理を行う場合には上記歪補正座標変換部22から出力される座標(X’,Y’)を選択するセレクタ23と、前段の処理ブロックからの画像データの読み出しを制御するとともに上記セレクタ23から出力される座標に対応して補間処理を行うのに必要な周辺画素の画像データを送出するように後述する内部メモリ部25を制御するメモリ制御部24と、前段の処理ブロックからの画像データを蓄積するものであり上記メモリ制御部24の制御により補間に必要な周辺画素の画像データを後述する補間演算部26へ出力する内部メモリ部25と、この内部メモリ部25から出力される着目点近傍の画像データと上記セレクタ23から出力される着目点の座標とに基づき該着目点における画像データを上述したように例えばCubic補間により求めて後段の処理ブロックへ出力する補間演算部26と、を有して構成されている。
【0049】
これらの構成ブロックの内の上記補間位置生成部21と、歪補正座標変換部22と、セレクタ23とは、補間座標生成部20を構成する要素となっている。
【0050】
ここで、上記補間位置生成部21と歪補正座標変換部22とにおいて、座標を算出する際の基本的な数式と、それを変形することにより回路規模を縮小することができるようにした実用的な数式と、について説明する。
【0051】
まず、基本的な数式について説明する。
【0052】
上記補間位置生成部21は、基本的に、上記CPU3から上記制御レジスタ7aに設定される補間開始位置(XST,YST)および補間ステップ(ΔX,ΔY)を用いて、次の数式1に示すように、補間を行う着目点の座標(X,Y)を算出するものである。
【数1】
ここに、kは着目点をX方向にΔXだけ移動させる際にインクリメントされる変数、lは着目点をY方向にΔYだけ移動させる際にインクリメントされる変数である。
【0053】
なお、上記補間開始位置(XST,YST)は、画像内の任意の位置に設定することが可能である。また、上記補間ステップ(ΔX,ΔY)は、上記CPU3が適宜に設定することにより、画像の拡大や縮小を行うことが可能である。
【0054】
上記歪補正座標変換部22は、基本的に、上記補間位置生成部21から出力される歪補正処理後の着目点の座標(X,Y)から、歪補正処理前の着目点の座標(X’,Y’)を次のように算出するものである。
【0055】
すなわち、まず、処理対象の画像における歪中心位置の座標(Xd ,Yd )と、歪補正処理後に該歪補正に起因して被写体の位置が撮影時とずれてしまうのを補正するための中心ずれ補正量(Xoff ,Yoff )と、光学系の光学的な性質を示すパラメータを用いて歪補正処理を行った場合に補正後の画像が画像データとして必要な範囲からはみ出したり不足したりするのを補正するための範囲補正倍率Mと、を用いて、次の数式2に示すような中間的な算出値(X(ドット),Y(ドット))(ここに、文字の上に付す点を文章中では(ドット)などとして表している。)を求める。
【数2】
【0056】
なお、上記歪中心位置の座標(Xd ,Yd )は、上記CCD1に被写体光像を結像する光学系の光軸が交わる画像上の位置に相当する座標である。
【0057】
また、上記歪中心位置の座標(Xd ,Yd )、中心ずれ補正量(Xoff ,Yoff )、範囲補正倍率Mは、上記CPU3により、上記制御レジスタ7aに設定されるようになっている。
【0058】
次に、求めた算出値(X(ドット),Y(ドット))と、上記歪中心位置の座標(Xd ,Yd )と、画像データを間引いて取り込んだ場合などに画像の縦方向と横方向とで空間的なサンプリングが異なるのを補正するための係数(SX ,SY )と、を用いて、歪中心からの距離を示すZ(より正確にはZの2乗)を次の数式3に示すように計算する。
【数3】
【0059】
こうして算出されたZと、上記CPU3から上記制御レジスタ7aに設定される光学系の歪曲収差に関する光学的性質を示すパラメータである歪補正係数A,B,Cと、上記算出値(X(ドット),Y(ドット))と、上記歪中心位置の座標(Xd ,Yd )と、を用いて、歪補正処理後の着目点の座標(X,Y)に対応する歪補正処理前の着目点の座標(X’,Y’)を、次の数式4に示すように算出する。
【数4】
【0060】
ここで図3は、格子状の被写体を光学系を介して撮像したときの歪曲収差の例を示す図である。まず、図3(A)は、格子状の被写体の例を示している。従来は、Zの2次項までしか考慮していないために、図3(A)に示すような被写体を光学系を介して撮像したときに生じ得る、図3(B)に示すような樽型の歪曲収差や、図3(C)に示すような糸巻き型の歪曲収差をある程度補正することは可能であったが、図3(D)に示すような陣笠型の歪曲収差を補正することはできなかった。しかし、本実施形態では、この数式4に示すように、Zの2次項を越える次数まで、つまり例えば4次項、または6次項まで考慮するようにしているために、このようなより高次の収差も高精度に補正することが可能となっている。なお、ここでは6次項まで考慮する例を示したが、8次項、10次項等の、より一層高次の収差も補正するようにしても構わない。
【0061】
上述したような補間位置生成部21により算出された座標(X,Y)、または歪補正座標変換部22により算出された座標(X’,Y’)は、セレクタ23に入力されて、歪補正を行うか否かに応じて、必要なものが選択される。
【0062】
次に、回路規模を縮小することができるようにした実用的な数式について説明する。
【0063】
まず、上記数式3に数式2および数式1を代入して、次の数式5に示すように変形する。
【数5】
【0064】
そして、数式6に示すような新たな定数式を導入して、上記数式5を数式7に示すように変形する。
【数6】
【数7】
【0065】
ここに、数式7におけるZ(2ドット)は、次の数式8に示すように定義され、X2,Y2(補間座標データ)は次の数式9に示すように定義される。
【数8】
【数9】
【0066】
この数式8および数式7に示すように定義されたZ(2ドット)を用いると、上記数式4は次の数式10に示すように変形される。
【数10】
【0067】
ここに、この数式10においては、次の数式11から数式14に示すように定義された定数式または変数式を用いている。
【数11】
【数12】
【数13】
【数14】
【0068】
上記数式1〜数式4に示したような基本的な数式に沿って演算を行う場合には、係数が14個で乗算回数が13回となる。すなわち、係数は、歪中心位置(Xd ,Yd )、中心ずれ補正量(Xoff ,Yoff )、範囲補正倍率M、係数(Sx,Sy)、歪補正係数A,B,C、補間開始位置(XST,YST)、補間ステップ(ΔX,ΔY)の合計14個である。また、乗算回数は、数式2におけるMとの乗算が2回、数式3におけるSx,Syとの各乗算と2つの2乗式とで乗算が4回、数式4における歪補正係数A,B,Cとの乗算が3回、Zの4乗および6乗の算出に乗算が2回、大括弧と小括弧との乗算が2回、で合計13回となる。
【0069】
これに対して、上記数式5〜数式14に示したような実用的な数式に沿って演算を行う場合には、係数が13個で乗算回数が9回となる。すなわち、係数は、X(2ドット)ST,Y(2ドット)ST,ΔX(2ドット),ΔY(2ドット),X(3ドット),Y(3ドット),ΔX(3ドット),ΔY(3ドット),A(ドット),B(ドット),C(ドット),Xd ,Yd の合計13個である。また、乗算回数は、数式7の中括弧内における2つの2乗式で2回、数式14におけるA(ドット),B(ドット),C(ドット)との乗算が3回、該数式14におけるZ(ドット)の4乗および6乗の算出に乗算が2回、数式10におけるFとの乗算が2回、で合計9回となる。
【0070】
このような演算で扱う数は、ダイナミックレンジが大きく、計算回数が少し増えるだけでも回路規模が大きくなってしまうために、上記に示したような実用的な数式に沿って演算を行うことにより、乗算器の個数を減少させるとともに、係数を設定するためのレジスタを削減することができ、回路規模を効果的に縮小することが可能となる。
【0071】
このように変形された実用的な数式に基づいて、上記補間位置生成部21に対応する補間位置算出回路21a(後述する図6参照)は、上記CPU3から上記制御レジスタ7aに設定される補間開始位置(X(3ドット),Y(3ドット))および補間ステップ(ΔX(3ドット),ΔY(3ドット))を用いて、上記数式13に示すように、補間を行う着目点の座標(補間位置)(X1,Y1)を算出するようになっている。
【0072】
また、上記歪補正座標変換部22の歪補正係数算出回路22a(後述する図6および図7参照)は、上記CPU3から上記制御レジスタ7aに設定されるA(ドット),B(ドット),C(ドット)を用いて、上記数式14に示すように歪補正係数Fを算出するようになっている。なお、後述するように、該図7に示す構成に代えて、図8に示すような構成により、歪補正係数Fを算出することも可能となっている。
【0073】
さらに、上記歪補正座標変換部22の補間位置補正回路22b(後述する図6参照)は、算出された歪補正係数Fと、上記CPU3から上記制御レジスタ7aに設定される歪中心位置の座標(Xd ,Yd )と、を用いて上記着目点の座標(補間位置)(X1,Y1)から上記数式10により歪補正処理前の着目点の座標(補間座標データ)(X’,Y’)を算出するようになっている。
【0074】
次に、上記補間演算部26は、上記セレクタ23から出力される座標に基づき、該座標の近傍の画素の画像データD0 〜D15を上記内部メモリ部25から読み出して、次のような数式15を用いることにより、該着目点に係る歪補正処理後の画像データDout を算出して、後段の処理ブロックへ出力する。
【数15】
ここに、kx0〜kx3,ky0〜ky3は、例えばCubic補間を行う際に定められた所定の補間係数である。
【0075】
図6は、歪補正処理部7のより詳細な構成を示すブロック図である。
【0076】
上記補間位置生成部21は、上記着目点の座標(X1,Y1)を上述したように算出するための補間位置算出回路21aを有して構成されている。
【0077】
上記歪補正座標変換部22は、上記歪補正係数Fを上記数式14に示したように算出するための歪補正係数算出回路22aと、この歪補正係数算出回路22aにより算出された歪補正係数Fを用いて上記数式10に示したように歪補正処理前の着目点の座標(X’,Y’)を算出するための補間位置補正回路22bと、を有して構成されている。
【0078】
上記セレクタ23は、歪補正処理を行わない場合には(拡大縮小処理を行うか否かに関わらず)上記補間位置算出回路21aからの座標(X1,Y1)を選択し、歪補正処理を行う場合には(拡大縮小処理を伴うか否かに関わらず)上記補間位置補正回路22bからの座標(X’,Y’)を選択するものである。
【0079】
このセレクタ23により選択された座標(X1,Y1)または座標(X’,Y’)には、制御レジスタ7aを介して上記CPU3により設定される歪中心位置の座標(Xd ,Yd )が、加算器27a,27bによりそれぞれ加算されるようになっている。
【0080】
これら加算器27a,27bの出力は、読出しアドレス生成回路24aとバッファ開放量算出回路24cとへ出力されるようになっている。
【0081】
この読出しアドレス生成回路24aには、さらに、上記補間位置算出回路21aにより算出された座標(X1,Y1)も上記セレクタ23を介する経路とは別途に入力されるようになっている。そして、該読出しアドレス生成回路24aは、この座標(X1,Y1)に関連する画素データ(16点補間を行う場合には、該座標(X1,Y1)を中心とする16個の画素データ)が記憶されているアドレスADRを2ポートSRAM25aに出力するとともに、補間係数(例えば、上記数式15に示したような補間係数kx0〜kx3,ky0〜ky3)と出力する画素データがD0 〜D15のどの位置の画素データであるかを示すデータ列制御信号とを補間回路26aに出力するようになっている。さらに、該読出しアドレス生成回路24aは、書き込み許可信号WE_Nを後段の処理ブロックへ出力する。
【0082】
上記2ポートSRAM25aは、上記図2に示した内部メモリ部25に対応する回路部分である。
【0083】
補間回路26aは、上記図2に示した補間演算部26に対応するものであり、上記2ポートSRAM25aから読み出された画像データを用いて上記数式15に示したような補間処理を行い、処理後の画像データを後段の処理ブロックに出力するものである。
【0084】
上記バッファ開放量算出回路24cは、上記補間位置算出回路21aからの出力と、上記セレクタ23からの出力と、に基づいて、上記2ポートSRAM25aにおいて開放可能な記憶容量(バッファ開放量)を算出するものである。
【0085】
バッファ空き容量監視回路24dは、このバッファ開放量算出回路24cの出力を参照して、上記2ポートSRAM25aの空き容量の状況を把握するものである。
【0086】
書込みアドレス生成回路24bは、前段の処理ブロックからの画像データを受けて、上記2ポートSRAM25aに記録するものである。
【0087】
GRANT_N送信判定回路24eは、後段の処理ブロックからの画像データを要求する要求信号REQ_Nを受けて、上記書込みアドレス生成回路24bとバッファ開放量算出回路24cとの出力に基づき画像データの送信が可能であるか否かを判断し、可能である場合に許可信号GRANT_Nを後段の処理ブロックに出力するとともに、上記補間位置算出回路21aにも出力するものである。このGRANT_N送信判定回路24eは、さらに、該許可信号GRANT_Nを受けた補間位置算出回路21aが座標(X1,Y1)を算出して出力するのにタイミングを合わせて歪補正係数算出回路22aが歪補正係数Fを出力することができるように、トリガtrigを該歪補正係数算出回路22aへ出力するようになっている。
【0088】
なお、上記図6に示した歪補正処理部7の構成の内で、上記歪補正座標変換部22を除く各回路にはクロックCLK2が供給されるが、この歪補正座標変換部22にはこのクロックCLK2とは異なり得るクロックCLK1が供給されるようになっている。
【0089】
これにより、歪補正処理を行わない場合、つまり例えば拡大縮小処理のみを行う場合や、歪補正処理および拡大縮小処理を両方とも行わない場合などに、歪補正座標変換部22への供給クロックCLK1を停止すれば、不要な電力の消費を抑制することが可能である。また、供給するクロックCLK1のクロック数を低下させたり戻したり制御することにより、単位時間当たりに補間座標データを生成する回数を制御し調整することも可能となる。
【0090】
次に、この図6に示したような歪補正処理部7の動作について説明する。
【0091】
バッファ空き容量監視回路24dは、バッファ開放量算出回路24cを介して2ポートSRAM25aの空き容量を監視し、所定の空き容量があると、前段の処理ブロックに対して所定のブロック単位の画像データ(以下、適宜、ユニットライン(UL)データという。)を送信するように要求信号REQを出す(ステップS1)。
【0092】
前段の処理ブロックは、この要求信号REQを受けて、画像データが送信可能になったところで許可信号GRANTを送信し、上記バッファ空き容量監視回路24dは、この許可信号GRANTを受信する(ステップS2)。
【0093】
該バッファ空き容量監視回路24dは、2ポートSRAM25aの空き容量を、内部に保持するカウンタで把握するようになっており、許可信号GRANTを受信すると同時に、この内部カウンタの値を1つ減らす。該バッファ空き容量監視回路24dは、この内部カウンタが0になったら、上記要求信号REQを取り下げるように動作する(ステップS3)。
【0094】
そして、前段の処理ブロックから、書き込み許可信号WEが書込みアドレス生成回路24bに入力され、続いて画像データが入力される。これに応じて、書込みアドレス生成回路24bは、制御信号を2ポートSRAM25aへ出力して、画像データDATAを該2ポートSRAM25aの、アドレスADDRESSで指定される領域に書き込む。また、書込みアドレス生成回路24bは、1ULデータが入力される毎に、BLCカウンタ(内部バッファである2ポートSRAM25aにどれだけのデータが溜められたかを示すカウンタ)をアップして、GRANT_N送信判定回路24eへ出力する(ステップS4)。
【0095】
GRANT_N送信判定回路24eは、後段の処理ブロックから要求信号REQ_Nを受信すると、次に送信することができるULデータが2ポートSRAM25a内にあるか否かを判定し、あると判定した場合には、許可信号GRANT_Nを後段の処理ブロックと上記補間位置算出回路21aとへ送信する(ステップS5)。
【0096】
補間位置算出回路21aは、この許可信号GRANT_Nを受けて動作を開始し、補間位置である座標(X1,Y1)の算出動作を1UL分行ったところで、次のUL先頭座標を算出して終了する(ステップS6)。
【0097】
上記GRANT_N送信判定回路24eは、補間位置算出回路21aが動作を開始して座標(X1,Y1)を出力するのと同期して歪補正係数算出回路22aが歪補正係数Fを出力することができるようなタイミングで、トリガtrigを該歪補正係数算出回路22aへ出力する(ステップS7)。
【0098】
歪補正係数算出回路22aは、トリガtrigを受けると、ULデータ内の画素について歪補正係数Fを上記数式14に基づき算出し、補間位置補正回路22bに出力する。この歪補正係数算出回路22aも、上記補間位置算出回路21aと同様に、1UL分の動作を行ったところで、次のUL先頭座標を算出して終了する(ステップS8)。
【0099】
補間位置補正回路22bは、この歪補正係数算出回路22aから受け取った歪補正係数Fと、上記補間位置算出回路21aから受け取った座標(X1,Y1)と、を用いて、上記数式10に基づき座標(X’,Y’)を算出する。この補間位置補正回路22bも、上記歪補正係数算出回路22aに従って、1UL分の動作を行ったところで、次のUL先頭座標を算出して終了する(ステップS9)。
【0100】
セレクタ23は、上記制御レジスタ7aを介して上記CPU3により設定された動作モードに従って、歪補正処理を行う場合には上記補間位置補正回路22bからの座標(X’,Y’)を選択し、歪補正処理を行わない場合には上記補間位置算出回路21aからの座標(X1,Y1)を選択する(ステップS10)。
【0101】
加算器27a,27bは、このセレクタ23により選択された座標(X1,Y1)または座標(X’,Y’)に、歪中心位置の座標(Xd ,Yd )をそれぞれ加算する(ステップS11)。
【0102】
読み出しアドレス生成回路24aは、加算器27a,27bから受け取った座標に基づいて、補間に用いるために2ポートSRAM25aから読み出す画素データのアドレスADRを該2ポートSRAM25aに出力するとともに、補間係数とデータ列制御信号とを補間回路26aに出力する(ステップS12)。
【0103】
補間回路26aは、読み出しアドレス生成回路24aから受け取った補間係数およびデータ列制御信号と、2ポートSRAM25aから受け取った画素データと、を用いて、上記数式15に示すように、補間された画素データを算出し、後段の処理ブロックに出力する(ステップS13)。
【0104】
バッファ開放量算出回路24cは、上記補間位置算出回路21aおよび加算器27a,27bの出力に基づいて、ULデータを最後まで出力したことが確認されたら、今処理を終えたUL先頭座標と、次のUL先頭座標との差を計算して、必要なくなったデータが蓄積されているバッファ(2ポートSRAM25a内の領域)を開放するために、バッファ開放量をバッファ空き容量監視回路24dへ出力するとともに、次のUL処理を行うために後どれだけのデータを前段の処理ブロックから受けることが必要であるかを、上記GRANT_N送信判定回路24eへ送信する(ステップS14)。
【0105】
バッファ空き容量監視回路24dは、上記ステップS14において内部バッファである2ポートSRAM25aに記憶領域の空きができたことが確認されたところで、上記ステップS1へ戻って、上述したような処理を繰り返して行う(ステップS15)。
【0106】
GRANT_N送信判定回路24eは、上記書込みアドレス生成回路24bからのBLCカウンタの値と、バッファ開放量算出回路24cからの出力と、に基づいて、次のULデータを後段の処理ブロックに送信することができるか否かを判定し、送信することができると判定した場合には、上記ステップS5の処理を行う(ステップS16)。
【0107】
図7は、上記歪補正係数算出回路22aの構成の一例を示すブロック図である。この歪補正係数算出回路22aは、上記数式14によって、歪補正係数Fを算出するためのものである。
【0108】
なお、この図7において、および以下に示す図7の説明においては、Zは数式8の左辺に示すZ(2ドット)のことを指し、係数A,B,Cは数式11の左辺に示すA(ドット),B(ドット),C(ドット)のことを指している。
【0109】
歪補正係数算出回路22aは、上記GRANT_N送信判定回路24eからトリガtrigが入力されたところで上記数式9に基づき補間座標X2,Y2を算出する歪補正用座標算出回路31と、この歪補正用座標算出回路31により算出された補間座標X2を浮動小数に変換する浮動小数化回路32aと、上記歪補正用座標算出回路31により算出された補間座標Y2を浮動小数に変換する浮動小数化回路32bと、上記浮動小数化回路32aにより浮動小数化された補間座標X2を2乗する2乗計算器33aと、上記浮動小数化回路32bにより浮動小数化された補間座標Y2を2乗する2乗計算器33bと、上記2乗計算器33aにより算出された補間座標X2の2乗と上記2乗計算器33bにより算出された補間座標Y2の2乗とを加算することによりZ(より正確には、上述したようにZ(2ドット)。以下同様)の2乗を算出する加算器34と、この加算器34からの出力を2乗することによりZの4乗を算出する2乗計算器33cと、上記加算器34からの出力を遅延させる遅延回路35bと、上記2乗計算器33cにより算出されたZの4乗とこの遅延回路35bにより遅延されタイミングを合わせて出力されるZの2乗とを乗算することによりZの6乗を算出する乗算器36dと、上記加算器34からの出力を遅延させるとともに上記2乗計算器33cからの出力を遅延させる遅延回路35aと、上記遅延回路35aから遅延されタイミングを合わせて出力されるZの2乗に上記CPU3から制御レジスタ7aに設定される係数A(より正確には、上述したようにA(ドット)。以下同様)を乗算する乗算器36aと、上記遅延回路35aから遅延されタイミングを合わせて出力されるZの4乗に上記CPU3から制御レジスタ7aに設定される係数B(より正確には、上述したようにB(ドット)。以下同様)を乗算する乗算器36bと、上記乗算器36dから出力されるZの6乗に上記CPU3から制御レジスタ7aに設定される係数C(より正確には、上述したようにC(ドット)。以下同様)を乗算する乗算器36cと、上記乗算器36aからの出力に上記CPU3から制御レジスタ7aに設定される上記係数Aの符号signAを与えて固定小数に変換する固定小数化回路37aと、上記乗算器36bからの出力に上記CPU3から制御レジスタ7aに設定される上記係数Bの符号signBを与えて固定小数に変換する固定小数化回路37bと、上記乗算器36cからの出力に上記CPU3から制御レジスタ7aに設定される上記係数Cの符号signCを与えて固定小数に変換する固定小数化回路37cと、上記固定小数化回路37aからの出力と上記固定小数化回路37bからの出力と上記固定小数化回路37cからの出力と上記CPU3から制御レジスタ7aに設定される定数1.0とを加算することにより上記数式14に基づく歪補正係数Fを算出する加算器38と、を有して構成されている。
【0110】
なお、この図7において、2重線で示している部分が、浮動小数による演算処理を行っている部分であり、ダイナミックレンジの広いX2,Y2やZなどを浮動小数で扱うことにより、精度を保ちながら回路規模を縮小するようになっている。
【0111】
また、図8は、上記歪補正係数算出回路22aの構成の他の例を示すブロック図である。
【0112】
この図8に示す歪補正係数算出回路22aは、上記歪補正用座標算出回路31と、上記浮動小数化回路32aと、上記浮動小数化回路32bと、上記2乗計算器33aと、上記2乗計算器33bと、上記加算器34と、この加算器34から出力される浮動小数化されたZ(より正確には、上述したようにZ(2ドット)。以下同様)の2乗を用いて参照を行うことにより固定小数化された歪補正係数Fを出力するLUT(ルックアップテーブル)39と、を有して構成されている。
【0113】
この図8においても、2重線で示している部分が、浮動小数による演算処理を行っている部分である。
【0114】
このように、この図8に示す構成例は、ルックアップテーブルを用いることにより、歪補正係数Fを算出するための処理時間を短縮し回路の消費電力を低減するものとなっている。
【0115】
なお、この構成例を適用する場合には、上記係数A,B,CはCPU3から設定されるものではなく、固定値となっている。もちろん、ルックアップテーブルの規模が大きくなっても構わない場合には、上記係数A,B,Cの複数の組み合わせに対応するルックアップテーブルを用意しておいて、適切なものを用いるようにしても構わない。
【0116】
次に、図9はクロック毎に補間位置を生成するときの様子を示すタイミングチャート、図10は3クロックに1回の割合で補間位置を生成するときの様子を示すタイミングチャートである。
【0117】
図9は、クロック毎に補間位置を生成するときの動作の様子を示したものであり、後段の処理ブロックから要求信号REQ_NがGRANT_N送信判定回路24eに入力されると、該GRANT_N送信判定回路24eは、画像データを出力可能となったところで、該後段の処理ブロックに対して許可信号GRANT_Nを送信する。
【0118】
この許可信号GRANT_Nは、補間位置算出回路21aへも入力されて、補間位置X1,Y1が生成され出力される。この図9に示す例では、補間位置X1,Y1は、各クロック毎に出力される。
【0119】
そして、適宜の処理時間を経た後に、上記補間回路26aから補間後の画像データが後段の処理ブロックへ出力され、このときには上記読出しアドレス生成回路24aから書き込み許可信号WE_Nが出力されている。
【0120】
また、図10は、3クロックに1回の割合で補間位置を生成するときの動作の様子を示したものである。
【0121】
許可信号GRANT_Nが補間位置算出回路21aに入力されるまでの動作は図9に示した場合と同様であるが、その後に該補間位置算出回路21aは、3クロックに1回の割合で補間位置X1,Y1を生成して出力する。
【0122】
また、補間位置X1,Y1が生成されてから上記補間回路26aから補間後の画像データが出力されるまでの処理に要する時間も図9に示した場合と同様であるが、補間位置X1,Y1の生成が3クロックに1回であるために、補間後の画像データの出力も同様に3クロックに1回であり、これに合わせて書き込み許可信号WE_Nの出力も3クロックに1回となっている。
【0123】
なお、ここでは補間位置をクロック毎あるいは3クロックに1回生成する例を示しているが、これに限るものではなく、適宜の複数回に1回生成するようにしても構わないし、あるいはn回毎にm回(n≧m)(例えば、3クロックに2回)生成するようにすることも可能であり、任意の頻度で補間位置を生成することが可能である。また、このようなクロック数に対する補間位置の生成数の割合を、動的に変更するようにしても構わない。
【0124】
このような実施形態によれば、歪補正処理と拡大縮小処理とを、1つの回路で同時に行うことができるために、処理時間を短縮することができるとともに、回路規模を縮小することが可能となる。これにより、高速な画像処理装置を低コストに構成することができる。
【0125】
また、歪補正を行わないときに、歪補正座標変換部に供給するクロックを停止することにより、つまり、歪補正係数算出回路と補間位置補正回路とに供給するクロックを停止することにより、消費電力を低減することが可能となる。
【0126】
さらに、これら補間位置算出回路による座標の算出を、必要に応じてクロック毎でないようにする(毎クロックではない隔クロックに行うようにする)ことにより、電力の消費を時間方向に分散することが可能となる。この単位時間当たりに座標を算出する回数を適応的に変更することにより、一層効率的に消費電力の分散を図ることができる。これによって、処理回路の温度が上昇するのを抑制することができるとともに、画像処理装置全体の瞬間的な消費電力(ピーク消費電力)を低減することができる。
【0127】
そして、基本的な数式に基づく場合よりも乗算の回数が減るように変形した実用的な数式に基づいて、補間座標データを生成するようにしたために、補間位置生成部や歪補正座標変換部の内部に設ける乗算器の個数を削減することができ、回路規模の縮小を図ることができる。
【0128】
加えて、歪補正後の画像内の注目画素(X,Y)に対応する位置(つまり、(X,Y)にXoff ,Yoff ,M,SX ,SY などを考慮した位置)と歪中心位置(Xd ,Yd )との間の距離Z(あるいはZ(2ドット))は、ダイナミックレンジが広い数であり、これらの2乗、4乗、6乗などはさらにダイナミックレンジが広い数となるが、これらを浮動小数として扱って演算を行い歪補正係数を算出するようにしたために、精度を保ちながら回路規模を縮小することが可能となる。
【0129】
また、歪補正係数を求める際に、上記距離Z(あるいはZ(2ドット))(もしくはその2乗)に基づき参照可能なルックアップテーブルを用いる場合には、処理時間を短縮しながら回路規模を縮小することが可能となる。
【0130】
なお、本発明は上述した実施形態に限定されるものではなく、発明の主旨を逸脱しない範囲内において種々の変形や応用が可能であることは勿論である。
【0131】
【発明の効果】
以上説明したように本発明によれば、拡大縮小処理と歪補正処理とを行い得る回路規模が小さく低消費電力な画像処理装置となる。
【図面の簡単な説明】
【図1】本発明の一実施形態における画像処理装置の構成を示すブロック図。
【図2】上記実施形態における歪補正処理部の構成を示すブロック図。
【図3】上記実施形態において、格子状の被写体を光学系を介して撮影したときの歪曲収差の例を示す図。
【図4】上記実施形態において、歪補正を含む補間処理の概要を説明するための図。
【図5】上記実施形態において、16点補間による処理を説明するための図。
【図6】上記実施形態における歪補正処理部のより詳細な構成を示すブロック図。
【図7】上記実施形態における歪補正係数算出回路の構成の一例を示すブロック図。
【図8】上記実施形態における歪補正係数算出回路の構成の他の例を示すブロック図。
【図9】上記実施形態において、クロック毎に補間位置を生成するときの様子を示すタイミングチャート。
【図10】上記実施形態において、3クロックに1回の割合で補間位置を生成するときの様子を示すタイミングチャート。
【図11】画像処理装置における一般的な画像処理の手順を示す図。
【図12】上記図11に示したような一般的な画像処理を行うための従来の画像処理装置の構成を示すブロック図。
【図13】従来において歪補正処理を行うために必要なメモリ量を説明するための図。
【符号の説明】
1…CCD
2…プリプロセス部
3…CPU
4…フレームメモリ
6…イメージプロセス部(画像処理部)
7…歪補正処理部(画像処理部)
7a…制御レジスタ
9…JPEG処理部(画像処理部)
10…メモリカード等
11…バス
20…補間座標生成部
21…補間位置生成部(補間座標生成部の一部)
21a…補間位置算出回路
22…歪補正座標変換部(補間座標生成部の一部)
22a…歪補正係数算出回路
22b…補間位置補正回路
23…セレクタ(補間座標生成部の一部)
24…メモリ制御部
24a…読出しアドレス生成回路
24b…書込みアドレス生成回路
24c…バッファ開放量算出回路
24d…バッファ空き容量監視回路
24e…GRANT_N送信判定回路
25…内部メモリ部
25a…2ポートSRAM
26…補間演算部
26a…補間回路
31…歪補正用座標算出回路
32a,32b…浮動小数化回路
37a,37b,37c…固定小数化回路
39…LUT(ルックアップテーブル)
Claims (8)
- 光学系を介して撮像することにより得られた電子的な画像データに、歪補正処理および拡大縮小処理を含む画像処理を行い得る画像処理装置であって、
歪補正処理と拡大縮小処理とを含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間座標データを生成するための補間座標生成部と、
上記画像データの少なくとも一部を格納するためのメモリ部と、
上記補間座標データに基づいて、上記画像データの一部を上記メモリ部に書き込む制御と該メモリ部から読み出す制御とを行うメモリ制御部と、
上記メモリ制御部の制御により上記メモリ部から読み出された画像データを補間演算することにより、補間処理を行った後の画素位置における画像データを生成する補間演算部と、
を有してなる歪補正処理部を具備したことを特徴とする画像処理装置。 - 上記補間座標生成部は、
歪補正処理を含まず拡大縮小処理を含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間位置を生成する補間位置生成部と、
上記補間位置生成部により生成された補間位置を用いて、歪補正処理を含み得る画像処理に係る補間処理を行った後の画素位置に対応する補間処理前の座標データである補間座標データを生成する歪補正座標変換部と、
歪補正処理を行わない場合には上記補間位置生成部の出力を選択し、歪補正処理を行う場合には上記歪補正座標変換部の出力を選択して、上記メモリ制御部へ出力するセレクタと、
を有して構成されたものであることを特徴とする請求項1に記載の画像処理装置。 - 上記歪補正座標変換部は、
上記光学系の歪曲収差による座標の変化を示す係数である歪補正係数を算出する歪補正係数算出回路と、
上記歪補正係数算出回路により算出された歪補正係数を用いて、上記補間位置生成部により生成された補間位置を補正することにより上記補間座標データを生成する補間位置補正回路と、
を有して構成されたものであることを特徴とする請求項2に記載の画像処理装置。 - 上記歪補正処理部は、クロックを供給されることにより動作を行うものであって、
該歪補正処理部における上記歪補正座標変換部は、該歪補正処理部における該歪補正座標変換部以外の部分に供給されるクロックとは異なるクロックが供給され得るように構成されていることを特徴とする請求項2または請求項3に記載の画像処理装置。 - 上記歪補正処理部は、クロックを供給されることにより動作を行うものであって、
上記補間位置生成部、または該補間位置生成部および上記歪補正座標変換部は、補間位置の生成、または補間位置の生成および補間座標データの生成を、毎クロックではない隔クロックに行い得るように構成されたものであることを特徴とする請求項2から請求項4の何れか1項に記載の画像処理装置。 - 上記歪補正座標変換部は、基本的な数式に基づく場合よりも乗算の回数が減るように変形した実用的な数式に基づいて、補間座標データを生成するように構成されたものであることを特徴とする請求項2から請求項5の何れか1項に記載の画像処理装置。
- 上記歪補正係数算出回路は、上記歪補正係数を、歪補正後の画像内の注目画素に対応する位置と歪中心位置との間の距離に基づいて算出するものであって、該算出における演算処理の少なくとも一部を浮動小数演算により行うように構成されていることを特徴とする請求項3に記載の画像処理装置。
- 上記歪補正係数算出回路は、上記距離の2乗値と上記歪補正係数との対応関係を記憶するルックアップテーブルを有して構成されており、
該距離の2乗値を上記浮動小数演算により求めて、求めた距離の2乗値に基づき該ルックアップテーブルを参照することにより上記歪補正係数を求めるものであることを特徴とする請求項7に記載の画像処理装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003177290A JP2005011268A (ja) | 2003-06-20 | 2003-06-20 | 画像処理装置 |
PCT/JP2004/007855 WO2004109597A1 (ja) | 2003-06-02 | 2004-05-31 | 画像処理装置 |
EP04735521.9A EP1657675B1 (en) | 2003-06-02 | 2004-05-31 | Image processing device |
US10/558,994 US7636498B2 (en) | 2003-06-02 | 2004-05-31 | Image processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003177290A JP2005011268A (ja) | 2003-06-20 | 2003-06-20 | 画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005011268A true JP2005011268A (ja) | 2005-01-13 |
Family
ID=34099919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003177290A Pending JP2005011268A (ja) | 2003-06-02 | 2003-06-20 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005011268A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8269859B2 (en) | 2008-10-20 | 2012-09-18 | Samsung Electronics Co., Ltd. | Photographing apparatus that performs distortion correction in association with digital and optical zoom, method of controlling the same, and recording medium having recorded thereon computer program to implement the method |
-
2003
- 2003-06-20 JP JP2003177290A patent/JP2005011268A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8269859B2 (en) | 2008-10-20 | 2012-09-18 | Samsung Electronics Co., Ltd. | Photographing apparatus that performs distortion correction in association with digital and optical zoom, method of controlling the same, and recording medium having recorded thereon computer program to implement the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1650705B1 (en) | Image processing apparatus, image processing method, and distortion correcting method | |
JP4772281B2 (ja) | 画像処理装置及び画像処理方法 | |
US7636498B2 (en) | Image processing apparatus | |
US8289420B2 (en) | Image processing device, camera device, image processing method, and program | |
JP2004362069A (ja) | 画像処理装置 | |
JP6136190B2 (ja) | 画像処理装置、撮像装置 | |
JP5154361B2 (ja) | 撮像装置及び撮像装置の制御方法 | |
JP4334932B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2010176547A (ja) | 画像処理装置に含まれる制御装置、制御方法、及び制御処理プログラム | |
JP2005045513A (ja) | 画像処理装置及び歪補正方法 | |
JP4436626B2 (ja) | 画像処理装置 | |
JP2007079708A (ja) | 画像処理装置及び画像処理方法 | |
US8902474B2 (en) | Image processing apparatus, control method of the same, and program | |
JP2005011268A (ja) | 画像処理装置 | |
JP2009003953A (ja) | 画像処理装置 | |
JP2007180898A (ja) | 画像処理装置 | |
JP6295619B2 (ja) | 画像処理装置及び方法、並びに電子機器 | |
JP4503106B2 (ja) | 情報処理装置および方法、情報処理システム、並びに記録媒体 | |
JP6762775B2 (ja) | 画像処理装置、撮像装置、制御方法及びプログラム | |
JP2009020894A (ja) | 画像処理装置 | |
JP6440465B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
US9917972B2 (en) | Image processor, image-processing method and program | |
JP5224492B2 (ja) | 画像データ転送制御装置及び画像データ転送方法並びに該画像データ転送装置を有するカメラ | |
JP2005227479A (ja) | 画像処理装置、画像処理方法及び画像処理方法をコンピュータに実行させるためのプログラム | |
JP2016103169A (ja) | 画像処理装置、画像処理方法および電子機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080311 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080603 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081125 |