各実施形態の詳細な説明に先立って、本開示における技術的な検討事項等について詳細に説明する。
ステレオ画像は、一般的に、ステレオカメラを用いて撮影することが可能である。距離の計測に適切なステレオ画像を撮影するように、例えば、ステレオカメラの物理的な配置及び各種撮影パラメータ等が調整される。
一方で、ステレオカメラにより撮影されたステレオ画像は、撮影環境に影響される。例えば、撮影環境における光学的な状況(例えば、逆光、暗所、明所、霧、もや、フレア(ハレーションの要因)等の状況、及び、光源とステレオカメラとの位置関係等)に影響されたステレオ画像から、距離の計測に用いられる視差を適切に算出することは、困難なことがある。
例えば、ステレオ画像を構成する一対の画像の内、少なくとも一方が撮影環境の影響を受けた場合、一方の画像と、他方の画像とで、画像の状態(例えば、明るさ、鮮明度、光源の映り込み、対象物への焦点、等)が異なる状況が発生し得る。この場合、そのステレオ画像を用いて、精度よく視差を算出することができない可能性があり、これにより、距離を正確に計測することができない可能性がある。また、不適切なステレオ画像を用いて距離の計測処理を実行した場合、係る処理に用いられる処理時間及び処理能力が無駄になる可能性がある。
また、ステレオ画像を撮影したタイミングとは異なるタイミングで、そのステレオ画像を用いた距離の計測処理が実行される場合がある。例えば、撮影したステレオ画像を何らかの方法(データベースやファイルシステム等)を用いて記憶しておき、その後、記憶されたステレオ画像を用いて、距離の計測処理が実行されることがある。この場合、距離の計測処理を実行した結果として、元のステレオ画像が距離の計測に適していないことが判明しても、距離の計測に適したステレオ画像を再度取得できるとは限らない。
上記のような状況から、本出願人らは、あるステレオ画像を用いた距離の計測処理を実行する前に、そのステレオ画像が、距離の計測処理に適しているか否かを判定可能な、本開示に係る技術を着想するに至った。以下において説明する本開示に係る技術は、例えば、一対のステレオ画像を取得可能な構成と、そのステレオ画像に含まれるそれぞれの画像が撮影された際の撮影環境に応じて、そのステレオ画像が距離の計測に適しているか否かを判定可能な構成と、を含んでよい。
このような本開示に係る技術によれば、例えば、比較的処理時間が長く、処理負荷が高い処理である距離の計測処理を実行することなく、あるステレオ画像の適否を判定可能である。このため、適切なステレオ画像を用いて、精度よく距離を計測することが可能となる。
また、本開示に係る技術によれば、例えば、撮影されたステレオ画像の適否を、距離の計測処理を実行する前の比較的早期の段階で判定可能である。このため、不適切なステレオ画像が撮影された場合、例えば、不適切なステレオ画像を用いて距離の計測処理が実行されることを抑制可能である。また、適切なステレオ画像を撮影しなおすことも可能である。
以下、本開示に係る技術について、具体的な実施形態を用いて更に詳細に説明する。以下の具体的な実施形態(及びその変形例)の構成は例示であり、本開示に係る技術の技術範囲は、それらには限定されない。以下の各実施形態を構成する構成要素の分割(例えば、機能的な単位による分割)は、その実施形態を実現可能な一例である。各実施形態を実現可能な構成は、以下の例示に限定されず、様々な構成が想定され得る。以下の各実施形態を構成する構成要素は、更に分割されてもよく、また、以下の各実施形態を構成する1以上の構成要素が統合されてもよい。
以下に例示する各実施形態が1以上の物理的装置、仮想的装置、及びその組合せを用いて実現される場合、1以上の構成要素が1以上の装置により実現されてもよく、1つの構成要素が複数の装置を用いて実現されてもよい。
<第1実施形態>
以下、本開示に係る技術を実現可能な第1の実施形態(第1実施形態)について説明する。以下において説明する画像処理装置は、単体の装置(物理的又は仮想的な装置)として実装されてもよく、複数の離間した装置(物理的又は仮想的な装置)を用いたシステムとして実装されてもよい。画像処理装置が、複数の装置を用いて実装される場合、各装置の間は有線、無線、又はそれらを適切に組み合わせた通信ネットワークにより通信可能に接続されてもよい。以下において説明する画像処理装置を実現可能なハードウェア構成については、後述する。
図1は、本実施形態における画像処理装置100の機能的な構成を例示するブロック図である。
図1に示すように、画像処理装置100は、適切性判定部101と、出力部102とを備える。画像処理装置100を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてよい。
画像処理装置100には、ステレオ画像が提供される。係るステレオ画像は、例えば、ステレオカメラ等により撮影された画像であってよい。以下、ステレオ画像に含まれる一対の画像を、第1画像、第2画像と記載する場合がある。
第1画像及び第2画像に撮影された対象物に関するマッチング処理(例えば、画素ごとのマッチング処理や、複数の画素を含む画素ブロックごとのマッチング等)を実行することで、視差を算出することが可能である。なお、ステレオ画像から視差を算出する方法は特に制限されず、種々の方法を採用可能である。
適切性判定部101(適切性判定手段)は、あるステレオ画像が距離の計測に適しているか否かを判定するよう構成される。
適切性判定部101は、例えば、第1画像及び第2画像を含むステレオ画像を取得し、第1画像が撮影された撮影環境と、第2画像が撮影された撮影環境と、に応じて、あるステレオ画像が、撮影された対象物との間の距離の計測に適しているか否か(ステレオ画像の適切性)を判定する。適切性判定部101は、適切性の判定に際して、例えば、第1画像及び第2画像の画素値を用いてもよく、第1画像及び第2画像から抽出された特徴量を用いてもよい。また、適切性判定部101は、例えば、あるステレオ画像の適切性を表す情報(スコア)を算出してもよい。適切性判定部101による処理のバリエーションについては、後述する。
出力部102(出力手段)は、適切性判定部101による適切性の判定結果に応じて、あるステレオ画像を用いた距離の計測を実行するか否かを制御可能に構成される。出力部102は、例えば、あるステレオ画像が距離の計測に適しているか否かを表すデータを生成してもよい。
出力部102は、例えば、あるステレオ画像が距離の計測に適している場合、当該ステレオ画像を用いた距離の計測処理が実行されるように出力を制御してもよい。一方、あるステレオ画像が距離の計測に適していない場合、出力部102は、当該ステレオ画像が不適切であることを表す警報処理(アラート処理)が実行されるよう、出力を制御してもよい。また、出力部102は、あるステレオ画像が距離の計測に適していない場合、当該ステレオ画像を用いた距離の計測処理が抑制されるように出力を制御してもよい。出力部102による処理のバリエーションについては後述する。
上記のように構成された画像処理装置100の動作について、図2に例示するフローチャートを参照して説明する。
画像処理装置100にステレオ画像が提供され、適切性判定部101は、そのステレオ画像を受けつける(ステップS201)。
適切性判定部101は、ステレオ画像の適切性を判定する(ステップS202)。適切性判定部101は、例えば、ステレオ画像に含まれる画像のうち、一方の画像(第1画像)が撮影された撮影環境と、他方の画像(第2画像)が撮影された撮影環境とに応じて、そのステレオ画像の適切性を判定してもよい。適切性判定部101は、当該ステレオ画像を用いた距離の計測処理を実行せずに(例えば、視差の算出処理等を実行する前に)、ステレオ画像に含まれる画像の適切性を判定する。
適切性判定部101は、例えば、第1画像及び第2画像を用いて、それらの画像に関する適切性を表すスコアを算出し、そのスコアに応じて、それらの画像を含むステレオ画像が距離の計測に適しているか否かを判定してもよい。
出力部102は、ステレオ画像に関する適切性の判定結果に応じて、そのステレオ画像を用いた距離の計測を実行するか否かを制御する(ステップS203−S205)。
ステップS201において受けつけたステレオ画像が距離の計測に適した画像である場合(ステップS203においてYES)、出力部102は、例えば、そのステレオ画像を用いた距離の計測が実行されるよう、適切な処理を実行してもよい。
出力部102は、例えば、そのステレオ画像が適切な画像であることを表すデータを生成してもよく、そのステレオ画像を用いて距離の計測処理を実行するよう、距離の計測処理を実行可能な他の装置等を制御してもよい。なお、この場合、出力部102は、距離の計測処理を実行可能な他の装置等にステレオ画像を提供してもよい。距離の計測処理を実行可能な他の装置は、画像処理装置100に含まれてもよく、画像処理装置100と通信可能に接続された別の装置であってもよい。
一方、ステップS201において受けつけたステレオ画像が、距離の計測に適した画像ではない場合(ステップS203においてNO)、出力部102は、例えば、そのステレオ画像を用いた距離の計測処理を抑制するよう、適切な処理を実行してもよい。
出力部102は、例えば、そのステレオ画像が不適切な画像であることを表すデータを生成してもよく、そのステレオ画像を用いた距離の計測処理が実行されないよう、距離の計測処理を実行可能な他の装置等を制御してもよい。
上記のように構成された画像処理装置100によれば、あるステレオ画像が距離の計測に適しているか否かを適切に判定することができる。その理由は、適切性判定部101が、受けつけたステレオ画像に含まれる第1画像及び第2画像の撮影環境に応じて、それらの画像の適切性を判定可能に構成されるからである。また、出力部102が、適切性判定部101による判定結果に応じて、そのステレオ画像を用いて距離の計測を実行するか否かを制御可能に構成されるからである。
これにより、画像処理装置100は、比較的処理時間が長く、処理負荷が高い処理である距離の計測処理を実行する前に、あるステレオ画像が距離の計測に適しているか否かを判定可能である。また、画像処理装置100は、不適切なステレオ画像を用いて距離の計測処理が実行されることを抑制可能であり、例えば、適切なステレオ画像を取得しなおすことも可能である。
[具体例]
以下、画像処理装置100を実現可能な具体例について説明する。
本実施形態における画像処理装置100は、図3に例示するように、画像提供装置200、距離計測装置300と通信可能に接続されていてよい。また、以下の具体例においては、図4に例示するように、ユーザインタフェースを表示可能な表示デバイスを含む表示装置400が、画像処理装置100に接続されていることを想定する。なお、表示装置400は、画像処理装置100に接続されてもよく、画像提供装置200に接続されてもよい。また、表示装置400を構成する表示デバイスは、特に限定されず、例えば液晶パネル等を適宜選択可能である。
画像提供装置200は、例えば、ステレオ画像を撮影する撮影装置である1以上のカメラ201(第1カメラ、第2カメラ)と、それらの撮影部により撮影されたステレオ画像を画像処理装置100に提供する画像提供部202とを含む。
図3に示す具体例においては、カメラ201として2台のカメラ(第1カメラ及び第2カメラ)が示されている。画像提供装置には、3台以上のカメラ201が含まれてもよい。例えば、3台以上のカメラ201により撮影された画像の内、2枚の画像を組(ペア)とすることで、ステレオ画像が生成されてもよい。以下、説明の便宜上、2台のカメラ201を用いて撮影した画像から、ステレオ画像が生成されることを想定する。
2台のカメラ201は、ステレオ画像を撮影可能な位置に適宜配置される。例えば、2台のカメラ201は、距離計測の方法に応じて、特定の方向(例えば、水平方向、垂直方向、及び、斜め方向等)に、適切な間隔で離間するよう配置されてもよい。なお、カメラ201の種類は特に限定されず、適切に選択可能である。
2台のカメラ201は、同期して画像を撮影してもよい。また、2台のカメラ201は、画像を撮影する際に、当該画像を撮影したタイミングを表す情報(例えば、時刻、カウンタ等)を生成し、画像提供部202に提供してもよい。
画像提供部202は、2台のカメラ201より撮影された画像を組(ペア)として含むステレオ画像を、画像処理装置100に提供する。画像提供部202は、例えば、2台のカメラ201により同じタイミングで撮影された画像からなるステレオ画像を生成し、画像処理装置100に提供してもよい。この際、画像提供部202は、カメラ201により撮影された画像(画像データ)に対して各種の信号処理を適用してもよい。
画像提供部202は、カメラ201における画像の撮影処理を制御可能に構成されてもよい。具体的には、画像提供部202は、例えば、カメラ201における撮影の開始、停止、撮影に関する各種設定(撮影パラメータ)の変更等を制御するよう構成されてもよい。カメラ201を制御する具体的な方法は特に限定されず、カメラ201の仕様に応じて適宜選択可能である。そのような方法として、例えば、カメラ201と画像提供部202とを各種通信路(例えば、各種シリアルバス等)を介して接続し、係る通信路を介して、画像提供部202が、カメラ201に制御コマンドを送信してもよい。
距離計測装置300は、ステレオ画像を用いて距離を計測する処理を実行する距離計測部301を含む。距離計測装置300は、例えば、画像処理装置100から距離の測定に適したステレオ画像を受けつけ、そのステレオ画像を用いて、距離の計測処理を実行するよう構成される。
距離計測部301は、例えば、画像処理装置100により、距離の計測に適切であると判定されたステレオ画像を用いて、撮影された対象物に関する第1画像と、第2画像との間の視差を算出する。距離計測部301は、算出した視差を用いて、三角測量の原理を応用して、ステレオ画像に撮影された対象物に対する距離を算出する。ステレオ画像を用いた距離の算出方法は、特段限定されず、適切な方法を適宜採用可能である。そのような方法の一つの具体例として、例えば、特許文献1、特許文献2、又はその他の周知技術を採用することも可能であるが、本実施形態はこれには限定されない。
なお、図5に例示するように、距離計測装置300を画像処理装置100と別に設けることなく、距離計測部301が、画像処理装置100に含まれてもよい。
出力部102は、あるステレオ画像に関する適切性の判定結果に応じて、例えば、そのステレオ画像が距離の計測に適しているか否かを提示する処理を実行するよう構成されてよい。具体的には、出力部102は、例えば、あるステレオ画像が距離の計測に適しているか否かを提示するよう、表示装置400を制御してもよい。また、出力部102は、あるステレオ画像に関する適切性の判定結果に応じて、その画像を用いた距離の計測処理を抑制してもよい。
出力部102は、また、あるステレオ画像が距離の計測に不適切である場合には、その旨を提示する各種のアラート(警報)処理を実行してもよい。アラートの提示方法は特に限定されず、適切に選択されてよい。アラートの提示方法の一例として、出力部102は、各種の表示画面に適切な文字、記号、図形、標章等を組み合わせたアラート画面を表示するよう、表示部400を制御してもよい。出力部102は、適切性判定部101において算出されたスコアを、アラート画面等を介してユーザに提示するよう、表示部400を制御してもよい。また、出力部102は、警報音など、画面表示とは異なる方法によりアラートを通知してもよい。
以下、適切性判定部101により実行される、あるステレオ画像の適切性を判定する処理の具体例について説明する。
〔第1の判定処理〕
適切性判定部101は、第1の判定処理として、画像提供装置200から提供されたステレオ画像に関するヒストグラムを用いて、そのステレオ画像の適切性を判定してもよい。以下、第1の判定処理について、図6に示す説明図を用いて説明する。
図6においては、説明の便宜上、ステレオ画像Aが画像提供装置200から提供された場合の具体例と、ステレオ画像Bが画像提供装置200から提供された場合の具体例とが、併記されている。ステレオ画像Aと、ステレオ画像Bとは、異なるタイミングで撮影された異なるステレオ画像である。
以下、ステレオ画像Aは、撮影環境が良好な状況で撮影されたステレオ画像であることを想定する。ステレオ画像Bは、少なくとも一方のカメラ201より撮影された画像が、撮影環境が不良な状況で撮影された画像であることを想定する。図6に示す具体例の場合、例えば、ステレオ画像Bのうち、一方の第2画像Bが、逆光状態で撮影された画像であることを想定する。
第1の判定処理を実行する場合、適切性判定部101は、例えば、図6に示すように、ヒストグラム算出処理(S601)と、類似性判定処理(S602)と、適切性判定処理(S603)と、を実行することが可能である。なお、図6に示す処理の分割は、一つの具体例であり、各処理が更に分割されてもよく、複数の処理が統合されてもよい。
ヒストグラム算出処理S601は、画像提供装置200から受けつけたステレオ画像に関する画素値のヒストグラムを算出する処理である。適切性判定部101は、例えば、ステレオ画像に含まれる第1画像及び第2画像について、各画素の輝度値のヒストグラムを算出してもよく、各画素のカラーヒストグラムを算出してもよい。ヒストグラムを算出する具体的な方法は特に限定されず、適切に選択されてよい。係るヒストグラムは、第1画像及び第2画像の特徴を表す特徴量であると考えられる。以下、第1画像を表す特徴量を第1特徴量と記載し、第2画像を表す特徴量を第2特徴量と記載することがある。
図6に示す具体例の場合、ステレオ画像Aに含まれる第1画像A、第2画像Aから、第1ヒストグラムA、第2ヒストグラムAが生成される。また、ステレオ画像Bに含まれる第1画像B、第2画像Bから、第1ヒストグラムB、第2ヒストグラムBが生成される。
類似性判定処理S602は、ヒストグラム算出処理S601により生成された第1画像のヒストグラムと、第2画像のヒストグラムとの間の類似性(第1画像のヒストグラムと、第2画像のヒストグラムとが類似している程度)を判定する処理である。第1画像のヒストグラムと、第2画像のヒストグラムとの類似性は、第1画像が撮影された撮影環境と、第2画像が撮影された撮影環境との類似性を表すとも考えられる。
適切性判定部101は、類似性判定処理S602において、第1画像のヒストグラムと、第2画像のヒストグラムとの類似度を表すスコアを算出する。
類似性判定処理S602において、スコアを算出する方法は特に限定されることなく、適切な方法を選択可能である。スコアを算出する方法の一つとして、例えば、ヒストグラムインターセクション法(Histogram Intersection)を採用してもよい(下記参考文献1)。
ヒストグラムインターセクション法は、2つのヒストグラムの類似度を表すスコア値を算出可能な方法である。スコア値は、例えば、(0.0−1.0)の間の値であり、2つのヒストグラムが類似している程、大きなスコア値が算出される。2つのヒストグラムが完全に一致する場合、スコア値が1.0となる。算出されるスコア値は、第1画像のヒストグラムと、第2画像のヒストグラムとの差分(差異の程度)を表すとも考えられる。
(参考文献1)M.J.Swain等、”Color Indexing”、 International Journal of Computer Vision、 Vol.7−1、pp.11−32、1991.
図6に示す具体例の場合、ステレオ画像Aから生成された第1ヒストグラムAと、第2ヒストグラムAとは、比較的類似した形状である。適切性判定部101は、例えば、類似性判定処理S602において、第1ヒストグラムAと、第2ヒストグラムAとの間の類似度を表すスコア値を”0.9”と算出する。一方、上記したように、第2画像Bは、逆光(光源が画像に移り込んでいる)状態で撮影された画像であり、第1ヒストグラムBと、第2ヒストグラムBとは非類似である。適切性判定部101は、例えば、類似性判定処理S602において、第1ヒストグラムBと、第2ヒストグラムBとの間の類似度を表すスコアスコア値を”0.4”と算出する。
適切性判定処理S603は、類似性判定処理S602において算出されたスコアに応じて、画像提供装置200から提供されたステレオ画像が、距離の計測に適しているか否かを判定する処理である。具体的には、適切性判定部101は、類似性判定処理S602により算出されたスコアと、ある特定の閾値(第1閾値)とを比較した結果に応じて、あるステレオ画像が距離の計測に適しているか否かを判定する。係る第1閾値は、予め画像処理装置100に設定されていてもよく、画像処理装置のユーザ等により適宜設定されてもよい。図6に示す具体例の場合、第1閾値の具体例として”0.8”が設定されている。
適切性判定処理S603において、適切性判定部101は、例えば、あるステレオ画像から算出されたスコア値が第1閾値以上であれば、当該ステレオ画像が、距離の計測に適していると判定する。一方、適切性判定部101は、例えば、あるステレオ画像から算出されたスコア値が第1閾値未満であれば、当該ステレオ画像が、距離の計測に適していないと判定する。図6に示す具体例の場合、ステレオ画像Aから算出されたスコア(”0.9”)は、第1閾値(”0.8”)以上である。これより、適切性判定部101は、ステレオ画像Aについて、距離の計測に適していると判定する。一方、ステレオ画像Bから算出されたスコア(”0.4”)は、第1閾値(”0.8”)未満である。これより、適切性判定部101は、ステレオ画像Bについて、距離の計測に適していないと判定する。この場合、適切性判定部101は、第1画像のヒストグラムと、第2画像のヒストグラムとの差分(即ち、第1画像の特徴量と、第2画像の特徴量との差分)に基づいて、それらの画像を含むステレオ画像が、距離の計測に適しているか否かを判定する、とも考えられる。適切性判定部101は、判定結果を出力部102に提供する。
出力部102は、適切性判定部101から提供された判定結果に応じて、ステレオ画像A、ステレオ画像Bについて、距離の計測を実行するか否かを制御する。
図6に示す具体例の場合、ステレオ画像Aは、適切性判定部101により、距離の計測に適していると判定されている。このため、出力部102は、ステレオ画像Aを用いて距離の計測を実行するよう、距離計測装置300に通知してもよい。この際、出力部102は、ステレオ画像Aを距離計測装置300に提供してもよい。
一方、ステレオ画像Bは、適切性判定部101により、距離の計測に適していないと判定されている。このため、出力部102は、ステレオ画像Bが不適切な画像であることを表すアラート処理を実行してもよい。この際、出力部102は、ステレオ画像Bを用いた距離の計測処理を抑制してもよい。
〔第2の判定処理〕
適切性判定部101は、第2の判定処理として、パターン認識技術を用いて、あるステレオ画像が距離の計測に適しているか否かを判定してもよい。
適切性判定部101が用いるパターン認識技術は、特に限定されず、適切に選択可能である。そのようなパターン認識技術の具体例として、例えば、SVM(Support Vector Machine)、一般化学習ベクトル量子化(GLVQ:Generalized Learning Vectro Quantization”)、多層ニューラルネットワーク(NN:Newral Network)等が採用されてもよい。以下、説明の便宜上、これらのパターン認識技術を具体例として用いて、適切性判定部101における処理について説明する。
(参考文献2):R.O.Duda、P.E.Hart、D.G.Stork、”パターン識別”、新技術コミュニケーションズ、2001年、p.256−257.
(参考文献3):佐藤 敦、”一般化学習ベクトル量子化による画像認識”、精密工学会誌、Vol.83(2017)No.4、p.335−340.
(参考文献4):岡谷貴之、”深層学習”、講談社、2015年4月、p.23−53、79−110
これらのパターン認識技術が用いられる場合、まず、学習フェーズにおいて、学習データを用いたモデル(適切性判定モデル)の学習処理が実行される。そして、運用フェーズ(評価フェーズ)において、学習済みモデルを用いて、評価データ(本実施形態の場合は、画像提供装置200から提供されるステレオ画像)が評価される。
以下、学習フェーズの概要を説明する。なお、以下の説明は一例であり、採用するパターン認識技術に応じて、適切な処理が適宜実行されてよい。以下においては、説明の便宜上、モデルの作成者が、別途学習フェーズを実行することを想定する。
本実施形態の場合、適切性モデルの作成者が、学習データとして用いられるステレオ画像を用意する。適切性モデルの作成者は、距離の計測に適したステレオ画像と、距離の計測に適さないステレオ画像とを、予め収集することで、学習データを作成してもよい。
一例として、適切性モデルの作成者は、対象物との間の距離が既知であるステレオ画像を複数用意してもよい。適切性モデルの作成者は、それらのステレオ画像を距離計測装置300に供給して距離を算出し、正しい距離が算出されたステレオ画像を、距離の計測に適したステレオ画像の学習データとしてもよい。また、正しい距離が算出されなかったステレオ画像を、距離の計測に不適切なステレオ画像の学習データとしてもよい。
モデルの作成者は、用意した学習データに含まれる、距離の算出に適したステレオ画像を構成する画像の少なくとも一方について、その画像が適切であることを示すラベル(教師ラベル)を付与する。
また、モデルの作成者は、用意した学習データに含まれる、距離の算出に適さないステレオ画像を構成する画像の少なくとも一方について、その画像が不適切であることを示すラベルを付与してもよい。
この処理により、距離の算出に適切か否かを表す教師ラベル付きの学習データが得られる。なお、上記学習データを作成する段階においては、あるステレオ画像を用いて適切な距離が算出されたか否かが、人手により判定されてもよく。他の周知の技術を用いて判定されてもよい。
モデル作成者は、元の画像から適切な方法を用いて特徴量を抽出し、その特徴量に対して上記各ラベルを付与することで、学習データを作成してもよい。学習データとして用いられる特徴量の種類は特に限定されず、適宜選択可能である。そのような特徴量として、例えば、輝度ヒストグラム、HOG(Histograms of Oriented Gradients)特徴量、NNを用いた自己符号化器による特徴量等が用いられてもよい。
モデル作成者は、例えば、上記のように生成された教師ラベル付きの学習データを用いて、ある画像が距離の計測に適切か否かを判定可能なモデルを生成する。係るモデルは、例えば、あるステレオ画像が撮影された撮影環境と、距離の算出に適切な学習データセットに含まれる画像が撮影された撮影環境との間の類似性を判定可能なモデルであってもよい。より具体的には、係るモデルは、例えば、あるステレオ画像が、距離の算出に適切な撮影環境における画像(学習データセット)を含むクラス(カテゴリ)に分類されるか、距離の算出に不適切な撮影環境における画像(学習データセット)を含むクラス(カテゴリ)分類されるか、を判定可能なモデルであってもよい。
以下、距離の計測に適した画像の撮影環境を表すカテゴリを、単に距離の計測に適した画像のカテゴリと記載することがある。また、距離の計測に不適切な画像の撮影環境を表すカテゴリを、単に距離の計測に不適切な画像のカテゴリと記載することがある。
例えば、パターン認識技術としてSVMを用いる場合、係るモデルは、距離の計測に適した画像のカテゴリと、距離の計測に不適切な画像のカテゴリとを識別可能な評価関数(識別平面)を含んでもよい。これにより、例えば、評価関数が表す識別平面と、評価データとしての画像(又は画像から抽出された特徴量)との間の距離に応じて、その画像の適切性を表すスコアを算出することができる。
例えば、パターン認識技術として、GLVQを用いる場合、モデル作成者は、教師ラベル付きの学習データを用いて、距離の計測に適切な画像を表すカテゴリの参照ベクトルと、距離の計測に不適切な画像を表すカテゴリの参照ベクトルと、を含むモデルを生成することができる。係るモデルは、例えば、それぞれのカテゴリを表す参照ベクトルと、ある評価データ(画像)との間の距離に応じて、評価データが含まれるカテゴリを識別する評価関数を含んでもよい。これにより、あるカテゴリを表す参照ベクトルと、ある画像(又は画像から抽出された特徴量)との間の距離に応じて、その画像の適切性を表すスコアを算出することができる。
例えば、パターン認識技術として多層NNを用いる場合、モデル作成者は、ある画像が、距離の計測に適切な画像を表すカテゴリに属する確率、及び、距離の計測に不適切な画像を表すカテゴリに属する確率を出力するように、多層NNの出力層を構成してもよい。この場合、係るモデルは、例えば、ある評価データがそれぞれのカテゴリに属する確率に応じて、評価データが含まれるカテゴリを識別可能な評価関数を含んでもよい。これにより、学習済みの多層NNに、評価データとしての画像(又は画像から抽出した特徴量)を入力した際の出力層の出力から、その画像の適切性を表すスコアを算出することができる。
以下、適切性判定部101が、上記のように作成された学習済みモデルを用いて、画像提供装置200から受けつけたステレオ画像の適切性を判定する処理について、図7に示す具体例を参照して説明する。
第2の判定処理を実行する場合、適切性判定部101は、例えば、図7に示すように、特徴量抽出処理(S701)と、スコア算出処理(S702)と、適切性判定処理(S703)と、を実行するよう構成されてもよい。なお、図7に示す処理の分割は、一つの具体例であり、各処理が更に分割されてもよく、複数の処理が統合されてもよい。
特徴量抽出処理S701は、画像提供装置200から受けつけたステレオ画像から、特徴量を抽出する処理である。適切性判定部101は、例えば、上記したパターン認識技術に適した特徴量を抽出し、抽出した特徴量を表す特徴ベクトルを作成してもよい。画像から特徴量を抽出する具体的な処理方法は特に限定されず、上記した周知技術を含め、適宜選択されてよい。
スコア算出処理S702は、学習データにより学習された学習済みモデルを用いて、あるステレオ画像が、距離の計測に適しているか否かを表すスコアを算出する処理である。具体的には、適切性判定部101は、例えば、特徴量抽出処理S701により抽出された特徴量に対して、学習済みモデルを用いた評価を実行することにより、その特徴量に関するスコアを算出する。
例えば、パターン認識技術としてSVMが用いられる場合、適切性判定部101は、特徴量抽出処理S701により得られた特徴量を入力した際の評価関数の出力を、スコアとしてもよい。この場合、スコアは、例えば、ある特徴量と、評価関数が表す識別平面との間の距離を表してもよい。
例えば、パターン認識技術としてGLVQが用いられる場合、適切性判定部101は、特徴量抽出処理S701により得られた特徴量を入力した際の評価関数の出力を、スコアとしてもよい。この場合、スコアは、例えば、ある特徴量と、距離の計測に適切な画像を表すカテゴリの参照ベクトルとの間の距離を表してもよい。ある特徴量と、距離の計測に適切な画像を表すカテゴリの参照ベクトルとの間の距離の逆数をスコアとしてもよい。これにより、ある特徴量と、GLVQの参照ベクトルとの間の距離が短いほど、スコアが大きくなる。
例えば、パターン認識技術として多層NNが用いられる場合、適切性判定部101は、特徴量抽出処理S701により得られた特徴量を入力した際の、多層NNの出力を、スコアとしてもよい。
適切性判定処理S703は、あるステレオ画像に含まれる画像に対して、スコア算出処理S702により算出されたスコアに応じて、そのステレオ画像が距離の計測に適しているか否かを判定する処理である。適切性判定部101は、例えば、特定の閾値(第2閾値)と、スコア算出処理S702において算出されたスコアとを比較した結果に応じて、あるステレオ画像が距離の計測に適しているか否かを判定してもよい。第2閾値は、予め画像処理装置100に設定されてもよく、画像処理装置100のユーザにより適宜設定されてもよい。
例えば、パターン認識技術としてSVMが用いられる場合を想定する。この場合、適切性判定部101は、例えば、あるステレオ画像に含まれる画像に対して算出されたスコアが、第2閾値以上であれば、そのステレオ画像が、距離の計測に適した撮影環境における画像であると判定する。この場合、例えば、画像から抽出された特徴量と、識別平面との間の距離が第2閾値以上であれば、そのステレオ画像が、距離の計測に適した撮影環境における画像であると判定される。一方、そのスコアが、第2閾値未満である場合、そのステレオ画像が距離の計測に適していないと判定してもよい。
例えば、パターン認識技術としてGLVQが用いられる場合を想定する。この場合、適切性判定部101は、例えば、あるステレオ画像に含まれる画像に対して算出されたスコアが、第2閾値以上であれば、そのステレオ画像が距離の計測に適した撮影環境における画像であると判定する。この場合、例えば、画像から抽出された特徴量と、距離の計測に適切な画像を表すカテゴリの参照ベクトルとの間の距離の逆数が第2閾値以上であれば、そのステレオ画像が、距離の計測に適した撮影環境における画像であると判定される。一方、そのスコアが、第2閾値未満である場合、そのステレオ画像が距離の計測に適していないと判定してもよい。
例えば、パターン認識技術として多層NNが用いられる場合を想定する。この場合、適切性判定部101は、あるステレオ画像に含まれる画像に対して、距離の計測に適切な画像を表すカテゴリに相当するユニットからの出力値が第2閾値以上であれば、そのステレオ画像が距離の計測に適した撮影環境における画像であると判定する。一方、そのスコアが、第2閾値未満である場合、そのステレオ画像が距離の計測に適していないと判定してもよい。
上記したような処理により、適切性判定部101は、あるステレオ画像が、距離の計測に適した撮影環境において撮影された画像として分類されるか否か(即ち、係るステレオ画像が距離の計測に適しているか否か)判定可能である。
上記のバリエーションとして、適切性判定部101は、例えば、あるステレオ画像に含まれる第1画像及び第2画像に関して算出されたスコアと、それらのスコア間の差異(差分)と、に応じて、そのステレオ画像の適切性を判定してもよい。この場合、適切性判定部101は、例えば、第1画像及び第2画像に関して算出されたスコアが、それぞれ第2閾値以上であり、かつ、それらのスコアの差分が、ある特定の閾値以下である場合、そのステレオ画像が距離の計測に適していると判定してもよい。例えば、第1画像及び第2画像に関して算出されたスコアが、それぞれ第2閾値以上であれば、第1画像及び第2画像が、距離の計測に適切な画像を表すカテゴリに属すると考えられる。また、第1画像と第2画像との類似性が高い場合、それらから算出されるスコアは近い値になると考えられる。これにより、適切性判定部101は、あるステレオ画像に関する適切性を、より精度よく判定することが可能である。
適切性判定部101は、判定結果を出力部102に提供する。
出力部102は、適切性判定部101から提供された判定結果に応じて、あるステレオ画像を用いて距離の計測を実行するか否かを制御する。あるステレオ画像が距離の計測に適切であると判定された場合、出力部102は、距離計測装置300に、そのステレオ画像を用いて距離の計測処理を実行するよう通知してもよい。あるステレオ画像が距離の計測に適切ではないと判定された場合、出力部102は、そのステレオ画像が不適切であることを提示するアラート処理を実行してもよい。また、出力部102は、そのステレオ画像を用いた距離の計測処理を抑制してもよい。
なお、上記いずれのパターン認識技術を用いた場合であっても、学習済みのモデルを用いたスコアの算出に要する処理時間は比較的短く、また処理負荷は比較的低い。このため、画像処理装置100に、学習済みのモデルを予め提供することにより、適切性判定部101は、高い処理能力を要することなく、比較的短時間で、あるステレオ画像が距離の計測に適しているか否かを判定可能である。
〔第3の判定処理〕
適切性判定部101は、第3の判定処理として、ステレオ画像に含まれる画像の特徴点を用いて、そのステレオ画像が距離の計測に適しているか否かを判定してもよい。特徴点を検出する方法は特に限定されず、適切に選択されてよい。
一つの具体例として、適切性判定部101は、画像提供装置200から提供されたステレオ画像に含まれる各画像に対して、SIFT(Scale−Invariant Feature Transform)による特徴点と、その特徴量とを算出してもよい。SIFTは、画像に含まれる特徴点を検出し、その特徴量を記述することが可能である。SIFTによる特徴量は、画像の回転、スケール変化、照明変化等に頑強である(参考文献5)。以下、SIFTにより検出された特徴点をSIFT特徴点と記載し、その特徴量をSIFT特徴量と記載する。
(参考文献5):David G.Lowe、”Distinctive image features from scale−inv ariant keypoints”、International Journal of Computer Vision、60(2)、2004年、p.91−110.
以下、SIFT特徴点を用いる場合の第3の判定処理について、図8に示す説明図を用いて説明する。
SIFT特徴点検出処理S801は、SIFTアルゴリズムを用いて、画像提供装置200から提供されたステレオ画像に含まれる各画像から特徴点を検出し、その特徴点を記述する特徴量を生成する処理である。適切性判定部101は、上記参考文献5に記載された方法を用いて、SIFT特徴点を検出し、SIFT特徴量を生成することが可能である。
スコア算出処理S802は、SIFT特徴点検出処理S801により生成された、SIFT特徴点を及びSIFT特徴量から、スコアを算出する処理である。スコア算出処理S802は、例えば、各画像に含まれるSIFT特徴点の類似性(一致度)に応じてスコア(後述)を算出してもよく、各画像に含まれるSIFT特徴点の個数に応じてスコアを算出してもよい。
具体的には、適切性判定部101は、例えば、ステレオ画像に含まれる2つの画像(第1画像、第2画像)から抽出された各SIFT特徴点の特徴量を比較することで、それぞれの画像において、対応するSIFT特徴点の組(ペア)を特定する。この際、適切性判定部101は、例えば、第1画像に含まれる、あるSIFT特徴点を表す特徴量と、第2画像に含まれる各SIFT特徴点を表す特徴量との間のユークリッド距離に基づいて、第1画像に含まれるSIFT特徴点と、第2画像に含まれるSIFT特徴点との組(ペア)を特定してもよい。第1画像及び第2画像において、対応する特徴点の組を、特徴点ペアと記載する場合がある。
適切性判定部101は、例えば、第1画像における1以上のSIFT特徴点と、それらに対応する、第2画像におけるSIFT特徴点との間の距離(具体的には、特徴点ペア間の距離)の和を、特徴点の一致度を表すスコアとして算出してもよい。また、適切性判定部101は、例えば、第1画像における各SIFT特徴点と、それらに対応する、第2画像における各SIFT特徴点との間の距離の総和(全特徴点ペア間の距離の総和)を、特徴点の一致度を表すスコアとして算出してもよい。この場合、特徴点ペア間の距離が短いほど、第1画像に撮影された対象物と、第2画像に撮影された対象物との間の対応関係が適切に特定されていることを表す。
例えば、第1画像に関する撮影環境と、第2画像に関する撮影環境とが類似していない場合、これらの画像から適切な特徴点ペアを特定できない可能性がある。この場合、特徴点間の距離が大きく(遠く)なると考えられる。これより、特徴点間の一致度を表す距離が短いほど、第1画像に関する撮影環境と、第2画像に関する撮影環境とが、比較的類似していると考えられる。
なお、適切性判定部101は、特徴点間の距離に反比例する関数を用いて、特徴点の一致度を表すスコアを算出してもよい。この場合、係る関数として、下式(1)に示す反比例関数が用いられてもよい。
式(1)において、Yは一致度を表し、Rは特徴点間の距離を表す。式(1)によりスコアが算出される場合、特徴点ペア間の距離が短いほど、第1画像に撮影された対象物と、第2画像に撮影された対象物との間の対応関係が適切に特定されていることを表す。式(1)を用いる場合、特徴点ペア間の距離が短いほど、スコアが大きくなる。
適切性判定部101は、また、ペアを構成する特徴点間の距離が特定の閾値(第3閾値)以下である特徴点ペアの個数を、スコアとして算出してもよい。この場合、係るスコアが大きいほど、第1画像に撮影された対象物と、第2画像に撮影された対象物との間の対応関係が適切に特定されていることを表す。
上記したように、例えば、第1画像に関する撮影環境と、第2画像に関する撮影環境とが類似していない場合、これらの画像から適切な特徴点ペアを特定できない可能性がある。この場合、特徴点間の距離が特定の閾値以下である特徴点ペアの個数は、比較的少なくなると考えられる。このため、特徴点間の距離が特定の閾値以下である特徴点ペアの個数を表すスコアが大きいほど、第1画像に関する撮影環境と、第2画像に関する撮影環境とが、比較的類似していると考えられる。
適切性判定処理S803は、あるステレオ画像に含まれる画像に対して、スコア算出処理S802により算出されたスコアに応じて、そのステレオ画像が距離の計測に適しているか否かを判定する処理である。適切性判定部101は、例えば、特定の閾値(第4閾値)と、スコア算出処理S802において算出されたスコアとを比較した結果に応じて、あるステレオ画像が距離の計測に適しているか否かを判定してもよい。第4閾値は、予め画像処理装置100に設定されてもよく、画像処理装置100のユーザにより適宜設定されてもよい。
例えば、スコア算出処理S802において、各画像に含まれるSIFT特徴量間の距離に反比例する関数を用いて特徴点の一致度を表すスコアが算出された場合を想定する。この場合、適切性判定部101は、例えば、あるステレオ画像について算出されたスコアが第4閾値以上であれば、当該ステレオ画像は距離の計測に適していると判定してよい。一方、適切性判定部101は、あるステレオ画像について算出されたスコアが、第4閾値未満であれば、当該ステレオ画像は距離の計測に適していないと判定してよい。
また、例えば、スコア算出処理S802において、特定の条件を満たす特徴点ペアの個数に応じてスコア算出された場合を想定する。この場合、適切性判定部101は、あるステレオ画像について算出されたスコアが第4閾値以上(即ち、特徴点間の距離が第3閾値以下である特徴点ペアの個数が第4閾値以上)であれば、当該ステレオ画像は距離の計測に適していると判定してよい。一方、適切性判定部101は、あるステレオ画像について算出されたスコアが第4閾値未満であれば、当該ステレオ画像が距離の計測に適していないと判定してよい。
適切性判定部101は、判定結果を出力部102に提供する。
出力部102は、適切性判定部101から提供された判定結果に応じて、あるステレオ画像を用いて距離の計測を実行するか否かを制御する。出力部102の処理は、上記第2の判定処理の場合と同様としてよい。
なお、適切性判定部101は、上記に限定されず、SIFTとは異なる方法(、例えは、Harrisコーナー検出アルゴリズム等)を用いて特徴点を検出してもよい。
〔アラート処理〕
以下、出力部102によるアラート処理の具体例について説明する。なお、以下に記載する具体例は、説明のための一例であり、本実施形態はこれに限定されるものではない。
図9A、図9Bは、距離の計測に用いられるステレオ画像を撮影するユーザに対して、表示装置400を用いて提示されるユーザインタフェース900の一例である。
図9A((a)部分)に例示するユーザインタフェース900は、距離計測用に撮影される画像を表示する画像表示領域901と、距離計測用の撮影を実行するための操作ボタン902と、を含む。画像表示領域901には、ステレオ画像を構成する2つの画像のうち、一方の画像が表示されてもよく、2つの画像が合成された画像が表示されてもよい。また、図9Bに例示するように、画像表示領域901には、ステレオ画像を構成する2つの画像がそれぞれ表示されてもよい。画像表示領域901には、距離が計測される対象物を特定するターゲット表示901aが、画像に重畳して表示されてもよい。
ユーザインタフェース900を用いて、距離の計測に用いられる画像を撮影する処理は、概略以下のように実行されてよい。
例えば、ユーザは、距離の計測に用いられる対象物が画像表示領域901に表示されるように、適宜カメラ201を操作してもよい。カメラ201を操作する方法は適宜選択可能である。ユーザは、例えば、カメラ201に対して、パン、チルト等の操作を実行してもよい。カメラ201が各種可動体(各種車両、及び、ブーム、アーム等の腕状体など)に設置されている場合には、ユーザは、係る可動体を操作してもよい。
画像表示領域901に表示されている画像(ステレオ画像)が、カメラ201により撮影され、画像提供装置200から画像処理装置100に供給される。
適切性判定部101が、例えば上記説明した各種方法を用いて、画像提供装置200から提供されたステレオ画像が、距離の計測に適しているか否かを判定する。
係るステレオ画像が距離の計測に適していると判定された場合、出力部102は、例えば、係るステレオ画像が適切な画像であることを表すユーザインタフェースを表示するよう、表示装置400を制御してもよい。この場合、出力部102は、係るユーザインタフェースの生成に用いられるデータを生成し、表示装置400に提供してもよい。
あるステレオ画像が距離の計測に適していると判定された場合、出力部102は、例えば、図9Aの(c)部分に示すようなユーザインタフェース900を表示するよう、表示装置400を制御してもよい。この場合、例えば、ターゲット表示901aの表示態様が変化し、操作ボタン902が有効化される。これにより、ユーザは、例えば、操作ボタン902を押下することで、係るステレオ画像を、距離の計測用のステレオ画像として確定することができる。
あるステレオ画像が距離の計測に適していないと判定された場合、出力部102は、例えば、図9Aの(b)部分に示すようなユーザインタフェース900を表示するよう、表示装置400を制御してもよい。この場合、例えば、警告メッセージ904(ダイアログボックス等)が表示され、操作ボタン902が無効化される。警告メッセージ904には、適切性判定部101において算出されたスコアが表示されてもよい。この場合、ユーザが操作ボタン902を押下しても、距離の計測に用いられるステレオ画像は確定されない。
上記具体例のバリエーションとして、距離の計測に用いられるステレオ画像を撮影(確定)する操作が、物理的なスイッチ(例えば、ユーザが操作可能なトリガスイッチや、シャッターボタン等)を用いて実行されることを想定する。出力部102は、あるステレオ画像が距離の計測に適していないと判定された場合には、例えば、係るスイッチの操作を無効化してもよい。
上記のような処理により、本実施形態における画像処理装置100は、距離の計測に用いられるステレオ画像として、不適切な画像が撮影されることを抑制可能である。また、上記説明した通り、画像処理装置100における適切性判定部101は、比較的処理時間が長く、処理負荷が高い処理である距離の計測処理を実行することなく、あるステレオ画像が距離の計測に適しているか否かを判定可能である。よって、本実施形態における画像処理装置100は、あるステレオ画像に関する判定結果を速やかにユーザに提供可能である。係る判定結果をユーザに提示することで、本実施形態における画像処理装置100は、例えば、不適切なステレオ画像を用いて距離の計測処理が実行されることを抑制可能であり、適切なステレオ画像を取得しなおすよう、ユーザを促すことも可能である。
以上より、本実施形態における画像処理装置100によれば、あるステレオ画像が距離の計測に適しているか否かを適切に判定することが可能である。
<第2実施形態>
以下、本開示に係る技術を実現可能な第2の実施形態(第2実施形態)について説明する。
図10は、本実施形態における画像処理装置1000の機能的な構成を例示するブロック図である。本実施形態における画像処理装置1000は、第1実施形態における画像処理装置100と同様の処理を実行可能であってよい。画像処理装置1000は、更に、距離の計算に適さないと判定されたステレオ画像を補正することが可能である。以下においては、主に第1実施形態との相違点について記載する。なお、上記第1実施形態と同じ構成については、同じ参照符号を付すことで詳細な説明を省略する。
画像処理装置100は、第1実施形態と同様、画像提供装置200と通信可能に接続される。画像提供装置200は、第1実施形態と同様としてよい。なお、説明の都合上図10においては省略されているが、画像処理装置1000は、第1実施形態と同様、距離計測装置300、表示装置400と通信可能に接続されてもよい。
画像処理装置1000は、適切性判定部1001と、出力部1002と、補正部1003とを含む。画像処理装置1000を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてよい。
適切性判定部1001は、第1実施形態における適切性判定部101と同様の処理を実行可能である。即ち、適切性判定部1001は、画像提供装置200から提供されたステレオ画像が、距離の計測に適しているか否かを判定する。これに加えて、適切性判定部1001は、後述する補正部1003により補正されたステレオ画像が、距離の計測に適しているか否かを判定するよう構成される。
出力部1002は、上記第1実施形態と同様に構成されてよい。即ち、出力部1002は、適切性判定部1001による適切性の判定結果に応じて、あるステレオ画像を用いた距離の計測を実行するか否かを制御する。
補正部1003(補正手段)は、適切性判定部1001において距離の計測に不適切であると判定されたステレオ画像を補正し、補正後の画像を適切性判定部1001に提供する。
具体的には、補正部1003は、距離の計測に不適切であると判定されたステレオ画像に対して、明るさ補正処理(第1補正処理)を実行するよう構成される。補正部1003が実行する明るさ補正処理には、輝度補正と、コントラスト補正との少なくとも一方が含まれてよい。本実施形態において、輝度補正及びコントラスト補正の具体的な方法は特に限定されず、適宜選択可能である。なお、明るさ補正処理には、上記した処理以外に、画像処理の分野で一般的に適用可能な処理が含まれてもよい。
本実施形態においては、輝度補正の一例として、ガンマ補正(ガンマ変換)が用いられてもよい。これにより、画像全体の明るさを調整することができる。
輝度補正としてガンマ補正が用いられる場合、例えば、図11の(a)部分に例示するような階調変換関数(トーンカーブ)を用いることにより、入力画像(画像Y1)の輝度を変換することで、輝度補正後の出力画像(画像Y2)が得られる。トーンカーブは、例えば、下式(2)により表される。
式(2)において、Y1(x、y)は、画像Y1の座標(x、y)における画素値(例えば輝度値)を表す。Y2(x、y)は、画像Y1から変換された画像Y2の座標(x、y)における画素値(例えば輝度値)を表す。式(2)により表されるトーンカーブは、パラメータγ(ガンマ)に応じて、形状が変化する。なお、式(2)における定数”255”は、画像を構成する各画素値の最大値(量子化レベル数)を表す数値であり、適宜選択されてよい。
補正部1003は、例えば、入力画像全体の輝度の平均値を、特定の目標値に変換可能なγの値を求め、式(2)により入力画像を変換することで、入力画像の全的な輝度を調整してもよい。
コントラスト補正は、画像のコントラスト(濃淡)を調整する処理である。コントラスト補正の一例として、例えば、図11の(b)部分に例示するようなトーンカーブを用いて、入力画像の画素値を出力画像の画素値に変換する方法が用いられてもよい。
図11の(b)部分に例示するトーンカーブにおいては、A(0,0)、B(16+co_sh,16)、C(239−co_hi,239)、D(255,255)の4点が制御点として設定される。なお、”co_sh”、”co_hi”は、それぞれコントラスト調整用のパラメータである。”co_sh”の値域は、例えば、”0≦co_sh≦63”に設定されてもよく、”co_hi”の値域は、例えば、”0≦co_hi≦63”、に設定されてもよい。
上記説明した輝度補正及びコントラスト補正は、比較的処理負荷が低い計算処理により実装可能である。これより、補正部1003は、比較的短い処理時間、低い処理負荷で、明るさ補正を実行することができる。
以下、図12に例示するフローチャートを参照して、本実施形態における画像処理装置1000の動作について説明する。なお、図12において、第1実施形態における処理(図2)と同様の処理には、第1実施形態と同様の参照符号が付されている。
ステップS201乃至ステップS203は、上記第1実施形態と同様としてよい。即ち、適切性判定部1001は、画像提供装置200からステレオ画像を受けつけ(ステップS201)、そのステレオ画像の適切性を判定する(ステップS202)。
以下、ステップS202の結果、あるステレオ画像が距離の計測に適していないと判定された場合(ステップS203においてNO)について説明する。
この場合、補正部1003は、そのステレオ画像に対する明るさ補正処理を実行する(ステップS1201)。補正部1003は、明るさ補正として、例えば、輝度補正と、コントラスト補正との少なくとも一方を実行してよい。以下、補正部1003における具体的な処理について説明する。
補正部1003は、例えば、ステレオ画像に含まれる2つの画像からヒストグラムを算出してもよい。補正部1003は、算出したそれぞれのヒストグラムと、良好な撮影環境(良好環境)におけるヒストグラムとの類似度を、例えば、Histogram Intersectionのスコア値として求めることができる。補正部1003は、例えば、2枚の画像のうち、スコア値が低い方の画像(即ち、良好環境のヒストグラムとの類似度が低い方)に対して、輝度補正を適用する。これにより、補正部1003は、2枚の画像の明るさを合わせることができる。
補正部1003は、また、例えば、ステレオ画像に含まれる2つの画像から、エッジ成分を抽出してもよい。エッジ成分の抽出方法は、特に限定されず適宜選択可能である。エッジ成分の抽出方法として、各種のエッジ検出フィルタ(例えば、微分フィルタ、ラプラシアンフィルタ等)を用いる方法が採用されてもよい。補正部1003は、2つの画像から抽出したエッジ成分の輝度ヒストグラムをそれぞれ算出する。補正部1003は、算出された2つのヒストグラムの形状が近くなるように、コントラスト補正を適用することで、2つの画像のコントラストを合わせることができる。
補正部1003は、上記のような処理により明るさを補正した画像を含むステレオ画像を、適切性判定部1001に提供する。
適切性判定部1001は、補正部1003から受けつけた補正後のステレオ画像について、適切性を判定する(ステップS1202)。ステップS1202における処理は、ステップS202と同様としてよい。
ステップS1202の結果、補正後のステレオ画像が距離の計測に適していると判定された場合(ステップS1203においてYES)、出力部1002は、ステップS204から処理を続行する。ステップS204における処理は、上記第1実施形態と同様としてよい。
ステップS1202の結果、補正後のステレオ画像が距離の計測に適していないと判定された場合(ステップS1203においてNO)、出力部1002は、ステップS205から処理を続行する。ステップS205における処理は、上記第1実施形態と同様としてよい。
上記のように構成された本実施形態における画像処理装置1000は、上記第1実施形態と同様、あるステレオ画像が、距離の計測に適しているか否かを適切に判定可能である。本実施形態における画像処理装置1000は、更に、距離の計測に不適切であると判定されたステレオ画像を補正することで、補正後の画像が距離の計測に適しているか否かを判定することが可能である。即ち、本実施形態における画像処理装置1000は、あるステレオ画像が距離の計測に適しているか否かを、より精度よく判定可能である。
また、仮に、補正後のステレオ画像が距離の計測に適した画像であると、画像処理装置1000が判定できた場合、そのステレオ画像を用いて速やかに距離を計測することが可能となる。即ち、この場合、新たなステレオ画像を取得することなく、既に取得済みのステレオ画像を用いて、距離を計測することが可能となる。これにより、画像処理装置1000によれば、例えば、新たなステレオ画像の取得等に要する処理時間、処理能力等を削減可能である。
また、これにより、例えば、新たにステレオ画像を取得できない状況(ステレオ画像を取得するタイミングと、距離を計測するタイミングとが異なる場合等)であっても、距離の計測に適さないと判定されたステレオ画像を補正することで、距離の計測が可能となる場合がある。
〔第2実施形態の変形例〕
以下、第2実施形態の変形例について説明する。本変形例における画像処理装置1000の構成は図10に例示する構成と同様としてよい。本変形例においては、適切性判定部1001及び補正部1003の処理が、第2実施形態と一部相違する。
以下、図13に例示するフローチャートを用いて、本変形例における画像処理装置1000の動作について説明する。
図13において、ステップS201乃至ステップS203は、上記第2実施形態と同様としてよい。
本変形例においては、ステップS203においてYESの場合(即ち、あるステレオ画像について、距離の計測に適切であると判定された場合)、補正部1003が明るさ補正処理を実行する(ステップS1201)。ステップS1201における処理は、上記第2実施形態と同様としてよい。
図13におけるステップS1202−S1203の処理は、上記第2実施形態と同様としてよい。
補正部1003は、ステップS1203においてNOの場合、補正部1003は、明るさ補正処理が実行されていない画像(即ち、ステップS203においてYESと判定された画像)を、出力部1002に提供する。補正部1003は、ステップS1201における明るさ補正処理が実行された画像を元に戻し、出力部1002に提供してもよい。
出力部1002は、明るさ補正前の画像を用いて、距離の計測処理が実行されるよう制御する(ステップS1204)。なお、ステップS204、S205の処理は上記第2実施形態と同様としてよい。
本変形例において、画像処理装置1000は、1段目の適切性判定(ステップS202)において適切であると判定されたステレオ画像について、意図的に明るさ補正を実行する。そして、2段目の適切性判定(ステップS1202)において、再度、明るさ補正後のステレオ画像が距離の計測に適切であるか否かを判定する。これにより、本変形例における画像処理装置1000は、更に精度よく距離の計測処理を実行可能な画像を提供できる。
また、更なる変形例として、画像処理装置1000は、以下のように構成されてもよい。即ち、ステップS1203においてNOと判定された場合、補正部1003が、ステップS1204における処理に替えて、アラート処理(ステップS205)を実行するよう構成されてもよい。即ち、補正部1003は、あるステレオ画像について、1段目の適切性判定(ステップS202)と、2段目の適切性判定(ステップS1202)とにおいて、異なる判定結果が得られた場合、そのステレオ画像が距離の計測に不適切であると判定する。例えば、撮影された対象物及び撮影環境等の影響から、本来距離の計測に不適切なステレオ画像が、1段目の適切性判定において適切であると判定される可能性がある。上記のように構成された画像処理装置1000は、このような場合であっても、2段目の適切性判定を実行することで、そのステレオ画像の適切性を、再度判定することが可能である。
<第3実施形態>
以下、本開示に係る技術を実現可能な第3の実施形態(第3実施形態)について説明する。
図14は、本実施形態における画像処理装置1400の機能的な構成を例示するブロック図である。本実施形態における画像処理装置1400は、上記各実施形態における画像処理装置(100、1000)と同様の処理を実行可能であってよい。更に、画像処理装置1400は、ステレオ画像が撮影されたシーン(場面)に応じて、そのステレオ画像を補正することが可能である。以下においては、主に上記各実施形態との相違点について記載する。なお、上記各実施形態と同じ構成については、同じ参照符号を付すことで詳細な説明を省略する。
画像処理装置1400は、上記各実施形態と同様、画像提供装置200と通信可能に接続される。画像提供装置200は、第1実施形態と同様としてよい。なお、説明の都合上図14においては省略されているが、画像処理装置1400は、上記各実施形態と同様、距離計測装置300、表示装置400と通信可能に接続されてもよい。
画像処理装置1400は、適切性判定部1401と、出力部1402と、シーン解析部1403とを含む。画像処理装置1400を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてよい。
適切性判定部1401は、後述するシーン解析部1403により補正されたステレオ画像を受けつけ、そのステレオ画像が距離の計測に適しているか否かを判定するよう構成される。なお、受けつけた画像の適切性を判断する処理は、上記各実施形態と同様としてよい。即ち、本実施形態における適切性判定部1401は、上記各実施形態における適切性判定部(101、1001)とは、受けつけるステレオ画像が異なるものの、受けつけた画像については同様の処理を実行可能である。
出力部1402は、上記第1実施形態と同様に構成されてよい。即ち、出力部1402は、適切性判定部1401による適切性の判定結果に応じて、あるステレオ画像を用いた距離の計測を実行するか否かを制御する。
シーン解析部1403(シーン解析手段)は、ステレオ画像が撮影されたシーンを判定するシーン判定部1403aと、シーンに応じてステレオ画像を補正するシーン別画像補正部1403bとを含む。また、シーン解析部1403は、シーン判定モデル1403c及びパラメータリスト1403dを含んでもよい。
シーン判定部1403aは、画像提供装置200から提供されたステレオ画像が撮影されたシーンを、後述するシーン判定モデル1403cを用いて判定する。ステレオ画像が撮影されたシーンとしては、例えば、「良好」、「逆光」、「夜間」、「霧」、などが、予め定められていてよい。なお、テレオ画像が撮影されたシーンは、これらに限定されず、他のシーンが含まれてもよい。シーン判定部1403aにおける具体的な処理については、後述する。
シーン判定モデル1403cは、例えば、あるステレオ画像が撮影されたシーンを、予め定められたシーンの中から判定(特定)可能なモデルである。シーン判定モデルは、例えば、SVM、GLVQなど、パターン認識技術において用いられるモデルであってもよい。
シーン別画像補正部1403bは、シーン判定部1403aにより判定されたシーンに応じて、そのシーンに適した補正パラメータを用いてステレオ画像を補正する。シーン別画像補正部1403bにおける具体的な処理については、後述する。画像を補正する処理の具体的な内容は特に限定されず、例えば、画像の鮮明化に用いられる補正処理(第2補正処理)が、適宜選択されてよい。係る補正処理として、例えば、ホワイトバランス補正処理、輝度補正処理、コントラスト補正処理、ヘイズ補正処理、HDR(High Dynamic Range)補正処理、ノイズ除去処理、デフォグ処理、エッジ先鋭化処理等が用いられてもよいが、これらには限定されない。
パラメータリスト1403dは、画像の補正に用いられるシーンごとの補正パラメータを含むリストである。補正パラメータは、シーン別画像補正部1403bにおいて実行され得る画像の補正方法に応じて、適宜選択される。補正パラメータには、例えば、明度、彩度、コントラスト、シャープネス、等を調整するパラメータが含まれてもよい。
補正パラメータを用いて画像を補正する具体的な方法として、例えば、下記参考文献6に記載された方法を採用してもよいが、これには限定されない。
(参考文献6):Masato Tsukada,Chisato Funayama,Masato Toda,Ryota Oami,Masatoshi Arai, and Akira Inoue, “Image Quality Enhancement Method based on Scene Category Classification and Its Evaluation”, Digest of Technical Papers International Conference on Consumer Electronics (ICCE2009), IEEE, 2009年, p.1−2
以下、図15に例示する説明図を用いて、シーン判定処理、及び、シーンに応じたステレオ画像の補正処理について説明する。
図15に示すように、学習フェーズにおいては、シーン判定モデルが作成される。なお、学習フェーズにおける処理は、画像処理装置1400とは別の装置を用いて別途実行されてよい。即ち、シーン判定部1403aには学習済みのシーン判定モデルが提供されればよく、かならずしもシーン判定部1403aが、学習フェーズにおける処理を実行する必要はない。
学習フェーズにおいて、まず、学習データを用いたシーン判定モデルの学習処理が実行される。学習データは、例えば、シーンごとに撮影したステレオ画像であり、予め用意されてもよい。各学習データ(ステレオ画像)には、その画像が撮影されたシーンを特定可能なデータが、ラベル(教師ラベル)として付与されていてよい。
シーン判別モデルの作成者は、ラベル付き学習データから、特徴量(特徴ベクトル)を抽出する。特徴量の種類は特に限定されず、適宜選択可能である。特徴量として、例えば、SV(Saturation Value)色空間のヒストグラムが用いられてもよい。
シーン判別モデルの作成者は、抽出された特徴量を用いた学習処理を実行することにより、シーン判別モデルを生成する。
例えば、シーン判別モデルとして、SVMによる識別器が用いられる場合には、教師付き学習データを用いて、SVMの識別平面が学習されてもよい。この場合、複数のカテゴリ(シーン)を識別可能なSVMモデルが学習されてもよい。また、単独のシーンを判定可能な複数のSVMモデルが学習されてもよい。
また、例えば、シーン判別モデルとしてGLVQを用いた識別器が用いられる場合には、教師付き学習データを用いて、GLVQの参照ベクトルが学習されてもよい。
学習フェーズで作成されたシーン判定モデルは、画像処理装置1400に提供され、シーン判定モデル1403cとして保持される。
また、パラメータリスト1403dには、ステレオ画像の補正に用いられる、シーンごとの補正パラメータが、予め与えられてよい。補正パラメータは、例えば、予備的な実験、テスト、及び、専門家による知見等に基づいて、シーンごとに予め設計されてもよい。一例として、「良好」、「逆光」、「暗所」、「霧」がシーンに含まれる場合、「逆光」、「暗所」、「霧」と判定された画像を、「良好」の画像に近づけるような補正パラメータが、予め設計されてもよい。補正パラメータの設計方法は、適宜選択可能であり、特に限定されない。また、補正パラメータは、例えば、画像処理装置1400とは異なる装置を用いて別途設計されてよい。この場合、設計された補正パラメータが画像処理装置1400に提供され、シーン解析部1403が、その補正パラメータを、パラメータリスト1403dとして保持してもよい。
以下、図15に示す評価フェーズ(運用フェーズ)について説明する。運用フェーズにおける処理は、画像処理装置1400におけるシーン解析部1403により実行される。
評価フェーズにおいては、まず、画像提供装置200から、入力画像としてステレオ画像が提供される。
シーン判定部1403aは、ステレオ画像に含まれる各画像から、特徴量を抽出する(図15におけるS1501)。係る特徴量は、学習フェーズにおいてシーン判定モデルの学習に用いられた特徴量と同じ種類の特徴量である。
シーン判定部1403aは、各画像から抽出した特徴量と、学習フェーズにおいて作成されたシーン判定モデル1403cとを用いて、各画像のシーンを判定する(図15におけるS1502)。
一例として、シーン判定部1403aは、ある画像について、シーン判定モデル1403cを用いて算出されるスコアが最も高いシーンを、その画像が含まれるシーンとして特定してもよい。
一つの具体例として、シーン判定モデル1403cがSVMによるモデルである場合、シーン判定部1403aは、画像から抽出された特徴量(特徴ベクトル)と識別平面との間の距離が大きいシーンを、その画像が含まれるシーンとして特定してもよい。他の一つの具体例として、シーン判定モデル1403cがGLVQによるモデルである場合、シーン判定部1403aは、ある画像から抽出された特徴量(特徴ベクトル)との間の距離が最も近い参照ベクトルが表すシーンを、その画像が含まれるシーンとして特定してもよい。
他の例として、シーン判定部1403aは、各画像について、各シーンに対する帰属度を算出してもよい。帰属度は、例えば、ある画像が、ある特定のシーンに含まれる(帰属する)ことの尤もらしさを表す値である。具体例として、シーンに「良好」、「逆光」、「暗所」、「霧」が含まれる場合を想定する。この場合、シーン判定部1403aは、シーン判定モデル1403cを用いて、「良好」、「逆光」、「暗所」、「霧」の各シーンについて、ある画像の帰属度を算出する。
一つの具体例として、シーン判定モデル1403cがSVMによるモデルである場合、シーン判定部1403aは、ある画像から抽出された特徴量(特徴ベクトル)と、各シーンの識別平面との間の距離に応じて、各シーンに対する帰属度を算出してもよい。他の一つの具体例として、シーン判定モデル1403cがGLVQによるモデルである場合、シーン判定部1403aは、ある画像から抽出された特徴量(特徴ベクトル)と、各シーンを表す参照ベクトルとの間の距離に応じて、各シーンに対する帰属度を算出してもよい。なお、各シーンへの帰属度の総和が特定値(例えば、”100”や、”1.0”)となるように、帰属度の値が正規化されてもよい。
シーン判定部1403aは、各画像及び各画像について判定したシーンを、シーン別画像補正部1403bに提供する。シーン判定部1403aは、各画像について算出したシーンの帰属度を、シーン別画像補正部1403bに提供してもよい。
シーン別画像補正部1403bは、各画像について判定されたシーンに応じて、各画像の補正に用いられる補正パラメータを生成する(図15におけるS1503)。
一例として、各画像が含まれるシーンが特定されている場合、シーン別画像補正部1403bは、パラメータリストから、その特定されたシーンに応じた補正パラメータを選択する。例えば、ステレオ画像のうち、一方の画像が「逆光」シーンと判定され、他方の画像が「良好」シーンであると判定された場合を想定する。この場合、シーン別画像補正部1403bは、パラメータリスト1403dから、逆光シーンと判定された画像の補正に用いられる補正パラメータ(逆光補正のパラメータ)を選択する。
他の一例として、ある画像について、各シーンに対する帰属度が算出されている場合、シーン別画像補正部1403bは、各シーンに対する帰属度から、その画像の補正に用いられる補正パラメータを合成してもよい。例えば、あるステレオ画像に含まれる画像について、「逆光」シーンへの帰属度が”0.7”、「良好」シーンへの帰属度が”0.3”である場合を想定する。この場合、シーン別画像補正部1403bは、例えば、「逆光」シーンの補正パラメータと、「良好」シーンの補正パラメータとをパラメータリスト1403dから取得する。そして、シーン別画像補正部1403bは、「逆光」シーンの補正パラメータと、「良好」シーンの補正パラメータとを、7対3の割合で調整(合成)することで、その画像の補正に用いられる補正パラメータ(合成パラメータ)を生成する。
シーン別画像補正部1403bは、生成された補正パラメータを用いて、ステレオ画像に含まれる画像を補正する(図15におけるS1504)。例えば、ステレオ画像のうち、一方の画像が「逆光」シーンと判定され、他方の画像が「良好」シーンであると判定された場合を想定する。この場合、シーン別画像補正部1403bは、逆光シーンと判定された画像に対して、逆光補正のパラメータを適用する。これにより、シーン別画像補正部1403bは、「逆光」シーンと判定された画像と、「良好」シーンであると判定された画像との差異を削減可能である。また、シーン別画像補正部1403bは、例えば、ステレオ画像に含まれる画像を、各シーンへの帰属度に基づいて生成されたパラメータを用いて補正することで、2つの画像間の差異を削減可能である。
本実施形態においては、画像処理装置1400(特にはシーン解析部1403)を上記のような構成とすることで、ステレオ画像に含まれる画像のシーンが自動的に判定される。また、必要に応じて、画像の補正に用いられる補正パラメータがシーン毎に生成される。これにより、例えば、画像処理装置1400のユーザは、画像補正の方法及び補正パラメータを選択する必要がない。また、例えば、各シーンに対する画像の帰属度に応じて、その画像の補正パラメータが合成(生成)される場合、シーンに適応した補正パラメータの自動調整が可能となる。
以下、画像処理装置1400の動作について、図16に例示するフローチャートを参照して説明する。なお、図16において、上記各実施形態における処理(図2、図12、図13)と同様の処理には、第1実施形態と同様の参照符号が付されている。
画像処理装置1400は、画像提供装置200から提供されたステレオ画像を受けつける(ステップS201)。本実施形態においては、例えば、適切性判定部1401がステレオ画像を受けつけ、シーン解析部1403に提供してもよく、シーン解析部1403が直接ステレオ画像を受けつけてもよい。
シーン解析部1403(シーン判定部1403a)は、受けつけたステレオ画像に含まれる各画像のシーンを判定する(ステップS1601)。シーン判定部1403aは、例えば、上記説明した処理により、各画像のシーンを判定してもよい。
シーン解析部1403(シーン別画像補正部1403b)は、ステップS1601において判定したシーンに応じた補正パラメータを生成する(ステップS1602)。シーン別画像補正部1403bは、例えば、上記説明した処理により、補正パラメータを生成してもよい。
シーン解析部1403(シーン別画像補正部1403b)は、ステップS1602において生成した補正パラメータを用いて、ステレオ画像に含まれる画像を補正する(ステップS1603)。シーン別画像補正部1403bは、例えば、上記説明した処理により、補正パラメータを用いて画像を補正してもよい。なお、シーン別画像補正部1403bは、ステレオ画像に含まれる2枚の画像のうちのいずれかの画像を補正してもよく、両方の画像を補正してもよい。シーン解析部1403は、補正後の画像を含むステレオ画像を、適切性判定部1401に提供してよい。
図16におけるステップS202乃至S205の処理は、上記各実施形態と同様としてよい。即ち、適切性判定部1401は、補正後のステレオ画像が距離の計測に適しているか否かを判定する(ステップS202)。出力部1402は、その判定結果に応じて(ステップS203)、距離の計測処理の実行を制御するか(ステップS204)、アラート処理の実行を制御する(ステップS205)。
上記のように構成された画像処理装置1400は、ステレオ画像が撮影されたシーンに応じて、画像を適切に補正することができる。これにより、画像処理装置1400は、補正後のステレオ画像が距離の計測に適しているか否かを判定することができる。即ち画像処理装置1400は、ステレオ画像が撮影されたシーンによる影響を低減することが可能であり、あるステレオ画像が距離の計測に適しているか否かを、より精度よく判定することができる。
〔第3実施形態の変形例1〕
以下、第3実施形態に関する第1の変形例について説明する。本変形例における画像処理装置1400の構成は図14に例示する構成と同様としてよい。本変形例においては、適切性判定部1401及びシーン解析部1403の処理が、第3実施形態と一部相違する。本変形例において、画像処理装置1400は、第2実施形態における明るさ補正処理の代わりに、第3実施形態におけるシーン判定及びシーンごとの画像補正処理を実行する。
以下、図17に例示するフローチャートを用いて、本変形例における画像処理装置1400の動作について説明する。
図17に例示するフローチャートにおいて、ステップS201乃至ステップS203は、上記第2実施形態と同様としてよい。
ステップS203においてNO(即ち、あるステレオ画像について、距理の計測に適切ではないと判定された場合)、画像処理装置1400は、そのステレオ画像のシーンを判定し、シーンに応じた補正処理を実行する(図17におけるステップS1601乃至ステップS1603)。
図17におけるステップS1203以降の処理は、第2実施形態と同様としてよい。
上記のように構成された本変形例によれば、画像処理装置1400は、全てのステレオ画像についてシーン判定を実行するのではなく、距離の計測に不適切であると判定されたステレオ画像について、シーン判定を実行する。これにより、本変形例における画像処理装置1400は、シーン判定を実行するステレオ画像を削減することができ、シーン判定及び画像補正に要する処理時間、処理能力等を低減可能である。
〔第3実施形態の変形例2〕
以下、第3実施形態に関する第2の変形例について説明する。本変形例における画像処理装置1400の構成は図14に例示する構成と同様としてよい。本変形例においては、適切性判定部1401及びシーン解析部1403の処理が、第3実施形態と一部相違する。本変形例において、画像処理装置1400は、第2実施形態の変形例における明るさ補正処理の代わりに、第3実施形態におけるシーン判定及びシーンごとの画像補正処理を実行する。
即ち、本変形例における画像処理装置1400は、あるステレオ画像について、距離の計測に適切であると判定された場合、そのステレオ画像のシーンを判定し、シーンに応じた補正処理を実行する。そして、本変形例における画像処理装置1400は、補正後のステレオ画像について、再度距離の計測に適切であるか否かを判定する。
例えば、撮影された対象物及びシーンの影響から、本来距離の計測に不適切なステレオ画像が、距離の計測に適切であると判定される可能性がある。このような場合、本変形例における画像処理装置1400は、シーンに応じて画像を補正することで、そのステレオ画像の適切性を、再度判定することが可能である。
<第4実施形態>
以下、本開示に係る技術を実現可能な第4の実施形態(第4実施形態)について説明する。
図18は、本実施形態における画像処理装置1800の機能的な構成を例示するブロック図である。本実施形態における画像処理装置1800は、上記各実施形態における画像処理装置(100、1000、1400)と同様の処理を実行可能である。本実施形態における画像処理装置1800は、更に、あるステレオ画像が、距離の計測に適しているか否かを判定した結果に応じて、画像提供装置200(特には、カメラ201)を制御することが可能である。以下においては、主に上記各実施形態との相違点について記載する。なお、上記各実施形態と同じ構成については、同じ参照符号を付すことで詳細な説明を省略する。
画像処理装置1800は、上記各実施形態と同様、画像提供装置200と通信可能に接続される。画像提供装置200は、上記各実施形態と同様としてよい。なお、説明の都合上図18においては省略されているが、画像処理装置1800は、上記各実施形態と同様、距離計測装置300、表示装置400と通信可能に接続されてもよい。
画像処理装置1800は、適切性判定部1801と、出力部1802とを含む。画像処理装置1800は、上記各実施形態において説明した補正部1003、シーン解析部1403を含んでもよい。画像処理装置1800を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてよい。
画像処理装置1800において、適切性判定部1801は、上記各実施形態における適切性判定部101、適切性判定部1001、及び、適切性判定部1401の少なくともいずれかと同様の機能を提供するよう構成される。また、補正部1003、シーン解析部1403は、それぞれ上記各実施形態と同様としてよい。
本実施形態において、出力部1802は、あるステレオ画像に関する適切性の判定結果に応じて、画像提供装置200におけるカメラ201を制御するよう構成される。
本実施形態において、出力部1802は、例えば、カメラ201と適切な通信路を介して通信可能に接続されていてよい。出力部1802と、カメラ201とを接続する通信路は、特に限定されず、適切に選択されてよい。係る通信路として、例えば、各種シリアルバス(例えば、USB(Universal Serial Bus)等)が用いられてもよく、各種無線通信路が用いられてもよい。
適切性判定部1801から、あるステレオ画像に関する適切性の判定結果が提供された際、出力部1802は、概略以下のような処理を実行する。
即ち、出力部1802は、あるステレオ画像について、距離の計測に適していないと判定された場合、撮影パラメータを適切に調整するよう、カメラ201を制御する。出力部1802は、例えば、上記した通信路を介して、カメラ201に対して、撮影パラメータを調整するコマンドを送信する。出力部1802は、例えばPTP(Picture Transfer Protocol)を用いて、カメラ201におけるシャッタースピード、絞り値、感度等を調整してもよい。
画像処理装置1800にシーン解析部1403が含まれる場合、出力部1802は、シーン解析部1403において判定されたシーンに応じて、カメラ201の撮影パラメータを調整してもよい。1つの具体例として、画像提供装置200から提供されたステレオ画像の内、一方の画像が「暗所」シーンであると判定された場合、出力部1802は、その画像を撮影したカメラ201について、より明るい画像が撮影されるように撮影パラメータを調整してもよい。
なお、出力部1802は、上記に加え、上記各実施形態における出力部102、出力部1002、及び、出力部1402の少なくともいずれかと同様の機能を提供するよう構成されてもよい。
上記のように構成された画像処理装置1800によれば、画像提供装置200から提供された画像が、距離の計測に適しているか否かに応じて、カメラ201の撮影パラメータを調整することが可能である。これにより、カメラ201は、距離の計測により適したステレオ画像を撮影することが可能となる。これより、画像処理装置1800は、ある画像が距離の計測に適しているか否かを、より精度よく判定することができる。
<ハードウェア及びソフトウェア・プログラム(コンピュータ・プログラム)の構成>
以下、上記説明した各実施形態及び変形例を実現可能なハードウェア構成について説明する。以下の説明においては、上記各実施形態において説明した各画像処理装置(100、1000、1400、1800)を、まとめて「画像処理装置」と記載する。
上記各実施形態において説明した各画像処理装置は、1つ又は複数の専用のハードウェア装置により構成されてもよい。その場合、上記各図(例えば、図1、3、4、6、7、8、10、15、18)に示した各構成要素は、一部又は全部を統合したハードウェア(処理ロジックを実装した集積回路等)として実現してもよい。
例えば、画像処理装置をハードウェアにより実現する場合、画像処理装置の構成要素は、それぞれの機能を提供可能な集積回路(例えば、SoC(System on a Chip)等)として実装されてもよい。この場合、例えば、画像処理装置の構成要素が有するデータは、SoCに統合されたRAM(Random Access Memory)領域やフラッシュメモリ領域に記憶されてもよい。
また、この場合、画像処理装置の構成要素を接続する通信回線としては、周知の通信バスを含む通信ネットワークが採用されてもよい。また、各構成要素を接続する通信回線は、それぞれの構成要素間をピアツーピアで接続してもよい。画像処理装置を複数のハードウェア装置により構成する場合、それぞれのハードウェア装置の間は、適切な通信方法(有線、無線、またはそれらの組み合わせ)により通信可能に接続されていてもよい。
例えば、画像処理装置は、適切性判定部(101、1001、1401、1801)、出力部(102、1002、1402、1802)、補正部1003、シーン解析部1403の機能を実現可能な処理回路(processing circuitry)、通信回路、及び記憶回路等を用いて実現されてよい。なお、画像処理装置を実現する回路構成の実装においては、様々なバリエーションが想定される。
また、上述した画像処理装置は、図19に例示するような汎用のハードウェア装置1900と、ハードウェア装置1900によって実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、画像処理装置は、1以上の適切な数のハードウェア装置1900及びソフトウェア・プログラムにより構成されてもよい。
図19における演算装置1901(プロセッサ)は、例えば、汎用のCPU(中央処理装置:Central Processing Unit)やマイクロプロセッサである。演算装置1901は、例えば、後述する不揮発性記憶装置1903に記憶された各種ソフトウェア・プログラムをメモリ1902に読み出し、そのソフトウェア・プログラムに従って処理を実行してもよい。この場合、上記各実施形態における画像処理装置の構成要素は、例えば、演算装置1901により実行されるソフトウェア・プログラムとして実現可能である。
上記各実施形態における画像処理装置は、例えば、適切性判定部(101、1001、1401、1801)、出力部(102、1002、1402、1802)、補正部1003、シーン解析部1403の機能を実現可能な1以上のプログラムにより実現されてよい。なお、係るプログラムの実装においては、様々なバリエーションが想定される。
メモリ1902は、演算装置1901から参照可能な、RAM等のメモリデバイスであり、ソフトウェア・プログラムや各種データ等を記憶する。なお、メモリ1902は、揮発性のメモリデバイスであってもよい。
不揮発性記憶装置1903は、例えば磁気ディスクドライブや、フラッシュメモリによる半導体記憶装置のような、不揮発性の記憶装置である。不揮発性記憶装置1903は、各種ソフトウェア・プログラムやデータ等を記憶可能である。上記画像処理装置において、シーン解析部1403は、例えば、不揮発性記憶装置1903にシーン判定モデル1403c、パラメータリスト1403d等を記憶してもよい。
ドライブ装置1904は、例えば、後述する記録媒体1905に対するデータの読み込みや書き込みを処理する装置である。上記画像処理装置におけるシーン解析部1403は、例えば、ドライブ装置1904を介して、後述する記録媒体1905に記憶されたシーン判定モデル1403c、パラメータリスト1403dを読み込んでもよい。
記録媒体1905は、例えば光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な記録媒体である。本開示において、記録媒体の種類及び記録方法(フォーマット)は、特に限定されず、適宜選択されてよい。
ネットワークインタフェース1906は、通信ネットワークに接続するインタフェース装置であり、例えば有線及び無線のLAN(Local Area Network)接続用インタフェース装置等を採用してもよい。
入出力インタフェース1907は、外部装置との間の入出力を制御する装置である。外部装置は、例えば、ユーザからの入力を受けつけ可能な入力機器(例えば、キーボード、マウス、タッチパネル等)であってもよい。また、外部装置は、例えばユーザに対して各種出力を提示可能出力機器であってもよい(例えば、モニタ画面、タッチパネル等)。画像処理装置は、例えば、入出力インタフェースを介して、画像提供装置200、表示装置400等と接続されてもよい。
上述した各実施形態を例に説明した本開示における画像処理装置は、例えば、図19に例示するハードウェア装置1900に対して、上記各実施形態において説明した機能を実現可能なソフトウェア・プログラムを供給することにより、実現されてもよい。より具体的には、例えば、ハードウェア装置1900に対して供給されたソフトウェア・プログラムを、演算装置1901が実行することによって、本開示に係る技術が実現されてもよい。この場合、ハードウェア装置1900で稼働しているオペレーティングシステムや、データベース管理ソフト、ネットワークソフト等のミドルウェアなどが、各処理の一部を実行してもよい。
上述した各実施形態において、上記各図に示した各部は、上述したハードウェアにより実行されるソフトウェア・プログラムの機能(処理)の単位である、ソフトウェアモジュールとして実現されてもよい。例えば、上記各部をソフトウェアモジュールとして実現する場合、これらのソフトウェアモジュールは、不揮発性記憶装置1903に記憶されてもよい。そして、演算装置1901が、それぞれの処理を実行する際に、これらのソフトウェアモジュールをメモリ1902に読み出してもよい。
また、これらのソフトウェアモジュールは、共有メモリやプロセス間通信等の適宜の方法により、相互に各種データを伝達できるように構成されてもよい。このような構成により、これらのソフトウェアモジュールは、相互に通信可能に接続される。
更に、上記各ソフトウェア・プログラムは、記録媒体1905に記録されてもよい。この場合、上記各ソフトウェア・プログラムは、上記通信装置等の出荷段階、あるいは運用段階等において、適宜ドライブ装置1904を通じて不揮発性記憶装置1903に格納されてもよい。
各種ソフトウェア・プログラムは、画像処理装置の出荷前の製造段階、あるいは出荷後のメンテナンス段階等において、適当な治具(ツール)を利用してハードウェア装置1900内にインストールされてもよい。また、各種ソフトウェア・プログラムは、インターネット等の通信回線を介して外部からダウンロードされてもよい。ソフトウェア・プログラムを供給する方法として、各種の一般的な手順を採用することができる。
このような場合において、本開示に係る技術は、ソフトウェア・プログラムを構成するコード、あるいはコードが記録されたところの、コンピュータ読み取り可能な記録媒体によって構成されてもよい。この場合、記録媒体は、ハードウェア装置1900と独立した媒体に限らず、LANやインターネットなどにより伝送されたソフトウェア・プログラムをダウンロードして記憶又は一時記憶した記憶媒体を含む。
また、上述した画像処理装置、あるいは、当該画像処理装置の構成要素は、図19に例示するハードウェア装置1900を仮想化した仮想化環境と、その仮想化環境において実行されるソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、図19に例示するハードウェア装置1900の構成要素は、仮想化環境における仮想デバイスとして提供される。
以上、本開示に係る技術を、上述した模範的な実施形態に適用した例として説明した。しかしながら、本開示に係る技術の範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、上記したような実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、変更又は改良を加えた新たな実施形態も、本開示に係る技術の範囲に含まれ得る。更に、上述した各実施形態、あるいは、係る変更又は改良を加えた新たな実施形態を組み合わせた実施形態も、本開示に係る技術の範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。
なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
第1画像及び第2画像を含むステレオ画像を受けつけ、上記第1画像が撮影された撮影環境と、上記第2画像が撮影された撮影環境とに応じて、上記ステレオ画像について、撮影された対象物に対する距離の計測に適しているか否かを判定する適切性判定手段と、
上記ステレオ画像が距離の計測に適しているか否かに応じて、そのステレオ画像を用いた距離の計測を実行するか否かを制御可能な出力手段と、を備える
画像処理装置。
(付記2)
上記適切性判定手段は、
上記第1画像を表す第1特徴量と、上記第2画像を表す第2特徴量とを抽出し、
上記第1特徴量及び上記第2特徴量を用いて、上記第1画像及び上記第2画像に関する撮影環境の類似性を判定するか、又は、
上記第1特徴量及び上記第2特徴量の少なくとも一方を用いて、上記第1画像及び上記第2画像について、距離の計測に適した撮影環境における画像であるか否かを判定することにより、
当該ステレオ画像が距離の計測に適しているか否かを判定する
付記1に記載の画像処理装置。
(付記3)
上記適切性判定手段は、
上記第1特徴量と、上記第2特徴量とに基づいて、上記第1画像に関する撮影環境と、上記第2画像に関する撮影環境との間の類似性を表すスコアを算出し、
そのスコアの値に応じて、上記ステレオ画像が距離の計測に適しているか否かを判定する
付記2に記載の画像処理装置。
(付記4)
上記適切性判定手段は、距離の計測に適しているか否かを表す教師ラベルが付与された画像を学習データとして、ある上記ステレオ画像が距離の計測に適した撮影環境における画像であるか否かを判定するよう学習されたモデルである適切性判定モデルと、上記第1特徴量及び上記第2特徴量と、を用いて、上記第1画像及び上記第2画像が、距離の計測に適した撮影環境における画像に分類されるか否かを判定可能なスコアを算出し、そのスコアの値に応じて、上記ステレオ画像が距離の計測に適しているか否かを判定する
付記2に記載の画像処理装置。
(付記5)
ある上記ステレオ画像に含まれる上記第1画像と、上記第2画像との少なくとも一方について、輝度とコントラストとの少なくとも一方を補正する第1補正処理を適用する補正手段を更に備え、
上記補正手段は、上記適切性判定手段により距離の計測に不適切であると判定された上記第1画像と、上記適切性判定手段により距離の計測に不適切であると判定された上記第2画像と、の少なくとも一方について上記第1補正処理を実行し、
上記適切性判定手段は、上記補正手段による補正後の上記第1画像に関する上記第1特徴量と、上記補正手段による補正後の上記第2画像に関する上記第2特徴量と、の少なくとも一方を用いて、上記スコアを算出し、そのスコアに基づいて、上記ステレオ画像の距離の計測に関する適切性を再度判定する
付記3又は4に記載の画像処理装置。
(付記6)
ある上記ステレオ画像に含まれる上記第1画像と、上記第2画像との少なくとも一方について、その画像が撮影された状況を表すシーンを判定し、上記シーンに応じて、上記第1画像と、上記第2画像との少なくとも一方について、その画像を鮮明化する処理である第2補正処理を実行可能なシーン解析手段を更に備え、
上記適切性判定手段は、上記シーン解析手段による補正後の上記第1画像に関する上記第1特徴量と、上記シーン解析手段による補正後の上記第2画像に関する上記第2特徴量と、の少なくとも一方を用いて、上記スコアを算出し、そのスコアに基づいて、上記ステレオ画像の距離の計測に関する適切性を判定する
付記3又は4に記載の画像処理装置。
(付記7)
上記シーン解析手段は、
上記第2補正処理に用いられる補正パラメータを、上記シーンごとに保持し、
上記シーンを特定可能な教師ラベルが付与された画像を学習データとして、上記第1画像及び上記第2画像が含まれる上記シーンを判定可能に学習されたシーン判定モデルを用いて、上記第1画像及び上記第2画像について、それぞれ上記シーンを判定し、
判定した上記シーンに応じた上記補正パラメータを用いて、上記第1画像と、上記第2画像との少なくとも一方について、上記第2補正処理を実行する
付記6に記載の画像処理装置。
(付記8)
上記シーン解析手段は、
上記第2補正処理に用いられる補正パラメータを、上記シーンごとに保持し、
上記シーンを特定可能な教師ラベルが付与された画像を学習データとして、上記第1画像及び上記第2画像について、上記シーンに含まれることの尤もらしさを表す帰属度を算出可能に学習されたモデルであるシーン判定モデルを用いて、上記第1画像と、上記第2画像とについて、各上記シーンに関する帰属度を算出し、
上記シーンごとに保持している上記補正パラメータを、上記シーンごとの帰属度に応じて合成することで、上記第2補正処理に用いられる合成パラメータを生成し、
上記合成パラメータを用いて、上記第1画像と、上記第2画像との少なくとも一方について、上記第2補正処理を実行する
付記6に記載の画像処理装置。
(付記9)
上記出力手段は、ある上記ステレオ画像が、距離の計測に不適切であると判定された場合、
当該ステレオ画像を用いた距離の計測を抑制し、当該ステレオ画像が距離の計測に不適切であることを提示するアラート処理を実行する
付記1乃至付記8のいずれかに記載の画像処理装置。
(付記10)
第1画像及び第2画像を含むステレオ画像を受けつけ、
上記第1画像が撮影された撮影環境と、上記第2画像が撮影された撮影環境とに応じて、上記ステレオ画像が、そのステレオ画像に撮影された対象物に対する距離の計測に適しているか否かを判定し、
上記ステレオ画像が距離の計測に適しているか否かに応じて、そのステレオ画像を用いた距離の計測を実行するか否かを制御する、
画像処理方法。
(付記11)
画像処理装置を構成するコンピュータに、
第1画像及び第2画像を含むステレオ画像を受けつける処理と、
上記第1画像が撮影された撮影環境と、上記第2画像が撮影された撮影環境とに応じて、上記ステレオ画像が、そのステレオ画像に撮影された対象物に対する距離の計測に適しているか否かを判定する処理と、
上記ステレオ画像が距離の計測に適しているか否かに応じて、そのステレオ画像を用いた距離の計測を実行するか否かを制御する処理と、を実行させる
画像処理プログラム。
(付記12)
上記適切性判定手段は、
上記第1特徴量として、上記第1画像の画素値に関する第1ヒストグラムを算出し、
上記第2特徴量として、上記第2画像の画素値に関する第2ヒストグラムを算出し、
上記第1ヒストグラムと上記第2ヒストグラムとの類似性を表す上記スコアを算出する
付記3に記載の画像処理装置。
(付記13)
上記適切性判定手段は、
上記第1画像及び上記第2画像から、それぞれ複数の上記第1特徴量と、上記第2特徴量とを、抽出し、
上記第1特徴量と、上記第2特徴量との間の距離に基づいて、上記第1画像と上記第2画像とにおいて対応する上記第1特徴量及び上記第2特徴量の組である特徴点ペアを特定し、
1以上の上記特徴点ペアに含まれる上記第1特徴量及び上記第2特徴量の間の距離と、上記第1特徴量及び上記第2特徴量の間の距離がある特定の距離以下である上記特徴点ペアの個数と、の少なくとも一方に基づいて、上記スコアを算出する
付記3に記載の画像処理装置。
(付記14)
上記適切性判定モデルは、距離の計測に適していることを表す上記教師ラベルが付与された画像と、距離の計測に不適切であることを表す上記教師ラベルが付与された画像と、を上記学習データとして用いることで、少なくとも、距離の画像に適した画像を表すカテゴリと、距離の計測に不適切な画像を表すカテゴリとを判定するよう学習された評価関数を含み、
上記適切性判定手段は、上記第1特徴量及び第2特徴量を上記評価関数に入力することで得られる出力を、上記スコアとして算出する
付記4に記載の画像処理装置。
(付記15)
上記第2補正処理は、少なくとも、輝度補正処理と、コントラスト補正処理と、デフォグ処理と、エッジ先鋭化処理との中の1以上の処理を含み、
上記シーン解析手段は、上記第2補正処理において、上記シーンごとに、画像の明度を補正可能な補正パラメータと、彩度を補正可能な補正パラメータと、コントラストを補正可能な補正パラメータと、シャープネスを補正可能な補正パラメータとのうち少なくとも1つを用いて上記第1画像と、上記第2画像との少なくとも一方を補正する
付記6に記載の画像処理装置。
(付記16)
上記出力手段は、ある上記ステレオ画像が、距離の計測に不適切であると判定された場合、
当該ステレオ画像を用いた距離の計測を抑制し、当該ステレオ画像に関して上記適切性判定手段により算出された上記スコアを提示するとともに、当該ステレオ画像が距離の計測に不適切であることを提示するアラート処理を実行する
付記3乃至付記6のいずれかに記載の画像処理装置。
(付記17)
上記出力手段は、ある上記ステレオ画像が、距離の計測に不適切であると判定された場合、上記シーン解析手段により判定された上記シーンに応じて、上記ステレオ画像を撮影した撮影装置における撮影パラメータを制御する
付記6乃至付記8のいずれかに記載の画像処理装置。
(付記18)
ある上記ステレオ画像に含まれる上記第1画像と、上記第2画像との少なくとも一方について、輝度とコントラストとの少なくとも一方を補正する第1補正処理を適用する補正手段を更に備え、
上記補正手段は、上記適切性判定手段により、距離の計測に適切であると判定された上記第1画像及び上記第2画像の少なくとも一方について上記第1補正処理を実行し、
上記適切性判定手段は、上記補正手段による補正後の上記第1画像に関する上記第1特徴量と、上記補正手段による補正後の上記第2画像に関する上記第2特徴量と、の少なくとも一方を用いて、上記スコアを算出し、そのスコアに基づいて、上記ステレオ画像の距離の計測に関する適切性を再度判定する
付記3又は4に記載の画像処理装置。
(付記19)
ある上記ステレオ画像に含まれる上記第1画像と、上記第2画像との少なくとも一方について、その画像が撮影された状況を表すシーンを判定し、上記シーンに応じて、上記第1画像と、上記第2画像との少なくとも一方について、その画像を鮮明化する処理である第2補正処理を実行可能なシーン解析手段を更に備え、
上記シーン解析手段は、上記適切性判定手段により、距離の計測に適切であると判定された上記第1画像及び上記第2画像の少なくとも一方について上記第2補正処理を実行し、
上記適切性判定手段は、上記シーン解析手段による補正後の上記第1画像に関する上記第1特徴量と、上記シーン解析手段による補正後の上記第2画像に関する上記第2特徴量と、の少なくとも一方を用いて、上記スコアを算出し、そのスコアに基づいて、上記ステレオ画像の距離の計測に関する適切性を再度判定する
付記3又は4に記載の画像処理装置。