(57)【要約】  本技術は、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにする画像処理装置、画像処理方法、およびプログラムに関する。本技術の一側面に係る画像処理装置は、広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、それぞれの参照画像に射影変換を施し、複数の基準画像と射影変換後の複数の参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する装置である。本技術は、車載の装置に適用することができる。
2019003910.tif 000002
【特許請求の範囲】
【請求項１】
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、
それぞれの前記参照画像に射影変換を施す射影変換部と、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部と
を備える画像処理装置。
【請求項２】
前記ステレオ画像を構成する第１の広角画像と第２の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに備え、
前記生成部は、
前記仮想球面に投影した前記第１の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成し、
前記仮想球面に投影した前記第２の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成する
請求項１に記載の画像処理装置。
【請求項３】
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、
補正後の光軸に関する情報を記憶する記憶部と
をさらに備える請求項１に記載の画像処理装置。
【請求項４】
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに備え、
前記記憶部は、前記パラメータをさらに記憶する
請求項３に記載の画像処理装置。
【請求項５】
前記補正部は、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定し、
前記射影変換部は、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行う
請求項４に記載の画像処理装置。
【請求項６】
前記補正部は、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行う
請求項３に記載の画像処理装置。
【請求項７】
前記取得部は、２台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得する
請求項１に記載の画像処理装置。
【請求項８】
複数の前記カメラをさらに備える
請求項１に記載の画像処理装置。
【請求項９】
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む画像処理方法。
【請求項１０】
コンピュータに、
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、画像処理装置、画像処理方法、およびプログラムに関し、特に、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにした画像処理装置、画像処理方法、およびプログラムに関する。
【背景技術】
【０００２】
三次元空間に存在する物体までの距離を計測するシステムとして、２台（あるいはそれ以上の台数）のカメラによって撮影された画像から、三角測量の原理を利用して距離を計測するステレオカメラシステムがある（特許文献１）。【０００３】
このようなステレオカメラシステムにおいて、複数台のカメラ間の位置関係が設計した値とずれている場合、撮影した画像に歪みが生じ、距離の計測を正確に行うことができない。そのため、撮影した画像を電子的に補正する技術として、レクティフィケーションと呼ばれる技術が開発されている（非特許文献１）。【０００４】
ところで、近年の半導体技術の進歩によって、デジタルカメラで撮影可能な画像の画素数が増えてきている。そのため、魚眼レンズのような広い範囲を撮影できるレンズを取り付けたカメラ（以下、魚眼カメラという）でも十分な分解能を得ることができ、魚眼カメラを用いたステレオカメラシステムも実用的なものになっている（非特許文献２）。【０００５】
魚眼カメラを用いたステレオカメラシステムにおける従来のレクティフィケーションは、画角の狭いレンズを取り付けたカメラを用いた場合のレクティケーションを拡張し、１台の魚眼カメラの画像を１枚の平面に投影することによって行われる（非特許文献３）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０５−１１４０９９号公報
【非特許文献】
【０００７】
【非特許文献１】「ビデオレートステレオマシンにおける カメラ幾何補正機能の実現」、 蚊野 浩、木村 茂、田中 昌也、金出 武雄、日本ロボット学会誌 Vol. 16 No. 4, pp.527〜532, 1998
【非特許文献２】「魚眼ステレオカメラを用いた全天周時系列画像からのオーロラ三次元計測」、竹内彰, 藤井浩光, 山下淳, 田中正行, 片岡龍峰, 三好由純, 奥富正敏, 淺間一、日本機械学会論文集, Vol.82(2016), No.834, pp.15-00428-1-17, February, 2016
【非特許文献３】「魚眼ステレオカメラを用いた水中物体の三次元計測」、成瀬 達哉, 山下 淳, 金子 透, 小林 祐一, 精密工学会誌 Vol. 79 (2013) No. 4 p. 344-348
【発明の概要】
【発明が解決しようとする課題】
【０００８】
魚眼カメラの画像を１枚の平面に投影した場合、投影される画角は、魚眼カメラの撮影範囲の一部になってしまい、レクティフィケーションを精度よく行うことができない。【０００９】
本技術はこのような状況に鑑みてなされたものであり、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにするものである。
【課題を解決するための手段】
【００１０】
本技術の一側面の画像処理装置は、広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、それぞれの前記参照画像に射影変換を施す射影変換部と、複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部とを備える。【００１１】
前記ステレオ画像を構成する第１の広角画像と第２の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに設けることができる。この場合、前記生成部には、前記仮想球面に投影した前記第１の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成させ、前記仮想球面に投影した前記第２の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成させることができる。【００１２】
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、補正後の光軸に関する情報を記憶する記憶部とをさらに設けることができる。【００１３】
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに設けることができる。この場合、前記記憶部には、前記パラメータをさらに記憶させることができる。【００１４】
前記補正部には、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定させ、前記射影変換部には、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行わせることができる。【００１５】
前記補正部には、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行わせることができる。【００１６】
前記取得部には、２台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得させることができる。【００１７】
複数の前記カメラをさらに設けることができる。【００１８】
本技術の一側面においては、広角レンズを備えた複数のカメラにより撮影されたステレオ画像が取得され、前記カメラの視野角が、互いに平行になるように補正した光軸を基準として分割される。また、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とが生成され、それぞれの前記参照画像に射影変換が施され、複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離が算出される。
【発明の効果】
【００１９】
本技術によれば、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができる。【００２０】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００２１】
【図１】本技術の一実施形態に係るステレオカメラシステムの構成例を示すブロック図である。
【図２】ステレオ画像の例を示す図である。
【図３】距離算出の原理について示す図である。
【図４】広角画像に設定された仮想球面の例を示す図である。
【図５】広角画像の平面への再投影の例を示す図である。
【図６】平面の設定の例を示す図である。
【図７】平面の設定の例を示す図である。
【図８】光軸のずれの例を示す図である。
【図９】光軸補正の例を示す図である。
【図１０】光軸補正の例を示す図である。
【図１１】平面の設定の例を示す図である。
【図１２】平面の設定の例を示す図である。
【図１３】射影変換の例を示す図である。
【図１４】画像処理装置の構成例を示すブロック図である。
【図１５】平行化処理部の構成例を示すブロック図である。
【図１６】画像処理装置の平行化パラメータ生成処理について説明するフローチャートである。
【図１７】画像処理装置の距離算出処理について説明するフローチャートである。
【図１８】画像処理装置の他の平行化パラメータ生成処理について説明するフローチャートである。
【図１９】コンピュータの構成例を示すブロック図である。
【図２０】内視鏡手術システムの概略的な構成の一例を示す図である。
【図２１】図２０に示すカメラヘッド及びＣＣＵの機能構成の一例を示すブロック図である。
【図２２】車両制御システムの概略的な構成の一例を示すブロック図である。
【図２３】車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
【発明を実施するための形態】
【００２２】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
１．第１の実施の形態
２．第２の実施の形態
３．第３の実施の形態
４．変形例
５．応用例１
６．応用例２
【００２３】
＜＜１．第１の実施の形態＞＞
＜１−１．ステレオカメラシステムについて＞
図１は、本技術の一実施形態に係るステレオカメラシステムの構成例を示すブロック図である。
【００２４】
図１に示すステレオカメラシステム１は、画像処理装置１１に対して、ステレオカメラを構成するカメラ１２−１とカメラ１２−２が接続されることによって構成される。
【００２５】
カメラ１２−１とカメラ１２−２は、光軸を同じ向きにして、水平方向または垂直方向に所定の間隔を空けて並べて固定されており、同じ視野角のレンズを備えている。
【００２６】
カメラ１２−１とカメラ１２−２は同じタイミングで撮影を行い、撮影された画像を出力する。カメラ１２−１により撮影された画像とカメラ１２−２により撮影された画像は、ステレオ画像として画像処理装置１１に入力される。画像処理装置１１に入力されたステレオ画像は、それに映っている物体までの距離の算出に用いられる。
【００２７】
図２は、画像処理装置１１に入力されるステレオ画像の例を示す図である。
【００２８】
撮影画像ｐ１と撮影画像ｐ２は、魚眼レンズのような広視野角（広画角）のレンズを備えたカメラ１２−１，１２−２によって撮影された広角画像である。ここで、広角画像は、例えば、画角が120度以上、特には150度以上の画像をいう。
【００２９】
以下、カメラ１２−１，１２−２が、魚眼レンズを備えた魚眼カメラであるものとして説明する。魚眼レンズは画角が略180度のレンズである。２台の魚眼カメラを用いる場合について説明するが、ステレオ画像の撮影に用いられる魚眼カメラの台数は２台以上であってもよい。
【００３０】
図２に示すように、撮影画像ｐ１と撮影画像ｐ２は、周辺部分になるほど大きな歪みが生じた画像となる。撮影画像ｐ１と撮影画像ｐ２のそれぞれの下方には、カメラ１２−１，１２−２が取り付けられた自動車の車体Ｃが略円弧状に歪んだ状態で映っている。
【００３１】
すなわち、図１のステレオカメラシステム１は例えば車載用のシステムであり、物体までの距離を走行中に算出するために用いられる。算出された距離は、例えば、運転手に対して警報などの各種の情報を提示するために用いられる。
【００３２】
＜１−２．距離算出の原理について＞
図３は、物体までの距離算出の原理について示す図である。
【００３３】
ステレオカメラシステム１においては、図３に示すように２台の魚眼カメラの撮像面を平行に並べ、それらの撮像面によって撮影されたステレオ画像を用いて、対象となる物体までの距離が算出される。例えば、図３の左側に示す撮像面１はカメラ１２−１の撮像面であり、右側に示す撮像面２はカメラ１２−２の撮像面である。
【００３４】
三次元空間上の位置（X,Y,Z）にある物体点Ｐが、撮像面１上の点Ｐ１（x1,y1）に映り、撮像面２上の点Ｐ２(x2,y2)に映っているものとする。撮像面１の中心と撮像面２の中心の間の距離をD、魚眼レンズの焦点距離をfとすると、物体点Ｐまでの距離Zは、下式（１）により求められる。
【数１】
2019003910.tif 000003
【００３５】
距離Dと焦点距離fはステレオカメラシステム１によって定まる固定値であるので、x1,x2の値を求めることで、物体点までの距離を算出できることになる。x1,x2は２つの画像間の対応点と呼ばれ、対応点を求めることは、一般的に対応点探索と呼ばれている。また、上式（１）の右辺分母にあるx1-x2は、画像内での物体の位置のずれ量であり、視差と呼ばれている。
【００３６】
対応点探索は、２つの撮影画像の一方を基準画像、他方を参照画像として、基準画像内のある点が、参照画像内のどこにあるのかを探索する処理である。対応点の探索は、ブロックマッチングなどの画像処理によって行われる。
【００３７】
ブロックマッチングにより、基準画像内の点およびその周辺領域に最も似ている領域が、参照画像から検出される。似ているかどうかは評価式によって定量化され、評価値が最も大きい（あるいは最も小さい）領域が対応点として検出される。
【００３８】
ブロックマッチングの評価値としては例えば差分絶対値和がある。差分絶対値和E12は、下式（２）で表されるように、２つの画像における点Ｐ１(x1,y1),Ｐ２(x2,y2)およびその周辺領域内の輝度差を基にした評価値である。
【数２】
2019003910.tif 000004
【００３９】
２つの領域が似ているということは領域内の輝度値が近いということを意味する。従って、式（２）の場合、評価値E12が小さいほど信頼性が高く（似ている）、評価値E12が大きいほど信頼性が低い（似ていない）といえる。
【００４０】
画像処理装置１１においては、ある点Ｐ１について、式（２）の値が最も小さい点Ｐ２を参照画像から探索する処理が対応点探索として行われる。撮影画像ｐ１内の任意の画素（物体が映っている画素）に対応する画素が対応点として探索された場合、式（１）を用いて距離が算出される。
【００４１】
画像処理装置１１においては、主に、このような対応点探索と距離の算出がステレオ画像処理として行われる。
【００４２】
＜１−３．レクティフィケーションについて＞
画像処理装置１１におけるレクティフィケーション（平行化処理）について説明する。
【００４３】
一般的に、平行化処理に用いるパラメータである平行化パラメータは、ステレオカメラシステムを構成する２台のカメラを取り付け治具に固定した時点で求められる。平行化パラメータの求め方としては下記文献１に記載の方法がある。三次元空間におけるカメラの向きを特定するためには画像上の既知の４点が分かれば良い。４点よりも多くの点を指定し、平行化処理の精度を向上させることも可能である。
文献１：コンピュータビジョン - 視覚の幾何学 -  ISBN：978-4-339-02363-3  PP.83-87
【００４４】
ところで、ステレオカメラシステム１で用いられるカメラ１２−１，１２−２は魚眼カメラである。魚眼カメラによって撮影された撮影画像を１枚の平面上に直接投影して前出したような平行化処理を行うとした場合、撮影画像の一部分しか処理に用いることができないため、魚眼レンズを使用して広範囲の画像を撮影したメリットが薄れる。
【００４５】
図４は、カメラ１２−１で撮影された広角画像の処理の例を示す図である。
【００４６】
斜線を付して示す広角画像Ｗ１は、カメラ１２−１により撮影された撮影画像ｐ１に相当する。カメラ１２−１は略180度の範囲を撮影範囲に含むものであるので、広角画像Ｗ１は、略半天球の球面上のイメージを平面投影したものと考えられる。
【００４７】
そこで、画像処理装置１１においては、広角画像Ｗ１が、半天球状の仮想球面Ｓ１に投影される。図４において、撮像面はXY平面にあり、撮像面の中心に三次元空間の原点が設定されている。広角画像Ｗ１の中心も三次元空間の原点に位置する。
【００４８】
図４に示すように、仮想球面Ｓ１は、その半径が広角画像Ｗ１の半径と同じになるようにして設定される。XY平面の垂線となるＺ軸がカメラ１２−１の光軸に相当し、そのＺ軸が、天頂において仮想球面Ｓ１と交差する。
【００４９】
また、画像処理装置１１においては、図５に示すように、仮想球面Ｓ１に投影された投影画像が、仮想球面Ｓ１上の複数の平面に再投影され、複数の平面画像が生成される。
【００５０】
図５は、１枚の広角画像Ｗ１を仮想球面Ｓ１に投影し、投影画像を３枚の平面に再投影した場合の例を示している。平面画像Ｐ１１−１乃至Ｐ１３−１は、例えばそれぞれの中心が仮想球面Ｓ１に接するように設定された平面に投影された画像である。
【００５１】
図６は、平面の設定の例を示す図である。
【００５２】
図６は、仮想球面と仮想球面上の複数の平面をＹ軸方向に見た状態を示している。この例においては、視野角全体が視野角θ１１乃至θ１３の３つに分割され、３つの視野角の範囲の画像の投影面となるように、３つの平面が台形状に設定されている。平面の設定はＺ軸（光軸）を基準として対称になるように行われる。
【００５３】
例えば、平面画像Ｐ１１−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１１に対応する部分を投影して生成される。平面画像Ｐ１１−１は、広角画像Ｗ１全体のうちの、視野角θ１１の範囲が映る画像となる。
【００５４】
同様に、平面画像Ｐ１２−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１２に対応する部分を投影して生成される。平面画像Ｐ１２−１は、広角画像Ｗ１全体のうちの、視野角θ１２の範囲が映る画像となる。
【００５５】
平面画像Ｐ１３−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１３に対応する部分を投影して生成される。平面画像Ｐ１３−１は、広角画像Ｗ１全体のうちの、視野角θ１３の範囲が映る画像となる。
【００５６】
視野角θ１１，θ１２，θ１３は、例えば、それらの和がカメラ１２−１の全視野角を包含できるように設定される。これにより、魚眼カメラで撮影された広角画像に写っている範囲全体を用いてレクティフィケーションを行うことが可能になる。
【００５７】
なお、ここでは、広角画像Ｗ１を仮想球面Ｓ１への投影を経て、３つの平面に再投影するものとしているが、平面画像の数は複数であれば任意である。仮想球面Ｓ１への投影を経ずに、広角画像Ｗ１から３つの平面に直接投影され、複数の平面画像が生成されるようにしてもよい。
【００５８】
画像処理装置１１においては、図７に示すように、撮影画像ｐ２に相当する広角画像Ｗ２についても同様の処理が施され、仮想球面Ｓ２への投影を経て、平面画像Ｐ１１−２乃至Ｐ１３−２が生成される。
【００５９】
平面画像Ｐ１１−２は、広角画像Ｗ２を仮想球面Ｓ２に投影した投影画像のうちの、視野角θ１１に対応する部分を投影して生成された画像である。平面画像Ｐ１２−２は、広角画像Ｗ２を仮想球面Ｓ２に投影した投影画像のうちの、視野角θ１２に対応する部分を投影して生成された画像である。平面画像Ｐ１３−２は、広角画像Ｗ２を仮想球面Ｓ２に投影した投影画像のうちの、視野角θ１３に対応する部分を投影して生成された画像である。
【００６０】
画像処理装置１１においては、同じ視野角に従って再投影することによって生成された平面画像Ｐ１１−１と平面画像Ｐ１１−２、平面画像Ｐ１２−１と平面画像Ｐ１２−２、平面画像Ｐ１３−１と平面画像Ｐ１３−２の画像対毎に、平行化処理が行われる。
【００６１】
・光軸補正について
ところで、このように平面画像の画像対毎に独立して平行化処理を行うとした場合、平面画像の連結部分（例えば平面画像Ｐ１１−１と平面画像Ｐ１２−１の境界部分）に不整合が生じてしまうことがある。連結部分の不整合により、距離情報の欠落が起きてしまう。
【００６２】
そこで、画像処理装置１１においては、連結部分での不整合を生じさせないようにするために、上述したようにして複数の平面に再投影する前に、２つの魚眼カメラの光軸補正が行われる。連結部分での不整合は、例えば図８に示すように２つの魚眼カメラの光軸がずれている（平行でない）ことにより生じる。
【００６３】
図８の例においては、左側に示す広角画像Ｗ１の撮影に用いられたカメラ１２−１の光軸（実線）と、右側に示す広角画像Ｗ２の撮影に用いられたカメラ１２−２の光軸がずれている。例えば、カメラ１２−１の光軸を、破線で示すように補正することにより、２つの魚眼カメラの光軸の平行が確保される。
【００６４】
なお、画像処理装置１１における光軸補正は、電子的な処理である。補正後の光軸を設定する処理が、光軸補正の処理として行われる。
【００６５】
図９乃至図１１を参照して、画像処理装置１１における光軸補正について説明する。
【００６６】
図９は、カメラ１２−１とカメラ１２−２の光軸の例を示す図である。図９は、図７等を参照して説明したカメラ１２−１とカメラ１２−２の光学系の三次元空間をＹ軸方向から見た図である。図１０、図１１においても同様である。
【００６７】
図９において、左側の破線で示すように、カメラ１２−１の光軸１は、広角画像Ｗ１が投影される撮像面１の中心に設定された垂線として表される。光軸１は、仮想球面Ｓ１の天頂を通る。撮像面１がXY平面と平行でないことから、光軸１はＺ軸に対して若干傾いた状態になっている。
【００６８】
同様に、右側の破線で示すように、カメラ１２−２の光軸２は、広角画像Ｗ２が投影される撮像面２の中心に設定された垂線として表される。光軸２は、仮想球面Ｓ２の天頂を通る。撮像面２がXY平面と平行でないことから、光軸２もＺ軸に対して若干傾いた状態になっている。光軸１と光軸２は互いに平行な状態になっていない。
【００６９】
光軸が検出された後、図１０の実線で示すように、互いに平行となる光軸が補正光軸として設定される。光軸１を補正して求められた補正光軸１は、撮像面１の中心に設定された、Ｚ軸と平行な軸である。また、光軸２を補正して求められた補正光軸２は、撮像面２の中心に設定された、Ｚ軸と平行な軸である。
【００７０】
図１０にはＸ軸方向の補正だけが示されているが、Ｙ軸方向、Ｚ軸方向についても同様に補正が行われる。
【００７１】
このような光軸の求め方と補正については、例えば下記文献２に開示されている。
文献２：中野誠士・李仕剛・千葉則茂: 「球面モデルに基づくしま 模様パターンを用いた魚眼カメラの校正」, 電子情報通信 学会論文誌 D, Vol.J90-D, No.1, pp.73-82(2007)
【００７２】
文献２に記載の方法では、既知のパターン（物体）を撮影し、その歪みに基づいて光軸が求められる。例えば、カメラの光軸方向に、距離を十分に離して既知の物体が配置される。ここで言う十分な距離は、２台のステレオカメラにおいて、式（１）におけるx1-x2が限りなく０に近づくぐらいの距離であればよい。
【００７３】
そのようにして配置された既知の物体は、光軸が平行である場合には、２台のステレオカメラの各々の仮想球面の天頂に映るはずである。既知の物体が映る仮想球面上の位置が検出され、その位置と天頂との差に相当する分だけ光軸を補正することによって、補正光軸が求められる。
【００７４】
このような光軸補正が、平行化パラメータの生成時に行われる。平行化パラメータの生成は、ステレオカメラシステム１の運用開始前（距離算出を実際に行う前）の所定のタイミングで行われる。補正光軸の情報は画像処理装置１１に記憶され、実際の距離算出時に、補正光軸を設定するために参照される。
【００７５】
上述したような仮想球面上に投影した投影画像の複数の平面への再投影は、補正光軸の設定後に行われる。
【００７６】
図１１は、投影画像の投影の例を示す図である。
【００７７】
図１１に示すように、仮想球面上の複数の平面は、補正光軸を基準として設定される。魚眼カメラの視野角が補正光軸を基準として分割され、分割した各視野角に従って平面が設定される。
【００７８】
例えば図１１の左側に示す平面画像Ｐ１２−１の面は、XY平面と平行な面、すなわち、補正光軸１を垂線とする平面である。平面画像Ｐ１１−１の面、平面画像Ｐ１３−１の面についても同様に、補正光軸を基準として設定される。
【００７９】
図１２に示すように、平面画像Ｐ１１−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１１の範囲を投影して生成された画像となる。
【００８０】
また、平面画像Ｐ１２−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１２の範囲を投影して生成された画像となる。平面画像Ｐ１３−１は、広角画像Ｗ１を仮想球面Ｓ１に投影した投影画像のうちの、視野角θ１３の範囲を投影して生成された画像となる。
【００８１】
図１１の説明に戻り、広角画像Ｗ２を仮想球面Ｓ２に投影した投影画像についても、補正光軸２を基準として設定された平面に再投影され、平面画像Ｐ１１−２乃至Ｐ１３−２が生成される。
【００８２】
・射影変換について
上記のレクティフィケーションにおいて、光軸の検出精度、２つの光軸の平行化の精度、仮想球面への投影精度など、様々な処理の精度が完全であれば、レクティフィケーションは完了しているといえる。
【００８３】
しかしながら、それの精度には実際には誤差があり、その誤差が、複数の平面画像上において例えば台形歪みとして現れる。画像処理装置１１においては、平面画像の画像対毎に、射影変換を用いた補正が施される。
【００８４】
射影変換は下式（３）、式（４）として表される。
【数３】
2019003910.tif 000005
【数４】
2019003910.tif 000006
【００８５】
式（３）、式（４）における各変数は以下の内容を表す。
x, y：変換前のX座標、Y座標
a, b, c, d, e, f, g, h：変換係数
u, v：変換後の座標
【００８６】
射影変換には８つの未知のパラメータがあるので、それらのパラメータを求めるためには、平面上の４点の対応点が既知である必要がある。
【００８７】
広角画像Ｗ１を元にして生成された平面画像Ｐ１１−１乃至Ｐ１３−１をそれぞれ基準画像とし、広角画像Ｗ２を元にして生成された平面画像Ｐ１１−２乃至Ｐ１３−２をそれぞれ参照画像とする。
【００８８】
平面画像Ｐ１１−１上の４点と、その４点に対応する平面画像Ｐ１１−２上の４つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像Ｐ１１−１と平面画像Ｐ１１−２の画像対用のパラメータであり、参照画像である平面画像Ｐ１１−２の射影変換に用いられる。
【００８９】
同様に、平面画像Ｐ１２−１上の４点と、その４点に対応する平面画像Ｐ１２−２上の４つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像Ｐ１２−１と平面画像Ｐ１２−２の画像対用のパラメータであり、参照画像である平面画像Ｐ１２−２の射影変換に用いられる。
【００９０】
平面画像Ｐ１３−１上の４点と、その４点に対応する平面画像Ｐ１３−２上の４つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像Ｐ１３−１と平面画像Ｐ１３−２の画像対用のパラメータであり、参照画像である平面画像Ｐ１３−２の射影変換に用いられる。
【００９１】
各画像上に指定される対応点は４点以上であってもよい。また、対応点の指定方法としては、管理者が手動で指定してもよいし、テストチャートのような既知のパターンを印刷したものを用い、その既知のパターンが画像処理によって自動的に認識されるようにしてもよい。画像処理によって自動的に認識された対応点から、誤った対応点や効果の低い対応点を管理者が手動で除外し、いわば半自動で指定されるようにしてもよい。
【００９２】
図１３は、射影変換の例を示す図である。
【００９３】
図１３のＡは、基準画像である平面画像Ｐ１１−１乃至Ｐ１３−１を展開した例を示す図である。平面画像Ｐ１１−１乃至Ｐ１３−１に跨がって横長楕円形のオブジェクトＯが映っているものとする。
【００９４】
図１３のＢの上段は、参照画像である平面画像Ｐ１１−２乃至Ｐ１３−２を展開して示す図であり、この例においてはオブジェクトＯが歪んで映っている。このような歪みが、上述したような各処理の誤差によって現れる。
【００９５】
画像処理装置１１においては、例えば、上述したような射影変換パラメータを用いた射影変換が参照画像としての平面画像Ｐ１１−２乃至Ｐ１３−２のそれぞれに対して施される。射影変換により、図１３のＢの下段に示すように、連結部分での歪みが補正されたオブジェクトＯが映る平面画像Ｐ１１−２乃至Ｐ１３−２が得られる。
【００９６】
このような射影変換パラメータの算出が、平行化パラメータの生成時に行われる。平行化パラメータの生成は、ステレオカメラシステム１の運用開始前に行われる。射影変換パラメータの情報は画像処理装置１１に記憶され、実際の距離算出時に、参照画像の射影変換を行うために参照される。
【００９７】
このように、画像処理装置１１におけるレクティフィケーションは、光軸補正（補正光軸を用いた画像処理）と射影変換との２段階の処理から構成される。
【００９８】
これにより、魚眼カメラのような広視野角のカメラからなるステレオカメラを用いた場合であっても、レクティフィケーションをより正確に行うことが可能となる。レクティフィケーションを正確に行うことにより、距離を精度よく算出することが可能になる。
【００９９】
＜１−４．画像処理装置の構成例＞
図１４は、画像処理装置１１の構成例を示すブロック図である。
【０１００】
図１４に示すように、画像処理装置１１は、取得部５１、平行化処理部５２、対応点探索部５３、パラメータ生成部５４、平行化パラメータ記憶部５５、距離算出部５６、および後処理部５７により構成される。取得部５１は、前処理部６１−１と前処理部６１−２から構成される。図１４に示す機能部のうちの少なくとも一部は、画像処理装置１１を実現するコンピュータのCPUにより所定のプログラムが実行されることによって実現される。
【０１０１】
カメラ１２−１とカメラ１２−２により撮影された広角画像は取得部５１に入力される。取得部５１は、ステレオカメラにより撮影されたステレオ画像を取得する取得部として機能する。
【０１０２】
取得部５１の前処理部６１−１は、カメラ１２−１により撮影された広角画像に対して前処理を施す。例えば、魚眼レンズの収差補正などの処理が前処理として施される。前処理部６１−１は、前処理を施した広角画像を平行化処理部５２に出力する。
【０１０３】
前処理部６１−２も同様に、カメラ１２−２により撮影された広角画像に対して前処理を施す。前処理部６１−２は、前処理を施した広角画像を平行化処理部５２に出力する。
【０１０４】
平行化処理部５２は、平行化パラメータの生成時、上述したようにして、カメラ１２−１とカメラ１２−２の補正光軸を求め、補正光軸の情報を平行化パラメータ記憶部５５に記憶させる。また、平行化処理部５２は、平行化パラメータの生成時、補正光軸を基準として設定した複数の平面に再投影を行うことによって生成した複数の平面画像を対応点探索部５３に出力する。
【０１０５】
平行化処理部５２は、実際の距離算出時、平行化パラメータ記憶部５５に記憶されている補正光軸の情報に基づいて補正光軸を設定し、補正光軸を基準として設定した複数の平面に再投影を行うことによって複数の平面画像を生成する。また、平行化処理部５２は、平行化パラメータ記憶部５５に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。平行化処理部５２は、基準画像としての複数の平面画像と、参照画像としての射影変換後の複数の平面画像とを対応点探索部５３に出力する。
【０１０６】
対応点探索部５３は、平行化パラメータの生成時、平行化処理部５２から供給された平面画像の画像対毎に対応点探索を行い、対応点の情報をパラメータ生成部５４に出力する。対応点探索部５３においては、平面画像Ｐ１１−１と平面画像Ｐ１１−２、平面画像Ｐ１２−１と平面画像Ｐ１２−２、平面画像Ｐ１３−１と平面画像Ｐ１３−２の画像対毎を対象として対応点探索が行われる。
【０１０７】
また、対応点探索部５３は、実際の距離算出時、平行化処理部５２から供給された平面画像の画像対毎に対応点探索を行い、対応点の情報を距離算出部５６に出力する。実際の距離算出時、平行化処理部５２からは、基準画像としての複数の平面画像と、参照画像としての射影変換後の複数の平面画像とが供給される。対応点探索部５３においては、平面画像Ｐ１１−１と射影変換後の平面画像Ｐ１１−２、平面画像Ｐ１２−１と射影変換後の平面画像Ｐ１２−２、平面画像Ｐ１３−１と射影変換後の平面画像Ｐ１３−２の画像対毎を対象として対応点探索が行われる。
【０１０８】
パラメータ生成部５４は、平行化パラメータの生成時、対応点探索部５３から供給された対応点の情報に基づいて、それぞれの画像対用の射影変換パラメータを生成する。パラメータ生成部５４は、生成した射影変換パラメータを平行化パラメータ記憶部５５に出力し、記憶させる。
【０１０９】
平行化パラメータ記憶部５５は、平行化パラメータの生成時、平行化処理部５２から供給された補正光軸の情報と、パラメータ生成部５４から供給された射影変換パラメータとを平行化パラメータとして記憶する。平行化パラメータ記憶部５５に記憶された平行化パラメータは実際の距離算出時に読み出される。
【０１１０】
距離算出部５６は、対応点探索部５３から供給された対応点の情報に基づいて上式（１）の計算を行い、対象となる物体までの距離を算出する。距離算出部５６は、算出した距離情報を後処理部５７に出力する。
【０１１１】
後処理部５７は、距離算出部５６により算出された距離情報に基づいて後処理を行い、処理結果を出力する。例えば、距離情報を用いた物体のクラスタリングや認識処理が後処理として行われる。
【０１１２】
図１５は、平行化処理部５２の構成例を示すブロック図である。
【０１１３】
図１５に示すように、平行化処理部５２は、光軸検出部７１、仮想球面投影部７２、光軸補正部７３、平面投影部７４、および射影変換部７５により構成される。
【０１１４】
光軸検出部７１は、前処理部６１−１から供給された広角画像に基づいてカメラ１２−１の光軸を検出するとともに、前処理部６１−２から供給された広角画像に基づいてカメラ１２−２の光軸を検出する。例えば広角画像をXY平面の原点に仮想的に配置したときのＺ軸が光軸として検出される。光軸検出部７１は、カメラ１２−１とカメラ１２−２のそれぞれの光軸の情報を仮想球面投影部７２に出力する。
【０１１５】
仮想球面投影部７２は、カメラ１２−１により撮影された広角画像Ｗ１に仮想球面Ｓ１を設定し、広角画像Ｗ１を仮想球面Ｓ１に投影する。また、仮想球面投影部７２は、カメラ１２−２により撮影された広角画像Ｗ２に仮想球面Ｓ２を設定し、広角画像Ｗ２を仮想球面Ｓ２に投影する。仮想球面Ｓ１，Ｓ２は、それぞれの天頂が光軸検出部７１により検出された光軸と交差するように設定される。仮想球面投影部７２は、広角画像Ｗ１の投影画像と広角画像Ｗ２の投影画像を、それぞれの仮想球面の情報とともに光軸補正部７３に出力する。
【０１１６】
光軸補正部７３は、平行化パラメータの生成時、カメラ１２−１とカメラ１２−２の補正光軸を上述したようにして求め、補正光軸の情報を平行化パラメータ記憶部５５に出力して記憶させる。また、光軸補正部７３は、広角画像Ｗ１の投影画像と広角画像Ｗ２の投影画像をそれぞれの仮想球面、補正光軸の情報とともに平面投影部７４に出力する。
【０１１７】
光軸補正部７３は、実際の距離算出時、平行化パラメータ記憶部５５に記憶されている補正光軸の情報に基づいて補正光軸を設定する。光軸補正部７３は、広角画像Ｗ１の投影画像と広角画像Ｗ２の投影画像をそれぞれの仮想球面、補正光軸の情報とともに平面投影部７４に出力する。
【０１１８】
平面投影部７４は、カメラ１２−１の補正光軸を基準として、仮想球面Ｓ１上に複数の平面を設定し、広角画像Ｗ１の投影画像をそれぞれの平面に再投影することによって複数の平面画像を生成する。また、平面投影部７４は、カメラ１２−２の補正光軸を基準として、仮想球面Ｓ２上に複数の平面を設定し、広角画像Ｗ２の投影画像をそれぞれの平面に再投影することによって複数の平面画像を生成する。平面投影部７４は、広角画像に基づいて複数の平面画像を生成する生成部として機能する。
【０１１９】
平面投影部７４は、平行化パラメータの生成時、広角画像Ｗ１に基づいて生成した複数の平面画像を基準画像、広角画像Ｗ２に基づいて生成した複数の平面画像を参照画像として、それぞれ対応点探索部５３に出力する。
【０１２０】
平面投影部７４は、実際の距離算出時、広角画像Ｗ１に基づいて生成した複数の平面画像を基準画像、広角画像Ｗ２に基づいて生成した複数の平面画像を参照画像として、それぞれ射影変換部７５に出力する。
【０１２１】
射影変換部７５は、実際の距離算出時、平行化パラメータ記憶部５５に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。射影変換部７５は、複数の基準画像と、射影変換後の複数の参照画像とを対応点探索部５３に出力する。
【０１２２】
＜１−５．画像処理装置の動作＞
ここで、以上のような構成を有する画像処理装置１１の動作について説明する。
【０１２３】
はじめに、図１６のフローチャートを参照して、平行化パラメータを生成する画像処理装置１１の処理について説明する。
【０１２４】
図１６の処理は、ステレオカメラシステム１の運用開始前の所定のタイミングで行われる。平行化パラメータの生成用に用意された既知の物体を撮影して得られたステレオ画像が画像処理装置１１に入力される。平行化パラメータの生成用に用いられる既知の物体は、立体的なものであってもよいし、既知のパターンがプリントされたテストチャートなどの平面的なものであってもよい。
【０１２５】
ステップＳ１において、取得部５１は、カメラ１２−１により撮影された広角画像とカメラ１２−２により撮影された広角画像からなるステレオ画像を受信し、取得する。
【０１２６】
ステップＳ２において、前処理部６１−１は、カメラ１２−１により撮影された広角画像に対して前処理を施す。また、前処理部６１−２は、カメラ１２−２により撮影された広角画像に対して前処理を施す。
【０１２７】
ステップＳ３において、平行化処理部５２の光軸検出部７１は、前処理部６１−１から供給された広角画像に基づいてカメラ１２−１の光軸を検出するとともに、前処理部６１−２から供給された広角画像に基づいてカメラ１２−２の光軸を検出する。
【０１２８】
ステップＳ４において、仮想球面投影部７２は、カメラ１２−１により撮影された広角画像に仮想球面Ｓ１を設定し、投影する。また、仮想球面投影部７２は、カメラ１２−２により撮影された広角画像に仮想球面Ｓ２を設定し、投影する。
【０１２９】
ステップＳ５において、光軸補正部７３は、仮想球面Ｓ１に投影された投影画像を解析することによって既知の物体の仮想球面Ｓ１上の位置を検出し、その位置と天頂との差に相当する分だけ光軸を補正することによって、カメラ１２−１の補正光軸を求める。また、光軸補正部７３は、仮想球面Ｓ２に投影された投影画像を解析することによって既知の物体の仮想球面Ｓ２上の位置を検出し、その位置と天頂との差に相当する分だけ光軸を補正することによって、カメラ１２−２の補正光軸を求める。
【０１３０】
ステップＳ６において、光軸補正部７３は、カメラ１２−１とカメラ１２−２のそれぞれの補正光軸の情報を平行化パラメータ記憶部５５に出力して記憶させる。
【０１３１】
ステップＳ７において、平面投影部７４は、カメラ１２−１の補正光軸を基準として仮想球面Ｓ１上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の基準画像を生成する。また、平面投影部７４は、カメラ１２−２の補正光軸を基準として仮想球面Ｓ２上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の参照画像を生成する。
【０１３２】
ステップＳ８において、対応点探索部５３は、平面投影部７４から供給された基準画像と参照画像の画像対毎に対応点探索を行い、対応点の情報をパラメータ生成部５４に出力する。
【０１３３】
ステップＳ９において、パラメータ生成部５４は、対応点探索部５３により探索された対応点に基づいて、それぞれの画像対用の射影変換パラメータを生成する。
【０１３４】
ステップＳ１０において、パラメータ生成部５４は、生成した射影変換パラメータを平行化パラメータ記憶部５５に出力し、記憶させる。
【０１３５】
以上の処理により、平行化パラメータ記憶部５５には、補正光軸の情報と射影変換パラメータとが平行化パラメータとして記憶される。
【０１３６】
次に、図１７のフローチャートを参照して、対象とする物体までの距離を実際に算出する画像処理装置１１の処理について説明する。
【０１３７】
図１７の処理は、ステレオカメラシステム１が自動車に取り付けられた状態で、走行中などの所定のタイミングで行われる。走行時の周囲の風景を撮影して得られたステレオ画像が画像処理装置１１に入力される。
【０１３８】
なお、距離を算出する対象となる物体をどの物体とするのかは、例えば、ステレオ画像を解析することによって図示せぬ制御部により特定される。特定された物体を指定する情報は例えば対応点探索部５３、距離算出部５６に供給される。
【０１３９】
ステップＳ３１において、取得部５１は、カメラ１２−１により撮影された広角画像とカメラ１２−２により撮影された広角画像からなるステレオ画像を受信し、取得する。
【０１４０】
ステップＳ３２において、前処理部６１−１は、カメラ１２−１により撮影された広角画像に対して前処理を施す。また、前処理部６１−２は、カメラ１２−２により撮影された広角画像に対して前処理を施す。
【０１４１】
ステップＳ３３において、平行化処理部５２の光軸検出部７１は、前処理部６１−１から供給された広角画像に基づいてカメラ１２−１の光軸を検出するとともに、前処理部６１−２から供給された広角画像に基づいてカメラ１２−２の光軸を検出する。
【０１４２】
ステップＳ３４において、仮想球面投影部７２は、カメラ１２−１により撮影された広角画像に仮想球面Ｓ１を設定し、投影する。また、仮想球面投影部７２は、カメラ１２−２により撮影された広角画像に仮想球面Ｓ２を設定し、投影する。
【０１４３】
ステップＳ３５において、光軸補正部７３は、平行化パラメータ記憶部５５に記憶されている補正光軸の情報に基づいてカメラ１２−１とカメラ１２−２のそれぞれの補正光軸を設定する。
【０１４４】
ステップＳ３６において、平面投影部７４は、カメラ１２−１の補正光軸を基準として仮想球面Ｓ１上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって、複数の基準画像を生成する。また、平面投影部７４は、カメラ１２−２の補正光軸を基準として仮想球面Ｓ２上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって、複数の参照画像を生成する。
【０１４５】
ステップＳ３７において、射影変換部７５は、平行化パラメータ記憶部５５に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。射影変換部７５は、複数の基準画像と、射影変換後の複数の参照画像とを出力する。
【０１４６】
ステップＳ３８において、対応点探索部５３は、射影変換部７５から供給された基準画像と射影変換後の参照画像の画像対毎に対応点探索を行う。
【０１４７】
ステップＳ３９において、距離算出部５６は、対応点探索部５３により探索された対応点に基づいて、対象となる物体までの距離を算出する。
【０１４８】
ステップＳ４０において、後処理部５７は、距離算出部５６により算出された距離情報に基づいて後処理を行い、処理を終了させる。
【０１４９】
以上のような光軸補正と射影変換との２段階の処理を含むレクティフィケーションが、対象となる物体までの距離の算出毎に行われる。これにより、距離を精度よく算出することが可能になる。
【０１５０】
＜＜２．第２の実施の形態＞＞
以上のようなレクティフィケーションの１段階目の処理として行われる光軸補正において、誤差が最も大きくなる可能性がある処理は光軸の検出（推定）である。光軸の検出に誤差があり、補正光軸を高い精度で設定できない場合、２段階目の処理として行われる射影変換での補正量が大きくなり、歪みを補正しきれなくなる可能性がある。
【０１５１】
ここで、図１８のフローチャートを参照して、平行化パラメータを生成する画像処理装置１１の他の処理について説明する。１段階目の処理として行われる光軸補正が、図１６を参照して説明した処理と異なる形で行われる。
【０１５２】
図１８の処理は、光軸の補正結果の評価が行われる点を除いて、図１６を参照して説明した処理と同様の処理である。重複する説明については適宜省略する。
【０１５３】
平行化パラメータの生成用に用意された既知の物体を撮影して得られたステレオ画像が画像処理装置１１に入力される。ここで用意される既知の物体は、位置が固定であれば近くにあるものであってもよい。既知の物体は、仮想球面に投影したときに天頂付近だけに映るものではなく、画像全体に広く分布して映るものであってもよい。
【０１５４】
ステップＳ５１において、ステレオ画像が受信され、ステップＳ５２において、ステレオ画像を構成するそれぞれの広角画像に対して前処理が施される。
【０１５５】
ステップＳ５３において、平行化処理部５２の光軸検出部７１は、カメラ１２−１の光軸とカメラ１２−２の光軸を検出する。
【０１５６】
ステップＳ５４において、仮想球面投影部７２は、カメラ１２−１により撮影された広角画像とカメラ１２−２により撮影された広角画像をそれぞれ仮想球面に投影する。
【０１５７】
ステップＳ５５において、光軸補正部７３は、投影画像を解析し、既知の物体の仮想球面上の位置を検出する。また、光軸補正部７３は、検出した位置と、予め設定された位置（既知の物体が映るべき位置）との差に相当する分だけ光軸を補正する。
【０１５８】
ステップＳ５６において、平面投影部７４は、補正光軸を基準として仮想球面上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の基準画像と複数の参照画像を生成する。
【０１５９】
ステップＳ５７において、光軸補正部７３は、光軸の補正誤差が閾値以下であるか否かを判定する。
【０１６０】
光軸の補正誤差は、例えば下式（５）により求められる。
【数５】
2019003910.tif 000007
【０１６１】
ここで、y1(i)は、ある物体点の基準画像上のy座標である。y2(i)は、同じ物体点の、参照画像上のy座標である。iは1〜nの値であり、平面画像に映っているn個の物体点の通し番号である。
【０１６２】
光軸補正に誤差がないということは、２つの魚眼カメラに映っている同じ物体点が同じ値ｙを持つということであるため、値ｙの差が０に近い方が良い。式（５）は、ステレオカメラ間の、同一物体点のy方向の位置ずれの総和に基づく評価式となる。
【０１６３】
また、光軸の補正誤差が下式（６）により求められるようにしてもよい。
【数６】
2019003910.tif 000008
【０１６４】
ここで、x1(i)は、ある物体点の基準画像上のx座標である。x2(i)は、同じ物体点の、参照画像上のx座標である。y1(i)、y2(i)、iは、式（５）の場合と同様である。視差dは、物体点までの既知の距離から式（１）を用いて算出することができる値である。
【０１６５】
式（６）は、式（５）と比べて、同一物体点のx方向の位置ずれをも含めて評価値を求めるものになっている。
【０１６６】
式（５）または式（６）により求められる誤差を評価値とするのではなく、他の評価値を用いるようにしてもよい。例えば、式（５）または式（６）の誤差の総和を求める部分を、誤差の２乗の総和を求めるものとして、その式により求められた評価値や、相関演算などを用いて求められた評価値を用いるようにしてもよい。
【０１６７】
図１８の説明に戻り、光軸の補正誤差が閾値を超えているとステップＳ５７において判定された場合、ステップＳ５５に戻り、光軸の補正が繰り返される。繰り返し行われる光軸の補正においては、誤差に応じた補正が行われるようにしてもよいし、一定量だけずらす補正が行われるようにしてもよい。
【０１６８】
光軸の補正誤差が閾値以下であるとステップＳ５７において判定された場合、ステップＳ５８以降の処理が行われる。補正誤差が閾値以下となるまで光軸の補正が繰り返されることにより、誤差の少ない光軸を、補正光軸として求めることが可能になる。
【０１６９】
ステップＳ５８以降の処理は、図１６のステップＳ６以降の処理と同様である。以上の処理により、レクティフィケーションをより正確に行うことが可能になる。
【０１７０】
＜＜３．第３の実施の形態＞＞
魚眼カメラであるカメラ１２−１，１２−２は広い範囲を撮影可能なカメラである。従って、ステレオカメラシステム１の取り付け方によっては取り付け先となる筺体が映り込む場合がある。
【０１７１】
例えば図２のステレオ画像においては、上述したように自動車の車体Ｃが映っている。このようなステレオ画像を仮想球面に投影し、投影画像を複数の平面に再投影した場合、それぞれの平面画像には、車体Ｃが水平方向に映り込む状態になる。ここで、上述したようなレクティフィケーションを行うと、車体Ｃまでの距離を算出することができる。
【０１７２】
レクティフィケーションを終えたステレオカメラシステム１を使用していると、衝撃、熱、経年変化などによる歪みにより、距離の計測を正しく行うことができなくなることがある。この場合、レクティフィケーションを再度行うことにより、そのような問題は解消される。
【０１７３】
しかしながら、第１の実施の形態において説明した運用開始前のレクティフィケーションにおいては、光軸補正のために例えば画面全体を覆うような既知のパターンが用いられることから、専用の環境が必要となる。
【０１７４】
そこで、再度のレクティフィケーションは、専用の環境を必要としない、第２の実施の形態において説明した方法で行われるようにしてもよい。この再度のレクティフィケーションは、例えばステレオカメラシステム１の運用開始後の所定のタイミングで行われる。
【０１７５】
光軸の補正誤差の評価を式（５）を用いて行うことにより、レクティフィケーションのy方向のずれを解消することができるが、x方向のずれが残ってしまう恐れがある。再度のレクティフィケーションでの光軸の補正誤差の評価は、式（６）を用いて行われる。
【０１７６】
光軸の補正誤差の評価が式（６）を用いて行われるとした場合、距離が既知の物体点が必要であるが、これは、車体Ｃなどの、魚眼カメラに映りこんでいる筺体までの距離を用いることが可能である。
【０１７７】
ここで、距離が既知な物体点として車体Ｃを用いるとした場合、既知な物体点が、下方寄りの位置などの、平面画像の一部に集中してしまう。距離が既知の物体点については式（６）を用いて誤差を求め、距離が未知の物体点については式（５）を用いて誤差を求めるようにすることにより、画像全体で光軸の補正誤差を計測することが可能になる。
【０１７８】
＜＜４．変形例＞＞
カメラ１２−１，１２−２が備えるレンズが魚眼レンズである場合について主に説明したが、魚眼レンズではない広視野角のレンズがカメラ１２−１，１２−２に設けられるようにしてもよい。
【０１７９】
また、以上においては、仮想球面に投影した広角画像の再投影が、仮想球面上に設定された３つの平面に対して行われるものとしたが、補正光軸を基準として設定される４つ以上の平面に対して行われるようにしてもよい。
【０１８０】
画像処理装置１１がステレオカメラを構成するカメラ１２−１とカメラ１２−２とは別の装置として設けられるものとしたが、画像処理装置１１がカメラ１２−１とカメラ１２−２を備え、これらの装置が同一筐体に設けられるようにしてもよい。
【０１８１】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１８２】
図１９は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。画像処理装置１１は、図１９に示すような構成を有するコンピュータにより構成される。
【０１８３】
CPU(Central Processing Unit)１００１、ROM(Read Only Memory)１００２、RAM(Random Access Memory)１００３は、バス１００４により相互に接続されている。
【０１８４】
バス１００４には、さらに、入出力インタフェース１００５が接続されている。入出力インタフェース１００５には、キーボード、マウスなどよりなる入力部１００６、ディスプレイ、スピーカなどよりなる出力部１００７が接続される。また、入出力インタフェース１００５には、ハードディスクや不揮発性のメモリなどよりなる記憶部１００８、ネットワークインタフェースなどよりなる通信部１００９、リムーバブルメディア１０１１を駆動するドライブ１０１０が接続される。
【０１８５】
以上のように構成されるコンピュータでは、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを入出力インタフェース１００５およびバス１００４を介してRAM１００３にロードして実行することにより、上述した一連の処理が行われる。
【０１８６】
CPU１００１が実行するプログラムは、例えばリムーバブルメディア１０１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部１００８にインストールされる。
【０１８７】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１８８】
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１８９】
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【０１９０】
＜＜５．応用例１＞＞
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、内視鏡手術システムに適用されてもよい。ステレオカメラシステム１が、内視鏡手術システムの一部の構成として用いられる。
【０１９１】
図２０は、本開示に係る技術が適用され得る内視鏡手術システム５０００の概略的な構成の一例を示す図である。図２０では、術者（医師）５０６７が、内視鏡手術システム５０００を用いて、患者ベッド５０６９上の患者５０７１に手術を行っている様子が図示されている。図示するように、内視鏡手術システム５０００は、内視鏡５００１と、その他の術具５０１７と、内視鏡５００１を支持する支持アーム装置５０２７と、内視鏡下手術のための各種の装置が搭載されたカート５０３７と、から構成される。
【０１９２】
内視鏡手術では、腹壁を切って開腹する代わりに、トロッカ５０２５ａ〜５０２５ｄと呼ばれる筒状の開孔器具が腹壁に複数穿刺される。そして、トロッカ５０２５ａ〜５０２５ｄから、内視鏡５００１の鏡筒５００３や、その他の術具５０１７が患者５０７１の体腔内に挿入される。図示する例では、その他の術具５０１７として、気腹チューブ５０１９、エネルギー処置具５０２１及び鉗子５０２３が、患者５０７１の体腔内に挿入されている。また、エネルギー処置具５０２１は、高周波電流や超音波振動により、組織の切開及び剥離、又は血管の封止等を行う処置具である。ただし、図示する術具５０１７はあくまで一例であり、術具５０１７としては、例えば攝子、レトラクタ等、一般的に内視鏡下手術において用いられる各種の術具が用いられてよい。
【０１９３】
内視鏡５００１によって撮影された患者５０７１の体腔内の術部の画像が、表示装置５０４１に表示される。術者５０６７は、表示装置５０４１に表示された術部の画像をリアルタイムで見ながら、エネルギー処置具５０２１や鉗子５０２３を用いて、例えば患部を切除する等の処置を行う。なお、図示は省略しているが、気腹チューブ５０１９、エネルギー処置具５０２１及び鉗子５０２３は、手術中に、術者５０６７又は助手等によって支持される。
【０１９４】
（支持アーム装置）
支持アーム装置５０２７は、ベース部５０２９から延伸するアーム部５０３１を備える。図示する例では、アーム部５０３１は、関節部５０３３ａ、５０３３ｂ、５０３３ｃ、及びリンク５０３５ａ、５０３５ｂから構成されており、アーム制御装置５０４５からの制御により駆動される。アーム部５０３１によって内視鏡５００１が支持され、その位置及び姿勢が制御される。これにより、内視鏡５００１の安定的な位置の固定が実現され得る。
【０１９５】
（内視鏡）
内視鏡５００１は、先端から所定の長さの領域が患者５０７１の体腔内に挿入される鏡筒５００３と、鏡筒５００３の基端に接続されるカメラヘッド５００５と、から構成される。図示する例では、硬性の鏡筒５００３を有するいわゆる硬性鏡として構成される内視鏡５００１を図示しているが、内視鏡５００１は、軟性の鏡筒５００３を有するいわゆる軟性鏡として構成されてもよい。
【０１９６】
鏡筒５００３の先端には、対物レンズが嵌め込まれた開口部が設けられている。内視鏡５００１には光源装置５０４３が接続されており、当該光源装置５０４３によって生成された光が、鏡筒５００３の内部に延設されるライトガイドによって当該鏡筒の先端まで導光され、対物レンズを介して患者５０７１の体腔内の観察対象に向かって照射される。なお、内視鏡５００１は、直視鏡であってもよいし、斜視鏡又は側視鏡であってもよい。
【０１９７】
カメラヘッド５００５の内部には光学系及び撮像素子が設けられており、観察対象からの反射光（観察光）は当該光学系によって当該撮像素子に集光される。当該撮像素子によって観察光が光電変換され、観察光に対応する電気信号、すなわち観察像に対応する画像信号が生成される。当該画像信号は、ＲＡＷデータとしてカメラコントロールユニット（ＣＣＵ：Camera  Control  Unit）５０３９に送信される。なお、カメラヘッド５００５には、その光学系を適宜駆動させることにより、倍率及び焦点距離を調整する機能が搭載される。
【０１９８】
なお、例えば立体視（３Ｄ表示）等に対応するために、カメラヘッド５００５には撮像素子が複数設けられてもよい。この場合、鏡筒５００３の内部には、当該複数の撮像素子のそれぞれに観察光を導光するために、リレー光学系が複数系統設けられる。
【０１９９】
（カートに搭載される各種の装置）
ＣＣＵ５０３９は、ＣＰＵ（Central  Processing  Unit）やＧＰＵ（Graphics  Processing  Unit）等によって構成され、内視鏡５００１及び表示装置５０４１の動作を統括的に制御する。具体的には、ＣＣＵ５０３９は、カメラヘッド５００５から受け取った画像信号に対して、例えば現像処理（デモザイク処理）等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。ＣＣＵ５０３９は、当該画像処理を施した画像信号を表示装置５０４１に提供する。また、ＣＣＵ５０３９は、カメラヘッド５００５に対して制御信号を送信し、その駆動を制御する。当該制御信号には、倍率や焦点距離等、撮像条件に関する情報が含まれ得る。
【０２００】
表示装置５０４１は、ＣＣＵ５０３９からの制御により、当該ＣＣＵ５０３９によって画像処理が施された画像信号に基づく画像を表示する。内視鏡５００１が例えば４Ｋ（水平画素数３８４０×垂直画素数２１６０）又は８Ｋ（水平画素数７６８０×垂直画素数４３２０）等の高解像度の撮影に対応したものである場合、及び／又は３Ｄ表示に対応したものである場合には、表示装置５０４１としては、それぞれに対応して、高解像度の表示が可能なもの、及び／又は３Ｄ表示可能なものが用いられ得る。４Ｋ又は８Ｋ等の高解像度の撮影に対応したものである場合、表示装置５０４１として５５インチ以上のサイズのものを用いることで一層の没入感が得られる。また、用途に応じて、解像度、サイズが異なる複数の表示装置５０４１が設けられてもよい。
【０２０１】
光源装置５０４３は、例えばＬＥＤ（light  emitting  diode）等の光源から構成され、術部を撮影する際の照射光を内視鏡５００１に供給する。
【０２０２】
アーム制御装置５０４５は、例えばＣＰＵ等のプロセッサによって構成され、所定のプログラムに従って動作することにより、所定の制御方式に従って支持アーム装置５０２７のアーム部５０３１の駆動を制御する。
【０２０３】
入力装置５０４７は、内視鏡手術システム５０００に対する入力インタフェースである。ユーザは、入力装置５０４７を介して、内視鏡手術システム５０００に対して各種の情報の入力や指示入力を行うことができる。例えば、ユーザは、入力装置５０４７を介して、患者の身体情報や、手術の術式についての情報等、手術に関する各種の情報を入力する。また、例えば、ユーザは、入力装置５０４７を介して、アーム部５０３１を駆動させる旨の指示や、内視鏡５００１による撮像条件（照射光の種類、倍率及び焦点距離等）を変更する旨の指示、エネルギー処置具５０２１を駆動させる旨の指示等を入力する。
【０２０４】
入力装置５０４７の種類は限定されず、入力装置５０４７は各種の公知の入力装置であってよい。入力装置５０４７としては、例えば、マウス、キーボード、タッチパネル、スイッチ、フットスイッチ５０５７及び／又はレバー等が適用され得る。入力装置５０４７としてタッチパネルが用いられる場合には、当該タッチパネルは表示装置５０４１の表示面上に設けられてもよい。
【０２０５】
あるいは、入力装置５０４７は、例えばメガネ型のウェアラブルデバイスやＨＭＤ（Head  Mounted  Display）等の、ユーザによって装着されるデバイスであり、これらのデバイスによって検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。また、入力装置５０４７は、ユーザの動きを検出可能なカメラを含み、当該カメラによって撮像された映像から検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。更に、入力装置５０４７は、ユーザの声を収音可能なマイクロフォンを含み、当該マイクロフォンを介して音声によって各種の入力が行われる。このように、入力装置５０４７が非接触で各種の情報を入力可能に構成されることにより、特に清潔域に属するユーザ（例えば術者５０６７）が、不潔域に属する機器を非接触で操作することが可能となる。また、ユーザは、所持している術具から手を離すことなく機器を操作することが可能となるため、ユーザの利便性が向上する。
【０２０６】
処置具制御装置５０４９は、組織の焼灼、切開又は血管の封止等のためのエネルギー処置具５０２１の駆動を制御する。気腹装置５０５１は、内視鏡５００１による視野の確保及び術者の作業空間の確保の目的で、患者５０７１の体腔を膨らめるために、気腹チューブ５０１９を介して当該体腔内にガスを送り込む。レコーダ５０５３は、手術に関する各種の情報を記録可能な装置である。プリンタ５０５５は、手術に関する各種の情報を、テキスト、画像又はグラフ等各種の形式で印刷可能な装置である。
【０２０７】
以下、内視鏡手術システム５０００において特に特徴的な構成について、更に詳細に説明する。
【０２０８】
（支持アーム装置）
支持アーム装置５０２７は、基台であるベース部５０２９と、ベース部５０２９から延伸するアーム部５０３１と、を備える。図示する例では、アーム部５０３１は、複数の関節部５０３３ａ、５０３３ｂ、５０３３ｃと、関節部５０３３ｂによって連結される複数のリンク５０３５ａ、５０３５ｂと、から構成されているが、図２０では、簡単のため、アーム部５０３１の構成を簡略化して図示している。実際には、アーム部５０３１が所望の自由度を有するように、関節部５０３３ａ〜５０３３ｃ及びリンク５０３５ａ、５０３５ｂの形状、数及び配置、並びに関節部５０３３ａ〜５０３３ｃの回転軸の方向等が適宜設定され得る。例えば、アーム部５０３１は、好適に、６自由度以上の自由度を有するように構成され得る。これにより、アーム部５０３１の可動範囲内において内視鏡５００１を自由に移動させることが可能になるため、所望の方向から内視鏡５００１の鏡筒５００３を患者５０７１の体腔内に挿入することが可能になる。
【０２０９】
関節部５０３３ａ〜５０３３ｃにはアクチュエータが設けられており、関節部５０３３ａ〜５０３３ｃは当該アクチュエータの駆動により所定の回転軸まわりに回転可能に構成されている。当該アクチュエータの駆動がアーム制御装置５０４５によって制御されることにより、各関節部５０３３ａ〜５０３３ｃの回転角度が制御され、アーム部５０３１の駆動が制御される。これにより、内視鏡５００１の位置及び姿勢の制御が実現され得る。この際、アーム制御装置５０４５は、力制御又は位置制御等、各種の公知の制御方式によってアーム部５０３１の駆動を制御することができる。
【０２１０】
例えば、術者５０６７が、入力装置５０４７（フットスイッチ５０５７を含む）を介して適宜操作入力を行うことにより、当該操作入力に応じてアーム制御装置５０４５によってアーム部５０３１の駆動が適宜制御され、内視鏡５００１の位置及び姿勢が制御されてよい。当該制御により、アーム部５０３１の先端の内視鏡５００１を任意の位置から任意の位置まで移動させた後、その移動後の位置で固定的に支持することができる。なお、アーム部５０３１は、いわゆるマスタースレイブ方式で操作されてもよい。この場合、アーム部５０３１は、手術室から離れた場所に設置される入力装置５０４７を介してユーザによって遠隔操作され得る。
【０２１１】
また、力制御が適用される場合には、アーム制御装置５０４５は、ユーザからの外力を受け、その外力にならってスムーズにアーム部５０３１が移動するように、各関節部５０３３ａ〜５０３３ｃのアクチュエータを駆動させる、いわゆるパワーアシスト制御を行ってもよい。これにより、ユーザが直接アーム部５０３１に触れながらアーム部５０３１を移動させる際に、比較的軽い力で当該アーム部５０３１を移動させることができる。従って、より直感的に、より簡易な操作で内視鏡５００１を移動させることが可能となり、ユーザの利便性を向上させることができる。
【０２１２】
ここで、一般的に、内視鏡下手術では、スコピストと呼ばれる医師によって内視鏡５００１が支持されていた。これに対して、支持アーム装置５０２７を用いることにより、人手によらずに内視鏡５００１の位置をより確実に固定することが可能になるため、術部の画像を安定的に得ることができ、手術を円滑に行うことが可能になる。
【０２１３】
なお、アーム制御装置５０４５は必ずしもカート５０３７に設けられなくてもよい。また、アーム制御装置５０４５は必ずしも１つの装置でなくてもよい。例えば、アーム制御装置５０４５は、支持アーム装置５０２７のアーム部５０３１の各関節部５０３３ａ〜５０３３ｃにそれぞれ設けられてもよく、複数のアーム制御装置５０４５が互いに協働することにより、アーム部５０３１の駆動制御が実現されてもよい。
【０２１４】
（光源装置）
光源装置５０４３は、内視鏡５００１に術部を撮影する際の照射光を供給する。光源装置５０４３は、例えばＬＥＤ、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、ＲＧＢレーザ光源の組み合わせにより白色光源が構成される場合には、各色（各波長）の出力強度及び出力タイミングを高精度に制御することができるため、光源装置５０４３において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、ＲＧＢレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド５００５の撮像素子の駆動を制御することにより、ＲＧＢそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。
【０２１５】
また、光源装置５０４３は、出力する光の強度を所定の時間ごとに変更するようにその駆動が制御されてもよい。その光の強度の変更のタイミングに同期してカメラヘッド５００５の撮像素子の駆動を制御して時分割で画像を取得し、その画像を合成することにより、いわゆる黒つぶれ及び白とびのない高ダイナミックレンジの画像を生成することができる。
【０２１６】
また、光源装置５０４３は、特殊光観察に対応した所定の波長帯域の光を供給可能に構成されてもよい。特殊光観察では、例えば、体組織における光の吸収の波長依存性を利用して、通常の観察時における照射光（すなわち、白色光）に比べて狭帯域の光を照射することにより、粘膜表層の血管等の所定の組織を高コントラストで撮影する、いわゆる狭帯域光観察（Narrow  Band  Imaging）が行われる。あるいは、特殊光観察では、励起光を照射することにより発生する蛍光により画像を得る蛍光観察が行われてもよい。蛍光観察では、体組織に励起光を照射し当該体組織からの蛍光を観察するもの（自家蛍光観察）、又はインドシアニングリーン（ICG）等の試薬を体組織に局注するとともに当該体組織にその試薬の蛍光波長に対応した励起光を照射し蛍光像を得るもの等が行われ得る。光源装置５０４３は、このような特殊光観察に対応した狭帯域光及び／又は励起光を供給可能に構成され得る。
【０２１７】
（カメラヘッド及びＣＣＵ）
図２１を参照して、内視鏡５００１のカメラヘッド５００５及びＣＣＵ５０３９の機能についてより詳細に説明する。図２１は、図２０に示すカメラヘッド５００５及びＣＣＵ５０３９の機能構成の一例を示すブロック図である。
【０２１８】
図２１を参照すると、カメラヘッド５００５は、その機能として、レンズユニット５００７と、撮像部５００９と、駆動部５０１１と、通信部５０１３と、カメラヘッド制御部５０１５と、を有する。また、ＣＣＵ５０３９は、その機能として、通信部５０５９と、画像処理部５０６１と、制御部５０６３と、を有する。カメラヘッド５００５とＣＣＵ５０３９とは、伝送ケーブル５０６５によって双方向に通信可能に接続されている。
【０２１９】
まず、カメラヘッド５００５の機能構成について説明する。レンズユニット５００７は、鏡筒５００３との接続部に設けられる光学系である。鏡筒５００３の先端から取り込まれた観察光は、カメラヘッド５００５まで導光され、当該レンズユニット５００７に入射する。レンズユニット５００７は、ズームレンズ及びフォーカスレンズを含む複数のレンズが組み合わされて構成される。レンズユニット５００７は、撮像部５００９の撮像素子の受光面上に観察光を集光するように、その光学特性が調整されている。また、ズームレンズ及びフォーカスレンズは、撮像画像の倍率及び焦点の調整のため、その光軸上の位置が移動可能に構成される。
【０２２０】
撮像部５００９は撮像素子によって構成され、レンズユニット５００７の後段に配置される。レンズユニット５００７を通過した観察光は、当該撮像素子の受光面に集光され、光電変換によって、観察像に対応した画像信号が生成される。撮像部５００９によって生成された画像信号は、通信部５０１３に提供される。
【０２２１】
撮像部５００９を構成する撮像素子としては、例えばＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）タイプのイメージセンサであり、Ｂａｙｅｒ配列を有するカラー撮影可能なものが用いられる。なお、当該撮像素子としては、例えば４Ｋ以上の高解像度の画像の撮影に対応可能なものが用いられてもよい。術部の画像が高解像度で得られることにより、術者５０６７は、当該術部の様子をより詳細に把握することができ、手術をより円滑に進行することが可能となる。
【０２２２】
また、撮像部５００９を構成する撮像素子は、３Ｄ表示に対応する右目用及び左目用の画像信号をそれぞれ取得するための１対の撮像素子を有するように構成される。３Ｄ表示が行われることにより、術者５０６７は術部における生体組織の奥行きをより正確に把握することが可能になる。なお、撮像部５００９が多板式で構成される場合には、各撮像素子に対応して、レンズユニット５００７も複数系統設けられる。
【０２２３】
また、撮像部５００９は、必ずしもカメラヘッド５００５に設けられなくてもよい。例えば、撮像部５００９は、鏡筒５００３の内部に、対物レンズの直後に設けられてもよい。
【０２２４】
駆動部５０１１は、アクチュエータによって構成され、カメラヘッド制御部５０１５からの制御により、レンズユニット５００７のズームレンズ及びフォーカスレンズを光軸に沿って所定の距離だけ移動させる。これにより、撮像部５００９による撮像画像の倍率及び焦点が適宜調整され得る。
【０２２５】
通信部５０１３は、ＣＣＵ５０３９との間で各種の情報を送受信するための通信装置によって構成される。通信部５０１３は、撮像部５００９から得た画像信号をＲＡＷデータとして伝送ケーブル５０６５を介してＣＣＵ５０３９に送信する。この際、術部の撮像画像を低レイテンシで表示するために、当該画像信号は光通信によって送信されることが好ましい。手術の際には、術者５０６７が撮像画像によって患部の状態を観察しながら手術を行うため、より安全で確実な手術のためには、術部の動画像が可能な限りリアルタイムに表示されることが求められるからである。光通信が行われる場合には、通信部５０１３には、電気信号を光信号に変換する光電変換モジュールが設けられる。画像信号は当該光電変換モジュールによって光信号に変換された後、伝送ケーブル５０６５を介してＣＣＵ５０３９に送信される。
【０２２６】
また、通信部５０１３は、ＣＣＵ５０３９から、カメラヘッド５００５の駆動を制御するための制御信号を受信する。当該制御信号には、例えば、撮像画像のフレームレートを指定する旨の情報、撮像時の露出値を指定する旨の情報、並びに／又は撮像画像の倍率及び焦点を指定する旨の情報等、撮像条件に関する情報が含まれる。通信部５０１３は、受信した制御信号をカメラヘッド制御部５０１５に提供する。なお、ＣＣＵ５０３９からの制御信号も、光通信によって伝送されてもよい。この場合、通信部５０１３には、光信号を電気信号に変換する光電変換モジュールが設けられ、制御信号は当該光電変換モジュールによって電気信号に変換された後、カメラヘッド制御部５０１５に提供される。
【０２２７】
なお、上記のフレームレートや露出値、倍率、焦点等の撮像条件は、取得された画像信号に基づいてＣＣＵ５０３９の制御部５０６３によって自動的に設定される。つまり、いわゆるＡＥ（Auto  Exposure）機能、ＡＦ（Auto  Focus）機能及びＡＷＢ（Auto  White  Balance）機能が内視鏡５００１に搭載される。
【０２２８】
カメラヘッド制御部５０１５は、通信部５０１３を介して受信したＣＣＵ５０３９からの制御信号に基づいて、カメラヘッド５００５の駆動を制御する。例えば、カメラヘッド制御部５０１５は、撮像画像のフレームレートを指定する旨の情報及び／又は撮像時の露光を指定する旨の情報に基づいて、撮像部５００９の撮像素子の駆動を制御する。また、例えば、カメラヘッド制御部５０１５は、撮像画像の倍率及び焦点を指定する旨の情報に基づいて、駆動部５０１１を介してレンズユニット５００７のズームレンズ及びフォーカスレンズを適宜移動させる。カメラヘッド制御部５０１５は、更に、鏡筒５００３やカメラヘッド５００５を識別するための情報を記憶する機能を備えてもよい。
【０２２９】
なお、レンズユニット５００７や撮像部５００９等の構成を、気密性及び防水性が高い密閉構造内に配置することで、カメラヘッド５００５について、オートクレーブ滅菌処理に対する耐性を持たせることができる。
【０２３０】
次に、ＣＣＵ５０３９の機能構成について説明する。通信部５０５９は、カメラヘッド５００５との間で各種の情報を送受信するための通信装置によって構成される。通信部５０５９は、カメラヘッド５００５から、伝送ケーブル５０６５を介して送信される画像信号を受信する。この際、上記のように、当該画像信号は好適に光通信によって送信され得る。この場合、光通信に対応して、通信部５０５９には、光信号を電気信号に変換する光電変換モジュールが設けられる。通信部５０５９は、電気信号に変換した画像信号を画像処理部５０６１に提供する。
【０２３１】
また、通信部５０５９は、カメラヘッド５００５に対して、カメラヘッド５００５の駆動を制御するための制御信号を送信する。当該制御信号も光通信によって送信されてよい。
【０２３２】
画像処理部５０６１は、カメラヘッド５００５から送信されたＲＡＷデータである画像信号に対して各種の画像処理を施す。当該画像処理としては、例えば現像処理、高画質化処理（帯域強調処理、超解像処理、ＮＲ（Noise  reduction）処理及び／又は手ブレ補正処理等）、並びに／又は拡大処理（電子ズーム処理）等、各種の公知の信号処理が含まれる。また、画像処理部５０６１は、ＡＥ、ＡＦ及びＡＷＢを行うための、画像信号に対する検波処理を行う。
【０２３３】
画像処理部５０６１は、ＣＰＵやＧＰＵ等のプロセッサによって構成され、当該プロセッサが所定のプログラムに従って動作することにより、上述した画像処理や検波処理が行われ得る。なお、画像処理部５０６１が複数のＧＰＵによって構成される場合には、画像処理部５０６１は、画像信号に係る情報を適宜分割し、これら複数のＧＰＵによって並列的に画像処理を行う。
【０２３４】
制御部５０６３は、内視鏡５００１による術部の撮像、及びその撮像画像の表示に関する各種の制御を行う。例えば、制御部５０６３は、カメラヘッド５００５の駆動を制御するための制御信号を生成する。この際、撮像条件がユーザによって入力されている場合には、制御部５０６３は、当該ユーザによる入力に基づいて制御信号を生成する。あるいは、内視鏡５００１にＡＥ機能、ＡＦ機能及びＡＷＢ機能が搭載されている場合には、制御部５０６３は、画像処理部５０６１による検波処理の結果に応じて、最適な露出値、焦点距離及びホワイトバランスを適宜算出し、制御信号を生成する。
【０２３５】
また、制御部５０６３は、画像処理部５０６１によって画像処理が施された画像信号に基づいて、術部の画像を表示装置５０４１に表示させる。この際、制御部５０６３は、各種の画像認識技術を用いて術部画像内における各種の物体を認識する。例えば、制御部５０６３は、術部画像に含まれる物体のエッジの形状や色等を検出することにより、鉗子等の術具、特定の生体部位、出血、エネルギー処置具５０２１使用時のミスト等を認識することができる。制御部５０６３は、表示装置５０４１に術部の画像を表示させる際に、その認識結果を用いて、各種の手術支援情報を当該術部の画像に重畳表示させる。手術支援情報が重畳表示され、術者５０６７に提示されることにより、より安全かつ確実に手術を進めることが可能になる。
【０２３６】
カメラヘッド５００５及びＣＣＵ５０３９を接続する伝送ケーブル５０６５は、電気信号の通信に対応した電気信号ケーブル、光通信に対応した光ファイバ、又はこれらの複合ケーブルである。
【０２３７】
ここで、図示する例では、伝送ケーブル５０６５を用いて有線で通信が行われていたが、カメラヘッド５００５とＣＣＵ５０３９との間の通信は無線で行われてもよい。両者の間の通信が無線で行われる場合には、伝送ケーブル５０６５を手術室内に敷設する必要がなくなるため、手術室内における医療スタッフの移動が当該伝送ケーブル５０６５によって妨げられる事態が解消され得る。
【０２３８】
以上、本開示に係る技術が適用され得る内視鏡手術システム５０００の一例について説明した。なお、ここでは、一例として内視鏡手術システム５０００について説明したが、本開示に係る技術が適用され得るシステムはかかる例に限定されない。例えば、本開示に係る技術は、検査用軟性内視鏡システムや顕微鏡手術システムに適用されてもよい。
【０２３９】
本開示に係る技術は、以上説明した構成のうち、カメラヘッド５００５に設けられたカメラが魚眼レンズを備えたステレオカメラであり、そのステレオカメラにより撮影された画像を処理する場合に好適に適用され得る。本開示に係る技術を適用することにより、対象とする物体点までの距離を正確に計測することができるため、手術をより安全にかつより確実に行うことが可能になる。
【０２４０】
＜＜６．応用例２＞＞
また、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械（トラクター）などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
【０２４１】
図２２は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム７０００の概略的な構成例を示すブロック図である。車両制御システム７０００は、通信ネットワーク７０１０を介して接続された複数の電子制御ユニットを備える。図２２に示した例では、車両制御システム７０００は、駆動系制御ユニット７１００、ボディ系制御ユニット７２００、バッテリ制御ユニット７３００、車外情報検出ユニット７４００、車内情報検出ユニット７５００、及び統合制御ユニット７６００を備える。これらの複数の制御ユニットを接続する通信ネットワーク７０１０は、例えば、ＣＡＮ（Controller  Area  Network）、ＬＩＮ（Local  Interconnect  Network）、ＬＡＮ（Local  Area  Network）又はＦｌｅｘＲａｙ（登録商標）等の任意の規格に準拠した車載通信ネットワークであってよい。
【０２４２】
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク７０１０を介して他の制御ユニットとの間で通信を行うためのネットワークＩ／Ｆを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信Ｉ／Ｆを備える。図２２では、統合制御ユニット７６００の機能構成として、マイクロコンピュータ７６１０、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０、音声画像出力部７６７０、車載ネットワークＩ／Ｆ７６８０及び記憶部７６９０が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信Ｉ／Ｆ及び記憶部等を備える。
【０２４３】
駆動系制御ユニット７１００は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット７１００は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット７１００は、ＡＢＳ（Antilock  Brake  System）又はＥＳＣ（Electronic  Stability  Control）等の制御装置としての機能を有してもよい。
【０２４４】
駆動系制御ユニット７１００には、車両状態検出部７１１０が接続される。車両状態検出部７１１０には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット７１００は、車両状態検出部７１１０から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
【０２４５】
ボディ系制御ユニット７２００は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット７２００は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット７２００には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット７２００は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
【０２４６】
バッテリ制御ユニット７３００は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池７３１０を制御する。例えば、バッテリ制御ユニット７３００には、二次電池７３１０を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット７３００は、これらの信号を用いて演算処理を行い、二次電池７３１０の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
【０２４７】
車外情報検出ユニット７４００は、車両制御システム７０００を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット７４００には、撮像部７４１０及び車外情報検出部７４２０のうちの少なくとも一方が接続される。撮像部７４１０には、ＴｏＦ（Time  Of  Flight）カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部７４２０には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム７０００を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
【０２４８】
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びＬＩＤＡＲ（Light  Detection  and  Ranging、Laser  Imaging  Detection  and  Ranging）装置のうちの少なくとも一つであってよい。これらの撮像部７４１０及び車外情報検出部７４２０は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
【０２４９】
ここで、図２３は、撮像部７４１０及び車外情報検出部７４２０の設置位置の例を示す。撮像部７９１０，７９１２，７９１４，７９１６，７９１８は、例えば、車両７９００のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部７９１０及び車室内のフロントガラスの上部に備えられる撮像部７９１８は、主として車両７９００の前方の画像を取得する。サイドミラーに備えられる撮像部７９１２，７９１４は、主として車両７９００の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部７９１６は、主として車両７９００の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部７９１８は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
【０２５０】
なお、図２３には、それぞれの撮像部７９１０，７９１２，７９１４，７９１６の撮影範囲の一例が示されている。撮像範囲ａは、フロントノーズに設けられた撮像部７９１０の撮像範囲を示し、撮像範囲ｂ，ｃは、それぞれサイドミラーに設けられた撮像部７９１２，７９１４の撮像範囲を示し、撮像範囲ｄは、リアバンパ又はバックドアに設けられた撮像部７９１６の撮像範囲を示す。例えば、撮像部７９１０，７９１２，７９１４，７９１６で撮像された画像データが重ね合わせられることにより、車両７９００を上方から見た俯瞰画像が得られる。
【０２５１】
車両７９００のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部７９２０，７９２２，７９２４，７９２６，７９２８，７９３０は、例えば超音波センサ又はレーダ装置であってよい。車両７９００のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部７９２０，７９２６，７９３０は、例えばＬＩＤＡＲ装置であってよい。これらの車外情報検出部７９２０〜７９３０は、主として先行車両、歩行者又は障害物等の検出に用いられる。
【０２５２】
図２２に戻って説明を続ける。車外情報検出ユニット７４００は、撮像部７４１０に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット７４００は、接続されている車外情報検出部７４２０から検出情報を受信する。車外情報検出部７４２０が超音波センサ、レーダ装置又はＬＩＤＡＲ装置である場合には、車外情報検出ユニット７４００は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット７４００は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット７４００は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット７４００は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
【０２５３】
また、車外情報検出ユニット７４００は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット７４００は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部７４１０により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット７４００は、異なる撮像部７４１０により撮像された画像データを用いて、視点変換処理を行ってもよい。
【０２５４】
車内情報検出ユニット７５００は、車内の情報を検出する。車内情報検出ユニット７５００には、例えば、運転者の状態を検出する運転者状態検出部７５１０が接続される。運転者状態検出部７５１０は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット７５００は、運転者状態検出部７５１０から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット７５００は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
【０２５５】
統合制御ユニット７６００は、各種プログラムにしたがって車両制御システム７０００内の動作全般を制御する。統合制御ユニット７６００には、入力部７８００が接続されている。入力部７８００は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット７６００には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部７８００は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム７０００の操作に対応した携帯電話又はＰＤＡ（Personal  Digital  Assistant）等の外部接続機器であってもよい。入力部７８００は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部７８００は、例えば、上記の入力部７８００を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット７６００に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部７８００を操作することにより、車両制御システム７０００に対して各種のデータを入力したり処理動作を指示したりする。
【０２５６】
記憶部７６９０は、マイクロコンピュータにより実行される各種プログラムを記憶するＲＯＭ（Read  Only  Memory）、及び各種パラメータ、演算結果又はセンサ値等を記憶するＲＡＭ（Random  Access  Memory）を含んでいてもよい。また、記憶部７６９０は、ＨＤＤ（Hard  Disc  Drive）等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
【０２５７】
汎用通信Ｉ／Ｆ７６２０は、外部環境７７５０に存在する様々な機器との間の通信を仲介する汎用的な通信Ｉ／Ｆである。汎用通信Ｉ／Ｆ７６２０は、ＧＳＭ（登録商標）（Global  System  of  Mobile  communications）、ＷｉＭＡＸ（登録商標）、ＬＴＥ（登録商標）（Long  Term  Evolution）若しくはＬＴＥ−Ａ（LTE−Advanced）などのセルラー通信プロトコル、又は無線ＬＡＮ（Ｗｉ−Ｆｉ（登録商標）ともいう）、Ｂｌｕｅｔｏｏｔｈ（登録商標）などのその他の無線通信プロトコルを実装してよい。汎用通信Ｉ／Ｆ７６２０は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク（例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク）上に存在する機器（例えば、アプリケーションサーバ又は制御サーバ）へ接続してもよい。また、汎用通信Ｉ／Ｆ７６２０は、例えばＰ２Ｐ（Peer  To  Peer）技術を用いて、車両の近傍に存在する端末（例えば、運転者、歩行者若しくは店舗の端末、又はＭＴＣ（Machine  Type  Communication）端末）と接続してもよい。
【０２５８】
専用通信Ｉ／Ｆ７６３０は、車両における使用を目的として策定された通信プロトコルをサポートする通信Ｉ／Ｆである。専用通信Ｉ／Ｆ７６３０は、例えば、下位レイヤのＩＥＥＥ８０２．１１ｐと上位レイヤのＩＥＥＥ１６０９との組合せであるＷＡＶＥ（Wireless  Access  in  Vehicle  Environment）、ＤＳＲＣ（Dedicated  Short  Range  Communications）、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信Ｉ／Ｆ７６３０は、典型的には、車車間（Vehicle  to  Vehicle）通信、路車間（Vehicle  to  Infrastructure）通信、車両と家との間（Vehicle  to  Home）の通信及び歩車間（Vehicle  to  Pedestrian）通信のうちの１つ以上を含む概念であるＶ２Ｘ通信を遂行する。
【０２５９】
測位部７６４０は、例えば、ＧＮＳＳ（Global  Navigation  Satellite  System）衛星からのＧＮＳＳ信号（例えば、ＧＰＳ（Global  Positioning  System）衛星からのＧＰＳ信号）を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部７６４０は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、ＰＨＳ若しくはスマートフォンといった端末から位置情報を取得してもよい。
【０２６０】
ビーコン受信部７６５０は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部７６５０の機能は、上述した専用通信Ｉ／Ｆ７６３０に含まれてもよい。
【０２６１】
車内機器Ｉ／Ｆ７６６０は、マイクロコンピュータ７６１０と車内に存在する様々な車内機器７７６０との間の接続を仲介する通信インタフェースである。車内機器Ｉ／Ｆ７６６０は、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ（Near  Field  Communication）又はＷＵＳＢ（Wireless  USB）といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器Ｉ／Ｆ７６６０は、図示しない接続端子（及び、必要であればケーブル）を介して、ＵＳＢ（Universal  Serial  Bus）、ＨＤＭＩ（登録商標）（High-Definition  Multimedia  Interface、又はＭＨＬ（Mobile  High-definition  Link）等の有線接続を確立してもよい。車内機器７７６０は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも１つを含んでいてもよい。また、車内機器７７６０は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器Ｉ／Ｆ７６６０は、これらの車内機器７７６０との間で、制御信号又はデータ信号を交換する。
【０２６２】
車載ネットワークＩ／Ｆ７６８０は、マイクロコンピュータ７６１０と通信ネットワーク７０１０との間の通信を仲介するインタフェースである。車載ネットワークＩ／Ｆ７６８０は、通信ネットワーク７０１０によりサポートされる所定のプロトコルに則して、信号等を送受信する。
【０２６３】
統合制御ユニット７６００のマイクロコンピュータ７６１０は、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０及び車載ネットワークＩ／Ｆ７６８０のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム７０００を制御する。例えば、マイクロコンピュータ７６１０は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット７１００に対して制御指令を出力してもよい。例えば、マイクロコンピュータ７６１０は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むＡＤＡＳ（Advanced  Driver  Assistance  System）の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ７６１０は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
【０２６４】
マイクロコンピュータ７６１０は、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０及び車載ネットワークＩ／Ｆ７６８０のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の３次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ７６１０は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
【０２６５】
音声画像出力部７６７０は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図２２の例では、出力装置として、オーディオスピーカ７７１０、表示部７７２０及びインストルメントパネル７７３０が例示されている。表示部７７２０は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部７７２０は、ＡＲ（Augmented  Reality）表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ７６１０が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
【０２６６】
なお、図２２に示した例において、通信ネットワーク７０１０を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム７０００が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク７０１０を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク７０１０を介して相互に検出情報を送受信してもよい。
【０２６７】
なお、図１４、図１５を用いて説明した本実施形態に係る画像処理装置１１の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
【０２６８】
以上説明した車両制御システム７０００において、画像処理装置１１は、図２２に示した応用例の統合制御ユニット７６００に適用することができる。例えば、図１４、図１５の画像処理装置１の各構成は、統合制御ユニット７６００において実現されるようにすることができる。
【０２６９】
また、図１４、図１５を用いて説明した画像処理装置１１の少なくとも一部の構成要素は、図２２に示した統合制御ユニット７６００のためのモジュール（例えば、一つのダイで構成される集積回路モジュール）において実現されてもよい。あるいは、図１４、図１５を用いて説明した画像処理装置１１が、図２２に示した車両制御システム７０００の複数の制御ユニットによって実現されてもよい。
【０２７０】
［構成の組み合わせ例］
本技術は、以下のような構成をとることもできる。
（１）
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、
それぞれの前記参照画像に射影変換を施す射影変換部と、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部と
を備える画像処理装置。
（２）
前記ステレオ画像を構成する第１の広角画像と第２の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに備え、
前記生成部は、
前記仮想球面に投影した前記第１の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成し、
前記仮想球面に投影した前記第２の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成する
前記（１）に記載の画像処理装置。
（３）
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、
補正後の光軸に関する情報を記憶する記憶部と
をさらに備える前記（１）または（２）に記載の画像処理装置。
（４）
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに備え、
前記記憶部は、前記パラメータをさらに記憶する
前記（３）に記載の画像処理装置。
（５）
前記補正部は、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定し、
前記射影変換部は、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行う
前記（４）に記載の画像処理装置。
（６）
前記補正部は、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行う
前記（３）乃至（５）のいずれかに記載の画像処理装置。
（７）
前記取得部は、２台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得する
前記（１）乃至（６）のいずれかに記載の画像処理装置。
（８）
複数の前記カメラをさらに備える
前記（１）乃至（７）のいずれかに記載の画像処理装置。
（９）
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む画像処理方法。
（１０）
コンピュータに、
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む処理を実行させるためのプログラム。
【符号の説明】
【０２７１】
１  ステレオカメラシステム，  １１  画像処理装置，  １２−１，１２−２  カメラ，  ５１取得部，  ５２  平行化処理部，  ５３  対応点探索部，  ５４  パラメータ生成部，  ５５  平行化パラメータ記憶部，  ５６  距離算出部，  ５７  後処理部，  ６１−１，６１−２  前処理部，  ７１  光軸検出部，  ７２  仮想球面投影部，  ７３  光軸補正部，  ７４  平面投影部，  ７５  射影変換部
【図１】
2019003910.tif 000009
【図２】
2019003910.tif 000010
【図３】
2019003910.tif 000011
【図４】
2019003910.tif 000012
【図５】
2019003910.tif 000013
【図６】
2019003910.tif 000014
【図７】
2019003910.tif 000015
【図８】
2019003910.tif 000016
【図９】
2019003910.tif 000017
【図１０】
2019003910.tif 000018
【図１１】
2019003910.tif 000019
【図１２】
2019003910.tif 000020
【図１３】
2019003910.tif 000021
【図１４】
2019003910.tif 000022
【図１５】
2019003910.tif 000023
【図１６】
2019003910.tif 000024
【図１７】
2019003910.tif 000025
【図１８】
2019003910.tif 000026
【図１９】
2019003910.tif 000027
【図２０】
2019003910.tif 000028
【図２１】
2019003910.tif 000029
【図２２】
2019003910.tif 000030
【図２３】
2019003910.tif 000031
【国際調査報告】
2019003910.tif 000032
2019003910.tif 000033