JP2024027849A - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP2024027849A
JP2024027849A JP2022130990A JP2022130990A JP2024027849A JP 2024027849 A JP2024027849 A JP 2024027849A JP 2022130990 A JP2022130990 A JP 2022130990A JP 2022130990 A JP2022130990 A JP 2022130990A JP 2024027849 A JP2024027849 A JP 2024027849A
Authority
JP
Japan
Prior art keywords
camera
vehicle
horizontal line
target area
processing target
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
JP2022130990A
Other languages
English (en)
Other versions
JP7512330B2 (ja
Inventor
直士 垣田
Naoshi Kakita
康司 大西
Yasushi Onishi
隆幸 小笹
Takayuki Ozasa
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.)
Denso Ten Ltd
Original Assignee
Denso Ten 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 Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2022130990A priority Critical patent/JP7512330B2/ja
Priority claimed from JP2022130990A external-priority patent/JP7512330B2/ja
Priority to US18/186,630 priority patent/US20240062420A1/en
Publication of JP2024027849A publication Critical patent/JP2024027849A/ja
Application granted granted Critical
Publication of JP7512330B2 publication Critical patent/JP7512330B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/002Diagnosis, testing or measuring for television systems or their details for television cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

【課題】車載カメラの姿勢推定における処理対象領域を適切に設定すること。【解決手段】実施形態に係る情報処理装置は、制御部(「コントローラ」の一例に相当)を備える。制御部は、車載カメラのカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいて上記車載カメラの姿勢を推定する姿勢推定処理を実行する。また、制御部は、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、上記車載カメラの取り付け高さ、および、上記水平線位置と上記車載カメラの光軸中心のズレ量である水平線ズレ量に基づいて上記処理対象領域の垂直方向の位置を設定する。【選択図】図7

Description

