JPWO2019003910A1 - 画像処理装置、画像処理方法、およびプログラム - Google Patents
画像処理装置、画像処理方法、およびプログラム Download PDFInfo
- Publication number
- JPWO2019003910A1 JPWO2019003910A1 JP2019526784A JP2019526784A JPWO2019003910A1 JP WO2019003910 A1 JPWO2019003910 A1 JP WO2019003910A1 JP 2019526784 A JP2019526784 A JP 2019526784A JP 2019526784 A JP2019526784 A JP 2019526784A JP WO2019003910 A1 JPWO2019003910 A1 JP WO2019003910A1
- Authority
- JP
- Japan
- Prior art keywords
- image
- unit
- wide
- angle
- optical axis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 160
- 238000003672 processing method Methods 0.000 title claims abstract description 6
- 230000003287 optical effect Effects 0.000 claims abstract description 180
- 230000009466 transformation Effects 0.000 claims abstract description 71
- 238000012937 correction Methods 0.000 claims description 88
- 238000000034 method Methods 0.000 claims description 44
- 230000008569 process Effects 0.000 claims description 31
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000005516 engineering process Methods 0.000 abstract description 25
- 238000004891 communication Methods 0.000 description 73
- 238000001514 detection method Methods 0.000 description 57
- 238000003384 imaging method Methods 0.000 description 43
- 238000007781 pre-processing Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 23
- 238000006243 chemical reaction Methods 0.000 description 15
- 238000002674 endoscopic surgery Methods 0.000 description 15
- 238000011156 evaluation Methods 0.000 description 15
- 238000001356 surgical procedure Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000012805 post-processing Methods 0.000 description 8
- 238000010336 energy treatment Methods 0.000 description 7
- 230000033001 locomotion Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000005284 excitation Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 208000005646 Pneumoperitoneum Diseases 0.000 description 3
- 210000004204 blood vessel Anatomy 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 210000003815 abdominal wall Anatomy 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000003153 chemical reaction reagent Substances 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- MOFVSTNWEDAEEK-UHFFFAOYSA-M indocyanine green Chemical compound [Na+].[O-]S(=O)(=O)CCCCN1C2=CC=C3C=CC=CC3=C2C(C)(C)C1=CC=CC=CC=CC1=[N+](CCCCS([O-])(=O)=O)C2=CC=C(C=CC=C3)C3=C2C1(C)C MOFVSTNWEDAEEK-UHFFFAOYSA-M 0.000 description 2
- 229960004657 indocyanine green Drugs 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000001678 irradiating effect Effects 0.000 description 2
- 239000010410 layer Substances 0.000 description 2
- 238000007789 sealing Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 208000034656 Contusions Diseases 0.000 description 1
- 241000255925 Diptera Species 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 240000004050 Pentaglottis sempervirens Species 0.000 description 1
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 1
- 210000001015 abdomen Anatomy 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000000740 bleeding effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000009519 contusion Effects 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000002496 gastric effect Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000031700 light absorption Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000003595 mist Substances 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001954 sterilising effect Effects 0.000 description 1
- 238000004659 sterilization and disinfection Methods 0.000 description 1
- 239000002344 surface layer Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/08—Projecting images onto non-planar surfaces, e.g. geodetic screens
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/363—Image reproducers using image projection screens
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/302—Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Measurement Of Optical Distance (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
本技術は、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにする画像処理装置、画像処理方法、およびプログラムに関する。本技術の一側面に係る画像処理装置は、広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、それぞれの参照画像に射影変換を施し、複数の基準画像と射影変換後の複数の参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する装置である。本技術は、車載の装置に適用することができる。
Description
本技術は、画像処理装置、画像処理方法、およびプログラムに関し、特に、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにした画像処理装置、画像処理方法、およびプログラムに関する。
三次元空間に存在する物体までの距離を計測するシステムとして、2台(あるいはそれ以上の台数)のカメラによって撮影された画像から、三角測量の原理を利用して距離を計測するステレオカメラシステムがある(特許文献1)。
このようなステレオカメラシステムにおいて、複数台のカメラ間の位置関係が設計した値とずれている場合、撮影した画像に歪みが生じ、距離の計測を正確に行うことができない。そのため、撮影した画像を電子的に補正する技術として、レクティフィケーションと呼ばれる技術が開発されている(非特許文献1)。
ところで、近年の半導体技術の進歩によって、デジタルカメラで撮影可能な画像の画素数が増えてきている。そのため、魚眼レンズのような広い範囲を撮影できるレンズを取り付けたカメラ(以下、魚眼カメラという)でも十分な分解能を得ることができ、魚眼カメラを用いたステレオカメラシステムも実用的なものになっている(非特許文献2)。
魚眼カメラを用いたステレオカメラシステムにおける従来のレクティフィケーションは、画角の狭いレンズを取り付けたカメラを用いた場合のレクティケーションを拡張し、1台の魚眼カメラの画像を1枚の平面に投影することによって行われる(非特許文献3)。
「ビデオレートステレオマシンにおける カメラ幾何補正機能の実現」、 蚊野 浩、木村 茂、田中 昌也、金出 武雄、日本ロボット学会誌 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
魚眼カメラの画像を1枚の平面に投影した場合、投影される画角は、魚眼カメラの撮影範囲の一部になってしまい、レクティフィケーションを精度よく行うことができない。
本技術はこのような状況に鑑みてなされたものであり、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができるようにするものである。
本技術の一側面の画像処理装置は、広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、それぞれの前記参照画像に射影変換を施す射影変換部と、複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部とを備える。
前記ステレオ画像を構成する第1の広角画像と第2の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに設けることができる。この場合、前記生成部には、前記仮想球面に投影した前記第1の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成させ、前記仮想球面に投影した前記第2の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成させることができる。
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、補正後の光軸に関する情報を記憶する記憶部とをさらに設けることができる。
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに設けることができる。この場合、前記記憶部には、前記パラメータをさらに記憶させることができる。
前記補正部には、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定させ、前記射影変換部には、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行わせることができる。
前記補正部には、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行わせることができる。
前記取得部には、2台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得させることができる。
複数の前記カメラをさらに設けることができる。
本技術の一側面においては、広角レンズを備えた複数のカメラにより撮影されたステレオ画像が取得され、前記カメラの視野角が、互いに平行になるように補正した光軸を基準として分割される。また、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とが生成され、それぞれの前記参照画像に射影変換が施され、複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離が算出される。
本技術によれば、複数の広角カメラにより撮影されたステレオ画像のレクティフィケーションをより正確に行うことができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.第1の実施の形態
2.第2の実施の形態
3.第3の実施の形態
4.変形例
5.応用例1
6.応用例2
1.第1の実施の形態
2.第2の実施の形態
3.第3の実施の形態
4.変形例
5.応用例1
6.応用例2
<<1.第1の実施の形態>>
<1−1.ステレオカメラシステムについて>
図1は、本技術の一実施形態に係るステレオカメラシステムの構成例を示すブロック図である。
<1−1.ステレオカメラシステムについて>
図1は、本技術の一実施形態に係るステレオカメラシステムの構成例を示すブロック図である。
図1に示すステレオカメラシステム1は、画像処理装置11に対して、ステレオカメラを構成するカメラ12−1とカメラ12−2が接続されることによって構成される。
カメラ12−1とカメラ12−2は、光軸を同じ向きにして、水平方向または垂直方向に所定の間隔を空けて並べて固定されており、同じ視野角のレンズを備えている。
カメラ12−1とカメラ12−2は同じタイミングで撮影を行い、撮影された画像を出力する。カメラ12−1により撮影された画像とカメラ12−2により撮影された画像は、ステレオ画像として画像処理装置11に入力される。画像処理装置11に入力されたステレオ画像は、それに映っている物体までの距離の算出に用いられる。
図2は、画像処理装置11に入力されるステレオ画像の例を示す図である。
撮影画像p1と撮影画像p2は、魚眼レンズのような広視野角(広画角)のレンズを備えたカメラ12−1,12−2によって撮影された広角画像である。ここで、広角画像は、例えば、画角が120度以上、特には150度以上の画像をいう。
以下、カメラ12−1,12−2が、魚眼レンズを備えた魚眼カメラであるものとして説明する。魚眼レンズは画角が略180度のレンズである。2台の魚眼カメラを用いる場合について説明するが、ステレオ画像の撮影に用いられる魚眼カメラの台数は2台以上であってもよい。
図2に示すように、撮影画像p1と撮影画像p2は、周辺部分になるほど大きな歪みが生じた画像となる。撮影画像p1と撮影画像p2のそれぞれの下方には、カメラ12−1,12−2が取り付けられた自動車の車体Cが略円弧状に歪んだ状態で映っている。
すなわち、図1のステレオカメラシステム1は例えば車載用のシステムであり、物体までの距離を走行中に算出するために用いられる。算出された距離は、例えば、運転手に対して警報などの各種の情報を提示するために用いられる。
<1−2.距離算出の原理について>
図3は、物体までの距離算出の原理について示す図である。
図3は、物体までの距離算出の原理について示す図である。
ステレオカメラシステム1においては、図3に示すように2台の魚眼カメラの撮像面を平行に並べ、それらの撮像面によって撮影されたステレオ画像を用いて、対象となる物体までの距離が算出される。例えば、図3の左側に示す撮像面1はカメラ12−1の撮像面であり、右側に示す撮像面2はカメラ12−2の撮像面である。
三次元空間上の位置(X,Y,Z)にある物体点Pが、撮像面1上の点P1(x1,y1)に映り、撮像面2上の点P2(x2,y2)に映っているものとする。撮像面1の中心と撮像面2の中心の間の距離をD、魚眼レンズの焦点距離をfとすると、物体点Pまでの距離Zは、下式(1)により求められる。
距離Dと焦点距離fはステレオカメラシステム1によって定まる固定値であるので、x1,x2の値を求めることで、物体点までの距離を算出できることになる。x1,x2は2つの画像間の対応点と呼ばれ、対応点を求めることは、一般的に対応点探索と呼ばれている。また、上式(1)の右辺分母にあるx1-x2は、画像内での物体の位置のずれ量であり、視差と呼ばれている。
対応点探索は、2つの撮影画像の一方を基準画像、他方を参照画像として、基準画像内のある点が、参照画像内のどこにあるのかを探索する処理である。対応点の探索は、ブロックマッチングなどの画像処理によって行われる。
ブロックマッチングにより、基準画像内の点およびその周辺領域に最も似ている領域が、参照画像から検出される。似ているかどうかは評価式によって定量化され、評価値が最も大きい(あるいは最も小さい)領域が対応点として検出される。
ブロックマッチングの評価値としては例えば差分絶対値和がある。差分絶対値和E12は、下式(2)で表されるように、2つの画像における点P1(x1,y1),P2(x2,y2)およびその周辺領域内の輝度差を基にした評価値である。
2つの領域が似ているということは領域内の輝度値が近いということを意味する。従って、式(2)の場合、評価値E12が小さいほど信頼性が高く(似ている)、評価値E12が大きいほど信頼性が低い(似ていない)といえる。
画像処理装置11においては、ある点P1について、式(2)の値が最も小さい点P2を参照画像から探索する処理が対応点探索として行われる。撮影画像p1内の任意の画素(物体が映っている画素)に対応する画素が対応点として探索された場合、式(1)を用いて距離が算出される。
画像処理装置11においては、主に、このような対応点探索と距離の算出がステレオ画像処理として行われる。
<1−3.レクティフィケーションについて>
画像処理装置11におけるレクティフィケーション(平行化処理)について説明する。
画像処理装置11におけるレクティフィケーション(平行化処理)について説明する。
一般的に、平行化処理に用いるパラメータである平行化パラメータは、ステレオカメラシステムを構成する2台のカメラを取り付け治具に固定した時点で求められる。平行化パラメータの求め方としては下記文献1に記載の方法がある。三次元空間におけるカメラの向きを特定するためには画像上の既知の4点が分かれば良い。4点よりも多くの点を指定し、平行化処理の精度を向上させることも可能である。
文献1:コンピュータビジョン - 視覚の幾何学 - ISBN:978-4-339-02363-3 PP.83-87
文献1:コンピュータビジョン - 視覚の幾何学 - ISBN:978-4-339-02363-3 PP.83-87
ところで、ステレオカメラシステム1で用いられるカメラ12−1,12−2は魚眼カメラである。魚眼カメラによって撮影された撮影画像を1枚の平面上に直接投影して前出したような平行化処理を行うとした場合、撮影画像の一部分しか処理に用いることができないため、魚眼レンズを使用して広範囲の画像を撮影したメリットが薄れる。
図4は、カメラ12−1で撮影された広角画像の処理の例を示す図である。
斜線を付して示す広角画像W1は、カメラ12−1により撮影された撮影画像p1に相当する。カメラ12−1は略180度の範囲を撮影範囲に含むものであるので、広角画像W1は、略半天球の球面上のイメージを平面投影したものと考えられる。
そこで、画像処理装置11においては、広角画像W1が、半天球状の仮想球面S1に投影される。図4において、撮像面はXY平面にあり、撮像面の中心に三次元空間の原点が設定されている。広角画像W1の中心も三次元空間の原点に位置する。
図4に示すように、仮想球面S1は、その半径が広角画像W1の半径と同じになるようにして設定される。XY平面の垂線となるZ軸がカメラ12−1の光軸に相当し、そのZ軸が、天頂において仮想球面S1と交差する。
また、画像処理装置11においては、図5に示すように、仮想球面S1に投影された投影画像が、仮想球面S1上の複数の平面に再投影され、複数の平面画像が生成される。
図5は、1枚の広角画像W1を仮想球面S1に投影し、投影画像を3枚の平面に再投影した場合の例を示している。平面画像P11−1乃至P13−1は、例えばそれぞれの中心が仮想球面S1に接するように設定された平面に投影された画像である。
図6は、平面の設定の例を示す図である。
図6は、仮想球面と仮想球面上の複数の平面をY軸方向に見た状態を示している。この例においては、視野角全体が視野角θ11乃至θ13の3つに分割され、3つの視野角の範囲の画像の投影面となるように、3つの平面が台形状に設定されている。平面の設定はZ軸(光軸)を基準として対称になるように行われる。
例えば、平面画像P11−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ11に対応する部分を投影して生成される。平面画像P11−1は、広角画像W1全体のうちの、視野角θ11の範囲が映る画像となる。
同様に、平面画像P12−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ12に対応する部分を投影して生成される。平面画像P12−1は、広角画像W1全体のうちの、視野角θ12の範囲が映る画像となる。
平面画像P13−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ13に対応する部分を投影して生成される。平面画像P13−1は、広角画像W1全体のうちの、視野角θ13の範囲が映る画像となる。
視野角θ11,θ12,θ13は、例えば、それらの和がカメラ12−1の全視野角を包含できるように設定される。これにより、魚眼カメラで撮影された広角画像に写っている範囲全体を用いてレクティフィケーションを行うことが可能になる。
なお、ここでは、広角画像W1を仮想球面S1への投影を経て、3つの平面に再投影するものとしているが、平面画像の数は複数であれば任意である。仮想球面S1への投影を経ずに、広角画像W1から3つの平面に直接投影され、複数の平面画像が生成されるようにしてもよい。
画像処理装置11においては、図7に示すように、撮影画像p2に相当する広角画像W2についても同様の処理が施され、仮想球面S2への投影を経て、平面画像P11−2乃至P13−2が生成される。
平面画像P11−2は、広角画像W2を仮想球面S2に投影した投影画像のうちの、視野角θ11に対応する部分を投影して生成された画像である。平面画像P12−2は、広角画像W2を仮想球面S2に投影した投影画像のうちの、視野角θ12に対応する部分を投影して生成された画像である。平面画像P13−2は、広角画像W2を仮想球面S2に投影した投影画像のうちの、視野角θ13に対応する部分を投影して生成された画像である。
画像処理装置11においては、同じ視野角に従って再投影することによって生成された平面画像P11−1と平面画像P11−2、平面画像P12−1と平面画像P12−2、平面画像P13−1と平面画像P13−2の画像対毎に、平行化処理が行われる。
・光軸補正について
ところで、このように平面画像の画像対毎に独立して平行化処理を行うとした場合、平面画像の連結部分(例えば平面画像P11−1と平面画像P12−1の境界部分)に不整合が生じてしまうことがある。連結部分の不整合により、距離情報の欠落が起きてしまう。
ところで、このように平面画像の画像対毎に独立して平行化処理を行うとした場合、平面画像の連結部分(例えば平面画像P11−1と平面画像P12−1の境界部分)に不整合が生じてしまうことがある。連結部分の不整合により、距離情報の欠落が起きてしまう。
そこで、画像処理装置11においては、連結部分での不整合を生じさせないようにするために、上述したようにして複数の平面に再投影する前に、2つの魚眼カメラの光軸補正が行われる。連結部分での不整合は、例えば図8に示すように2つの魚眼カメラの光軸がずれている(平行でない)ことにより生じる。
図8の例においては、左側に示す広角画像W1の撮影に用いられたカメラ12−1の光軸(実線)と、右側に示す広角画像W2の撮影に用いられたカメラ12−2の光軸がずれている。例えば、カメラ12−1の光軸を、破線で示すように補正することにより、2つの魚眼カメラの光軸の平行が確保される。
なお、画像処理装置11における光軸補正は、電子的な処理である。補正後の光軸を設定する処理が、光軸補正の処理として行われる。
図9乃至図11を参照して、画像処理装置11における光軸補正について説明する。
図9は、カメラ12−1とカメラ12−2の光軸の例を示す図である。図9は、図7等を参照して説明したカメラ12−1とカメラ12−2の光学系の三次元空間をY軸方向から見た図である。図10、図11においても同様である。
図9において、左側の破線で示すように、カメラ12−1の光軸1は、広角画像W1が投影される撮像面1の中心に設定された垂線として表される。光軸1は、仮想球面S1の天頂を通る。撮像面1がXY平面と平行でないことから、光軸1はZ軸に対して若干傾いた状態になっている。
同様に、右側の破線で示すように、カメラ12−2の光軸2は、広角画像W2が投影される撮像面2の中心に設定された垂線として表される。光軸2は、仮想球面S2の天頂を通る。撮像面2がXY平面と平行でないことから、光軸2もZ軸に対して若干傾いた状態になっている。光軸1と光軸2は互いに平行な状態になっていない。
光軸が検出された後、図10の実線で示すように、互いに平行となる光軸が補正光軸として設定される。光軸1を補正して求められた補正光軸1は、撮像面1の中心に設定された、Z軸と平行な軸である。また、光軸2を補正して求められた補正光軸2は、撮像面2の中心に設定された、Z軸と平行な軸である。
図10にはX軸方向の補正だけが示されているが、Y軸方向、Z軸方向についても同様に補正が行われる。
このような光軸の求め方と補正については、例えば下記文献2に開示されている。
文献2:中野誠士・李仕剛・千葉則茂: 「球面モデルに基づくしま 模様パターンを用いた魚眼カメラの校正」, 電子情報通信 学会論文誌 D, Vol.J90-D, No.1, pp.73-82(2007)
文献2:中野誠士・李仕剛・千葉則茂: 「球面モデルに基づくしま 模様パターンを用いた魚眼カメラの校正」, 電子情報通信 学会論文誌 D, Vol.J90-D, No.1, pp.73-82(2007)
文献2に記載の方法では、既知のパターン(物体)を撮影し、その歪みに基づいて光軸が求められる。例えば、カメラの光軸方向に、距離を十分に離して既知の物体が配置される。ここで言う十分な距離は、2台のステレオカメラにおいて、式(1)におけるx1-x2が限りなく0に近づくぐらいの距離であればよい。
そのようにして配置された既知の物体は、光軸が平行である場合には、2台のステレオカメラの各々の仮想球面の天頂に映るはずである。既知の物体が映る仮想球面上の位置が検出され、その位置と天頂との差に相当する分だけ光軸を補正することによって、補正光軸が求められる。
このような光軸補正が、平行化パラメータの生成時に行われる。平行化パラメータの生成は、ステレオカメラシステム1の運用開始前(距離算出を実際に行う前)の所定のタイミングで行われる。補正光軸の情報は画像処理装置11に記憶され、実際の距離算出時に、補正光軸を設定するために参照される。
上述したような仮想球面上に投影した投影画像の複数の平面への再投影は、補正光軸の設定後に行われる。
図11は、投影画像の投影の例を示す図である。
図11に示すように、仮想球面上の複数の平面は、補正光軸を基準として設定される。魚眼カメラの視野角が補正光軸を基準として分割され、分割した各視野角に従って平面が設定される。
例えば図11の左側に示す平面画像P12−1の面は、XY平面と平行な面、すなわち、補正光軸1を垂線とする平面である。平面画像P11−1の面、平面画像P13−1の面についても同様に、補正光軸を基準として設定される。
図12に示すように、平面画像P11−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ11の範囲を投影して生成された画像となる。
また、平面画像P12−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ12の範囲を投影して生成された画像となる。平面画像P13−1は、広角画像W1を仮想球面S1に投影した投影画像のうちの、視野角θ13の範囲を投影して生成された画像となる。
図11の説明に戻り、広角画像W2を仮想球面S2に投影した投影画像についても、補正光軸2を基準として設定された平面に再投影され、平面画像P11−2乃至P13−2が生成される。
・射影変換について
上記のレクティフィケーションにおいて、光軸の検出精度、2つの光軸の平行化の精度、仮想球面への投影精度など、様々な処理の精度が完全であれば、レクティフィケーションは完了しているといえる。
上記のレクティフィケーションにおいて、光軸の検出精度、2つの光軸の平行化の精度、仮想球面への投影精度など、様々な処理の精度が完全であれば、レクティフィケーションは完了しているといえる。
しかしながら、それの精度には実際には誤差があり、その誤差が、複数の平面画像上において例えば台形歪みとして現れる。画像処理装置11においては、平面画像の画像対毎に、射影変換を用いた補正が施される。
式(3)、式(4)における各変数は以下の内容を表す。
x, y:変換前のX座標、Y座標
a, b, c, d, e, f, g, h:変換係数
u, v:変換後の座標
x, y:変換前のX座標、Y座標
a, b, c, d, e, f, g, h:変換係数
u, v:変換後の座標
射影変換には8つの未知のパラメータがあるので、それらのパラメータを求めるためには、平面上の4点の対応点が既知である必要がある。
広角画像W1を元にして生成された平面画像P11−1乃至P13−1をそれぞれ基準画像とし、広角画像W2を元にして生成された平面画像P11−2乃至P13−2をそれぞれ参照画像とする。
平面画像P11−1上の4点と、その4点に対応する平面画像P11−2上の4つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像P11−1と平面画像P11−2の画像対用のパラメータであり、参照画像である平面画像P11−2の射影変換に用いられる。
同様に、平面画像P12−1上の4点と、その4点に対応する平面画像P12−2上の4つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像P12−1と平面画像P12−2の画像対用のパラメータであり、参照画像である平面画像P12−2の射影変換に用いられる。
平面画像P13−1上の4点と、その4点に対応する平面画像P13−2上の4つの対応点を指定し、連立方程式を解くことによって射影変換パラメータが求められる。この射影変換パラメータは、平面画像P13−1と平面画像P13−2の画像対用のパラメータであり、参照画像である平面画像P13−2の射影変換に用いられる。
各画像上に指定される対応点は4点以上であってもよい。また、対応点の指定方法としては、管理者が手動で指定してもよいし、テストチャートのような既知のパターンを印刷したものを用い、その既知のパターンが画像処理によって自動的に認識されるようにしてもよい。画像処理によって自動的に認識された対応点から、誤った対応点や効果の低い対応点を管理者が手動で除外し、いわば半自動で指定されるようにしてもよい。
図13は、射影変換の例を示す図である。
図13のAは、基準画像である平面画像P11−1乃至P13−1を展開した例を示す図である。平面画像P11−1乃至P13−1に跨がって横長楕円形のオブジェクトOが映っているものとする。
図13のBの上段は、参照画像である平面画像P11−2乃至P13−2を展開して示す図であり、この例においてはオブジェクトOが歪んで映っている。このような歪みが、上述したような各処理の誤差によって現れる。
画像処理装置11においては、例えば、上述したような射影変換パラメータを用いた射影変換が参照画像としての平面画像P11−2乃至P13−2のそれぞれに対して施される。射影変換により、図13のBの下段に示すように、連結部分での歪みが補正されたオブジェクトOが映る平面画像P11−2乃至P13−2が得られる。
このような射影変換パラメータの算出が、平行化パラメータの生成時に行われる。平行化パラメータの生成は、ステレオカメラシステム1の運用開始前に行われる。射影変換パラメータの情報は画像処理装置11に記憶され、実際の距離算出時に、参照画像の射影変換を行うために参照される。
このように、画像処理装置11におけるレクティフィケーションは、光軸補正(補正光軸を用いた画像処理)と射影変換との2段階の処理から構成される。
これにより、魚眼カメラのような広視野角のカメラからなるステレオカメラを用いた場合であっても、レクティフィケーションをより正確に行うことが可能となる。レクティフィケーションを正確に行うことにより、距離を精度よく算出することが可能になる。
<1−4.画像処理装置の構成例>
図14は、画像処理装置11の構成例を示すブロック図である。
図14は、画像処理装置11の構成例を示すブロック図である。
図14に示すように、画像処理装置11は、取得部51、平行化処理部52、対応点探索部53、パラメータ生成部54、平行化パラメータ記憶部55、距離算出部56、および後処理部57により構成される。取得部51は、前処理部61−1と前処理部61−2から構成される。図14に示す機能部のうちの少なくとも一部は、画像処理装置11を実現するコンピュータのCPUにより所定のプログラムが実行されることによって実現される。
カメラ12−1とカメラ12−2により撮影された広角画像は取得部51に入力される。取得部51は、ステレオカメラにより撮影されたステレオ画像を取得する取得部として機能する。
取得部51の前処理部61−1は、カメラ12−1により撮影された広角画像に対して前処理を施す。例えば、魚眼レンズの収差補正などの処理が前処理として施される。前処理部61−1は、前処理を施した広角画像を平行化処理部52に出力する。
前処理部61−2も同様に、カメラ12−2により撮影された広角画像に対して前処理を施す。前処理部61−2は、前処理を施した広角画像を平行化処理部52に出力する。
平行化処理部52は、平行化パラメータの生成時、上述したようにして、カメラ12−1とカメラ12−2の補正光軸を求め、補正光軸の情報を平行化パラメータ記憶部55に記憶させる。また、平行化処理部52は、平行化パラメータの生成時、補正光軸を基準として設定した複数の平面に再投影を行うことによって生成した複数の平面画像を対応点探索部53に出力する。
平行化処理部52は、実際の距離算出時、平行化パラメータ記憶部55に記憶されている補正光軸の情報に基づいて補正光軸を設定し、補正光軸を基準として設定した複数の平面に再投影を行うことによって複数の平面画像を生成する。また、平行化処理部52は、平行化パラメータ記憶部55に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。平行化処理部52は、基準画像としての複数の平面画像と、参照画像としての射影変換後の複数の平面画像とを対応点探索部53に出力する。
対応点探索部53は、平行化パラメータの生成時、平行化処理部52から供給された平面画像の画像対毎に対応点探索を行い、対応点の情報をパラメータ生成部54に出力する。対応点探索部53においては、平面画像P11−1と平面画像P11−2、平面画像P12−1と平面画像P12−2、平面画像P13−1と平面画像P13−2の画像対毎を対象として対応点探索が行われる。
また、対応点探索部53は、実際の距離算出時、平行化処理部52から供給された平面画像の画像対毎に対応点探索を行い、対応点の情報を距離算出部56に出力する。実際の距離算出時、平行化処理部52からは、基準画像としての複数の平面画像と、参照画像としての射影変換後の複数の平面画像とが供給される。対応点探索部53においては、平面画像P11−1と射影変換後の平面画像P11−2、平面画像P12−1と射影変換後の平面画像P12−2、平面画像P13−1と射影変換後の平面画像P13−2の画像対毎を対象として対応点探索が行われる。
パラメータ生成部54は、平行化パラメータの生成時、対応点探索部53から供給された対応点の情報に基づいて、それぞれの画像対用の射影変換パラメータを生成する。パラメータ生成部54は、生成した射影変換パラメータを平行化パラメータ記憶部55に出力し、記憶させる。
平行化パラメータ記憶部55は、平行化パラメータの生成時、平行化処理部52から供給された補正光軸の情報と、パラメータ生成部54から供給された射影変換パラメータとを平行化パラメータとして記憶する。平行化パラメータ記憶部55に記憶された平行化パラメータは実際の距離算出時に読み出される。
距離算出部56は、対応点探索部53から供給された対応点の情報に基づいて上式(1)の計算を行い、対象となる物体までの距離を算出する。距離算出部56は、算出した距離情報を後処理部57に出力する。
後処理部57は、距離算出部56により算出された距離情報に基づいて後処理を行い、処理結果を出力する。例えば、距離情報を用いた物体のクラスタリングや認識処理が後処理として行われる。
図15は、平行化処理部52の構成例を示すブロック図である。
図15に示すように、平行化処理部52は、光軸検出部71、仮想球面投影部72、光軸補正部73、平面投影部74、および射影変換部75により構成される。
光軸検出部71は、前処理部61−1から供給された広角画像に基づいてカメラ12−1の光軸を検出するとともに、前処理部61−2から供給された広角画像に基づいてカメラ12−2の光軸を検出する。例えば広角画像をXY平面の原点に仮想的に配置したときのZ軸が光軸として検出される。光軸検出部71は、カメラ12−1とカメラ12−2のそれぞれの光軸の情報を仮想球面投影部72に出力する。
仮想球面投影部72は、カメラ12−1により撮影された広角画像W1に仮想球面S1を設定し、広角画像W1を仮想球面S1に投影する。また、仮想球面投影部72は、カメラ12−2により撮影された広角画像W2に仮想球面S2を設定し、広角画像W2を仮想球面S2に投影する。仮想球面S1,S2は、それぞれの天頂が光軸検出部71により検出された光軸と交差するように設定される。仮想球面投影部72は、広角画像W1の投影画像と広角画像W2の投影画像を、それぞれの仮想球面の情報とともに光軸補正部73に出力する。
光軸補正部73は、平行化パラメータの生成時、カメラ12−1とカメラ12−2の補正光軸を上述したようにして求め、補正光軸の情報を平行化パラメータ記憶部55に出力して記憶させる。また、光軸補正部73は、広角画像W1の投影画像と広角画像W2の投影画像をそれぞれの仮想球面、補正光軸の情報とともに平面投影部74に出力する。
光軸補正部73は、実際の距離算出時、平行化パラメータ記憶部55に記憶されている補正光軸の情報に基づいて補正光軸を設定する。光軸補正部73は、広角画像W1の投影画像と広角画像W2の投影画像をそれぞれの仮想球面、補正光軸の情報とともに平面投影部74に出力する。
平面投影部74は、カメラ12−1の補正光軸を基準として、仮想球面S1上に複数の平面を設定し、広角画像W1の投影画像をそれぞれの平面に再投影することによって複数の平面画像を生成する。また、平面投影部74は、カメラ12−2の補正光軸を基準として、仮想球面S2上に複数の平面を設定し、広角画像W2の投影画像をそれぞれの平面に再投影することによって複数の平面画像を生成する。平面投影部74は、広角画像に基づいて複数の平面画像を生成する生成部として機能する。
平面投影部74は、平行化パラメータの生成時、広角画像W1に基づいて生成した複数の平面画像を基準画像、広角画像W2に基づいて生成した複数の平面画像を参照画像として、それぞれ対応点探索部53に出力する。
平面投影部74は、実際の距離算出時、広角画像W1に基づいて生成した複数の平面画像を基準画像、広角画像W2に基づいて生成した複数の平面画像を参照画像として、それぞれ射影変換部75に出力する。
射影変換部75は、実際の距離算出時、平行化パラメータ記憶部55に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。射影変換部75は、複数の基準画像と、射影変換後の複数の参照画像とを対応点探索部53に出力する。
<1−5.画像処理装置の動作>
ここで、以上のような構成を有する画像処理装置11の動作について説明する。
ここで、以上のような構成を有する画像処理装置11の動作について説明する。
はじめに、図16のフローチャートを参照して、平行化パラメータを生成する画像処理装置11の処理について説明する。
図16の処理は、ステレオカメラシステム1の運用開始前の所定のタイミングで行われる。平行化パラメータの生成用に用意された既知の物体を撮影して得られたステレオ画像が画像処理装置11に入力される。平行化パラメータの生成用に用いられる既知の物体は、立体的なものであってもよいし、既知のパターンがプリントされたテストチャートなどの平面的なものであってもよい。
ステップS1において、取得部51は、カメラ12−1により撮影された広角画像とカメラ12−2により撮影された広角画像からなるステレオ画像を受信し、取得する。
ステップS2において、前処理部61−1は、カメラ12−1により撮影された広角画像に対して前処理を施す。また、前処理部61−2は、カメラ12−2により撮影された広角画像に対して前処理を施す。
ステップS3において、平行化処理部52の光軸検出部71は、前処理部61−1から供給された広角画像に基づいてカメラ12−1の光軸を検出するとともに、前処理部61−2から供給された広角画像に基づいてカメラ12−2の光軸を検出する。
ステップS4において、仮想球面投影部72は、カメラ12−1により撮影された広角画像に仮想球面S1を設定し、投影する。また、仮想球面投影部72は、カメラ12−2により撮影された広角画像に仮想球面S2を設定し、投影する。
ステップS5において、光軸補正部73は、仮想球面S1に投影された投影画像を解析することによって既知の物体の仮想球面S1上の位置を検出し、その位置と天頂との差に相当する分だけ光軸を補正することによって、カメラ12−1の補正光軸を求める。また、光軸補正部73は、仮想球面S2に投影された投影画像を解析することによって既知の物体の仮想球面S2上の位置を検出し、その位置と天頂との差に相当する分だけ光軸を補正することによって、カメラ12−2の補正光軸を求める。
ステップS6において、光軸補正部73は、カメラ12−1とカメラ12−2のそれぞれの補正光軸の情報を平行化パラメータ記憶部55に出力して記憶させる。
ステップS7において、平面投影部74は、カメラ12−1の補正光軸を基準として仮想球面S1上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の基準画像を生成する。また、平面投影部74は、カメラ12−2の補正光軸を基準として仮想球面S2上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の参照画像を生成する。
ステップS8において、対応点探索部53は、平面投影部74から供給された基準画像と参照画像の画像対毎に対応点探索を行い、対応点の情報をパラメータ生成部54に出力する。
ステップS9において、パラメータ生成部54は、対応点探索部53により探索された対応点に基づいて、それぞれの画像対用の射影変換パラメータを生成する。
ステップS10において、パラメータ生成部54は、生成した射影変換パラメータを平行化パラメータ記憶部55に出力し、記憶させる。
以上の処理により、平行化パラメータ記憶部55には、補正光軸の情報と射影変換パラメータとが平行化パラメータとして記憶される。
次に、図17のフローチャートを参照して、対象とする物体までの距離を実際に算出する画像処理装置11の処理について説明する。
図17の処理は、ステレオカメラシステム1が自動車に取り付けられた状態で、走行中などの所定のタイミングで行われる。走行時の周囲の風景を撮影して得られたステレオ画像が画像処理装置11に入力される。
なお、距離を算出する対象となる物体をどの物体とするのかは、例えば、ステレオ画像を解析することによって図示せぬ制御部により特定される。特定された物体を指定する情報は例えば対応点探索部53、距離算出部56に供給される。
ステップS31において、取得部51は、カメラ12−1により撮影された広角画像とカメラ12−2により撮影された広角画像からなるステレオ画像を受信し、取得する。
ステップS32において、前処理部61−1は、カメラ12−1により撮影された広角画像に対して前処理を施す。また、前処理部61−2は、カメラ12−2により撮影された広角画像に対して前処理を施す。
ステップS33において、平行化処理部52の光軸検出部71は、前処理部61−1から供給された広角画像に基づいてカメラ12−1の光軸を検出するとともに、前処理部61−2から供給された広角画像に基づいてカメラ12−2の光軸を検出する。
ステップS34において、仮想球面投影部72は、カメラ12−1により撮影された広角画像に仮想球面S1を設定し、投影する。また、仮想球面投影部72は、カメラ12−2により撮影された広角画像に仮想球面S2を設定し、投影する。
ステップS35において、光軸補正部73は、平行化パラメータ記憶部55に記憶されている補正光軸の情報に基づいてカメラ12−1とカメラ12−2のそれぞれの補正光軸を設定する。
ステップS36において、平面投影部74は、カメラ12−1の補正光軸を基準として仮想球面S1上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって、複数の基準画像を生成する。また、平面投影部74は、カメラ12−2の補正光軸を基準として仮想球面S2上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって、複数の参照画像を生成する。
ステップS37において、射影変換部75は、平行化パラメータ記憶部55に記憶されている射影変換パラメータに基づいて、それぞれの参照画像に対して射影変換を施す。射影変換部75は、複数の基準画像と、射影変換後の複数の参照画像とを出力する。
ステップS38において、対応点探索部53は、射影変換部75から供給された基準画像と射影変換後の参照画像の画像対毎に対応点探索を行う。
ステップS39において、距離算出部56は、対応点探索部53により探索された対応点に基づいて、対象となる物体までの距離を算出する。
ステップS40において、後処理部57は、距離算出部56により算出された距離情報に基づいて後処理を行い、処理を終了させる。
以上のような光軸補正と射影変換との2段階の処理を含むレクティフィケーションが、対象となる物体までの距離の算出毎に行われる。これにより、距離を精度よく算出することが可能になる。
<<2.第2の実施の形態>>
以上のようなレクティフィケーションの1段階目の処理として行われる光軸補正において、誤差が最も大きくなる可能性がある処理は光軸の検出(推定)である。光軸の検出に誤差があり、補正光軸を高い精度で設定できない場合、2段階目の処理として行われる射影変換での補正量が大きくなり、歪みを補正しきれなくなる可能性がある。
以上のようなレクティフィケーションの1段階目の処理として行われる光軸補正において、誤差が最も大きくなる可能性がある処理は光軸の検出(推定)である。光軸の検出に誤差があり、補正光軸を高い精度で設定できない場合、2段階目の処理として行われる射影変換での補正量が大きくなり、歪みを補正しきれなくなる可能性がある。
ここで、図18のフローチャートを参照して、平行化パラメータを生成する画像処理装置11の他の処理について説明する。1段階目の処理として行われる光軸補正が、図16を参照して説明した処理と異なる形で行われる。
図18の処理は、光軸の補正結果の評価が行われる点を除いて、図16を参照して説明した処理と同様の処理である。重複する説明については適宜省略する。
平行化パラメータの生成用に用意された既知の物体を撮影して得られたステレオ画像が画像処理装置11に入力される。ここで用意される既知の物体は、位置が固定であれば近くにあるものであってもよい。既知の物体は、仮想球面に投影したときに天頂付近だけに映るものではなく、画像全体に広く分布して映るものであってもよい。
ステップS51において、ステレオ画像が受信され、ステップS52において、ステレオ画像を構成するそれぞれの広角画像に対して前処理が施される。
ステップS53において、平行化処理部52の光軸検出部71は、カメラ12−1の光軸とカメラ12−2の光軸を検出する。
ステップS54において、仮想球面投影部72は、カメラ12−1により撮影された広角画像とカメラ12−2により撮影された広角画像をそれぞれ仮想球面に投影する。
ステップS55において、光軸補正部73は、投影画像を解析し、既知の物体の仮想球面上の位置を検出する。また、光軸補正部73は、検出した位置と、予め設定された位置(既知の物体が映るべき位置)との差に相当する分だけ光軸を補正する。
ステップS56において、平面投影部74は、補正光軸を基準として仮想球面上に複数の平面を設定し、投影画像をそれぞれの平面に再投影することによって複数の基準画像と複数の参照画像を生成する。
ステップS57において、光軸補正部73は、光軸の補正誤差が閾値以下であるか否かを判定する。
ここで、y1(i)は、ある物体点の基準画像上のy座標である。y2(i)は、同じ物体点の、参照画像上のy座標である。iは1〜nの値であり、平面画像に映っているn個の物体点の通し番号である。
光軸補正に誤差がないということは、2つの魚眼カメラに映っている同じ物体点が同じ値yを持つということであるため、値yの差が0に近い方が良い。式(5)は、ステレオカメラ間の、同一物体点のy方向の位置ずれの総和に基づく評価式となる。
ここで、x1(i)は、ある物体点の基準画像上のx座標である。x2(i)は、同じ物体点の、参照画像上のx座標である。y1(i)、y2(i)、iは、式(5)の場合と同様である。視差dは、物体点までの既知の距離から式(1)を用いて算出することができる値である。
式(6)は、式(5)と比べて、同一物体点のx方向の位置ずれをも含めて評価値を求めるものになっている。
式(5)または式(6)により求められる誤差を評価値とするのではなく、他の評価値を用いるようにしてもよい。例えば、式(5)または式(6)の誤差の総和を求める部分を、誤差の2乗の総和を求めるものとして、その式により求められた評価値や、相関演算などを用いて求められた評価値を用いるようにしてもよい。
図18の説明に戻り、光軸の補正誤差が閾値を超えているとステップS57において判定された場合、ステップS55に戻り、光軸の補正が繰り返される。繰り返し行われる光軸の補正においては、誤差に応じた補正が行われるようにしてもよいし、一定量だけずらす補正が行われるようにしてもよい。
光軸の補正誤差が閾値以下であるとステップS57において判定された場合、ステップS58以降の処理が行われる。補正誤差が閾値以下となるまで光軸の補正が繰り返されることにより、誤差の少ない光軸を、補正光軸として求めることが可能になる。
ステップS58以降の処理は、図16のステップS6以降の処理と同様である。以上の処理により、レクティフィケーションをより正確に行うことが可能になる。
<<3.第3の実施の形態>>
魚眼カメラであるカメラ12−1,12−2は広い範囲を撮影可能なカメラである。従って、ステレオカメラシステム1の取り付け方によっては取り付け先となる筺体が映り込む場合がある。
魚眼カメラであるカメラ12−1,12−2は広い範囲を撮影可能なカメラである。従って、ステレオカメラシステム1の取り付け方によっては取り付け先となる筺体が映り込む場合がある。
例えば図2のステレオ画像においては、上述したように自動車の車体Cが映っている。このようなステレオ画像を仮想球面に投影し、投影画像を複数の平面に再投影した場合、それぞれの平面画像には、車体Cが水平方向に映り込む状態になる。ここで、上述したようなレクティフィケーションを行うと、車体Cまでの距離を算出することができる。
レクティフィケーションを終えたステレオカメラシステム1を使用していると、衝撃、熱、経年変化などによる歪みにより、距離の計測を正しく行うことができなくなることがある。この場合、レクティフィケーションを再度行うことにより、そのような問題は解消される。
しかしながら、第1の実施の形態において説明した運用開始前のレクティフィケーションにおいては、光軸補正のために例えば画面全体を覆うような既知のパターンが用いられることから、専用の環境が必要となる。
そこで、再度のレクティフィケーションは、専用の環境を必要としない、第2の実施の形態において説明した方法で行われるようにしてもよい。この再度のレクティフィケーションは、例えばステレオカメラシステム1の運用開始後の所定のタイミングで行われる。
光軸の補正誤差の評価を式(5)を用いて行うことにより、レクティフィケーションのy方向のずれを解消することができるが、x方向のずれが残ってしまう恐れがある。再度のレクティフィケーションでの光軸の補正誤差の評価は、式(6)を用いて行われる。
光軸の補正誤差の評価が式(6)を用いて行われるとした場合、距離が既知の物体点が必要であるが、これは、車体Cなどの、魚眼カメラに映りこんでいる筺体までの距離を用いることが可能である。
ここで、距離が既知な物体点として車体Cを用いるとした場合、既知な物体点が、下方寄りの位置などの、平面画像の一部に集中してしまう。距離が既知の物体点については式(6)を用いて誤差を求め、距離が未知の物体点については式(5)を用いて誤差を求めるようにすることにより、画像全体で光軸の補正誤差を計測することが可能になる。
<<4.変形例>>
カメラ12−1,12−2が備えるレンズが魚眼レンズである場合について主に説明したが、魚眼レンズではない広視野角のレンズがカメラ12−1,12−2に設けられるようにしてもよい。
カメラ12−1,12−2が備えるレンズが魚眼レンズである場合について主に説明したが、魚眼レンズではない広視野角のレンズがカメラ12−1,12−2に設けられるようにしてもよい。
また、以上においては、仮想球面に投影した広角画像の再投影が、仮想球面上に設定された3つの平面に対して行われるものとしたが、補正光軸を基準として設定される4つ以上の平面に対して行われるようにしてもよい。
画像処理装置11がステレオカメラを構成するカメラ12−1とカメラ12−2とは別の装置として設けられるものとしたが、画像処理装置11がカメラ12−1とカメラ12−2を備え、これらの装置が同一筐体に設けられるようにしてもよい。
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図19は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。画像処理装置11は、図19に示すような構成を有するコンピュータにより構成される。
CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、キーボード、マウスなどよりなる入力部1006、ディスプレイ、スピーカなどよりなる出力部1007が接続される。また、入出力インタフェース1005には、ハードディスクや不揮発性のメモリなどよりなる記憶部1008、ネットワークインタフェースなどよりなる通信部1009、リムーバブルメディア1011を駆動するドライブ1010が接続される。
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを入出力インタフェース1005およびバス1004を介してRAM1003にロードして実行することにより、上述した一連の処理が行われる。
CPU1001が実行するプログラムは、例えばリムーバブルメディア1011に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部1008にインストールされる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
<<5.応用例1>>
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、内視鏡手術システムに適用されてもよい。ステレオカメラシステム1が、内視鏡手術システムの一部の構成として用いられる。
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、内視鏡手術システムに適用されてもよい。ステレオカメラシステム1が、内視鏡手術システムの一部の構成として用いられる。
図20は、本開示に係る技術が適用され得る内視鏡手術システム5000の概略的な構成の一例を示す図である。図20では、術者(医師)5067が、内視鏡手術システム5000を用いて、患者ベッド5069上の患者5071に手術を行っている様子が図示されている。図示するように、内視鏡手術システム5000は、内視鏡5001と、その他の術具5017と、内視鏡5001を支持する支持アーム装置5027と、内視鏡下手術のための各種の装置が搭載されたカート5037と、から構成される。
内視鏡手術では、腹壁を切って開腹する代わりに、トロッカ5025a〜5025dと呼ばれる筒状の開孔器具が腹壁に複数穿刺される。そして、トロッカ5025a〜5025dから、内視鏡5001の鏡筒5003や、その他の術具5017が患者5071の体腔内に挿入される。図示する例では、その他の術具5017として、気腹チューブ5019、エネルギー処置具5021及び鉗子5023が、患者5071の体腔内に挿入されている。また、エネルギー処置具5021は、高周波電流や超音波振動により、組織の切開及び剥離、又は血管の封止等を行う処置具である。ただし、図示する術具5017はあくまで一例であり、術具5017としては、例えば攝子、レトラクタ等、一般的に内視鏡下手術において用いられる各種の術具が用いられてよい。
内視鏡5001によって撮影された患者5071の体腔内の術部の画像が、表示装置5041に表示される。術者5067は、表示装置5041に表示された術部の画像をリアルタイムで見ながら、エネルギー処置具5021や鉗子5023を用いて、例えば患部を切除する等の処置を行う。なお、図示は省略しているが、気腹チューブ5019、エネルギー処置具5021及び鉗子5023は、手術中に、術者5067又は助手等によって支持される。
(支持アーム装置)
支持アーム装置5027は、ベース部5029から延伸するアーム部5031を備える。図示する例では、アーム部5031は、関節部5033a、5033b、5033c、及びリンク5035a、5035bから構成されており、アーム制御装置5045からの制御により駆動される。アーム部5031によって内視鏡5001が支持され、その位置及び姿勢が制御される。これにより、内視鏡5001の安定的な位置の固定が実現され得る。
支持アーム装置5027は、ベース部5029から延伸するアーム部5031を備える。図示する例では、アーム部5031は、関節部5033a、5033b、5033c、及びリンク5035a、5035bから構成されており、アーム制御装置5045からの制御により駆動される。アーム部5031によって内視鏡5001が支持され、その位置及び姿勢が制御される。これにより、内視鏡5001の安定的な位置の固定が実現され得る。
(内視鏡)
内視鏡5001は、先端から所定の長さの領域が患者5071の体腔内に挿入される鏡筒5003と、鏡筒5003の基端に接続されるカメラヘッド5005と、から構成される。図示する例では、硬性の鏡筒5003を有するいわゆる硬性鏡として構成される内視鏡5001を図示しているが、内視鏡5001は、軟性の鏡筒5003を有するいわゆる軟性鏡として構成されてもよい。
内視鏡5001は、先端から所定の長さの領域が患者5071の体腔内に挿入される鏡筒5003と、鏡筒5003の基端に接続されるカメラヘッド5005と、から構成される。図示する例では、硬性の鏡筒5003を有するいわゆる硬性鏡として構成される内視鏡5001を図示しているが、内視鏡5001は、軟性の鏡筒5003を有するいわゆる軟性鏡として構成されてもよい。
鏡筒5003の先端には、対物レンズが嵌め込まれた開口部が設けられている。内視鏡5001には光源装置5043が接続されており、当該光源装置5043によって生成された光が、鏡筒5003の内部に延設されるライトガイドによって当該鏡筒の先端まで導光され、対物レンズを介して患者5071の体腔内の観察対象に向かって照射される。なお、内視鏡5001は、直視鏡であってもよいし、斜視鏡又は側視鏡であってもよい。
カメラヘッド5005の内部には光学系及び撮像素子が設けられており、観察対象からの反射光(観察光)は当該光学系によって当該撮像素子に集光される。当該撮像素子によって観察光が光電変換され、観察光に対応する電気信号、すなわち観察像に対応する画像信号が生成される。当該画像信号は、RAWデータとしてカメラコントロールユニット(CCU:Camera Control Unit)5039に送信される。なお、カメラヘッド5005には、その光学系を適宜駆動させることにより、倍率及び焦点距離を調整する機能が搭載される。
なお、例えば立体視(3D表示)等に対応するために、カメラヘッド5005には撮像素子が複数設けられてもよい。この場合、鏡筒5003の内部には、当該複数の撮像素子のそれぞれに観察光を導光するために、リレー光学系が複数系統設けられる。
(カートに搭載される各種の装置)
CCU5039は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等によって構成され、内視鏡5001及び表示装置5041の動作を統括的に制御する。具体的には、CCU5039は、カメラヘッド5005から受け取った画像信号に対して、例えば現像処理(デモザイク処理)等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。CCU5039は、当該画像処理を施した画像信号を表示装置5041に提供する。また、CCU5039は、カメラヘッド5005に対して制御信号を送信し、その駆動を制御する。当該制御信号には、倍率や焦点距離等、撮像条件に関する情報が含まれ得る。
CCU5039は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等によって構成され、内視鏡5001及び表示装置5041の動作を統括的に制御する。具体的には、CCU5039は、カメラヘッド5005から受け取った画像信号に対して、例えば現像処理(デモザイク処理)等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。CCU5039は、当該画像処理を施した画像信号を表示装置5041に提供する。また、CCU5039は、カメラヘッド5005に対して制御信号を送信し、その駆動を制御する。当該制御信号には、倍率や焦点距離等、撮像条件に関する情報が含まれ得る。
表示装置5041は、CCU5039からの制御により、当該CCU5039によって画像処理が施された画像信号に基づく画像を表示する。内視鏡5001が例えば4K(水平画素数3840×垂直画素数2160)又は8K(水平画素数7680×垂直画素数4320)等の高解像度の撮影に対応したものである場合、及び/又は3D表示に対応したものである場合には、表示装置5041としては、それぞれに対応して、高解像度の表示が可能なもの、及び/又は3D表示可能なものが用いられ得る。4K又は8K等の高解像度の撮影に対応したものである場合、表示装置5041として55インチ以上のサイズのものを用いることで一層の没入感が得られる。また、用途に応じて、解像度、サイズが異なる複数の表示装置5041が設けられてもよい。
光源装置5043は、例えばLED(light emitting diode)等の光源から構成され、術部を撮影する際の照射光を内視鏡5001に供給する。
アーム制御装置5045は、例えばCPU等のプロセッサによって構成され、所定のプログラムに従って動作することにより、所定の制御方式に従って支持アーム装置5027のアーム部5031の駆動を制御する。
入力装置5047は、内視鏡手術システム5000に対する入力インタフェースである。ユーザは、入力装置5047を介して、内視鏡手術システム5000に対して各種の情報の入力や指示入力を行うことができる。例えば、ユーザは、入力装置5047を介して、患者の身体情報や、手術の術式についての情報等、手術に関する各種の情報を入力する。また、例えば、ユーザは、入力装置5047を介して、アーム部5031を駆動させる旨の指示や、内視鏡5001による撮像条件(照射光の種類、倍率及び焦点距離等)を変更する旨の指示、エネルギー処置具5021を駆動させる旨の指示等を入力する。
入力装置5047の種類は限定されず、入力装置5047は各種の公知の入力装置であってよい。入力装置5047としては、例えば、マウス、キーボード、タッチパネル、スイッチ、フットスイッチ5057及び/又はレバー等が適用され得る。入力装置5047としてタッチパネルが用いられる場合には、当該タッチパネルは表示装置5041の表示面上に設けられてもよい。
あるいは、入力装置5047は、例えばメガネ型のウェアラブルデバイスやHMD(Head Mounted Display)等の、ユーザによって装着されるデバイスであり、これらのデバイスによって検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。また、入力装置5047は、ユーザの動きを検出可能なカメラを含み、当該カメラによって撮像された映像から検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。更に、入力装置5047は、ユーザの声を収音可能なマイクロフォンを含み、当該マイクロフォンを介して音声によって各種の入力が行われる。このように、入力装置5047が非接触で各種の情報を入力可能に構成されることにより、特に清潔域に属するユーザ(例えば術者5067)が、不潔域に属する機器を非接触で操作することが可能となる。また、ユーザは、所持している術具から手を離すことなく機器を操作することが可能となるため、ユーザの利便性が向上する。
処置具制御装置5049は、組織の焼灼、切開又は血管の封止等のためのエネルギー処置具5021の駆動を制御する。気腹装置5051は、内視鏡5001による視野の確保及び術者の作業空間の確保の目的で、患者5071の体腔を膨らめるために、気腹チューブ5019を介して当該体腔内にガスを送り込む。レコーダ5053は、手術に関する各種の情報を記録可能な装置である。プリンタ5055は、手術に関する各種の情報を、テキスト、画像又はグラフ等各種の形式で印刷可能な装置である。
以下、内視鏡手術システム5000において特に特徴的な構成について、更に詳細に説明する。
(支持アーム装置)
支持アーム装置5027は、基台であるベース部5029と、ベース部5029から延伸するアーム部5031と、を備える。図示する例では、アーム部5031は、複数の関節部5033a、5033b、5033cと、関節部5033bによって連結される複数のリンク5035a、5035bと、から構成されているが、図20では、簡単のため、アーム部5031の構成を簡略化して図示している。実際には、アーム部5031が所望の自由度を有するように、関節部5033a〜5033c及びリンク5035a、5035bの形状、数及び配置、並びに関節部5033a〜5033cの回転軸の方向等が適宜設定され得る。例えば、アーム部5031は、好適に、6自由度以上の自由度を有するように構成され得る。これにより、アーム部5031の可動範囲内において内視鏡5001を自由に移動させることが可能になるため、所望の方向から内視鏡5001の鏡筒5003を患者5071の体腔内に挿入することが可能になる。
支持アーム装置5027は、基台であるベース部5029と、ベース部5029から延伸するアーム部5031と、を備える。図示する例では、アーム部5031は、複数の関節部5033a、5033b、5033cと、関節部5033bによって連結される複数のリンク5035a、5035bと、から構成されているが、図20では、簡単のため、アーム部5031の構成を簡略化して図示している。実際には、アーム部5031が所望の自由度を有するように、関節部5033a〜5033c及びリンク5035a、5035bの形状、数及び配置、並びに関節部5033a〜5033cの回転軸の方向等が適宜設定され得る。例えば、アーム部5031は、好適に、6自由度以上の自由度を有するように構成され得る。これにより、アーム部5031の可動範囲内において内視鏡5001を自由に移動させることが可能になるため、所望の方向から内視鏡5001の鏡筒5003を患者5071の体腔内に挿入することが可能になる。
関節部5033a〜5033cにはアクチュエータが設けられており、関節部5033a〜5033cは当該アクチュエータの駆動により所定の回転軸まわりに回転可能に構成されている。当該アクチュエータの駆動がアーム制御装置5045によって制御されることにより、各関節部5033a〜5033cの回転角度が制御され、アーム部5031の駆動が制御される。これにより、内視鏡5001の位置及び姿勢の制御が実現され得る。この際、アーム制御装置5045は、力制御又は位置制御等、各種の公知の制御方式によってアーム部5031の駆動を制御することができる。
例えば、術者5067が、入力装置5047(フットスイッチ5057を含む)を介して適宜操作入力を行うことにより、当該操作入力に応じてアーム制御装置5045によってアーム部5031の駆動が適宜制御され、内視鏡5001の位置及び姿勢が制御されてよい。当該制御により、アーム部5031の先端の内視鏡5001を任意の位置から任意の位置まで移動させた後、その移動後の位置で固定的に支持することができる。なお、アーム部5031は、いわゆるマスタースレイブ方式で操作されてもよい。この場合、アーム部5031は、手術室から離れた場所に設置される入力装置5047を介してユーザによって遠隔操作され得る。
また、力制御が適用される場合には、アーム制御装置5045は、ユーザからの外力を受け、その外力にならってスムーズにアーム部5031が移動するように、各関節部5033a〜5033cのアクチュエータを駆動させる、いわゆるパワーアシスト制御を行ってもよい。これにより、ユーザが直接アーム部5031に触れながらアーム部5031を移動させる際に、比較的軽い力で当該アーム部5031を移動させることができる。従って、より直感的に、より簡易な操作で内視鏡5001を移動させることが可能となり、ユーザの利便性を向上させることができる。
ここで、一般的に、内視鏡下手術では、スコピストと呼ばれる医師によって内視鏡5001が支持されていた。これに対して、支持アーム装置5027を用いることにより、人手によらずに内視鏡5001の位置をより確実に固定することが可能になるため、術部の画像を安定的に得ることができ、手術を円滑に行うことが可能になる。
なお、アーム制御装置5045は必ずしもカート5037に設けられなくてもよい。また、アーム制御装置5045は必ずしも1つの装置でなくてもよい。例えば、アーム制御装置5045は、支持アーム装置5027のアーム部5031の各関節部5033a〜5033cにそれぞれ設けられてもよく、複数のアーム制御装置5045が互いに協働することにより、アーム部5031の駆動制御が実現されてもよい。
(光源装置)
光源装置5043は、内視鏡5001に術部を撮影する際の照射光を供給する。光源装置5043は、例えばLED、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、RGBレーザ光源の組み合わせにより白色光源が構成される場合には、各色(各波長)の出力強度及び出力タイミングを高精度に制御することができるため、光源装置5043において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、RGBレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド5005の撮像素子の駆動を制御することにより、RGBそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。
光源装置5043は、内視鏡5001に術部を撮影する際の照射光を供給する。光源装置5043は、例えばLED、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、RGBレーザ光源の組み合わせにより白色光源が構成される場合には、各色(各波長)の出力強度及び出力タイミングを高精度に制御することができるため、光源装置5043において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、RGBレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド5005の撮像素子の駆動を制御することにより、RGBそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。
また、光源装置5043は、出力する光の強度を所定の時間ごとに変更するようにその駆動が制御されてもよい。その光の強度の変更のタイミングに同期してカメラヘッド5005の撮像素子の駆動を制御して時分割で画像を取得し、その画像を合成することにより、いわゆる黒つぶれ及び白とびのない高ダイナミックレンジの画像を生成することができる。
また、光源装置5043は、特殊光観察に対応した所定の波長帯域の光を供給可能に構成されてもよい。特殊光観察では、例えば、体組織における光の吸収の波長依存性を利用して、通常の観察時における照射光(すなわち、白色光)に比べて狭帯域の光を照射することにより、粘膜表層の血管等の所定の組織を高コントラストで撮影する、いわゆる狭帯域光観察(Narrow Band Imaging)が行われる。あるいは、特殊光観察では、励起光を照射することにより発生する蛍光により画像を得る蛍光観察が行われてもよい。蛍光観察では、体組織に励起光を照射し当該体組織からの蛍光を観察するもの(自家蛍光観察)、又はインドシアニングリーン(ICG)等の試薬を体組織に局注するとともに当該体組織にその試薬の蛍光波長に対応した励起光を照射し蛍光像を得るもの等が行われ得る。光源装置5043は、このような特殊光観察に対応した狭帯域光及び/又は励起光を供給可能に構成され得る。
(カメラヘッド及びCCU)
図21を参照して、内視鏡5001のカメラヘッド5005及びCCU5039の機能についてより詳細に説明する。図21は、図20に示すカメラヘッド5005及びCCU5039の機能構成の一例を示すブロック図である。
図21を参照して、内視鏡5001のカメラヘッド5005及びCCU5039の機能についてより詳細に説明する。図21は、図20に示すカメラヘッド5005及びCCU5039の機能構成の一例を示すブロック図である。
図21を参照すると、カメラヘッド5005は、その機能として、レンズユニット5007と、撮像部5009と、駆動部5011と、通信部5013と、カメラヘッド制御部5015と、を有する。また、CCU5039は、その機能として、通信部5059と、画像処理部5061と、制御部5063と、を有する。カメラヘッド5005とCCU5039とは、伝送ケーブル5065によって双方向に通信可能に接続されている。
まず、カメラヘッド5005の機能構成について説明する。レンズユニット5007は、鏡筒5003との接続部に設けられる光学系である。鏡筒5003の先端から取り込まれた観察光は、カメラヘッド5005まで導光され、当該レンズユニット5007に入射する。レンズユニット5007は、ズームレンズ及びフォーカスレンズを含む複数のレンズが組み合わされて構成される。レンズユニット5007は、撮像部5009の撮像素子の受光面上に観察光を集光するように、その光学特性が調整されている。また、ズームレンズ及びフォーカスレンズは、撮像画像の倍率及び焦点の調整のため、その光軸上の位置が移動可能に構成される。
撮像部5009は撮像素子によって構成され、レンズユニット5007の後段に配置される。レンズユニット5007を通過した観察光は、当該撮像素子の受光面に集光され、光電変換によって、観察像に対応した画像信号が生成される。撮像部5009によって生成された画像信号は、通信部5013に提供される。
撮像部5009を構成する撮像素子としては、例えばCMOS(Complementary Metal Oxide Semiconductor)タイプのイメージセンサであり、Bayer配列を有するカラー撮影可能なものが用いられる。なお、当該撮像素子としては、例えば4K以上の高解像度の画像の撮影に対応可能なものが用いられてもよい。術部の画像が高解像度で得られることにより、術者5067は、当該術部の様子をより詳細に把握することができ、手術をより円滑に進行することが可能となる。
また、撮像部5009を構成する撮像素子は、3D表示に対応する右目用及び左目用の画像信号をそれぞれ取得するための1対の撮像素子を有するように構成される。3D表示が行われることにより、術者5067は術部における生体組織の奥行きをより正確に把握することが可能になる。なお、撮像部5009が多板式で構成される場合には、各撮像素子に対応して、レンズユニット5007も複数系統設けられる。
また、撮像部5009は、必ずしもカメラヘッド5005に設けられなくてもよい。例えば、撮像部5009は、鏡筒5003の内部に、対物レンズの直後に設けられてもよい。
駆動部5011は、アクチュエータによって構成され、カメラヘッド制御部5015からの制御により、レンズユニット5007のズームレンズ及びフォーカスレンズを光軸に沿って所定の距離だけ移動させる。これにより、撮像部5009による撮像画像の倍率及び焦点が適宜調整され得る。
通信部5013は、CCU5039との間で各種の情報を送受信するための通信装置によって構成される。通信部5013は、撮像部5009から得た画像信号をRAWデータとして伝送ケーブル5065を介してCCU5039に送信する。この際、術部の撮像画像を低レイテンシで表示するために、当該画像信号は光通信によって送信されることが好ましい。手術の際には、術者5067が撮像画像によって患部の状態を観察しながら手術を行うため、より安全で確実な手術のためには、術部の動画像が可能な限りリアルタイムに表示されることが求められるからである。光通信が行われる場合には、通信部5013には、電気信号を光信号に変換する光電変換モジュールが設けられる。画像信号は当該光電変換モジュールによって光信号に変換された後、伝送ケーブル5065を介してCCU5039に送信される。
また、通信部5013は、CCU5039から、カメラヘッド5005の駆動を制御するための制御信号を受信する。当該制御信号には、例えば、撮像画像のフレームレートを指定する旨の情報、撮像時の露出値を指定する旨の情報、並びに/又は撮像画像の倍率及び焦点を指定する旨の情報等、撮像条件に関する情報が含まれる。通信部5013は、受信した制御信号をカメラヘッド制御部5015に提供する。なお、CCU5039からの制御信号も、光通信によって伝送されてもよい。この場合、通信部5013には、光信号を電気信号に変換する光電変換モジュールが設けられ、制御信号は当該光電変換モジュールによって電気信号に変換された後、カメラヘッド制御部5015に提供される。
なお、上記のフレームレートや露出値、倍率、焦点等の撮像条件は、取得された画像信号に基づいてCCU5039の制御部5063によって自動的に設定される。つまり、いわゆるAE(Auto Exposure)機能、AF(Auto Focus)機能及びAWB(Auto White Balance)機能が内視鏡5001に搭載される。
カメラヘッド制御部5015は、通信部5013を介して受信したCCU5039からの制御信号に基づいて、カメラヘッド5005の駆動を制御する。例えば、カメラヘッド制御部5015は、撮像画像のフレームレートを指定する旨の情報及び/又は撮像時の露光を指定する旨の情報に基づいて、撮像部5009の撮像素子の駆動を制御する。また、例えば、カメラヘッド制御部5015は、撮像画像の倍率及び焦点を指定する旨の情報に基づいて、駆動部5011を介してレンズユニット5007のズームレンズ及びフォーカスレンズを適宜移動させる。カメラヘッド制御部5015は、更に、鏡筒5003やカメラヘッド5005を識別するための情報を記憶する機能を備えてもよい。
なお、レンズユニット5007や撮像部5009等の構成を、気密性及び防水性が高い密閉構造内に配置することで、カメラヘッド5005について、オートクレーブ滅菌処理に対する耐性を持たせることができる。
次に、CCU5039の機能構成について説明する。通信部5059は、カメラヘッド5005との間で各種の情報を送受信するための通信装置によって構成される。通信部5059は、カメラヘッド5005から、伝送ケーブル5065を介して送信される画像信号を受信する。この際、上記のように、当該画像信号は好適に光通信によって送信され得る。この場合、光通信に対応して、通信部5059には、光信号を電気信号に変換する光電変換モジュールが設けられる。通信部5059は、電気信号に変換した画像信号を画像処理部5061に提供する。
また、通信部5059は、カメラヘッド5005に対して、カメラヘッド5005の駆動を制御するための制御信号を送信する。当該制御信号も光通信によって送信されてよい。
画像処理部5061は、カメラヘッド5005から送信されたRAWデータである画像信号に対して各種の画像処理を施す。当該画像処理としては、例えば現像処理、高画質化処理(帯域強調処理、超解像処理、NR(Noise reduction)処理及び/又は手ブレ補正処理等)、並びに/又は拡大処理(電子ズーム処理)等、各種の公知の信号処理が含まれる。また、画像処理部5061は、AE、AF及びAWBを行うための、画像信号に対する検波処理を行う。
画像処理部5061は、CPUやGPU等のプロセッサによって構成され、当該プロセッサが所定のプログラムに従って動作することにより、上述した画像処理や検波処理が行われ得る。なお、画像処理部5061が複数のGPUによって構成される場合には、画像処理部5061は、画像信号に係る情報を適宜分割し、これら複数のGPUによって並列的に画像処理を行う。
制御部5063は、内視鏡5001による術部の撮像、及びその撮像画像の表示に関する各種の制御を行う。例えば、制御部5063は、カメラヘッド5005の駆動を制御するための制御信号を生成する。この際、撮像条件がユーザによって入力されている場合には、制御部5063は、当該ユーザによる入力に基づいて制御信号を生成する。あるいは、内視鏡5001にAE機能、AF機能及びAWB機能が搭載されている場合には、制御部5063は、画像処理部5061による検波処理の結果に応じて、最適な露出値、焦点距離及びホワイトバランスを適宜算出し、制御信号を生成する。
また、制御部5063は、画像処理部5061によって画像処理が施された画像信号に基づいて、術部の画像を表示装置5041に表示させる。この際、制御部5063は、各種の画像認識技術を用いて術部画像内における各種の物体を認識する。例えば、制御部5063は、術部画像に含まれる物体のエッジの形状や色等を検出することにより、鉗子等の術具、特定の生体部位、出血、エネルギー処置具5021使用時のミスト等を認識することができる。制御部5063は、表示装置5041に術部の画像を表示させる際に、その認識結果を用いて、各種の手術支援情報を当該術部の画像に重畳表示させる。手術支援情報が重畳表示され、術者5067に提示されることにより、より安全かつ確実に手術を進めることが可能になる。
カメラヘッド5005及びCCU5039を接続する伝送ケーブル5065は、電気信号の通信に対応した電気信号ケーブル、光通信に対応した光ファイバ、又はこれらの複合ケーブルである。
ここで、図示する例では、伝送ケーブル5065を用いて有線で通信が行われていたが、カメラヘッド5005とCCU5039との間の通信は無線で行われてもよい。両者の間の通信が無線で行われる場合には、伝送ケーブル5065を手術室内に敷設する必要がなくなるため、手術室内における医療スタッフの移動が当該伝送ケーブル5065によって妨げられる事態が解消され得る。
以上、本開示に係る技術が適用され得る内視鏡手術システム5000の一例について説明した。なお、ここでは、一例として内視鏡手術システム5000について説明したが、本開示に係る技術が適用され得るシステムはかかる例に限定されない。例えば、本開示に係る技術は、検査用軟性内視鏡システムや顕微鏡手術システムに適用されてもよい。
本開示に係る技術は、以上説明した構成のうち、カメラヘッド5005に設けられたカメラが魚眼レンズを備えたステレオカメラであり、そのステレオカメラにより撮影された画像を処理する場合に好適に適用され得る。本開示に係る技術を適用することにより、対象とする物体点までの距離を正確に計測することができるため、手術をより安全にかつより確実に行うことが可能になる。
<<6.応用例2>>
また、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
また、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
図22は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図22に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図22では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
ここで、図23は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
なお、図23には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920〜7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
図22に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(登録商標)(Global System of Mobile communications)、WiMAX(登録商標)、LTE(登録商標)(Long Term Evolution)若しくはLTE−A(LTE−Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi−Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図22の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
なお、図22に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
なお、図14、図15を用いて説明した本実施形態に係る画像処理装置11の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
以上説明した車両制御システム7000において、画像処理装置11は、図22に示した応用例の統合制御ユニット7600に適用することができる。例えば、図14、図15の画像処理装置1の各構成は、統合制御ユニット7600において実現されるようにすることができる。
また、図14、図15を用いて説明した画像処理装置11の少なくとも一部の構成要素は、図22に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図14、図15を用いて説明した画像処理装置11が、図22に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
[構成の組み合わせ例]
本技術は、以下のような構成をとることもできる。
(1)
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、
それぞれの前記参照画像に射影変換を施す射影変換部と、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部と
を備える画像処理装置。
(2)
前記ステレオ画像を構成する第1の広角画像と第2の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに備え、
前記生成部は、
前記仮想球面に投影した前記第1の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成し、
前記仮想球面に投影した前記第2の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成する
前記(1)に記載の画像処理装置。
(3)
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、
補正後の光軸に関する情報を記憶する記憶部と
をさらに備える前記(1)または(2)に記載の画像処理装置。
(4)
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに備え、
前記記憶部は、前記パラメータをさらに記憶する
前記(3)に記載の画像処理装置。
(5)
前記補正部は、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定し、
前記射影変換部は、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行う
前記(4)に記載の画像処理装置。
(6)
前記補正部は、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行う
前記(3)乃至(5)のいずれかに記載の画像処理装置。
(7)
前記取得部は、2台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得する
前記(1)乃至(6)のいずれかに記載の画像処理装置。
(8)
複数の前記カメラをさらに備える
前記(1)乃至(7)のいずれかに記載の画像処理装置。
(9)
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む画像処理方法。
(10)
コンピュータに、
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む処理を実行させるためのプログラム。
本技術は、以下のような構成をとることもできる。
(1)
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、
それぞれの前記参照画像に射影変換を施す射影変換部と、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部と
を備える画像処理装置。
(2)
前記ステレオ画像を構成する第1の広角画像と第2の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに備え、
前記生成部は、
前記仮想球面に投影した前記第1の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成し、
前記仮想球面に投影した前記第2の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成する
前記(1)に記載の画像処理装置。
(3)
既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、
補正後の光軸に関する情報を記憶する記憶部と
をさらに備える前記(1)または(2)に記載の画像処理装置。
(4)
前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに備え、
前記記憶部は、前記パラメータをさらに記憶する
前記(3)に記載の画像処理装置。
(5)
前記補正部は、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定し、
前記射影変換部は、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行う
前記(4)に記載の画像処理装置。
(6)
前記補正部は、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行う
前記(3)乃至(5)のいずれかに記載の画像処理装置。
(7)
前記取得部は、2台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得する
前記(1)乃至(6)のいずれかに記載の画像処理装置。
(8)
複数の前記カメラをさらに備える
前記(1)乃至(7)のいずれかに記載の画像処理装置。
(9)
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む画像処理方法。
(10)
コンピュータに、
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む処理を実行させるためのプログラム。
1 ステレオカメラシステム, 11 画像処理装置, 12−1,12−2 カメラ, 51取得部, 52 平行化処理部, 53 対応点探索部, 54 パラメータ生成部, 55 平行化パラメータ記憶部, 56 距離算出部, 57 後処理部, 61−1,61−2 前処理部, 71 光軸検出部, 72 仮想球面投影部, 73 光軸補正部, 74 平面投影部, 75 射影変換部
Claims (10)
- 広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得する取得部と、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成する生成部と、
それぞれの前記参照画像に射影変換を施す射影変換部と、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する距離算出部と
を備える画像処理装置。 - 前記ステレオ画像を構成する第1の広角画像と第2の広角画像のそれぞれを、前記カメラの視野角を含む仮想球面に投影する投影部をさらに備え、
前記生成部は、
前記仮想球面に投影した前記第1の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記基準画像を生成し、
前記仮想球面に投影した前記第2の広角画像を、前記仮想球面上の複数の平面のそれぞれに再投影することによって複数の前記参照画像を生成する
請求項1に記載の画像処理装置。 - 既知の物体が映る前記ステレオ画像に基づいて光軸の補正を行う補正部と、
補正後の光軸に関する情報を記憶する記憶部と
をさらに備える請求項1に記載の画像処理装置。 - 前記画像対を構成する前記基準画像と前記参照画像の対応点に基づいて、射影変換に用いられるパラメータを生成するパラメータ生成部をさらに備え、
前記記憶部は、前記パラメータをさらに記憶する
請求項3に記載の画像処理装置。 - 前記補正部は、前記記憶部に記憶されている情報に基づいて、補正後の光軸を設定し、
前記射影変換部は、前記記憶部に記憶されている前記パラメータに基づいて前記参照画像の射影変換を行う
請求項4に記載の画像処理装置。 - 前記補正部は、補正誤差が閾値以下となるまで、光軸の補正を繰り返し行う
請求項3に記載の画像処理装置。 - 前記取得部は、2台の前記カメラにより撮影された広角画像を前記ステレオ画像として取得する
請求項1に記載の画像処理装置。 - 複数の前記カメラをさらに備える
請求項1に記載の画像処理装置。 - 広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む画像処理方法。 - コンピュータに、
広角レンズを備えた複数のカメラにより撮影されたステレオ画像を取得し、
前記カメラの視野角を、互いに平行になるように補正した光軸を基準として分割し、
前記ステレオ画像を構成するそれぞれの広角画像に基づいて、分割した各視野角の範囲が映る複数の基準画像と複数の参照画像とを生成し、
それぞれの前記参照画像に射影変換を施し、
複数の前記基準画像と射影変換後の複数の前記参照画像との対応する画像対に基づいて、所定の物体までの距離を算出する
ステップを含む処理を実行させるためのプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017125244 | 2017-06-27 | ||
JP2017125244 | 2017-06-27 | ||
PCT/JP2018/022523 WO2019003910A1 (ja) | 2017-06-27 | 2018-06-13 | 画像処理装置、画像処理方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019003910A1 true JPWO2019003910A1 (ja) | 2020-04-30 |
JP7131554B2 JP7131554B2 (ja) | 2022-09-06 |
Family
ID=64741558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019526784A Active JP7131554B2 (ja) | 2017-06-27 | 2018-06-13 | 画像処理装置、画像処理方法、およびプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11044463B2 (ja) |
JP (1) | JP7131554B2 (ja) |
CN (1) | CN110785789A (ja) |
DE (1) | DE112018003270T5 (ja) |
WO (1) | WO2019003910A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111612812B (zh) * | 2019-02-22 | 2023-11-03 | 富士通株式会社 | 目标物检测方法、检测装置和电子设备 |
CN111024078B (zh) * | 2019-11-05 | 2021-03-16 | 广东工业大学 | 基于gpu加速的无人机视觉slam方法 |
JP7321987B2 (ja) * | 2020-10-01 | 2023-08-07 | ダイハツ工業株式会社 | 車両用複眼カメラ |
CN112530173A (zh) * | 2020-12-03 | 2021-03-19 | 北京百度网讯科技有限公司 | 路侧感知方法、装置、电子设备、存储介质及路侧设备 |
CN115002345B (zh) * | 2022-05-13 | 2024-02-13 | 北京字节跳动网络技术有限公司 | 一种图像校正方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008102620A (ja) * | 2006-10-17 | 2008-05-01 | Toyota Motor Corp | 画像処理装置 |
JP2009139246A (ja) * | 2007-12-07 | 2009-06-25 | Honda Motor Co Ltd | 画像処理装置、画像処理方法、画像処理プログラムおよび位置検出装置並びにそれを備えた移動体 |
JP2017091284A (ja) * | 2015-11-12 | 2017-05-25 | 三菱電機株式会社 | 車両用画像処理装置および車両用画像処理システム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3167752B2 (ja) | 1991-10-22 | 2001-05-21 | 富士重工業株式会社 | 車輌用距離検出装置 |
EP1115250B1 (en) * | 1998-07-31 | 2012-06-06 | Panasonic Corporation | Method and apparatus for displaying image |
WO2012086362A1 (ja) * | 2010-12-22 | 2012-06-28 | コニカミノルタホールディングス株式会社 | 画像処理装置、そのプログラム、および画像処理方法 |
WO2017122552A1 (ja) * | 2016-01-15 | 2017-07-20 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに画像処理システム |
-
2018
- 2018-06-13 WO PCT/JP2018/022523 patent/WO2019003910A1/ja active Application Filing
- 2018-06-13 JP JP2019526784A patent/JP7131554B2/ja active Active
- 2018-06-13 US US16/623,851 patent/US11044463B2/en active Active
- 2018-06-13 DE DE112018003270.1T patent/DE112018003270T5/de not_active Withdrawn
- 2018-06-13 CN CN201880041445.0A patent/CN110785789A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008102620A (ja) * | 2006-10-17 | 2008-05-01 | Toyota Motor Corp | 画像処理装置 |
JP2009139246A (ja) * | 2007-12-07 | 2009-06-25 | Honda Motor Co Ltd | 画像処理装置、画像処理方法、画像処理プログラムおよび位置検出装置並びにそれを備えた移動体 |
JP2017091284A (ja) * | 2015-11-12 | 2017-05-25 | 三菱電機株式会社 | 車両用画像処理装置および車両用画像処理システム |
Non-Patent Citations (1)
Title |
---|
竹内 彰 外7名: "魚眼ステレオカメラを用いた全天周時系列画像からのオーロラ三次元計測", 日本機械学会論文集, vol. 82, no. 834, JPN6022029993, 31 December 2016 (2016-12-31), ISSN: 0004834089 * |
Also Published As
Publication number | Publication date |
---|---|
CN110785789A (zh) | 2020-02-11 |
JP7131554B2 (ja) | 2022-09-06 |
US20200137379A1 (en) | 2020-04-30 |
WO2019003910A1 (ja) | 2019-01-03 |
US11044463B2 (en) | 2021-06-22 |
DE112018003270T5 (de) | 2020-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7248037B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP7131554B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
WO2018135315A1 (ja) | 撮像装置、画像処理方法および画像処理システム | |
US11640071B2 (en) | Lens barrel and imaging apparatus | |
US11372200B2 (en) | Imaging device | |
WO2018150768A1 (ja) | 測光装置、測光方法、プログラムおよび撮像装置 | |
US11119633B2 (en) | Information processing device and method | |
JP7229988B2 (ja) | 測距システム、及び、受光モジュール、並びに、バンドパスフィルタの製造方法 | |
WO2018003245A1 (ja) | 信号処理装置、撮像装置、及び信号処理方法 | |
JP2020071270A (ja) | 撮像レンズおよび撮像装置 | |
CN113614603A (zh) | 成像镜头和成像设备 | |
JP7306269B2 (ja) | 制御装置と制御方法およびプログラム | |
WO2018037680A1 (ja) | 撮像装置、撮像システム、及び、信号処理方法 | |
US11482159B2 (en) | Display control device, display control method, and display control program | |
US11470295B2 (en) | Signal processing device, signal processing method, and imaging device | |
WO2019082686A1 (ja) | 撮像装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210507 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220726 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220808 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7131554 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |