(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023167444
(43)【公開日】2023-11-24
(54)【発明の名称】情報処理装置、情報処理方法及び情報生成方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20231116BHJP
【FI】
G06T7/00 300A
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022078633
(22)【出願日】2022-05-12
(71)【出願人】
【識別番号】316005926
【氏名又は名称】ソニーセミコンダクタソリューションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】吉田 隆彦
(72)【発明者】
【氏名】黒川 翼
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA02
5L096FA66
5L096FA69
5L096GA34
5L096HA09
5L096JA22
5L096KA04
(57)【要約】
【課題】処理コストを抑えることを可能にする。
【解決手段】本開示に係る一形態の情報処理装置は、画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与する認識部と、前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与する分類部と、前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する三次元点群生成部と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与する認識部と、
前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与する分類部と、
前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する三次元点群生成部と、
を備える、情報処理装置。
【請求項2】
前記認識部は、前記画像である複数の二次元画像に対する認識処理を実行し、前記複数の二次元画像の画素又は注目画素毎に前記認識結果を付与し、
前記分類部は、前記複数の二次元画像の画素又は注目画素毎の前記認識結果を分類し、前記複数の二次元画像の画素又は注目画素毎に前記分類結果を付与し、
前記三次元点群生成部は、前記複数の二次元画像の画素又は注目画素毎の距離情報に基づいて前記三次元点群を生成し、前記複数の二次元画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する、
請求項1に記載の情報処理装置。
【請求項3】
前記認識部は、前記画像であるデプス画像に対する認識処理を実行し、前記デプス画像の画素又は注目画素毎に前記認識結果を付与し、
前記分類部は、前記デプス画像の画素又は注目画素毎の前記認識結果を分類し、前記デプス画像の画素又は注目画素毎に前記分類結果を付与し、
前記三次元点群生成部は、前記デプス画像の画素又は注目画素毎の距離情報に基づいて前記三次元点群を生成し、前記デプス画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する、
請求項1に記載の情報処理装置。
【請求項4】
前記認識部は、前記認識結果をそれぞれ示す複数種の認識ラベルからいずれかの認識ラベルを前記認識結果として決定する学習済みモデルに基づいて、決定した前記認識ラベルを前記画像の画素又は注目画素毎に付与する、
請求項1に記載の情報処理装置。
【請求項5】
前記認識部は、前記認識結果として、前記認識結果を示す認識ラベルを付与し、
前記分類部は、前記分類結果として、前記分類結果を示すカテゴリラベルを付与し、
前記カテゴリラベルの種類は、前記認識ラベルの種類より少ない、
請求項1に記載の情報処理装置。
【請求項6】
前記分類部は、前記画像の画素又は注目画素毎に前記カテゴリラベルを有するカテゴリラベルマップを生成し、
前記三次元点群生成部は、前記カテゴリラベルマップに基づいて、前記三次元点群の点毎に前記カテゴリラベルを付与する、
請求項5に記載の情報処理装置。
【請求項7】
前記分類部は、前記認識ラベルと前記カテゴリラベルとの関係をそれぞれ示す前記タスク毎のカテゴリラベル情報からいずれかのカテゴリラベル情報を選択し、選択した前記カテゴリラベル情報に基づいて、前記画像の画素又は注目画素毎に前記カテゴリラベルを付与する、
請求項5に記載の情報処理装置。
【請求項8】
画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与することと、
前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与することと、
前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与することと、
を含む、情報処理方法。
【請求項9】
三次元点群の点毎の位置情報と、
前記三次元点群の点毎の認識結果をタスクに応じて分類して得られた、前記三次元点群の点毎の分類結果と、
を含む情報を生成する、情報生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法及び情報生成方法に関する。
【背景技術】
【0002】
現在、自動運転や拡張現実(AR:Augmented Reality)、ロボット(例えば、SLAM:自己位置推定と地図作成の同時実行)などの各種システムに関して、取得した三次元点群(3D点群)をリアルタイムで処理し、三次元点群の点毎に物体認識(クラス分類)を行う装置が存在する(例えば、特許文献1参照)。このような技術では、ニューラルネットワークを使用してクラス分類を行うことで、リアルタイムに障害物や背景物などを認識できる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、前述のような技術を用いた場合、事前に定義したクラス分類を行った三次元点群データが必要なため、二次元画像データセットと比較して、学習データセット生成の処理コストが高くなる。また、タスクによりクラス分類の認識ラベルが異なる場合には、そのタスク毎に学習データセット・学習済みモデルを用意する必要があり、処理コストが高くなる。
【0005】
そこで、本開示では、処理コストを抑えることが可能な情報処理装置、情報処理方法及び情報生成方法を提案する。
【課題を解決するための手段】
【0006】
本開示の実施形態に係る情報処理装置は、画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与する認識部と、前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与する分類部と、前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する三次元点群生成部と、を備える。
【0007】
本開示の実施形態に係る情報処理方法は、画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与することと、前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与することと、前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与することと、を含む。
【0008】
本開示の実施形態に係る情報生成方法は、三次元点群の点毎の位置情報と、前記三次元点群の点毎の認識結果をタスクに応じて分類して得られた、前記三次元点群の点毎の分類結果と、を含む情報を生成する。
【図面の簡単な説明】
【0009】
【
図1】本開示の実施形態に係る情報処理システムの概略構成の一例を示す図である。
【
図2】本開示の実施形態に係る情報処理装置の概略構成の一例を示す図である。
【
図3】本開示の実施形態に係る情報処理の流れの一例を示すフローチャートである。
【
図4】本開示の実施形態に係る情報処理の流れの一例を説明するための図である。
【
図5】本開示の実施形態に係る認識ラベル情報及びカテゴリラベル情報の第1具体例を説明するための図である。
【
図6】本開示の実施形態に係る認識ラベル情報及びカテゴリラベル情報の第2具体例を説明するための図である。
【
図7】本開示の実施形態に係る認識ラベル情報及びカテゴリラベル情報の第3具体例を説明するための図である。
【
図8】本開示の実施形態に係る3D点群の生成処理の流れの一例を示すフローチャートである。
【
図9】本開示の実施形態に係る3D点群の生成処理を説明するための図である。
【
図10】本開示の実施形態に係る3D点群の生成処理を説明するための図である。
【
図11】本開示の実施形態に係る情報処理装置の変形例の概略構成の一例を示す図である。
【
図12】本開示の実施形態に係るGUI(グラフィックユーザインタフェース)の具体例を説明するための図である。
【
図13】本開示の実施形態に係るハードウェアの概略構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、この実施形態により本開示に係る装置やシステム、方法などが限定されるものではない。また、以下の各実施形態において、基本的に同一の部位には同一の符号を付することにより重複する説明を省略する。
【0011】
以下に説明される1又は複数の実施形態(実施例、変形例を含む)は、各々が独立に実施されることが可能である。一方で、以下に説明される複数の実施形態は少なくとも一部が他の実施形態の少なくとも一部と適宜組み合わせて実施されてもよい。これら複数の実施形態は、互いに異なる新規な特徴を含み得る。したがって、これら複数の実施形態は、互いに異なる目的又は課題を解決することに寄与し得、互いに異なる効果を奏し得る。
【0012】
以下に示す項目順序に従って本開示を説明する。
1.実施形態
1-1.情報処理システムの構成例
1-2.情報処理装置の構成例
1-3.情報処理の一例
1-4.認識ラベル情報及びカテゴリラベル情報の具体例
1-5.3D点群の生成処理の一例
1-6.作用・効果
2.情報処理装置の他の構成例
3.GUIの具体例
4.他の実施形態
5.ハードウェアの構成例
6.付記
【0013】
<1.実施形態>
<1-1.情報処理システムの構成例>
本実施形態に係る情報処理システム1の構成例について
図1を参照して説明する。
図1は、本実施形態に係る情報処理システム1の概略構成の一例を示す図である。
【0014】
図1に示すように、本実施形態に係る情報処理システム1は、情報取得装置10と、情報処理装置20と、サーバ装置30と、アプリ実行装置(アプリケーション実行装置)40と、を備える。
【0015】
情報取得装置10は、例えば、対象物の画像に関する画像情報や距離情報などを取得し、取得した画像情報や距離情報などを情報処理装置20に送信する装置である。この情報取得装置10は、例えば、RGBセンサやイメージセンサなどの撮像センサ、あるいは、ステレオカメラやiToF(Indirect Time of Flight)センサなどの測距センサにより実現される。
【0016】
例えば、撮像センサは、周囲光をフォトダイオードで受光してRGB値を検出し、カラー画像を得る。ステレオカメラは、対象物を複数の異なる方向からカメラにより撮影することにより、対象物までの距離(対象物の奥行き方向の情報)を測定する。iToFセンサは、対象物に周期的なレーザー光(連続波)を照射し、対象物からの反射光の位相のズレから、対象物までの距離を測定する。ただし、情報取得装置10は、撮像センサや測距センサ以外であってもよい。
【0017】
ここで、撮像センサでは、例えば、複数の2D画像(二次元画像)が得られる。この場合、対象物の2D画像としては、例えば、重複領域があるように撮影された二枚以上の2D画像群が得られる。また、測距センサでは、例えば、画素毎に奥行き情報(距離情報)を有するデプス画像(デプスマップ)が得られる。
【0018】
情報処理装置20は、情報取得装置10から送信された画像情報や距離情報などに応じて画像に対する認識処理を実行し、画像の画素毎に認識結果(例えば、認識結果を示す認識ラベル)を付与し、また、その画像の画素毎の認識結果をタスクに応じて分類して画素毎にカテゴリ結果(例えば、分類結果を示すカテゴリラベル)を付与する。さらに、情報処理装置20は、距離情報や画像の画素毎の分類結果などに基づいて、3D点(三次元点)毎に分類結果を有する3D点群を生成し、その3D点群に関する点群情報をサーバ装置30に送信する。
【0019】
ここで、3D点群は、例えば、対象物(物体)の位置や空間構造を標本化したものである。通常、3D点群データは一定周期のフレーム時間毎に得られる。この3D点群データに対して各種の演算処理を施すことで、対象物の正確な位置や姿勢などを検出(認識)することができる。
【0020】
上記の情報処理装置20は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)などのプロセッサにより実現される。例えば、情報処理装置20は、プロセッサがRAM(Random Access Memory)などを作業領域として各種プログラムを実行することにより実現される。なお、情報処理装置20は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路により実現されてもよい。CPU、MPU、ASIC及びFPGAは、何れもコントローラとみなすことができる。また、情報処理装置20は、CPUに加えてあるいは替えてGPU(Graphics Processing Unit)により実現されてもよい。また、情報処理装置20は、特定のハードウェアではなく、特定のソフトウェアにより実現されてもよい。
【0021】
サーバ装置30は、各種情報を記憶して管理する。例えば、サーバ装置30は、情報処理装置20から送信された点群情報を記憶して管理する。このサーバ装置30としては、例えば、クラウドサーバやPCサーバ、ミッドレンジサーバ、メインフレームサーバなどのサーバにより実現される。
【0022】
ここで、サーバ装置30とのデータの送受信は、例えば、ネットワークを介して実行される。ネットワークは、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、セルラーネットワーク、固定電話網、地域IP(Internet Protocol)網、インターネットなどの通信ネットワーク(通信網)である。ネットワークには、有線ネットワークが含まれていてもよいし、無線ネットワークが含まれていてもよい。また、ネットワークには、コアネットワークが含まれていてもよい。コアネットワークは、例えば、EPC(Evolved Packet Core)や5GC(5G Core network)である。また、ネットワークには、コアネットワーク以外のデータネットワークが含まれていてもよい。例えば、データネットワークは、通信事業者のサービスネットワーク、例えば、IMS(IP Multimedia Subsystem)ネットワークであってもよい。また、データネットワークは、企業内ネットワークなど、プライベートなネットワークであってもよい。
【0023】
なお、無線アクセス技術(RAT:Radio Access Technology)としては、LTE(Long Term Evolution)、NR(New Radio)、Wi-Fi(登録商標)、Bluetooth(登録商標)などを用いることが可能である。これら数種類の無線アクセス技術を用いてもよく、例えば、NRとWi-Fiを用いてもよく、また、LTEとNRを用いてもよい。LTE及びNRは、セルラー通信技術の一種であり、基地局がカバーするエリアをセル状に複数配置することで、移動通信を可能にする。
【0024】
アプリ実行装置40は、サーバ装置30から送信された点群情報を用いてアプリケーションを実行する。アプリケーションとしては、例えば、汎用アプリケーションや専用アプリケーションなどの各種アプリケーションを用いることが可能である。
【0025】
このアプリ実行装置40は、情報処理装置20と同様、例えば、CPUやMPUなどのプロセッサにより実現される。例えば、アプリ実行装置40は、プロセッサがRAMなどを作業領域として各種プログラムを実行することにより実現される。なお、アプリ実行装置40は、ASICやFPGAなどの集積回路により実現されてもよい。また、アプリ実行装置40は、CPUに加えてあるいは替えてGPUにより実現されてもよい。また、アプリ実行装置40は、特定のハードウェアではなく、特定のソフトウェアにより実現されてもよい。
【0026】
ここで、アプリ実行装置40は、例えば、車やロボット、ユーザ端末などの各種装置に実装される。ただし、その各種装置には、アプリ実行装置40に加え、適宜、情報取得装置10及び情報処理装置20の一方又は両方が実装されてもよい。ユーザ端末は、ユーザが使用する端末であり、例えば、サーバ装置30から点群情報を受け取る。このユーザ端末は、例えば、パーソナルコンピュータ(例えば、ノートパソコン又はデスクトップパソコン)、スマートデバイス(例えば、スマートフォン又はタブレット)、PDA(Personal Digital Assistant)などの端末により実現される。また、ユーザ端末は、例えば、AR(Augmented Reality)デバイス、VR(Virtual Reality)デバイス、MR(Mixed Reality)デバイスなどのxRデバイスにより実現されてもよい。このxRデバイスは、メガネ型のデバイス(例えば、AR/MR/VRグラス)であってもよいし、ヘッドマウント型或いはゴーグル型のデバイス(例えば、AR/MR/VRヘッドセット、AR/MR/VRゴーグル)であってもよい。これらxRデバイスは、片目のみ映像を表示するものであってもよいし、両目に映像を表示するものであってもよい。
【0027】
なお、アプリ実行装置40は、情報処理装置20からサーバ装置30を介して点群情報を受信するが、これに限定されるものではなく、例えば、情報処理装置20からサーバ装置30を介さずに直接、点群情報を受信してもよい。これは、アプリ実行装置40が実装される各種装置の構成や用途などに応じて適宜選択される。
【0028】
<1-2.情報処理装置の構成例>
本実施形態に係る情報処理装置20の構成例について
図2を参照して説明する。
図2は、本実施形態に係る情報処理装置20の概略構成の一例を示す図である。
【0029】
図2に示すように、情報処理装置20は、認識部21と、学習済みモデル22と、分類部23と、3D点群生成部(三次元点群生成部)24と、を備える。
【0030】
認識部21は、画像に対する認識処理を実行し、画像の画素毎に認識結果を付与する。例えば、認識部21は、画素毎に画素の属性を認識する認識処理を実行し、認識結果(例えば、認識ラベル)を付与する。認識結果は、対象物が何であるかを識別した結果であり、例えば、車や人、建物などを示す。この認識部21は、例えば、学習済みモデル22に基づいて画素毎に認識ラベルを付与する。なお、認識部21は、画素毎ではなく、注目画素毎に認識ラベルを付与してもよい。注目画素は、画像の全画素ではなく、例えば、あらかじめ設定された特定画素である。
【0031】
学習済みモデル22は、複数種の認識ラベルからいずれかの認識ラベルを認識結果として決定する認識ラベル学習済みモデルである。この学習済みモデル22は、例えば、予め認識ラベル(正解ラベル)が付与してあるデータを教師データとし、画像から対象物を認識するような機械学習の一つであるニューラルネットワーク(例えば、CNN:畳み込みニューラルネットワークなど)を学習しておき、画像に対して認識処理を実行して画像の画素毎に認識ラベルを付与することを可能にするモデルである。
【0032】
分類部23は、画像の画素毎の認識結果をタスクに応じて分類し、画像の画素毎に分類結果(例えば、カテゴリラベル)を付与する。分類結果は、認識結果がどのカテゴリに分類されるかを識別した結果であり、例えば、カテゴリ1、カテゴリ2、カテゴリ3などを示す。なお、タスクとしては、例えば、土砂の領域を知りたいタスクや車両領域を知りたいタスクなどの各種タスクがある。
【0033】
3D点群生成部24は、画像に関する距離情報や画像の画素毎の分類結果に基づいて、3D点毎に分類結果を有する3D点群を生成する。3D点群は、位置情報(例えば、三次元座標X、Y、Z)を有する点の集合であり、この位置毎に分類結果を有することになる。
【0034】
例えば、3D点群生成部24は、2D画像群又はデプス画像の画素毎の距離情報に基づいて3D点群を生成する。なお、2D画像群から3D点群を生成する方法としては、例えば、ステレオマッチング、あるいは、SfM(Structure from Motion)及びMVS(Multi-view Stereo)が用いられる。SfMは、特徴点から三角測量により復元された低密度点群データを生成するものである。MVSは、高密度点群データを生成するものである。
【0035】
なお、上記の情報処理装置20を構成する各ブロック(例えば、認識部21、学習済みモデル22、分類部23及び3D点群生成部24)は、それぞれ情報処理装置20の機能を示す機能ブロックである。これら機能ブロックはソフトウェアブロックであってもよいし、ハードウェアブロックであってもよい。例えば、各ブロックが、それぞれ、ソフトウェア(マイクロプログラムを含む。)で実現される1つのソフトウェアモジュールであってもよいし、半導体チップ(ダイ)上の1つの回路ブロックであってもよい。勿論、各ブロックがそれぞれ1つのプロセッサ又は1つの集積回路であってもよい。また、情報処理装置20は、上述の各ブロックとは異なる機能単位で構成されていてもよい。各ブロックの構成方法は任意である。また、各ブロックの一部又は全部の動作を他の装置が行ってもよい。
【0036】
<1-3.情報処理の一例>
本実施形態に係る情報処理の一例について
図3及び
図4を参照して説明する。
図3は、本実施形態に係る情報処理の流れの一例を示すフローチャートである。
図4は、本実施形態に係る情報処理の流れの一例を説明するための図である。
【0037】
図3に示すように、ステップS11において、情報取得装置10が、重複領域があるように連続して撮影し、複数の2D画像(例えば、カラー画像)を取得する。ステップS12において、認識部21が、各2D画像に対して物体認識処理を行い、各2D画像の画素毎に認識結果(例えば、認識ラベル)を付与する。ステップS13において、分類部23が、各2D画像の画素毎の認識結果を分類し、各2D画像の画素毎に分類結果(例えば、カテゴリラベル)を付与する。ステップS14において、3D点群生成部24が、3D点毎に分類結果(例えば、カテゴリ1、カテゴリ2など)を有する3D点群を生成する。
【0038】
図4に示すように、ステップS11において、重複領域(オーバーラップ)があるように撮影された画像群、すなわち二枚以上の2D画像が得られる。この場合、情報取得装置10は、例えば、空撮用のカメラを搭載したドローンや飛行機、ヘリコプターなどの移動体に搭載される。画像情報の送信は、例えば、Wi-Fi(登録商標)などの無線アクセス技術により実現されてもよい。
【0039】
次に、ステップS12において、学習済みモデル22が用いられ、各2D画像に対して認識処理が実行され、各2D画像の画素毎に認識ラベルが付与される。これにより、各2D画像において、画素毎に認識ラベルを有する認識ラベルマップが生成される。認識ラベルマップは、2Dセグメンテーション結果であるN値画像である。
図4の例では、認識ラベルとして、「土」、「植栽」、「アスファルト」、「水」、「建機」、「建物」、「モノ」、「人」及び「車」がある。この場合、九つの認識ラベルがあるため、認識ラベルマップは九色で示され、九値画像(N=9)となる。
【0040】
次いで、ステップS13において、各2D画像の画素毎の認識ラベルがタスクに応じて分類され、それらの2D画像の画素毎にカテゴリラベル(分類ラベル)が付与される。これにより、画素毎にカテゴリラベルを有するカテゴリラベルマップが生成される。カテゴリラベルマップは、2Dセグメンテーション結果であるM値画像である(ただし、M<N)。
図4の例では、タスクに対応するカテゴリラベルとして、測量対象(カテゴリ1)及び測量対象外(カテゴリ2)がある。測量対象は「土」であり、測量対象外は「植栽」、「アスファルト」、「水」、「建機」、「建物」、「モノ」、「人」及び「車」である。この場合、各2D画像の画素毎の認識ラベルは二つのカテゴリに分類されるため、カテゴリラベルマップは二色(例えば、白色と黒色)で示され、二値画像(M=2)となる。
【0041】
最後に、ステップS14では、3D点群の点毎にカテゴリラベルを有する3D点群、すなわち、カテゴリラベル付き3D点群が生成される。例えば、3D点群が生成され、その3D点群の点毎にカテゴリラベルが付与されて、カテゴリラベル付き3D点群が生成される。このカテゴリラベルの付与では、2D画像の画素毎のカテゴリラベルは、各画素にそれぞれ対応する3D点群に付与される。このような3D点群の生成処理について詳しくは後述する。なお、
図4の例では、黒ベタによる塗り潰し領域や点による塗り潰し領域など各種の塗り潰し領域が存在するが、それらの異なる塗り潰し領域は、カテゴリラベルの種類(例えば、カテゴリ1、カテゴリ2など)が異なることを示す。
【0042】
ここで、例えば、ステップS13において、ある画素の認識ラベルが「土」である場合、その認識ラベルは測量対象(カテゴリ1)に分類され、その画素にカテゴリラベルとして「カテゴリ1」が付与される。また、他の画素の認識ラベルが「植栽」である場合、その認識ラベルは測定対象外(カテゴリ2)に分類され、その画素にカテゴリラベルとして「カテゴリ2」が付与される。このような処理が全ての画素に対して行われ、画素毎にカテゴリラベルが付与される。その後、ステップS14において、「カテゴリ1」が付与された画素に対応する3D点には、カテゴリラベルとして「カテゴリ1」が付与される。また、「カテゴリ2」が付与された画素に対応する3D点には、カテゴリラベルとして「カテゴリ2」が付与される。このような処理が全ての画素に対して行われ、3D点群の点毎にカテゴリラベルが付与される。なお、ある画素に対応する3D点とは、例えば、画素の3D座標を算出し、その算出した3D座標の位置の3D点である。
【0043】
このような一連の情報処理によれば、3D点群生成の元となる複数の2D画像に対して認識処理が実行され、その後、各2D画像の画素毎の認識ラベルをタスクに応じて分類する分類処理が実行され、各2D画像の画素毎にカテゴリラベルが付与される。認識処理では、想定される認識ラベルを全て含んだ学習済みモデル22が準備されており、その学習済みモデル22に基づいて認識処理が実行される。通常であれば、タスク毎の学習済みモデルが準備されており、タスクが変わると、タスクに対応した学習済みモデルによる認識処理が実行されるが、本実施形態によれば、タスクが変わると、タスクに応じた分類処理が実行される。つまり、タスクが変わっても、そのタスクに応じた分類処理が実行されるので、様々なタスクに応じた点群情報を生成できる。なお、分類処理では、タスク毎にどのカテゴリが必要であるかという対応関係、すなわちタスク毎のカテゴリラベル情報が準備されている。
【0044】
<1-4.認識ラベル情報及びカテゴリラベル情報の具体例>
本実施形態に係る認識ラベル情報及びカテゴリラベル情報の具体例について
図5から
図7を参照して説明する。
図5から
図7は、それぞれ認識ラベル情報及びカテゴリラベル情報の具体例を説明するための図である。
【0045】
認識処理及び分類処理(
図4中のステップS12及びS13参照)では、2D画像が入力データとされ、認識ラベルマップ(N値画像)が中間出力され、カテゴリラベルマップ(M値画像、ただしM<N)が出力される。第1具体例及び第2具体例では、入力される2D画像は空撮画像であり、第3具体例では、入力される2D画像は車載画像である。なお、2D画像は、RGBカラー画像でもグレースケールでも良い。
【0046】
図5に示すように、第1具体例(入力空撮画像:N=9、M=2の例)において、認識ラベルとしては、「土」、「植栽」、「アスファルト」、「水」、「建機」、「建物」、「モノ」、「人」及び「車」の九種類が存在する。カテゴリラベルとしては、測量対象(カテゴリ1)及び測量対象外(カテゴリ2)の二種類が存在する。
図5の例では、測量対象は「土」であり、測量対象外は「植栽」、「アスファルト」、「水」、「建機」、「建物」、「モノ」、「人」及び「車」である。
【0047】
図6に示すように、第2具体例(入力空撮画像:N=9、M=3の例)において、認識ラベルとしては、
図5と同様、「土」、「植栽」、「アスファルト」、「水」、「建機」、「建物」、「モノ」、「人」及び「車」の九種類が存在する。カテゴリラベルとしては、地形(カテゴリ1)、動く対象(カテゴリ2)及び動かない対象(カテゴリ3)の三種類が存在する。
図6の例では、地形は「土」、「植栽」及び「水」であり、動く対象は「建機」、「車」及び「人」であり、動かない対象は「モノ」、「建物」及び「アスファルト」である。
【0048】
図7に示すように、第3具体例(入力車載画像:N=7、M=3の例)において、認識ラベルとしては、「路面電車」、「人」、「車」、「電柱」、「信号」、「道路」及び「空」の七種類が存在する。カテゴリラベルとしては、接触注意対象(カテゴリ1)、交通ルール認識対象(カテゴリ2)及び認識対象外(カテゴリ3)の三種類が存在する。
図7の例では、接触注意対象は「路面電車」、「人」、「車」及び「電柱」であり、交通ルール認識対象は「信号」及び「道路」であり、認識対象外は「空」である。
【0049】
このような第1具体例、第2具体例及び第3具体例によれば、認識ラベルとカテゴリラベルとの関係を示すカテゴリラベル情報は、特定のタスクに対して設定されてもよく、あるいは、タスク毎に設定されてもよい。カテゴリラベル情報がタスク毎に設定されている場合、カテゴリラベル情報はタスクに応じて選択されて分類処理に用いられる。このようにタスク毎のカテゴリラベル情報を用意しておくことで、様々なタスクに対応できる。従来、タスク毎に学習済みモデル22を準備する必要があるが、本実施形態によれば、一つの学習済みモデル22を用意しておけば、その学習済みモデル22に基づく認識結果をタスクに応じて分類結果に変換するので、様々なタスクに対応できる。
【0050】
なお、
図5から
図7に係る具体例は、あくまでも例示であり、他のタスクに対応するカテゴリラベル情報を用いることも可能である。例えば、分類部23は、タスク毎のカテゴリラベル情報を記憶部に記憶してもよい。この記憶部は、分類部23内に設けられてもよく、あるいは、その外部に設けられてもよい。記憶部は、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、フラッシュメモリ、ハードディスクなどのデータ読み書き可能な記憶装置により実現される。
【0051】
<1-5.3D点群の生成処理の一例>
本実施形態に係る3D点群の生成処理の一例について
図8から
図10を参照して説明する。
図8は、本実施形態に係る3D点群の生成処理の流れの一例を示すフローチャートである。
図9及び
図10は、それぞれ本実施形態に係る3D点群の生成処理を説明するための図である。
【0052】
図8に示すように、ステップS21において、3D点群生成部24が、ピクセル(画素)に対応する3D座標を算出する。ステップS22において、3D点群生成部24が、3D座標に基づいた3D位置の点(三次元点)に対応する分類結果(例えば、カテゴリラベル)を付与する。ステップS23において、3D点群生成部24が、全てのピクセルを走査したか否かを判断し、全てのピクセルを走査していないと判断すると(ステップS23のNo)、処理をステップS21に戻し、全てのピクセルを走査したと判断すると(ステップS23のYes)、処理を終了する。
【0053】
このような処理では、
図9に示すように、二枚以上のカテゴリラベルマップ(M値画像)と、それらのマップに対応したデプス画像、各画像に対応した撮影位置情報が入力される。デプス画像は、画素毎に距離情報としてデプス値(例えば、d1やd2など)を有する画像である。撮影位置情報は、撮影したカメラの位置であり、例えば、カメラキャリブレーション済の情報である。これらの情報に基づいて、カテゴリラベル付きの3D点群が生成され、その3D点群に関する点群情報が出力される。
【0054】
ここで、点群情報は、少なくとも、3D点群の点毎に(X、Y、Z、C)を含むデータフォーマットで構成される。XYZは3D点の3D座標であり、Cはカテゴリラベル値(例えば、カテゴリ1、カテゴリ2、カテゴリ3など)である。すなわち、点群情報は、少なくとも、3D点群の点毎に位置情報(X、Y、Z)及び分類結果情報(C)を含む。
【0055】
また、点群情報は、例えば、元画像のカラー情報を反映した形式であってもよい。つまり、点群情報は、少なくとも、3D点群の点毎に(X、Y、Z、R、G、B、C)を含むデータフォーマットで構成されてもよい。RGBは、点のカラー情報(例えば、256値)である。すなわち、点群情報は、例えば、3D点群の点毎に位置情報(X、Y、Z)、色情報(R、G、B)及び分類結果情報(C)を含んでもよい。
【0056】
なお、上記のカメラキャリブレーションに関して、
図10に示すように、画像の座標点と世界座標点(3D位置)との関係は、内部パラメータ行列及び外部パラメータ行列で記述される。この関係式により、例えば、カメラ位置としての3D位置(世界座標点)が決定される。
図10の例では、内部パラメータは、カメラ座標系から画像座標系への変換である。外部パラメータは、世界座標系からカメラ座標系への変換である。内部パラメータ及び外部パラメータは、例えば、透視投影モデルのパラメータである。
【0057】
<1-6.作用・効果>
以上説明したように、本実施形態によれば、情報処理装置20が、画像に対する認識処理を実行し、画像の画素又は注目画素毎に認識結果(例えば、認識ラベル)を付与する認識部21と、画像の画素又は注目画素毎の認識結果をタスクに応じて分類し、画像の画素又は注目画素毎に分類結果(例えば、カテゴリラベル)を付与する分類部23と、画像に関する3D点群を生成し、画像の画素又は注目画素毎の分類結果に基づいて、3D点群の点毎に分類結果を付与する3D点群生成部24と、を備える。これにより、認識処理後、タスクに応じて画像の画素又は注目画素毎の認識結果を分類する分類処理が実行され、画像の画素又は注目画素毎に分類結果が付与される。したがって、例えば、タスクを変更した場合、従来では必要であった認識処理の再実行を行わず、タスクに応じた分類処理を行うだけでよく、処理コストを抑えることができる。
【0058】
また、認識部21は、画像である複数の2D画像に対する認識処理を実行し、各2D画像の画素又は注目画素毎に認識結果を付与し、分類部23は、各2D画像の画素又は注目画素毎の認識結果を分類し、各2D画像の画素又は注目画素毎に分類結果を付与し、3D点群生成部24は、各2D画像の画素又は注目画素毎の距離情報に基づいて3D点群を生成し、複数の2D画像の画素又は注目画素毎の前記分類結果に基づいて、3D点群の点毎に分類結果を付与してもよい。これにより、3D点毎に分類結果を有する3D点群を確実に生成することができる。
【0059】
また、認識部21は、画像であるデプス画像に対する認識処理を実行し、デプス画像の画素又は注目画素毎に認識結果を付与し、分類部23は、デプス画像の画素又は注目画素毎の認識結果を分類し、デプス画像の画素又は注目画素毎に分類結果を付与し、3D点群生成部24は、デプス画像の画素又は注目画素毎の距離情報に基づいて3D点群を生成し、デプス画像の画素又は注目画素毎の分類結果に基づいて、3D点群の点毎に分類結果を付与してもよい。これにより、3D点毎に分類結果を有する3D点群を確実に生成することができる。
【0060】
また、認識部21は、認識結果をそれぞれ示す複数種の認識ラベルからいずれかの認識ラベルを認識結果として決定する学習済みモデル22に基づいて、決定した認識ラベルを画像の画素又は注目画素毎に付与してもよい。これにより、画像の画素又は注目画素毎に認識ラベルを確実に付与することができる。
【0061】
また、認識部21は、認識結果として、その認識結果を示す認識ラベルを付与し、分類部23は、分類結果として、その分類結果を示すカテゴリラベルを付与し、カテゴリラベルの種類は、認識ラベルの種類より少なくてもよい。これにより、処理コストを確実に抑えることができる。
【0062】
また、分類部23は、画像の画素又は注目画素毎にカテゴリラベルを有するカテゴリラベルマップを生成し、3D点群生成部24は、カテゴリラベルマップに基づいて、3D点群の点毎にカテゴリラベルを付与してもよい。これにより、3D点毎にカテゴリラベルを有する3D点群を確実に生成することができる。
【0063】
また、分類部23は、認識ラベルとカテゴリラベルとの関係をそれぞれ示すタスク毎のカテゴリラベル情報からいずれかのカテゴリラベル情報を選択し、選択したカテゴリラベル情報に基づいて、画像の画素又は注目画素毎にカテゴリラベルを付与してもよい。これにより、3D点毎にカテゴリラベルを有する3D点群を確実に生成することができる。
【0064】
<2.情報処理装置の他の構成例>
上記の実施形態に係る情報処理装置20の他の構成例について
図11を参照して説明する。
図11は、実施形態に係る情報処理装置20の変形例の概略構成の一例を示す図である。
【0065】
図11に示すように、情報処理装置20が、認識部21、学習済みモデル22及び分類部23を有し、サーバ装置30が、3D点群生成部24を有してもよい。このような構成によれば、重い3D点群生成処理を演算リソースが潤沢なサーバ装置30(例えば、クラウドサーバ)側で行うことができる。なお、情報処理装置20からサーバ装置30には、少なくともカテゴリラベルマップ(M値画像)が送信される。例えば、複数枚のカテゴリラベルマップが送信される。
【0066】
<3.GUIの具体例>
実施形態に係るGUI(グラフィックユーザインタフェース)の具体例について
図12を参照して説明する。
図12は、実施形態に係るGUIの具体例を説明するための図である。
【0067】
図12に示すように、ユーザ端末100は、表示部110を有する。この表示部110は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイであり、この表示部110にタッチパネルが採用される。
【0068】
表示部110は、表示領域111と、カテゴリ選択GUI112と、タスク選択GUI113とを有する。この表示部110は、点群情報に基づいて表示領域111に3D点群を表示する。カテゴリ選択GUI112は、対象のカテゴリを選択するための複数のチェックボックスを含む。ユーザは、チェックボックスをチェックし、一つ又は複数の対象のカテゴリを選択する。
図12の例では、カテゴリとしてカテゴリ1~5などがある。なお、カテゴリ選択は、選択したカテゴリを含むタスクを設定することに相当する。タスク選択GUI113は、カテゴリではなく、対象のタスクを選択するための複数のチェックボックスを含む。ユーザは、チェックボックスをチェックし、一つ又は複数の対象のタスクを選択する。タスクが選択されると、そのタスクに対応する対象のカテゴリが自動的に設定される。
図12の例では、タスクとしてタスク1~3などがある。
【0069】
ユーザは、カテゴリ選択GUI112を操作して対象のカテゴリを選択し、あるいは、タスク選択GUI113を操作して対象のタスクを選択する。これに応じて、例えば、ユーザ端末100は情報処理装置20にサーバ装置30を介して対象のカテゴリ又はタスクなどの情報を送信する。3D点群生成部24は、送信された対象のカテゴリ又はタスクなどの情報を受信し、対象のカテゴリ又はタスクに対応する3D点群、すなわち、点毎に分類結果(例えば、カテゴリラベル)を有する3D点群に関する点群情報をユーザ端末100にサーバ装置30を介して送信する。その後、表示部110は、送信された点群情報に基づいて表示領域111に3D点群を表示する。このように、対象の選択に応じて生成された3D点群が表示される。
【0070】
<4.他の実施形態>
上述した実施形態(又は変形例)に係る処理は、上記実施形態以外にも種々の異なる形態(変形例)にて実施されてよい。例えば、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0071】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0072】
また、上述した実施形態(又は変形例)は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
【0073】
<5.ハードウェアの構成例>
上述した実施形態(又は変形例)に係る情報処理装置20やサーバ装置30、アプリ実行装置40などの情報機器の具体的なハードウェア構成例について説明する。実施形態(又は変形例)に係る情報処理装置20やサーバ装置30、アプリ実行装置40などの情報機器は、例えば、
図13に示すような構成のコンピュータ500によって実現されてもよい。
図13は、情報機器の機能を実現するハードウェアの概略構成の一例を示す図である。
【0074】
図13に示すように、コンピュータ500は、CPU510、RAM520、ROM(Read Only Memory)530、HDD(Hard Disk Drive)540、通信インタフェース550及び入出力インタフェース560を有する。コンピュータ500の各部は、バス570によって接続される。
【0075】
CPU510は、ROM530又はHDD540に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU510は、ROM530又はHDD540に格納されたプログラムをRAM520に展開し、各種プログラムに対応した処理を実行する。
【0076】
ROM530は、コンピュータ500の起動時にCPU510によって実行されるBIOS(Basic Input Output System)などのブートプログラムや、コンピュータ500のハードウェアに依存するプログラムなどを格納する。
【0077】
HDD540は、CPU510によって実行されるプログラム、及び、かかるプログラムによって使用されるデータなどを非一時的に記録する、コンピュータ500が読み取り可能な記録媒体である。具体的には、HDD540は、プログラムデータ541の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
【0078】
通信インタフェース550は、コンピュータ500が外部ネットワーク580(一例としてインターネット)と接続するためのインタフェースである。例えば、CPU510は、通信インタフェース550を介して、他の機器からデータを受信したり、CPU510が生成したデータを他の機器へ送信したりする。
【0079】
入出力インタフェース560は、入出力デバイス590とコンピュータ500とを接続するためのインタフェースである。例えば、CPU510は、入出力インタフェース560を介して、キーボードやマウスなどの入力デバイスからデータを受信する。また、CPU510は、入出力インタフェース560を介して、ディスプレイやスピーカーやプリンタなどの出力デバイスにデータを送信する。
【0080】
なお、入出力インタフェース560は、所定の記録媒体(メディア)に記録されたプログラムなどを読み取るメディアインタフェースとして機能してもよい。メディアとしては、例えば、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)などの光学記録媒体、MO(Magneto-Optical disk)などの光磁気記録媒体、テープ媒体、磁気記録媒体、又は、半導体メモリなどが用いられる。
【0081】
ここで、例えば、コンピュータ500が各実施形態(又は変形例)に係る情報処理装置20やサーバ装置30、アプリ実行装置40などの情報機器として機能する場合、コンピュータ500のCPU510は、RAM520上にロードされた情報処理プログラムを実行することにより、各実施形態(又は変形例)に係る情報処理装置20やサーバ装置30、アプリ実行装置40などの各部の機能の全てや一部を実現する。また、HDD540には、各実施形態に係る情報処理プログラムやデータが格納される。なお、CPU510は、プログラムデータ541をHDD540から読み取って実行するが、他の例として、外部ネットワーク580を介して、他の装置からこれらのプログラムを取得するようにしてもよい。
【0082】
<6.付記>
なお、本技術は以下のような構成も取ることができる。
(1)
画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与する認識部と、
前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与する分類部と、
前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する三次元点群生成部と、
を備える、情報処理装置。
(2)
前記認識部は、前記画像である複数の二次元画像に対する認識処理を実行し、前記複数の二次元画像の画素又は注目画素毎に前記認識結果を付与し、
前記分類部は、前記複数の二次元画像の画素又は注目画素毎の前記認識結果を分類し、前記複数の二次元画像の画素又は注目画素毎に前記分類結果を付与し、
前記三次元点群生成部は、前記複数の二次元画像の画素又は注目画素毎の距離情報に基づいて前記三次元点群を生成し、前記複数の二次元画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する、
上記(1)に記載の情報処理装置。
(3)
前記認識部は、前記画像であるデプス画像に対する認識処理を実行し、前記デプス画像の画素又は注目画素毎に前記認識結果を付与し、
前記分類部は、前記デプス画像の画素又は注目画素毎の前記認識結果を分類し、前記デプス画像の画素又は注目画素毎に前記分類結果を付与し、
前記三次元点群生成部は、前記デプス画像の画素又は注目画素毎の距離情報に基づいて前記三次元点群を生成し、前記デプス画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与する、
上記(1)に記載の情報処理装置。
(4)
前記認識部は、前記認識結果をそれぞれ示す複数種の認識ラベルからいずれかの認識ラベルを前記認識結果として決定する学習済みモデルに基づいて、決定した前記認識ラベルを前記画像の画素又は注目画素毎に付与する、
上記(1)から(3)のいずれか一つに記載の情報処理装置。
(5)
前記認識部は、前記認識結果として、前記認識結果を示す認識ラベルを付与し、
前記分類部は、前記分類結果として、前記分類結果を示すカテゴリラベルを付与し、
前記カテゴリラベルの種類は、前記認識ラベルの種類より少ない、
上記(1)から(4)のいずれか一つに記載の情報処理装置。
(6)
前記分類部は、前記画像の画素又は注目画素毎に前記カテゴリラベルを有するカテゴリラベルマップを生成し、
前記三次元点群生成部は、前記カテゴリラベルマップに基づいて、前記三次元点群の点毎に前記カテゴリラベルを付与する、
上記(5)に記載の情報処理装置。
(7)
前記分類部は、前記認識ラベルと前記カテゴリラベルとの関係をそれぞれ示す前記タスク毎のカテゴリラベル情報からいずれかのカテゴリラベル情報を選択し、選択した前記カテゴリラベル情報に基づいて、前記画像の画素又は注目画素毎に前記カテゴリラベルを付与する、
上記(5)又は(6)に記載の情報処理装置。
(8)
画像に対する認識処理を実行し、前記画像の画素又は注目画素毎に認識結果を付与することと、
前記画像の画素又は注目画素毎の前記認識結果をタスクに応じて分類し、前記画像の画素又は注目画素毎に分類結果を付与することと、
前記画像に関する三次元点群を生成し、前記画像の画素又は注目画素毎の前記分類結果に基づいて、前記三次元点群の点毎に前記分類結果を付与することと、
を含む、情報処理方法。
(9)
三次元点群の点毎の位置情報と、
前記三次元点群の点毎の認識結果をタスクに応じて分類して得られた、前記三次元点群の点毎の分類結果と、
を含む情報を生成する、情報生成方法。
(10)
上記(1)から(7)のいずれか一つに記載の情報処理装置を備える情報処理システム。
(11)
上記(1)から(7)のいずれか一つに記載の情報処理装置を用いる情報処理方法。
(12)
上記(1)から(7)のいずれか一つに記載の情報処理装置を用いる情報生成方法。
【符号の説明】
【0083】
1 情報処理システム
10 情報取得装置
20 情報処理装置
21 認識部
22 学習済みモデル
23 分類部
24 3D点群生成部
30 サーバ装置
40 アプリ実行装置
100 ユーザ端末
110 表示部
111 表示領域
112 カテゴリ選択GUI
113 タスク選択GUI
500 コンピュータ