JP2022136544A - 学習処理装置及び学習処理プログラム - Google Patents

学習処理装置及び学習処理プログラム Download PDF

Info

Publication number
JP2022136544A
JP2022136544A JP2021036211A JP2021036211A JP2022136544A JP 2022136544 A JP2022136544 A JP 2022136544A JP 2021036211 A JP2021036211 A JP 2021036211A JP 2021036211 A JP2021036211 A JP 2021036211A JP 2022136544 A JP2022136544 A JP 2022136544A
Authority
JP
Japan
Prior art keywords
input image
image
estimation network
camera
pixel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021036211A
Other languages
English (en)
Other versions
JP7272381B2 (ja
Inventor
峻 田口
Shun Taguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Central R&D Labs Inc
Original Assignee
Toyota Central R&D Labs Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Central R&D Labs Inc filed Critical Toyota Central R&D Labs Inc
Priority to JP2021036211A priority Critical patent/JP7272381B2/ja
Publication of JP2022136544A publication Critical patent/JP2022136544A/ja
Application granted granted Critical
Publication of JP7272381B2 publication Critical patent/JP7272381B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

【課題】画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを、教師データを用意する必要なく学習可能とする。【解決手段】学習処理部30は、入力画像Itに基づくシーン座標画像Scoord,tと、入力画像Itが示す対象物のカメラの位置を原点とするワールド座標が示されたポイントクラウドQtとの間のワールド座標の誤差に関する第1目的関数LScoord,tを取得し、シーン座標画像Scoord,tから得られた推定姿勢ptと、シーン座標画像Scoord,t+1から得られた推定姿勢pt+1との差分と、時刻tから時刻t+1へのカメラの姿勢移動量Tt→t+1との間の誤差に関する第2目的関数Lpを取得する。学習処理部30は、第1目的関数LScoord,t及び第2目的関数Lpが小さくなるように位置推定ネットワーク16を学習させる。【選択図】図2

Description

本発明は、学習処理装置及び学習処理プログラムに関する。
従来、カメラで取得した画像に基づいて、当該画像を取得したときの当該カメラの位置に関する情報を出力可能な学習ネットワークが提案されている。
例えば、非特許文献1には、カメラで取得した画像と、教師データとしての、当該画像を取得したときの当該カメラの位置を示す情報とに基づいて、入力画像から、当該入力画像を取得したカメラの姿勢(位置及び向き)を推定する学習ネットワークを学習させることが記載されている。非特許文献2には、カメラで取得した画像と、教師データとしての、当該カメラから当該画像の各画素が示す対象物までの実空間における距離である深度が示された深度データとに基づいて、カメラで取得した入力画像から、当該入力画像の各画素の深度を推定する学習ネットワークを学習させることが記載されている。
Eric Brachmann and Carsten Rother, "Visual Camera Re-Localization, from RGB and RGB-D Images Using DSAC", CVPR 2020 Clement Godard et al., "Digging Into Self-Supervised Monocular Depth Estimation", ICCV 2009
ところで、従来、画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークが提案されている。位置推定ネットワークは学習器であり、学習処理を繰り返すことで、高精度にシーン座標画像を出力することができる。
位置推定ネットワークを学習させるためには、画像と、当該画像が示す対象物のワールド座標(すなわち教師データ)を用いて学習処理を行なえばよい。しかしながら、学習処理には、多数の画像と教師データとの組である学習データが必要となるが、多数の学習データ(特に多数の教師データ)を用意するのは非常に困難であるという問題がある。
本発明の目的は、画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを、教師データを用意する必要なく学習可能とすることにある。
本発明は、画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを学習させるための学習処理装置であって、カメラにより取得された第1入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢である第1推定姿勢を演算し、前記第1入力画像の直後に前記カメラにより取得された第2入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第2入力画像を取得したときの前記カメラの姿勢である第2推定姿勢を演算する姿勢演算部と、前記第1入力画像に基づいて、前記第1入力画像の各画素について、前記カメラから画素が示す対象物までの実空間における距離である深度が示された深度画像を出力する深度推定ネットワークと、前記第1入力画像から得られた前記深度画像の各画素の前記深度を前記カメラの位置を原点とするワールド座標に変換してポイントクラウドを取得するポイントクラウド取得部と、前記第1入力画像及び前記第2入力画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢から、前記第2入力画像を取得したときの前記カメラの姿勢までの移動量である姿勢移動量を出力する移動量推定ネットワークと、前記位置推定ネットワークが前記第1入力画像に基づいて出力した前記シーン座標画像と、前記ポイントクラウドとの間の、原点を合わせる処理を行った上での各画素のワールド座標の誤差に関する第1目的関数、及び、前記第1推定姿勢と前記第2推定姿勢との差分と、前記姿勢移動量との間の誤差に関する第2目的関数を小さくするように、前記位置推定ネットワークを学習させる学習処理部と、を備えることを特徴とする学習処理装置である。
望ましくは、前記学習処理部は、前記第1入力画像から得られた前記深度画像を変換した前記ポイントクラウド、及び、前記移動量推定ネットワークにより取得された前記姿勢移動量に基づいて、前記第2入力画像に対応する予測された前記ポイントクラウドを取得し、前記第1入力画像に対応する前記ポイントクラウド、前記第2入力画像に対応する前記ポイントクラウド、及び、前記第2入力画像に基づいて取得された予測第1入力画像と、前記第1入力画像との誤差に関する第3目的関数が小さくなるように、前記深度推定ネットワーク及び前記移動量推定ネットワークを学習させる、ことを特徴とする。
また、本発明は、コンピュータを、画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを学習させるための学習処理装置として動作させ、カメラにより取得された第1入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢である第1推定姿勢を演算し、前記第1入力画像の直後に前記カメラにより取得された第2入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第2入力画像を取得したときの前記カメラの姿勢である第2推定姿勢を演算する姿勢演算部と、前記第1入力画像に基づいて、前記第1入力画像の各画素について、前記カメラから画素が示す対象物までの実空間における距離である深度が示された深度画像を出力する深度推定ネットワークと、前記第1入力画像から得られた前記深度画像の各画素の前記深度を前記カメラの位置を原点とするワールド座標に変換してポイントクラウドを取得するポイントクラウド取得部と、前記第1入力画像及び前記第2入力画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢から、前記第2入力画像を取得したときの前記カメラの姿勢までの移動量である姿勢移動量を出力する移動量推定ネットワークと、前記位置推定ネットワークが前記第1入力画像に基づいて出力した前記シーン座標画像と、前記ポイントクラウドとの間の、原点を合わせる処理を行った上での各画素のワールド座標の誤差に関する第1目的関数、及び、前記第1推定姿勢と前記第2推定姿勢との差分と、前記姿勢移動量との間の誤差に関する第2目的関数を小さくするように、前記位置推定ネットワークを学習させる学習処理部と、として機能させることを特徴とする学習処理プログラムである。
本発明によれば、画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを、教師データを用意する必要なく学習させることができる。
本実施形態に係る学習処理装置の構成概略図である。 位置推定ネットワークの学習処理の流れを示す概念図である。 深度推定ネットワーク及び移動量推定ネットワークの学習処理の流れを示す概念図である。
図1は、本実施形態に係る学習処理装置10の構成概略図である。本実施形態では、学習処理装置10はサーバコンピュータであるが、学習処理装置10としては、以下に説明する機能を発揮する限りにおいてどのようなコンピュータであってもよい。なお、以下に説明する学習処理装置10が発揮する機能は、複数のコンピュータにおける分散処理によって実現されてもよい。すなわち、学習処理装置10は、複数のコンピュータ(例えば複数のサーバ)により実現されてもよい。
通信インターフェース12は、例えばネットワークアダプタなどを含んで構成される。通信インターフェース12は、インターネットやLAN(Local Area Network)などの通信回線を介して、他の装置(例えば画像を取得するカメラや、当該画像を取り込んだ他のコンピュータなど)と通信する機能を発揮する。
メモリ14は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、eMMC(embedded Multi Media Card)、ROM(Read Only Memory)あるいはRAM(Random Access Memory)などを含んで構成される。メモリ14には、学習処理装置10の各部を機能させるための学習処理プログラムが記憶される。また、図1に示す通り、メモリ14には、位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20が記憶される。
位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20は、それぞれ学習ネットワーク(学習器)であり、それぞれ学習処理されることによって高精度な出力データを出力することができる。位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20は、種々のネットワーク、例えばResNet(Residual Network)などで構成することができる。
位置推定ネットワーク16は、画像を入力とし、入力された画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力するネットワークである。当該ワールド座標の原点は予めユーザなどによって設定されてよい。なお、位置推定ネットワーク16は、入力された画像の画素1つ1つについてワールド座標を出力してもよいが、入力された画像の隣接する複数の画素をまとめて画素グループを形成し、当該画素グループ毎にワールド座標を出力するようにしてもよい。なお、シーン座標画像とは、上述のように各画素に対応するワールド座標の集合体であって厳密には「画像」ではないが、本明細書では、位置推定ネットワーク16が出力するものをシーン座標画像と呼ぶ。
本実施形態に係る学習処理装置10の学習処理の対象は位置推定ネットワーク16である。位置推定ネットワーク16は、画像と、当該画像が示す対象物のワールド座標が示された教師データとを含む学習データを用いて学習させることが可能である。しかしながら、上述の通り、多数の当該学習データ(特に当該教師データ)を用意するのは非常に困難である。したがって、学習処理装置10は、後述するように、教師データを用いずに位置推定ネットワーク16を学習させる。
深度推定ネットワーク18は、カメラにより取得(撮影)された画像を入力として、当該画像の各画素について、当該カメラから画素が示す対象物までの実空間における距離である深度を推定し、各画素について推定された深度が示された深度画像を出力するネットワークである。
深度推定ネットワーク18は、カメラで取得された画像と、当該画像の各画素の深度が示された教師データとを含む学習データを用いて学習させることが可能である。本実施形態では、学習済みの深度推定ネットワーク18を用いるものとする。ただし、後述する変形実施形態のように、学習処理装置10は、位置推定ネットワーク16のみならず、深度推定ネットワーク18も学習処理の対象とすることができる。
移動量推定ネットワーク20は、カメラで取得された先行画像と、当該先行画像の直後に当該カメラにより取得された後続画像とに基づいて、先行画像を取得したときの当該カメラの姿勢から、後続画像を取得したときの当該カメラの姿勢までの移動量である姿勢移動量を出力するネットワークである。
先行画像及び後続画像は、それぞれ、(ビデオ)カメラが取得した動画像の1つのフレームであってよい。先行画像の直後に取得された後続画像とは、代表的には、動画像において先行画像の次のフレームの画像である。しかしながら、後続画像は必ずしも先行画像の次のフレームである必要は無く、先行画像から数フレーム後の画像であってもよい。また、先行画像及び後続画像は、カメラが異なるタイミングで取得した静止画であってもよい。
また、本明細書におけるカメラの姿勢とは、カメラの位置及び向きの少なくとも一方を含む概念である。カメラの位置は、3次元のワールド座標で示され、カメラの向きはワールド座標系における3次元のベクトルで表現される。
移動量推定ネットワーク20は、カメラで取得された先行画像及び後続画像と、先行画像及び後続画像がそれぞれ取得されたときのカメラの姿勢が示された教師データとを含む学習データを用いて学習させることが可能である。本実施形態では、深度推定ネットワーク18同様、学習済みの移動量推定ネットワーク20を用いるものとする。ただし、後述する変形実施形態のように、学習処理装置10は、位置推定ネットワーク16のみならず、移動量推定ネットワーク20も学習処理の対象とすることができる。
プロセッサ22は、例えばCPU(Central Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、あるいは、プログラマブル論理デバイスなどを含んで構成される。プロセッサ22は、メモリ14に記憶された学習処理プログラムに従って、ネットワーク処理部24、姿勢演算部26、ポイントクラウド取得部28、及び学習処理部30としての機能を発揮する。
図2は、位置推定ネットワーク16の学習処理の流れを示す概念図である。以下、図2を参照しながら、プロセッサ22(すなわちネットワーク処理部24、姿勢演算部26、ポイントクラウド取得部28、及び学習処理部30)による位置推定ネットワーク16の学習処理を説明する。プロセッサ22による位置推定ネットワーク16の学習処理の概要としては、時刻tにおいてカメラにより取得された第1入力画像(あるいは上述の先行画像)としての入力画像I、及び、時刻tの直後である時刻t+1においてカメラにより取得された第2入力画像(あるいは上述の後続画像)としての入力画像It+1を学習データとし、深度推定ネットワーク18及び移動量推定ネットワーク20を用いつつ、位置推定ネットワーク16を学習させる。なお、以下における「カメラ」とは、入力画像I及び入力画像It+1を取得したカメラを意味するものである。
まず、ネットワーク処理部24は、入力画像Iを位置推定ネットワーク16に入力する。これにより、入力画像Iを入力とする位置推定ネットワーク16の出力であるシーン座標画像Scoord,tを取得する。ここでは、位置推定ネットワーク16はまだ十分に学習されたものでないため、シーン座標画像Scoord,tは必ずしも高精度なものではない。同様に、ネットワーク処理部24は、入力画像It+1を位置推定ネットワーク16に入力する。これにより、入力画像It+1を入力とする位置推定ネットワーク16の出力であるシーン座標画像Scoord,t+1を取得する。シーン座標画像Scoord,t+1も必ずしも高精度なものではない。
ここで、シーン座標画像Scoord,tが示すワールド座標は、実空間の所定位置を原点とする座標であることに留意されたい。
姿勢演算部26は、位置推定ネットワーク16が出力したシーン座標画像Scoord,tに基づいて、入力画像Iを取得したときの(すなわち時刻tにおける)カメラの姿勢である第1推定姿勢としての推定姿勢pを演算する。シーン座標画像Scoord,tから推定姿勢pを推定する処理はPnP問題としてよく知られており、その推定方法としては、例えば、RANSAC(Random Sample Consensus)などの既知のアルゴリズムを用いることができるため、ここではその推定方法の詳細な説明は省略する。なお、上述のように、シーン座標画像Scoord,tが必ずしも高精度なものではないため、推定姿勢pも必ずしも高精度なものではない。同様に、姿勢演算部26は、位置推定ネットワーク16が出力したシーン座標画像Scoord,t+1に基づいて、入力画像It+1を取得したときの(すなわち時刻t+1における)カメラの姿勢である第2推定姿勢としての推定姿勢pt+1を演算する。推定姿勢pt+1も必ずしも高精度なものではない。
次いで、ネットワーク処理部24は、入力画像Iを学習済みの深度推定ネットワーク18に入力する。これにより、入力画像Iを入力とする深度推定ネットワーク18の出力である深度画像Dを取得する。
ポイントクラウド取得部28は、深度推定ネットワーク18が出力した深度画像Dの各画素の深度を、カメラの位置を原点とするワールド座標に変換して、各画素に対応する、カメラの位置を原点とするワールド座標の集合体であるポイントクラウドQを取得する。具体的には、ポイントクラウドQは以下の式1で演算される。
Figure 2022136544000002
式1において、uは、深度画像D(スクリーン座標系)におけるx軸(横軸)の座標を示し、vは、深度画像D(スクリーン座標系)におけるy軸(縦軸)の座標を示す。したがって、Q(u,v)は、るポイントクラウドQの座標(u,v)における3次元ワールド座標を示し、D(u,v)は、深度画像Dの座標(u,v)における深度を示す。また、式1において、Kはカメラ行列を表す。カメラ行列は、カメラの座標系とワールド座標系を変換するための行列である。
ここで、Q(u,v)が示すワールド座標は、時刻tにおけるカメラの位置を原点とする座標であることに留意されたい。ポイントクラウドQは、入力画像Iが示す対象物の、カメラの位置を原点とするワールド座標が示されたものであると言える。また、本実施形態では、ポイントクラウドQは、学習済みの深度推定ネットワーク18の出力に基づくものであるため、一定の精度を持ったデータである。
次いで、ネットワーク処理部24は、入力画像I及び入力画像It+1を学習済みの移動量推定ネットワーク20に入力する。これにより、入力画像Iを入力したときの(時刻tにおける)カメラの姿勢から、入力画像It+1を入力したときの(時刻t+1における)カメラの姿勢までの姿勢移動量Tt→t+1を取得する。
姿勢移動量Tt→t+1は、4×4の姿勢変換行列であり、以下の式2で表すことができる。
Figure 2022136544000003
式2において、Rは回転行列を表し、τは並進移動ベクトルを表す。本実施形態では、姿勢移動量Tt→t+1は、学習済みの移動量推定ネットワーク20の出力に基づくものであるため、一定の精度を持ったデータである。
学習処理部30は、位置推定ネットワーク16が入力画像Iに基づいて出力したシーン座標画像Scoord,tと、ポイントクラウド取得部28が取得したポイントクラウドQのワールド座標の原点を合わせる処理を行う。当該処理は、シーン座標画像Scoord,t又はポイントクラウドQのいずれか一方のワールド座標を平行移動させることで実現される。具体的には、シーン座標画像Scoord,tのワールド座標の原点を時刻tにおけるカメラの位置に合わせるように、シーン座標画像Scoord,tのワールド座標を平行移動させるか、ポイントクラウドQのワールド座標の原点を、シーン座標画像Scoord,tのワールド座標の原点である所定位置に合わせるように、ポイントクラウドQのワールド座標を平行移動させる。ただし、カメラの位置は、シーン座標画像Scoord,tにより推定された推定姿勢pが示すものであるため、シーン座標画像Scoord,tが精度を欠く以上、シーン座標画像Scoord,tとポイントクラウドQの原点の位置合わせは、必ずしも正しく行われない。シーン座標画像Scoord,tとポイントクラウドQのワールド座標の原点を合わせる処理とは、シーン座標画像Scoord,tとポイントクラウドQの原点を合わせようとする処理も含むものである。
学習処理部30は、シーン座標画像Scoord,tとポイントクラウドQの座標原点を合わせる処理を行った上での、シーン座標画像Scoord,tとポイントクラウドQとの間の各画素のワールド座標の誤差に関する第1目的関数LScoord,tを取得する。第1目的関数LScoord,tは、以下の式3で表される。
Figure 2022136544000004
式3において、Tptは、時刻tにおける推定姿勢p(すなわち、ポイントクラウドQのワールド座標の推定された原点)から、シーン座標画像Scoord,tのワールド座標の原点時刻への姿勢変換行列である。
また、学習処理部30は、姿勢演算部26が演算した、推定姿勢p(入力画像Iを取得したときのカメラの推定姿勢)と推定姿勢pt+1(入力画像It+1を取得したときのカメラの推定姿勢)との差分と、移動量推定ネットワーク20が出力した姿勢移動量Tt→t+1との間の誤差に関する第2目的関数Lを取得する。第2目的関数Lは、以下の式4で表される。
Figure 2022136544000005
式4において、dist()は任意の距離関数であり、例えばL2ノルムなどを用いることができる。また、式4において、Tt→t+1(p)は、推定姿勢pを姿勢移動量Tt→t+1で移動した姿勢である。すなわち、第2目的関数Lpは、推定姿勢pt+1と、推定姿勢pを姿勢移動量Tt→t+1で移動した姿勢との間の誤差に関する関数であるとも言える。
学習処理部30は、第1目的関数LScoord,t及び第2目的関数Lが小さくなるように、位置推定ネットワーク16のパラメータを調整することで、位置推定ネットワーク16を学習させる。最終的な目的関数Lは、以下の式5で表される。
Figure 2022136544000006
式5において、wは各目的関数の重みであり、チューニングパラメータである。なお、目的関数Lには、深度画像Dの滑らかさに対応する項を追加するなど、幾つかの正則化項を導入することもできる。
第1目的関数LScoord,tは、シーン座標画像Scoord,tとポイントクラウドQとの誤差に基づくものであるところ、学習処理部30は、両画像のワールド座標の原点を正しく位置合わせできれば、シーン座標画像Scoord,tとポイントクラウドQとの対応する画素のワールド座標の誤差を小さくするように、位置推定ネットワーク16を学習させることができる。しかしながら、第1目的関数LScoord,tは、十分に学習されていない位置推定ネットワーク16の出力から得られた推定姿勢pに基づく姿勢変換行列Tptを含む。つまり、位置推定ネットワーク16が十分に学習されていない状態においては、シーン座標画像Scoord,tとポイントクラウドQとのワールド座標の原点は、必ずしも正しく位置合わせされない。そこで、学習処理部30は、さらに第2目的関数Lを小さくするように位置推定ネットワーク16を学習させることで推定姿勢pを高精度化させている。
このように、学習処理部30は、第1目的関数LScoord,tと第2目的関数Lとの組み合わせによって、位置推定ネットワーク16を学習させることを可能としている。上述の通り、位置推定ネットワーク16の学習処理においては、学習データとして、入力画像I及び入力画像It+1しか用いていない。すなわち、本実施形態によれば、学習処理部30は、教師データを用いることなく、位置推定ネットワーク16を学習させることができる。これにより、位置推定ネットワーク16を学習させるための教師データを取得する手間が省略される。
位置推定ネットワーク16が十分に学習されることで、位置推定ネットワーク16は、画像に基づいてシーン座標画像を高精度に出力することができる。また、高精度なシーン座標画像に基づいて、上述のRANSACなどの既知のアルゴリズムにより、当該画像を取得したときのカメラの姿勢を高精度に推定することができるようになる。
以下、学習処理装置10の変形実施形態について説明する。上述の基本実施形態においては、位置推定ネットワーク16の学習処理において、学習済みの深度推定ネットワーク18及び移動量推定ネットワーク20を用いていたが、変形実施形態では、入力画像I及び入力画像It+1を学習データとして、位置推定ネットワーク16のみならず、深度推定ネットワーク18及び移動量推定ネットワーク20も学習させるものである。
変形実施形態における学習処理装置10の構成概要は、図1に示した基本実施形態と同様であるため、その説明は省略する。
図3は、深度推定ネットワーク18及び移動量推定ネットワーク20の学習処理の流れを示す概念図である。変形実施形態では、基本実施形態と同様の処理(図2参照)にて位置推定ネットワーク16を学習させると共に、図3に示す学習処理の流れで深度推定ネットワーク18及び移動量推定ネットワーク20も学習させる。
まず、ポイントクラウド取得部28は、は、時刻tで取得された入力画像Iを入力とする深度推定ネットワーク18の出力である深度画像Dから得られたポイントクラウドQ、及び、移動量推定ネットワーク20の出力である姿勢移動量Tt→t+1とに基づいて、入力画像It+1に対応する(換言すれば時刻t+1における)、予測されたポイントクラウドQ’を取得する。
学習処理部30は、入力画像Iに対応するポイントクラウドQ、入力画像It+1に対応するポイントクラウドQ’、及び、時刻t+1で取得された入力画像It+1に基づいて、入力画像Iを予測した画像である、予測第1入力画像としての予測画像I’を取得する。具体的には、学習処理部30は、ポイントクラウドQとポイントクラウドQ’との対応関係に基づいて、入力画像It+1の各画素をサンプリング(図3におけるピクセルサンプリング)することで、入力画像Iを予測した画像である予測画像I’を取得する。
予測画像I’は、以下の式6で表すことができる。
Figure 2022136544000007
式6において、proj()は、各画素の深度、時刻tから時刻t+1までのカメラの姿勢移動量、及びカメラ行列から画像間の対応関係を計算する関数である。
学習処理部30は、予測画像I’と、入力画像Iとの誤差、具体的には対応する画素毎の誤差に関する第3目的関数Lを取得する。第3目的関数Lは、以下の式7で表される。
Figure 2022136544000008
式7において、pe()は、ピクセル誤差(画素毎の誤差)を表す関数である。
学習処理部30は、第3目的関数Lが小さくなるように、深度推定ネットワーク18及び移動量推定ネットワーク20のパラメータを調整することで、深度推定ネットワーク18及び移動量推定ネットワーク20を学習させる。
変形実施形態における、位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20を学習させるための最終的な目的関するLは以下の式8で表される。
Figure 2022136544000009
式8においては、基本実施形態の目的関数L(式5参照)に比して、第3項wが付加されている。
なお、上記基本実施形態及び変形実施形態においては、教師データを用いずに、位置推定ネットワーク16を学習させていたが、上記基本実施形態及び変形実施形態の手法を用いつつ、教師データを含む学習データを用いて位置推定ネットワーク16を学習させることで、単純に教師データを含む学習データを用いて位置推定ネットワーク16を学習させる場合に比して、学習後の位置推定ネットワーク16の精度をより向上させること、あるいは、位置推定ネットワーク16の学習効率を向上させることも可能である。
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
例えば、本実施形態では、位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20は、学習処理装置10のメモリ14に記憶されていたが、位置推定ネットワーク16、深度推定ネットワーク18、及び移動量推定ネットワーク20は、学習処理装置10からアクセス可能な他の装置のメモリに記憶されていてもよい。
10 学習処理装置、12 通信インターフェース、14 メモリ、16 位置推定ネットワーク、18 深度推定ネットワーク、20 移動量推定ネットワーク、22 プロセッサ、24 ネットワーク処理部、26 姿勢演算部、28 ポイントクラウド取得部、30 学習処理部。

Claims (3)

  1. 画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを学習させるための学習処理装置であって、
    カメラにより取得された第1入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢である第1推定姿勢を演算し、前記第1入力画像の直後に前記カメラにより取得された第2入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第2入力画像を取得したときの前記カメラの姿勢である第2推定姿勢を演算する姿勢演算部と、
    前記第1入力画像に基づいて、前記第1入力画像の各画素について、前記カメラから画素が示す対象物までの実空間における距離である深度が示された深度画像を出力する深度推定ネットワークと、
    前記第1入力画像から得られた前記深度画像の各画素の前記深度を前記カメラの位置を原点とするワールド座標に変換してポイントクラウドを取得するポイントクラウド取得部と、
    前記第1入力画像及び前記第2入力画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢から、前記第2入力画像を取得したときの前記カメラの姿勢までの移動量である姿勢移動量を出力する移動量推定ネットワークと、
    前記位置推定ネットワークが前記第1入力画像に基づいて出力した前記シーン座標画像と、前記ポイントクラウドとの間の、原点を合わせる処理を行った上での各画素のワールド座標の誤差に関する第1目的関数、及び、前記第1推定姿勢と前記第2推定姿勢との差分と、前記姿勢移動量との間の誤差に関する第2目的関数を小さくするように、前記位置推定ネットワークを学習させる学習処理部と、
    を備えることを特徴とする学習処理装置。
  2. 前記学習処理部は、前記第1入力画像から得られた前記深度画像を変換した前記ポイントクラウド、及び、前記移動量推定ネットワークにより取得された前記姿勢移動量に基づいて、前記第2入力画像に対応する予測された前記ポイントクラウドを取得し、前記第1入力画像に対応する前記ポイントクラウド、前記第2入力画像に対応する前記ポイントクラウド、及び、前記第2入力画像に基づいて取得された予測第1入力画像と、前記第1入力画像との誤差に関する第3目的関数が小さくなるように、前記深度推定ネットワーク及び前記移動量推定ネットワークを学習させる、
    ことを特徴とする請求項1に記載の学習処理装置。
  3. コンピュータを、
    画像の各画素について、画素が示す対象物の実空間の所定位置を原点とするワールド座標が示されたシーン座標画像を出力する位置推定ネットワークを学習させるための学習処理装置として動作させ、
    カメラにより取得された第1入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢である第1推定姿勢を演算し、前記第1入力画像の直後に前記カメラにより取得された第2入力画像を入力とする前記位置推定ネットワークが出力した前記シーン座標画像に基づいて、前記第2入力画像を取得したときの前記カメラの姿勢である第2推定姿勢を演算する姿勢演算部と、
    前記第1入力画像に基づいて、前記第1入力画像の各画素について、前記カメラから画素が示す対象物までの実空間における距離である深度が示された深度画像を出力する深度推定ネットワークと、
    前記第1入力画像から得られた前記深度画像の各画素の前記深度を前記カメラの位置を原点とするワールド座標に変換してポイントクラウドを取得するポイントクラウド取得部と、
    前記第1入力画像及び前記第2入力画像に基づいて、前記第1入力画像を取得したときの前記カメラの姿勢から、前記第2入力画像を取得したときの前記カメラの姿勢までの移動量である姿勢移動量を出力する移動量推定ネットワークと、
    前記位置推定ネットワークが前記第1入力画像に基づいて出力した前記シーン座標画像と、前記ポイントクラウドとの間の、原点を合わせる処理を行った上での各画素のワールド座標の誤差に関する第1目的関数、及び、前記第1推定姿勢と前記第2推定姿勢との差分と、前記姿勢移動量との間の誤差に関する第2目的関数を小さくするように、前記位置推定ネットワークを学習させる学習処理部と、
    として機能させることを特徴とする学習処理プログラム。
JP2021036211A 2021-03-08 2021-03-08 学習処理装置及び学習処理プログラム Active JP7272381B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021036211A JP7272381B2 (ja) 2021-03-08 2021-03-08 学習処理装置及び学習処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021036211A JP7272381B2 (ja) 2021-03-08 2021-03-08 学習処理装置及び学習処理プログラム

Publications (2)

Publication Number Publication Date
JP2022136544A true JP2022136544A (ja) 2022-09-21
JP7272381B2 JP7272381B2 (ja) 2023-05-12

Family

ID=83312011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021036211A Active JP7272381B2 (ja) 2021-03-08 2021-03-08 学習処理装置及び学習処理プログラム

Country Status (1)

Country Link
JP (1) JP7272381B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021503134A (ja) * 2017-11-15 2021-02-04 グーグル エルエルシーGoogle LLC 画像深度とエゴモーション予測ニューラルネットワークの教師なし学習

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021503134A (ja) * 2017-11-15 2021-02-04 グーグル エルエルシーGoogle LLC 画像深度とエゴモーション予測ニューラルネットワークの教師なし学習

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YAO, MINGWEI、他1名: "An End-to-end Network for Monocular Visual Odometry Based on Image Sequence", INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS (IJCNN), JPN6023010661, 14 July 2019 (2019-07-14), pages 1 - 6, XP033622002, ISSN: 0005022187, DOI: 10.1109/IJCNN.2019.8852165 *
ZENG, WEI、他2名: "Inferring Point Clouds from Single Monocular Images by Depth Intermediation", COMPUTER VISION AND PATTERN RECOGNITION, JPN6023010662, 26 October 2020 (2020-10-26), pages 1 - 12, ISSN: 0005022186 *

Also Published As

Publication number Publication date
JP7272381B2 (ja) 2023-05-12

Similar Documents

Publication Publication Date Title
US11481869B2 (en) Cross-domain image translation
CN107330439B (zh) 一种图像中物体姿态的确定方法、客户端及服务器
US9542773B2 (en) Systems and methods for generating three-dimensional models using sensed position data
JP6902122B2 (ja) ダブル視野角画像較正および画像処理方法、装置、記憶媒体ならびに電子機器
US10204423B2 (en) Visual odometry using object priors
CN111784776B (zh) 视觉定位方法及装置、计算机可读介质和电子设备
CN110599421A (zh) 模型训练方法、视频模糊帧转换方法、设备及存储介质
JP6384856B2 (ja) 予測カメラ姿勢に基づくarオブジェクトを実時間に合わせて描画する情報装置、プログラム及び方法
JP7118934B2 (ja) 物体数推定装置、物体数推定方法、および物体数推定プログラム
JP7082713B2 (ja) ローリングシャッター画像/ビデオのsfm/slamに対するアプリケーションで畳み込みニューラルネットワークを用いる画像/ビデオにおけるローリングシャッター補正
CN110956131B (zh) 单目标追踪方法、装置及系统
EP2960859A1 (en) Constructing a 3d structure
CN115008454A (zh) 一种基于多帧伪标签数据增强的机器人在线手眼标定方法
KR20230049969A (ko) 글로벌 측위 장치 및 방법
JP7272381B2 (ja) 学習処理装置及び学習処理プログラム
JP2022105442A (ja) 情報処理装置、情報処理方法およびプログラム
Zhang et al. End-to-end learning of self-rectification and self-supervised disparity prediction for stereo vision
US20230401737A1 (en) Method for training depth estimation model, training apparatus, and electronic device applying the method
JP6842618B2 (ja) 3dマップの作成
WO2018228021A1 (zh) 用于判断目标旋转方向的方法及装置、计算机可读介质、电子设备
JP2014149788A (ja) 物体領域境界推定装置、物体領域境界推定方法及び物体領域境界推定プログラム
US11202000B2 (en) Learning apparatus, image generation apparatus, learning method, image generation method, and program
JP6218237B2 (ja) 撮影画像を平行化する画像変換プログラム、装置及び方法
JP6663838B2 (ja) 法線推定装置、法線推定方法、及び法線推定プログラム
JP6384961B2 (ja) カメラキャリブレーション装置、カメラキャリブレーション方法、カメラキャリブレーションプログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220323

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230310

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230410

R150 Certificate of patent or registration of utility model

Ref document number: 7272381

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150