以下、添付図面を参照しながら、本願の開示する情報処理装置および情報処理方法の実施の形態を詳細に説明する。なお、以下の実施の形態は開示の技術を限定するものではない。そして、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
(第1の実施の形態)
図1は、本実施の形態の情報処理システム1の全体構成の一例を示す図である。情報処理システム1は、情報処理装置10と、撮影部12と、表示部14と、学習部16と、を備える。撮影部12、表示部14、および学習部16と、情報処理装置10とは、データまたは信号を授受可能に接続されている。
撮影部12は、撮影によって撮影画像を得る。撮影部12は、例えば、公知のイメージセンサである。本実施の形態では、撮影部12は連続して撮影を行い、撮影によって得た撮影画像データを、情報処理装置10へ順次、出力する。以下、撮影画像データを、単に、撮影画像と称して説明する。
表示部14は、各種の情報を表示する。表示部14は、例えば、公知のLCD(Liquid Crystal Display)または有機EL(Electro-Luminescence)ディスプレイなどである。
学習部16は、情報処理装置10から受付けた出力画像に基づいて、学習済モデルを用いた処理を行い、処理結果情報を出力する。処理結果情報は、画像から導出される情報であり、例えば、学習済モデルを用いた処理により導出される正解情報である。例えば、処理結果情報は、画像に含まれる物体に関する情報などであるが、これに限定されない。
学習済モデルは、出力画像から、処理結果情報を生成とするための、機械学習済モデルである。学習済モデルは、予め定めた機械学習アルゴリズムの深層学習(ディープラーニング)により予め学習される。アルゴリズムは、例えば、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)である。また、アルゴリズムは、例えば、再帰型ニューラルネットワーク(Recurrent Neural Network:RNN)である。また、アルゴリズムは、例えば、LSTM(Long Short-Term Memory)などである。
なお、学習部16は、学習済モデルを生成するための学習に用いる教師データとして、情報処理装置10から受付けた出力画像を用いてもよい。
情報処理装置10は、撮影部12から撮影画像を受付ける。以下、撮影部12から受付ける撮影画像を、入力画像と称して説明する。情報処理装置10は、受付けた入力画像に対してデータ量の低減などの各種の処理を実行し、表示部14および学習部16へ出力する(詳細後述)。情報処理装置10は、例えば、データ量の低減処理が施された入力画像を、学習済モデルへの入力として学習部16に出力する。
次に、ハードウェア構成を説明する。図2は、情報処理装置10のハードウェア構成の一例を示す図である。
情報処理装置10は、CPU(Central Processing Unit)10A、ROM(Read Only Memory)10B、RAM(Random Access Memory)10C、及びI/F(InterFace)10Dを含み、例えば、コンピュータである。CPU10A、ROM10B、RAM10C、およびI/F10Dは、バス10Eにより相互に接続されており、通常のコンピュータを利用したハードウェア構成となっている。
CPU10Aは、本実施の形態の情報処理装置10を制御する演算装置である。CPU10Aは、ハードウェアプロセッサの一例に対応する。ROM10Bは、CPU10Aによる各種の処理を実現するプログラム等を記憶する。RAM10Cは、CPU10Aによる各種の処理に必要なデータを記憶する。I/F10Dは、撮影部12、表示部14、および学習部16などに接続し、データを送受信するためのインターフェースである。
本実施の形態の情報処理装置10で実行される情報処理を実行するためのプログラムは、ROM10B等に予め組み込んで提供される。なお、本実施の形態の情報処理装置10で実行されるプログラムは、情報処理装置10にインストール可能な形式又は実行可能な形式のファイルで記録媒体に記録されて提供するように構成してもよい。記録媒体は、コンピュータにより読取可能であり、CD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード等である。
次に、情報処理装置10の機能的構成を説明する。図3は、情報処理装置10の機能の一例を示す図である。なお、図3には、データの入出力関係を明確にするために、情報処理装置10に加えて、撮影部12、表示部14、および学習部16を併せて図示した。
情報処理装置10は、第1の取得部20Aと、編集部20Bと、第2の出力制御部20Cと、第1の抽出部20Dと、伸長部20Eと、第1の生成部20Fと、第2の抽出部20Gと、導出部20Hと、第1の補正部20Iと、第1の出力制御部20Jと、を備える。
上記複数の各部の一部または全ては、例えば、CPU10Aなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよい。また、上記複数の各部の一部または全ては、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
第1の取得部20Aは、入力画像を取得する。上述したように、第1の取得部20Aは、撮影部12で撮影された撮影画像を、入力画像として取得する。第1の取得部20Aは、入力画像を取得するごとに、取得した入力画像を編集部20Bおよび伸長部20Eへ出力する。
本実施の形態では、第1の取得部20Aは、入力画像を、第1の画像として編集部20Bへ出力する。また、第1の取得部20Aは、入力画像を、第2の画像として伸長部20Eへ出力する。なお、第1の画像および第2の画像は入力画像と同一のものには限定されず、第1の取得部20Aは、必要に応じて、第1の画像または第2の画像として、入力画像に何らかの加工を施した後の画像を出力してもよい。以下の第2乃至第5の実施の形態においても同様である。
図4Aは、入力画像50の一例を示す模式図である。入力画像50は、被写体を撮影した画像である。被写体は、1または複数の物体である。図4Aには、入力画像50が、物体P1と、物体P2と、を含む形態を一例として示した。図4Aに示すように、第1の画像52および第2の画像54は、同じ入力画像50である。但し、第1の画像52は、表示部14に表示する対象として処理される入力画像50である。一方、第2の画像54は、学習部16へ出力する対象として処理される入力画像50である。
図3に戻り説明を続ける。編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する。鮮明化とは、第1の画像52を表示部14への表示用に加工することを示す。例えば、鮮明化は、第1の画像52に対して、編集、色補正、およびノイズ除去などの加工を行うことを示す。色補正は、例えば、γ補正である。編集部20Bは、表示部14の仕様などに応じて、表示部14に表示されたときに鮮明な画像となるように、第1の画像52に対して公知の鮮明化を実行すればよい。
編集部20Bは、表示画像を、第1の抽出部20Dおよび第2の出力制御部20Cへ出力する。図4Bは、表示画像53の一例を示す模式図である。表示画像53は、編集部20Bによって鮮明化された第1の画像52である。
図3に戻り説明を続ける。第2の出力制御部20Cは、第1の画像52を表示部14へ出力する。本実施の形態では、第2の出力制御部20Cは、表示画像53を表示部14へ出力する。このため、表示部14には、表示画像53が表示される。
第1の抽出部20Dは、表示画像53から第1の特徴点情報を抽出する。なお、第1の抽出部20Dは、入力画像50である第1の画像52から、第1の特徴点情報を抽出してもよい。
第1の特徴点情報とは、物体に関する情報である。物体に関する情報とは、物体の少なくとも一部の特徴点を示す情報である。物体の特徴点は、例えば、物体の輪郭線(境界、エッジ)、および、物体を構成する点、などである。物体の輪郭線は、明るさの勾配などによって表される。本実施の形態では、第1の特徴点情報は、第1の画像52に含まれる、物体の輪郭線を示す情報である場合を、一例として説明する。
本実施の形態では、第1の抽出部20Dは、ハイパスフィルタ(HPF:High-pass filter)を用いて、表示画像53から第1の特徴点情報を抽出する。ハイパスフィルタは、エッジ抽出に用いられる公知のフィルタである。フィルタ処理に用いるフィルタの種類は、例えば、Sobelフィルタ、またはLaplacianフィルタである。第1の抽出部20Dは、ハイパスフィルタを用いて、表示画像53を構成する複数の画素の各々について、周辺画素との画素値の変化率を導出する。この導出により、第1の抽出部20Dは、第1の特徴点情報を抽出する。すなわち、本実施の形態では、第1の抽出部20Dは、表示画像53を構成する複数の画素の各々について、第1の特徴点情報を抽出する。
周辺画素とは、処理対象の画素に対して隣接して配置された少なくとも1つの画素を示す。なお、周辺画素は、処理対象の画素に対して隣接して配置された1または複数の画素と、該画素に対して隣接する位置から離れる方向に向かって配列された1または複数の画素と、を含むものであってもよい。
画素値の変化率は、画素値によって表される色の明るさの変化率を示す。画素値は、例えば、R(赤)G(緑)B(青)などの色の要素を色値(例えば、0~255の階調値)で表したものである。なお、色値は、色の要素に加えて、輝度値を更に含んでいてもよい。明るさは、これらの色値によって表される色の明るさである。明るさは、明度および輝度の少なくとも一方を示す。本実施の形態では、第1の抽出部20Dは、表示画像53を構成する複数の画素の各々について、周辺画素との明るさの変化率、すなわち明るさの勾配(微分値)を、第1の特徴点情報として抽出する。
なお、第1の抽出部20Dは、公知の方法で、表示画像53から第1の特徴点情報を抽出すればよく、ハイパスフィルタを用いた形態に限定されない。
第1の抽出部20Dは、抽出した第1の特徴点情報を、導出部20Hへ出力する。詳細には、例えば、第1の抽出部20Dは、抽出した第1の特徴点情報と、該第1の特徴点情報を抽出した画素の識別情報とを、画素ごとに順次、導出部20Hへ出力する。画素の識別情報は、例えば、画素の画素位置を示す情報である。
一方、伸長部20Eは、第1の取得部20Aから第2の画像54を受付ける。伸長部20Eは、第2の画像54の明るさのヒストグラムを伸長化する。第2の画像54の明るさのヒストグラムは、第2の画像54に含まれる複数の画素の明るさの分布を、グラフで示したものである。ヒストグラムは、度数分布図と称される場合がある。例えば、第2の画像54に含まれる複数の画素の画素値が、特定の明るさの範囲に偏って分布していたと想定する。この場合、伸長部20Eは、より広い範囲に明るさの分布を伸長することで、第2の画像54の明るさのヒストグラムを伸長化する。伸長部20Eは、公知の伸長化方法を用いて、第2の画像54の明るさのヒストグラムを伸長化すればよい。第2の画像54の明るさのヒストグラムを伸長化することによって、伸長部20Eは、第2の画像54の濃淡の明確化を図ることができる。
伸長部20Eは、伸長済画像を、第1の生成部20Fへ出力する。図4Cは、伸長済画像55の一例を示す模式図である。伸長済画像55は、第2の画像54を伸長化した画像である。図3に戻り説明を続ける。なお、伸長部20Eは、伸長済画像55に含まれる1または複数の物体の各々が識別しやすくなるように、第2の画像54を最適化する処理を実行すればよい。最適化には、公知の画像処理技術を用いればよい。このため、伸長部20Eは、ヒストグラムの伸長化以外の処理を更に実行してもよい。
第1の生成部20Fは、入力画像50である第2の画像54のデータ量を低減し、第3の画像を生成する。
第2の画像54のデータ量を低減する、とは、第2の画像54のデータ量を、現在のデータ量より低減することを示す。具体的には、第2の画像54のデータ量を低減する、とは、第2の画像54のビット深度を低減すること、および、第2の画像54の解像度を低減すること、の少なくとも一方を示す。
第2の画像54のビット深度を低減することとは、第2の画像54のビット深度を、現在のビット深度より低減することを意味する。ビット深度とは、画素値を表す階調数を意味する。例えば、ビット深度が8ビットである場合、階調数は256である。第1の生成部20Fは、第2の画像54のビット深度を、例えば、8ビットから8ビット未満のビット深度へ低減することで、第2の画像54のデータ量を低減した第3の画像を生成する。第1の生成部20Fは、公知の方法を用いて、第2の画像54のビット深度を低減すればよい。また、ビット深度の低減率は、出力画像を出力する対象の学習部16の要求仕様などに応じて、適宜調整すればよい。
第2の画像54の解像度を低減することとは、第2の画像54の解像度を、現在の解像度より低減することを意味する。例えば、第2の画像54の解像度が350dpiであると想定する。この場合、第1の生成部20Fは、第2の画像54の解像度を350dpi未満(例えば、72dpiなど)に低減する。なお、第1の生成部20Fは、公知の方法を用いて、第2の画像54の解像度を低減すればよい。また、解像度の低減率は、出力画像を出力する対象の学習部16の要求仕様などに応じて、適宜調整すればよい。
本実施の形態では、第1の生成部20Fは、第2の画像54のビット深度を低減することで、第2の画像54のデータ量を低減した第3の画像を生成する場合を一例として説明する。また、本実施の形態では、第1の生成部20Fは、伸長部20Eから受付けた伸長済画像55のデータ量を低減し、第3の画像を生成する形態を説明する。
本実施の形態では、第1の生成部20Fは、伸長済画像55を構成する複数の画素ごとに、データ量を低減することで、第3の画像56を生成する。そして、第1の生成部20Fは、第3の画像56の画素値を、画素ごとに第2の抽出部20Gへ順次、出力する。
図4Dは、第3の画像56の一例を示す模式図である。第1の生成部20Fが、第2の画像54(図4A参照)のデータ量を低減することで、例えば、第3の画像56が生成される。
ここで、第1の生成部20Fによるデータ量の低減処理によって、データ量の低減処理前に識別可能であった物体の輪郭線などの特徴点の一部が欠損する場合がある。
具体的には、データ量の低減処理前の第2の画像54では識別可能であった物体P1および物体P2の内(図4A参照)、物体P2と背景との明るさの差が、物体P1と背景との明るさの差より少ないと想定する。この場合、第2の画像54のデータ量の低減処理により、物体P2の特徴点の一部が欠損し、第3の画像56では背景と同化して識別困難となる場合がある(図4D参照)。
これは、明るさのヒストグラムが変化するためと考えられる。図4Eは、第1の画像52の明るさのヒストグラム60の一例を示す線図である。図4Fは、第3の画像56の明るさのヒストグラム62の一例を示す線図である。図4Eおよび図4F中、縦軸は画素数を示し、横軸は明るさを示す。
図4Eに示すように、第1の画像52の明るさのヒストグラム60には、物体P1を示すピーク60Aと、物体P2を示すピーク60Bと、の双方が含まれる。しかし、データ量を低減することで生成された第3の画像56の明るさのヒストグラム62には、物体P1を示すピーク62Aは示されるが、物体P2を示すピークは消失する(図4F参照)。
このような第3の画像56を、画像に含まれる物体を検出することで各種の処理を実行する装置などに適用すると、処理精度が低下する場合がある。各種の処理を実行する該装置としては、例えば、学習部16がある。学習部16では、高速化または省メモリ化の観点から、より少ないデータ量の画像を処理に用いる事が好ましい。しかし、物体の特徴点の一部が欠損した第3の画像56を、学習部16の学習済モデルに入力する画像、または、学習済モデルを生成するための学習に用いる教師データとして用いると、学習精度が低下する場合がある。
図3に戻り説明を続ける。そこで、本実施の形態では、情報処理装置10は、第1の抽出部20D、第2の抽出部20G、導出部20H、および第1の補正部20Iを備える。
第2の抽出部20Gは、第3の画像56から第2の特徴点情報を抽出する。
第2の特徴点情報とは、物体に関する情報である。物体に関する情報および物体の特徴点の定義は、上記と同様である。本実施の形態では、第2の特徴点情報は、第3の画像56に含まれる、物体の輪郭線を示す情報である場合を、一例として説明する。
本実施の形態では、第2の抽出部20Gは、第1の抽出部20Dと同様に、ハイパスフィルタを用いて、第3の画像56から第2の特徴点情報を抽出する。ハイパスフィルタは、第1の抽出部20Dが用いるハイパスフィルタと同様である。すなわち、第2の抽出部20Gは、ハイパスフィルタを用いて周辺画素との画素値の変化率を導出することで、第3の画像56を構成する複数の画素の各々について、第2の特徴点情報を抽出する。
具体的には、第2の抽出部20Gは、第3の画像56を構成する複数の画素の各々について、周辺画素との明るさの変化率、すなわち明るさの勾配(微分値)を、第2の特徴点情報として抽出する。なお、第2の抽出部20Gは、公知の方法で、第3の画像56から第2の特徴点情報を抽出すればよく、ハイパスフィルタを用いた形態に限定されない。
第2の抽出部20Gは、抽出した第2の特徴点情報を、導出部20Hへ出力する。詳細には、例えば、第2の抽出部20Gは、抽出した第2の特徴点情報と、画素の識別情報とを、画素毎に順次、導出部20Hへ出力する。画素の識別情報は、上述したように、例えば、第2の画像54における、画素の画素位置を示す情報である。
導出部20Hは、第1の特徴点情報と第2の特徴点情報との差を導出する。
詳細には、例えば、導出部20Hは、第1の特徴点情報によって表される変化率と、第2の特徴点情報によって表される変化率と、の差を導出する。
本実施の形態では、導出部20Hは、第3の画像56における第1の画像52に対応する画素ごとに、第1の特徴点情報と第2の特徴点情報との差を導出する。対応する画素とは、同じ画素位置の画素を示す。このため、導出部20Hは、第1の画像52を構成する複数の画素と、第3の画像56を構成する複数の画素と、の各々について、同じ画素位置の画素ごとに、第1の特徴点情報と第2の特徴点情報との差を導出する。本実施の形態では、導出部20Hは、表示画像53を構成する複数の画素と、伸長済画像55を構成する複数の画素と、の各々について、同じ画素位置の画素ごとに、上記差を導出する。
導出部20Hは、同じ画素位置の画素ごとに、導出した差が第1の閾値以上であるか否かを判断する。第1の閾値は、第2の画像54に含まれる物体(例えば、物体P1、物体P2)の内の少なくとも一部が第3の画像56において欠損しているか否かを判別可能な値であればよい。
導出部20Hは、導出した差が第1の閾値以上である場合、第3の画像56に含まれる複数の画素の内、該差の導出に用いた画素の画素値の補正指示を、第1の補正部20Iへ出力する。補正指示は、差が第1の閾値以上の画素の画素位置と、該画素の画素値の補正を示す信号と、を含む。すなわち、導出部20Hは、伸長済画像55における、導出した差が第1の閾値以上の画素の画素値の補正指示を、第1の補正部20Iへ出力する。
一方、導出部20Hは、導出した差が第1の閾値未満である場合、出力対象指示を第1の出力制御部20Jへ出力する。出力対象指示は、第3の画像56に含まれる複数の画素の内、上記差が第1の閾値未満の画素を出力対象とする事を示す、指示情報である。詳細には、例えば、出力対象指示は、上記差が第1の閾値未満の画素の画素位置と、該画素を出力対象とすることを示す信号と、を含む。
第1の補正部20Iは、導出部20Hによって導出された差に応じて、第2の画像54を補正する。本実施の形態では、第1の補正部20Iは、上記差に応じて伸長済画像55を補正する。
詳細には、例えば、第1の補正部20Iは、差が閾値以上の画素の画素値の補正指示を導出部20Hから受付ける。そして、第1の補正部20Iは、伸長済画像55に含まれる複数の画素の内、差が第1の閾値以上の画素の画素値を補正する。
図5A、図5B、図5C、および図5Dは、第1の補正部20Iによる画素値の補正の説明図である。図5Aは、表示画像53の画素の第1の特徴点情報の一例を示す線図である。図5Bは、第3の画像56の画素の第2の特徴点情報の一例を示す線図である。図5Cは、第3の画像56の画素の第2の特徴点情報の一例を示す線図である。図5Dは、第3の画像56の画素の第2の特徴点情報の一例を示す線図である。
図5A、図5B、図5C、および図5D中、横軸は画素位置を示し、縦軸は画素値によって表される明るさを示す。また、画素位置Q0、画素位置Q1、および画素位置Q2は、隣接して配列された3つの画素の各々の位置を示すと想定する。
例えば、図5Aに示すように表示画像53では、画素位置Q1の画素の第1の特徴点情報である明るさの変化率が、変化率αであったと想定する。また、図5Bに示すように、第3の画像56では、画素位置Q1の画素の第2の特徴点情報である明るさの変化率が、変化率β1であったと想定する。また、この変化率αと変化率β1との差が、第1の閾値未満であったと想定する。この場合、第1の補正部20Iは、伸長済画像55における該画素位置Q1の画素の画素値の補正を行わない。
一方、図5Cおよび図5Dに示すように、第3の画像56の画像では、画素位置Q1の画素の第2の特徴点情報である明るさの変化率が、変化率β2であったと想定する。また、変化率β2と変化率αとの差が、第1の閾値以上であったと想定する。この場合、第1の補正部20Iは、伸長済画像55における、該画素位置Q1の画素の画素値を補正する。
例えば、図5Cに示すように、伸長済画像55における該画素位置Q1の画素値によって示される明るさが、第1の明るさL1以上であると想定する。この場合、第1の補正部20Iは、伸長済画像55における該画素位置Q1の画素の画素値によって示される明るさを、第1の明るさL1未満に補正する(図5C中、線図73参照)。第1の明るさL1は、予め定めればよい。例えば、第1の明るさL1には、画素値の取りうる最小の明るさと最大の明るさとの中間の明るさ(例えば、50%の明るさ)を、予め定めればよい。
一方、図5Dに示すように、伸長済画像55における該画素位置Q1の画素値によって示される明るさが、第1の明るさL1未満であると想定する。この場合、第1の補正部20Iは、伸長済画像55における該画素位置Q1の画素の画素値によって示される明るさを、第1の明るさL1以上の明るさに補正する(図5D中、線図74参照)。
上記補正を行うことで、第1の補正部20Iは、伸長済画像55における、導出部20Hによって第1の特徴点情報と第2の特徴点情報との差が第1の閾値以上と判定された画素の画素値を、該差が小さくなるように補正する。言い換えると、第1の補正部20Iは、上記差が第1の閾値以上と判定された画素の画素値を、明るさの変化率が現在より大きくなるように、すなわち物体の輪郭線を出現または強調するように、補正する。
上述したように、第1の閾値は、表示画像53に含まれる物体(例えば、物体P1、物体P2)の内の少なくとも一部が第3の画像56において欠損しているか否かを判別可能な値である。このため、第1の補正部20Iは、伸長済画像55における、データ量の低減処理によって物体を示す特徴点の少なくとも一部が欠損したと判別された領域の画素値を、該物体を判別可能な画素値に補正することができる。なお、第1の補正部20Iは、明るさの判断に用いる画像として、伸長済画像55に代えて第2の画像54を用いてもよい。
図3に戻り説明を続ける。第1の補正部20Iは、補正した画素の画素値を、第1の生成部20Fへ出力する。第1の生成部20Fは、補正された画素のデータ量を上記と同様にして低減し、第2の抽出部20Gへ出力する。第2の抽出部20Gは、第1の補正部20Iによって補正され且つ第1の生成部20Fによってデータ量を低減された画素から第2の特徴点情報を抽出する。導出部20Hは、該第2の特徴点情報と、表示画像53(または、第1の画像52)における対応する画素位置の画素の第1の特徴点情報と、の差を導出する。そして、導出部20Hは、この差が第1の閾値未満と判断するまで、伸長済画像55における該画素位置の画素について、画素値の補正指示を第1の補正部20Iへ出力する処理を繰返す。
このように、本実施の形態の情報処理装置10では、第3の画像56を構成する複数の画素の全てについて、第1の特徴点情報と第2の特徴点情報との差が第1の閾値未満と判断するまで、第1の補正部20Iによる補正を繰返し実行する。
このため、導出部20H、第1の補正部20I、第1の生成部20F、および第2の抽出部20Gの処理によって、第3の画像56を構成する全ての画素の画素値が、上記差が第1の閾値未満となるように調整される。
なお、第1の補正部20Iは、第1の特徴点情報と第2の特徴点情報との差に応じて、第3の画像56を補正してもよい。すなわち、第1の補正部20Iは、第2の画像54、伸長済画像55、または、第3の画像56を、補正すればよい。
第1の補正部20Iが、上記差に応じて第3の画像56を補正する場合、以下の処理を実行すればよい。この場合、導出部20Hは、導出した差が第1の閾値以上である場合に、補正指示を第1の補正部20Iへ出力する。この補正指示は、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素の画素値の補正を示す、指示情報である。すなわち、導出部20Hは、第3の画像56における、上記差が第1の閾値以上の画素の画素値の補正指示を、第1の補正部20Iへ出力すればよい。
第1の補正部20Iは、第3の画像56における、補正指示された画素位置の画素の画素値を、導出部20Hによって導出された差に応じて補正する。すなわち、第1の補正部20Iは、第3の画像56に含まれる複数の画素の内、差が第1の閾値以上の画素の画素値を補正する。第1の補正部20Iは、伸長済画像55の補正と同様にして、第3の画像56の画素値によって示される明るさが第1の明るさL1以上であるか否かに応じて、画素値の補正を行えばよい。
次に、第1の出力制御部20Jについて説明する。第1の出力制御部20Jは、第3の画像56における、出力対象指示によって示された画素位置の画素の画素値を出力対象として保持し、出力画像を学習部16へ出力する。出力画像は、第1の特徴点情報と第2の特徴点情報との差に応じて補正された第3の画像56である。すなわち、出力画像は、第1の特徴点情報と第2の特徴点情報との差が第1の閾値未満の画素から構成された第3の画像56である。
第1の出力制御部20Jは、例えば、第3の画像56を構成する全ての画素について、出力対象指示を受付けたときに、出力画像を学習部16へ出力する。
図6は、出力画像58の一例を示す模式図である。図6には、図4Aに示す入力画像50を用いて情報処理装置10が生成した、出力画像58の一例を示した。図6に示すように、出力画像58は、図4Dに示す第3の画像56(図4D参照)において、入力画像50から欠損していた物体P2を含むものとなる。
上述したように、第1の補正部20Iは、第2の画像54または伸長済画像55を構成する画素の内、第1の特徴点情報と第2の特徴点情報との差が第1の閾値以上の画素の画素値を、明るさの変化率が現在の変化率より大きくなるように補正する。このため、出力画像58は、データ量の低減処理によって少なくとも一部が消失した物体の輪郭線を出現または強調するように、第3の画像56を補正した画像となる。言い換えると、出力画像58は、データ量の低減された第3の画像56を、データ量の低減処理によって欠損した物体P2が復元するように補正した画像となる。このため、第1の出力制御部20Jは、特徴点欠損を抑制し且つデータ量が低減された画像である出力画像58を、学習部16へ出力することができる。
次に、本実施の形態の情報処理装置10が実行する、情報処理の流れの一例を説明する。図7は、本実施の形態の情報処理装置10が実行する、情報処理の一例を示すフローチャートである。なお、複数のステップの各々の順番は適宜変更可能であり、図7の例に限られるものではない。また、複数のステップの少なくとも一部は、並列して実行してもよい。
第1の取得部20Aが、撮影部12から入力画像50を取得する(ステップS100)。第1の取得部20Aは、取得した入力画像50を第1の画像52として編集部20Bへ出力し、入力画像50を第2の画像54として伸長部20Eへ出力する。
編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する(ステップS102)。ステップS102の処理によって、表示画像53が生成される。第2の出力制御部20Cは、ステップS102で生成された表示画像53を表示部14へ出力する(ステップS104)。
伸長部20Eは、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する(ステップS106)。ステップS106の処理によって、伸長済画像55が生成される。
第1の抽出部20D、伸長部20E、第1の生成部20F、第2の抽出部20G、導出部20H、および第1の補正部20Iは、ステップS100で取得した入力画像50(第1の画像52、第2の画像54)の画素ごとに、ステップS108~ステップS120の処理を繰返す。
詳細には、第1の抽出部20Dが、ステップS102で生成された表示画像53における処理対象の画素から、第1の特徴点情報を抽出する(ステップS108)。第1の抽出部20Dは、表示画像53を構成する複数の画素の内、ステップS108~ステップS120の処理が未処理の1つの画素を、順次、処理対象の画素として抽出すればよい。
第1の生成部20Fは、ステップS106で生成された伸長済画像55に含まれる、ステップS108で処理対象とした画素位置の画素について、データ量を低減することで、第3の画像56を生成する(ステップS110)。第2の抽出部20Gは、ステップS110でデータ量を低減された画素から第2の特徴点情報を抽出する(ステップS112)。
導出部20Hが、ステップS108で抽出した第1の特徴点情報と、ステップS112で抽出した第2の特徴点情報と、の差を導出する(ステップS114)。導出部20Hは、ステップS114で導出した差が第1の閾値以上であるか否かを判断する(ステップS116)。
ステップS114で導出した差が第1の閾値以上である場合(ステップS116:Yes)、導出部20Hは、ステップS108で処理対象とした画素位置の画素の画素値の補正指示を、第1の補正部20Iへ出力する。補正指示を受付けた第1の補正部20Iは、ステップS106で生成された伸長済画像55における、補正指示に示される画素位置の画素の画素値を、差に応じて補正する(ステップS118)。そして、第1の補正部20Iは、補正した画素の画素値を第1の生成部20Fへ出力し、ステップS110へ戻る。ステップS110では、第1の生成部20Fは、補正された画素のデータ量を低減し、上記処理が繰返される。
一方、ステップS114で導出した差が第1の閾値未満である場合(ステップS116:No)、導出部20Hは、第3の画像56に含まれる複数の画素の内、ステップS108で処理対象とした画素位置の画素を出力対象とする出力対象指示を、第1の出力制御部20Jへ出力する。第1の出力制御部20Jは、第3の画像56における、出力対象指示に示される画素位置の画素の画素値を、出力対象として保持する(ステップS120)。
ステップS100で取得した入力画像50(第1の画像52、第2の画像54)の全ての画素について、ステップS108~ステップS120の処理が終了すると、ステップS122へ進む。ステップS122では、第1の出力制御部20Jが、第1の特徴点情報と第2の特徴点情報との差が第1の閾値未満の複数の画素から構成された第3の画像56である出力画像58を、学習部16へ出力する(ステップS122)。そして、本ルーチンは終了する。
以上説明したように、本実施の形態の情報処理装置10は、第1の取得部20Aと、第1の抽出部20Dと、第1の生成部20Fと、第2の抽出部20Gと、導出部20Hと、第1の出力制御部20Jと、第1の補正部20Iと、を備える。第1の取得部20Aは、入力画像50を取得して、第1の画像52および第2の画像54を出力する。第1の抽出部20Dは、第1の画像52から第1の特徴点情報を抽出する。第1の生成部20Fは、第2の画像54のデータ量を低減した第3の画像56を生成する。第2の抽出部20Gは、第3の画像56から第2の特徴点情報を抽出する。導出部20Hは、第1の特徴点情報と第2の特徴点情報との差を導出する。第1の出力制御部20Jは、差に応じて補正された第3の画像56を出力画像58として出力する。
ここで、第1の生成部20Fによるデータ量の低減処理によって、データ量の低減処理前に識別可能であった物体の輪郭線などの特徴点の一部が、欠損する場合がある。
一方、本実施の形態では、第1の補正部20Iは、導出した差が第1の閾値以上である場合、第2の画像54を補正する。そして、第1の出力制御部20Jは、導出した差に応じて補正され且つデータ量の低減された入力画像50である第3の画像56を、出力画像58として出力する。
例えば、第1の補正部20Iは、第1の特徴点情報と第2の特徴点との差に応じて、明るさの変化率が現在の変化率より大きくなるように第2の画像54を補正し、第1の出力制御部20Jは、補正された第3の画像56を、出力画像58として出力する。このため、出力画像58は、データ量の低減処理によって少なくとも一部が消失した物体の輪郭線を出現または強調するように、第3の画像56を補正した画像となる。言い換えると、出力画像58は、第3の画像56を、データ量の低減処理によって欠損した物体が復元するように補正した画像となる。このため、第1の出力制御部20Jは、特徴点欠損を抑制し且つデータ量の低減された画像である出力画像58を出力することができる。
従って、本実施の形態の情報処理装置10は、特徴点欠損を抑制した画像を提供することができる。
また、第1の出力制御部20Jは、出力画像58を学習部16へ出力する。学習部16は、出力画像58を、学習済モデルへ入力する入力画像、および学習済モデルを生成するための学習に用いる教師データの少なくとも一方として用いる。このため、学習部16は、処理精度または学習精度の向上を図ることができる。すなわち、本実施の形態の情報処理装置10は、上記効果に加えて、学習の処理精度または学習精度の向上を図ることが可能な出力画像58を、提供することができる。
(第2の実施の形態)
上記第1の実施の形態では、入力画像50を取得し、情報処理に用いた。本実施の形態では、入力画像50および距離情報を取得し、情報処理に用いる形態を説明する。
なお、本実施の形態および以下の実施の形態において、上記第1の実施の形態と同じ機能および構成の部分には、同じ符号を付与し、詳細な説明を省略する。
図8は、本実施の形態の情報処理システム1Bの全体構成の一例を示す図である。情報処理システム1Bは、情報処理装置11Bと、撮影部12と、表示部14と、学習部16と、第1のセンサ18と、を備える。撮影部12、表示部14、学習部16、および第1のセンサ18と、情報処理装置11Bとは、データまたは信号を授受可能に接続されている。撮影部12、表示部14、および学習部16は、上記第1の実施の形態と同様である。
第1のセンサ18は、入力画像50の撮影環境に含まれる複数の検知点の各々の第1のセンサ18からの距離情報を規定した、第1の距離画像を得る。
撮影環境は、撮影部12が入力画像50を撮影するときの環境である。
検知点は、第1のセンサ18の外界の撮影環境における、第1のセンサ18によって個別に観測される複数の点の各々を示す。例えば、第1のセンサ18は、第1のセンサ18の周囲に光を照射し、反射点で反射した反射光を受光する。この反射点が、検知点に相当する。なお、複数の反射点を1つの検知点として用いてもよい。
第1の距離画像は、撮影環境に含まれる複数の検知点の各々の、第1のセンサ18からの距離を示す距離情報を規定した、画像である。例えば、第1の距離画像は、入力画像50に含まれる複数の画素の各々に対応する検知点ごとに、距離情報を規定した画像である。
例えば、第1のセンサ18は、複数の検知点の各々に対する光の照射方向(第1のセンサ18を基準とする検知点の方向)と、複数の検知点の各々で反射した反射光に関する情報と、を含む、観測情報を得る。反射光に関する情報は、例えば、光の照射から反射光の受光までの経過時間、または、受光した光の強度もしくは出射した光の強度に対する受光した光の強度の減衰率などである。第1のセンサ18は、経過時間または強度を用いて、検知点ごとに距離情報を算出する。
そして、第1のセンサ18は、算出した距離情報を、入力画像50に含まれる複数の画素の各々に対応する検知点の距離情報として規定することで第1の距離画像とし、情報処理装置11Bへ出力する。なお、距離情報の算出は、情報処理装置11Bで実行してもよい。本実施の形態では、第1の距離画像を構成する検知点の密度によって表される解像度は、入力画像50の画素の密度によって表わされる解像度と一致する場合を一例として説明する。なお、第1の距離画像を構成する検知点の密度によって表される解像度は、入力画像50の画素の密度によって表わされる解像度と不一致であってもよい。
第1のセンサ18は、距離センサである。距離センサは、例えば、ミリ波レーダ、またはレーザセンサである。レーザセンサは、例えば、水平面に対して平行に設置された二次元LiDAR(Laser imaging Detection and Ranging)センサ、または、三次元LiDARセンサである。なお、本実施の形態では、レーザを照射し反射光が戻るまでの時間から距離を導出するTime-of-Flight(ToF)方式のLiDARを用いる形態を説明する。なお、第1のセンサ18は、画素毎に第1のセンサ18からの距離を規定したデプスマップを得る撮影装置であってもよい。
情報処理装置11Bは、撮影部12から入力画像50を受付ける。また、情報処理装置11Bは、第1のセンサ18から第1の距離画像を受付ける。なお、情報処理装置11Bは、同じタイミングで得られた入力画像50および第1の距離画像を、受付けるものとする。すなわち、情報処理装置11Bは、同じ撮影環境の、入力画像50および第1の距離画像を受付ける。情報処理装置11Bは、受付けた入力画像50および第1の距離画像を用いて、情報処理を実行する。なお、情報処理装置11Bのハードウェア構成は、情報処理装置10と同様である。
図9は、情報処理装置11Bの機能の一例を示す図である。
情報処理装置11Bは、第1の取得部20Aと、編集部20Bと、第2の出力制御部20Cと、第1の抽出部20Dと、伸長部20Eと、第1の生成部20Fと、第2の抽出部20Gと、導出部22Hと、第1の補正部20Iと、を備える。また、情報処理装置11Bは、第1の出力制御部20Jと、第2の取得部22Kと、第3の抽出部22Lと、二値化部22Mと、二値化部22Nと、論理和演算部22Oと、を備える。
上記複数の各部の一部または全ては、例えば、CPU10Aなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよい。また、上記複数の各部の一部または全ては、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
すなわち、本実施の形態の情報処理装置11Bは、第1の実施の形態の導出部20Hに代えて導出部22Hを備える。また、情報処理装置11Bは、第1の実施の形態の情報処理装置10の機能に加えて、第2の取得部22K、第3の抽出部22L、二値化部22M、二値化部22N、および論理和演算部22Oを更に備える。
第2の取得部22Kは、第1のセンサ18から第1の距離画像を取得する。
第3の抽出部22Lは、第1の距離画像から第3の特徴点情報を抽出する。第3の特徴点情報は、第1の距離画像に含まれる、物体の少なくとも一部の特徴点を示す情報である。特徴点は、上記第1の実施の形態と同様である。本実施の形態では、第3の特徴点情報は、第1の距離画像に含まれる、物体の輪郭線(境界、エッジ)を示す情報である場合を、一例として説明する。
本実施の形態では、第3の抽出部22Lは、ハイパスフィルタを用いて、第1の距離画像から第3の特徴点情報を抽出する。ハイパスフィルタは、第1の抽出部20Dが用いるハイパスフィルタと同様である。すなわち、第3の抽出部22Lは、ハイパスフィルタを用いて、第1の距離画像を構成する複数の検知点の各々について、周辺の検知点との距離情報の変化率を導出することで、第3の特徴点情報を抽出する。すなわち、本実施の形態では、第3の抽出部22Lは、第1の距離画像を構成する検知点ごとに、第3の特徴点情報を抽出する。
周辺の検知点とは、処理対象の検知点に対して隣接して配置された少なくとも1つの他の検知点を示す。なお、周辺の検知点は、処理対象の検知点に対して隣接して配置された他の検知点と、該検知点に対して隣接する位置から離れる方向に向かって配列された1または複数の他の検知点と、を含むものであってもよい。
距離情報の変化率は、距離情報によって表される距離の変化率を示す。このため、本実施の形態では、第3の抽出部22Lは、第1の距離画像の検知点ごとに、周辺の検知点との距離情報の変化率、すなわち、距離の勾配(微分値)を、第3の特徴点情報として抽出する。
なお、第3の抽出部22Lは、公知の方法で、第1の距離画像に含まれる第3の特徴点情報を抽出すればよく、ハイパスフィルタを用いた形態に限定されない。
なお、第1の距離画像に含まれる複数の検知点の内、周辺の検知点との変化率の大きい検知点の周辺には、重要な境界が存在する可能性が高い。このため、第3の抽出部22Lは、複数種類のフィルタを用いてフィルタ処理を多重化することで、第3の特徴点情報を抽出することが好ましい。フィルタ処理を多重化することで、より正確に第3の特徴点情報を抽出することができる。
二値化部22Mは、第3の特徴点情報を二値化する。二値化部22Mは、第3の特徴点情報が、予め定めた第2の閾値以上である場合に二値化結果“1”(真)を導出し、第2の閾値未満である場合に二値化結果“0”(偽)を導出する。
第2の閾値には、物体の輪郭線または境界を示す情報であるか否かを判別するための閾値を予め定めればよい。
二値化部22Mは、二値化した結果を、論理和演算部22Oへ出力する。詳細には、例えば、二値化部22Mは、第3の特徴点情報の二値化結果と、該第3の特徴点情報を示す検知点の識別情報とを、論理和演算部22Oへ出力する。検知点の識別情報は、例えば、第1の距離画像における位置を示す情報である。
一方、第1の抽出部20Dは、第1の実施の形態と同様に、表示画像53を構成する複数の画素の各々について、周辺画素との画素値の変化率を導出することで、第1の特徴点情報を抽出する。そして、第1の抽出部20Dは、第1の実施の形態と同様に、抽出した第1の特徴点情報と、第1の特徴点情報を抽出した画素の識別情報とを、画素ごとに順次、導出部22Hへ出力する。
本実施の形態では、第1の抽出部20Dは、更に、抽出した第1の特徴点情報と、第1の特徴点情報を抽出した画素の識別情報とを、画素ごとに二値化部22Nへ出力する。
二値化部22Nは、第1の抽出部20Dで抽出された第1の特徴点情報を二値化する。二値化部22Nは、第1の特徴点情報が、予め定めた第3の閾値以上である場合に二値化結果“1”(真)を導出し、第3の閾値未満である場合に二値化結果“0”(偽)を導出する。
第3の閾値には、第2の閾値と同様に、物体の輪郭線または境界を示す情報であるか否かを判別するための閾値を予め定めればよい。
二値化部22Nは、二値化結果を、論理和演算部22Oへ出力する。詳細には、例えば、二値化部22Nは、第1の特徴点情報の二値化結果と、該第1の特徴点情報を示す画素の識別情報とを、論理和演算部22Oへ出力する。画素の識別情報は、上述したように、第1の画像52における画素位置を示す情報である。
論理和演算部22Oは、第1の特徴点情報と第3の特徴点情報とを論理和演算する。詳細には、例えば、論理和演算部22Oは、第1の特徴点情報の二値化部22Nによる二値化結果と、第3の特徴点情報の二値化部22Mによる二値化結果と、の論理和を演算する。なお、本明細書において、論理和演算するとは、二値化された情報に対して論理和を演算することに加えて、入力情報を二値化し、その二値化結果に対して論理和を演算することを含む。以下の第3乃至第5の実施の形態においても同様である。よって、図9では、論理和演算部22Oと、二値化部22N、二値化部22Mを独立した機能部として示したが、論理和演算部22Oが二値化部22N、二値化部22Mの機能を内部に備えるようにすることもできる。
このとき、論理和演算部22Oは、第1の画像52を構成する複数の画素の各々について、第1の特徴点情報の二値化結果と、各画素に対応する位置の検知点の第3の特徴点情報の二値化結果と、の論理和を演算する。対応する位置とは、画像における位置が同じ位置であることを示す。詳細には、対応する位置とは、実空間の位置が同じである事を示す。このため、論理和演算部22Oは、第1の画像52を構成する複数の画素と、第1の距離画像に含まれる複数の検知点と、の各々について、同じ位置の画素と検知点との対ごとに、論理和を演算する。
論理和演算部22Oは、第1の特徴点情報の二値化部22Nによる二値化結果と、第3の特徴点情報の二値化部22Mによる二値化結果と、の少なくとも一方が“1”の場合に、“1”を導出する。また、論理和演算部22Oは、第1の特徴点情報の二値化部22Nによる二値化結果と、第3の特徴点情報の二値化部22Mによる二値化結果と、の双方が“0”の場合に、“0”を導出する。
そして、論理和演算部22Oは、上記の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“1”である画素については、第1の特徴点情報を第4の特徴点情報として用いる。一方、論理和演算部22Oは、上記の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“0”である画素については、第1の特徴点情報に代えて、第1の補正情報を第4の特徴点情報として用いる。ここで、第1の補正情報は、上記第3の閾値以上の値であればよく、例えば、予め定めた、上記第3の閾値以上の固定値とすることができる。また、論理和演算部22Oは、上記の論理和演算の結果に基づいて、論理和演算の結果が“0”(偽)である画素については、第1の特徴点情報を第4の特徴点情報として用いる。
このため、論理和演算部22Oは、論理和演算の結果に基づいて、表示画像53に、第1の距離画像から識別される物体の特徴点を加えた情報を得ることができる。すなわち、論理和演算部22Oは、表示画像53における、物体の特徴点を示す情報が含まれない画素について、第1の距離画像から抽出された特徴点を示す情報を加えることができる。
詳細には、論理和演算部22Oは、論理和演算した結果に基づいて第1の特徴点情報を修正することにより第4の特徴点情報を生成することができる。すなわち、論理和演算部22Oは、表示画像53における、物体の特徴点を示す情報が含まれない画素について、第1の距離画像から抽出された第3の特徴点情報に基づいて、第1の特徴点情報に含まれる変化量より大きい変化量を示す第4の特徴点情報を定めることができる。
論理和演算部22Oは、表示画像53を構成する複数の画素の各々について論理和演算の結果に基づいて生成した第4の特徴点情報と、画素の識別情報と、を画素ごとに順次、導出部22Hへ出力する。
導出部22Hは、第3の画像56における第1の画像52に対応する画素ごとに、論理和演算部22Oから受付けた第4の特徴点情報と、第2の特徴点情報と、の差を導出する。
導出部22Hは、第1の実施の形態の導出部20Hと同様に、導出した差が第1の閾値以上であるか否かを判断する。導出部22Hは、導出した差が第1の閾値以上である場合、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素の画素値の補正指示を、第1の補正部20Iへ出力する。一方、導出部22Hは、導出した差が第1の閾値未満である場合、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素位置の画素を出力対象とする出力対象指示を、第1の出力制御部20Jへ出力する。
このように、本実施の形態では、導出部22Hは、第1の特徴点情報と第3の特徴点情報とを論理和演算した結果に基づいて第1の特徴点情報を修正することにより生成した第4の特徴点情報と、第3の画像56から抽出した第2の特徴点情報と、の差を導出する。そして、第1の実施の形態と同様に、第1の補正部20Iは、差に応じて伸長済画像55を補正する。第1の出力制御部20Jは、差に応じて第1の補正部20Iによって補正された第2の画像54のデータ量を低減した第3の画像56を、出力画像58として学習部16へ出力する。
なお、第1の補正部20Iは、第1の実施の形態と同様に、導出された差に応じて、第3の画像56を補正してもよい。
次に、本実施の形態の情報処理装置11Bが実行する、情報処理の流れの一例を説明する。図10は、本実施の形態の情報処理装置11Bが実行する、情報処理の一例を示すフローチャートである。なお、複数のステップの各々の順番は適宜変更可能であり、図10の例に限られるものではない。また、複数のステップの少なくとも一部は、並列して実行してもよい。
第1の取得部20Aが撮影部12から入力画像50を取得する(ステップS200)。編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する(ステップS202)。ステップS202の処理によって、表示画像53が生成される。第2の出力制御部20Cは、ステップS202で生成された表示画像53を表示部14へ出力する(ステップS204)。伸長部20Eは、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する(ステップS206)。ステップS206の処理によって、伸長済画像55が生成される。ステップS200~ステップS206は、第1の実施の形態のステップS100~ステップS106と同様である。
第2の取得部22Kが、第1のセンサ18から第1の距離画像を取得する(ステップS208)。ステップS208で取得する第1の距離画像は、ステップS200で取得した入力画像50と同じタイミングで同じ撮影環境を観測したものである。
情報処理装置11Bは、ステップS200で取得した入力画像50(第1の画像52、第2の画像54)の画素ごとに、ステップS210~ステップS228の処理を繰返す。
詳細には、第1の抽出部20Dが、ステップS202で生成された表示画像53における処理対象の画素について、第1の特徴点情報を抽出する(ステップS210)。
第3の抽出部22Lが、ステップS208で取得した第1の距離画像に含まれる複数の検知点の内、ステップS210の処理対象の画素に対応する位置の検知点の第3の特徴点情報を抽出する(ステップS212)。
論理和演算部22Oが、ステップS210で抽出した第1の特徴点情報と、ステップS212で抽出した第3の特徴点情報とを論理和演算する(ステップS214)。例えば、論理和演算部22Oは、ステップS210で抽出した第1の特徴点情報の二値化部22Nによる二値化結果を得る。また、論理和演算部22Oは、ステップS212で抽出した第3の特徴点情報の二値化部22Mによる二値化結果を得る。そして、論理和演算部22Oは、これらの二値化結果の論理和を演算する。
第1の生成部20Fは、ステップS206で生成した伸長済画像55における、ステップS210で処理対象とした画素位置の画素について、データ量を低減する(ステップS216)。第2の抽出部20Gは、ステップS216でデータ量を低減された画素から第2の特徴点情報を抽出する(ステップS218)。
論理和演算部22Oは、第4の特徴点情報を導出する(ステップS220)。論理和演算部22Oは、ステップS214の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“1”である画素については、第1の特徴点情報を第4の特徴点情報として用いる。一方、論理和演算部22Oは、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“0”である画素については、第1の特徴点情報に代えて、第1の補正情報を第4の特徴点情報として用いる。また、論理和演算部22Oは、論理和演算の結果が“0”(偽)である画素については、第1の特徴点情報を第4の特徴点情報として用いる。
導出部22Hが、ステップS220で導出した第4の特徴点情報と、ステップS218で抽出された第2の特徴点情報と、の差を導出する(ステップS222)。導出部22Hは、ステップS222で導出した差が第1の閾値以上であるか否かを判断する(ステップS224)。
ステップS224で導出した差が第1の閾値以上である場合(ステップS224:Yes)、導出部22Hは、差の導出に用いた画素の画素値の補正指示を、第1の補正部20Iへ出力する。補正指示を受付けた第1の補正部20Iは、ステップS206で生成された伸長済画像55に含まれる、ステップS224で差が第1の閾値以上と判断された画素の画素値を、差に応じて補正する(ステップS226)。そして、第1の補正部20Iは、補正した画素の画素値を第1の生成部20Fへ出力し、ステップS216へ戻る。ステップS216では、第1の生成部20Fは、補正された画素のデータ量を低減し、上記処理が繰返される。
一方、ステップS222で導出した差が第1の閾値未満である場合(ステップS224:No)、導出部22Hは、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素位置の画素を出力対象とする出力対象指示を、第1の出力制御部20Jへ出力する。第1の出力制御部20Jは、第3の画像56における、受付けた出力対象指示に示される画素位置の画素の画素値を、出力対象として保持する(ステップS228)。
ステップS200で取得した入力画像50(第1の画像52、第2の画像54)の全ての画素について、ステップS210~ステップS228の処理が終了すると、ステップS230へ進む。第1の出力制御部20Jは、上記差が第1閾値未満の画素からなる第3の画像56である出力画像58を、学習部16へ出力する(ステップS230)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置11Bは、第2の取得部22Kが、入力画像50の撮影環境に含まれる複数の検知点の各々の第1のセンサ18からの距離情報を規定した、第1の距離画像を取得する。第3の抽出部22Lは、第1の距離画像から第3の特徴点情報を抽出する。導出部22Hは、第1の特徴点情報と第3の特徴点情報との論理和演算に基づいて生成した第4の特徴点情報と、第2の特徴点情報と、の差を導出する。
ここで、撮影部12によって得られる入力画像50である第1の画像52からは、撮影部12からの距離または物体の輪郭の複雑さに拘らず、明るさの変化率を示す第1の特徴点情報を抽出可能である。しかし、第1の画像52では、明るさの差が小さいほど、小さい変化率を示す第1の特徴点情報が得られる。このため、第1の画像52では、背景との明るさの差の小さい物体ほど、識別することが困難となる。
一方、第1の距離画像は、上述したように、検知点毎に第1のセンサ18からの距離情報を規定した画像である。このため、第1の距離画像からは、明るさの差の大小に拘らず、距離情報の変化率を示す第3の特徴点情報を抽出可能である。しかし、第1の距離画像では、撮影環境に含まれる物体の輪郭が複雑であるほど、または、第1のセンサ18から出力される光の到達困難な領域であるほど、小さい変化率を示す第3の特徴点情報が得られる。このため、第1の距離画像では、輪郭が複雑な物体であるほど、または、光の到達困難な領域の物体であるほど、識別することが困難となる。
一方、本実施の形態では、情報処理装置11Bは、第1の距離画像から抽出した第3の特徴点情報と、第1の画像52から抽出した第1の特徴点情報とを論理和演算する。この論理和演算により、情報処理装置11Bは、第1の画像52に、第1の距離画像から識別される物体の特徴点を加えた情報を、第4の特徴点情報として得ることができる。
そして、導出部22Hは、第4の特徴点情報と、第2の特徴点情報と、の差を導出する。このため、本実施の形態の情報処理装置11Bでは、第1の距離画像から抽出された第3の特徴点情報を更に用いることで、物体の識別精度を向上させた第1の画像52を用いて、第4の特徴点情報と、第2の特徴点情報と、の差を導出することができる。
従って、本実施の形態の情報処理装置11Bは、上記第1の実施の形態の効果に加えて、特徴点欠損を更に抑制し、且つデータ量の低減された画像を提供することができる。
(第3の実施の形態)
上記第1の実施の形態では、入力画像50を取得し、情報処理に用いた。本実施の形態では、入力画像50および方向情報を取得し、情報処理に用いる形態を説明する。
なお、本実施の形態および以下の実施の形態において、上記第1及び第2の実施の形態と同じ機能および構成の部分には、同じ符号を付与し、詳細な説明を省略する。
図11は、本実施の形態の情報処理システム1Cの全体構成の一例を示す図である。情報処理システム1Cは、情報処理装置11Cと、撮影部12と、表示部14と、学習部16と、第2のセンサ19と、を備える。撮影部12、表示部14、学習部16、および第2のセンサ19と、情報処理装置11Cとは、データまたは信号を授受可能に接続されている。撮影部12、表示部14、および学習部16は、上記第1の実施の形態と同様である。
第2のセンサ19は、入力画像50の撮影環境に含まれる物体の、第2のセンサ19からの方向を示す方向情報を得る。詳細には、例えば、第2のセンサ19は、物体の有無、物体までの距離、および、物体の方向を示す方向情報を、情報処理装置11Cへ出力する。
第2のセンサ19は、例えば、音波または超音波によって物体を探知するソナー、または音声を集音し音声データを出力するマイクである。第2のセンサ19は、受信した音波、超音波、または音声データの強弱を公知の方法で解析することで、物体の方向を示す方向情報を導出する。このとき、第2のセンサ19は、受信した音波、超音波、または音声データの解析により、物体の有無、および第2のセンサ19から物体までの距離を更に導出してもよい。本実施の形態では、方向情報が、物体の有無、第2のセンサ19から物体までの距離、および物体の方向を示す情報である場合を、一例として説明する。そして、第2のセンサ19は、方向情報を情報処理装置11Cへ出力する。なお、受信した音波、超音波、または音声データの解析は、情報処理装置11Cで実行してもよい。
情報処理装置11Cは、撮影部12から入力画像50を受付ける。また、情報処理装置11Cは、第2のセンサ19から方向情報を受付ける。なお、情報処理装置11Cは、同じタイミングに得られた入力画像50および方向情報を、受付けるものとする。すなわち、情報処理装置11Cは、同じ撮影環境の、入力画像50および方向情報を受付ける。情報処理装置11Cは、受付けた入力画像50および方向情報を用いて、情報処理を実行する。なお、情報処理装置11Cのハードウェア構成は、情報処理装置10と同様である。
図12は、情報処理装置11Cの機能の一例を示す図である。
情報処理装置11Cは、第1の取得部20Aと、編集部20Bと、第2の出力制御部20Cと、第1の抽出部20Dと、伸長部24Eと、を備える。また、情報処理装置11Cは、第1の生成部20Fと、第2の抽出部20Gと、導出部20Hと、第1の補正部20Iと、第1の出力制御部20Jと、第3の取得部24Pと、を備える。
上記複数の各部の一部または全ては、例えば、CPU10Aなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよい。また、上記複数の各部の一部または全ては、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
本実施の形態の情報処理装置11Cは、第1の実施の形態の伸長部20Eに代えて、伸長部24Eを備える。また、情報処理装置11Cは、第3の取得部24Pを更に備える。
第3の取得部24Pは、第2のセンサ19から方向情報を取得する。方向情報は、上述したように、物体の有無、物体までの距離、および、物体の方向を示す情報である。第3の取得部24Pは、取得した方向情報を伸長部24Eへ出力する。
なお、第3の取得部24Pは、取得した方向情報によって示される、撮影環境に含まれる物体と第2のセンサ19との距離が、予め定めた第4の閾値未満である場合に、方向情報を伸長部24Eへ出力してもよい。第4の閾値は、輪郭または境界を強調する対象の物体であるか否かを判別するための値を予め定めればよい。
伸長部24Eは、第1の実施の形態の伸長部20Eと同様に、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する。本実施の形態では、伸長部24Eは、増加処理部24Qを有する。
増加処理部24Qは、第2の画像54の全領域の内、方向情報に応じた物体領域のデータ量を増加させる。
詳細には、例えば、増加処理部24Qは、第2の画像54の全領域の内、方向情報によって示される物体の存在する領域を、物体領域として特定する。具体的には、増加処理部24Qは、方向情報によって示される、第2のセンサ19からの距離が第4の閾値未満である物体が存在する領域を、物体領域として特定する。なお、増加処理部24Qは、第2のセンサ19で受信した音波、超音波、または音声データを公知の方法で解析することで、撮影環境における、物体の位置する方向および物体の範囲を推定してもよい。そして、増加処理部24Qは、第2の画像54における、推定した方向および範囲を、物体領域として特定してもよい。
そして、増加処理部24Qは、伸長部24Eによって伸長化された第2の画像54の全領域の内、特定した物体領域のデータ量を増加させる。
物体領域のデータ量を増加させる、とは、物体領域のデータ量を現在のデータ量より増加させることを示す。具体的には、物体領域のデータ量を増加させる、とは、ビット深度を現在のビット深度より増加させること、または、解像度を現在の解像度より増加させること、を示す。物体領域のデータ量の増加には、例えば、ガンマ補正などを用いればよい。
データ量を増加させる物体領域は、第2の画像54に含まれる複数の画素の内、特定した物体領域内の画素、特定した物体領域の輪郭を構成する画素、または、特定した物体領域を含む領域の画素、であればよい。本実施の形態では、増加処理部24Qは、第2の画像54に含まれる複数の画素の内、特定した物体領域の輪郭を構成する画素のデータ量を増加させる形態を、一例として説明する。
増加処理部24Qが、第2の画像54の全領域の内、方向情報によって特定された物体領域のデータ量を増加させることで、第2の画像54のデータ量を低減したときに物体の特徴点の欠損が抑制されるように、第2の画像54を補正することができる。
そして、増加処理部24Qを含む伸長部24Eは、伸長および物体領域のデータ量を増加させた第2の画像54を、第1の実施の形態の伸長部20Eと同様に、伸長済画像55として生成する。そして、増加処理部24Qは、伸長済画像55を第1の生成部20Fへ出力する。
第1の生成部20Fは、伸長済画像55のデータ量を低減し、第3の画像56を生成する。
ここで、第1の生成部20Fがデータ量を低減する対象の伸長済画像55の物体領域は、増加処理部24Qによってデータ量が増加させられている。このため、第1の生成部20Fがデータ量を低減することで生成した第3の画像56の該物体領域は、該物体領域以外の領域よりデータ量が多い。このため、第2の抽出部20Gは、該第3の画像56から第2の特徴点情報を抽出することで、物体領域の強調された第2の特徴点情報を抽出することができる。
次に、本実施の形態の情報処理装置11Cが実行する、情報処理の流れの一例を説明する。図13は、本実施の形態の情報処理装置11Cが実行する、情報処理の一例を示すフローチャートである。なお、複数のステップの各々の順番は適宜変更可能であり、図13の例に限られるものではない。
第1の取得部20Aが撮影部12から入力画像50を取得する(ステップS300)。編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する(ステップS302)。ステップS302の処理によって、表示画像53が生成される。第2の出力制御部20Cは、ステップS302で生成された表示画像53を表示部14へ出力する(ステップS304)。
第3の取得部24Pが第2のセンサ19から方向情報を取得する(ステップS306)。伸長部24Eが、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する。そして、伸長部24Eの増加処理部24Qが、伸長化した第2の画像54における、ステップS306で取得した方向情報に応じた物体領域のデータ量を増加させる(ステップS308)。ステップS308の処理によって、伸長済画像55が生成される。
第1の抽出部20D、第1の生成部20F、第2の抽出部20G、導出部20H、および、第1の補正部20Iが、ステップS300で取得した入力画像50(第1の画像52、第2の画像54)の画素ごとに、ステップS310~ステップS322の処理を繰返す。ステップS310~ステップS322は、第1の実施の形態のステップS108~ステップS120と同様である(図7参照)。
そして、ステップS300で取得した入力画像50の全ての画素について、ステップS310~ステップS322の処理が終了すると、ステップS324へ進む。第1の出力制御部20Jは、上記差が第1閾値未満の画素からなる第3の画像56である出力画像58を、学習部16へ出力する(ステップS324)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置11Cは、第3の取得部24Pが、入力画像50の撮影環境に含まれる物体の第2のセンサ19からの方向を示す方向情報を取得する。増加処理部24Qは、第2の画像54の全領域の内、方向情報に応じた物体領域のデータ量を増加させる。第1の生成部20Fは、物体領域のデータ量が増加させられた第2の画像54のデータ量を低減した、第3の画像56を生成する。
第1の生成部20Fがデータ量を低減する対象の第2の画像54の物体領域は、増加処理部24Qによってデータ量が増加させられている。このため、第1の生成部20Fがデータ量を低減することで生成した第3の画像56の該物体領域は、該物体領域以外の領域よりデータ量が多い。このため、第2の抽出部20Gは、該第3の画像56から第2の特徴点情報を抽出することで、物体領域の強調された第2の特徴点情報を抽出することができる。すなわち、導出部20Hは、上記第1の実施の形態に比べて、上記差を、更に精度良く導出することが可能となる。
このため、第1の補正部20Iが、上記差に応じて伸長済画像55を補正することで、上記第1の実施の形態に比べて、特徴点欠損を更に抑制した第3の画像56を出力画像58として出力することが可能となる。
従って、本実施の形態の情報処理装置11Cは、上記第1の実施の形態の効果に加えて、更に特徴点欠損を抑制し、且つデータ量が低減された画像を提供することができる。
(第4の実施の形態)
上記第1の実施の形態では、入力画像50を取得し、情報処理に用いた。本実施の形態では、入力画像50、距離情報、および方向情報を取得し、情報処理に用いる形態を説明する。
なお、本実施の形態および以下の実施の形態において、上記第1乃至第3の実施の形態と同じ機能および構成の部分には、同じ符号を付与し、詳細な説明を省略する。
図14は、本実施の形態の情報処理システム1Dの全体構成の一例を示す図である。情報処理システム1Dは、情報処理装置11Dと、撮影部12と、表示部14と、学習部16と、第1のセンサ18と、第2のセンサ19と、を備える。撮影部12、表示部14、学習部16、第1のセンサ18、および第2のセンサ19と、情報処理装置11Dとは、データまたは信号を授受可能に接続されている。撮影部12、表示部14、学習部16、第1のセンサ18、および第2のセンサ19は、上記第1乃至第3の実施の形態と同様である。
情報処理装置11Dは、撮影部12から入力画像50を受付ける。また、情報処理装置11Dは、第1のセンサ18から第1の距離画像を受付ける。また、情報処理装置11Dは、第2のセンサ19から方向情報を受付ける。なお、情報処理装置11Dは、同じタイミングに得られた入力画像50、第1の距離画像、および方向情報を、受付けるものとする。すなわち、情報処理装置11Dは、同じ撮影環境の、入力画像50、第1の距離画像、および方向情報を受付ける。情報処理装置11Dは、受付けた入力画像50、第1の距離画像、および方向情報を用いて、情報処理を実行する。なお、情報処理装置11Dのハードウェア構成は、情報処理装置10と同様である。
図15は、情報処理装置11Dの機能の一例を示す図である。
情報処理装置11Dは、第1の取得部20Aと、編集部20Bと、第2の出力制御部20Cと、第1の抽出部20Dと、伸長部20Eと、第1の生成部20Fと、第2の抽出部20Gと、導出部26Hと、第1の補正部20Iと、を備える。また、情報処理装置11Dは、第1の出力制御部20Jと、第2の取得部26Kと、第3の取得部26Pと、第2の生成部26Rと、第5の抽出部26Sと、二値化部26Vと、を備える。また、情報処理装置11Dは、二値化部26Tと、論理和演算部26Uと、を備える。
上記複数の各部の一部または全ては、例えば、CPU10Aなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよい。また、上記複数の各部の一部または全ては、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
本実施の形態の情報処理装置11Dは、第1の実施の形態の導出部20Hに代えて、導出部26Hを備える。また、情報処理装置11Dは、第1の実施の形態の情報処理装置10の機能に加えて、第2の取得部26K、第3の取得部26P、第2の生成部26R、第5の抽出部26S、二値化部26V、論理和演算部26U、および二値化部26Tを更に備える。
第2の取得部26Kは、第1のセンサ18から第1の距離画像を取得する。第3の取得部26Pは、第2のセンサ19から方向情報を取得する。第1の距離画像および方向情報は、上記第1及び第2の実施の形態と同様である。
第2の生成部26Rは、第2の取得部26Kで取得した第1の距離画像を、第3の取得部26Pで取得した方向情報を用いて補正する。この補正により、第2の生成部26Rは、第1の距離画像から第2の距離画像を生成する。
詳細には、例えば、第2の生成部26Rは、第1の距離画像の全領域の内、方向情報に応じた物体領域内の検知点の距離情報について、周辺の他の検知点との距離情報の変化率が増加するように補正する。この補正により、第2の生成部26Rは、第2の距離画像を生成する。
具体的には、第2の生成部26Rは、第1の距離画像の全領域の内、方向情報によって示される物体の存在する領域を、物体領域として特定する。物体領域の特定方法は、上記第3の実施の形態と同様である。
そして、第2の生成部26Rは、第1の距離画像に含まれる複数の検知点の内、物体領域の検知点の距離情報を、周辺の他の検知点との変化率が現在の変化率より大きくなるように補正する。このため、第1の距離画像に含まれる検知点の内、物体領域の輪郭を構成する検知点の距離情報が、より輪郭を強調した値となるように補正される。
なお、第1の距離画像の全領域の内の補正対象の物体領域は、第1の距離画像に含まれる複数の検知点の内、特定した物体領域内の検知点、特定した物体領域の輪郭を構成する検知点、または、特定した物体領域を含む領域の検知点、であればよい。本実施の形態では、第2の生成部26Rは、第1の距離画像に含まれる複数の検知点の内、特定した物体領域の輪郭を構成する検知点の距離情報を補正することで、第2の距離画像を生成する形態を説明する。
第5の抽出部26Sは、第2の距離画像から第5の特徴点情報を抽出する。第5の特徴点情報は、第2の距離画像に含まれる、物体の少なくとも一部の特徴点を示す情報である。特徴点は、上記第2の実施の形態と同様である。本実施の形態では、第5の特徴点情報は、第2の距離画像に含まれる、物体の輪郭線を示す情報である場合を、一例として説明する。
本実施の形態では、第5の抽出部26Sは、ハイパスフィルタを用いて、第2の距離画像から第5の特徴点情報を抽出する。ハイパスフィルタは、上記第2の実施の形態と同様である。すなわち、第5の抽出部26Sは、ハイパスフィルタを用いて、第2の距離画像を構成する複数の検知点の各々について、周辺の検知点との距離情報の変化率を導出することで、第5の特徴点情報を抽出する。周辺の検知点の定義は、上記第2の実施の形態と同様である。
ここで、第2の距離画像は、第1の距離画像に含まれる物体領域の検知点の距離情報について、周辺の検知点との距離情報の変化率を増加させた距離画像である。すなわち、第2の距離画像は、第1の距離画像に含まれる物体領域の輪郭を構成する検知点について、より輪郭を強調した値となるように距離情報を補正した画像である。このため、第5の抽出部26Sは、第1の距離画像を用いる場合に比べて、物体を強調した第5の特徴点情報を抽出することができる。
上記第2の実施の形態と同様に、距離情報の変化率は、距離情報によって表される距離の変化率を示す。このため、本実施の形態では、第5の抽出部26Sは、第2の距離画像に含まれる複数の検知点ごとに、周辺の検知点との距離情報の変化率、すなわち、距離の勾配(微分値)を、第5の特徴点情報として抽出する。
なお、第5の抽出部26Sは、公知の方法で、第2の距離画像に含まれる第5の特徴点情報を抽出すればよく、ハイパスフィルタを用いた形態に限定されない。
二値化部26Vは、第5の抽出部26Sで抽出された第5の特徴点情報を二値化する。二値化部26Vは、第5の特徴点情報が、予め定めた第5の閾値以上である場合に二値化結果“1”(真)を導出し、第5の閾値未満である場合に二値化結果“0”(偽)を導出する。
第5の閾値には、物体の輪郭線を示す情報であるか否かを判別するための閾値を予め定めればよい。
二値化部26Vは、二値化した結果を、論理和演算部26Uへ出力する。詳細には、例えば、二値化部26Vは、第5の特徴点情報の二値化結果と、該第5の特徴点情報を示す検知点の識別情報とを、論理和演算部26Uへ出力する。検知点の識別情報は、例えば、第2の距離画像における位置を示す情報である。
一方、第1の抽出部20Dは、第1の実施の形態と同様に、第1の画像52を構成する複数の画素の各々について、周辺画素との画素値の変化率を導出することで、第1の特徴点情報を抽出する。そして、第1の抽出部20Dは、抽出した第1の特徴点情報と、第1の特徴点情報を抽出した画素の識別情報とを、画素ごとに順次、導出部26Hへ出力する。
本実施の形態では、第1の抽出部20Dは、更に、抽出した第1の特徴点情報と、第1の特徴点情報を抽出した画素の識別情報とを、画素ごとに二値化部26Tへ出力する。
二値化部26Tは、第1の抽出部20Dで抽出された第1の特徴点情報を二値化する。二値化部26Tは、第2の実施の形態の二値化部22Nと同様に(図9参照)、第1の特徴点情報が予め定めた第3の閾値以上である場合に二値化結果“1”(真)を導出し、第3の閾値未満である場合に二値化結果“0”(偽)を導出する。第3の閾値は、上記第2の実施の形態と同様である。
二値化部26Tは、二値化結果を、論理和演算部26Uへ出力する。詳細には、例えば、二値化部26Tは、第1の特徴点情報の二値化結果と、該第1の特徴点情報を示す画素の識別情報とを、論理和演算部26Uへ出力する。画素の識別情報は、上述したように、第1の画像52における位置を示す情報である。
論理和演算部26Uは、第1の特徴点情報と第5の特徴点情報とを論理和演算する。詳細には、例えば、論理和演算部26Uは、第1の特徴点情報の二値化部26Tによる二値化結果と、第5の特徴点情報の二値化部26Vによる二値化結果と、の論理和を演算する。このとき、論理和演算部26Uは、第1の画像52を構成する複数の画素の各々について、第1の特徴点情報の二値化結果と、各画素に対応する位置の検知点の第5の特徴点情報の二値化結果と、の論理和を演算する。なお、図15では、論理和演算部26Uと、二値化部26T、26Vを独立した機能部として示したが、論理和演算部26Uが二値化部26T、二値化部26Vの機能を内部に備えるようにすることもできる。
すなわち、論理和演算部26Uは、第1の特徴点情報の二値化部26Tによる二値化結果と、第5の特徴点情報の二値化部26Vによる二値化結果と、の少なくとも一方が“1”の場合に、“1”を導出する。また、論理和演算部26Uは、第1の特徴点情報の二値化部26Tによる二値化結果と、第5の特徴点情報の二値化部26Vによる二値化結果と、の双方が“0”の場合に、“0”を導出する。
そして、論理和演算部26Uは、上記の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“1”である画素については、第1の特徴点情報を第6の特徴点情報として用いる。一方、論理和演算部22Oは、上記の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第6の特徴点情報の二値化結果が“0”である画素については、第6の特徴点情報に代えて、第2の補正情報を第4の特徴点情報として用いる。ここで、第2の補正情報は、上記第3の閾値以上の値であればよく、例えば、予め定めた、上記第3の閾値以上の固定値とすることができる。また、論理和演算部22Oは、上記の論理和演算の結果に基づいて、論理和演算の結果が“0”(偽)である画素については、第1の特徴点情報を第6の特徴点情報として用いる。
このため、論理和演算部26Uは、論理和演算の結果に基づいて、表示画像53に、第2の距離画像から識別される物体の特徴点を加えた情報を得ることができる。また、第2の距離画像は、第1の距離画像に含まれる物体領域の輪郭を構成する検知点について、より輪郭を強調した値となるように距離情報を補正した画像である。このため、論理和演算部26Uは、表示画像53に含まれる、物体の特徴点を示す情報が含まれない画素に、第1の距離画像の物体領域を強調した第5の特徴点情報に応じた情報を、論理和演算の結果に基づいて付与することができる。
詳細には、論理和演算部26Uは、論理和演算した結果に基づいて第1の特徴点情報を修正することにより第6の特徴点情報を生成することができる。すなわち、論理和演算部26Uは、表示画像53における、物体の特徴点を示す情報が含まれない画素について、物体領域の輪郭をより強調した値となるように補正された第2の距離画像から抽出された、物体領域を強調した第5の特徴点情報に基づいて、第1の特徴点情報に含まれる変化量より大きい変化量を示す第6の特徴点情報を定めることができる。
論理和演算部26Uは、表示画像53を構成する複数の画素の各々について論理和演算の結果に基づいて生成した第6の特徴点情報と、画素の識別情報と、を画素ごとに順次、導出部26Hへ出力する。
導出部26Hは、第3の画像56における第1の画像52に対応する画素ごとに、論理和演算部26Uから受付けた第6の特徴点情報と、第2の特徴点情報と、の差を導出する。
導出部26Hは、第1の実施の形態の導出部20Hと同様に、導出した差が第1の閾値以上であるか否かを判断する。導出部26Hは、導出した差が第1の閾値以上である場合、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素の画素値の補正指示を、第1の補正部20Iへ出力する。一方、導出部26Hは、導出した差が第1の閾値未満である場合、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素位置の画素を出力対象とする出力対象指示を、第1の出力制御部20Jへ出力する。
このように、本実施の形態では、導出部26Hは、第1の特徴点情報と第5の特徴点情報とを論理和演算した結果に基づいて第1の特徴点情報を修正することにより生成した第6の特徴点情報と、第2の画像54から抽出した第2の特徴点情報と、の差を導出する。そして、第1の実施の形態と同様に、第1の補正部20Iは、差に応じて第2の画像54を補正する。第1の出力制御部20Jは、差に応じて補正された第2の画像54のデータ量を低減した第3の画像56を、出力画像58として学習部16へ出力する。
なお、第1の補正部20Iは、第1の実施の形態と同様に、差に応じて、第1の生成部20Fによって生成された第3の画像56を補正してもよい。
次に、本実施の形態の情報処理装置11Dが実行する、情報処理の流れの一例を説明する。図16は、本実施の形態の情報処理装置11Dが実行する、情報処理の一例を示すフローチャートである。なお、複数のステップの各々の順番は適宜変更可能であり、図16の例に限られるものではない。
第1の取得部20Aが撮影部12から入力画像50を取得する(ステップS400)。編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する(ステップS402)。ステップS402の処理によって、表示画像53が生成される。第2の出力制御部20Cは、ステップS402で生成された表示画像53を表示部14へ出力する(ステップS404)。伸長部20Eは、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する(ステップS406)。ステップS406の処理によって、伸長済画像55が生成される。ステップS400~ステップS406は、第1の実施の形態のステップS100~ステップS106と同様である。
第2の取得部26Kが、第1のセンサ18から第1の距離画像を取得する(ステップS408)。第3の取得部26Pが、第2のセンサ19から方向情報を取得する(ステップS410)。ステップS408で取得する第1の距離画像、および、ステップS410で取得する方向情報は、ステップS400で取得した入力画像50と同じタイミングで同じ撮影環境を観測したものである。
第2の生成部26Rが、ステップS408で取得した第1の距離画像を、ステップS410で取得した方向情報を用いて補正する。この補正により、第2の生成部26Rは、第1の距離画像から第2の距離画像を生成する(ステップS412)。
情報処理装置11Dは、ステップS400で取得した入力画像50(第1の画像52、第2の画像54)の画素ごとに、ステップS414~ステップS432の処理を繰返す。
詳細には、第1の抽出部20Dが、ステップS402で鮮明化された第1の画像52における処理対象の画素について、第1の特徴点情報を抽出する(ステップS414)。
第5の抽出部26Sが、ステップS412で生成した第2の距離画像における、ステップS414と同じ画素位置の処理対象の画素について、第5の特徴点情報を抽出する(ステップS416)。
論理和演算部26Uが、ステップS414で抽出した第1の特徴点情報と、ステップS416で抽出した第5の特徴点情報とを、論理和演算する(ステップS418)。例えば、論理和演算部26Uは、第1の特徴点情報の二値化部26Tによる二値化結果と、第5の特徴点情報の二値化部26Vによる二値化結果と、の論理和を演算する。
第1の生成部20Fは、ステップS406で生成した伸長済画像55における、ステップS414で処理対象とした画素位置の画素について、データ量を低減する(ステップS420)。第2の抽出部20Gは、ステップS420でデータ量を低減された画素から第2の特徴点情報を抽出する(ステップS422)。
論理和演算部26Uは、第6の特徴点情報を導出する(ステップS424)。論理和演算部26Uは、ステップS418の論理和演算の結果に基づいて、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“1”である画素については、第1の特徴点情報を第6の特徴点情報として用いる。一方、論理和演算部26Uは、論理和演算の結果が“1”(真)であって、かつ、第1の特徴点情報の二値化結果が“0”である画素については、第1の特徴点情報に代えて、第2の補正情報を第6の特徴点情報として用いる。また、論理和演算部26Uは、論理和演算の結果が“0”(偽)である画素については、第1の特徴点情報を第6の特徴点情報として用いる。
導出部26Hが、ステップS424で導出した第6の特徴点情報と、ステップS422で抽出した第2の特徴点情報と、の差を導出する(ステップS426)。導出部26Hは、ステップS426で導出した差が第1の閾値以上であるか否かを判断する(ステップS428)。
ステップS428で導出した差が第1の閾値以上である場合(ステップS428:Yes)、導出部26Hは、差の導出に用いた画素の画素値の補正指示を、第1の補正部20Iへ出力する。補正指示を受付けた第1の補正部20Iは、ステップS406で生成された伸長済画像55に含まれる、ステップS428で差が第1の閾値以上と判断された画素の画素値を、差に応じて補正する(ステップS430)。そして、第1の補正部20Iは、補正した画素の画素値を第1の生成部20Fへ出力し、ステップS420へ戻る。ステップS420では、第1の生成部20Fは、補正された画素のデータ量を低減し、上記処理が繰返される。
一方、ステップS426で導出した差が第1の閾値未満である場合(ステップS428:No)、導出部26Hは、第3の画像56に含まれる複数の画素の内、差の導出に用いた画素位置の画素を出力対象とする出力対象指示を、第1の出力制御部20Jへ出力する。第1の出力制御部20Jは、第3の画像56における、出力対象指示に示される画素位置の画素の画素値を、出力対象として保持する(ステップS432)。
ステップS400で取得した入力画像50(第1の画像52、第2の画像54)の全ての画素について、ステップS414~ステップS432の処理が終了すると、ステップS434へ進む。第1の出力制御部20Jは、上記差が第1閾値未満の画素からなる第3の画像56である出力画像58を、学習部16へ出力する(ステップS434)。そして、本ルーチンは終了する。
以上説明したように、本実施の形態の情報処理装置11Dは、第2の取得部26Kが、入力画像50の撮影環境に含まれる複数の検知点の各々の第1のセンサ18からの距離情報を規定した第1の距離画像を取得する。第3の取得部26Pは、入力画像50の撮影環境に含まれる物体の第2のセンサ19からの方向を示す方向情報を取得する。第2の生成部26Rは、第1の距離画像の全領域の内、方向情報に応じた物体領域内の検知点の距離情報について、周辺の他の検知点との距離情報の変化率を増加させた第2の距離画像を生成する。第5の抽出部26Sは、第2の距離画像から第5の特徴点情報を抽出する。導出部26Hは、第1の特徴点情報と第5の特徴点情報とを論理和演算した結果に基づいて生成した第6の特徴点情報と、第2の特徴点情報と、の差を導出する。
ここで、撮影部12によって得られる入力画像50である第1の画像52からは、撮影部12からの距離または物体の輪郭の複雑さに拘らず、明るさの変化率を示す第1の特徴点情報を抽出可能である。しかし、第1の画像52では、明るさの差が小さいほど、小さい変化率を示す第1の特徴点情報が得られる。このため、第1の画像52では、背景との明るさの差の小さい物体ほど、識別することが困難となる。
そこで、本実施の形態では、導出部26Hは、第1の画像52から抽出した第1の特徴点情報と、第5の特徴点情報と、を論理和演算する。第5の特徴点情報は、第1の距離画像の物体領域を強調した第2の距離画像から抽出した、特徴点情報である。このため、この論理和演算により、論理和演算部26Uは、表示画像53における、物体の特徴点を示す情報が含まれない画素について、第1の距離画像の物体領域を強調した第5の特徴点情報に応じた情報を、論理和演算の結果に基づいて付与することができる。
そして、導出部26Hは、論理和演算の結果に基づいて生成した第6の特徴点情報と、第2の特徴点情報と、の差を導出する。このため、本実施の形態の情報処理装置11Dでは、第1の距離画像および方向情報から識別される物体の特徴点を強調した第1の画像52を用いて、該強調後の第1の画像52の第6の特徴点情報と、第2の特徴点情報と、の差を導出することができる。
従って、本実施の形態の情報処理装置11Dは、上記第1乃至第3の実施の形態の効果に加えて、特徴点欠損を更に抑制し、且つデータ量の低減された画像を提供することができる。
(第5の実施の形態)
本実施の形態では、入力画像50である第1の画像52と、距離情報および方向情報から生成した第2の距離画像と、を論理和演算した結果に基づいて生成した第4の画像を用いて、第3の画像56を補正する形態を説明する。
なお、本実施の形態および以下の実施の形態において、上記第1乃至第4の実施の形態と同じ機能および構成の部分には、同じ符号を付与し、詳細な説明を省略する。
図17は、本実施の形態の情報処理装置11Eの機能の一例を示す図である。なお、情報処理装置11Eを備えた情報処理システムの構成は、情報処理装置11Dに代えて情報処理装置11Eを備える点以外は、第4の実施の形態の情報処理システム1Dと同様である(図14参照)。また、情報処理装置11Eのハードウェア構成は、第1の実施の形態の情報処理装置10と同様である(図2参照)。
情報処理装置11Eは、第1の取得部20Aと、編集部20Bと、第2の出力制御部20Cと、伸長部20Eと、第1の出力制御部20Jと、を備える。また、情報処理装置11Eは、第2の取得部26Kと、第3の取得部26Pと、第2の生成部26Rと、二値化部28Wと、を備える。また、情報処理装置11Eは、二値化部28Xと、論理和演算部28Yと、第2の補正部28Fと、を備える。
上記複数の各部の一部または全ては、例えば、CPU10Aなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよい。また、上記複数の各部の一部または全ては、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
第1の取得部20A、編集部20B、第2の出力制御部20C、伸長部20E、および第1の出力制御部20Jは、第1の実施の形態と同様である。第2の取得部26K、第3の取得部26P、および第2の生成部26Rは、第4の実施の形態と同様である。
二値化部28Wは、第2の距離画像を、検知点ごとに二値化する。第2の距離画像は、上記第4の実施の形態と同様に、第2の生成部26Rが第1の距離画像を方向情報に基づいて補正することで生成された距離画像である。
二値化部28Wは、距離情報が予め定めた第7の閾値以上である場合に、二値化結果“1”(真)を導出する。また、二値化部28Wは、距離情報が第7の閾値未満である場合、二値化結果“0”(偽)を導出する。第7の閾値には、物体の輪郭線を示す情報であるか否かを判別するための閾値を予め定めればよい。
二値化部28Wは、二値化した結果を、論理和演算部28Yへ出力する。詳細には、例えば、二値化部28Wは、第2の距離画像に含まれる複数の画素の各々の二値化結果と、該二値化結果を示す画素の識別情報とを、論理和演算部28Yへ出力する。画素の識別情報は、入力画像50(第1の画像52、第2の画像54)における位置を示す情報である。
一方、二値化部28Xは、編集部20Bから受付けた表示画像53を、画素ごとに二値化する。詳細には、例えば、二値化部28Xは、表示画像53の画素の画素値によって示される明るさが予め定めた第8の閾値以上である場合、二値化結果“1”(真)を導出する。一方、二値化部28Xは、画素値によって示される明るさが第8の閾値未満である場合、二値化結果“0”(偽)を導出する。第8の閾値には、物体の輪郭線を示す情報であるか否かを判別するための閾値を予め定めればよい。
次に、論理和演算部28Yは、表示画像53と第2の距離画像とを論理和演算した結果に基づいて第4の画像を生成する。詳細には、例えば、論理和演算部28Yは、表示画像53の二値化結果と第2の距離画像の二値化結果とを論理和演算した結果に基づいて第4の画像を生成する。なお、論理和演算部28Yは、第1の画像52の二値化結果と第2の距離画像の二値化結果とを論理和演算した結果に基づいて第4の画像を生成してもよい。本実施の形態では、論理和演算部28Yは、編集部20Bから表示画像53を取得し、表示画像53の二値化結果と第2の距離画像の二値化結果との論理和演算を行う。
まず、論理和演算部28Yは、表示画像53の二値化部28Xによる二値化結果と、第2の距離画像の二値化部28Wによる二値化結果と、の論理和を演算する。なお、図17では、論理和演算部28Yと、二値化部28X、28Wを独立した機能部として示したが、論理和演算部28Yが二値化部28X、28Wの機能を内部に備えるようにすることもできる。このとき、論理和演算部28Yは、表示画像53を構成する複数の画素の各々について、表示画像53の二値化結果と、各画素に対応する位置の検知点の距離情報の二値化結果と、の論理和を演算する。
そして、論理和演算部28Yは、表示画像53を構成する複数の画素の各々について、論理和演算の結果が“1”(真)の画素については、周辺画素に規定した画素値との変化率が第9の閾値以上となる画素値を規定する。詳細には、例えば、論理和演算部28Yは、表示画像53における、処理対象の画素の画素値と、該画素の周辺画素の画素値と、を用いて、該処理対象の画素の画素値を上記画素値に規定する。第9の閾値は、物体の輪郭線または境界を示す情報であるか否かを判別するための閾値を予め定めればよい。
一方、論理和演算部28Yは、論理和演算の結果が“0”(偽)の画素については、編集部20Bによる鮮明化後の第1の画像52である表示画像53における、処理対象の画素の画素値を規定する。
そして、論理和演算部28Yは、表示画像53を構成する全ての画素について、論理和演算の結果に応じた画素値を規定することで、第4の画像を生成する。すなわち、論理和演算部28Yは、表示画像53の二値化結果と第2の距離画像の二値化結果とを論理和演算した結果に基づいて第4の画像を生成する。
このため、論理和演算部28Yは、論理和演算の結果として、表示画像53に、第2の距離画像から識別される物体の特徴点を強調した第4の画像を生成することができる。すなわち、論理和演算部28Yは、表示画像53における、物体の特徴点を示す情報が含まれない画素について、第2の距離画像から抽出された特徴点を示す情報を加えることができる。また、本実施の形態では、第2の距離画像は、第1の距離画像に含まれる物体領域の検知点の距離情報について、周辺の検知点との距離情報の変化率を増加させた距離画像である。このため、論理和演算部28Yは、表示画像53に、第2の距離画像から識別される物体領域を強調した特徴点を加えた情報を、論理和演算の結果に基づいて得ることができる。
ここで、撮影部12によって得られる入力画像50である第1の画像52は、撮影部12からの距離または物体の輪郭の複雑さに拘らず、明るさの変化率を特定可能な画像である。一方、第1の距離画像および方向情報は、明るさの差の大小に拘らず、距離情報の変化率を特定可能な情報である。そして、本実施の形態では、論理和演算部28Yは、第1の画像52、第1の距離画像、および方向情報に基づいて、上記処理により、第4の画像を生成する。
このため、第4の画像は、撮影部12からの距離、物体の輪郭の複雑さ、および、明るさの差の大小に拘らず、高精度に物体の特徴点を規定した画像となる。
第2の補正部28Fは、第1の実施の形態で説明した第1の生成部20Fと同様に、伸長済画像55のデータ量を低減した、第3の画像56を生成する。本実施の形態では、第2の補正部28Fは、更に、第3の画像56を構成する画素の内、特定の画素の画素値を補正する。特定の画素は、第3の画像56の内、論理和演算部28Yで生成された第4の画像を構成する画素の内の周辺画素の画素値との変化率が第9の閾値以上の画素に対応する画素位置の画素である。
第2の補正部28Fは、第3の画像56における、第4の画像において周辺画素の画素値との変化率が第9の閾値以上の画素位置に対応する画素について、周辺画素との変化率が現在の変化率より大きくなるように、画素値を補正する。具体的には、第2の補正部28Fは、第4の画像に含まれる上記特定の画素について、周辺画素との明るさの変化率が現在の変化率より大きくなるように、該特定の画素の明るさを補正する。そして、第2の補正部28Fは、第4の画像を補正することで生成した第3の画像56を、出力画像58として第1の出力制御部20Jへ出力する。
このため、第2の補正部28Fは、撮影環境に含まれる物体の輪郭線などの物体の特徴点を強調した第3の画像56を、出力画像58として第1の出力制御部20Jへ出力することができる。
そして、第1の出力制御部20Jは、第2の補正部28Fから受付けた出力画像58を、学習部16へ出力する。
次に、本実施の形態の情報処理装置11Eが実行する、情報処理の流れの一例を説明する。図18は、本実施の形態の情報処理装置11Eが実行する、情報処理の一例を示すフローチャートである。なお、複数のステップの各々の順番は適宜変更可能であり、図18の例に限られるものではない。また、複数のステップの少なくとも一部は、適宜並列して実行してもよい。
第1の取得部20Aが撮影部12から入力画像50を取得する(ステップS500)。編集部20Bは、第1の取得部20Aから受付けた第1の画像52を鮮明化する(ステップS502)。ステップS502の処理によって、表示画像53が生成される。第2の出力制御部20Cは、ステップS502で生成された表示画像53を表示部14へ出力する(ステップS504)。伸長部20Eは、第1の取得部20Aから受付けた第2の画像54の明るさのヒストグラムを伸長化する(ステップS506)。ステップS506の処理によって、伸長済画像55が生成される。ステップS500~ステップS506は、第1の実施の形態のステップS100~ステップS106と同様である。
第2の取得部26Kが、第1のセンサ18から第1の距離画像を取得する(ステップS508)。第3の取得部26Pが、第2のセンサ19から方向情報を取得する(ステップS510)。ステップS508で取得する第1の距離画像、および、ステップS510で取得する方向情報は、ステップS500で取得した入力画像50と同じタイミングで同じ撮影環境を観測したものである。
第2の生成部26Rが、ステップS508で取得した第1の距離画像を、ステップS510で取得した方向情報を用いて補正する。この補正により、第2の生成部26Rは、第1の距離画像から第2の距離画像を生成する(ステップS512)。
論理和演算部28Yが、ステップS502で生成した表示画像53を二値化部28Xで二値化した二値化結果と、ステップS512で生成した第2の距離画像を二値化部28Wで二値化した二値化結果と、の論理和を演算する(ステップS514)。
そして、論理和演算部28Yは、表示画像53を構成する全ての画素について、ステップS514の論理和演算の結果に応じた画素値を規定することで、第4の画像を生成する(ステップS516)。
第2の補正部28Fが、ステップS506で生成した伸長済画像55のデータ量を低減する(ステップS518)。第2の補正部28Fは、データ量を低減することで、第3の画像56を生成する(ステップS520)。
第2の補正部28Fは更に、生成した第3の画像56を、ステップS516で生成した第4の画像を用いて補正する(ステップS522)。第2の補正部28Fは、第3の画像56における、第4の画像に含まれる、周辺画素の画素値との変化率が第9の閾値以上の画素位置に対応する画素を特定する。そして、第2の補正部28Fは、特定した画素について、周辺画素との変化率が現在の変化率より大きくなるように、画素値を補正する。
第1の出力制御部20Jは、第2の補正部28Fによって補正された第3の画像56を、出力画像58として学習部16へ出力する(ステップS524)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置11Eは、第1の取得部20Aと、第2の取得部26Kと、第3の取得部26Pと、第2の生成部26Rと、論理和演算部28Yと、第2の補正部28Fと、を備える。
第1の取得部20Aは、入力画像50を取得する。第2の取得部26Kは、入力画像50の撮影環境に含まれる複数の検知点の各々の第1のセンサ18からの距離情報を規定した第1の距離画像を取得する。第3の取得部26Pは、入力画像50の撮影環境に含まれる物体の第2のセンサ19からの方向を示す方向情報を取得する。第2の生成部26Rは、第1の距離画像の全領域の内、方向情報に応じた物体領域内の検知点の距離情報について、周辺の他の検知点との距離情報の変化率を増加させた第2の距離画像を生成する。論理和演算部28Yは、入力画像50である第1の画像52と、第2の距離画像と、を論理和演算した結果に基づいて第4の画像を生成する。第2の補正部28Fは、入力画像50である第2の画像54のデータ量を低減した第3の画像56を構成する画素の内、特定の画素に対応する画素値を補正する。特定の画素は、第4の画像を構成する画素の内の周辺画素との画素値の変化率が閾値(第9の閾値)以上の画素である。
第4の画像は、表示画像53(または、第1の画像52)の二値化結果と第2の距離画像の二値化結果とを論理和演算した結果に基づいて生成される画像である。すなわち、第4の画像は、方向情報、第1の距離画像、および第1の画像52に基づいて生成された、距離、輪郭の複雑さ、または明るさの差の大小に拘らず、高精度に物体の特徴点を規定した画像である。そして、本実施の形態では、第2の補正部28Fは、第3の画像56における、第4の画像を構成する画素の内の周辺画素との画素値の変化率が閾値以上の画素に対応する、画素の画素値を補正する。
このため、出力画像58は、データ量の低減処理によって少なくとも一部が消失した物体の輪郭線を出現または強調するように、第3の画像56を補正した画像となる。言い換えると、出力画像58は、データ量の低減された第2の画像54である第3の画像56を、データ量の低減処理によって欠損した物体が復元するように補正した画像となる。このため、第1の出力制御部20Jは、特徴点欠損を抑制し且つデータ量が低減された画像である出力画像58を出力することができる。
従って、本実施の形態の情報処理装置11Eは、特徴点欠損を抑制した画像を提供することができる。
以上、実施の形態について説明したが、本願の開示する情報処理装置および情報処理方法は、上述の実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除してもよい。
なお、上記第1乃至第5の実施の形態の情報処理装置10、情報処理装置11B~情報処理装置11Eは、画像のデータ量を低減する処理を含む各種の装置に適用可能である。例えば、上記第1乃至第5の実施の形態の情報処理装置10、情報処理装置11B~情報処理装置11Eは、監視カメラから得られる映像を処理する監視カメラシステム、または車外の周辺環境の画像を処理する車載システムなどに適用することができる。