JP2021012133A - 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム - Google Patents

測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム Download PDF

Info

Publication number
JP2021012133A
JP2021012133A JP2019127163A JP2019127163A JP2021012133A JP 2021012133 A JP2021012133 A JP 2021012133A JP 2019127163 A JP2019127163 A JP 2019127163A JP 2019127163 A JP2019127163 A JP 2019127163A JP 2021012133 A JP2021012133 A JP 2021012133A
Authority
JP
Japan
Prior art keywords
distance
signal
axis
image
unit
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
JP2019127163A
Other languages
English (en)
Other versions
JP7298350B2 (ja
Inventor
直樹 本橋
Naoki Motohashi
直樹 本橋
賢一郎 齊所
Kenichiro Saisho
賢一郎 齊所
和摩 松浦
Kazuma Matsuura
和摩 松浦
洋義 関口
Hiroyoshi Sekiguchi
洋義 関口
大志郎 小林
Daishiro Kobayashi
大志郎 小林
佑 山田
Yu Yamada
佑 山田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2019127163A priority Critical patent/JP7298350B2/ja
Priority to EP20179425.2A priority patent/EP3764124A1/en
Publication of JP2021012133A publication Critical patent/JP2021012133A/ja
Application granted granted Critical
Publication of JP7298350B2 publication Critical patent/JP7298350B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/42Simultaneous measurement of distance and other co-ordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Measurement Of Optical Distance (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

【課題】人間が融合の論理を設定しなくても異なる形式の2つ以上の信号を融合できる測距装置を提供すること。【解決手段】形式が異なる複数の信号に基づいて物体までの距離を測定する測距装置100において、物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部22と、前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する距離情報出力部24と、を有し、前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする。【選択図】図11

Description

本発明は、測距装置、情報処理装置、測距方法、車載装置、移動体、及び、測距システムに関する。
ステレオカメラの視差計算アルゴリズムとして、特徴点のブロックマッチング方式が知られている。この方式は、左又は右の画像をシフトさせながら特徴点を探索しシフト量を視差として視差ごとにコストを算出する方式であり、探索視差空間においてコスト最小を与える視差を検出して、視差値dと距離Zの対応式(Z=BF/d)により各画素に対応する距離を計算する方式である(Bは基線長、Fは焦点距離)。また、テクスチャが弱い物体に対しても適切に視差値を導き出すSGM(Semi−Global−Matching)伝播方式も知られている。
しかし、これらの視差計算アルゴリズムで決定された視差から計算される距離は、遠方領域の距離分解能を確保することが難しく、また、測距値のばらつき(分散)も大きくなる傾向がある。
例えば車載業界では、自動運転に代表されるように遠方での測距性能の向上が求められている。そこで、空間分解能は低いが距離分解能は高いLiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)で測定した距離情報で、視差計算アルゴリズムで算出される距離を補足することが検討されている。なお、LiDARは、物体にレーザ光を照射して反射信号が戻ってくるまでの時間により物体までの距離を算出する測定方法である。時系列の反射信号から物体の反射信号を特定する方法の一例として反射信号のピークを検出する方法がある。
従来から、空間分解能は低いが距離分解能は高いLiDARの測定結果と空間分解能は高いが遠方の距離分解能が低いステレオカメラの測定結果を融合(これをフュージョンと呼ぶ場合がある)する試みが知られている(例えば、特許文献1参照。)。特許文献1には、LiDARの距離情報を、撮像画像を構成する画素と関連付けておき、画素に関連付けられた距離情報に基づく値を、撮像画像を構成する画素の視差演算に用いて視差画像を生成する視差演算システムが開示されている。このようなフュージョンにより、3次元高分解能測距結果出力、測距値の低分散化、不連続面の検出高度化、小型化、及び、環境ロバスト性の向上等を図ることができる。
しかしながら、LiDARの測定結果とカメラの測定結果などのように、異なる形式の信号をどのように融合するかという論理を人間が考え出すには限界があるという問題がある。例えば、距離を測定する広範なシーン(周囲の明るさ、天候等)に対するロバスト性を得るためには、これら全ての(又は大部分の)シーンに適した論理が必要だが、広範なシーンに適合する論理を設定することが容易でない。このため、あるシーンでは所望の測距性能が得られても別のシーンでは所望の測距性能が得られないなどの不都合が生じる場合があった。
本発明は、上記課題に鑑み、人間が融合の論理を設定しなくても異なる形式の2つ以上の信号を融合できる測距装置を提供することを目的とする。
上記課題に鑑み、本発明は、形式が異なる複数の信号に基づいて物体までの距離を測定する測距装置において、物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部と、前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する距離情報出力部と、を有し、前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする。
人間が融合の論理を設定しなくても異なる形式の2つ以上の信号を融合できる測距装置を提供することができる。
機械学習を用いたカメラの信号とLiDARの信号の融合を説明する概略図である。 測距装置の外観構成及び取り付け例を説明する図の一例である。 測距装置の全体的な構成図の一例を示す図である。 測距装置のハードウェア構成例を示す図である。 三角測量により比較画像と基準画像から物体に対する視差値を導き出し、視差値によって測距装置から物体までの距離を測定する原理について説明する図である。 照射されたレーザ光が物体で反射して受光される時系列な強度を模式的に示す図である。 ステレオ画像演算部が有する機能をブロックに分けて説明する機能ブロック図の一例である。 情報処理装置の一例の概略斜視図である。 情報処理装置のハードウェア構成例を示す図である。 情報処理装置が有する機能をブロックに分けて説明する機能ブロック図の一例である。 画像データと反射信号の関係を説明する図である。 測距装置の一例の全体構成図である。 入力層から出力層までL層が全結合されたニューラルネットワークである。 ニューラルネットワークの学習時の処理を説明するフローチャート図の一例である。 情報処理装置が距離情報出力部を生成する手順を示すフローチャート図の一例である。 測距装置が距離画像を生成する手順を示すフローチャート図の一例である。 CNNの構成例を示す図である。 フィルタと演算結果の関係を説明する図である。 畳み込み演算に活性化関数を適用した畳み込み層を説明する図である。 測距装置及び情報処理装置が有する機能をブロックに分けて説明する機能ブロック図の一例である。 次元拡張を説明する図である。 特徴画像ブロックと強度データブロックから距離画像を出力する測距装置又は情報処理装置の全体構成図の一例である。 情報処理装置が距離情報出力部を生成する手順を示すフローチャート図の一例である。 測距装置が距離画像を生成する手順を示すフローチャート図の一例である。 情報処理装置が有する機能をブロックに分けて説明する機能ブロック図の一例である。 損失関数の設計方法を模式的に説明する図の一例である。 特徴画像ブロックと強度データブロックから距離画像を出力する情報処理装置の一例の全体構成図である。 特徴画像ブロックと強度データブロックから距離画像を出力する測距装置の一例の全体構成図である。 情報処理装置が距離情報出力部を生成する手順を示すフローチャート図の一例である。 測距装置が距離画像を生成する手順を示すフローチャート図の一例である。 ステレオカメラとレーザレーダ測距部の組み合わせで測距する測距装置の構成例を示す図である。 カメラとレーダーの組み合わせで測距する測距装置の構成例を示す図である。 ステレオカメラとレーダーの組み合わせで測距する測距装置の構成例を示す図である。 カメラとソナーの組み合わせで測距する測距装置の構成例を示す図である。 ステレオカメラとソナーの組み合わせで測距する測距装置の構成例を示す図である。 測距装置が搭載された車両の構成例を示す図である。
以下、本発明を実施するための形態の一例として測距装置と測距装置が行う測距方法について説明する。
本実施例では、距離を測定できる複数のセンサ(カメラとLiDAR)によってそれぞれ得られる信号を、機械学習を利用して融合する。
まず、機械学習を利用することの利点を説明する。機械学習の中でも、入力に対しその正解出力である教師データを用意して、両者の関係を表現する特徴量を抽出するアプローチを教師あり学習と呼ぶ。教師あり学習である場合、入力に対して、教師データを事前に用意しているため、入力から出力を導く特徴を抽出することができれば、技術者が入力データから適切と思われる特徴量を設計するよりも、より精度が高い出力データを出力するように入力と出力を対応付けることができる。特徴量を多層に渡って抽出する機械学習の一手法である深層学習(ディープラーニング)の場合、深層化して各層で抽出した特徴量を組み合わせることにより、より複雑な特徴量を抽出できるようになる。これにより、異なる形式の信号をどのように融合するかという論理を人間が考え出した事前設定論理を超える特徴量を抽出できると共に、広範なシーンに対するロバスト性を獲得できる。
また、本実施例では、LiDARの生信号を使用する。従来の測距を目的とした深層学習の研究の多くでは、LiDAR側の入力として、LiDARで受光した距離値を埋め込んだ距離画像(深度画像)を使うことが多い。しかし、この場合、遠距離の物体に反射して返ってきた微弱信号は、コンパレータなどのLiDAR内の機構で除去されてしまい信号として取得できない(取得できなかった信号は画素値に距離として含まれない)。これに対し、本実施例ではLiDAR側の入力としてLiDARの生信号を使う。生信号とは時間に対して変化する強度を全てサンプリングした信号である。実際には全ての信号をサンプリングすることは困難なので、信号波形を再生できる程度に短い一定時間間隔で強度を測距装置が取得する。
生信号にはノイズも含まれるが正しい微弱信号も含まれているため、それらを多数収集して、ノイズから真値を抽出できるネットワークを深層学習で構築することができれば、遠距離の測距も可能となる。
図1は、機械学習を用いたカメラの信号とLiDARの信号の融合を説明する概略図である。左カメラ111又は右カメラ112が出力する信号は二次元の画像データ13(第一の信号の一例)である。一方、LiDARを有するレーザレーダ測距部120が出力する信号は時間に対する一次元の反射信号14(第二の信号の一例)である。このように信号の形成が異なっていると、後述するように学習の収束などに時間がかかるおそれがある。そこで、測距装置は一次元の反射信号14を二次元の強度データ12に変換する。これにより、異なる形式の信号の次元数が一致する。
次元数が一致した上で例えば深層学習などの機械学習の手法を使って、入力データと教師データの対応をニューラルネットワーク11で学習する。深層化することで人間が考え出した事前設定論理を超える特徴量を抽出できる。つまり、異なる形式の信号が入力されても正解距離画像に近い出力データをニューラルネットワーク11が出力することができる。したがって、左カメラ111又は右カメラ112の信号とレーザレーダ測距部120の信号の形式が異なっていても、異なる形式の信号をどのように融合するかという論理を人間が考え出さずに、広範なシーンに対しロバスト性が高い測距が可能になる。
<用語について>
機械学習とは、コンピュータに人のような学習能力を獲得させるための技術であり、コンピュータが、データ識別等の判断に必要なアルゴリズムを、事前に取り込まれる学習データから自律的に生成し、新たなデータについてこれを適用して予測を行う技術のことをいう。機械学習のための学習方法は、教師あり学習、教師なし学習、半教師学習、強化学習、深層学習のいずれかの方法でもよく、更に、これらの学習方法を組み合わせた学習方法でもよく、機械学習のための学習方法は問わない。
信号の形式とは、数値以外の、信号の構造、型式、枠組みなどを言う。例えば、信号の数、信号の次元数などである。
次元とは、一般的な空間の広がり方の度合いを表す。
<測距装置の外観構成及び取り付け例>
図2を用いて、測距装置100の外観構成及び取り付け例について説明する。図2は、測距装置の外観構成及び取り付け例を説明する図の一例である。図2では、測距装置100がステレオカメラを有する場合を説明するが、これはステレオカメラによる測距を別途行ってもよいためである。また、ステレオカメラの画像をカメラ側の入力とすることもできるためである。しかし、本実施例ではカメラは1つあればよい。
測距装置100は、ステレオカメラ部110と、レーザレーダ測距部120とを有する。ステレオカメラ部110は、右カメラ(第1の撮像装置)111と左カメラ(第2の撮像装置)112とを備え、レーザレーダ測距部120は、右カメラ112と左カメラ111との間に配置される。レーザレーダ測距部120とステレオカメラ部110との測定結果を融合(フュージョン)すれば、周囲環境の3次元情報をより高精度に取得することが可能になる。
右カメラ112と左カメラ111は、所定のフレーム周期で同期を取りそれぞれが撮像を行い、撮像画像を生成する。
レーザレーダ測距部120は、レーザ光を照射しその反射光を受光することで、TOF(Time Of Flight)方式で照射位置(照射方向にある物体)までの距離を測定する。レーザレーダ測距部120はいわゆるLiDARにより距離を測定する。
測距装置100は、例えば、車両140のフロントウィンドウの内側の天井よりの中央部分に取り付けられる。このとき、ステレオカメラ部110及びレーザレーダ測距部120は、いずれも車両140の前方方向に向かって取り付けられる。つまり、車両140において、測距装置100は、ステレオカメラ部110の光軸と、レーザレーダ測距部120のレーザ光の照射方向の中心とが、同じ方向になるように取り付けられる。
なお、図2の取り付け位置は一例に過ぎず、車両のダッシュボード、ルーフ、又は、バンパ内などに取り付けられてもよい。また、図2の取り付け位置は車両の前方の3次元情報を取得するためのものであり、車両の右側方、左側方、又は後方の3次元情報を取得できるように取り付けられてもよい。
また、測距装置100は図2のように1つの筐体に格納される他、いくつかの装置が分離して存在し各装置が通信して実現する測距システムでもよい。
<測距装置のハードウェア構成>
続いて、図3に基づき測距装置100の全体的な構成例について説明する。図3は、測距装置100の全体的な構成図の一例を示す図である。
測距装置100は、レーザレーダ測距部120とステレオカメラ部110とが相互に必要な情報を送受信できるように構成される。ステレオカメラ部110は上記のように右カメラと左カメラに加え、基準画像と比較画像を処理して距離画像を出力するステレオカメラ部110を有している。
レーザレーダ測距部120は照射方向ごとの生信号をステレオカメラ部110に出力する。ステレオカメラ部110は照射方向ごとの生信号とカメラの画像を融合して詳細な距離画像を生成し、ECU190(Electronic Control Unit:電子制御ユニット)に出力する。このように、レーザレーダ測距部120とステレオカメラ部110がフュージョンされることでより高精度な3次元情報の取得が可能になる。
図3では一例として、距離画像と基準画像がECU190に送出されている。ECU190は車両の電子制御ユニットである。なお、車載された測距装置100を車載装置という。ECU190は、測距装置100が出力する距離画像と基準画像を用いて各種の運転支援を行う。基準画像については種々のパターンマッチングを行い先行車両、歩行者、白線、信号機の状態の認識等を行う。
運転支援は車両によって様々であるが、例えば、対象物の横位置が自車両の車幅と重なる場合、距離と相対速度から算出されるTTC(Time To Collision)に応じて警報や制動などを行う。また、衝突までの停止が困難な場合、衝突を回避する方向にステアリングを操舵する。
また、ECU190は、車速に応じた車間距離で先行車に追従走行する全車速車間距離制御を行う。先行車が停車したら自車両も停車させ、先行車が発進したら自車両も発進する。また、ECU190が白線認識などを行う場合、走行レーンの中央を走行するように操舵するレーンキーピング制御や走行レーンから逸脱するおそれがあると走行方向を走行レーンに向けて変更する逸脱防止制御等を行うことができる。
また、停車時に進行方向に障害物がある場合、急発進を抑制することができる。例えば、シフトレバーの操作位置により判断される進行方向に障害物があり、かつ、アクセルペダルの操作量が大きい場合、エンジン出力を制限したり警報したりすることで被害を軽減する。
図4は、測距装置100のハードウェア構成例を示す図である。測距装置100は、センサステイ201と制御基板収納部202とを有する。センサステイ201には、左カメラ111、右カメラ112及び光学処理部121が取り付けられている。左カメラ111と右カメラ112に挟まれるこれらの直線上に光学処理部121が配置されることで、測距装置100の小型化及び低コスト化を実現している。左カメラ111と右カメラ112の間隔を基線長というが、基線長が長い方が視差を稼ぎやすい。測距装置100を小型化するには基線長を短くする必要があり、基線長を短くしながら精度を損なわないことが求められる。
制御基板収納部202には、レーザ信号処理部240、ステレオ画像演算部250、メモリ260、及び、MPU(Micro Processing Unit)270が収納されている。レーザ信号処理部240と光学処理部121とを別体とすることで、測距装置100の設計の自由度が増しサイズを小さくすることができる。
これにより、本実施形態では、光学処理部121とレーザ信号処理部240を有するレーザレーダ測距部120を左カメラ111と右カメラ112との間へ配置されている。
なお、図4の例では、レーザ信号処理部240とステレオ画像演算部250とを、別の回路基板として構成しているが、レーザ信号処理部240とステレオ画像演算部250とは、共通の回路基板により構成してもよい。回路基板の枚数を削減することで、低コスト化を図ることが可能となるからである。
続いて、センサステイ201側の各部について説明する。図4に示すように、左カメラ111は、カメラレンズ211と、撮像素子212と、センサ基板213とを備える。カメラレンズ211を介して入射された外部の光は、撮像素子212に受光され、所定のフレーム周期で光電変換される。光電変換されることで得た信号は、センサ基板213において処理され、1フレームごとの撮像画像が生成される。生成された撮像画像は、比較画像として、順次、ステレオ画像演算部250に送信される。
なお、右カメラ112も、左カメラ111と同様の構成を有しており、同期制御信号に基づいて左カメラ111と同期して撮像する。撮像画像は、基準画像として、順次、ステレオ画像演算部250に送信される。
光学処理部121は、光源駆動回路231と、レーザ光源232と、照射レンズ233とを備える。光源駆動回路231は、レーザ信号処理部240からの同期制御信号に基づいて動作し、レーザ光源232に対して変調電流(光源発光信号)を印加する。これにより、レーザ光源232ではレーザ光を照射する。レーザ光源232より照射されたレーザ光は、照射レンズ233を介して外部に照射される。
なお、本実施形態では、レーザ光源232として、赤外半導体レーザダイオード(LD:Laser Diode)が用いられ、レーザ光として波長800nm〜950nmの近赤外光が照射されるものとする。また、レーザ光源232は、光源駆動回路231により印加された変調電流(光源発光信号)に応じて、パルス状の波形を有するレーザ光を周期的に照射するものとする。更に、レーザ光源232は、数ナノ秒から数百ナノ秒程度の短いパルス幅を有するパルス状のレーザ光を周期的に照射するものとする。ただし、レーザ光の波長やパルス幅をこれらに限定するものではない。
レーザ光源232から照射されたパルス状のレーザ光は、照射レンズ233を介して照射ビームとして外部に照射された後、レーザ光の照射方向にある物体に照射される。なお、レーザ光源232から照射されるレーザ光は、照射レンズ233によって略平行光にコリメートされているため、照射された物体(オブジェクト)における照射範囲は、予め設定された微小面積に抑えられる。
光学処理部121は、更に、受光レンズ234と、受光素子235(受光部の一例)と、受光信号増幅回路236とを備える。照射方向の物体に照射されたレーザ光は、一様な方向に散乱する。そして、光学処理部121から照射されたレーザ光と同じ光路をたどって反射してくる光成分のみが、反射光として受光レンズ234を介して受光素子235に導かれる。
本実施形態では、受光素子235として、シリコンPINフォトダイオードやアバランシェフォトダイオードが用いられる。受光素子235は、反射光を光電変換することで反射信号を生成し、受光信号増幅回路236は、生成された反射信号を増幅した後、レーザ信号処理部240に送信する。
続いて、制御基板収納部202側の各部について説明する。レーザ信号処理部240は、光学処理部121より送信された反射信号に基づいて、照射方向と生信号(一次元の反射信号14)をステレオ画像演算部250に送信する。
ステレオ画像演算部250は、例えば、FPGA(Field−Programmable gate array)や、ASIC(Application Specific Integrated Circuit)等の専用の集積回路により構成される。また、一般的なコンピュータの機能(CPU、RAM、ROM、SSD(Solid State Drive等)を有している。ステレオ画像演算部250は、左カメラ111、右カメラ112及びレーザ信号処理部240に対して、撮像タイミング及びレーザ光の投受光タイミングを制御するための同期制御信号を出力する。
また、ステレオ画像演算部250は、左カメラ111より送信された比較画像、又は、右カメラ112より送信された基準画像、及び、レーザ信号処理部240より送信された生信号を、学習の結果、得られた距離情報出力部(後述する)に入力して距離画像を生成する。なお、比較画像及び基準画像の両方を入力してもよい。ステレオ画像演算部250は、生成した距離画像をメモリ260に格納する。
メモリ260は、ステレオ画像演算部250にて生成された距離画像を格納する。また、メモリ260は、ステレオ画像演算部250及びMPU270が各種処理を実行する際のワークエリアを提供する。
MPU270は、制御基板収納部202に収納された各部を制御すると共に、メモリ260に格納された距離画像を解析する解析処理を行う。
<ステレオカメラによる測距原理>
本実施例では、ステレオカメラによる測距はかならずしも必要ないが、図5を用いて、ステレオカメラによる測距原理について説明する。図5は、三角測量により比較画像と基準画像から物体に対する視差値を導き出し、視差値によって測距装置100から物体までの距離を測定する原理について説明する図である。
まず、右カメラ112,左カメラ111が平行等位に設置されているものとする。3次元空間内の物体Q上のS点は、右カメラ112,左カメラ111の同一水平線上の位置に写像される。すなわち、各画像中のS点は、比較画像Ia中の点Sa(x,y)及び基準画像Ib中の点Sb(x',y)において撮像される。このとき、視差値d(ここでは整数視差値)は、Sa(x,y)とSb(x',y)とを用いて、式(1)のように表される。
d=x'−x …式(1)
図5に示すように、比較画像Ia中の点Sa(x,y)と右カメラ112から撮像面上におろした垂線の交点との距離をΔaにし、基準画像Ib中の点Sb(x',y)と左カメラ111から撮像面上におろした垂線の交点との距離をΔbにすると、視差値d=Δa+Δbとなる。
また、視差値dを用いることで、右カメラ112、左カメラ111と物体Qとの間の距離Zを導き出すことができる。具体的には、距離Zは、カメラレンズ211の焦点位置とカメラレンズ221の焦点位置とを含む面から物体Q上の特定点Sまでの距離である。カメラレンズ211及びカメラレンズ221の焦点距離F、カメラレンズ211及びカメラレンズ221の間の長さである基線長B、及び視差値dを用いて、式(2)により、距離Zを算出することができる。
Z=(B×F)/d …式(2)
この式(2)により、視差値dが大きいほど距離Zは小さく、視差値dが小さいほど距離Zは大きくなる。式(2)から明らかなように、カメラが小さくなるほど(基線長Bが小さくなるほど)、1整数視差に対応する距離が大きくなる(分解能が悪くなる)。
<レーザ信号処理部による時間計測>
次に、図6を用いてレーザ信号処理部240による時間計測の原理を説明する。図6は照射されたレーザ光が物体で反射して受光される時系列な強度を模式的に示す図である。図6に示すように反射信号は時間に対し強度が対応付けられた一次元のデータ(一次元信号)である。横軸は時間、縦軸は強度であるが、時間は物体までの距離に比例するため、時間と距離は同等の情報を有する。反射信号を検出するまでの時間によって距離が算出される。
物体までの距離を示す反射信号はピーク部81、82であり、それ以外はノイズである。従来は、最大ピーク位置を検出する、又は、閾値以上の位置を複数検出する(マルチ検出)などの方法でピーク付近の反射信号のみを抽出していた。これに対し、本実施例では図6に示す時系列な強度(=生信号)そのものを使用する。これによりノイズも含まれるが正しい微弱信号も測距に使用できる。
<機能について>
次に、図7を用いて、ステレオ画像演算部250が有する機能について説明する。図7は、ステレオ画像演算部250が有する機能をブロックに分けて説明する機能ブロック図の一例である。ステレオ画像演算部250は画像データ取得部21、信号変換部22、反射信号取得部23、及び距離情報出力部24を有している。ステレオ画像演算部250が有する各機能は、ステレオ画像演算部250が有するCPUが、SSDからRAMに展開されたプログラムを実行することで実現される機能又は手段である。
画像データ取得部21は、右カメラ112又は左カメラ111から基準画像又は比較画像を取得する。本実施例では視差演算を行わないので、右カメラ112又は左カメラ111から取得した基準画像又は比較画像を、単に画像データという。
反射信号取得部23は、レーザ信号処理部240が出力するレーザ光の反射信号の生信号を取得する。生信号はすでにデジタル信号になっていてもよいし、反射信号取得部23がデジタル信号に変換してもよい。
信号変換部22はレーザ光の反射信号を二次元の強度データ12に変換する。これにより、画像データと反射信号の次元数を合わせることができる。変換の詳細は後述する。
距離情報出力部24は、画像データと強度データを入力として距離画像を出力する。この距離情報出力部24は機械学習により構築された、例えば回帰モデルである。距離画像とは、画素ごとに距離情報を有する画像データであるが、本実施例では映像としての画素値は含まない(含んでいても構わない)。したがって、距離画像は2次元配列に距離情報が配置されたデータである。
<学習時の構成例>
続いて、図8、図9を用いて、学習時に使用される情報処理装置30について説明する。図8は情報処理装置30の概略斜視図である。情報処理装置30はHDD(Hard Disk Drive)等に学習データを記憶しており、学習データを学習して距離情報出力部24を構築する。
学習に使用する情報処理装置30は例えばPC(Personal Computer)やワークステーションなどであるが、情報処理装置30は、ある程度の処理能力を備えたコンピュータであればよい。好ましくはGPU(Graphics Processing Unit)を有するとよい。ただし、タブレット装置、スマートフォンなどでもよい。
また、情報処理装置30に、スタンドアローン形式でなくクライアント・サーバ形式が採用されていてもよい。この場合、クライアントが学習データをサーバに送信し、サーバが学習データを学習して距離情報出力部24を構築する。
図9は、情報処理装置30のハードウェア構成例を示す図である。図9に示されているように、情報処理装置30は、コンピュータによって構築されており、CPU501、ROM502、RAM503、HD504、HDD(Hard Disk Drive)コントローラ505、ディスプレイ506、外部機器接続I/F(Interface)508、ネットワークI/F509、バスライン510、キーボード511、ポインティングデバイス512、DVD−RW(Digital Versatile Disk Rewritable)ドライブ514、メディアI/F516を備えている。
これらのうち、CPU501は、情報処理装置30全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F508は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、通信ネットワークを利用してデータ通信をするためのインターフェースである。バスライン510は、図9に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
また、キーボード511は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD−RWドライブ514は、着脱可能な記録媒体の一例としてのDVD−RW513に対する各種データの読み出し又は書き込みを制御する。なお、DVD−RWに限らず、DVD−R等であってもよい。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出し又は書き込み(記憶)を制御する。
図10は、情報処理装置30が有する機能をブロックに分けて説明する機能ブロック図の一例である。情報処理装置30は、記憶部49、学習部42、及び距離情報出力部24を有している。このうち距離情報出力部24は学習により構築されるため点線で示した。情報処理装置30が有する学習部42、及び距離情報出力部24は、情報処理装置30が有するCPU501が、HD504からRAM503に展開されたプログラムを実行することで実現される機能又は手段である。また、記憶部49は、情報処理装置30が有するHD504又はRAM503の少なくとも一方に形成されている。
記憶部41には、学習データ記憶部43が構築されている。学習データ記憶部43は、学習データを記憶している。本実施形態の学習データは、入力データとなる1つの画像データ及びx個の反射信号(生信号)、並びに、教師データとなる1つの正解距離画像、を1セットとする。この1セットの学習データが想定される広範なシーンを想定して複数個、用意されている。反射信号がx個とは、後述するようにレーザレーダ測距部120がx方向(x軸に沿った方向。y、zについても同じ。)をカバーするために走査した回数(x方向にx画素あって1ピクセルずつ走査するとx個)である。
学習部42は、深層学習を初めとする各種の機械学習のアプローチで、入力データと教師データの対応を学習する。学習部42は、ステレオ画像演算部250と同様に、一次元の反射信号14を二次元の強度データ12に変換するため、信号変換部22を有している。
教師データが正解距離画像なので、入力データに対し距離画像を推定する(出力する)距離情報出力部24が学習の結果、得られる。上記のように、深層学習を採用すると、深層化することで距離情報出力部24が複雑な特徴量を抽出できるようになる。学習方法の詳細は後述する。
<信号変換部による反射信号の強度データへの変換>
異なる形式の信号を単純に入力して学習しただけでは、下記の不都合が生じるおそれがある。
1. 入力データ同士の意味合いが異なることで、学習の収束(学習が完了するタイミング)が遅延する可能性がある
2. 1に加えて、学習が好適に進行しない(入力と出力の対応関係を学習できない)可能性がある
3. 深層学習は人間の認識を越える表現を獲得するため、内部がブラックボックスになるが、その「説明性(深層学習が出力した結果の判断根拠の説明)」をより複雑化し、より理解しづらいものとする。
そこで、本実施例では、以下に説明するように、学習の前段階で、所定の処理によりデータ整形を実施する。ここでいうデータの整形は、形式の異なる信号の次元数を一致させることである。
図11を用いて、信号変換部22による反射信号の強度データへの変換方法を説明する。図11は、画像データと反射信号の関係を説明する図である。信号変換部22は、一次元の反射信号14を二次元の形式に変換して二次元の強度データ12を生成する。これにより二次元の画像データ13のx軸と強度データのx軸が対応付く。対応付くとは2つの信号の同じ軸同士が同じ方向の距離を表すことをいう。以下、詳細に説明する。
図11(a)はレーザレーダ測距部120のスポット光が照射される実空間上の二次元領域を示す。レーザレーダ測距部120の照射方向(x方向とy方向)は制御値であるため、二次元領域は計算で求められる。図11(a)ではスポット光86をy方向に縦長の形状とした。スポット光86は横長でもよいし、点形状のスポット光を縦又は横に走査してもよい。
二次元領域には人84と車85が存在している。人84と車85が存在するあるx座標においてスポット光86で得られる反射信号は、図11(b)に示すようになる。すなわち、横軸を距離(時間から算出された)、縦軸を強度とする散布図となり、一次元のデータとして表現できる。図11(a)ではスポット光86が複数の物体で反射するため、2つのピーク部81,82が存在する。
これに対し、左カメラ111又は右カメラ112が撮像する画像データは二次元データであるため、レーザレーダ測距部120の一次元の反射信号14とは対応付いていない(信号の形式が異なる)。
そこで、図11(c)に示すように、レーザレーダ測距部120が、縦長のスポット光86の上方向を画像データの上端に、下方向を画像データの下端に対応させて、スポット光86を照射する。つまり、上下の照射範囲を画像データの高さと同じにする。レーザレーダ測距部120はスポット光86を好ましくは1[pix]ずつ横方向に走査していく。つまり、実空間上の二次元領域が、縦長のスポット光86でx方向に走査される。スポット光86は重ねながら走査してよい。
そして、図11(d)に示すように、取得した反射信号の距離を画像データの縦軸(y軸)に対応させて、複数の反射信号をx座標に対応付けて配置する(複数の反射信号をx方向に敷き詰める)。また、各スポット光で得られた強度がx座標とz座標に対応付けて保持される。z座標は下ほど距離が小さく、上ほど距離が大きい。すなわち、反射信号が有する物体までの距離を二次元のうち高さ方向に、物体を水平に走査した場合の走査位置を二次元のうち横方向にそれぞれ対応させ、高さ方向(y方向)と横方向(x方向)に対応づけて反射信号の強度を配置する。
図11(d)の距離範囲83は図11(c)のスポット光86で測定される距離を示している。距離範囲83は、任意の縦幅(y)のスポット内に照射したレーザ光が物体で反射して返ってくることで得られた信号を意味しており、距離範囲83は、所定の距離までの信号(波)データである。例えば、スポット光86が画像単位系で[横×縦=1×10]の範囲に照射されたとして、その範囲に最長120[m]までの物体が存在すれば、変換後のzの最大値(図の場合、上端)は120[m]になり、その距離に至るまでの信号データ(ノイズ混入の可能性あり)が取得される。図11(d)に示すように二次元マップに変換する場合、最長の距離を所定の分解能(例えば、1[m]等)で離散化する。この場合、図11(d)の縦幅zは120となる。
したがって、図11(d)の横軸はx軸に相当し、縦軸は距離であり実空間ではz軸に相当する。図11(d)は、あるxとzに対し反射信号の強度が対応付けられた二次元の強度データ12となる。このように、画像データのx軸と二次元に変換された反射信号の横方向が水平方向の長さ情報を表すように反射信号が変換される。
なお、これは俯瞰図(xz平面のどこに物体があるか)に相当する。図11(d)では人84と車85が存在する領域が示されているが、車85の方が人84よりも遠方でかつx方向に大きいという結果が得られている。図11(d)では明記されていないが、車と人以外にも反射信号の強度がxとzに対応付けて記録されている。
なお、強度データではy方向の情報が失われている。つまり、y座標は消えるが、一次元の反射信号14を二次元データとして表現できたことになる。なお、縦長のスポット光86を横方向に走査させながら俯瞰図を作成したが、横長のスポット光を縦方向に走査してもよい。その場合、画像データと強度データとでy軸同士が対応するようになる。この場合、画像データのy軸と二次元に変換された反射信号の高さ方向が高さ方向の長さ情報を表すように反射信号が変換される。
したがって、信号変換部22は、画像データが有する複数次元(ここでは二次元)の方向の長さ情報と、形式が合わせられた反射信号が有する複数次元(ここでは二次元)の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換する。
また、最終結果として軸が揃っていれば任意の処理、パラメータを適用可能である。例えば、測距装置100又は情報処理装置30は後述する畳み込み演算を画像データに行ってよい。また、例えば、画像データと強度データのサイズは一致している必要がないため、RGB画像の畳み込み演算時に、ストライドを2以上に設定してよい。また、畳み込み演算を複数適用することも可能である(サイズの異なるフィルタを使い、二回、畳み込みを行うなど)。同様に、強度データに関しても、畳込み演算を実施してから、学習してもよいし、距離画像の出力に使用してよい。
このように、本実施例の測距装置は、異なる形式の信号を学習部42が学習しやすくなるように、まず次元数を合わせることで、二次元の画像データ13と一次元の反射信号14を二次元表現に統一する。統一する際、異なる形式の信号の同じ軸が同じ方向の距離を表すように、画像データ13と一次元の反射信号14の軸を対応付ける。これにより、学習の収束速度短縮、及び、学習確度の向上(入力に対する出力のより正確な対応付)が可能となる。
<全体構成例>
図12は本実施例の測距装置100の全体構成図を示す。図11で説明したように、左カメラ111又は右カメラ112はx×yの二次元の画像データ13を出力し、レーザレーダ測距部120が出力した一次元の反射信号14は、x×zの二次元の強度データ12となる。二次元の画像データ13と強度データ12は、例えば、ニューラルネットワーク11(本実施例では距離情報出力部24がニューラルネットワーク11に基づく演算を行う)に入力され、高精度高密度距離画像を出力する。
すなわち、距離情報出力部24は、横方向がx軸で高さ方向がy軸の二次元の画像データと、横方向がx軸(又はz軸)で高さ方向がz軸(又はy軸)の二次元に変換された反射信号の強度を、高精度高密度距離画像に変換する。
なお、本実施例では、2つの異なる信号の形式の融合について説明しているが、二次元の各軸の少なくとも1つの次元の意味(ここではどの方向の距離を示すか)を合わせることができれば異なる信号の数に制限はない。例えば、左カメラ111又は右カメラ112が撮像した画像データ、レーザレーダ測距部120による反射信号、及び、音声データを融合することも可能である。
<学習の一例>
機械学習には、教師あり学習、教師なし学習及び強化学習の3つの手法がある。本実施例では教師あり学習が使用される。また、教師あり学習のうち主に深層学習について説明する。なお、機械学習の手法には、パーセプトロン、ディープラーニング、サポートベクターマシン、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレストなどがあり、本実施形態で説明する手法には限られない。
深層学習では、まず、パラメータをランダムに初期化したニューラルネットワーク11を用意しておき、ニューラルネットワーク11の入力層に対して入力データを入力する。パラメータとは後述するノード間の結合の重みである。入力層に入力された入力データは出力層に向けて伝達される。以後、この方向をforward又は順伝播と呼ぶ。次に、学習部42は、ニューラルネットワーク11の出力層が出力した出力データと正解として用意した画像データ(正解画像データ)、二クラスのどちらかを示す正解データ(1又は0)、又は、多クラス分類の正解データ(正解クラスのみが1のデータ)、との差異(Loss)を学習する。多クラス分類について補足すると、正解データとは、例えば猫の画像に対して、猫というラベルが学習データに付されていることをいう。そして、学習部42は、最適化手法を用いて、入力方向とは逆方向に差異を伝播させる。以後、この方向をbackward又は逆伝播と呼ぶ。差異はパラメータの値に応じたものとなるため、差異の伝達量に応じてパラメータを更新する。
学習初期状態ではパラメータの学習が進んでいないため、ニューラルネットワーク11はforward結果として正しい値を出力できない。例えば、10個の多クラスに分類するニューラルネットワーク11を考えた場合(ラベル1:猫、ラベル2:犬、ラベル3:鳥、…、ラベル10:魚)、ラベル1を付けておいた猫画像を入力データとしても出力結果としては、ラベル1以外のクラスに高い数値を出力する可能性がある。
出力データの最大値が1.0だとした場合に、[1.0、0.0、0.0、0.0、0.0、0.0、0.0、0.0、0.0、0.0]となる場合が最良ケース(正解)だが、学習できていないニューラルネットワーク11の場合、他のクラスに対する数値が高くなる可能性がある。そこで、パラメータの学習では、各クラスに対する出力データと上記の正解データ(1又は0の値)の差異を所定の関数式(損失関数と呼ぶ)で評価し、この差異をLossとする。そして、その結果を、ニューラルネットワーク11の出力層から入力層に流してパラメータを更新する。この時の流し方を決めるのが最適化関数であり、最も効果が大きい方向に対してbackwardする。これにより、次に同じ画像が入力された時に、より正確な出力結果を出力できるようにする。
上記手順を様々な画像を使って繰り返し行うことで、学習データに対して、徐々に正しい正解ラベルを出力できるニューラルネットワーク11へ鍛えられていく。
なお、深層学習(Deep Neural Network)のうち、畳み込み(Convolutional)演算を使用する機械学習をCNN(Convolutional Neural Network)という。本実施形態では主にCNNを使用するが、CNNの説明に当たって本実施例では深層学習(DNN:Deep Neural Network)で特徴を学習する例を説明する。図13は、入力層31から出力層33までL層が全結合されたニューラルネットワーク11である。階層が深いニューラルネットワークをDNNという。入力層31と出力層33の間の層を中間層32という。階層数やノード35の数等はあくまで一例である。
入力層31には、これまで説明したように、画像データと強度データが入力される。したがって、入力層31のノードの数は「x×y+x×z」である。一方、出力層33のノード数は、正解距離画像の画素数と等しい。仮に正解距離画像の画素数をM×Nとすると、出力層33のノードの数は「M×N」である。
ニューラルネットワーク11では、第l層(l(エル):2〜L)の1つのノード35に第l−1層の全てのノード35が接続され、第l−1層のノード35の出力zと結合の重みwの積が第l層のノードに入力される。数1はノード35の出力信号の算出方法を示す。
Figure 2021012133
数1において、wji (l,l−1)は第l層j番目と第l−1層i番目のノード間の重みであり、uj (l)は第l層j番目のノードの値であり、zi (l−1)は第l−1層i番目のノードの出力である。bはバイアスである。Iは第l−1層のノードの数である。fはノードの活性化関数を意味する。活性化関数としては、ReLU、tanh、シグモイドなどが知られている。なお、入力層31のノードは特徴ベクトルを第2層に伝えるだけでよく活性化されない。
数1に示すように、第l層のノード35では活性化関数で入力を0〜1の間の値に変換して第l+1層のノード35に出力する。この処理を入力層31から出力層33まで繰り返す。
本実施例では、出力層33のノードの出力を正解距離画像の画素値に近づけるので、定量データを予測する回帰問題を扱う。したがって、出力層33のノードの活性化関数は恒等写像(何も変換しない)でよい。出力層の各ノードは正解距離画像の対応する画素の画素値(ここでは距離情報)に近い値を出力するように学習される。
図14はニューラルネットワーク11の学習時の処理を説明するフローチャート図の一例である。
ニューラルネットワーク11の学習時には、画像データと強度データ、及び、この2つのデータが得られた時の正解距離画像(教師データ)が用意されている。なお、図13では正解距離画像の画素値を0〜255としているが、一般に0〜1に正規化されている。
出力層33の各ノードの出力と教師データの差異を評価する損失関数が知られており、回帰モデルの場合の損失関数Eは数2で示すように二乗誤差が使用される場合が多い。
Figure 2021012133

ニューラルネットワークは誤差逆伝播法と呼ばれる学習方法で学習される。学習の手順は以下のようになる。
S1.学習部42は出力層のδj (L)を求める(Lは出力層を表す)。δj (L)は損失関数Eをuj (L)で微分したものである。通常、δj (L)=zj−dj でよい。なお、djはj番目のノードの正解の画素値(本実施例では距離)である。
S2.学習部42は中間層l(=L−1、L−2、…2)のδj (l)を数3にしたがって求める。
Figure 2021012133

S3.学習部42は、数4を使って、各層の重みwji (l,l−1)による損失関数Eの微分を求める。
Figure 2021012133

S4.学習部42は、数5を使って、損失関数Eの微分でwji (l,l−1)を更新する。ηは1回の学習の学習量を示す学習計数である。
Figure 2021012133

このように出力層33の誤差(zj−dj)を出力層33から入力層31まで逆方向に伝播して重みwji (l,l−1)を更新する。この更新が学習に相当する。
<動作手順>
図15は、情報処理装置30が距離情報出力部24を生成する手順を示すフローチャート図の一例である。
学習部42が学習データ記憶部43から画像データを取得する(S11)。学習部42が学習データ記憶部43から反射信号を取得する(S12)。
学習部42の信号変換部22はx個の反射信号を二次元の強度データ12に変換する(S13)。すなわち、1次元の反射信号をz方向に配置することを各x座標で行う。
学習部42の距離情報出力部24がニューラルネットワーク11に画像データと強度データを入力して距離画像を出力する(S14)。
学習部42がニューラルネットワーク11の出力と正解距離画像との差異をニューラルネットワーク11に逆伝播して距離情報出力部24を生成する(S15)。
図15のフローチャート図は一度の更新のみについて記載されているが、実際には学習データに対して繰り返し実施される。
図16は、本実施例の測距装置100が距離画像を生成する手順を示すフローチャート図の一例である。図16の処理は測距装置100が距離画像を生成する際に繰り返し実行される。
画像データ取得部21が左カメラ111又は右カメラ112から画像データを取得する(S21)。反射信号取得部23がレーザレーダ測距部120から反射信号を取得する(S22)。ステップS21とS22は並行に実行されるとよいが、画像データ取得部21が1つの画像データを取得する間に、反射信号取得部23は、x方向に縦長のスポット光86がx回走査されたx個の反射信号を取得する。
信号変換部22はx個の反射信号を二次元の強度データ12に変換する(S23)。すなわち、1次元の反射信号をz方向に配置することを各x座標で行う。
機械学習で得られた距離情報出力部24が画像データと強度データから距離画像を推定する(S24)。
<まとめ>
以上説明したように、本実施例の測距装置は、一次元の反射信号14を二次元の強度データ12に変換する。これにより、異なる形式の信号の次元数を一致させ、少なくとも1つの次元の各データがどの方向の距離を示すかを一致させる。二次元の画像データ13と一次元の反射信号14を二次元表現に統一することができ、学習の収束速度短縮、及び、学習確度の向上(入力に対する出力のより正確な対応付)が可能となる。
次元数が一致し、更に、少なくとも1つの次元の各データがどの方向の距離を示すかを一致させた上で、例えば深層学習などの機械学習の手法を使って、入力データと出力データの対応を学習するが、深層化することで人間が考え出した事前設定論理を超える特徴量を抽出できる。つまり、異なる形式の信号が入力されても正解距離画像に近い出力データを得ることができる。したがって、左カメラ111又は右カメラ112の信号とレーザレーダ測距部120の信号の形式が異なっていても、異なる形式の信号をどのように融合するかという論理を人間が考え出さずに、広範なシーンに対しロバスト性が高い測距が可能になる。
実施例2では、画像データから特徴を抽出した特徴画像を生成して、強度データを重ね合わせて、画像データと強度データのx、y軸を対応付ける測距装置について説明する。x、y軸の二軸分の対応が担保されるため、より学習の収束速度短縮、及び、学習確度の向上に寄与する。
<畳み込み演算について>
本実施例では畳み込み演算を行うためまず、畳み込み演算について補足する。ただし、実施例1においても畳み込み演算を適用できる。
図17はCNNの構成例を示す。複数の学習データに、畳み込み層1でフィルタを使った畳み込みが行われ、畳み込み層2で畳み込み層1の結果にフィルタを使った畳み込みが行われている。同様の計算が出力層に向けて行われ、出力層33の手前には全結合層87が設けられている。このように、CNNはフィルタによる畳込み演算を行うことで例えばエッジ抽出フィルタをかけるような特徴抽出が可能になる。
出力層33はここでは画像データの画素を出力する。なお、図17は、物体認識用のネットワーク例であり、本実施形態の場合、画像を入力として、画像を出力するネットワーク構造となる。従って、入力数=任意の画素数、出力数=任意の画素数のような構成となり、本構成に限定されない。
全結合層87は図13に示したニューラルネットワークと同じ構造である。なお、CNNでは畳み込み層と畳み込み層の間にプーリング層が含まれる場合がある。プーリング層とは特徴画像のブロックごとに最大値や平均値等を抽出して新たな画像を生成する層である。
図18を用いて、畳み込み演算について補足する。図18は、フィルタと演算結果の関係を説明する図である。図18(a)に示すように、畳み込み層1では、フィルタ88と画像データ13の所定領域間で畳み込み演算が実行される。畳み込み演算とは、画像データ13とフィルタ88の対応する画素間の積を計算し、それをフィルタサイズ分加算する計算である(例えば、3×3のフィルタを使って畳み込む場合、9つの積の加算値となる)。したがって、一つのフィルタで畳み込み演算した結果は、1つの数値89となる。図18(a)ではフィルタを底面とするピラミッドの頂点がその数値89であり、図18(b)では右図の1点の画素の画素値となる。
これを画像左上から順に所定量だけフィルタをずらしていき、画像データ13の全面に対して実行する。その結果、出力は二次元の特徴画像90となり、これをfeature mapと呼ぶ。なお、フィルタをずらす量をストライドと呼び、ストライドの数を大きくすることで間引きと同じ効果を有するため、特徴画像のサイズはより小さくなる。
以上より、特徴画像90はフィルタ数分生成されるため、畳み込み演算して得られる特徴画像90の数は、フィルタ数と同じになる。フィルタ88がC枚あれば、C個の特徴画像90が得られる。図18(a)では、特徴画像90がフィルタ数であるC枚分重ねたブロック状となっている。
図19は畳み込み演算に活性化関数を適用した畳み込み層を説明する図である。まず、カラー画像に対応するためにチャネル数Kの画像データが入力されるものとする。RGBの場合、K=3である。この畳み込み層が第l層であるとすると、入力される画像データ13の画素はzijk (l−1)と表すことができる。
フィルタの種類(数)を3個とした場合、チャネル数Kと同じ数のフィルタ88がそれぞれc個用意されている。c=0〜2でそれぞれフィルタによる演算が行われ、uijcを算出する。演算は下式の通りであり、チャネル内の画像データ13とフィルタ88の畳み込みを行った後、画素ごとに全チャネルにわたって加算する。
Figure 2021012133

したがって、チャネル数Kに関わらず、あるフィルタについて出力されるのは1チャネルとなる。uijcが得られたので、活性化関数f()で活性化してzijcを得る。この値が畳み込み層の出力であり、特徴画像90(feature map)となる。
畳み込み層の出力は、入力のサイズがW×W×Kの場合に、W×W×cとなる(ストライド1の場合)。これから、畳み込み層は、W×W×K個のノードをW×W×c個のノードに接続する単一層のニューラルネットワークと見なすことができる。ノードの重みはhpqkcである。ただし、同一チャネルのノードで重みは共通になる。このように、畳み込み層の重みはフィルタそのものなので、誤差逆伝播によりファイルを最適化することができる。
<機能について>
図20は、測距装置100又は情報処理装置30が有する機能をブロックに分けて説明する機能ブロック図の一例である。まず、図20(a)は、ステレオ画像演算部250が有する機能をブロックに分けて説明する機能ブロック図の一例である。図20(a)の説明では主に図6との相違を説明する。本実施例のステレオ画像演算部250はフィルタ処理部25と積層部26を新たに有している。フィルタ処理部25は画像データに畳み込み演算を施し、特徴画像を生成すると共に特徴画像ブロックを生成する。積層部26は信号変換部22が変換した二次元の強度データ12をコピーして積層することで、強度データブロックを生成する。これらの詳細は後述する。
図20(b)は情報処理装置30が有する機能をブロックに分けて説明する機能ブロック図の一例である。図20(b)の説明では主に図10との相違を説明する。学習部42がフィルタ処理部25と積層部26を有している。学習部42も学習時に測距装置100と同じ処理を行うためこれらの機能は図20(a)と同様でよい。
<画像データ及び強度データのブロック化>
実施例1では、一次元の反射信号14を二次元の強度データ12に変換し、画像データと次元数を統一し、少なくとも1つの次元の距離が同じ方向の距離となるように強度データ12と画像データとを対応付けた。しかし、縦方向に関しては、画像データがy座標、強度データがz座標となり別の次元となっている。そこで、実施例2では、更に、強度データと画像データの縦方向のデータが何を表すかを対応させる。
x、yの二軸分を揃える場合、二次元データのままでは揃えることができないため、本実施例では、次元拡張を行う。具体的には、x×yの画像データ(RGB各1枚と仮定するが形式、枚数は問わない)に対して、フィルタ処理部25がc枚のフィルタ88で畳み込み演算する。なお、フィルタ88は、学習によって獲得してもよいし、事前に定義しておいてもよい。
図21は、次元拡張を説明する図である。フィルタ処理部25がx×yの画像データ13をc枚のフィルタ88で畳み込みすることで、c枚の特徴画像90が得られるので、図21(a)に示すように、x×y×cの特徴画像ブロック91に変換する。
次に、強度データ12に関しては、図21(b)に示すように、積層部26がx×zの強度データ12をy個分、コピーして(複写して)縦方向(y方向)に積み上げ、強度データブロック94を生成する。したがって、強度データブロック94のサイズは、x×y×zとなる。
なお、画像データ13の高さyに対し、スポット光86の高さの方がより小さい場合、スポット光86のyよりも下と上の領域は未知領域(LiDARの照射光が当たっていない)であるため、強度データブロック94を生成する際、強度データ12は単にコピーするのではなく、スポット光86の高さ以下及び高さ以上のy値の強度データ12では全ての画素をゼロとしてもよい。こうすることで、単にコピーするよりも正解距離画像と近い強度データブロック94を生成できる。
図21(a)と図21(b)を比較すると分かるように、特徴画像ブロック91と強度データブロック94のx、yの二次元分の距離が同じ方向の距離を表すように対応付けることができた。なお、強度データ12を横長のスポット光の縦方向の走査によって生成した場合、強度データ12はy×zとなっているため、積み上げ方向は横方向(x方向)となる。また、zとcの大きさは一致する必要はない。
このように、積層部は、横方向がx軸で高さ方向がz軸の二次元の強度の横方向を画像データのx軸、高さ方向を画像データのy軸と対応させ、c個の特徴画像が重ねて配置された奥行き方向と、二次元の強度のz軸とが対応するように二次元の強度を積層する。
最終結果として二次元分の情報が対応付けられていれば任意の処理、パラメータを適用可能である。例えば、両ブロックのサイズ(xとx、yとy、cとz)は一致している必要がないため、RGBの画像データ13の畳み込み演算時に、ストライドを2以上に設定してもよい。また、畳み込み演算を複数適用することも可能である(サイズの異なるフィルタを使い、畳み込みを二回適用するなど)。同様に、強度データ12に関しても、畳込み演算を実施した上で、y方向の積み上げを行っても良い。
<機械学習に適用した場合の構成例>
図22は特徴画像ブロック91と強度データブロック94から距離画像を出力する測距装置100又は情報処理装置30の全体構成図である。図22(a)は畳み込み層92のフィルタも学習により最適化する場合の構成例である。左カメラ111又は右カメラ112が撮像する画像データ13は畳み込み層92(フィルタ処理部25)により特徴画像ブロック91に変換される。畳み込み層92は上記のように単一層のニューラルネットワークとして扱え、x×yの画像データ13の入力に対し、x×y×cの画像データ(特徴画像ブロック91)を出力する。x×y×cの特徴画像ブロック91がニューラルネットワーク11の入力層に入力される。
一方、レーザレーダ測距部120が測定する反射信号はx×yの強度データ12に変換され、積層によりx×y×zの強度データブロック94が生成される。x×y×zの強度データがニューラルネットワーク11の入力層に入力される。
学習時には、損失関数で求めた正解距離画像とニューラルネットワーク11の出力層の差異がニューラルネットワーク11の入力層まで逆伝播される。また、入力層まで伝播された差異が畳み込み層92に伝達され、畳み込み層92のフィルタが最適化される。
しかし、畳み込み層92まで誤差逆伝播したとしても、奥行方向(c方向)が距離ごとに並ぶ保証はない。ただし、奥行方向(c方向)が距離ごと並ばなくても、距離の推定精度が向上する可能性はある。この点については実施例3で説明する。
図22(b)は畳み込み層92のフィルタが事前に用意されている場合の構成例である。左カメラ111又は右カメラ112が撮像する画像データ13は予め用意した畳み込み層92のフィルタにより特徴画像ブロック91に変換される。x×yの画像データの入力に対し、x×y×cの画像データ(特徴画像ブロック91)を出力する。x×y×cの特徴画像ブロック91がニューラルネットワーク11の入力層に入力される。レーザレーダ測距部120側の信号の流れは図22(a)と同様である。
学習時には、損失関数で求めた正解距離画像とニューラルネットワーク11の出力層の差異がニューラルネットワーク11の入力層まで逆伝播される。
<動作手順>
図23は、情報処理装置30が距離情報出力部24を生成する手順を示すフローチャート図の一例である。
学習部42が学習データ記憶部43から画像データを取得する(S31)。学習部42が学習データ記憶部43から反射信号を取得する(S32)。
学習部42の信号変換部22はx個の反射信号を二次元の強度データ12に変換する(S33)。すなわち、1次元の反射信号をz方向に配置することを各x座標で行う。
学習部42の積層部26が強度データをy方向に積層して強度データブロック94を生成する(S34)。
学習部42のフィルタ処理部25が画像データを畳み込んで特徴画像ブロック91を生成する(S35)。
学習部42の距離情報出力部24がニューラルネットワークに特徴画像ブロック91と強度データブロック94を入力して距離画像を出力する(S36)。
学習部42がニューラルネットワーク11の出力と正解距離画像との差異をニューラルネットワーク11に逆伝播して距離情報出力部24を生成する(S37)。図22(a)の構成では畳み込み層92のフィルタ係数も学習する。図23のフローチャート図は一度の更新のみについて記載されているが、実際には学習データに対して繰り返し実施される。
図24は、本実施例の測距装置が距離画像を生成する手順を示すフローチャート図の一例である。図24の処理は測距装置が距離画像を生成する際に繰り返し実行される。
画像データ取得部21が左カメラ111又は右カメラ112から画像データを取得する(S41)。反射信号取得部23がレーザレーダ測距部120から反射信号を取得する(S42)。ステップS41とS42は並行に実行されるとよいが、画像データ取得部21が1つの画像データを取得する間に、反射信号取得部23は、x方向に縦長のスポット光がx回走査されたx個の反射信号を取得する。
信号変換部22はx個の反射信号を二次元の強度データ12に変換する(S43)。すなわち、1次元の反射信号をz方向に配置することを各x座標で行う。
積層部26が強度データを積層して強度データブロック94を生成する(S44)。フィルタ処理部25が画像データを畳み込んで特徴画像ブロック91を生成する(S45)。フィルタ処理部25は機械学習で得られる場合がある。
機械学習で得られた距離情報出力部24が特徴画像ブロック91と強度データブロック94から距離画像を推定する(S46)。
<まとめ>
以上説明したように、画像データから特徴画像ブロック91を生成し、強度データから強度データブロック94を生成することで、画像データと強度データのx、y軸のそれぞれで同じ軸が同じ方向の距離を表すように対応付けることができる。y軸の二軸分の対応が担保されるため、請求項1の効果に加え、より学習の収束速度短縮、及び、学習確度の向上に寄与する。
なお、本実施例では、2つの異なる形式の信号の融合について説明したが、上記方法で2つのデータの次元数を合わせ2つの次元がどの方向の距離を示しているかを合わせることができれば信号の数に制限はない。例えば、左カメラ111又は右カメラ112が撮像する画像、レーザレーダ測距部120の反射信号、及び音声データなどを融合することも可能である。
実施例3では、特徴画像ブロック91のc方向と強度データブロック94のz方向を対応付けられるように損失関数を設計し、カメラ側の特徴画像ブロック91の奥行方向のフィルタ数cと強度データブロック94のz方向の距離が同じ奥行き方向の距離を表すように対応付ける。これにより、x、y、zの3つの次元を対応付けることができる。
x、y、zの3つの次元の対応が担保されるため、より学習の収束速度短縮、及び、学習確度の向上に寄与する。
<機能について>
図25は情報処理装置30が有する機能をブロックに分けて説明する機能ブロック図の一例である。測距装置100の機能は図20(a)に示した機能ブロック図を援用できるものとして説明する。すなわち、学習後の構成は同じであり、学習の仕組みが異なっている。
図25の説明では主に図20(b)との相違を説明する。学習部42が第二のフィルタ処理部44、距離画像抽出部45、及び、損失算出部46を有している。第二のフィルタ処理部44は、距離別のフィルタを有しており、特徴画像ブロック91にフィルタを適用し、距離ごとの特徴画像を抽出する。距離画像抽出部45は正解距離画像から距離ごとの正解距離画像を抽出する。損失算出部46は、特徴画像ブロック91のc方向と強度データブロック94のz方向を対応付けるための損失を算出する。
<損失関数の設計>
実施例2により、二次元データのままでは縦方向の次元がどの距離を表すか一致しなかった2つの異なる形式の信号を、畳込み演算とy方向への積層を利用することで、縦方向の次元がどの距離を表すか一致させた。一方、実施例2により三次元のブロックを生成したが、ブロックの奥行方向の情報が、特徴画像ブロック91では特徴画像の数であるcだが、強度データブロック94では距離であるzであり、情報の不整合が生じていた。そこで、実施例3では、2つのブロックの奥行方向が表す情報も奥行き方向の距離に一致させる。
機械学習のメカニズムで説明したように、ニューラルネットワーク11は出力結果と教師データとの差異が小さくなるようにパラメータを学習していく。この仕組を利用して、本実施例では、特徴画像ブロック91の各特徴画像90が近距離から遠距離に向かって配列するように(学習の結果、各特徴画像が近距離から遠距離に向かって並ぶ)損失関数を設計する。
図26は損失関数の設計方法を模式的に説明する図である。図26に示すように、特徴画像ブロック91に対して畳み込み層95(第二のフィルタ処理部44に対応)が畳み込みを行う。畳み込み層95は距離分のフィルタを有している。例えば、測距範囲を1〜100[m]とし、1[m]の分解能で測距する場合は100種類のフィルタを有する。このフィルタの初期値は任意でよく必要であれば適宜学習される。
畳み込み層95が畳込み演算を行うと、フィルタの数である距離分の特徴画像96の群が生成される。正解距離画像は事前に用意されているので、距離画像抽出部45が正解距離画像を特徴画像と同じ距離に分解して距離ごとの正解距離画像97を生成する。距離画像抽出部45は、例えば、
1[m]の距離値を持つ画素のみを残した距離ごとの正解距離画像97
2[m]の距離値を持つ画素のみを残した距離ごとの正解距離画像97

100[m]の距離値を持つ画素のみを残した距離ごとの正解距離画像97
をそれぞれ生成する。
なお、このような距離ごとの正解距離画像を生成するのは説明を分かりやすくするためであり、距離画像抽出部45が1[m]、2[m]…100[m]の距離を有する画素のみをそれぞれ抽出すればよい。
そして、損失算出部46は各特徴画像96と、この特徴画像96に対応する距離ごとの正解距離画像97との差異を計算する。この差異をLoss2(第二の差異の一例)とする。したがって、Loss2は、
1[m]に対応したフィルタで生成された特徴画像96と1[m]に距離分解された距離ごとの正解距離画像97の画素ごとの差の二乗和
2[m]に対応したフィルタで生成された特徴画像96と2[m]に距離分解された距離ごと正解距離画像97の画素ごとの差の二乗和

100[m]に対応したフィルタで生成された特徴画像と100[m]に距離分解された距離ごとの正解距離画像97の画素ごとの差の二乗和
を合計したものである。
なお、Loss2の計算は2つの画像の対応する位置同士の差異を算出できればよいため、この方法に限定されない。例えば、Loss関数として、L1ノルム、L2ノルムなどを使ってもよい。
一方、実施例2と同様にニューラルネットワーク11が出力する距離画像99と正解距離画像98との差異が求められる。この差異をLoss1(第一の差異の一例)とする。
そして、損失算出部46は、Loss1とLoss2を重み付け加算和などで合成して、ニューラルネットワーク全体の差異loss_allとして算出する。
Loss_all = αLoss1+βLoss2
αとβはLoss1とLoss2の重み付け係数である。固定値であっても、学習により獲得してもよい。
学習部42はこのLoss_allが最小になるように学習していく。したがって、Loss_allが小さくなる条件とは、距離情報出力部24(ニューラルネットワーク11)が推定した距離画像が正解に近づくと共に、特徴画像ブロック91の手前から奥行方向の各特徴画像が、近距離から遠距離に向かうように配列することである。したがって、各特徴画像が近距離から遠距離に向かうように配列するという条件は、特徴画像ブロック91の奥行方向(フィルタ数c)と強度データブロック94の奥行方向zが同じ奥行き方向の距離を表すことを意味する。
なお、第二のフィルタ処理部44のフィルタの数は、例えば、0〜20[m]、21〜40[m]、41〜60[m]、61〜80[m]、81〜100[m]と言った具合に、所定の範囲に分けてもよい(この場合、Loss2用に学習するフィルタ数は5種類となる。
また、第二のフィルタ処理部44は距離分のフィルタを用意すると説明したが、第二のフィルタ処理部44はなくてもよい。図26に示すように、特徴画像ブロック91の手前から奥行方向の各特徴画像が、近距離から遠距離に向かうように配列させるのは畳み込み層92である。したがって、本実施例では畳み込み層92のフィルタの学習が必須となる。畳み込み層95がある場合も畳み込み層95は特徴画像ブロック91の手前から奥行方向へ各特徴画像を取り出すフィルタであればよい。なお、本実施例では、距離画像抽出部45を用意したが、本モジュールはなくてもよい。その場合、Loss2算出時に、適した距離のみを抽出する条件文が代替利用可能である。その場合、畳み込み層95で距離ごとの画像に分解する必要も無いため、本モジュールも不要となる。
<機械学習に適用した場合の構成例>
図27は特徴画像ブロック91と強度データブロック94から距離画像を出力する情報処理装置30の全体構成図である。なお、図27では学習時の構成を示している。特徴画像ブロック91が生成されるまでの処理は図22(a)と同様でよい。特徴画像ブロック91はニューラルネットワーク11に入力されると共に、畳み込み層95にも入力される。
畳み込み層95は距離に対応したフィルタを有しており、各距離の特徴画像96を出力する。各距離の特徴画像96と距離ごとの正解距離画像97との差異(Loss2)が算出される。実施例1で説明したように、回帰モデルの損失関数を二乗誤差とした場合、δj (L)=zj−dj と計算されるので、これに則るとLoss2はδj (L)を各距離画像で合計したものとできる。δj (L)のjは画素を表すため、損失算出部46は各距離の特徴画像96と距離ごとの正解距離画像97との差異を画素ごとに合計する。
実施例2と同様に、特徴画像ブロック91と強度データブロック94が入力されたニューラルネットワーク11の出力と正解距離画像との差異(Loss1)が算出される。Loss1はδj (L)=zj−djでよい。
Loss_allはδj (L)で表されるLoss1、及び、Loss1のjに対応する画素の特徴画像96と正解距離画像97との差異を全ての距離で合計したLoss2の重み付き加算和である。
このようにして算出されたLoss_allが出力層33から入力層31及び畳み込み層92まで逆伝播される。実施例2では特徴画像ブロックと強度データブロックのx、yは揃うが奥行き方向cとzの軸の意味合いまでは揃っていなかったが、本実施例ではc個の特徴画像の奥行き方向(c方向)が、強度データブロック94のz軸が示す距離を表すようになる。
なお、畳み込み層95についてもLoss2を逆伝播させることでフィルタの係数を更新できる。
図28は、特徴画像ブロック91と強度データブロック94から距離画像を出力する測距装置100の全体構成図である。全体的な構成は図22(a)と同様になる。ニューラルネットワークの学習が完了すると、畳み込み層95は不要になるので、図27と比較するとLoss2に関する構成がなくなっている。
また、図22(a)では、特徴画像ブロック91がx×y×cの次元を有するのに対し、図28では学習により特徴画像ブロック91がx×y×zの次元を有している。このように、本実施例では、損失関数を設計することで、特徴画像ブロック91の奥行方向(c方向)と強度データブロック94の奥行方向(z方向)が同じ奥行方向の距離を示すように対応付けることができる。
<動作手順>
図29は、情報処理装置30が距離情報出力部24を生成する手順を示すフローチャート図の一例である。
学習部42が学習データ記憶部43から画像データを取得する(S51)。学習部42が学習データ記憶部43から反射信号を取得する(S52)。
学習部42の信号変換部はx個の反射信号を二次元の強度データ12に変換する(S53)。すなわち、1次元の反射信号をz方向に配置することを各x座標で行う。
学習部42の積層部26が強度データをy方向に積層して強度データブロック94を生成する(S54)。
学習部42のフィルタ処理部25が画像データを畳み込んで特徴画像ブロック91を生成する(S55)。
学習部42の第二のフィルタ処理部44が特徴画像ブロック91に距離ごとのフィルタを適用して、距離ごとの特徴画像96を生成する(S56)。学習部42の距離画像抽出部45が正解距離画像から距離ごとの正解距離画像97を抽出する。
学習部42の損失算出部46が、距離ごとの特徴画像96と距離ごとの正解距離画像97との差異(Loss2)を算出する(S57)。
学習部42の距離情報出力部24がニューラルネットワーク11に特徴画像ブロック91と強度データブロック94を入力して距離画像を出力する(S58)。
学習部42がニューラルネットワークの出力と正解距離画像との差異(Loss1)を算出する(S59)。
学習部42の損失算出部46が、Loss1とLoss2からLoss_allを算出する(S60)。
学習部42がLoss_allをニューラルネットワークに逆伝播して距離情報出力部24を生成する(S61)。図29のフローチャート図は一度の更新のみについて記載されているが、実際には学習データに対して繰り返し実施される。
図30は、本実施例の測距装置が距離画像を生成する手順を示すフローチャート図の一例である。図30の処理手順は、図24と同じようになる。
<まとめ>
本実施例によれば、特徴画像ブロック91のc方向と強度データブロックのz方向が同じ奥行方向の距離を表すように損失関数(Loss_all)を設計し、特徴画像ブロック91の奥行方向のフィルタ数cと強度データブロック94のz軸が同じ方向の距離を表すように対応付けることができる。これにより、特徴画像ブロック91と強度データブロック94のx、y、z軸をそれぞれ対応付けることができる。x、y、zの3つの次元で対応が担保されるため、より学習の収束速度短縮、及び、学習確度の向上に寄与する。
本実施例では、左カメラ111又は右カメラ112とレーザレーダ測距部120(LiDAR)以外の組み合わせで異なる形式の信号の融合例を説明する。
図31は、ステレオカメラ部110とレーザレーダ測距部120の組み合わせで測距する測距装置の構成例を示す。図31に示すように、カメラとしてステレオカメラ部110を使用することもできる。ただし、コスト的及びスペース的には単眼カメラの方が有利である。
図32は、左カメラ111又は右カメラ112とレーダー301の組み合わせで測距する測距装置の構成例を示す。レーダー301は、ミリ波等の送信波を送信アンテナ301aから送信し、受信アンテナ301bで受信した反射波と送信波と合成し、その波形解析により反射対象までの距離と方位を測定する。本実施形態では合成波の波形とカメラが撮像する画像という形式の異なる信号を融合できる。図32の構成により、レーダー301の測距原理に基づいて長距離かつロバストな測距が可能になる。
図33は、ステレオカメラ部110とレーダー301の組み合わせで測距する測距装置の構成例を示す。図33に示すように、カメラとしてステレオカメラ部110を使用することもできる。
図34は、左カメラ111又は右カメラ112とソナー302の組み合わせで測距する測距装置の構成例を示す。ソナー302は、超音波をトランスデューサから放出し、マイクロフォンで受信した反射波の波形解析により反射対象の距離を測定する。図34の構成により、低コストかつ小型な筐体で測距装置を実現できる。
図35は、ステレオカメラ部110とソナー302の組み合わせで測距する測距装置の構成例を示す。図35に示すように、カメラとしてステレオカメラ部110を使用することもできる。
本実施例では測距装置100が車両に搭載された場合を説明する。
<車両への搭載例>
図36は、測距装置100が搭載された車両140の構成例を示す。車両140はCAN(Controller Area Network)バスなどの車載ネットワークNWを介して通信するカーナビゲーションシステム1100、エンジンECU(Electronic Control Unit)1200、表示システム1000、ブレーキECU1300、ステアリングECU1400、及び測距装置100を有している。
カーナビゲーションシステム1100は、GPSに代表されるGNSS(Global Navigation Satellite System)を有し、車両140の現在地を検出して電子地図上に車両の位置を表示する。また、出発地と目的地の入力を受け付け、出発地から目的地までの経路を検索して電子地図上に経路を表示したり、進路変更の手前で車両の乗員に進行方向を音声、文字(ディスプレイに表示される)、又はアニメーション等で案内したりする。なお、カーナビゲーションシステム1100は携帯電話網などを介してサーバと通信してもよい。この場合、サーバが電子地図を車両140に送信したり経路検索を行ったりすることができる。
エンジンECU1200は、各センサからの情報と車両の状況に合わせ、理想となる燃料噴射量の決定、点火時期の進角・遅角、動弁機構などの制御を行う。また、現在車速とアクセル開度の関係に対し変速段の切り替え線が定められたマップを参照するなどして変速の必要性を判断する。エンジンECU1200はこれらを組み合わせ先行車への追従走行時の加速や減速制御を行う。なお、エンジンと共に又はエンジンを動力とすることなく電気モータを動力としてもよい。
ブレーキECU1300は、ABS(Antilock Braking System)制御、先行車への追従走行時の制動制御、障害物とのTTC(Time To Collision)に基づく自動制動、坂道発進時の停止状態維持制御など、車両の乗員によるブレーキペダルの操作がなくても車両の各車輪ごとに制動力を制御する。
ステアリングECU1400は、車両の乗員によるハンドルの操舵の方向と操舵量を検出し、操舵方向に操舵トルクを付加するパワーステアリング制御を行う。また、走行レーンからの逸脱を回避する方向、走行レーンの中央の走行を維持する方向、又は、障害物との接近を回避する方向に、車両の乗員によるハンドル操作がなくても操舵する。
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
また、上記実施形態では、ステレオカメラ部110とレーザレーダ測距部120とが一体的に構成される場合について示したが、ステレオカメラ部110とレーザレーダ測距部120とは、別体により構成されてもよい。
また、上記実施形態では、レーザ信号処理部240とステレオ画像演算部250が、専用の集積回路により構成されるものとして説明した。しかしながら、例えば、レーザ信号処理部240、ステレオ画像演算部250の機能を実現するソフトウェアのプログラムコードが記録された記憶媒体を情報処理装置が実行することで本実施形態の機能を実現してもよい。
また、図7などの構成例は、測距装置100による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。測距装置100の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
また、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
また、上記実施形態では、測距装置100を車両140に取り付ける場合について説明した。しかしながら、測距装置100の取り付け先は車両140に限定されず、バイク、自転車、車椅子、農業用の耕運機等であってもよい。あるいは、自律移動ロボット等の移動体であってもよい。あるいは、ドローンなどの飛行体でもよい。あるいは、FA(Factory Automation)において固定設置される工業用ロボット等であってもよい。
30 情報処理装置
100 測距装置
特開2015−143679号公報

Claims (18)

  1. 形式が異なる複数の信号に基づいて物体までの距離を測定する測距装置において、
    物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部と、
    前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する距離情報出力部と、を有し、
    前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする測距装置。
  2. 前記第一の信号は画像データであり、
    前記第二の信号は物体までの距離を表す一次元のデータであり、
    前記信号変換部は、一次元の前記第二の信号の次元数を二次元の前記第一の信号の次元数に合わせることを特徴とする請求項1に記載の測距装置。
  3. 前記信号変換部は、一次元の前記第二の信号が有する物体までの距離を二次元のうち高さ方向に、物体を水平に走査した場合の走査位置を二次元のうち横方向に、それぞれ対応させ、高さ方向と横方向に対応づけて前記第二の信号の強度を配置することを特徴とする請求項2に記載の測距装置。
  4. 前記信号変換部は、前記画像データのx軸と二次元に変換された前記第二の信号の横方向が水平方向の長さ情報を表すか、又は、前記画像データのy軸と二次元に変換された前記第二の信号の縦方向が高さ方向の長さ情報を表すように変換することを特徴とする請求項3に記載の測距装置。
  5. 前記距離情報出力部は、
    前記信号変換部により形式が合わせられた前記第二の信号及び前記第一の信号と、予め用意された距離情報とを対応付けるパラメータを有し、
    前記信号変換部により形式が合わせられた前記第二の信号及び前記第一の信号が入力されると、前記パラメータに基づいて前記距離情報を出力することを特徴とする請求項1〜4のいずれか1項に記載の測距装置。
  6. 前記パラメータは深層学習により生成されたものであり、
    前記距離情報出力部は、横方向がx軸で高さ方向がy軸の二次元の画像データと、横方向がx軸(又はz軸)で高さ方向がz軸(又はy軸)の二次元に変換された前記第二の信号の強度を、距離情報に変換することを特徴とする請求項5に記載の測距装置。
  7. 前記画像データにフィルタ処理を施して特徴が抽出されたc個の特徴画像を生成するフィルタ処理部と、
    前記信号変換部が二次元に変換した、横方向がx軸で高さ方向がz軸の二次元の強度データの横方向を前記画像データのx軸、高さ方向を前記画像データのy軸と対応させ、
    前記c個の特徴画像が重ねて配置された奥行き方向と、前記二次元の強度データのz軸とが対応するように前記二次元の強度を積層する積層部と、
    を有することを特徴とする請求項6に記載の測距装置。
  8. 前記距離情報出力部は、
    横方向がx軸で高さ方向がy軸のc個の二次元の画像データが奥行き方向に配置された特徴画像、及び、横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データと、予め用意された距離情報とを対応付けるパラメータを有し、
    横方向がx軸で高さ方向がy軸のc個の二次元の画像データが奥行き方向に配置された特徴画像、及び、横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データが入力されると、前記パラメータに基づいて前記距離情報を出力することを特徴とする請求項7に記載の測距装置。
  9. 前記距離情報出力部は、
    前記画像データ及び横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データと、予め用意された距離情報とを対応付けるパラメータを有し、
    前記画像データ及び横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データが入力されると、前記パラメータに基づいて前記距離情報を出力することを特徴とする請求項7に記載の測距装置。
  10. 前記距離情報出力部は、
    前記画像データ、及び、横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データと、予め用意された距離情報とを対応付けるパラメータを有し、
    前記パラメータは、
    前記画像データ及び横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データの入力に対し前記パラメータに基づいて出力された前記距離情報と、予め用意された距離情報との第一の差異、及び、
    前記c個の特徴画像が距離ごとに抽出された特徴画像と、予め用意された距離情報から前記特徴画像を抽出した距離ごとに抽出された距離情報との第二の差異、
    との重み付け加算和に基づいて機械学習により学習されたものであることを特徴とする請求項7に記載の測距装置。
  11. 前記パラメータが深層学習により生成されることで、
    前記距離情報出力部に、横方向がx軸で高さ方向がy軸のc個の特徴画像が奥行き方向に配置された特徴画像ブロック、及び、横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データブロックが入力された場合、
    前記特徴画像ブロックの前記奥行き方向と、前記強度データブロックのz軸が示す奥行き方向の距離とが対応付けられることを特徴とする請求項10に記載の測距装置。
  12. 形式が異なる複数の信号と物体までの距離情報との対応を学習する情報処理装置において、
    物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部と、
    前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号がネットワークに入力した場合に得られる出力と、予め用意された距離情報との差異に応じて前記ネットワークのパラメータを更新する学習部と、を有し
    前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする情報処理装置。
  13. 前記第一の信号は画像データであり、
    前記第二の信号は物体までの距離を表す一次元のデータであり、
    前記学習部は、
    前記画像データにフィルタ処理を施して特徴が抽出されたc個の特徴画像を生成するフィルタ処理部と、
    前記信号変換部が二次元に変換した、横方向がx軸で高さ方向がz軸の二次元の強度データの横方向を前記画像データのx軸、高さ方向を前記画像データのy軸と対応させ、
    前記c個の特徴画像が重ねて配置された奥行き方向と、前記二次元の強度データのz軸とが対応するように前記二次元の強度を積層する積層部と、を有し、
    横方向がx軸で高さ方向がy軸のc個の特徴画像が奥行き方向に配置された特徴画像ブロック、及び、横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データブロックがネットワークに入力して得られる出力と、予め用意された距離情報との差異に応じて前記ネットワークのパラメータを更新することを特徴とする請求項12に記載の情報処理装置。
  14. 前記学習部は、
    前記画像データ及び横方向がx軸で高さ方向がy軸で奥行き方向がz軸の強度データの入力に対し前記パラメータに基づいて出力された前記距離情報と、予め用意された距離情報との第一の差異、及び、
    前記c個の特徴画像が距離ごとに抽出された特徴画像と、予め用意された距離情報から前記特徴画像を抽出した距離ごとに抽出された距離情報との第二の差異、
    との重み付け加算和に基づいて前記ネットワークのパラメータを更新することを特徴とする請求項13に記載の情報処理装置。
  15. 形式が異なる複数の信号に基づいて物体までの距離を測定する測距装置が行う測距方法において、
    信号変換部が、物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる第一のステップと、
    距離情報出力部が、前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する第二のステップと、を有し、
    前記第一のステップにおいて、前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする測距方法。
  16. 形式が異なる複数の信号に基づいて物体までの距離を測定する車載装置において、
    物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部と、
    前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する距離情報出力部と、を有し、
    前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換し、
    前記距離情報を移動体の制御ユニットに送出する車載装置。
  17. 請求項16に記載された車載装置を有する移動体。
  18. 形式が異なる複数の信号に基づいて物体までの距離を測定する測距システムにおいて、
    物体までの距離に関する第二の信号の形式を、画像に関する第一の信号の形式に合わせる信号変換部と、
    前記第一の信号及び前記信号変換部により形式が合わせられた前記第二の信号に基づいて距離情報を出力する距離情報出力部と、を有し、
    前記信号変換部は、前記第一の信号が有する複数次元の方向の長さ情報と、形式が合わせられた前記第二の信号が有する複数次元の方向の長さ情報のうち、少なくとも一つの次元の方向の長さ情報が同じ方向の長さ情報を表すように変換することを特徴とする測距システム。
JP2019127163A 2019-07-08 2019-07-08 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム Active JP7298350B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019127163A JP7298350B2 (ja) 2019-07-08 2019-07-08 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム
EP20179425.2A EP3764124A1 (en) 2019-07-08 2020-06-11 Distance measuring apparatus, method for measuring distance, on-vehicle apparatus, and mobile object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019127163A JP7298350B2 (ja) 2019-07-08 2019-07-08 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム

Publications (2)

Publication Number Publication Date
JP2021012133A true JP2021012133A (ja) 2021-02-04
JP7298350B2 JP7298350B2 (ja) 2023-06-27

Family

ID=71092362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019127163A Active JP7298350B2 (ja) 2019-07-08 2019-07-08 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム

Country Status (2)

Country Link
EP (1) EP3764124A1 (ja)
JP (1) JP7298350B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023149089A1 (ja) * 2022-02-01 2023-08-10 ソニーセミコンダクタソリューションズ株式会社 学習装置、学習方法及び学習プログラム
WO2024062874A1 (ja) * 2022-09-20 2024-03-28 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114280566B (zh) * 2021-11-30 2023-05-23 电子科技大学 一种类标签关联一维距离像识别方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003139858A (ja) * 2001-11-02 2003-05-14 Fuji Heavy Ind Ltd 車外監視装置
JP2011099683A (ja) * 2009-11-04 2011-05-19 Hitachi Automotive Systems Ltd 物体検出装置
JP2015175644A (ja) * 2014-03-13 2015-10-05 株式会社リコー 測距システム、情報処理装置、情報処理方法及びプログラム
US20190004533A1 (en) * 2017-07-03 2019-01-03 Baidu Usa Llc High resolution 3d point clouds generation from downsampled low resolution lidar 3d point clouds and camera images
US20190197667A1 (en) * 2017-12-26 2019-06-27 Facebook, Inc. Computing high-resolution depth images using machine learning techniques
JP2019109219A (ja) * 2017-10-27 2019-07-04 バイドゥ ユーエスエー エルエルシーBaidu USA LLC ダイクロイックミラーを使用する、自律走行車のための3d−lidarシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6476831B2 (ja) 2013-12-26 2019-03-06 株式会社リコー 視差演算システム、情報処理装置、情報処理方法及びプログラム
US11276189B2 (en) * 2019-03-06 2022-03-15 Qualcomm Incorporated Radar-aided single image three-dimensional depth reconstruction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003139858A (ja) * 2001-11-02 2003-05-14 Fuji Heavy Ind Ltd 車外監視装置
JP2011099683A (ja) * 2009-11-04 2011-05-19 Hitachi Automotive Systems Ltd 物体検出装置
JP2015175644A (ja) * 2014-03-13 2015-10-05 株式会社リコー 測距システム、情報処理装置、情報処理方法及びプログラム
US20190004533A1 (en) * 2017-07-03 2019-01-03 Baidu Usa Llc High resolution 3d point clouds generation from downsampled low resolution lidar 3d point clouds and camera images
JP2019109219A (ja) * 2017-10-27 2019-07-04 バイドゥ ユーエスエー エルエルシーBaidu USA LLC ダイクロイックミラーを使用する、自律走行車のための3d−lidarシステム
US20190197667A1 (en) * 2017-12-26 2019-06-27 Facebook, Inc. Computing high-resolution depth images using machine learning techniques

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023149089A1 (ja) * 2022-02-01 2023-08-10 ソニーセミコンダクタソリューションズ株式会社 学習装置、学習方法及び学習プログラム
WO2024062874A1 (ja) * 2022-09-20 2024-03-28 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、プログラム

Also Published As

Publication number Publication date
EP3764124A1 (en) 2021-01-13
JP7298350B2 (ja) 2023-06-27

Similar Documents

Publication Publication Date Title
CN113366496B (zh) 用于粗略和精细对象分类的神经网络
JP6984215B2 (ja) 信号処理装置、および信号処理方法、プログラム、並びに移動体
EP3405845B1 (en) Object-focused active three-dimensional reconstruction
US11465633B2 (en) Method and system for generating predicted occupancy grid maps
US11361449B2 (en) Neural network for object detection and tracking
JP7239703B2 (ja) 領域外コンテキストを用いたオブジェクト分類
JP2019512802A (ja) 3dポイントクラウドの処理方法
JP7298350B2 (ja) 測距装置、情報処理装置、測距方法、車載装置、移動体、測距システム
US11827214B2 (en) Machine-learning based system for path and/or motion planning and method of training the same
CN109307869A (zh) 用于增加激光雷达探测器的视场的设备和照明装置
CN110936959B (zh) 车辆感知系统在线诊断和预测
US11745652B2 (en) Device and method for controlling sound signal of vehicle, and device of outputting sound signal
CN116504053A (zh) 传感器融合
CN115273002A (zh) 一种图像处理方法、装置、存储介质及计算机程序产品
US20220237921A1 (en) Outside environment recognition device
JP2021160531A (ja) 車両制御装置、車両制御方法、及びプログラム
JP7028838B2 (ja) 周辺認識装置、周辺認識方法、およびプログラム
US20240092365A1 (en) Estimation device, estimation method, and program
US11443184B2 (en) Methods and systems for predicting a trajectory of a road agent based on an intermediate space
US20240094345A1 (en) Method for extending the effective range of a sensor and a corresponding sensor system
US20230230257A1 (en) Systems and methods for improved three-dimensional data association using information from two-dimensional images
US20240161398A1 (en) Late-to-early temporal fusion for point clouds
US20220237899A1 (en) Outside environment recognition device
CN114581865A (zh) 深度神经网络中的置信度测量
CN114839628A (zh) 利用多个距离和分辨率的物体检测

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230322

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: 20230516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230529

R151 Written notification of patent or utility model registration

Ref document number: 7298350

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151