[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2024515761A - データ駆動型の動的に再構成された視差マップ - Google Patents

データ駆動型の動的に再構成された視差マップ Download PDF

Info

Publication number
JP2024515761A
JP2024515761A JP2023565484A JP2023565484A JP2024515761A JP 2024515761 A JP2024515761 A JP 2024515761A JP 2023565484 A JP2023565484 A JP 2023565484A JP 2023565484 A JP2023565484 A JP 2023565484A JP 2024515761 A JP2024515761 A JP 2024515761A
Authority
JP
Japan
Prior art keywords
image
information
disparity
priority region
vehicle
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.)
Pending
Application number
JP2023565484A
Other languages
English (en)
Inventor
ラマイア ナビ-ン クマール バンガロール
スブラタ クマル クンドゥ
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo 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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Publication of JP2024515761A publication Critical patent/JP2024515761A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • G06V20/584Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0025Planning or execution of driving tasks specially adapted for specific operations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/10Historical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • B60W2556/50External transmission of data to or from the vehicle of positioning data, e.g. GPS [Global Positioning System] data
    • 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/20021Dividing image into blocks, subimages or windows
    • 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)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Traffic Control Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Image Analysis (AREA)

Abstract

いくつかの例では、システムは、車両の少なくとも1つのカメラから、道路を含む少なくとも1つの画像を受信することができる。システムは、車両位置の表示を含む車両の位置情報をさらに受信することができる。さらに、システムは、履歴データベースからの履歴情報、または道路の異常情報のうちの少なくとも1つを受信することができる。道路の異常情報は、道路の異常データベースまたはリアルタイムの道路異常検出のうちの少なくとも1つから決定される。少なくとも1つの画像、車両位置の表示、および履歴情報または道路の異常情報のうちの少なくとも1つに基づいて、システムは、視差マップまたは視差画像のうちの少なくとも1つを生成することができる。【選択図】図2

Description