開示の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
車載カメラの取り付け位置および姿勢は、不意の接触や経年変化などにより変化し、取り付け当初のキャリブレーションから誤差を生じてしまうことがある。これを検知するため従来から、車載カメラによって撮像されたカメラ画像に基づいて車載カメラの姿勢を推定する技術が知られている。
例えば特許文献1には、カメラ画像中に設定された矩形状のROI(Region Of Interest;処理対象領域)から路面上の特徴点を抽出し、この特徴点のフレーム間での動きを示すオプティカルフローに基づいて車載カメラの姿勢を推定する技術が開示されている。
かかるオプティカルフローに基づいて実空間における平行な線分のペアを抽出し、例えば非特許文献1のアルゴリズムを用いることで、車載カメラの姿勢(PAN,TILT,ROLLの各軸の回転角)を推定することができる。
特開2021-086258号公報
[online],慶應義塾大学,[令和4年6月30日検索],インターネット<URL:http://im-lab.net/artoolkit-overview/>
しかしながら、上述した従来技術には、車載カメラの姿勢推定における処理対象領域を適切に設定するうえで、さらなる改善の余地がある。
オプティカルフローを用いた姿勢推定の場合、自車のカメラ位置から前方5m~15mの距離範囲にROIを設定することが望ましいとされている。
しかしながら、例えば車種等の違いにより、取り付け高さ等の車載カメラの取り付け条件やカメラ画像への車体の映り込み方は異なる。このため、車種等の違いにより、カメラ画像における前述の距離範囲の見え方も異なる。こうした見え方の差異を吸収しつつ、カメラ画像のみによって姿勢推定に適したROIを設定することは現状困難である。
実施形態の一態様は、上記に鑑みてなされたものであって、車載カメラの姿勢推定における処理対象領域を適切に設定することができる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
実施形態の一態様に係る情報処理装置は、コントローラを備える。前記コントローラは、車載カメラのカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する姿勢推定処理を実行する。また、前記コントローラは、前記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、前記車載カメラの取り付け高さ、および、前記水平線位置と前記車載カメラの光軸中心のズレ量である水平線ズレ量に基づいて前記処理対象領域の垂直方向の位置を設定する。
実施形態の一態様によれば、車載カメラの姿勢推定における処理対象領域を適切に設定することができる。
図1は、第1の実施形態に係る姿勢推定方法の説明図(その1)である。 図2は、第1の実施形態に係る姿勢推定方法の説明図(その2)である。 図3は、第1の実施形態に係る姿勢推定方法の説明図(その3)である。 図4は、第1の実施形態に係る姿勢推定方法の説明図(その4)である。 図5は、第1の実施形態に係る姿勢推定方法の説明図(その5)である。 図6は、第1の実施形態に係る姿勢推定方法の説明図(その6)である。 図7は、第1の実施形態に係る車載装置の構成例を示すブロック図である。 図8は、姿勢推定部の構成例を示すブロック図である。 図9は、第1の実施形態に係る車載装置が実行する処理手順を示すフローチャートである。 図10は、第2の実施形態に係る姿勢推定方法の説明図(その1)である。 図11は、第2の実施形態に係る姿勢推定方法の説明図(その2)である。 図12は、第2の実施形態に係る姿勢推定方法の説明図(その3)である。 図13は、第2の実施形態に係る車載装置が実行する処理手順を示すフローチャートである。
以下、添付図面を参照して、本願の開示する情報処理装置、情報処理方法およびプログラムの実施形態を詳細に説明する。なお、以下に示す実施形態によりこの発明が限定されるものではない。
また、以下では、実施形態に係る情報処理装置が、車両に搭載される車載装置10(図7参照)である場合を例に挙げて説明を行う。車載装置10は、例えばドライブレコーダである。また、以下では、実施形態に係る情報処理方法が、車載装置10の備えるカメラ11(図7参照)の姿勢推定方法であるものとする。また、以下では、ROIは矩形状であるものとする。また、以下では、カメラ画像に関して「縦」と言った場合、縦方向はカメラ画像の上下方向、すなわち垂直方向に相当する。同じく「横」と言った場合、横方向はカメラ画像の左右方向、すなわち水平方向に相当する。
(第1の実施形態)
まず、第1の実施形態に係る姿勢推定方法の内容について、図1~図6を用いて説明する。図1~図6は、第1の実施形態に係る姿勢推定方法の説明図(その1)~(その6)である。
路面上の特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する場合、抽出される路面上の特徴点としては、横断歩道や車線といった路面標示のコーナー部分などが挙げられる。
図1は、ROI30内において、横断歩道のコーナー部分に基づいてオプティカルフローOp1,Op2が抽出された例を示している。
非特許文献1のアルゴリズムは、実空間における平行な線分のペアを前提とするので、図1のオプティカルフローOp1,Op2のペアは姿勢推定における正しい組み合わせ(以下、「正フロー」と言う)となる。一方、ROI30内では、オプティカルフローOp1,Op2以外にもオプティカルフローOp1,Op2と非平行な場合を含む多くのオプティカルフローが抽出される。
したがって、これらオプティカルフローにおいては、前述の正フローに対し、誤った組み合わせ(以下、「誤フロー」と言う)となるペアも生じる。この誤フローに基づいては、カメラ11の姿勢を正しく推定することができない。
このため、カメラ11の姿勢推定処理では、抽出したオプティカルフローのペアのそれぞれについてPAN,TILT,ROLLの各軸の回転角を推定し、ヒストグラム化した中央値に基づいて統計的にカメラ11の軸ズレを判定している。
ところで、図2に示すように、オプティカルフローを用いた姿勢推定処理においてROI30は、縦方向については少なくともカメラ11前方の5m~15mの距離範囲が含まれる縦サイズを有することが望ましい。
また、同じく図2に示すように、ROI30の横方向については、側方車両や壁などの立体物等が多く映り込まない範囲として、自車走行レーンの幅3.5m+両隣の走行レーンの幅の半分ずつ(1.75m×2)の合計7.2m程度の横サイズを有することが望ましい。
しかしながら、例えば車種等の違いにより、取り付け高さ等のカメラ11の取り付け条件やカメラ画像への車体の映り込み方は異なる。このため、車種等の違いにより、カメラ画像における前述の5m~15mの距離範囲の見え方も異なる。こうした見え方の差異を吸収しつつ、カメラ画像のみによって姿勢推定に適したROIを設定することは現状困難である。
そこで、第1の実施形態に係る姿勢推定方法では、車載装置10が備える制御部15(図7参照)が、カメラ11のカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行し、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、カメラ11の取り付け高さ、および、上記水平線位置とカメラ11の光軸中心のズレ量である水平線ズレ量に基づいて上記処理対象領域の垂直方向の位置を設定することとした。
具体的に制御部15は、まず図3に示すように、カメラ11によって撮像されたカメラ画像を取得し、水平線位置P1とカメラ11の光軸中心C1のズレ量である水平線ズレ量D1を算出する。
水平線位置P1は、実空間では平行であるがカメラ画像内では非平行な2本の線として観測される異なる2本の線(例えば2本の車線)が交わる点を通る水平な線のカメラ画像上の縦位置(垂直方向の位置)を指す。当該交わる点は、いわゆる遠近法における「消失点」に相当し、例えば2本の車線がほぼ交わると見なせる任意の点である場合を含む。
水平線位置P1は、例えばカメラ11の取り付け時やキャリブレーション時、任意のタイミングなどで取り付け作業者やユーザにより設定される。あるいは、水平線位置P1は、カメラ画像の画像認識結果に基づいて設定される。
つづいて、図4に示すように、制御部15は、算出した水平線ズレ量D1を簡易的なTILT角とし、当該TILT角およびカメラ11の取り付け高さに基づいてカメラ画像内におけるカメラ11からの5m位置P2を算出する。このとき、制御部15は、例えばカメラ座標系および路面座標系の間の座標変換式を用いて5m位置P2を算出してもよいし、予め設定された座標変換テーブル等を用いて5m位置P2を導出してもよい。
なお、取り付け高さは、例えばカメラ11の取り付け時などに取り付け作業者を含むユーザにより設定される。あるいは、取り付け高さは、カメラ画像の画像認識結果に基づいて設定される。
そして、制御部15は、算出した5m位置P2を仮の下端位置(以下、「仮下端位置P3」と言う)とするROI30-Tを仮設定する。このとき、制御部15は、仮下端位置P3からカメラ11前方の5m~15mの距離範囲が含まれるようにROI30-Tの縦サイズを設定する。横サイズについては、前述の7.2m程度の幅範囲が含まれるように設定する。すなわち、制御部15は、図2にも示した台形状の領域(図中の斜線で塗りつぶした領域参照)が含まれるようにROI30-Tのサイズを設定する。
そして、制御部15は、図5に示すように、カメラ画像内におけるボンネットB等の車体の映り込み部分(二点鎖線が示す領域)にROI30-Tが重なる場合、ROI30-T全体を上方向へずらす。言い換えれば、制御部15は、車体位置P4がROI30-Tの下端位置(すなわち、前述の仮下端位置P3)を超える場合、ROI30-Tの下端位置が車体位置P4より縦方向で上に位置するようにROI30-T全体を上方向へずらしてROI30-Tの位置を補正する。
車体位置P4は、カメラ画像内に映り込む車体部分の最突出位置である。車体位置P4は、水平線位置P1と同様に、例えばカメラ11の取り付け時やキャリブレーション時、任意のタイミングなどで取り付け作業者を含むユーザにより設定される。あるいは、車体位置P4は、カメラ画像の画像認識結果に基づいて設定される。
なお、制御部15は、車体の映り込み部分にROI30-Tが重なる場合、図6に示すように、ROI30-Tの下端位置を上方向へずらすようにしてもよい。言い換えれば、制御部15は、車体位置P4が仮下端位置P3を超える場合、ROI30-Tの下端位置が車体位置P4より縦方向で上に位置するようにROI30-Tの縦サイズを補正(ここでは、縮小)してもよい。
そして、制御部15は、このように必要に応じて位置および/またはサイズを補正したROI30-Tを最終的なROI30として設定する。そして、制御部15は、設定したROI30を処理対象とする姿勢推定処理を実行する。
このように、第1の実施形態に係る姿勢推定方法では、車載装置10の制御部15が、カメラ11のカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行し、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、カメラ11の取り付け高さ、および、上記水平線位置とカメラ11の光軸中心のズレ量である水平線ズレ量に基づいて上記処理対象領域の垂直方向の位置を設定することとした。
したがって、第1の実施形態に係る姿勢推定方法によれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。
次に、車載装置10の構成例について説明する。図7は、第1の実施形態に係る車載装置10の構成例を示すブロック図である。また、図8は、姿勢推定部15aの構成例を示すブロック図である。なお、図7および図8では、本実施形態の特徴を説明するために必要な構成要素のみを表しており、一般的な構成要素についての記載を省略している。
換言すれば、図7および図8に図示される各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。例えば、各ブロックの分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することが可能である。
また、図7および図8を用いた説明では、既に説明済みの構成要素については、説明を簡略するか、説明を省略する場合がある。
図7に示すように、実施形態に係る車載装置10は、カメラ11と、センサ部12と、通知デバイス13と、記憶部14と、制御部15とを有する。
カメラ11は、例えばCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子を備え、この撮像素子を用いて予め決められた撮像範囲を撮像する。カメラ11は、例えばフロントガラスやダッシュボード等の車両の各所に、車両の前方の予め決められた撮像範囲を撮像するように取り付けられる。
センサ部12は、車両に搭載される各種のセンサであり、例えば車速センサやGセンサなどを含む。通知デバイス13は、キャリブレーションに関する情報を通知するデバイスである。通知デバイス13は、例えばディスプレイやスピーカ等によって実現される。
記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の記憶デバイスによって実現される。記憶部14は、図7の例では、画像情報14aと、取り付け関連情報14bとを記憶する。
画像情報14aは、カメラ11によって撮像されたカメラ画像が格納される。取り付け関連情報14bは、カメラ11の取り付けに関する情報である。
取り付け関連情報14bは、カメラ11の取り付け位置および姿勢に関する設計値や、キャリブレーション値を含む。カメラ11の取り付け位置は、カメラ11の取り付け高さを含む。
また、取り付け関連情報14bは、後述する設定部15abが実行するROI30の設定処理において用いられる前述の水平線位置P1や車体位置P4等を含む。
また、取り付け関連情報14bは、後述する姿勢推定部15aが実行する姿勢推定処理において用いられるカメラパラメータや閾値等の各種のパラメータを含む。
制御部15は、コントローラ(controller)であり、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、記憶部14に記憶されている図示略の第1の実施形態に係るプログラムがRAMを作業領域として実行されることにより実現される。また、制御部15は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現することができる。
制御部15は、姿勢推定部15aと、キャリブレーション実行部15bとを有し、以下に説明する情報処理の機能や作用を実現または実行する。
姿勢推定部15aは、カメラ11の取り付け高さ、前述の水平線ズレ量D1および車体位置P4に基づいてROI30を設定し、設定したROI30におけるオプティカルフローを使用した姿勢推定処理を実行する。
姿勢推定部15aの構成例についてより具体的に図8を用いて説明する。図8に示すように、姿勢推定部15aは、取得部15aaと、設定部15abと、特徴点抽出部15acと、特徴点追従部15adと、線分抽出部15aeと、算出部15afと、ノイズ除去部15agと、決定部15ahとを有する。
取得部15aaは、カメラ11の撮像画像を取得し、画像情報14aへ格納する。設定部15abは、画像情報14aへ格納されたカメラ画像に対し、カメラ11の姿勢推定において処理対象となるROI30を設定する設定処理を実行する。
設定部15abは、水平線位置P1と光軸中心C1のズレ量である水平線ズレ量D1を算出する。また、設定部15abは、算出した水平線ズレ量D1を簡易的なTILT角とし、当該TILT角およびカメラ11の取り付け高さに基づいて前述のカメラ11からの5m位置P2を算出する。
また、設定部15abは、算出した5m位置P2を前述の仮下端位置P3とするROI30-Tを仮設定する。このとき、設定部15abは、仮下端位置P3からカメラ11前方の5m~15mの距離範囲が含まれるようにROI30-Tの縦サイズを設定する。横サイズについては、前述の7.2m程度の幅範囲が含まれるように設定する。
また、設定部15abは、車体位置P4が仮下端位置P3を超えて車体の映り込み部分にROI30-Tが重なる場合、ROI30-Tの下端位置が車体位置P4より縦方向で上に位置するようにROI30-T全体を上方向へずらしてROI30-Tの位置を補正する。なお、設定部15abは、車体位置P4が仮下端位置P3以下である場合、ROI30-Tの位置を補正しない。
あるいは、設定部15abは、車体位置P4が仮下端位置P3を超えて車体の映り込み部分にROI30-Tが重なる場合、ROI30-Tの下端位置が車体位置P4より縦方向で上に位置するようにROI30-Tの下端位置を上方向へずらしてROI30-Tの縦サイズを補正する。なお、設定部15abは、車体位置P4が仮下端位置P3以下である場合、ROI30-Tの縦サイズを補正しない。
そして、設定部15abは、このように必要に応じて位置および/またはサイズを補正した場合を含むROI30-Tを最終的なROI30として設定する。また、設定部15abは設定したROI30の設定内容を特徴点抽出部15acへ出力する。
特徴点抽出部15acは、設定部15abによって設定されたROI30内の特徴点を抽出する。
特徴点追従部15adは、特徴点抽出部15acによって抽出された各特徴点をフレーム間にわたって追従し、特徴点ごとのオプティカルフローを抽出する。線分抽出部15aeは、特徴点追従部15adによって抽出されたオプティカルフローからノイズ成分を除去し、各オプティカルフローに基づく線分のペア群を抽出する。
算出部15afは、線分抽出部15aeによって抽出された線分のペアのそれぞれについて、非特許文献1のアルゴリズムを用いてPAN,TILT,ROLLの各軸の回転角を算出する。
ノイズ除去部15agは、センサ部12のセンサ値に基づいて、算出部15afによって算出された各角度のうちから低速および舵角によるノイズ分を除去する。決定部15ahは、ノイズ分が除去された各角度をヒストグラム化し、中央値に基づいてPAN,TILT,ROLLの各角度推定値を決定する。また、決定部15ahは、決定した角度推定値を取り付け関連情報14bへ格納する。
図7の説明に戻る。キャリブレーション実行部15bは、姿勢推定部15aによる推定結果に基づいてキャリブレーションを実行する。具体的には、キャリブレーション実行部15bは、姿勢推定部15aによって推定された角度推定値と取り付け関連情報14bに含まれる設計値とを比較し、誤差を算出する。
キャリブレーション実行部15bは、算出した誤差が許容内であれば、外部装置50へキャリブレーション値を通知する。外部装置50は、例えば駐車枠検知機能や自動駐車機能を実現する各装置である。「誤差が許容内」とは、カメラ11の軸ズレがないことを指す。
また、キャリブレーション実行部15bは、算出した誤差が許容外であれば、外部装置50へキャリブレーション値を通知するとともに、外部装置50に駐車枠検知機能や自動駐車機能を停止させる。「誤差が許容外」とは、カメラ11の軸ズレがあることを指す。
また、キャリブレーション実行部15bは、通知デバイス13へキャリブレーションの実行結果を通知する。ユーザは、その通知内容に基づいて、必要であればディーラー等でカメラ11の取り付け角度を調整してもらうこととなる。
次に、第1の実施形態に係る車載装置10が実行する処理手順について、図9を用いて説明する。図9は、第1の実施形態に係る車載装置10が実行する処理手順を示すフローチャートである。なお、図9は、カメラ画像1枚分の処理手順を示している。当該処理手順は、姿勢推定処理が実行される間繰り返される。
図9に示すように、車載装置10の制御部15は、まずカメラ11からカメラ画像を取得し、取得したカメラ画像に基づいて水平線位置P1と光軸中心C1のズレ量である水平線ズレ量D1を算出する(ステップS101)。
そして、制御部15は、算出した水平線ズレ量D1を簡易的なTILT角とし、当該TILT角およびカメラ11の取り付け高さに基づいてROI30-Tの仮下端位置P3を算出する(ステップS102)。
つづいて、制御部15は、算出した仮下端位置P3からカメラ11前方の5m~15mの距離範囲が含まれるようにROI30-Tの縦サイズを設定する(ステップS103)。なお、図示は略しているが、横サイズについては、制御部15は前述の7.2m程度の幅範囲が含まれるように設定する。
そして、制御部15は、車体位置P4が仮下端位置P3を超えて車体の映り込み部分にROI30-Tが重なるか否かを判定する(ステップS104)。車体位置P4が仮下端位置P3を超える場合(ステップS104,Yes)、制御部15は、下端位置が車体位置P4より縦方向で上に位置するようにROI30-Tの位置またはサイズを補正する(ステップS105)。
車体位置P4が仮下端位置P3より縦方向で下に位置する場合は(ステップS104,No)、ステップS106へ遷移する。
そして、制御部15は、ステップS105で必要に応じて位置またはサイズを補正した場合を含むROI30-Tを最終的なROI30として設定し、設定したROI30中のオプティカルフローを使用した姿勢推定処理を実行する(ステップS106)。そして、制御部15は、カメラ画像1枚分の処理を終了する。
上述してきたように、第1の実施形態に係る車載装置10(「情報処理装置」の一例に相当)は、制御部15(「コントローラ」の一例に相当)を備える。制御部15は、カメラ11(「車載カメラ」の一例に相当)のカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行する。また、制御部15は、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置P1、カメラ11の取り付け高さ、および、水平線位置P1とカメラ11の光軸中心のズレ量である水平線ズレ量D1に基づいて上記処理対象領域の垂直方向の位置を設定する。
したがって、第1の実施形態に係る車載装置10によれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。
また、制御部15は、水平線ズレ量D1をカメラ11のTILT角とし、当該TILT角および上記取り付け高さに基づいて上記処理対象領域の下端位置を算出する。
したがって、第1の実施形態に係る車載装置10によれば、水平線ズレ量D1を簡易的なTILT角として取り扱うことで簡便に処理対象領域を設定することができる。
また、制御部15は、上記下端位置に基づいて設定した上記処理対象領域が上記カメラ画像内に映り込む車体部分と重なる場合に、上記下端位置が上記車体部分の最突出位置である車体位置P4より縦方向で上に位置するように上記処理対象領域の垂直方向の位置を補正する。
したがって、第1の実施形態に係る車載装置10によれば、カメラ画像内に映り込む車体部分を位置の補正によって処理対象領域から除くことができる。
また、制御部15は、上記下端位置に基づいて設定した上記処理対象領域が上記カメラ画像内に映り込む車体部分と重なる場合に、上記下端位置が上記車体部分の最突出位置である車体位置P4より縦方向で上に位置するように上記処理対象領域の垂直方向のサイズを補正する。
したがって、第1の実施形態に係る車載装置10によれば、カメラ画像内に映り込む車体部分をサイズの補正によって処理対象領域から除くことができる。
また、水平線位置P1、車体位置P4および上記取り付け高さは、ユーザにより設定される。
したがって、第1の実施形態に係る車載装置10によれば、ユーザ設定に基づいて簡便に処理対象領域を設定することができる。
また、制御部15は、上記カメラ画像の画像認識結果に基づいて水平線位置P1、車体位置P4および上記取り付け高さのうちの少なくともいずれかを設定する。
したがって、第1の実施形態に係る車載装置10によれば、動的に精度よく水平線位置P1、車体位置P4および上記取り付け高さのうちの少なくともいずれかを設定することができる。
また、制御部15は、上記下端位置から上記姿勢推定処理に適した予め決められた距離範囲が含まれるように上記処理対象領域のサイズを設定する。
したがって、第1の実施形態に係る車載装置10によれば、姿勢推定処理に適した例えばカメラ11前方の5m~15mの距離範囲を含むROI30を設定することができる。
また、第1の実施形態に係る姿勢推定方法は、車載装置10が実行する情報処理方法であって、カメラ11のカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行することと、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置P1、カメラ11の取り付け高さ、および、水平線位置P1とカメラ11の光軸中心のズレ量である水平線ズレ量D1に基づいて上記処理対象領域の垂直方向の位置を設定することと、を含む。
したがって、第1の実施形態に係る姿勢推定方法によれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。
また、第1の実施形態に係るプログラムは、カメラ11のカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行すること、上記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置P1、カメラ11の取り付け高さ、および、水平線位置P1とカメラ11の光軸中心のズレ量である水平線ズレ量D1に基づいて上記処理対象領域の垂直方向の位置を設定すること、をコンピュータに実行させる。
したがって、第1の実施形態に係るプログラムによれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。
(第2の実施形態)
次に、第2の実施形態について図10~図13を用いて説明する。なお、第2の実施形態に係る車載装置は「車載装置10A」と表記する。車載装置10Aの構成例は図7および図8と同様であるが、制御部15に含まれる姿勢推定部15aの設定部15abが実行する設定処理の態様が異なる。以下では、この異なる点について主に説明する。
図10~図12は、第2の実施形態に係る姿勢推定方法の説明図(その1)~(その3)である。また、図13は、第2の実施形態に係る車載装置10Aが実行する処理手順を示すフローチャートである。
第2の実施形態は、カメラ11の姿勢推定におけるROI30をより高精度に設定しようとするものである。第1の実施形態では、水平線ズレ量D1を簡易的なTILT角とし、当該TILT角およびカメラ11の取り付け高さに基づいてカメラ画像内におけるカメラ11からの5m位置P2を算出した。
これに対し、第2の実施形態では、カメラ画像内の少なくとも路面を指す任意の第1のROI30-1を設定し、当該第1のROI30-1中のオプティカルフローを使用した姿勢推定処理を実行し、当該姿勢推定処理によって推定されたカメラ11の姿勢に基づいてカメラ画像内におけるカメラ11からの5m位置P5を算出する。
具体的には、図10に示すように、車載装置10Aの制御部15は、任意の第1のROI30-1を設定し、当該第1のROI30-1中のオプティカルフローを使用した姿勢推定処理を実行する。第1のROI30-1は、カメラ画像内の少なくとも路面を指す。第1のROI30-1は、例えば第1の実施形態において最終的に設定したROI30を用いることができる。
そして、図11に示すように、車載装置10Aの制御部15は、姿勢推定処理によって推定されたカメラ11の姿勢および取り付け高さから路面座標上のカメラ11からの5m位置P5を算出する。5m位置P5は、姿勢推定処理の処理結果に基づくため、前述の5m位置P2より高精度となる。
そして、図12に示すように、車載装置10Aの制御部15は、算出した5m位置P5の縦位置を下端位置P6とする第2のROI30-2を設定する。
なお、ここでは図示を略するが、第2の実施形態でも図5に示したのと同様に、カメラ画像内における車体の映り込み部分にROI30-2が重なる場合、ROI30-2全体を上方向へずらしてもよい。すなわち、車載装置10Aの制御部15は、車体位置P4がROI30-2の下端位置P6を超えて車体の映り込み部分にROI30-2が重なる場合、下端位置P6が車体位置P4より縦方向で上に位置するようにROI30-2全体を上方向へずらしてROI30-2の位置を補正してもよい。
また、第2の実施形態でも図6に示したのと同様に、車体の映り込み部分にROI30-2が重なる場合、ROI30-2の下端位置P6を上方向へずらすようにしてもよい。すなわち、車載装置10Aの制御部15は、車体位置P4が下端位置P6を超えて車体の映り込み部分にROI30-2が重なる場合、ROI30-2の下端位置P6が車体位置P4より縦方向で上に位置するようにROI30-2の縦サイズを補正してもよい。
そして、車載装置10Aの制御部15は、このように必要に応じて位置および/またはサイズを補正したROI30-2を新たなROI30-1として設定する。そして、車載装置10Aの制御部15は、新たなROI30-1を処理対象とする姿勢推定処理を実行する。
次に、第2の実施形態に係る車載装置10Aが実行する処理手順について説明する。図13に示すように、車載装置10Aの制御部15は、任意の第1のROI30-1を設定する(ステップS201)。
そして、制御部15は、設定した第1のROI30-1中のオプティカルフローを使用した姿勢推定処理を実行する(ステップS202)。
そして、制御部15は、ステップS202で推定されたカメラ11の姿勢および取り付け高さから路面座標上のカメラ11からの5m位置P5を算出する(ステップS203)。
そして、制御部15は、ステップS203で算出した5m位置P5を下端位置P6とする第2のROI30-2を設定する(ステップS204)。
そして、制御部15は、処理終了イベントがあるか否かを判定する(ステップS205)。処理終了イベントは、例えば姿勢推定処理の非実行時間帯の到来や、エンジンの停止や、電源のオフ等である。
処理終了イベントが生じていなければ(ステップS205,No)、制御部15は、第2のROI30-2を新たな第1のROI30-1として設定し(ステップS206)、ステップS202からの処理を繰り返す。処理終了イベントが生じていれば(ステップS205,Yes)、制御部15は、処理を終了する。
上述してきたように、第2の実施形態に係る車載装置10A(「情報処理装置」の一例に相当)は、制御部15(「コントローラ」の一例に相当)を備える。制御部15は、カメラ11(「車載カメラ」の一例に相当)のカメラ画像に設定されたROI30-1(「第1の処理対象領域」の一例に相当)における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行する。また、制御部15は、上記姿勢推定処理によって推定されたカメラ11の姿勢およびカメラ11の取り付け高さから上記カメラ画像内における予め決められた路面座標上の5m位置P5(「距離位置」の一例に相当)を算出し、算出した5m位置P5を下端位置P6とするROI30-2(「第2の処理対象領域」の一例に相当)を新たなROI30-1として設定する。
したがって、第2の実施形態に係る車載装置10Aによれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。また、姿勢推定処理が実行されるごとに高精度に処理対象領域を再設定することができる。
また、制御部15は、下端位置P6に基づいて設定したROI30-2が上記カメラ画像内に映り込む車体部分と重なる場合に、下端位置P6が上記車体部分の最突出位置である車体位置P4より縦方向で上に位置するようにROI30-2の垂直方向の位置を補正する。
したがって、第2の実施形態に係る車載装置10Aによれば、カメラ画像内に映り込む車体部分を位置の補正によって処理対象領域から除くことができる。
また、制御部15は、下端位置P6に基づいて設定したROI30-2が上記カメラ画像内に映り込む車体部分と重なる場合に、下端位置P6が上記車体部分の最突出位置である車体位置P4より縦方向で上に位置するようにROI30-2の垂直方向のサイズを補正する。
したがって、第2の実施形態に係る車載装置10Aによれば、カメラ画像内に映り込む車体部分をサイズの補正によって処理対象領域から除くことができる。
また、制御部15は、下端位置P6から上記姿勢推定処理に適した予め決められた距離範囲が含まれるようにROI30-2のサイズを設定する。
したがって、第2の実施形態に係る車載装置10Aによれば、姿勢推定処理に適した例えばカメラ11前方の5m~15mの距離範囲を含むROI30を設定することができる。
また、第2の実施形態に係る姿勢推定方法は、車載装置10Aが実行する情報処理方法であって、カメラ11のカメラ画像に設定されたROI30-1における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行することと、上記姿勢推定処理によって推定されたカメラ11の姿勢およびカメラ11の取り付け高さから上記カメラ画像内における予め決められた路面座標上の5m位置P5を算出することと、算出した5m位置P5を下端位置P6とするROI30-2を新たなROI30-1として設定することと、を含む。
したがって、第2の実施形態に係る姿勢推定方法によれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。また、姿勢推定処理が実行されるごとに高精度に処理対象領域を再設定することができる。
また、第2の実施形態に係るプログラムは、カメラ11のカメラ画像に設定されたROI30-1における特徴点のオプティカルフローに基づいてカメラ11の姿勢を推定する姿勢推定処理を実行すること、上記姿勢推定処理によって推定されたカメラ11の姿勢およびカメラ11の取り付け高さから上記カメラ画像内における予め決められた路面座標上の5m位置P5を算出すること、算出した5m位置P5を下端位置P6とするROI30-2を新たなROI30-1として設定すること、をコンピュータに実行させる。
したがって、第2の実施形態に係るプログラムによれば、カメラ11の姿勢推定における処理対象領域を適切に設定することができる。また、姿勢推定処理が実行されるごとに高精度に処理対象領域を再設定することができる。
なお、第1の実施形態および第2の実施形態に係るプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。当該記録媒体も、本開示の一態様である。
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
10 車載装置
11 カメラ
12 センサ部
13 通知デバイス
14 記憶部
14a 画像情報
14b 取り付け関連情報
15 制御部
15a 姿勢推定部
15aa 取得部
15ab 設定部
15ac 特徴点抽出部
15ad 特徴点追従部
15ae 線分抽出部
15af 算出部
15ag ノイズ除去部
15ah 決定部
15b キャリブレーション実行部
30,30-T ROI
30-1 第1のROI
30-2 第2のROI
50 外部装置
B ボンネット
C1 光軸中心
D1 水平線ズレ量
P1 水平線位置
P2 5m位置
P3 仮下端位置
P4 車体位置
P5 下端位置
P6 5m位置
実施形態の一態様に係る情報処理装置は、載カメラの、路面を含む矩形の第1処理対象領域を設定し、前記第1処理対象領域内の特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する第1の姿勢推定処理を実行し、前記第1処理対象領域において、実空間では平行な2本の線が交わる消失点を通る水平線位置と前記車載カメラの光軸中心のズレ量である水平線ズレ量、および前記車載カメラの取り付け高さに基づいて前記第1処理対象領域の路面座標上の距離位置を算出し、前記第1処理対象領域の垂直方向の下端位置が、予め設定された距離位置と一致するように、前記下端位置を調整して、第2処理対象領域とし、前記第2処理対象領域内の特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する第2の姿勢推定処理を実行する

