(57)【要約】【課題】高精度かつ高速な画像処理を実現できる画像処理装置を提供する。【解決手段】画像処理装置は、光学的な歪みに対する補正処理などのような画像処理を高精度に行うことが求められる画像処理装置であって、入力画像の座標変換時の座標変換量を演算するための漸化式の初期値を、前記入力画像の主走査方向のラインごとに演算する初期値演算部と、演算された初期値を用いた前記漸化式により、前記座標変換量を演算する座標変換量演算部と、を備える。【選択図】図３
2014142917.tif 000002
【特許請求の範囲】
【請求項１】
入力画像の座標変換時の座標変換量を演算するための漸化式の初期値を、前記入力画像の主走査方向のラインごとに演算する初期値演算部と、
演算された初期値を用いた前記漸化式により、前記座標変換量を演算する座標変換量演算部と、を備えることを特徴とする画像処理装置。
【請求項２】
前記初期値演算部は、
画像補正時の補正割合に応じて係数を変化させた高次多項式により、前記漸化式の初期値を演算すること
を特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記座標変換量演算部は、
演算された初期値を用いた前記漸化式により、前記座標変換量をピクセルごとに演算すること
を特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記初期値演算部の演算処理と前記座標変換量演算部の演算処理をパイプライン処理することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記初期値演算部は、
前記座標変換量演算部で、副走査方向のｍ番目のライン上の前記座標変換量を演算している間に、副走査方向のｍ＋１番目のライン以降で前記漸化式の初期値を演算することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記初期値演算部は、
出力画像の開始の１ライン前から前記漸化式の初期値の演算を開始することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記座標変換量演算部は、
座標変換元の画像の有効画像範囲以外を参照する場合に、例外処理を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記例外処理は、
対応する画素の画素値をゼロとして出力することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記入力画像は、
異なる撮像装置から入力された複数の入力画像であることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
前記初期値演算部は、
前記漸化式の初期値を、前記入力画像の主走査方向のラインごとに演算し、複数の前記入力画像に対して前記漸化式の初期値を逐次演算することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記座標変換量演算部は、
演算された初期値を用いた前記漸化式により、前記座標変換量をピクセルごとに演算し、複数の前記入力画像に対して前記座標変換量を並列演算することを特徴とする請求項９に記載の画像処理装置。
【請求項１２】
前記初期値演算部は、ソフトウェアの実行により実現し、前記座標変換量演算部は、ハードウェアの実装により実現することを特徴とする請求項１に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関するものである。
【背景技術】
【０００２】
高精度な画像処理システムには、例えば、ステレオカメラなどがある。このような画像処理システムでは、例えば、温度変化による視差の違いや外的衝撃による固定具の変形などにより、光学的な歪みが発生することがある。そのため、画像処理システムでは、発生した光学的な歪みに対する補正処理（位置ずれ補正処理）などのような各種画像処理を高精度に行うことが求められる。そこで、画像処理システムでは、画素単位（ピクセル単位）の座標変換などの膨大な演算量を高速処理する高価なハードウェア（処理系）を備えている場合がある。これに対して、特許文献１には、座標変換時に用いる歪み補正量の高次多項式演算に漸化式を用いることで演算量を削減し、安価な方法で高速化を図る画像処理装置が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の画像処理装置では、画像処理精度に悪影響を及ぼすことが考えられる。
【０００４】
例えば、上述した光学的な歪み補正は、画像処理システムが高い精度を保つために、迅速な処理が求められる。そのため、光学的な歪み補正では、座標変換時に用いる歪み補正量を即座に調整したい（高次多項式の係数を変更したい）。しかし、漸化式では、初期値に固定値を用いていることから、歪み補正量を即座に調整することができず（係数を即座に変更できず）、精度低下を招く。
【０００５】
このように、従来の画像処理装置は、高精度かつ高速な画像処理を実現するものではない。
【０００６】
本発明は上記に鑑みてなされたものであって、高精度かつ高速な画像処理を実現できる画像処理装置を提供することにある。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明に係る画像処理装置は、入力画像の座標変換時の座標変換量を演算するための漸化式の初期値を、前記入力画像の主走査方向のラインごとに演算する初期値演算部と、演算された初期値を用いた前記漸化式により、前記座標変換量を演算する座標変換量演算部と、を備える。
【発明の効果】
【０００８】
本発明によれば、高精度かつ高速な画像処理を実現できるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係る画像処理システムの構成例を示す図である。
【図２】図２は、実施形態に係る画像処理装置の構成例を示す図である。
【図３】図３は、実施形態に係る座標計算部の構成例を示す図である。
【図４】図４は、実施形態に係る初期値演算部と漸化式演算部の動作例を示す図である。
【図５】図５は、変形例１に係る画像処理システムの構成例を示す図である。
【図６】図６は、変形例１に係る画像処理装置の構成例を示す図である。
【図７】図７は、変形例１に係る座標計算部の構成例を示す図である。
【発明を実施するための形態】
【００１０】
以下に、添付図面を参照して、画像処理装置の実施形態を詳細に説明する。
【００１１】
［第１の実施形態］
＜システム構成＞
図１は、本実施形態に係る画像処理システム１０００ａの構成例を示す図である。図１に示した画像処理システム１０００ａは、２つの撮像装置を備えたステレオカメラシステムとなっている。
【００１２】
図１に示すように、本実施形態に係る画像処理システム１０００ａは、第１の撮像装置１３０１、第２の撮像装置１３０２、画像処理ユニット１１０ａ、視差演算装置１１５、認識処理装置１１６及び機器制御ユニット１１７を有する。
【００１３】
第１の撮像装置１３０１及び第２の撮像装置１３０２は、それぞれ被写体を撮像するカメラであり、構成及び解像度などが同一となっている。画像処理ユニット１１０ａは、画像処理装置１００、ＣＰＵ（Central  Processing  Unit）１１１、記憶装置１１２、通信Ｉ／Ｆ（Interface）１１３、及び外部Ｉ／Ｆ１１４などを備えており、それぞれが相互にバスＢで接続される。画像処理装置１００は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）などの画像処理回路を備えており、第１の撮像装置１３０１及び第２の撮像装置１３０２により撮像され入力された画像に対して、所定の画像処理を行い、処理後の画像を出力する。画像処理には、例えば、歪み補正処理などがある。
【００１４】
ＣＰＵ１１１は、プログラムやデータをメモリ（ＲＡＭ：Random  Access  Memory）上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。記憶装置１１２は、プログラムやデータを所定の記憶領域に保持する装置である。記憶装置１１２には、例えば、揮発性の半導体メモリであるＲＡＭ、不揮発性の半導体メモリであるＲＯＭ（Read  Only  Memory）、及び大容量の記憶装置であるＨＤＤ（Hard  Disk  Drive）などがある。
【００１５】
外部Ｉ／Ｆ１１４は、外部装置とのインタフェースである。外部装置には、例えば、記録媒体１１４ａなどがある。これにより、画像処理システム１０００ａは、記録媒体１１４ａの読み取り及び／又は書き込みを行うことができる。記録媒体１１４ａには、例えば、フレキシブルディスク、ＣＤ（Compact  Disk）、ＤＶＤ（Digital  Versatile  Disk）、及びメモリカード（Memory  Card）などがある。通信Ｉ／Ｆ１１３は、画像処理システム１０００ａを、所定のデータ伝送路に接続するインタフェースである。これにより、画像処理システム１０００ａは、他の機器とデータ通信を行うことができる。データ伝送路には、例えば、ネットワークなどがあり、有線又は無線などの接続方法や通信プロトコルなどの通信方式は問わない。
【００１６】
視差演算装置１１５は、第１の撮像装置１３０１及び第２の撮像装置１３０２が撮像して画像処理ユニット１１０ａが歪み補正処理などを行った２つの画像（２つの入力画像データ）の視差を算出し、算出した視差を認識処理装置１１６に対して出力する。認識処理装置１１６は、視差演算装置１１５から入力された視差に基づいて、例えば被写体の認識及び被写体までの距離の認識などの認識処理を行い、認識処理結果を機器制御ユニット１１７に対して出力する。機器制御ユニット１１７は、認識処理装置１１６から入力された認識処理結果に基づいて、図示しない機器の動作を制御する。
【００１７】
以上のように、本実施形態に係る画像処理システム１０００ａは、上記構成により、２か所からの画像の撮影、２つの画像の補正処理、２つの画像から視差の算出、視差に基づく認識処理、及び認識処理結果に基づく機器の動作制御などを実行することができる。
【００１８】
＜画像処理装置の構成＞
図２は、本実施形態に係る画像処理装置１００の構成例を示す図である。図２には、ステレオカメラシステムに対応する画像処理装置１００の構成例が示されている。図２に示すように、本実施形態に係る画像処理装置１００は、ステレオカメラの第１の撮像装置１３０１及び第２の撮像装置１３０２に対応するように、第１ラインバッファ１０１及び第２ラインバッファ１０２を備えている。また、本実施形態に係る画像処理装置１００は、第１書き込みアドレス計算部１１１及び第２書き込みアドレス計算部１１２を備えている。本実施形態に係る画像処理装置１００は、第１インターポレータ１７１及び第２インターポレータ１７２を備えている。
【００１９】
また、本実施形態に係る画像処理装置１００は、ＸＹ座標カウンタ１２、読み出しタイミング生成部１３、Ｘ’Ｙ’座標カウンタ１４、座標計算部１５、及び読み込みアドレス計算部１６などを備えている。本実施形態に係る画像処理装置１００は、上記部品が回路上で相互に接続されている。
【００２０】
第１ラインバッファ１０１及び第２ラインバッファ１０２は、第１の撮像装置１３０１及び第２の撮像装置１３０２からの入力画像データ（入力画像信号）１，２を、所定のデータ量、一時保持するメモリである。なお、第１ラインバッファ１０１及び第２ラインバッファ１０２を総称する場合には、ラインバッファ１０という。
【００２１】
第１書き込みアドレス計算部１１１及び第２書き込みアドレス計算部１１２は、入力同期信号１，２に基づき、書き込みアドレスをインクリメントする。第１書き込みアドレス計算部１１１及び第２書き込みアドレス計算部１１２は、各入力画像データ１，２をラインバッファ１０に書き込むための書き込みアドレス［Ａｄｄｒ＿ｗ１］，［Ａｄｄｒ＿ｗ２］を指定する。なお、第１書き込みアドレス計算部１１１及び第２書き込みアドレス計算部１１２を総称する場合には、書き込みアドレス計算部１１という。また、書き込みアドレス［Ａｄｄｒ＿ｗ１］，［Ａｄｄｒ＿ｗ２］を総称する場合には、書き込みアドレス［Ａｄｄｒ＿ｗ］という。計算された書き込みアドレス［Ａｄｄｒ＿ｗ］は、書き込みアドレス計算部１１からラインバッファ１０と読み込みアドレス計算部１６へと渡される。
【００２２】
なお、ラインバッファ１０は、上記書き込みアドレス計算部１１による書き込みアドレス指定に基づき、所定のデータ量より前に保持したデータが上書きされ、リングバッファのように使用される。
【００２３】
ＸＹ座標カウンタ１２は、入力同期信号１，２に基づき、現在入力されている入力画像データ１，２の画素が、各入力側の画像空間上のどの画素に対応するのかを計算する。つまり、ＸＹ座標カウンタ１２は、各入力側書き込み時の画素の座標値［Ｘ１，Ｙ１］，［Ｘ２，Ｙ２］を計算する。なお、各入力側書き込み時の画素の座標値［Ｘ１，Ｙ１］，［Ｘ２，Ｙ２］を総称する場合には、入力側書き込み時の画素の座標値［Ｘ，Ｙ］という。計算された入力側書き込み時の画素の座標値［Ｘ，Ｙ］は、ＸＹ座標カウンタ１２から読み込みアドレス計算部１６へと渡される。
【００２４】
読み出しタイミング生成部１３は、第１ラインバッファ１０１に入力画像データ１を、第２ラインバッファ１０２に入力画像データ２を、所定のデータ量、書き込む間、画像データの読み出しを遅延させる出力同期信号を生成する。読み出しタイミング生成部１３は、入力同期信号１，２に基づき、出力同期信号を生成する。
【００２５】
Ｘ’Ｙ’座標カウンタ１４は、読み出しタイミング生成部１３を介して入力された入力同期信号１，２に基づき、現在入力されている入力画像データ１，２の画素が、各出力側の画像空間上のどの画素に対応するのかを計算する。つまり、Ｘ’Ｙ’座標カウンタ１４は、各出力側読み込み時の画素の座標値［Ｘ’１，Ｙ’１］，［Ｘ’２，Ｙ’２］を計算する。なお、各出力側読み込み時の画素の座標値［Ｘ’１，Ｙ’１］，［Ｘ’２，Ｙ’２］を総称する場合には、出力側読み込み時の画素の座標値［Ｘ’，Ｙ’］という。計算された出力側読み込み時の画素の座標値［Ｘ’，Ｙ’］は、Ｘ’Ｙ’座標カウンタ１４から座標計算部１５と読み込みアドレス計算部１６へと渡される。
【００２６】
座標計算部１５は、高次多項式により、画素単位の座標変換処理を行う。このとき座標計算部１５は、各出力側の座標値（座標変換先の座標値）に対する各入力側の座標値（座標変換元の座標値）の座標移動量［Δｘ１，Δｙ１］，［Δｘ２，Δｙ２］を計算する。つまり、座標計算部１５は、上述した歪みを補正するための座標変換時の座標変換量を計算する。なお、座標移動量［Δｘ１，Δｙ１］，［Δｘ２，Δｙ２］を総称する場合には、座標移動量［Δｘ，Δｙ］という。計算された座標移動量［Δｘ，Δｙ］は、座標計算部１５から読み込みアドレス計算部１６へと渡される。
【００２７】
読み込みアドレス計算部１６は、第１ラインバッファ１０１及び第２ラインバッファ１０２の読み込みアドレス［Ａｄｄｒ＿ｒ１］，［Ａｄｄｒ＿ｒ２］を計算する。なお、読み込みアドレス［Ａｄｄｒ＿ｒ１］，［Ａｄｄｒ＿ｒ２］を総称する場合には、読み込みアドレス［Ａｄｄｒ＿ｒ］という。このとき読み込みアドレス計算部１６は、入力側書き込み時の画素の座標値［Ｘ，Ｙ］、出力側読み込み時の画素の座標値［Ｘ’，Ｙ’］、及び座標変換元の座標移動量［Δｘ，Δｙ］に基づき、ラインバッファ１０の読み込みアドレス［Ａｄｄｒ＿ｒ］を計算する。なお、本実施形態に係る読み込みアドレス計算部１６は、読み込みアドレス［Ａｄｄｒ＿ｒ］の計算に以下の計算式（式１）を用いる。
Ａｄｄｒ＿ｒ＝Ａｄｄｒ＿ｗ−(Y−Y’+Δy)×Ｌｉｎｅｐｉｘ−(X−X’+Δx)  ・・・  （式１）
Ａｄｄｒ＿ｒ：読み込みアドレス，Ａｄｄｒ＿ｗ：書き込みアドレス
X,Y：入力側書き込み時の画素の座標値，X’,Y’：出力側読み込み時の画素の座標値
Δx,Δy：座標変換元の座標移動量
Ｌｉｎｅｐｉｘ：１ラインのピクセル数（画素数）
【００２８】
計算された読み込みアドレス［Ａｄｄｒ＿ｒ］は、ラインバッファ１０と第１インターポレータ１７１及び第２インターポレータ１７２へと渡される。
【００２９】
第１インターポレータ１７１及び第２インターポレータ１７２は、各ラインバッファ１０に保持されている入力画像データ１，２を画素単位で読み出し、読み出した画素に対してインターポレーション（Interpolation）などの画像フィルタ処理を行う。本実施形態に係る第１インターポレータ１７１及び第２インターポレータ１７２は、インターポレーションに、バイリニア補間（Bilinear：双一次補間）を用いる。この場合、第１インターポレータ１７１及び第２インターポレータ１７２は、バイリニア補間で必要な４画素の左上に位置する画素のアドレスを、読み出し画素座標として指定する。なお、第１インターポレータ１７１及び第２インターポレータ１７２を総称する場合には、インターポレータ１７という。
【００３０】
これにより、本実施形態に係るインターポレータ１７からは、画像フィルタ処理後の出力画像データ１，２が出力される。
【００３１】
以上のように、本実施形態に係る画像処理装置１００は、上記構成により、第１の撮像装置１３０１及び第２の撮像装置１３０２からの入力画像に対して、高精度な画像処理を施し、高画質画像を出力する画像処理機能を実現することができる。
【００３２】
＜画像処理機能＞
本実施形態に係る画像処理機能について説明する。本実施形態に係る画像処理装置１００は、画像補正の補正割合（画像をどのくらい補正するのか）に応じて係数を変化させた高次多項式により、漸化式に用いる初期値を、入力画像の主走査方向のラインごとに演算する。本実施形態に係る画像処理装置１００は、演算した値を初期値とする漸化式により、座標変換時の座標変換量（座標移動量）を演算する。本実施形態に係る画像処理装置１００は、このような画像処理機能を有している。
【００３３】
例えば、ステレオカメラでは、左右の画像の視差により、撮像された対象物との距離を測ることができる。このようなステレオカメラでは、正確な距離を測るために、対応する左右の画素が一致している必要がある。しかし、ステレオカメラは、左右で独立したレンズを使用する構成のため、例えば、左右の第１の撮像装置１３０１及び第２の撮像装置１３０２に温度差があるだけでも、視差の出方が変化する。また、温度変化や外的衝撃により、第１の撮像装置１３０１及び第２の撮像装置１３０２を固定する固定具が変形することも考えられ、この場合には、第１の撮像装置１３０１及び第２の撮像装置１３０２の位置ずれが発生する。ステレオカメラでは、このような原因により、距離を測るために対応する画素間で、数ピクセルの誤差が生じる。
【００３４】
そこで、本実施形態に係る画像処理機能では、高次多項式の係数を画像補正の補正割合に応じて変化させ、座標変換時の座標変換量を演算する漸化式の初期値を、入力画像の主走査方向のラインごとに演算する仕組みとした。
【００３５】
これにより、本実施形態に係る画像処理機能は、温度変化や外的衝撃などに応じた画像補正を即座に実行し、出力画像に反映可能な環境を提供する。その結果、本実施形態に係る画像処理装置１００は、高精度かつ高速な画像処理を実現できる。
【００３６】
以下に、本実施形態に係る画像処理機能の構成とその動作について説明する。なお、本実施形態に係る画像処理機能は、座標変換処理を行う座標計算部１５により実現される機能である。
【００３７】
図３は、本実施形態に係る座標計算部１５の構成例を示す図である。図３には、ステレオカメラに対応する座標計算部１５の構成例が示されている。図３に示すように、本実施形態に係る座標計算部１５は、初期値演算部１５１と漸化式演算部（座標変換量演算部）１５２などを有している。
【００３８】
初期値演算部１５１は、同期信号に基づき、画像補正の補正割合に応じて係数（画像補正用の係数）を変化させた高次多項式により、漸化式に用いる初期値を、入力画像の主走査方向のラインごとに演算する。初期値演算部１５１は、次のようにして初期値を演算する。
【００３９】
まず、初期値演算部１５１は、画像補正の補正割合を定義する係数を用いた以下の高次多項式（式２）により、現在のＹ座標値に対応するＸ座標軸（主走査方向）のライン（主走査ライン）上において、左端の３ピクセル分（X＝1,2,3）の補正量（座標変換量）を求める。
f(X)＝cx(3)×X２＋cx(4)×X×Y＋cx(5)×Y２＋cx(1)×X＋cx(2)×Y＋cx(0)  ・・・  （式２）
X：Ｘ座標値，Y：Ｙ座標値
cx(0)〜cx(5)：Ｘ方向の高次多項式係数（画像補正の補正割合を定義する係数）
【００４０】
次に、初期値演算部１５１は、求めた３ピクセル分の各補正量［f(1),f(2),f(3)］を用いた以下の計算式（式３）〜（式５）により、漸化式の初期値（現在のＹ座標での初期値）を求める。
d0(1)＝f(1)  ・・・  （式３）
d1(1)＝f(2)−f(1)  ・・・  （式４）
d2＝f(3)−2×f(2)＋f(1)  ・・・  （式５）
d0(1)，d1(1)，d2：漸化式の初期値
【００４１】
このように、本実施形態に係る初期値演算部１５１は、画像補正時の補正割合に応じて高次多項式の係数を変化させる。初期値演算部１５１は、係数を変化させた高次多項式（式２）により、３ピクセル分の各補正量を求める。次に、初期値演算部１５１は、求めた３ピクセル分の各補正量を用いた計算式（式３）〜（式５）により、漸化式の初期値を求める。
【００４２】
なお、本実施形態に係る初期値演算部１５１では、高次多項式に二次多項式を用いる例を示したが、より高次（三次以上）になっても同様の演算方法が適用できる。
【００４３】
漸化式演算部１５２は、同期信号に基づき、初期値演算部１５１で演算された初期値を用いた漸化式により、座標変換時の座標変換量を演算する。
【００４４】
まず、漸化式演算部１５２は、演算された漸化式の初期値を初期値演算部１５１から受け取る。漸化式演算部１５２は、受け取った初期値を一時保持する。漸化式演算部１５２は、初期値が演算された主走査ライン上のｎ個のピクセルに対して、次のようにして座標変換量（現在のＹ座標での座標変換量）を求める。漸化式演算部１５２は、以下のニュートン前進差分法による漸化式（式６），（式７）により、ライン上の左端（最初の座標）から、ピクセルごとに、逐次、座標変換量を求める。
d0(k+1)＝d0(k)＋d1(k)  ・・・  （式６）
d1(k+1)＝d1(k)＋d2  ・・・  （式７）
d0(k)：座標変換量
k＝1,2,,,,n−1,n：現在のＹ座標におけるＸ座標軸のライン上のピクセル
n＝Ｘ座標軸（主走査方向）のライン上のピクセル数
【００４５】
その結果、漸化式演算部１５２は、Ｘ座標軸（主走査方向）のライン上の座標変換量［d0(n)］を、座標変換元のＸ座標ｎにおける座標移動量［Δｘ］とする。
【００４６】
このように、本実施形態に係る漸化式演算部１５２は、初期化演算部１５１で演算された初期値を用いた漸化式（式６），（式７）により、初期値が演算された主走査ライン上の最初の座標から順に、ピクセル単位で座標変換量を求める。漸化式演算部１５２は、求めた座標変換量を、座標変換元の座標移動量とする。
【００４７】
なお、漸化式の初期値を演算するときに用いる高次多項式係数によっては、演算時に用いる座標の画素値がゼロ（０）であったり、演算時に用いる座標が入力画像サイズを超える位置の座標であったりする場合がある。つまり、座標変換元の画像の有効画像範囲以外を参照する場合がある。この場合には、次のような例外処理を行えばよい。具体的には、漸化式演算部１５２が、処理工程の中で後段に位置する後段ブロック（非図示）に対してエラー信号を出力し、後段ブロックが、対応する画素の画素値をゼロ（０）として出力すればよい。
【００４８】
また、上記説明では、便宜上、Ｘ，Ｙ座標軸のうち、入力された現在のＹ座標値に対応するＸ座標軸（１つの軸）に基づき、漸化式の初期値と漸化式そのものの各演算を行う例を示した。本実施形態に係る座標計算部１５は、さらに、入力された現在のＸ座標値に対応するＹ座標補正量の算出処理を行う。
【００４９】
具体的には、初期値演算部１５１と漸化式演算部１５２が、次のような演算を行う。まず、初期値演算部１５１は、高次多項式（式８）により、現在のＹ座標値に対応するＸ座標軸のライン（主走査ライン）上において、左端の３ピクセル分（X＝1,2,3）のＹ方向に対する補正量（座標変換量）を求める。
fy(X)＝cy(3)×X２＋cy(4)×X×Y＋cy(5)×Y２＋cy(1)×X＋cy(2)×Y＋cy(0)  ・・・  （式８）
X：Ｘ座標値，Y：Ｙ座標値
cy(0)〜cy(5)：Ｙ方向の高次多項式係数（画像補正の補正割合を定義する係数）
【００５０】
初期値演算部１５１は、求めた左端３ピクセル分の各補正量を用いた計算式（式９）〜（式１１）により、漸化式の初期値（現在のＹ座標での初期値）を求める。次に、漸化式演算部１５２は、初期値が演算された主走査ライン上のｎ個のピクセルに対し、漸化式（式１２），（式１３）により、ライン上の左端（最初の座標）からピクセルごとに逐次、座標変換量（現在のＸ座標でのＹ方向の座標変換量）を求める。漸化式演算部１５２は、Ｘ座標軸（主走査方向）のライン上のＹ方向に対する座標変換量［d0y(n)］を、座標変換元のＸ座標ｎにおける座標移動量［Δｙ］とする。
d0y(1)＝fy(1)  ・・・  （式９）
d1y(1)＝fy(2)−fy(1)  ・・・  （式１０）
d2y＝fy(3)−2×fy(2)＋fy(1)  ・・・  （式１１）
d0y(1)，d1y(1)，d2y：y方向の漸化式の初期値
d0y(k+1)＝d0y(k)＋d1y(k)  ・・・  （式１２）
d1y(k+1)＝d1y(k)＋d2y  ・・・  （式１３）
d0y(k)：座標変換量
k＝1,2,,,,n−1,n：現在のＹ座標におけるＸ座標軸のライン上のピクセル
n＝Ｘ座標軸（主走査方向）のライン上のピクセル数
【００５１】
図４は、本実施形態に係る初期値演算部１５１と漸化式演算部１５２の動作例を示す図である。図４に示すように、初期値演算部１５１は、同期信号のタイミングに合わせて、主走査方向の１ラインごとに漸化式の初期値を演算し、演算結果を漸化式演算部１５２へと渡す。漸化式演算部１５２は、受け取った演算結果を漸化式の初期値として、ピクセルごとに漸化式を演算する。つまり、漸化式演算部１５２は、画像補正の補正割合に応じて演算された初期値を漸化式の演算に反映する。その結果、漸化式演算部１５２は、演算結果である座標変換量を、座標移動量［Δｘ，Δｙ］（ピクセルごとの座標移動量）として出力する。
【００５２】
また、図４に示すように、初期値演算部１５１の演算処理と漸化式演算部１５２の演算処理を、並列して実行し、パイプライン処理することで、座標変換処理の高速化が図れる。具体的には、漸化式演算部１５２が、副走査方向のｍ番目のライン上の座標変換量を求めている間に、初期値演算部１５１が、副走査方向のｍ＋１番目のライン以降で漸化式の初期値を求める。またこの場合、漸化式の演算処理は、初期値の演算処理より１ライン遅延する。そのため、初期値の演算処理は、出力画像の開始の１ライン前から実行することが望ましい。
【００５３】
これにより、本実施形態に係る画像処理機能では、従来の漸化式では固定値であった初期値に、画像補正の補正割合を反映することができる。また、本実施形態に係る画像処理機能では、少なくとも２ライン以内で画像補正を行うことができる（画像補正の高速化を実現できる）。
【００５４】
以上のように、本実施形態に係る画像処理機能は、上記構成により、温度変化や外的衝撃などに応じた画像補正を即座に実行でき、出力画像に反映することができる。
【００５５】
図３の説明に戻る。なお、本実施形態では、ステレオカメラを例に説明を行っている。よって、初期値演算部１５１は、第１の撮像装置１３０１及び第２の撮像装置１３０２に対応する２つの入力系統（複数の入力画像）ごとに、漸化式の初期値を演算する。このとき初期値演算部１５１では、入力系統ごとの漸化式の初期値の演算を逐次処理する（逐次演算する）。また、漸化式演算部１５２も、初期値演算部１５１と同様に、第１の撮像装置１３０１及び第２の撮像装置１３０２に対応する２つの入力系統ごとに、漸化式を演算する。本実施形態では、各入力系統に対応する第１漸化式演算部１５２１及び第２漸化式演算部１５２２を有している。これにより、本実施形態では、漸化式の演算を並列処理する（並列演算する）。なお、第１漸化式演算部１５２１及び第２漸化式演算部１５２２は、各入力系統に対応する第１座標変換量及び第２座標変換量をそれぞれ出力する。つまり、第１漸化式演算部１５２１は、演算結果である第１座標変換量を、第１座標移動量［Δｘ１，Δｙ１］として出力する。また、第２漸化式演算部１５２２は、演算結果である第２座標変換量を、第２座標移動量［Δｘ２，Δｙ２］として出力する。
【００５６】
また、本実施形態では、次のような方法で、座標計算部１５が有する上記機能を実現する。例えば、初期値演算部１５１は、乗算処理などを含む計算式により演算を行うため、処理は複雑であるが、１ライン分の時間で３ピクセル分の演算処理（３回の演算処理）を行えばよいので、演算時間に余裕がある。一方、漸化式演算部１５２は、加算処理の計算式により演算を行うだけであり、処理は単純であるが、ピクセルごとに演算処理を行うため、演算時間に余裕がなく、処理の高速化を図りたい。
【００５７】
このことから、本実施形態に係る座標計算部１５は、初期値演算部１５１の機能を、プログラムなどのソフトウェアの実行により実現し、漸化式演算部１５２の機能を、回路などのハードウェアの実装により実現するのが望ましい。初期値演算部１５１の機能を実現するプログラムは、次のように提供される。例えば、プログラムは、ＲＯＭなどの記憶装置１１２に予め組み込んで提供される。プログラムは、初期値演算部１５１の機能を含むモジュール構成となっており、ＣＰＵ１１１が記憶装置１１２からプログラムを読み出し実行することで、ＲＡＭ上に機能部が生成される。なお、プログラムの提供方法は、この限りでない。例えば、プログラムを、インターネットなどに接続された機器に格納し、通信Ｉ／Ｆ１１３を介し、ネットワーク経由でダウンロードする方法であってもよい。また、プログラムを、実行環境である画像処理装置１００が読み取り可能な記録媒体１１４ａに、インストール可能な形式又は実行可能な形式のファイルで記録し提供する方法であってもよい。
【００５８】
＜まとめ＞
以上のように、本実施形態に係る画像処理装置１００によれば、座標計算部１５が、画像補正の補正割合に応じて係数を変化させた高次多項式により、漸化式に用いる初期値を、入力画像の主走査方向のラインごとに演算する。次に、座標計算部１５が、画像補正の補正割合に応じて演算した値を初期値とする漸化式により、座標変換時の座標変換量（座標移動量）を演算する。
【００５９】
これによって、本実施形態に係る画像処理装置１００は、温度変化や外的衝撃などに応じた画像補正を即座に実行し、出力画像に反映可能な環境を提供する。その結果、本実施形態に係る画像処理装置１００は、高精度かつ高速な画像処理を実現できる。
【００６０】
なお、上記実施形態では、画像処理装置１００がインターポレータ１７を備える構成例について説明を行ったが、この限りでない。インターポレータ１７は、画像の高画質化に必要な機能である。よって、画像の高画質化が必要でない場合には、画像処理装置１００がインターポレータ１７を備える必要がない。この場合、画像処理装置１００は、例えば、小数点以下を四捨五入した座標の画素をラインバッファ１０から読み込み、出力画像データとして出力すればよい。
【００６１】
以下に、本実施形態に係る画像処理装置１００の変形例について説明する。なお、以下の変形例の説明では、本実施形態と同じ点について、同一の参照符号を付し、その説明を省略する。
【００６２】
［変形例１］
上記実施形態では、ステレオカメラシステムを例に説明を行ったが、この限りでない。例えば、撮像装置１３０を単体で備える画像処理システム１０００であってもよい。
【００６３】
図５は、変形例１に係る画像処理システム１０００の構成例を示す図である。図５には、ステレオカメラに限らず、一般的なカメラシステムの構成例が示されている。
【００６４】
図５に示すように、本実施形態に係る画像処理システム１０００は、コントローラ１１０、操作パネル１２０、及び画像処理装置１００などを備え、それぞれが相互にバスＢで接続される。
【００６５】
操作パネル１２０は、表示装置と入力装置などを備えており、機器情報などを利用者に提供したり、動作設定や動作指示などの利用者操作を受け付けたりする。画像処理装置１００は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）などの画像処理回路を備えており、撮像装置１３０などで撮像され入力された画像に対して、所定の画像処理を行い、処理後の画像を出力する。画像処理には、例えば、歪み補正処理などがある。  
【００６６】
コントローラ１１０は、ＣＰＵ（Central  Processing  Unit）１１１、記憶装置１１２、通信Ｉ／Ｆ（Interface）１１３、及び外部Ｉ／Ｆ１１４などを備えており、それぞれが相互にバスＢで接続される。
【００６７】
ＣＰＵ１１１は、プログラムやデータをメモリ（ＲＡＭ：Random  Access  Memory）上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。記憶装置１１２は、プログラムやデータを所定の記憶領域に保持する装置である。記憶装置１１２には、例えば、揮発性の半導体メモリであるＲＡＭ、不揮発性の半導体メモリであるＲＯＭ（Read  Only  Memory）、及び大容量の記憶装置であるＨＤＤ（Hard  Disk  Drive）などがある。
【００６８】
外部Ｉ／Ｆ１１４は、外部装置とのインタフェースである。外部装置には、例えば、記録媒体１１４ａなどがある。これにより、画像処理システム１０００は、記録媒体１１４ａの読み取り及び／又は書き込みを行うことができる。記録媒体１１４ａには、例えば、フレキシブルディスク、ＣＤ（Compact  Disk）、ＤＶＤ（Digital  Versatile  Disk）、及びメモリカード（Memory  Card）などがある。通信Ｉ／Ｆ１１３は、画像処理システム１０００を、所定のデータ伝送路に接続するインタフェースである。これにより、画像処理システム１０００は、他の機器とデータ通信を行うことができる。データ伝送路には、例えば、ネットワークなどがあり、有線又は無線などの接続方法や通信プロトコルなどの通信方式は問わない。
【００６９】
図６は、本変形例１に係る画像処理装置１００の構成例を示す図である。図６には、撮像装置１３０を単体で備える画像処理システム１０００が備える画像処理装置１００の構成例が示されている。本変形例１に係る画像処理装置１００は、ラインバッファ１０、書き込みアドレス計算部１１、及びインターポレータ１７を単体で備える。
【００７０】
図７は、本変形例１に係る座標計算部１５の構成例を示す図である。図７には、１つの入力系統に対応する画像処理装置１００が有する座標計算部１５の構成例が示されている。図７に示すように、変形例１に係る座標計算部１５は、漸化式演算部１５２を単体で有する。
【００７１】
このように、撮像装置１３０を単体で備える画像処理システム１０００の場合には、１つの入力系統に対応する構成であればよい。
【００７２】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【００７３】
１５    座標計算部
１００  画像処理装置
１１０ａ  画像処理ユニット
１１５  視差演算装置
１１６  認識処理装置
１１７  機器制御ユニット
１３０  撮像装置
１３０１  第１の撮像装置
１３０２  第２の撮像装置
１５１  初期値演算部
１５２  漸化式演算部
１０００、１０００ａ  画像処理システム
【先行技術文献】
【特許文献】
【００７４】
【特許文献１】特許第４７６９８８０号公報
【図１】
2014142917.tif 000003
【図２】
2014142917.tif 000004
【図３】
2014142917.tif 000005
【図４】
2014142917.tif 000006
【図５】
2014142917.tif 000007
【図６】
2014142917.tif 000008
【図７】
2014142917.tif 000009