本明細書におけるいくつかの実装形態は、車載プロセッサにかかる処理負荷を大幅に増大させることなく、様々なシナリオにおいて高い深度精度で障害物、道路の異常、およびその他の特徴を検出するために使用することができる視差マップまたは視差画像を効率的かつ動的に生成するための技術および装置を対象としている。
先進運転支援システム(ADAS)、ならびに半自律型車両システム、完全自律型車両システム、あるいはその他の自動運転(AD)システムは、安全性の向上、ナビゲーションの自動化などのために車両制御を自動化または高度化するシステムである。これらのシステムは、通常、車道を認識したり、他の車両、障害物、歩行者などを認識して回避したりするために多くのタイプのセンサを使用している。特に、カメラは、例えば路上の認識、標識の認識、障害物の回避などを行うため、車両の周囲の環境の視覚表示を撮像するために信頼し得るセンサである。
そのようなシステムは、受信したカメラの画像に基づいて認識機能を果たすために少なくとも部分的に視差マップの生成に依存する可能性がある。より高い精度を提供するためには、より密な視差マップが好ましい。しかしながら、より密な視差マップを生成すると、車載プロセッサの処理負荷が大幅に増大する可能性がある。
いくつかの実装形態では、システムは、車両の少なくとも1つのカメラから、道路を含む少なくとも1つの画像を受信することができる。システムは、車両位置の表示を含む車両の位置情報をさらに受信することができる。さらに、システムは、履歴データベースからの履歴情報、または道路の異常情報のうちの少なくとも1つを受信することができる。道路の異常情報は、道路の異常データベースまたはリアルタイムの道路異常検出のうちの少なくとも1つから決定される。少なくとも1つの画像、車両位置の表示、および履歴情報または道路の異常情報のうちの少なくとも1つに基づいて、システムは、視差マップまたは視差画像のうちの少なくとも1つを生成することができる。
添付図面を参照して詳細な説明を記載する。図面において、参照符号の左端の数字は、その参照符号が最初に現れる図面を特定する。異なる図面において使用されている同じ参照符号は、類似または同一の項目または特徴を示す。
図1は、いくつかの実装形態による、車両の周囲を認識するように構成された例示的な認識システムを示す。 図2は、いくつかの実装形態による、車両に含まれ得る認識システムの例示的なアーキテクチャを示す。 図3は、いくつかの実装形態による、車両に含まれ得る認識および車両制御システムの例示的なアーキテクチャを示す。 図4は、いくつかの実装形態による、カメラシステム108により行われる画像撮像の例を示す。 図5は、いくつかの実装形態による、動的に再構成された視差マップを生成するための例示的なプロセスを示すフロー図である。 図6は、いくつかの実装形態による、履歴マップを生成する例を示す。 図7は、いくつかの実装形態による、少なくとも履歴マップに基づく領域選択の例を示す。 図8は、いくつかの実装形態による、選択される領域を決定するための例示的なプロセスを示すフロー図を含む。 図9は、いくつかの実装形態による、ビット深度および圧縮レベルを決定するための例示的なプロセスを示すフロー図である。 図10は、いくつかの実装形態による、例示的なビット深度優先順位表を示す。 図11は、いくつかの実装形態による、画素レベルのアナログデジタル変換の例を示す。 図12は、いくつかの実装形態による、割り当てられた優先順位が異なる領域について異なるビット深度を有する例示的な画像を示す。 図13は、いくつかの実装形態による、例示的な圧縮優先順位表を示す。 図14は、いくつかの実装形態による、様々な圧縮レベルを使用して圧縮するために選択された様々な領域を含む例示的な画像を示す。 図15は、いくつかの実装形態による、最適な探索範囲を決定するための例示的なプロセスを示すフロー図である。 図16は、いくつかの実装形態による、画像の選択された領域に対する動的に密な視差情報を決定する例を示す。 図17は、いくつかの実装形態による、フレームN‐1の選択された領域の視差マップからヒストグラムを生成する例を示す。 図18は、いくつかの実装形態による、複数の領域に対する最適な探索範囲を決定する例を示す。 図19は、いくつかの実装形態による、アダプティブウィンドウベースのステレオマッチングの例示的なプロセスを示すフロー図である。 図20は、いくつかの実装形態による、例示的なマッチングウィンドウサイズ表を示す。 図21は、いくつかの実装形態による、例示的な色差閾値表を示す。 図22は、いくつかの実装形態による、アダプティブウィンドウの例を示す。 図23は、いくつかの実装形態による、アダプティブウィンドウ生成の例を示す。 図24は、いくつかの実装形態による、ZSAD値を決定するためにアダプティブウィンドウを使用する例を示す。 図25は、いくつかの実装形態による、最適な探索範囲にわたってマッチングコストを決定する例を示す。 図26は、いくつかの実装形態による、画像の領域に対して決定された選択された解像度の例を示す。 図27は、いくつかの実装形態による、例示的な解像度表を示す。 図28は、いくつかの実装形態による、動的に再構成された視差マップの例を示す。
本明細書におけるいくつかの実装形態は、車載プロセッサにかかる処理負荷を大幅に増大することなく、様々なシナリオにおいて高い深度精度で障害物、道路の異常、およびその他の特徴を検出するために使用することができる視差マップまたは視差画像を効率的かつ動的に生成するための技術および配置を対象にしている。本明細書における例は、特徴およびそれのそれぞれの距離を対応するより高い精度で検出するために使用することができる高精度の視差マップを生成することを含み得る。場合によっては、複数の車両から受信した運転者監視データおよびその他のデータから履歴マップデータベースを開発することができ、本明細書における視差マップの生成効率を向上するために使用することができる。従って、本明細書における技術は、より低いコンピューティング要件を使用して高精度な視差マップの生成を可能にし、それによりADASシステムおよびADシステムの安全性を向上する。
一例として、車両に搭載されたプロセッサは、車両の少なくとも1つのカメラから道路またはその他の移動経路を撮像する少なくとも1つの画像を受信してもよい。プロセッサはまた、例えばGPS(グローバルポジショニングシステム)情報などに基づいて、車両が移動している現在の車線を表示できる車両の現在位置の表示を含む車両位置情報も受信してもよい。プロセッサはまた、履歴データベースからの履歴情報または道路の異常データベースからの道路の異常情報のうちの少なくとも1つを受信してもよい。
プロセッサは、少なくとも1つの画像、車両の位置の表示、ならびに履歴情報および/または道路の異常情報に基づいて視差マップまたは視差画像を生成し得る。例えば、視差マップまたは視差画像は、受信した情報に基づいて動的に決定されたより高い視差密度のいくつかの領域およびより低い視差密度のいくつかの領域を有し得る。特に、潜在的な障害物、道路の異常を含むと決定された領域、または関心があるとして決定されたその他の領域は、より密な視差情報を有するように処理され、一方、視差マップまたは視差画像のその他の領域は、より低密度の視差情報、例えば、疎な視差情報を有するように処理され得る。このように、視差マップまたは視差画像の選択された部分のみ密な視差情報を有するように動的に処理し、一方、視差マップまたは視差画像の残りの部分をより低密度またはより疎な視差情報を有するように処理することによって、相当なコンピューティングリソースを節約することができる。
いくつかの実装形態では、本明細書におけるシステムは、通常の条件下でカメラの広角の視野(FOV)が、通常、路面に平行であるように車両に搭載可能な少なくとも1つのモノカメラシステムまたはステレオカメラシステムを含んでもよい。カメラのFOVは、正面の道路および路側の物体の撮像に十分広くてもよい。さらに、本明細書におけるシステムは、車両の正面の道路のみを撮像することに限定されない。例えば、いくつかの例では、カメラは、追加的に、または代替的に車両の後部および/または車両の側方に搭載されて車両周囲の全体の領域を検出してもよい。
いくつかの例では、障害物、道路の異常、およびその他の特徴を検出するための視差マップの精度が向上されている。例えば、システムが特徴および特徴までの距離を非常に精度よく検出することにより車両の安全性を大幅に向上することができる。カメラにより撮像された画像に基づいて生成される視差画像の精度を向上するために利用できる従来の技術はほとんど無い。本明細書における実装形態は、データ駆動型情報を使用してコンピューティングリソースを効率的に利用してより精度の良い視差マップを実現することができる。例えば、データ駆動型情報は、画素レベルのビット深度(画質)、最適な画像圧縮レベルと方法を選択するために、かつ/あるいは動的に視差パラメータを推定して様々な現実のシナリオの下で本明細書における向上された動的に構成可能な視差マップを生成するために使用できる。従って、本明細書におけるデータ駆動型の動的に再構成可能な視差マップの技術と配置は、車両乗員に対する安全性と快適性を向上する上で大きな利点を提供する。
いくつかの例は、受信した画像において優先領域を選択し、使用する画像圧縮方法を選択し、動的に画素のビット深度を選択し、かつ動的に視差範囲を算出するために最適な探索範囲を動的に決定するために、カメラシステムから受信した画像とネットワーク経由で受信した情報のみに依存してもよい。例えば、いくつかの実装形態は、モノのインターネット(IoT)情報を使用して、優先領域を選択し、画質を決定し、かつ視差マップを算出するために使用する画像圧縮方法を決定してもよい。
本明細書における実装形態は、履歴マップを使用して画像内の関心領域を選択することができ、かつ優先順位のより高い領域に対して密な視差情報を生成する一方で、優先順位のより高い領域の外側の領域に対してより疎な視差情報を生成するために、優先順位のより高い領域を選択することができる。従って、本明細書における実装形態は、検出された障害物、道路の異常、またはその他の特徴に基づいて優先領域を決定することに限定されず、その代わりに、履歴マップを使用して事前に視差マップの様々な領域の解像度を決定することができる。いくつかの例では、優先順位のより高い領域の決定は、モノのインターネット(IoT)情報、例えば、全て履歴マップに含まれている可能性がある、現在および過去の運転者監視システムの出力、道路の異常データベースに記憶されたかつ/あるいはリアルタイムに検出された道路の異常、ならびに現在および過去の交通の動き、方向、混雑状況などの情報にさらに基づいてもよい。
さらに、履歴マップおよび選択された優先順位のより高い領域に基づいて、適切な画素のビット深度および画質を選択することができる。さらに、履歴マップおよび選択された優先順位のより高い領域に基づいて、画像から視差マップを生成するに先立ち、適切な画像圧縮のレベルおよびアルゴリズムを選択することができる。それと共に、選択された優先順位のより高い領域に対する視差探索範囲をリアルタイムで動的に推定することができて、優先順位のより高い領域に対するより密な視差情報を効率的に生成することを可能にする。
本明細書におけるいくつかの例は、現在および将来の半自律車および完全自律車にとって、非常に精度の良い視差マップを推定し、それによって特徴および特徴の距離を高精度で検出するという大きな利点を提供することができる。例えば、本明細書における技術は、組込みプロセッサ(例えば、AD/ADAS電子制御ユニット(ECU)またはその他のタイプのECU)、汎用CPU、専用プロセッサなど、ならびに、スマートフォン、タブレットコンピューティング・デバイスなどのモバイルデバイスのプロセッサなど、様々なタイプのプロセッサを使用して実行することができる。さらに、本明細書における実装形態は、乗用車に限定されず、シャトルバス、トラック、列車、船舶など、半自律能力または完全自律能力を内蔵するあらゆる車両に適用することができる。
説明の目的で、いくつかの例示的な実装形態は、潜在的な障害物またはその他の関心のある特徴の検出および認識に基づいて動的に決定された密な視差領域を有する視差画像を生成する環境において説明されている。しかしながら、本明細書における実装形態は、提供されている特定の例に限定されず、本明細書における開示に照らして当業者にとって明らかであるように、他のタイプのカメラ、他のタイプの車両、他のタイプの道路および特徴、他の気象条件などに拡張することが可能である。
図1は、いくつかの実装形態による、車両102の周囲の認識を行うように構成された認識システム100の例を示す。本例では、車両102は、矢印106で示された方向の道路またはその他の移動経路104を移動すると仮定する。本明細書における認識システム100は、車両102に搭載できる少なくとも1つのカメラシステム108を含むことができる。図示の例では、カメラシステム108は1つ以上のカメラ110を含むことができる。本例では、カメラ110はステレオカメラを含む。他の例では、カメラシステム108は、カメラ110としてステレオカメラの代わりにあるいはそれに加えて1つ以上のモノカメラを含んでもよい。それと共に、本例において、カメラシステム108のカメラ110は車両の屋根に設置されているとして図示されているが、他の例では、カメラ110は車両102上の様々な異なる位置のいずれにも設置されてもよい。
図示の例において、カメラ110の視野(FOV)114は十分広く、車両102正面の道路またはその他の移動経路104を撮像することができ、他の車線116、他の車両118、路側の車線標識120、路側の領域122、車線標示124などを包含することができる。場合によっては、カメラシステム108は、車両102が動作中に、例えば、毎秒10フレーム、毎秒15フレーム、毎秒30フレーム、毎秒60フレーム、または、十分に大きいレートで画像を提供して、回避動作を取るあるいは認識情報に適応するために移動経路104および移動経路内のあらゆる障害物または道路の異常を遅れずに認識することを可能にするその他の任意の好ましい頻度で、FOV114に対応して画像を継続的に撮像することができる。例えば、カメラシステム108の画像撮像頻度(サンプリング頻度)は、車速の増大に伴い増加させてもよい。
車両102は、以下でさらに説明するように、1つ以上の車両コンピューティングデバイス126を含むことができる。車両コンピューティングデバイス126は、認識プログラム128および車両制御プログラム130を実行することができる。場合によっては、認識プログラム128は、カメラシステム108のカメラによって撮像された画像を受信でき、画像に対する処理を行って、1つ以上の動的に再構成された視差マップ132に基づいて車両102の現在の移動経路104の認識を行うことができる。例えば、動的に再構成された視差マップ132は、より密な視差情報を有するいくつかの関心領域とより疎な視差情報を有するその他の領域を有するように動的に再構成され得る。認識プログラム128は、検出されかつ認識された障害物、道路の異常、およびその他の特徴についての認識情報を車両制御プログラム130に提供することができ、その制御プログラムは、視差情報に基づき、例えば乗員に警報するための警告を発し、車両102を制動し、車両を加速し、車両102の1つ以上の車輪を操舵するなどの1つ以上の動作を開始することができる。
場合によっては、カメラシステム108は、認識プログラム128を実行する少なくとも1つの車両コンピューティングデバイス126を含んでもよい。他の場合には、車両コンピューティングデバイス126は、認識プログラム128を実行するために、カメラシステム108から分離されて、車両102の他の場所に設置されてもよい。いずれの場合も、車両コンピューティングデバイス126は、カメラシステム108から画像を受信することができ、画像を処理して、道路、道路の特性、道路の異常、標識、障害物、他の車両などの特徴を検出することができる。
いくつかの例では、認識プログラム128は、例えば、ステレオカメラ画像、モノカメラ画像、または複数のモノカメラから取られた画像を使用して、受信した画像から、視差マップを生成することができる。モノカメラを使用する場合、訓練された機械学習モデル(図1において図示せず)を使用して深度マップを算出することができる。例えば、最初に、単眼画像のセットおよびそれらに対応するグラウンドトゥルースパララックスマップを撮像し、機械学習モデルを訓練するために使用することができる。続いて、機械学習モデルを使用して、新しく撮像された画像に応じてパララックスマップの近似値を予測することができる。
あるいは、ステレオカメラまたは複数のカメラの場合、画像は2つ以上のカメラで撮像することができる。撮像画像を使用して、セミグローバルブロックマッチングまたは任意の他の適切な技術などの、ブロックマッチング技術を用いて、パララックスを算出することができる。パララックス情報を使用して視差マップおよび/または視差画像を生成することができる。本明細書におけるいくつかの例では、いくつかの例示的な実装形態を説明するための例示的なシステムとしてステレオカメラシステムが使用されているが、当業者は、単一のモノカメラまたは加えて複数のモノカメラを有するシステムを使用して同様の配置と技術を適用し得ることも理解するであろう。
ステレオカメラシステムでは、画像取得システムを用いて同期された左右のカメラ画像が撮像することができ、それらは設置時または好ましくない運転状態時のカメラの変位に起因する歪みを有する場合がある。さらに、歪みは、ステレオカメラに装着されたレンズに起因する場合がある。ステレオ画像が取得された後、いくつかの例では、キャリブレーションマトリックス画像修正が実行されて、歪みが除去され、2つのカメラを結ぶ線に平行な投影面上に画像を再投影することができる。これにより、左右の画像のエピポーラ線を一致させることができる。本明細書における例によれば、2台のカメラを同一平面上に位置合わせすることにより、視差マップを生成するための探索を一次元、例えば、左右のカメラ間のベースラインに平行な水平線に単純化することができる。修正されたステレオ画像により、ECUの能力に応じて、ステレオブロックマッチングアルゴリズムを使用して視差マップまたは視差画像を算出することができる。
ステレオ画像が撮像されて、キャリブレーション情報に基づいて修正された後、例えば予め定義された関心領域(ROI)を用いて、修正された画像に対してステレオマッチングを行うことができる。例えば、各画素に対する事前に定義された解像度を有する視差をブロックマッチング技術により推定することができる。これには、画像ペアの一方の画像で、他方の画像内のテンプレートに対して最もよく対応する領域を探索することが含まれ得る。テンプレートは、事前に定義された固定視差範囲内のエピポーラ線に沿ってシフトすることができる。当該プロセスは、右側の画像内の全ての画素に対して視差が推定されるまで繰り返すことができる。従来の技術では、例えばECUの処理能力に基づいて、画像全体に対して疎な視差または密な視差のいずれかを算出できる。
ステレオカメラにより撮像された画像に基づく特徴の深度推定は、ステレオカメラの左右のカメラから取得されたステレオ画像を用いて作成された視差マップの密度に依存する可能性がある。密な視差マップあるいはより高解像度の視差マップは、画像内の全ての画素に対して信頼性の高い正確な深度情報を提供する可能性がある。一方、疎な視差マップあるいはより低解像度の視差マップも、高精度の深度情報を含む場合もあるが、限られた数の画素に対してのみである。いくつかの従来のシステムでは、ステレオカメラの左右のカメラ画像に対して固定ROIを使用することができ、画像全体に対して疎な視差マップまたは密な視差マップのいずれかを算出することができる。しかしながら、固定ROIに対して密な視差マップを算出すると、計算上高価で非効率的な場合が多い可能性がある。一方、固定ROIの疎な視差マップは、精度が低い可能性があるので、全てのAD/ADASアプリケーションに適していない場合がある。
さらに、画素の品質はステレオ画像のビット深度(例えば、8ビット、10ビット、12ビット、16ビットなど)を指す場合があり、使用する画像圧縮方法も視差マップ生成の信頼性と精度に影響を及ぼす可能性がある。例えば、非可逆画像圧縮で低ビット深度の画像(例えば、8ビット)を使用すると、メモリ要件は低くなるが疎な視差マップを生成する可能性がある。一方、可逆画像圧縮方法でビット深度をより高くすると、密な視差マップを生成することができるが、これにより、メモリ要件がより高くなる可能性があり、その結果、システム全体の処理能力とメモリ能力を増大させる可能性がある。
さらに、探索範囲などの視差パラメータもまた、視差マップまたは視差画像を生成する上で考慮される場合がある。例えば、探索範囲は、所与のステレオ画像ペアにおける最小の視差値と最大の視差値を定義することができる。従来の技術では、画像全体に対するいずれかの固定探索範囲(例えば、探索範囲0~250)を使用して、様々な異なるシナリオおよび/または障害物のタイプ、道路の異常、あるいはその他の特徴を考慮せずに視差マップを算出する場合がある。これにより、処理時間が増加する結果になる可能性があり、またリアルタイムシステムでの使用に対してより高性能のプロセッサが必要になる可能性がある。
これらの問題に対処するために、本明細書におけるシステムでは、信頼性がある特徴の検出、高精度の深度推定を提供することが可能な視差マップを生成することができ、システムコストをより低くするという車両メーカーの要求に適合することができる。例えば、本明細書における実装形態では、例えば履歴データベースから得られ、履歴マップを介して決定されるデータ駆動型情報に基づいて、画像内で優先領域を動的に決定することにより視差マップまたは視差画像を生成することができる。さらに、本明細書における実装形態では、各画素に対するビット深度(例えば、画素の品質)および画像圧縮方法を決定する際に優先順位度領域を考慮して、メモリ要件を低減できるとともに、全ての障害物、道路の異常、およびその他のあらゆる予想されるシナリオにおける特徴に対する深度推定を向上することができる。
さらに、本明細書におけるいくつかの例では、例えばエッジおよび視差情報を用いて密な視差マップおよび疎な視差マップを算出するために、動的に視差パラメータを推定することができ、それによって、より低いシステム要件で深度推定を向上することができる。さらに、いくつかの例では、ステレオカメラ画像を用いて視差マップを生成かつ再構成できるが、1つ以上のモノカメラにより撮像された画像に同様の技術を適用することができる。
図2は、いくつかの実装形態による、車両102内に含めることができる認識システム200の例示的なアーキテクチャを示す。各車両コンピューティングデバイス126は、1つ以上のプロセッサ202、1つ以上のコンピュータ可読媒体204、および1つ以上の通信インターフェース206を含み得る。いくつかの例では、車両コンピューティングデバイス126は、1つ以上のECUまたは任意の他の様々なタイプのコンピューティングデバイスを含んでもよい。例えば、コンピューティングデバイス126は、重要な車両システム制御するための1つ以上のADAS/AD ECUを含み、ナビゲーション、制動、操舵、加速、減速などのADASおよび/またはADタスクを行ってもよい。コンピューティングデバイス126はまた、他の車両システムを制御するためのその他のECUを含んでもよい。
ECUは、車両内のシステム、サブシステム、またはコンポーネントの1つ以上を制御する任意の組込みシステムの包括的な語である。認識プログラム128および車両制御プログラム130などのソフトウェアは、1つ以上のECUによって実行され、それぞれECUに関連付けられているコンピュータ可読媒体204(例えば、プログラムROM)の一部に記憶されて、組込みシステムとしてECUを動作可能としてもよい。ECUは、一般的には、車両バスプロトコルに従って、車両バス208を介して互いに通信することができる。一例として、コントローラエリアネットワークバス(CANバス)プロトコルは、ECUおよび他の車両装置ならびにシステムがホストコンピュータなしで互いに通信できるようにする車両バスプロトコルである。CANバスは、少なくとも2つの異なるタイプを含んでいてもよい。例えば、高速CANは、バスが環境の一方の端から他方の端まで敷設されるアプリケーションで使用してもよく、一方、フォールトトレラントCANは、ノードのグループがまとめて接続される場合に使用されることが多い。
それぞれのECUまたは他の車両コンピューティングデバイス126は、1つ以上のプロセッサ202を含む場合があり、それらには、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、マイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、ステートマシン、論理回路の1つ以上、および/または処理命令に基づいて信号を操作する任意の装置が含まれる場合がある。一例として、プロセッサ202は、本明細書において説明するアルゴリズムおよび他のプロセスを実行するように特別にプログラムされた、あるいは構成された任意の適切なタイプの1つ以上のハードウェアプロセッサおよび/または論理回路を含んでいてもよい。プロセッサ202は、コンピュータ可読媒体204に記憶されたコンピュータ可読命令をフェッチして実行するように構成することができ、この命令は、本明細書において説明する機能を行うようにプロセッサ202をプログラムすることができる。
コンピュータ可読媒体204は、コンピュータ可読命令、データ構造、プログラム、プログラムモジュール、およびその他のコードまたはデータなどの情報を記憶するための任意のタイプの技術で実施される揮発性および不揮発性メモリならびに/あるいは取り外し可能および取り外し不能媒体を含んでいてもよい。例えば、コンピュータ可読媒体204は、限定されるものではないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、光記憶装置、ソリッドステート記憶装置、磁気ディスク、クラウドストレージ、または所望の情報を記憶するために使用でき、コンピューティングデバイスによってアクセス可能な他の任意の媒体を含んでもよい。車両コンピューティングデバイス126の構成によって、コンピュータ可読媒体204は、言及された場合、非一時的なコンピュータ可読媒体が、エネルギー、キャリア信号、電磁波および/または信号それ自体などの媒体を排除する程度まで、有形の非一時的媒体であってもよい。場合によっては、コンピュータ可読媒体204は、車両コンピューティングデバイス126と同じ場所にあってもよいし、一方、他の例では、コンピュータ可読媒体204は、例えばワイヤレスネットワークなどを介してアクセス可能な、車両コンピューティングデバイス126から部分的にリモートであってもよい。
コンピュータ可読媒体204は、プロセッサ202によって実行可能な任意の数の機能コンポーネントを記憶するために使用され得る。多くの実装形態では、これらの機能コンポーネントは、プロセッサ202により実行可能な命令またはプログラムを含み、これが実行されると、本明細書では車両コンピューティングデバイス126に起因する動作を行うように、プロセッサ202を特別にプログラムする。コンピュータ可読媒体204に記憶された機能コンポーネントは、認識プログラム128および車両制御プログラム130を含むことができ、それらプログラムの各々は、1つ以上のコンピュータプログラム、アプリケーション、実行可能なコード、またはこれらの一部を含むことができる。さらに、本例ではこれらのプログラムが一緒に図示されているが、使用中、これらのプログラムの一部またはすべては、別個の車両コンピューティングデバイス126上で実行されてもよい。
さらに、コンピュータ可読媒体204は、本明細書に記載の機能とサービスを行うために使用されるデータ、データ構造、および他の情報を記憶することができる。例えば、コンピュータ可読媒体204は、履歴マップ210、認識情報212、車両データ214、画像データ216、1つ以上の機械学習モデル(MLM)218、他のセンサデータ220などを記憶することができる。以下でさらに説明するように、認識情報212は、上述した動的に再構成された視差マップ132を含むことができる。さらに、本例ではこれらのデータおよびデータ構造は一緒に示されているが、使用中、これらのデータおよび/またはデータ構造の一部またはすべては、別個のコンピューティングデバイス126によって、または別個のコンピューティングデバイス126とともに記憶されてもよい。コンピューティングデバイス126はまた、他の機能コンポーネントおよびデータを含むかあるいは維持することもでき、これらには、プログラム、ドライバーなど、および機能コンポーネントによって使用または生成されるデータが含まれ得る。さらに、コンピューティングデバイス126は、多くの他の論理的、プログラム的、および物理的コンポーネントを含むことができ、そのうちの上述したものは、本明細書における議論に関連する単なる例示にすぎない。
上述したように、モノカメラがカメラ110として使用される場合、1つ以上の訓練された機械学習モデル218を用いて深度マップを算出することができる。例えば、最初に、単眼画像のセットおよびそれに対応するグラウンドトゥルースパララックスマップが撮像され、機械学習モデル218を訓練するために使用することができる。続いて、機械学習モデル218を使用して、新しく撮像された画像に応じてパララックスマップの近似値を予測することができる。
1つ以上の通信インターフェース206は、例えば車両バス208および/または1つ以上のネットワーク(図2で図示せず)を経由して、他の様々なデバイスとの通信を可能にするための1つ以上のソフトウェアおよびハードウェアコンポーネントを含むことができる。例えば、通信インターフェース206は、本明細書の他の場所にさらに列挙されているように、LAN、インターネット、ケーブルネットワーク、セルラーネットワーク、無線ネットワーク(例えば、Wi‐Fi)および有線ネットワーク(例えば、CAN、ファイバチャネル、光ファイバー、イーサネット)、直接接続、ならびにBLUETOOTH(登録商標)などの近距離通信などの1つ以上を経由して通信を可能にすることができる。
本例では、カメラシステム108のカメラ110は、ステレオカメラ219を含む。他の例では、カメラ110は、1つ以上のモノカメラを含んでもよい。コンピューティングデバイス126は、カメラシステム108から画像223(例えば、左画像と右画像)を受信するために、車両バス208、直接接続、または他の任意のタイプの接続を介してカメラシステム108と通信することができてもよい。例えば、以下で詳細に説明するように、認識プログラム128は、カメラシステム108から画像223を受信することができ、画像223内の特徴の認識を行うことができる。画像データ216は、カメラシステム108から受信した画像223、ならびにメタデータまたは処理された画像などの他の画像情報を含み得る。例えば、画像223の一部またはすべてが、いかなる実質的な処理もされることなく未処理の画像として受信される場合がある。代替的に、他の例では、例えば図3に関連して以下でさらに説明するように、カメラシステム108は、車両コンピューティングデバイス126に未処理の画像223を送信するのではなく、画像223の画像処理と認識を行ってもよい。
さらに、コンピューティングデバイス126は、車両内の他のシステムおよび/または他のセンサから車両データ214を受信することができる。例えば、カメラシステム108に加えて、車両は、車両制御プログラム130により使用されるセンサ情報を提供し得る複数の他のセンサ225を含んでもよい。他のセンサ225のいくつかの非網羅的な例としては、レーダ、LiDAR、超音波、グローバルポジショニングシステム(GPS)受信機、例えば、他の方向を向いた他のカメラなどが含まれ得る。さらに、車両制御プログラム130により使用される車両データ214には、例えばサスペンションシステムに関連付けられているサスペンションコントローラ224、ステアリングシステムに関連付けられているステアリングコントローラ226、制動および加速システムに関連付けられている車両速度コントローラ228など、様々な車両システムから受信される、またはそれらに関連した情報が含まれ得る。
一例として、認識プログラム128は、例えば、車両が移動している間、移動経路またはその他の車両の周囲の状況の画像223をカメラシステム108が撮像するにつれて、カメラシステム108から継続的に画像223を受信してもよい。さらに、認識プログラム128は、受信した画像223を処理して道路の異常、障害物、およびその他の特徴を認識してもよい。以下でさらに説明するように、認識情報212には、1つ以上のより密な視差領域および1つ以上のより低密度の視差領域を有する1つ以上の動的に再構成された視差マップ132が含まれ得る。
認識プログラム128は、あらゆる認識された障害物、道路の異常、他の特徴などについての認識情報212を車両制御プログラム130に提供することができ、その車両制御プログラムは、認識情報212に応じて1つ以上の行動を取ることができる。いくつかの例において、車両制御プログラム130および/または認識プログラム128は、車両を制御するための車両制御プログラム130に追加の利用できる情報を提供するために、画像223から決定された認識情報212を他のセンサデータ220と融合あるいは組み合わせかつ統合することができる。
一例として、車両制御プログラム130は、ルールベースおよび/または人工知能ベースの制御アルゴリズムを使用して車両制御のためのパラメータを決定してもよい。例えば、車両制御プログラム130は、制動、操舵、減速、加速などの適切な動作を決定するために1つ以上の機械学習モデルを適用してもよい。さらに、車両制御プログラム130は、認識情報212に応じて、1つ以上の車両システムに1つ以上の制御信号238を送信してもよい。例えば、車両制御プログラム130は、サスペンションコントローラ224、ステアリングコントローラ226、および/または車両速度コントローラ228に制御信号238を送信してもよい。例えば、制御信号238には、サスペンションコントローラ224に送信される指定されたばね係数および/またはダンピング制御情報、1つ以上の車輪を操舵するためにステアリングコントローラ226に送信される指定された操舵角、および/または車両速度コントローラ228に送信される指定された制動または加速制御情報が含まれてもよい。
さらに、または代わりに、例えば車両が人の運転者の制御下にある場合に、車両制御プログラム130は、制御信号238を表示部240に送信して警告を提示してもよく、かつ/あるいは可聴警告装置または可視警告装置など1つ以上の警告装置242に送信してもよい。警告装置242の例としては、可聴警告を生成し得るスピーカ、振動またはその他のタイプの触覚警告(例えば、シート内またはステアリングホイール内)を生成し得る触覚デバイス、および/または可視警告を生成し得る視覚信号送出装置が挙げられる。
いくつかの例では、車両には、運転者監視データ246を車両コンピューティングデバイス126に提供する運転者監視システム244が含まれてもよい。例えば、運転者監視システム244は、運転者監視データ246を車両コンピューティングデバイス126に提供するために、視線方向、頭部位置、ステアリングホイール位置、制動灯の動作、方向指示器の動作、アクセルの動作、および車両の運転者に関するその他の情報および/または車両の運転者により行われる動作を監視することができる。例えば、運転者監視データ246は、少なくとも部分的には、履歴マップ210の生成に使用するために、認識プログラム128によって受信され得る。
さらに、車両コンピューティングデバイス126は、履歴マップ210を生成するために、車両コンピューティングデバイス126に付加情報を提供できる履歴データベース250と通信状態であってもよい。例えば、履歴データベース250は、運転者監視データのデータベース252、車両ライト動作データベース254、ステアリングホイール位置データベース255、および過去および現在の交通方向と存在データベース256を含み得る。履歴データベース250内の情報は、車両が移動する各道路またはその他の移動経路上のそれぞれの位置に関連付けられた履歴を確立するために車両102からおよび複数の他の車両からも受信され得る。
さらに、車両コンピューティングデバイス126は、窪み、不規則な表面、スピードバンプなどの道路の異常についての情報を含み得る道路の異常データベース260と通信状態であってもよい。例えば、道路の異常データベース260は、多数の車両によって提供されてきた道路の異常情報を用いてコンパイルすることができ、車両が移動する各道路またはその他の移動経路上のそれぞれの位置で遭遇した道路の異常についての情報を提供することができる。さらに、上述したように、視差画像の優先順位のより高い領域を決定する際、認識プログラム212によるリアルタイムの障害物検出、道路の異常の検出、およびその他の特徴の検出もまた考慮に入れることができる。
いくつかの例では、道路の異常データベース260および/または履歴データベース250は、車両自体のコンピュータ可読媒体にローカルに記憶されてもよい。他の例では、履歴データベース250および/または道路の異常データベース260は、例えば1つ以上のネットワークコンピューティングデバイス262上のクラウド内に記憶されてもよく、ネットワーク経由でアクセス可能である。例えば、ネットワークコンピューティングデバイス262は、車両が動作している間、リアルタイムで車両コンピューティングデバイス126によりアクセスされてもよく、目的地を決定した際に目的地に移動するための情報を取得するためにアクセスされてもよい。履歴データベース250および/または道路の異常データベース260が車両102上に少なくとも部分的にローカルに記憶されている場合には、これらのデータベースは、ネットワークコンピューティングデバイス262に記憶されているプライマリデータベースから更新された情報にアクセスすることによって定期的に更新されてもよい。さらに、車両がルートをトラバースするにつれ、道路の異常、検出された特徴、検出された交通パターンなどに関する新たな情報がネットワークコンピューティングデバイスにアップロードされて、車両102およびその他の車両による将来の使用のために履歴データベース250および/または道路の異常データベース260が更新されかつ拡張されてもよい。
図3は、いくつかの実装形態による、車両102に含まれ得る認識および車両制御システム300の例示的なアーキテクチャを示す。本例では、カメラシステム108は、車両コンピューティングデバイス126とは独立して認識情報212を決定するための処理能力を有することができる。従って、カメラシステム108は、1つ以上のプロセッサ302、1つ以上のコンピュータ可読媒体304、および1つ以上の通信インターフェース306を含む。1つ以上のプロセッサ302は、図2に関連して上述したプロセッサ202のいずれか、または本明細書に記載の処理を行うための他の適切なプロセッサであってもよいし、またはそれらを含んでもよい。さらに、1つ以上のコンピュータ可読媒体304は、図2に関連して上述したコンピュータ可読媒体204のいずれか、またはその他の適切なコンピュータ可読媒体であってもよいし、またはそれらを含んでもよい。同様に、通信インターフェース306は、図2に関連して上述した通信インターフェース206のいずれか、またはその他の適切な通信インターフェースであってもよいし、またはそれらを含んでもよい。
さらに、カメラシステム108は、当技術分野で周知である、1つ以上のレンズ、1つ以上の焦点調整システム、および1つ以上の画像センサを含み得るカメラ110を含む。本例では、カメラ110は、ステレオカメラ219を含む。他の例では、カメラ110は、1つ以上のモノカメラを含んでもよい。カメラシステム108は、1つ以上のプロセッサ302上で認識プログラム128を実行し得る。従って、ステレオカメラ219は、画像223をそのFOVで撮像することができ、画像データ216の一部として、画像223をコンピュータ可読媒体304に記憶することができる。
いくつかの例では、認識プログラム128は、それぞれの画像223が撮像されるにつれ、カメラ110から画像223をコンピュータ可読媒体304内のバッファ内に継続的に受信することができる。さらに、認識プログラム128は、受信した画像223に認識処理を行うことができ、その処理は、以下にさらに詳細に説明するように、少なくとも部分的に履歴マップ210に基づく動的に再構成された視差マップ132の生成を含み得る。例えば、履歴マップ210は、以下でさらに説明するように、現在および過去の運転者監視データ246、認識プログラムにより検出されたリアルタイムの道路の異常情報、道路の異常データベース260から受信された過去の道路の異常情報、現在および過去の交通の動き、方向、およびその他の情報などの情報に基づいて生成することができる。その後、認識プログラム128は、認識情報212を車両コンピューティングデバイス126にリアルタイム(例えば、車両が移動している間で、検出された障害物、道路の異常、またはその他の特徴に応じてナビゲーション機能を実行することに対して間に合うように)で送信することができる。その後、車両制御プログラム130は、図2に関連して上述したように、かつ以下にさらに説明するように、車両を制御するために、認識情報212を処理することができる。
いくつかの例では、車両コンピューティングデバイス126は、最初に認識情報212を受信することができ、また他のセンサデータ220も受信することができる統合プログラム308を実行することができる。例えば、統合プログラム308は、認識情報212を他のセンサデータ220と比較して調和させて、車両の周囲のより包括的な指示を車両制御プログラム130に提供することができる。上述した図2の例と同様に、車両制御プログラム130は、受信した認識情報212と他のセンサデータ220に基づいて、1つ以上の車両システム224、226、228、240、および/または242に1つ以上の制御信号238を送信することができる。
さらに、上述した図2の例と同様に、認識プログラム128は、例えば運転者監視システム244、履歴データベース250、および/または道路の異常データベース260から情報を受信して、履歴マップ210を策定するための情報を受信することができる。履歴マップ210を策定して使用することのさらなる詳細については、例えば図6に関連して以下で説明する。
図4は、いくつかの実装形態による、カメラシステム108により行われる画像撮像の例400を示す。本例では、カメラシステム108は、ステレオカメラ219を含む。例えば、ステレオカメラ219は、右レンズ402および左レンズ404を含むことができる。右レンズ402は、右視野(FOV)407内で右画像406を撮像することができ、左レンズ404は、左FOV409内で左画像408を撮像することができる。図示の例では、ステレオカメラ219は、右レンズ402を通して画像を撮像するための右画像センサ410および左レンズ404を通して画像を撮像するための左画像センサ412を含む。他の例では、ステレオカメラ219は、右レンズ402および左レンズ404を通して交互に画像を撮像する単一の画像センサ(図4に図示せず)を含んでもよい。
システム(例えば、システム100、200、および/または300)は、右画像406および左画像408をそれぞれ使用して、視差画像と呼ばれるパララックス画像を決定することができる。例えば、システムは、例えばブロックマッチング方法に基づいて、ステレオの右画像406および左画像408を用いて視差画像を算出することができる。一例として、当技術分野で周知なように、左画像408内の点P=(u1、v1)の場合、右画像406内の対応する点P=(u2、v2)は、共通ベースラインから測定してv1=v2であるとき、Pと同じ高さにあり得る。こうして、パララックスの測定は、パララックスが以下のように定義され得る簡易なステレオカメラ理論を用いて決定することができる。
Figure 2024515761000002
決定されたパララックスに基づき、本明細書における実装形態では、視差は対応するパララックスに逆比例するので、パララックスから3Dの点の深度情報を決定することによって視差画像を決定することができる。従って、深度は、左画像と右画像および実際の視差を用いて、例えば以下のように算出することができる。
Figure 2024515761000003
ここで、Zはカメラの軸に沿った距離(深度)であり、fは画素内の焦点距離であり、bは単位がメートルのベースラインであり、ならびにdは画素内の視差である。
図5、8、9、16、および20の少なくとも一部は、いくつかの実装形態による例示的なアルゴリズムまたは他のプロセスを示すフロー図を含む。プロセスは、一連の動作を表す論理フロー図におけるブロックの集合として示されており、それらのうちの一部または全部は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施することができる。ソフトウェアの文脈では、ブロックは、1つ以上のコンピュータ可読媒体上に記憶されたコンピュータ実行可能な命令を表すことができ、この命令は、1つ以上のプロセッサによって実行されると、列挙された動作を行うようにプロセッサをプログラムする。一般に、コンピュータ実行可能な命令には、特定の機能を行うか、あるいは特定のデータタイプを実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。ブロックが記載されている順序は、限定するものと解釈されるべきではない。記述したブロックの任意の数を、任意の順序でおよび/または並列に組み合わせて、プロセスまたは代替プロセスを実施することができ、すべてのブロックを実行する必要はない。説明の目的で、プロセスは、本明細書における例に記載される環境、フレームワーク、およびシステムを参照して説明されているが、プロセスは、多種多様な他の環境、フレームワーク、およびシステムにおいて実施されてもよい。
図5は、いくつかの実装形態による、動的に再構成された視差マップを生成するための例示的なプロセス500を示すフロー図である。いくつかの例では、プロセス500は、認識プログラム128を実行することで、上述したシステム100、200、および/または300によって実行することができる。例えば、本明細書における視差再構成技術では、データ駆動型履歴マップ情報を用いて画像内の優先順位領域を決定することを含むことができる。さらに、システムは、処理中の画像内の様々な異なる領域に対して、画素のビット深度と使用する画像圧縮アルゴリズムを選択することができる。さらに、システムは、視差マップとエッジ情報を用いて視差の探索範囲を決定することができ、その後動的ステレオマッチング技術を適用して、画像内で特定された各領域について視差マップを生成することができる。
一例として、エンジンが始動され、目的地が決定された後、認識プログラムを実行して左右のカメラ画像の撮像を開始することができる。目的地情報に加えて車両の現在の位置を用いて、履歴マップを生成して、撮像画像内の優先順位のより高い領域を決定することができる。いくつかの例では、優先順位のより高い領域は、道路の異常データベースから受信された道路の異常情報に基づいて決定されてもよい。特定された優先順位のより高い領域および現在気象情報に基づいて、システムは、各画素についての最適な画質(ビット深度)と最適な画像圧縮アルゴリズムを決定して画像の各領域に対して使用することができる。さらに、システムは、視差の探索範囲を決定しかつステレオマッチングを行って、履歴マップおよび/または道路の異常情報に少なくとも部分的に基づいて、より密な視差情報の領域が動的に決定されている視差マップを生成することができる。生成された視差マップに少なくとも部分的に基づいて、認識を行うことができ、また車両が目的地に到着するまで追加の視差マップを繰り返し生成することができる。図5に、このプロセスの例示的なフロー図を示す。
502において、システムは、車両が発進し、目的地が指示されたと決定し得る。
504において、システムは、カメラから画像の取得を開始し得る。いくつかの例では、カメラはステレオカメラであってもよく、一方、他の例ではカメラは1つ以上のモノカメラであってもよい。
506において、システムは、現在の車線を含む車両の現在の位置を決定し得る。例えば、システムは、GPS受信機またはその他の位置表示情報にアクセスして車両の現在の位置を決定してもよい。
508において、システムは、気象情報を受信し得る。例えば、システムは、ネットワーク経由で気象情報を受信してもよいし、あるいは車両に搭載のローカルセンサから気象情報を受信してもよい。
510において、システムは、履歴マップ情報を判定し得る。履歴マップ情報を判定する例は、図6に関連して以下で説明する。
512において、システムは、ブロック514、516、および518を行うことによって、視差の再構成を決定し得る。
514において、システムは、受信した画像について領域の選択を行い得る。領域の選択を行うための例示的なアルゴリズムは、例えば図6~8に関連して以下で説明する。
516において、システムは、画質と圧縮パラメータを選択し得る。例えば、例えば図9~11に関連して以下に説明するように、システムは、領域の選択に基づいて、画像の様々な異なる領域に対して画質と使用する圧縮レベル/方法を決定してもよい。
518において、システムは、視差パラメータを推定して視差マップを生成するために使用し得る。例えば、システムは、例えば図15~19に関連して以下に説明する技術を使用して、視差情報を生成するために最適な探索範囲を決定してもよい。
520において、システムは、受信した画像に動的ステレオブロックマッチングを行って、推定した視差パラメータに基づいて、視差マップまたは視差画像を生成し得る。視差マップのいくつかの領域は、より密な視差情報で生成され、視差マップの残りの領域は、より疎な視差情報で生成されてもよい。
522において、システムは、生成された視差マップを用いて検出と認識を行い得る。
524において、システムは、目的地に到着したかどうかを判定し得る。目的地に到着していない場合は、プロセスは、504に戻ってカメラから次のペアのステレオ画像を受信することができ、目的地に到着している場合は、プロセスは、502に戻って新たな目的地が指示されるまで待つことができる。
図6は、いくつかの実装形態による、履歴マップ210を生成する例を示す。場合によっては、障害物および/または道路の異常検出を使用して、より密な視差処理のために画像のどの領域を選択するかを決定してもよい。しかしながら、障害物と道路の異常検出だけを使用する場合のいくつかの問題には、優先順位がより高い領域を生成することが望ましい理由が障害物と道路の異常だけではないことが含まれる。例えば、車両が高速道路の出口ランプまたは入口ランプに近づいている場合、これらの関心領域に対して密な視差情報を利用できることが望ましい場合がある。別の例として、検出された障害物のみが交通量が多い状況での高密度領域を決定するために使用される場合、これにより、実質的に画像全体に対して密な視差マップが生成されることとなる可能性があり、プロセッサの処理負荷が大幅に増大する恐れがある。従って、障害物と道路の異常検出だけに頼るのではなく、本明細書における実装形態では、より密な視差情報を生成するために画像内で選択する優先順位のより高い領域を決定するために、履歴マップ210を使用することができる。
図6の例において、履歴マップ210は、図2および3に関連して上述した履歴データベース250から受信した情報に少なくとも部分的に基づいて生成することができる。例えば、上述したように、履歴データベース250は、車両が現在走行している道路と同じ道路を走行した複数の車両から収集された情報から生成することができる。本例では、履歴データベース250は、運転者監視データのデータベース252、車両ライト動作データベース254、ステアリングホイール位置データベース255、ならびに過去および現在の交通方向および存在データベース256を含む。例えば、運転者監視データのデータベース252は、他の運転者が道路を走行している間に特定の時点に見ている可能性がある道路の領域を含み得る。
車両ライト動作データベース254は、他の運転者が道路上で車両を操作している間にブレーキを使用したかどうか、ならびに/あるいはターンシグナルを使用したかどうかかを示すことができる。ステアリングホイール位置データベース255は、他の運転者が道路上で車両を操作している間に特定の位置でステアリングホイールを回したかどうかを示すことができる。さらに、リアルタイムの運転者の動作もまた監視されて意思決定に使用することができる。例えば、自車両のステアリングホイールのステアリングホイールの動きおよび/または車両ライトの動作を監視でき、リアルタイムの入力として受信することもできる。過去および現在の交通方向および存在データベース256は、道路を走行している間に他の運転者によって遭遇する、交通パターン、交通の流れ、交通渋滞など、ならびに現在の交通位置を示すことができる。さらに、道路の異常データベース260は、車両102が現在走行している道路上で過去に複数の車両によって検出されたあらゆる道路の異常を示すことができる。道路の異常の例としては、窪み、スピードバンプ、他のバンプ、その他のタイプの不規則な表面などを挙げることができる。さらに、あらゆる現在検出された障害物および現在検出された道路の異常は、認識プログラムによってリアルタイムで追跡されかつ考慮に入れることができる。
さらに、履歴マップ210を生成するとき、認識プログラムはまた、車両102の運転者の現在の視線またはその他のリアルタイムの特性、ならびに現在のステアリングホイールの位置情報、現在の車両ライト動作情報などを示すことができる、車両に搭載された運転者監視システムから受信した入力を考慮に入れるように構成されてもよい。従って、認識プログラム128は、道路の異常データベース情報602、リアルタイムで検出された道路の異常情報603、現在および過去の運転者監視情報604、現在および過去の車両ライト動作情報606、現在および過去のステアリングホイール位置情報607、現在および過去の交通データ608、気象情報610、リアルタイムで追跡される障害物612、現在の位置情報614、および目的地情報616を考慮に入れることができる。このすべての情報を考慮に入れることにより、認識プログラム128は、618に示すように、視差マップを作成するために使用する領域とパラメータを算出することができる。
図7は、いくつかの実装形態による、少なくとも履歴マップに基づく領域選択700の例を示す。本例では、図4に関連して上述した左画像408および右画像406が処理のために受信されると仮定する。さらに、認識プログラムは、受信した画像のうちの少なくとも1つの中で優先領域を決定するために、図6に関連して上述した履歴マップ210から情報を入力として受信することができる。例えば、履歴データベース250の内の各データベース252、254、255、256および道路の異常データベース260は、検出され/認識された特徴のリストを対応する各特徴の位置情報とともに含んでいる。車両の現在位置に基づいて、各フレーム(すなわち、受信された各画像)について、その位置に対して各データベースの内容をアクセスすることができる。例えば、道路の異常データベース260および/またはリアルタイムの道路の異常検出によって示された道路の異常がある場合、続いて、現在の車両位置から道路の異常までの距離を決定することができる。例えば、道路の異常の大きさもまた、優先順位とともに、道路の異常データベースおよび/または認識情報から決定することができる。距離と大きさの情報は、画像座標に変換することができる。道路の異常に対応する領域は、例えば図8に関連して以下でさらに説明するように、優先レベルの値に応じてラベル付けすることができる。
図示の例において、履歴マップ情報は、現在の位置情報614、道路の異常情報602および603、過去および現在の運転者監視情報608、車両ライト動作606、ステアリングホイール位置情報607、気象情報610、追跡される障害物612、および目的地情報616を含み得る。このように、履歴マップ情報は、702で示されるような窪みの存在、704で示されるような右の視線と左側のバリア、706で示されるようなトンネルの存在、および1つ以上の追跡される車両708を示すことができる。この情報に基づいて、認識プログラムは、画像のうちの少なくとも1つの中でいくつかの優先順位のより高い領域を選択するようにシステムを構成することができる。従って、システムは、窪み712に対応する領域710を優先順位のより高い領域として選択することができる。さらに、システムは、トンネル716に対応する領域714を優先順位のより高い領域として選択することができる。さらに、システムは、追跡される車両720に対応する領域718を別の優先順位のより高い領域として選択することができる。さらに、システムは、コンクリートの道路バリア724に対応する左側の領域722を別の優先順位のより低い領域(クロスハッチングにより示されている)として選択することができ、また右側の領域726を別の優先順位のより低い領域(同様に、クロスハッチングにより示されている)として選択することができる。残っている画像の非選択領域もまた、優先順位のより低い領域として示すことができる。追加的に、本例では、優先領域710、714、および718が長方形で示されているが、本明細書における実装形態は、優先領域に関していかなる特定の形状にも限定されない。
図8は、いくつかの実装形態による、選択される領域を決定するための例示的プロセス800を示すフロー図を含む。いくつかの例では、プロセス800は、例えば認識プログラム128の実行により、上述したシステム100、200、および/または300によって実行することができる。場合によっては、プロセス800は、上述した図5のブロック514に部分的に対応することができる。
802において、システムは、領域、特徴の表示、およびその他のパラメータを履歴マップから受信し得る。
804において、システムは、例えばGPS受信機から受信した情報に基づき、車両の現在の位置を示す位置情報を受信し得る。
806において、システムは、位置情報に基づき、道路の異常データベースから情報を取得し得る。
808において、システムは、履歴マップおよび道路の異常情報で特定された様々な特徴に関する距離および寸法の情報を判定し得る。
810において、システムは、3Dから画像座標への変換を行って、車両から画像内の様々な特定された特徴までの距離を決定し得る。
812において、システムは、特定された特徴に対応する領域にラベルを付け得る。例えば、いくつかの例では、システムは、例えば特徴のタイプなどにより、領域のそれぞれにオプションとしてラベルを付けてもよい。ラベル付けを行うために、システムは、車両、小さい障害物、交通信号灯、交通標識、トンネル/低照度領域などの特徴のタイプを示すことができる優先レベル表811を参照してもよい。表811には、それそれの特徴の近接度、例えば、近辺、中間、または遠方および、各特徴と近接度に関して対応する優先レベルを10進数値、例えば1~15をさらに示してもよい。
814において、システムは、以下でさらに説明するように、画質の選択と圧縮の選択を行うために次のアルゴリズムに領域の情報を提供し得る。
図9は、いくつかの実装形態による、ビット深度と圧縮レベルを決定するための例示的なプロセス900を示すフロー図である。いくつかの例では、プロセス900は、認識プログラム128の実行によって、上述したシステム100、200、および/または300によって実行することができる。例えば、優先領域が選択された後、システムは、選択された各優先領域に対して最適なビット深度と対応する画像圧縮レベルを決定することができる。特に、カメラシステムでは、電荷結合素子(CCD)またはアクティブ画素センサ(CMOS)などの画像センサが、レンズまたはその他の光学部品を通して受光することができる。センサは、受け取った光に関する情報を電圧信号かまたはデジタル信号のいずれかで次のステージに転送することができる。例えば、CMOSセンサは、アナログデジタル変換器(ADC)を使用して、光子を電子に、次に電圧に、続いてデジタル値に変換することができる。デジタル値は、指定されたビット深度で記憶することができる。
従来、ADCにおける画素のビット深度は、事前に定義することができる(すなわち、定数)。例えば、画像全体に対してより高いビット深度(例えば、16‐ビット)が選択されるか、場合によっては画像全体に対してより低いビット深度(例えば、8‐ビット)が選択されるかのいずれかであり得る。より低いビット深度の画像ではメモリ要件がより低くなり、生成される視差マップの密度もより低くなる可能性がある。一方、より高いビット深度の画像を使用してより密な視差マップを生成できるが、各画像に対してより大きなメモリもまた必要となる。
さらに、本明細書における画像は、圧縮されてもよい。しかしながら、圧縮アルゴリズムによっては、情報が失われる可能性があり、優先順位のより高い領域に対しては望ましくない場合がある。従って、本明細書におけるシステムは、少なくとも各領域に対して示された優先レベルに基づいて、最適な圧縮レベルと対応する圧縮アルゴリズムを決定して、個々の選択領域に使用することができる。場合によっては、選択された各領域に対する最適な圧縮アルゴリズムを決定するために圧縮優先順位表を使用してもよい。
902において、システムは、選択された領域と、例えば、図8のプロセス800に基づいて決定された、対応する各選択された領域の優先順位を示す情報を受信し得る。
904において、システムは、選択された領域のうちの1つを選択して処理し得る。
906において、システムは、例えば、ビット深度優先順位表を参照することによってビット深度を決定し、処理中の選択された領域に対して使用し得る。例示的なビット深度優先順位表は、図10に関連して以下で説明する。
908において、システムは、画素レベルのアナログデジタル変換を用いて、選択された領域に対してアナログデジタル変換を行い得る。例えば図11に関連して以下で例を説明する。
910において、システムは、選択された領域に対して使用する画像圧縮レベルと対応する圧縮アルゴリズムを決定し、選択された領域の圧縮を行い得る。
912において、システムは、すべての選択された領域が圧縮されたかを判定し得る。圧縮された場合は、プロセスは912に進む。そうでない場合は、プロセスは904に戻って処理のために次の選択された領域を選択する。
914において、画像の領域のすべてが圧縮された場合、圧縮された画像を、例えば図15~22に関連して以下でさらに説明されている視差およびパララックス推定アルゴリズムに提供することができる。
図10は、いくつかの実装形態による、例示的なビット深度優先順位表1000を示す。例えば、システムは、選択された領域およびビット深度優先順位表1000を用いて各画素に対するビット深度を選択することができる。本例では、ビット深度優先順位表1000は、例えば1つ以上の現在のシナリオに基づいて、特徴のタイプおよび車両102からの特徴の距離に依存して選択された各領域のビット深度を示す情報を含む。例えば、影または低照度のシナリオ(例えば、トンネル)では、視差推定を行う上でより狭い明暗の範囲のみが利用できるため、8ビットなど、低い画素ビット深度を用いて精度の良い視差マップを生成することが極めて難しい可能性がある。これに対処するため、高い画素ビット深度(10~12ビット)の画像により明暗の範囲を追加することで、精度の良い視差マップを生成するために深い明暗および/またはハイライト表示を修正することが可能になる場合がある。
同様に、小さい障害物など、遠くにある特徴(すなわち、遠方の領域)に対しては、10ビット~12ビットなど、より高い画素ビット深度を使用してもよい。さらに、本明細書における例は8ビット、10ビット、および12ビットのビット深度を使用して説明されているが、本明細書における実装形態は、ビット深度についていかなる特定の値にも限定されることはなく、任意の様々なビット深度値を他の画素ビット深度の設定に適用することが可能である。例えば、画素ビット深度は、例えば視差精度を高め、利用可能なリソースを効率的に使用するために、ECUの能力に基づいて変更することが可能である。図10の例において、ビット深度優先順位表は、特徴のタイプ1002および遠方1006、中間1008、および近辺1010などの特徴の位置1004を含む。
図11は、いくつかの実装形態による、画素レベルアナログデジタル変換の例1100を示す。本明細書におけるいくつかの例は、画素レベルアナログデジタル変換器(ADC)を有する画像センサ1102を採用してもよい。画像センサ1102は、行と列に配置され、行セレクタ1106および列セレクタ1108と通信する複数の画素ブロック(PB)1104を含む。
画素ブロック1104の1つの拡大例の1110で示されているように、画像センサ1102内の各画素ブロック1104は、独自のADC1112を含み、アナログ信号値(例えば、電圧)をデジタル信号値に変換する。例えば、画素ブロック1104の画素1114は、光を受信し、画素1114に付随する増幅器1116は、受信した光に基づいて生成された電気信号を増幅することができる。アナログ相関二重サンプリング(CDS)回路1118は、信号を2回サンプリングし、ノイズを低減してADC1112に信号を送ることができる。
各画素1114に対する各ADC1112におけるビット深度は、受信した画素ビット深度の入力1122に基づいてマルチプレクサ1120により制御することができる。例えば、図9および10に関連して述べたように、認識プログラム128は、画像センサの各領域内の各画素に対して優先レベルを決定することができ、図10に関連して上述したビット深度優先順位表1000に基づいて、画像センサ1002内の各画素ブロック1104に対するビット深度を動的に設定することができる。従って、優先レベルが決定されている画像の領域に対応する画像センサの領域に対して、取得された次の画像が各画素に対して特定の画素レベルビット深度を有するようにビット深度が設定され得る。例えば、グレースケールのビット深度だけでなくカラーチャンネルも、例えば特徴のタイプ、距離、および位置に基づいて、動的に指定され得る。
画像の優先順位のより低い領域により低いビット深度を使用し、同じ画像の優先順位のより高い領域により高いビット深度を使用することで、優先順位のより低い領域、従って画像全体がより少ないメモリを消費することを可能にする一方、優先順位のより高い領域は、より密な視差情報を生成するための多量の画像情報をなお有する。ADC1112におけるアナログデジタル変換の後、信号はデジタルCDS1124に送られ、続いてメモリに出力することができる。すべての画素ブロック1104の値がデジタル値に変換された後、以下にさらに説明するように、画像はメモリに記憶され、選択された優先領域に基づいて、適切な画像圧縮が画像に適用され得る。
図12は、いくつかの実装形態による、異なる優先順位が割り当てられた領域に異なるビット深度が割り当てられた例示的な画像1200を示す。本例では、優先順位のより低い領域は8ビットのビット深度が割り当てられ、優先順位が中間の領域は10ビットのビット深度が割り当てられ、優先順位のより高い領域は12ビットのビット深度が割り当てられていると仮定する。さらに、画像は、割り当てられた距離、すなわち、遠方1202、中間1204、および近辺1206の表示を含む。従って、1208に示されているように、画像の優先順位のより低い領域は、第1のクロスハッチングスタイルによって示されているように、8ビットのビット深度が与えられている。さらに、1210に示されているように、画像1200の優先順位が中間の領域は、第2のクロスハッチングスタイルによって示されているように、10ビットのビット深度が与えられている。さらに、1212に示されているように、画像1200の優先順位のより高い領域は、第3のクロスハッチングスタイルによって示されているように、12ビットのビット深度が与えられている。
例えば、優先順位のより高い領域に関連付けられていると前に特定された窪み1214は、12ビットのビット深度で生成された、画像1200の一部に含まれている。さらに、本例では、相対的なビット深度として8ビット、10ビット、および12ビットが使用されているが、他の例では、優先順位の様々な異なるレベルに対して、より高いまたはより低いビット深度が使用されてもよい。従って、本明細書における実装形態は、優先順位の任意の特定のレベルに対していかなる特定のビット深度にも限定されない。
図13は、いくつかの実装形態による、例示的な圧縮優先順位表1300を示す。例えば、圧縮優先順位表1300は、特徴のタイプ1302ならびに遠方1306、中間1308、および近辺1310を含み得る特徴の位置1304を含んでもよい。それぞれの距離のレベル、遠方1306、中間1308、および近辺1310は、優先レベル1312および対応する画像圧縮品質レベル1314を含んでもよい。
特徴の例として、車両、小さい障害物、交通信号灯、交通標識、ならびに/あるいはトンネルまたはその他の低照度領域を挙げることができる。例えば、遠く離れ、従って検出することがより困難な特徴を有する画像の部分は、低非可逆または可逆圧縮アルゴリズムを用いて圧縮することができる一方で、近くにあり、従って画像内で検出することがより容易な特徴を有する画像の部分は、例えば特徴のタイプと距離に基づいて、中非可逆または非可逆圧縮アルゴリズムを用いて圧縮することができる。
圧縮アルゴリズムの例を1316に示す。例えば、可逆圧縮アルゴリズムは、PNG(ポータブルネットワークグラフィックス)可逆アルゴリズムであってもよい一方で、様々なレベルのJPEG(ジョイントフォトグラフィックエキスパートグループ)圧縮アルゴリズムを使用して低非可逆圧縮レベル、中非可逆圧縮レベル、または非可逆圧縮レベルを提供することができる。さらに、いくつかの例示的な圧縮アルゴリズムが本明細書において説明されているが、本明細書における限定は、どの特定の圧縮アルゴリズムにも限定されない。
図14は、いくつかの実装形態による、様々な圧縮レベルを使用して圧縮するために選択された様々な領域を含む例示的な画像1400を示す。一旦、画像が生成されると、画像を記憶して送信し易くするために画像圧縮が適用されてもよい。例えば、選択された圧縮のレベルによっては、画像圧縮によりデータのサイズが低減され、画質に対する制御可能な効果が得られる。一例として、色空間変換において、1色が入力されると、赤、緑、および青の成分またはYCbCr(輝度、クロミナンス青、クロミナンス赤)成分に分解されて、個別に記憶することができる。マッパーは、入力画像の画素値を画素間係数に変換することができる。量子化を使用すると、量の取りうる値の数を低減することができ、それにより量を表すのに必要なビット数を低減することができる。さらに、エントロピー符号化を使用して、量子化係数をできるだけコンパクトに表すことができる。
本明細書におけるいくつかの例では、上述した圧縮優先順位表1300を用いて画像圧縮アルゴリズムと圧縮レベルを選択することができる。例えば、圧縮優先順位表1300は、特徴のタイプ、車両から特徴までの距離、および現在の交通シナリオに基づいて画像を圧縮するために使用する圧縮アルゴリズムおよび圧縮レベルを示すことができる。
画像圧縮率は、画像および画像の色の品質に何らかの影響を与える可能性があり、次にそれが視差マップの精度に影響を及ぼす可能性がある。例えば、遠方の領域に位置する検出された特徴は、視差マップを非常に精度よく算出するために使用できる画素が非常に少ない可能性がある。従って、非可逆画像圧縮がメモリストレージを削減するために使用された場合、画質およびその後の視差情報も影響を受ける可能性がある。例えば、1402に示すように、遠方の領域にある車両が拡散し、背景に溶け込む可能性があり、不正確な視差マップが生成される可能性がある。一方、本明細書における実装形態は、画像1400のそのような領域に対して可逆画像圧縮を使用することができる一方、近距離領域のより大きな特徴、関心領域がない画像の部分に対して高い圧縮率を使用することができる。従って、圧縮優先順位表に基づいて、適切な画像圧縮レベルを選択してストレージメモリを増やすことなくシステムパフォーマンスを向上させることができる。
図14の例において、上述したように、1402で示される選択された領域Bに対して低非可逆圧縮または可逆圧縮を使用することができるとともに、窪みを含む1404で示される選択された領域Aに対しても使用することができる。さらに、別の車両を含む1406で示される選択された領域Dに対して中非可逆圧縮レベルを使用することができる。領域EおよびCを含む画像の残りに対しては非可逆の高圧縮レベルを使用することができる。
図15は、いくつかの実装形態による、最適な探索範囲を決定するための例示的なプロセス1500を示すフロー図である。画像が圧縮された後、視差マップを生成するために視差パラメータを決定することができる。視差情報は、グローバルな方法かローカルな方法のいずれかを使用して決定することができる。ローカルな方法の一例には、ブロックマッチングが含まれ、ブロックマッチングでは、プロセッサが、画像のペアの一方の画像を、そのペアの他方の画像内のテンプレートに最もよく対応する領域を求めて探索する。テンプレートは、指定された視差探索範囲内のエピポーラ線(すなわち、走査線)に沿って連続的にシフトすることができる。
視差探索範囲は、視差精度と処理負荷の双方に影響を及ぼし得るパラメータである。従来、視差探索範囲は、画像全体または事前に定義された領域に対して固定されている場合があり、交通シナリオ、検出された特徴などに関係なく一定である場合がある。例えば、事前に定義された視差探索では、近距離および中距離の特徴に関する精度の良い視差情報が得られる可能性はあるが、遠距離領域では精度が低下し、探索プロセスで良好なブロック一致を見つけられない可能性がある。
上記の問題に対する解決策を提供するために、本明細書におけるいくつかの例では、前のフレーム画像から決定される密な視差マップとエッジマップ情報を使用して、探索範囲が各選択された領域に対して動的に決定される動的で最適な探索範囲を使用することができる。この技術は、処理時間の短縮を達成するだけでなく、例えば、視差推定に対して使用できるリソースをより多く解放する。いくつかの例では、プロセス1500は、例えば認識プログラム128の実行によって、上述したシステム100、200、および/または300により実行することができ、図5のブロック518に対応することができる。
1502において、システムは、現在処理されている画像に先行した画像(例えば、フレームN‐1)のエッジマップ出力を受信し得る。例えば、前のフレームは、閾値値期間内に現在の画像より先行し得る。
1504において、システムは、現在の画像に先行した画像(例えば、フレームN‐1)の検出された特徴情報を受信し得る。
1506において、システムは、最適視差探索範囲を決定するために前の画像内の領域を選択し得る。
1508において、システムは、現在の画像に先行する画像(例えば、フレームN‐1)内の選択された領域に関する動的に密な視差マップ情報にアクセスするか、そうでなければその情報を決定し得る。
1510において、いくつかの例で、システムは、選択された視差マップ領域をダウンサンプリングし得る。
1512において、システムは、現在の画像に先行する画像のエッジマップ情報、検出された特徴情報、および密な視差マップ情報に基づいて決定された、選択された視差領域に対してヒストグラムを算出し得る。
1514において、システムは、ヒストグラムに基づいて、最小および最大の探索範囲を決定し得る。
1516において、システムは、前の画像に対して決定された最小および最大の探索範囲に基づいて、現在の画像内の選択された領域に対して最適範囲を決定し得る。
図16は、いくつかの実装形態による、画像の選択された領域に関する動的に密な視差情報を決定するための例1600を示す。例えば、図16は、少なくとも図15のブロック1502~1508に対応することができる。特に、フレームN‐1の画像の動的視差マップ1602、フレームN‐1のエッジマップ1604、およびフレームN‐1の検出された特徴情報画像1606は、1608で示されるように、フレームN‐1の画像の選択された領域内の検出された車両の視差マップを決定するために使用することができる。例えば、選択された領域は、フレームN‐1の画像1606内に示される領域1610に対応し得る。
場合によっては、フレームN‐1について、画像全体に対して固定視差範囲を選択することができ、視差マップ1602を推定することができる。次に、前の画像1606内の前に検出された特徴に関する情報に基づいて、さらに前の画像のエッジマップ1604および前の画像の視差マップに基づいて、現在の画像に対する動的な最適な探索範囲推定を行うことができる。例えば、エッジマップ1604を使用して選択された領域を微調整し、選択された領域を非常にコンパクトにすることができる。一旦、領域が選択されると、選択された領域の視差マップ1608は、場合によっては、ダウンサンプリングされてもよいが、一方、他の場合には、視差マップ1608は、ダウンサンプリングされることなく、ヒストグラムの生成のために次のステージに送られてもよい。ダウンサンプリングするかどうかに関する決定は、処理を行うプロセッサの処理能力に少なくとも部分的に依存し得る。
図17は、いくつかの実装形態による、フレームN‐1の選択された領域の視差マップからヒストグラム1700を生成する例を示す。例えば、前の画像の選択された部分であって、例えば上記の図16で決定された視差マップ1608を使用して、ヒストグラム1700を生成することができる。ヒストグラム1700は、視差範囲1702内の各視差(パララックス)値に対応する画素の数を表すことができる。ヒストグラム1700は、最適な探索範囲を決定するために使用することができ、前の画像N‐1に続く現在の画像Nに関する視差情報を判定するために使用することができる。
図18は、いくつかの実装形態による、複数の領域に対する最適な探索範囲を決定するための例1800を示す。例えば、複数のヒストグラム1700、例えば、処理中の現在の画像内の各関心領域に対して1つのヒストグラムが生成されてもよい。一旦、ヒストグラムが生成されると、最大(終了)および最小(開始)範囲を推定することができ、現在の画像1802の対応する領域に対する最適な探索範囲(OSR)であることを示すことができる。例示のヒストグラム1700において、ヒストグラムの画素数情報に基づいて、開始探索範囲1804は4であると決定され、終了探索範囲1806は40であると示される。従って、ヒストグラム1700から決定されるOSR1808は4~40であり、これはフレームN‐1に基づいている。
OSR1808は、前のフレームN‐1に関して決定された。従って、現在のフレーム(N)に対するOSRを推定するために、予測される特徴情報を使用することができる。例えば、検出された車両の相対速度がゼロより大きい場合、終了探索範囲を縮小し、あるいは検出された車両の相対速度がゼロ未満の場合、拡張することができる。本例では、検出された車両の相対速度がゼロ未満であると仮定するため、現在のフレームに対するOSRは、4~40ではなくて、4~42となる。次に、OSRは、予測される領域を使用してOSRを推定すると、図27に示すようになり、現在のフレームに対する視差マップを算出するために使用される。
同様に、画像の関心領域の残りに対して、OSRは、フレームN‐1の選択された領域に対する追加のヒストグラムを算出することに基づいて、推定することができる。選択された領域(行*列=m×n)が事前に定義された閾値「Th」より大きい場合、デフォルトの「m×n」ブロックが使用される(例えば、道路領域)。例えば、m×nはECUの能力に基づいて選択される。従って、画像1802において、領域1812は、上述したように、4~42のOSRを有すると決定される。さらに、領域1814は、1~5のOSRを有し、領域1816は、1~18のOSRを有し、領域1818は、60~80のOSRを有し、ならびに領域1820は、70~80のOSRを有する。
図19は、いくつかの実装形態による、アダプティブウィンドウベースのステレオマッチングについての例示的なプロセス1900を示すフロー図である。いくつかの例では、プロセス1100は、認識プログラム128の実行によって、上述したシステム100、200、および/または300によって実行することができる。
一旦、最適な視差探索範囲が画像内のそれぞれの関心領域に対して推定されると、次に、最良の一致を見出すために、車両コンピューティングデバイスの処理能力に応じて様々なコストメトリックスも選択することができる。一例として、差分絶対値和(SAD)の決定には、必要とされる処理時間が比較的短い可能性があるが、この技術を用いて決定される類似度測定値の精度も低い可能性がある。従って、本明細書におけるいくつかの例では、差分絶対値ゼロ平均和(ZSAD)を使用している場合があり、ZSADは、類似度マッチングに関して改良された技術であり、SADより多くの処理時間を使用する可能性があるが、SADの類似度測定値と比較してより精度の良い類似度測定値を提供することができる。
さらに、類似度測定値の全体としての精度も、使用されるマッチングウィンドウのサイズに依存する可能性がある。例えば、ブロックマッチングのために選択されたウィンドウサイズが小さすぎる場合、プロセスは、ノイズの多い視差マップを生成する可能性がある。一方、ウィンドウサイズが大きすぎる場合、結果として得られる視差マップは、例えば背景に拡散しているエッジによって、滑らかすぎる場合があり、有用な情報をほとんど提供しない。
上記の問題を克服するために、本明細書におけるいくつかの例には、新規のアダプティブウィンドウベースのZSADステレオマッチング(視差マップ)技術が含まれる。例えば、最初に、色類似度閾値とアーム長閾値を選択することができ、アーム長閾値は、選択された領域の優先順位に基づいた役割を果たすことができる。上記のパラメータを用いて、アダプティブウィンドウを、右画像および左画像に対して個別に生成することができる。次に、各領域に対して推定されたOSR範囲を用いて、ZSAD値を算出することができる。一旦、ZSADが視差最適探索範囲(OSR)全体にわたって算出されると、最小値を算出することができ、低解像度視差値として使用することができる。次に、場合によっては、所望の解像度に応じてサブ画素視差も推定することができる。
1902において、システムは、処理中の画像内で以前に選択された関心領域に関して、選択された領域の情報を受信し得る。
1904において、システムは、アーム長閾値および色類似度閾値それぞれに基づいて、アーム長および色類似度の推定を行い得る。
1906において、システムは、選択された領域に対してアダプティブウィンドウパラメータを選択し得る。
1908において、システムは、アダプティブウィンドウを生成し得る。
1910において、システムは、推定された視差パラメータを受信し得る。
1912において、システムは、マッチングコストを推定し得る。
1914において、システムは、視差値、いくつかの例では、サブ画素視差推定値を選択し得る。
図20は、いくつかの実装形態による、例示的なマッチングウィンドウサイズ表2000を示す。例えば図5~8に関連して上述した領域選択プロセスに基づいて優先領域が決定された後、例えば特徴のタイプと特徴の距離に基づいて、マッチングウィンドウのアーム長閾値(ウィンドウサイズ)を選択することができる。例えば、マッチングウィンドウサイズ表2000を使用して適切なマッチングウィンドウサイズを選択してもよい。本例では、マッチングウィンドウサイズ表2000は、遠方2008、中間2010、および近辺2012などの様々な異なる距離の特徴のタイプ2002、特徴の位置2004、および水平方向のマッチングウィンドウサイズ2008を含む。
図21は、いくつかの実装形態による、例示的な色差閾値表2100を示す。本例では、例えば図5~8に関連して上述した領域選択プロセスに基づいて優先領域が決定された後、色差閾値表2100を用いて、特徴の位置に基づいてなど、マッチングウィンドウの形状を決定することができる。本例では、色差閾値表2100は、色差最大および最小2102、遠方2106、中間2108、または近辺2110などの特徴の位置を含み得る。各位置に対して、最小値2112と最大値2114を指定することができる。
図22は、いくつかの実装形態による、アダプティブウィンドウ2202の例2200を示す。例えば、アダプティブウィンドウ2202は、アダプティブウィンドウ2202に含まれるあるいはアダプティブウィンドウ2202から除外される画素に基づいて定義することができる。例えば、複数の画素2204が与えられると、アダプティブウィンドウは、それぞれがアーム長を有する水平アーム2206と垂直アーム2208を有し得る。アダプティブウィンドウ2202は、アダプティブウィンドウ2202内に含まれる画素の境界に対応する境界2210をさらに含む。例えば、水平アーム2206のサイズは、水平方向のpからpまでの多数の画素に基づいて定義することができ、垂直アームは同様に定義することができる。場合によっては、複数の画素2204は、ブロックマッチングウィンドウの指定されたサイズに相当する場合がある一方で、アダプティブウィンドウ2202は、ブロックマッチングウィンドウ内で定義することができる。
図23は、いくつかの実装形態による、アダプティブウィンドウ生成の例2300を示す。本例は、2302のマトリックス形式でマッチングウィンドウを生成している概略図および画像2304内のいくつかの異なる位置にあるいくつかの例示的なアダプティブウィンドウ2306(1)、2306(2)、および2306(3)を有する対応する画像2304を示す。例えば、マトリックス2302で表されたマッチングウィンドウ2308は、いくつかの例では、マトリックス2302内の値がグレーレベルまたは強度値を表す高さ9画素×幅11画素の大きさとすることができる。場合によっては、算出を簡略化するために、マッチングウィンドウの垂直の寸法は固定されてもよい。しかしながら、他の例では、垂直の寸法は、水平ウィンドウのサイズを算出するために使用されるのと同じ手順を用いて可変とすることもできる。例えば、図19~21に関連して上述したように、一旦、ウィンドウサイズと色差閾値が選択されると、以下のように数式(3)、(4)および(5)を用いて、左画像など、画像ペアのうちの一方の画像に対して適応形状と適応サイズを有するアダプティブウィンドウ2310を推定することができる。
Figure 2024515761000004
Figure 2024515761000005
Figure 2024515761000006
ここで、
は、考慮される画素のグレースケール値または色値(右および左)、
とTは、色差閾値、
は、考慮される画素のスペース(右および左)、および
とLは、スペース差閾値である。
2312で示すように、考慮中の画素(視差を算出する必要がある画素)がnth列およびmth行に位置している。上記の数式を使用して、mth行の水平アーム(例えば、左側および右側)長を算出することができる。例えば、考慮中の各画素は、隣接する画素と比較することができる。すべての数式が真である場合、アーム長を長くすることができる。このプロセスは、各行が数式(3)、数式(4)、および数式(5)を満たす限り、上下両方向の各行について繰り返すことができる。
図24は、いくつかの実装形態による、ZSAD値を決定するためにアダプティブウィンドウを使用する例2400を示す。本例では、ZSADは、類似度またはマッチングコストを測定するためのサンプルコストメトリック技術として使用することができる。追加的に、または代替的に、他のマッチングコスト技術を適用してもよい。固定サイズのマッチングウィンドウが使用される従来のシステムとは異なり、状況やAD/ADASアプリケーションに関係なく、本明細書におけるいくつかの例では、上述したアダプティブウィンドウは、マッチングコストを推定するために使用することができる。
一例として、アダプティブウィンドウが算出された後、同じアダプティブウィンドウを左画像と右画像の両方に対して使用することができ、推定されたOSRに到達するまで以下の数式(6)を使用してZSAD値を算出することができる。
Figure 2024515761000007
ここで、I′Right、I′Leftはそれぞれ右画像および左画像の値を指し、uおよびvは、例えば、図4の数式(1)および数式(2)に関連して上述したように、画素の位置を示す。
このように、図示の例において、左画像2402は、9×11マトリックスとして表されるマッチングウィンドウ2404に対応し、同じシーンの右画像2406は、別の9×11マトリックスとして表されるマッチングウィンドウ2408に対応し得る。参照ブロック2412に対応するアダプティブウィンドウ2410は、例えば、上述したように、最適な探索範囲2416内の視差情報を決定するための走査線2414に沿ったブロックマッチングに使用することができる。例えば、アダプティブブロック2410はマトリックス2404内の画素に対応し得る一方、参照ブロック2412はマトリックス2408内の画素に対応し得る。
図25は、いくつかの実装形態による、最適な探索範囲にわたってマッチングコストを決定する例2500を示す。本例では、最適な探索範囲にわたってZSAD値が算出された後、最小値を推定することができ、最適な探索範囲の疎な視差値として使用することができる。例えば、2502と2504でそれぞれ示されているように、最適な探索範囲の最小値が4で、最大値が42であると仮定する。例えば、上述したように、最適な探索範囲にわたって複数のZSAD値2506を算出することができる。本例では、2508で示される値が、探索範囲にわたって計算された最も小さい値、すなわち、本例ではC2であり、C1とC3は隣接する値であると仮定する。従って、最小ZSAD値2508は最小マッチングコスト値を示し得る。
図26は、いくつかの実装形態による、画像2600内の領域に対して決定された選択された解像度の例を示す。本例では、最小マッチング値が決定された後、解像度に応じて、サブ画素情報も数式(7)を用いて算出することができる。
Figure 2024515761000008
ここで、C2は、最小ZSAD値の位置、すなわち、D2であり、C1とC3は、C2の隣接する値である。
いくつかの例では、視差マップの解像度は、図27に関連して以下で述べるような、特徴のタイプと距離に対して指定された解像度を含む視差解像度表を用いて、例えば図5~8に関連して上記で選択された領域A~Eに対して選択することができる。一旦、解像度が選択されると、視差マップは、マッチングウィンドウサイズ、色差閾値、最適な探索範囲、およびマッチングコスト手法(例えば、アダプティブウィンドウを用いるZSADまたはSAD)など、上述した推定された視差パラメータを使用して算出することができる。
本例では、各選択された領域A~Eの選択された視差解像度が2602に示されている。例えば、領域Aと領域Bは、優先順位がより高い領域として、1×1画素の密な視差を有し、領域Eは、1/4ダウンサンプリングされた疎な視差を有し、領域Cと領域Dは、中間の1/2ダウンサンプリングされた疎な視差を有する。
図27は、いくつかの実装形態による、例示的な視差解像度表2700を示す。例えば、視差解像度表2700は、画像の選択された領域のそれぞれに適用する視差解像度を決定するために、認識プログラム128により参照され得る。本例では、視差解像度表2700は、特徴のタイプ2702、特徴の位置2704、および視差解像度2706を含み、遠方2708、中間2710、および近辺2712などの様々な異なる距離に適用される。
図28は、いくつかの実装形態による、例示的な動的に再構成された視差マップまたは視差画像2800を示す。本例では、システムは、上述した技術に基づいてリアルタイムで決定された、より密な視差領域とより低密度の視差領域を含む視差マップまたは視差画像を生成することができる。例えば、システムは、優先順位のより高い領域(例えば、本例の領域Aおよび領域B)に対してのみより密な視差情報を算出することができるのに対して、より低い優先順位を有する他の領域では、視差情報がより低い密度(より低い解像度)で算出される可能性がある。
本例では、それぞれの選択された領域A~Eに対する視差解像度が2802に示されている。例えば、領域Aと領域Bは、優先順位のより高い領域として、1×1画素の密な視差を有する一方、領域Eは、1/4ダウンサンプリングされた疎な視差を有し、領域Cと領域Dは、中間の1/2ダウンサンプリングされた疎な視差を有する。従って、本明細書における実装形態では、優先順位がより高い位置でより高精度の認識を提供することができる一方、そうするために必要な処理リソースの量を削減することができる。
生成された動的に再構成された視差マップ2800は、障害物およびその他の特徴、ならびに特徴のそれぞれの距離および/または位置を検出するために使用することができる。検出された情報およびあらゆる結果は、図2および3に関連して上述したネットワークコンピューティングデバイス262など、ネットワーク上のストレージの場所にアップロードすることができ、履歴データのデータベースおよび/または道路の異常データベースを更新するために使用することができる。この更新された情報は、当該車両およびその他の車両が今後の履歴マップで引き続き使用することができる。
本明細書に記載の例示的なプロセスは、単に議論の目的で提供されるプロセス例にすぎない。本明細書の開示に照らすと、当業者には、多数の他の変形形態が明らかであろう。さらに、本明細書の開示は、プロセスを実行するための適切なフレームワーク、アーキテクチャおよび環境のいくつかの例を記載しているが、本明細書の実装形態は、図示および説明された特定の例に限定されない。さらに、本開示は、記載されるように、また図面に示されるように、様々な例示的な実装形態を提供する。しかしながら、本開示は、本明細書に記載および図示された実装形態に限定されず、当業者に知られているように、または当業者が知ることになるように、他の実装形態に拡張することができる。
本明細書で説明される様々な命令、プロセス、および技術は、例えば、コンピュータ可読媒体に記憶され、本明細書のプロセッサによって実行されるコンピュータプログラムおよびアプリケーションといった、コンピュータ実行可能な命令の一般的な文脈で考慮され得る。一般に、プログラムおよびアプリケーションという用語は同義で使用されてもよく、特定のタスクを実行するため、または特定のデータタイプを実装するための命令、ルーチン、モジュール、オブジェクト、コンポーネント、データ構造、実行可能コードなどを含んでもよい。これらのプログラム、アプリケーションなどは、ネイティブコードとして実行されてもよいし、仮想マシーンまたは他のジャストインタイムコンパイル実行環境などで、ダウンロードおよび実行されてもよい。通常、プログラムおよびアプリケーションの機能は、様々な実装形態において所望に応じて組み合わされてもよいし、または分散されてもよい。これらのプログラム、アプリケーション、および技術の実装は、コンピュータ記憶媒体に記憶されてもよいし、または何らかの形態の通信媒体を介して送信されてもよい。
主題は、構造的特徴および/または方法論的動作に特有の言語で記載されているが、添付の特許請求の範囲で定義される主題は、記載された特定の特徴または動作に必ずしも限定されないことを理解されたい。むしろ、特定の特徴および動作は、特許請求の範囲を実施する例示的な形態として開示されている。