Claims (9)

  1. 車載カメラのカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する姿勢推定処理を実行するコントローラを備え、
    前記コントローラは、
    前記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、前記車載カメラの取り付け高さ、および、前記水平線位置と前記車載カメラの光軸中心のズレ量である水平線ズレ量に基づいて前記処理対象領域の垂直方向の位置を設定する、
    情報処理装置。
  2. 前記コントローラは、
    前記水平線ズレ量を前記車載カメラのTILT角とし、当該TILT角および前記取り付け高さに基づいて前記処理対象領域の下端位置を算出する、
    請求項1に記載の情報処理装置。
  3. 前記コントローラは、
    前記下端位置に基づいて設定した前記処理対象領域が前記カメラ画像内に映り込む車体部分と重なる場合に、前記下端位置が前記車体部分の最突出位置である車体位置より縦方向で上に位置するように前記処理対象領域の垂直方向の位置を補正する、
    請求項2に記載の情報処理装置。
  4. 前記コントローラは、
    前記下端位置に基づいて設定した前記処理対象領域が前記カメラ画像内に映り込む車体部分と重なる場合に、前記下端位置が前記車体部分の最突出位置である車体位置より縦方向で上に位置するように前記処理対象領域の垂直方向のサイズを補正する、
    請求項2に記載の情報処理装置。
  5. 前記水平線位置、前記車体位置および前記取り付け高さは、ユーザにより設定される、
    請求項3または4に記載の情報処理装置。
  6. 前記コントローラは、
    前記カメラ画像の画像認識結果に基づいて前記水平線位置、前記車体位置および前記取り付け高さのうちの少なくともいずれかを設定する、
    請求項3または4に記載の情報処理装置。
  7. 前記コントローラは、
    前記下端位置から前記姿勢推定処理に適した予め決められた距離範囲が含まれるように前記処理対象領域のサイズを設定する、
    請求項2に記載の情報処理装置。
  8. 情報処理装置が実行する情報処理方法であって、
    車載カメラのカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する姿勢推定処理を実行することと、
    前記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、前記車載カメラの取り付け高さ、および、前記水平線位置と前記車載カメラの光軸中心のズレ量である水平線ズレ量に基づいて前記処理対象領域の垂直方向の位置を設定することと、
    を含む、情報処理方法。
  9. 車載カメラのカメラ画像に設定された処理対象領域における特徴点のオプティカルフローに基づいて前記車載カメラの姿勢を推定する姿勢推定処理を実行すること、
    前記カメラ画像内で観測される実空間では平行な2本の線が交わる点から導出される水平線の位置である水平線位置、前記車載カメラの取り付け高さ、および、前記水平線位置と前記車載カメラの光軸中心のズレ量である水平線ズレ量に基づいて前記処理対象領域の垂直方向の位置を設定すること、
    をコンピュータに実行させる、プログラム。