Claims (20)

  1. 実行可能な命令によって、処理を行うように構成されている1つ以上のプロセッサを備え、
    前記処理は、
    前記1つ以上のプロセッサによって、車両の少なくとも1つのカメラから、道路を含む少なくとも1つの画像を受信すること、
    前記1つ以上のプロセッサによって、前記車両の位置の表示を含む車両位置情報を受信すること、
    前記1つ以上のプロセッサによって、履歴データベースからの履歴情報、または道路の異常データベースもしくは検出された道路の異常情報のうちの少なくとも1つから決定される道路の異常情報のうちの少なくとも1つを受信すること、および
    前記1つ以上のプロセッサによって、前記少なくとも1つの画像、前記車両の位置の表示、および前記履歴情報または前記道路の異常情報のうちの少なくとも1つに基づいて、視差マップまたは視差画像のうちの少なくとも1つを生成することを含むシステム。
  2. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域のビット深度を前記少なくとも1つの優先順位のより低い領域のビット深度より高くすることをさらに含む、請求項1に記載のシステム。
  3. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより低い領域を圧縮するために使用される圧縮率よりも低い圧縮率で前記少なくとも1つの優先順位のより高い領域を圧縮することをさらに含む、請求項1に記載のシステム。
  4. 前記処理は、前の画像からの視差マップまたは前記前の画像からの視差画像、および前記前の画像のエッジマップのうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像に先立って受信したフレームの前記前の画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、
    前記少なくとも1つの優先順位のより高い領域と前記少なくとも1つの優先順位のより低い領域とに対するヒストグラムを決定すること、および
    前記ヒストグラムに少なくとも部分的に基づいて、前記少なくとも1つの画像を探索するための探索範囲を決定することをさらに含む、請求項1に記載のシステム。
  5. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域に第1の視差解像度を適用し、前記少なくとも1つの優先順位のより低い領域に第2の異なる視差解像度を適用することによって前記少なくとも1つの画像に対する視差情報を決定することをさらに含む、請求項1に記載のシステム。
  6. 前記処理は、視差情報を決定するためにブロックマッチングに使用するアダプティブウィンドウを決定することをさらに含み、
    前記アダプティブウィンドウを決定することは、前記アダプティブウィンドウ内の画素のグレースケール値または色値のうちの少なくとも1つを、隣接する画素のグレースケール値または色値のうちの少なくとも1つとそれぞれ比較することに少なくとも部分的に基づく、請求項1に記載のシステム。
  7. 前記処理は、認識情報を決定するために前記視差マップまたは前記視差画像のうちの少なくとも1つ内の1つ以上の特徴の認識を行うこと、および
    前記認識情報に基づいて少なくとも1つの制御信号を送信することをさらに含み、
    前記少なくとも1つの制御信号は、
    車両を加速または減速させるために前記車両を制御するための命令、
    前記車両に前記車両のホイールを操舵させるために前記車両を制御するための命令、または
    警告を提示させるための命令のうちの少なくとも1つを含む、請求項1に記載のシステム。
  8. 1つ以上のプロセッサによって、車両の少なくとも1つのカメラから、道路を含む少なくとも1つの画像を受信すること、
    前記1つ以上のプロセッサによって、前記車両の位置の表示を含む車両位置情報を受信すること、
    前記1つ以上のプロセッサによって、履歴データベースからの履歴情報、または道路の異常データベースもしくは検出された道路の異常情報のうちの少なくとも1つから決定される道路の異常情報のうちの少なくとも1つを受信すること、および
    前記1つ以上のプロセッサによって、前記少なくとも1つの画像、前記車両の位置の表示、および前記履歴情報または前記道路の異常情報のうちの少なくとも1つに基づいて、視差マップまたは視差画像のうちの少なくとも1つを生成することを備える方法。
  9. 前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域のビット深度を前記少なくとも1つの優先順位のより低い領域のビット深度より高くすることをさらに備える、請求項8に記載の方法。
  10. 前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより低い領域を圧縮するために使用される圧縮率よりも低い圧縮率で前記少なくとも1つの優先順位のより高い領域を圧縮することをさらに備える、請求項8に記載の方法。
  11. 前の画像からの視差マップまたは前記前の画像からの視差画像、および前記前の画像のエッジマップのうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像に先立って受信したフレームの前記前の画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、
    前記少なくとも1つの優先順位のより高い領域と前記少なくとも1つの優先順位のより低い領域とに対するヒストグラムを決定すること、および
    前記ヒストグラムに少なくとも部分的に基づいて、前記少なくとも1つの画像を探索するための探索範囲を決定することをさらに備える、請求項8に記載の方法。
  12. 前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域に第1の視差解像度を適用し、前記少なくとも1つの優先順位のより低い領域に第2の異なる視差解像度を適用することによって前記少なくとも1つの画像に対する視差情報を決定することをさらに備える、請求項8に記載の方法。
  13. 視差情報を決定するためにブロックマッチングに使用するアダプティブウィンドウを決定することをさらに備え、
    前記アダプティブウィンドウを決定することは、前記アダプティブウィンドウ内の画素のグレースケール値または色値のうちの少なくとも1つを、隣接する画素のグレースケール値または色値のうちの少なくとも1つとそれぞれ比較することに少なくとも部分的に基づく、請求項8に記載の方法。
  14. 前記視差マップまたは前記視差画像のうちの少なくとも1つを生成することは、前記履歴情報に少なくとも基づき、前記履歴情報は、現在の検知された運転者の監視情報、過去の運転者の監視情報、現在の車両ライトの動作、過去の車両ライトの動作、過去のステアリングホイール位置情報、現在のステアリングホイール位置情報、過去の交通情報、または現在の交通情報のうちの少なくとも1つを含む、請求項8に記載の方法。
  15. 1つ以上のプロセッサが処理を実行するように構成するために前記1つ以上のプロセッサによって実行可能な命令を記憶する1つ以上の非一時的なコンピュータ可読媒体であって、
    前記処理は、車両の少なくとも1つのカメラから、道路を含む少なくとも1つの画像を受信すること、
    前記車両の位置の表示を含む車両位置情報を受信すること、
    履歴データベースからの履歴情報、または道路の異常データベースもしくは検出された道路の異常情報のうちの少なくとも1つから決定され、道路の異常データベースからの道路の異常情報のうちの少なくとも1つを受信すること、および
    前記少なくとも1つの画像、前記車両の位置の表示、および前記履歴情報または前記道路の異常情報のうちの少なくとも1つに基づいて、視差マップまたは視差画像のうちの少なくとも1つを生成することを含む、1つ以上の非一時的なコンピュータ可読媒体。
  16. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域のビット深度を前記少なくとも1つの優先順位のより低い領域のビット深度より高くすることをさらに含む、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
  17. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とに前記画像をセグメント化すること、および
    前記少なくとも1つの優先順位のより低い領域を圧縮するために使用される圧縮率よりも低い圧縮率で前記少なくとも1つの優先順位のより高い領域を圧縮することをさらに含む、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
  18. 前記処理は、前の画像からの視差マップまたは前記前の画像からの視差画像、および前記前の画像のエッジマップのうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像に先立って受信したフレームの前記前の画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、
    前記少なくとも1つの優先順位のより高い領域と前記少なくとも1つの優先順位のより低い領域とに対するヒストグラムを決定すること、および
    前記ヒストグラムに少なくとも部分的に基づいて、前記少なくとも1つの画像を探索するための探索範囲を決定することをさらに含む、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
  19. 前記処理は、前記履歴情報または前記道路の異常情報のうちの少なくとも1つに少なくとも部分的に基づいて、前記少なくとも1つの画像を少なくとも1つの優先順位のより高い領域と少なくとも1つの優先順位のより低い領域とにセグメント化すること、および
    前記少なくとも1つの優先順位のより高い領域に第1の視差解像度を適用し、前記少なくとも1つの優先順位のより低い領域に第2の異なる視差解像度を適用することによって前記少なくとも1つの画像に対する視差情報を決定することをさらに含む、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
  20. 前記処理は、視差情報を決定するためにブロックマッチングに使用するアダプティブウィンドウを決定することをさらに含み、
    前記アダプティブウィンドウを決定することは、前記アダプティブウィンドウ内の画素のグレースケール値または色値のうちの少なくとも1つを、隣接する画素のグレースケール値または色値のうちの少なくとも1つとそれぞれ比較することに少なくとも部分的に基づく、請求項15に記載の1つ以上の非一時的なコンピュータ可読媒体。
JP2023565484A 2021-04-29 2022-02-18 データ駆動型の動的に再構成された視差マップ Pending JP2024515761A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/243,617 US11790665B2 (en) 2021-04-29 2021-04-29 Data driven dynamically reconfigured disparity map
US17/243,617 2021-04-29
PCT/JP2022/006774 WO2022230319A1 (en) 2021-04-29 2022-02-18 Data driven dynamically reconfigured disparity map

Publications (1)

Publication Number Publication Date
JP2024515761A true JP2024515761A (ja) 2024-04-10

Family

ID=83807627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023565484A Pending JP2024515761A (ja) 2021-04-29 2022-02-18 データ駆動型の動的に再構成された視差マップ

Country Status (4)

Country Link
US (1) US11790665B2 (ja)
JP (1) JP2024515761A (ja)
DE (1) DE112022001197T5 (ja)
WO (1) WO2022230319A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230063224A1 (en) * 2021-08-24 2023-03-02 Infineon Technologies Ag Adaptive compression for radar data
JP2024011733A (ja) * 2022-07-15 2024-01-25 株式会社Subaru 車両の配光制御装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4297501B2 (ja) * 2004-08-11 2009-07-15 国立大学法人東京工業大学 移動体周辺監視装置
JP5172314B2 (ja) 2007-12-14 2013-03-27 日立オートモティブシステムズ株式会社 ステレオカメラ装置
JP5468426B2 (ja) 2010-03-12 2014-04-09 日立オートモティブシステムズ株式会社 ステレオカメラ装置
JP5837484B2 (ja) 2010-05-26 2015-12-24 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像情報処理装置
US8867790B2 (en) 2010-08-03 2014-10-21 Panasonic Corporation Object detection device, object detection method, and program
JP6197291B2 (ja) 2012-03-21 2017-09-20 株式会社リコー 複眼カメラ装置、及びそれを備えた車両
CN105335955B (zh) * 2014-07-17 2018-04-10 株式会社理光 对象检测方法和对象检测装置
US9600894B2 (en) * 2015-04-07 2017-03-21 Toshiba Tec Kabushiki Kaisha Image processing apparatus and computer-readable storage medium
US9672446B1 (en) * 2016-05-06 2017-06-06 Uber Technologies, Inc. Object detection for an autonomous vehicle
DE112018007484T5 (de) * 2018-04-16 2021-02-25 Mitsubishi Electric Corporation Hindernis-Detektionsvorrichtung, automatische Bremsvorrichtung unter Verwendung einer Hindernis-Detektionsvorrichtung, Hindernis-Detektionsverfahren und automatisches Bremsverfahren unter Verwendung eines Hindernis-Detektionsverfahrens
DK180657B1 (en) * 2018-08-02 2021-11-11 Motional Ad Llc REMOTE CONTROL OF AUTONOMIC VEHICLES
US10904706B2 (en) * 2019-04-10 2021-01-26 Here Global B.V. Method and apparatus for providing contextual content for an end-to-end seamless experience during an autonomous vehicle trip
US11112791B2 (en) * 2019-05-02 2021-09-07 Valeo Schalter Und Sensoren Gmbh Selective compression of image data during teleoperation of a vehicle
JP2022532695A (ja) * 2019-05-24 2022-07-19 モービルアイ ビジョン テクノロジーズ リミテッド 画像分析に基づく車両ナビゲーションのためのシステム及び方法
EP3937491B1 (en) * 2020-07-07 2024-09-11 Vay Technology GmbH Optimizing video encoding for remote driving applications