JP2022130990A 2022-08-19 2022-08-19 情報処理装置、情報処理方法およびプログラム Active JP7512330B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022130990A JP7512330B2 (ja) 2022-08-19 情報処理装置、情報処理方法およびプログラム
US18/186,630 US20240062420A1 (en) 2022-08-19 2023-03-20 Information processing device, information processing method, and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022130990A JP7512330B2 (ja) 2022-08-19 情報処理装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2024027849A true JP2024027849A (ja) 2024-03-01
JP7512330B2 JP7512330B2 (ja) 2024-07-08

Family

ID=

Also Published As

Publication number Publication date
US20240062420A1 (en) 2024-02-22

Similar Documents

Publication Publication Date Title
US10242576B2 (en) Obstacle detection device
JP6693893B2 (ja) 走路認識装置
JP2005209019A (ja) 障害物検出装置、方法及びプログラム
JP6776202B2 (ja) 車載カメラのキャリブレーション装置及び方法
JP6493000B2 (ja) 路面標示検出装置及び路面標示検出方法
JP6175018B2 (ja) レーン検出装置、車線維持支援システム、およびレーン検出方法
JP7445415B2 (ja) 姿勢推定装置、異常検出装置、補正装置、および、姿勢推定方法
JP7401614B1 (ja) 情報処理装置、情報処理方法およびプログラム
JP2006285493A (ja) 道路モデル推定装置及び道路モデル推定方法
JP6314655B2 (ja) 標示線検出装置、標示線検出方法
JP7303064B2 (ja) 画像処理装置、および、画像処理方法
JP7512330B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2024027849A (ja) 情報処理装置、情報処理方法およびプログラム
JP7169075B2 (ja) 撮像制御装置および撮像制御方法
JP7359901B1 (ja) 情報処理装置、情報処理方法およびプログラム
JP7505909B2 (ja) キャリブレーション装置及びキャリブレーション方法
JP7340667B1 (ja) 情報処理装置、情報処理方法およびプログラム
JP5193148B2 (ja) 車両用撮像装置
JP7394934B1 (ja) 情報処理装置、情報処理方法、およびプログラム
JP7058128B2 (ja) 情報処理装置およびプログラム
US20240104759A1 (en) Information processing device, information processing method, and computer readable medium
TWI723657B (zh) 車輛控制方法與車用控制系統
JP7225079B2 (ja) 障害物認識装置
JP7311406B2 (ja) 画像処理装置、および、画像処理方法
JP2018132338A (ja) 距離導出装置および距離導出方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240430

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240604