Also Published As

Publication number Publication date
US20220350995A1 (en) 2022-11-03
DE112022001197T5 (de) 2023-12-21
US11790665B2 (en) 2023-10-17
WO2022230319A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
US20240304003A1 (en) Predicting three-dimensional features for autonomous driving
US11748620B2 (en) Generating ground truth for machine learning from time series elements
CN109117709B (zh) 用于自动驾驶车辆的碰撞避免系统
CN108574929B (zh) 用于自主驾驶系统中的车载环境中的联网场景再现和增强的方法和设备
JP2019096072A (ja) 物体検出装置、物体検出方法およびプログラム
CN109145798B (zh) 一种驾驶场景目标识别与可行驶区域分割集成方法
US11436839B2 (en) Systems and methods of detecting moving obstacles
JP6601506B2 (ja) 画像処理装置、物体認識装置、機器制御システム、画像処理方法、画像処理プログラム及び車両
JP2024515761A (ja) データ駆動型の動的に再構成された視差マップ
CN110895821A (zh) 图像处理装置、存储有图像处理程序的存储介质及驾驶支援系统
JP2019128153A (ja) 距離算出装置及び車両制御装置
CN113705272A (zh) 可行驶区域检测方法、装置、设备及存储介质
JP6891082B2 (ja) 物体距離検出装置
CN115908869A (zh) 用于对准图像帧的系统、方法和装置
US20240291993A1 (en) Rule-based digitized image compression
US20230419080A1 (en) Method for training artificial neural network to predict future trajectories of various types of moving objects for autonomous driving
AU2020216128B2 (en) Predicting three-dimensional features for autonomous driving
CN110298793B (zh) 车外环境识别装置
KR20240116480A (ko) 센서 노출 모드 컨트롤 및 센서 노출 모드 제어 방법
CN113569765A (zh) 基于智能网联汽车的交通场景实例分割方法及装置
CN117341568A (zh) 用于检测恶劣天气条件下自动驾驶车辆位置变化的装置
CN116246235A (zh) 基于行泊一体的目标检测方法、装置、电子设备和介质
JP2018106313A (ja) 移動体用画像変換装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231025