WO2025211129A1 - 学習システム及び学習方法 - Google Patents
学習システム及び学習方法Info
- Publication number
- WO2025211129A1 WO2025211129A1 PCT/JP2025/009758 JP2025009758W WO2025211129A1 WO 2025211129 A1 WO2025211129 A1 WO 2025211129A1 JP 2025009758 W JP2025009758 W JP 2025009758W WO 2025211129 A1 WO2025211129 A1 WO 2025211129A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- learning
- disparity
- common imaging
- model
- calculation model
- 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
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C3/00—Measuring distances in line of sight; Optical rangefinders
- G01C3/02—Details
- G01C3/06—Use of electric means to obtain final indication
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
Definitions
- the present invention relates to a learning system and method for learning a disparity inference model that infers the disparity of a common imaging area in an image processing device that measures the distance to a detection target in the common imaging area of multiple imaging devices.
- multi-camera systems in which multiple imaging devices (cameras) are installed on a moving object have been developed for autonomous driving and driver assistance technologies.
- cameras that share a common field of view can perform stereo distance measurement, allowing accurate estimation of the distance to an object.
- Stereo distance measurement calculates the parallax, which is the difference in the position at which the same object is captured by two cameras (right and left cameras) that share a common field of view. Because parallax differs depending on the depth, the distance to the detected object can be calculated from the calculated parallax.
- disparity was calculated by using rule-based processing to calculate the similarity of each local area between images captured by left and right cameras (left image and right image).
- CNN Convolutional Neural Network
- learning-based methods have been developed.
- a disparity calculation model also called a disparity inference model
- is trained using multiple captured images and distance data that serves as the correct value see, for example, Patent Document 1.
- Patent Document 1 states, "True depth can be obtained using a 3D sensor such as LiDAR (Laser Imaging Detection and Ranging)," conventional learning-based methods use distance sensors such as LiDAR to create correct distance data.
- LiDAR generally has a low point density, and learning accuracy decreases in areas with low point density.
- Additional disparity information created by methods other than LiDAR.
- additional disparity information include disparity calculated using a rule-based method, disparity calculated from the results of feature point matching, and other disparity information obtained by methods other than LiDAR. It is also possible to use disparity calculated in another common imaging area (also called an overlapping imaging area) (such as rule-based disparity calculation, feature point matching, or a disparity calculation model).
- the present invention was made in consideration of the above circumstances, and aims to provide a learning system and learning method that can increase the accuracy of the correct disparity values used in learning and improve the learning accuracy of the disparity calculation model.
- the learning system of the present invention is a learning system that includes an on-board information processing device mounted on a vehicle equipped with multiple cameras having a common imaging area with at least partial overlapping fields of view, and a server device that communicates with the on-board information processing device, and is equipped with an image acquisition unit that acquires images captured by the multiple cameras, a learning policy determination unit that determines the execution order of learning a disparity calculation model for the multiple common imaging areas, and a disparity calculation model learning unit that inputs images acquired from the multiple cameras having the common imaging area to be learned into the disparity calculation model according to the determined execution order, and learns the disparity calculation model from the difference between the obtained disparity and ground truth data, and the ground truth data includes disparity information for a common imaging area that is assigned in the execution order earlier than the common imaging area to be learned.
- the learning method of the present invention is a computer-executed learning method that includes the steps of acquiring images captured by multiple cameras having a common imaging area with at least a partial overlap of their fields of view, determining an execution order for learning a disparity inference model that infers parallax using the images for each of the multiple common imaging areas, and inputting images acquired from the multiple cameras having the common imaging area to be learned into the disparity inference model according to the determined execution order, and learning the disparity inference model from the difference between the obtained disparity and ground truth data, wherein the ground truth data includes disparity information for a common imaging area that is assigned in an execution order earlier than the common imaging area to be learned.
- the disparity calculation model is trained in an ordered manner for multiple common imaging areas.
- the accuracy of the correct disparity values used for training can be increased, thereby improving the training accuracy of the disparity calculation model.
- FIG. 10 is a diagram illustrating learning of a disparity calculation model.
- 10A and 10B are diagrams illustrating additional parallax information, in which (a) is additional parallax information obtained using parallax information (such as rule-based parallax) acquired without using a ranging sensor, (b) is additional parallax information obtained using feature point matching, and (c) is an explanatory diagram illustrating additional parallax information obtained using parallax calculated in another common imaging area.
- 10A and 10B are diagrams illustrating the accuracy of additional parallax information in the second common imaging region and the third common imaging region, respectively.
- 10A and 10B are diagrams illustrating changes in shape when the same object is imaged with different cameras. 10 shows a processing flow of the learning policy determination unit 200.
- FIG. 10 is a block diagram showing an example of the configuration of a learning system according to a second embodiment of the present invention.
- Example 1 1 shows a configuration diagram of an image processing device 1 according to a first embodiment of the present invention.
- the image processing device 1 of the first embodiment includes a data storage unit 100, a learning policy determination unit 200, and a disparity calculation model learning unit 300.
- the image processing device 1 is configured by a computer capable of acquiring data from a vehicle equipped with a multi-camera system.
- FIG. 2 shows a hardware configuration diagram of the image processing device 1 according to Example 1.
- the image processing device 1 includes a processor 91, a storage device 92, an input device 93, an output device 94, and a communication interface (communication IF) 95.
- the processor 91, the storage device 92, the input device 93, the output device 94, and the communication interface (communication IF) 95 are connected via a bus 96.
- the processor 91 controls the image processing device 1.
- the storage device 92 serves as the working area for the processor 91.
- the storage device 92 is a volatile or non-volatile recording medium that stores various programs and data, such as ROM (Read Only Memory), RAM (Random Access Memory), HDD (Hard Disk Drive), and flash memory.
- the input device 93 inputs data.
- the common imaging area of the first camera 11 and the second camera 12 is the first common imaging area 21 ( Figure 3(b)), the common imaging area of the first camera 11 and the third camera 13 is the second common imaging area 22 ( Figure 3(c)), and the common imaging area of the second camera 12 and the third camera 13 is the third common imaging area 23 ( Figure 3(d)).
- parallax can be estimated using stereoscopic vision, allowing the distance to the imaged object to be calculated.
- this embodiment is implemented in a multi-camera system in which multiple cameras are installed on a vehicle so as to have multiple common imaging areas (overlapping imaging areas) where at least a portion of the field of view overlaps.
- the camera arrangement in a multi-camera system is not limited to those shown in Figures 3(a) to (d), and any combination can be selected as long as the cameras are arranged to have a common imaging area.
- a front camera can be installed to capture the area in front of the vehicle, and parallax can be calculated using a camera pair that shares a field of view, or a rear camera can be added to capture the area behind the vehicle.
- Cameras with different specifications, such as focal length, image size, and lens model, can be selected for each camera.
- the sensor placement priority determination unit 201 estimates the difficulty of parallax calculation (inference) for each of the first common imaging area 21, the second common imaging area 22, and the third common imaging area 23 from the positional relationship of each sensor, and determines the learning priorities of the first parallax calculation model, the second parallax calculation model, and the third parallax calculation model.
- the parallax calculated in another common imaging area can be used to learn the parallax calculation model. Therefore, by starting learning of the parallax calculation model from a common imaging area with high accuracy of additional parallax information and using the additional parallax information created at that time to learn another parallax calculation model, the parallax calculation model can be learned with high accuracy.
- cameras located closer to the LiDAR that provides the correct values have less occlusion and are able to learn the correct distance, so the learning priority for the common imaging area of camera pairs that are closer to the LiDAR is set higher.
- the sensor type priority determination unit 202 estimates the difficulty of parallax calculation (inference) based on the sensor type (differences in specifications such as focal length, image size, and lens model) (characteristics) and determines the learning priority. Sensors of the same type have higher learning priorities because they provide more accurate additional parallax information.
- the processing flow of the learning policy determination unit 200 is shown using Figure 8.
- the learning policy determination unit 200 acquires images captured by each camera and sensor data from the distance measurement sensor, which are stored in the data storage unit 100.
- a priority is calculated for all common imaging areas based on the difficulty of calculating parallax (sensor placement priority determination unit 201).
- the difficulty is an index that indicates how accurately parallax can be calculated in the common imaging area, and uses the magnitude of the shape change between the two images caused by the distance between the cameras, as explained in Figure 7.
- the degree of deformation of an object on the road surface is calculated, but the degree of deformation on a plane other than the road surface can also be calculated. Therefore, if you want to accurately calculate the distance to a vehicle traveling parallel to the road, you can use the degree of shape change on a plane perpendicular to the road surface as an index of difficulty, or any other index.
- the sensor placement priority determination unit 201 calculates a priority based on the positional relationship between the LiDAR and the camera that calculates the disparity (hereinafter referred to as the reference camera).
- the LiDAR generates a correct value based on the acquired point cloud data. If the LiDAR and reference camera are located far apart, the correct value may include a distance different from the object captured by the reference camera due to differences in the occlusion areas of the two sensors. For example, if a camera captures an image of a pedestrian, but a LiDAR installed in a different location can see the road surface behind the pedestrian, the disparity of the background road surface will be mistakenly plotted in the pixel where the pedestrian is captured.
- the priority may be calculated from the number of LiDAR points included in the common imaging area. If the positions, orientations, and angles of view of the camera and LiDAR are known, the number of LiDAR points that will appear within the imaging range can be predicted. The more LiDAR points there are, the higher the learning accuracy of the disparity calculation model, so the more LiDAR points there are in each common imaging area, the higher the priority may be set.
- step S104 the priorities calculated in steps S101, S102, and S103 are integrated (common imaging area order determination unit 203).
- the average of each priority may be used, or each priority may be weighted and added together.
- step S105 the order is determined so that learning proceeds in order from the common imaging area with the highest priority calculated in step S104 (common imaging area order determination unit 203). This allows the disparity information of a common imaging area for which additional disparity information can be calculated with high accuracy to be used in learning the subsequent common imaging area, thereby improving the learning accuracy of the subsequent disparity calculation model.
- the disparity calculation model learning unit 300 learns the disparity calculation model based on the sensor data stored in the data storage unit 100 and the learning order output by the learning policy determination unit 200.
- the disparity calculation model learning unit 300 includes a disparity correct value creation unit 301, a learning and evaluation unit 302, and a model storage unit 303.
- the disparity correct value creation unit 301 creates disparity images to be given as correct values to the disparity calculation model according to the learning order received from the learning policy determination unit 200.
- a disparity image is created based on the LiDAR data stored in the data storage unit 100.
- the data storage unit 100 contains vehicle behavior acquired from the IMU (Inertial Measurement Unit) or vehicle CAN, it is possible to create higher density correct values by overlaying the LiDAR data on the vehicle behavior in chronological order.
- the disparity (disparity obtained by rule-based model and feature point matching) is calculated using the methods shown in Figures 5(a) and (b) and added to the correct value.
- the correct value is created by integrating the disparity of the LiDAR and the additional disparity information from the fourth common imaging area and the fifth common imaging area. If multiple correct disparity values are obtained for the same pixel, the average value of the multiple disparities is set as the correct value. Also, if LiDAR has been obtained, the LiDAR value may be used as the correct value instead of the average value. Additionally, additional disparity information from an earlier order may also be used as the correct value.
- the in-vehicle information processing device when the in-vehicle information processing device (edge device 400) detects that at least one of the multiple cameras has been changed, it requests the server device (server 500) to re-learn the disparity calculation model for the common imaging area that includes the imaging area of the changed camera (camera change detection unit 402), and the server device (server 500) generates a re-learned model by re-learning the disparity calculation model and distributes the re-learned model to the in-vehicle information processing device (edge device 400).
- the in-vehicle information processing device (edge device 400) transmits a plurality of images captured by a plurality of cameras to the server device (server 500), and the server device (server 500) determines, based on the plurality of images, whether or not the plurality of disparity calculation models contain data that has not been used in training at least one of the disparity calculation models. If the plurality of disparity calculation models contain data that has not been used in training at least one of the disparity calculation models, the server device generates a re-trained model by re-training the disparity calculation model and distributes the re-trained model to the in-vehicle information processing device (edge device 400).
- the disparity calculation model is trained in an ordered manner for multiple common imaging areas.
- the accuracy of the correct disparity value used for training can be increased, and the training accuracy of the disparity calculation model can be improved.
- the above-mentioned configurations, functions, processing units, processing means, etc. may be realized in hardware, for example by designing them as integrated circuits. Furthermore, the above-mentioned configurations, functions, etc. may be realized in software by a processor interpreting and executing a program that realizes each function. Information such as the programs, tables, and files that realize each function can be stored in memory, a storage device such as a hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.
- a storage device such as a hard disk or SSD (Solid State Drive)
- a recording medium such as an IC card, SD card, or DVD.
- control and information lines shown are those considered necessary for the explanation, and do not necessarily represent all control and information lines on the product. In reality, it is safe to assume that almost all components are interconnected.
- Image processing device 100 Data storage unit 200 Learning policy determination unit 201 Sensor placement priority determination unit 202 Sensor type priority determination unit 203 Common imaging area order determination unit 300 Parallax calculation model learning unit 301 Parallax correct value creation unit 302 Learning and evaluation unit 303 Model storage unit 2 Learning system (Example 2) 400 Edge device (in-vehicle information processing device) 401 Sensor unit 402 Camera change detection unit 403 Camera abnormality detection unit 404 Model verification unit 405 Model inference unit 406 Edge side transmission/reception unit 500 Server (server device) 501 Server-side transmitting/receiving unit (image acquisition unit) 502 Data storage unit 503 Learning timing determination unit 504 Learning policy determination unit 505 Disparity calculation model learning unit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Radar, Positioning & Navigation (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Electromagnetism (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Measurement Of Optical Distance (AREA)
- Studio Devices (AREA)
Abstract
学習に用いる視差正解値の精度を高めることができ、視差算出モデルの学習精度を向上できる学習システム及び学習方法を提供する。複数のカメラにより撮像された画像を取得する画像取得部(サーバ側送受信部501)と、複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する学習方針決定部504と、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差算出モデルに入力して、得られる視差と正解値データの差から視差算出モデルを学習する視差算出モデル学習部505と、を備え、正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
Description
本発明は、複数の撮像装置の共通撮像領域で検知対象までの距離を測定する画像処理装置において共通撮像領域の視差を推論する視差推論モデルを学習する学習システム及び学習方法に関する。
近年、自動運転や運転支援技術などでは、移動体に複数の撮像装置(カメラ)を設置するマルチカメラシステムが開発されている。マルチカメラシステムにおいて、視野を共有するカメラ間ではステレオ視による測距を実現でき、物体までの正確な距離を推定できる。
ステレオ視による測距では、視野を共有する2台のカメラ(右カメラと左カメラ)で、同一物体が撮像される位置の差である視差を求める。視差は奥行きごとに異なるため、求めた視差から検知した物体までの距離を算出することができる。
従来では、ルールベースの処理により、左右のカメラの撮像画像(左画像と右画像)に対して局所領域ごとの類似度を計算して視差を算出していた。近年では、CNN(Convolutional Neural Network)に代表されるDeep learningの発展に伴って、学習ベースの手法が開発されている。学習ベースでは、複数の撮像画像と正解値となる距離データを用いて、視差算出モデル(視差推論モデルとも称する)を学習する(例えば、特許文献1参照)。
特許文献1に、「真の奥行きは、例えばLiDAR(Laser Imaging Detection and Ranging)等の3Dセンサで取得することができる。」と記載があるように、従来の学習ベースでは、LiDARなどの測距センサを用いて正解値の距離データを作成する。しかし、一般的には、LiDARの点密度は低く、点密度が低い領域では、学習精度が低下する。
LiDARの点密度を補う方法として、LiDAR以外の方法で作成した追加視差情報の利用が考えられる。追加視差情報の例としては、ルールベースの手法で算出した視差や、特徴点マッチングの結果から算出した視差など、LiDAR以外の方法で取得した視差が挙げられる。また、別の共通撮像領域(重複撮像領域とも称する)で算出した視差(ルールベース視差算出、特徴点マッチング、視差算出モデルなど)を用いることもできる。
しかし、マルチカメラシステムにおいては、長基線、異画角、非平行のカメラペアも存在しており、このようなカメラペアでは、左右画像の形状変化が激しく、正しく追加視差情報を算出できない。誤った追加視差情報を使って視差算出モデルを学習した場合、視差算出モデルの性能を悪化させる可能性がある。
本発明は、上記事情に鑑みてなされたものであり、学習に用いる視差正解値の精度を高めることができ、視差算出モデルの学習精度を向上できる学習システム及び学習方法を提供することを目的とする。
上記課題を解決するため、本発明に係る学習システムは、視野の少なくとも一部が重複した共通撮像領域を有する複数のカメラを備えた車両に搭載された車載情報処理装置と、前記車載情報処理装置と通信するサーバ装置と、を含む学習システムであって、前記複数のカメラにより撮像された画像を取得する画像取得部と、複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する学習方針決定部と、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差算出モデルに入力して、得られる視差と正解値データの差から視差算出モデルを学習する視差算出モデル学習部と、を備え、前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
また、本発明に係る学習方法は、コンピュータにより実行される学習方法であって、視野の少なくとも一部が重複する共通撮像領域を有する複数のカメラにより撮像された画像を取得するステップと、複数の共通撮像領域毎に前記画像を用いて視差を推論する視差推論モデルの学習の実行順序を決定するステップと、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差推論モデルに入力して、得られる視差と正解値データの差から視差推論モデルを学習するステップと、を含み、前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
本発明によれば、複数の共通撮像領域に対し、順序付けて視差算出モデルを学習する、換言すれば、視差算出モデルの学習順序を決定することで、学習に用いる視差正解値の精度を高めることができ、視差算出モデルの学習精度を向上できる。
上記した以外の課題、構成及び効果は以下の実施形態の説明により明らかにされる。
以下、本発明の実施例を図面を用いて説明する。なお、各図において同じ機能または構成を有する部分には同じ符号を付して繰り返し説明は省略する場合がある。
<実施例1>
図1に、本発明の実施例1に係る画像処理装置1の構成図を示す。本実施例1の画像処理装置1は、データ保存部100、学習方針決定部200、視差算出モデル学習部300を備えている。画像処理装置1は、マルチカメラシステムを備えた車両からデータを取得可能なコンピュータにより構成される。
図1に、本発明の実施例1に係る画像処理装置1の構成図を示す。本実施例1の画像処理装置1は、データ保存部100、学習方針決定部200、視差算出モデル学習部300を備えている。画像処理装置1は、マルチカメラシステムを備えた車両からデータを取得可能なコンピュータにより構成される。
図2は、実施例1に係る画像処理装置1のハードウェア構成図を示す。画像処理装置1は、プロセッサ91と、記憶デバイス92と、入力デバイス93と、出力デバイス94と、通信インターフェース(通信IF)95と、を備える。プロセッサ91と、記憶デバイス92と、入力デバイス93と、出力デバイス94と、通信インターフェース(通信IF)95とは、バス96により接続される。プロセッサ91は、画像処理装置1を制御する。記憶デバイス92は、プロセッサ91の作業エリアになる。また、記憶デバイス92は、各種プログラムやデータを記憶する揮発性又は不揮発性の記録媒体であり、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリがある。入力デバイス93は、データを入力する。入力デバイス93としては、例えば、キーボード、マウス、タッチパネル、テンキー、スキャナがある。出力デバイス94は、データを出力する。出力デバイス94としては、例えば、ディスプレイ、プリンタがある。通信IF95は、ネットワークと接続し、データを送受信する。画像処理装置1は、通信IF95を介して、マルチカメラシステムを備えた車両と通信することにより、車両により取得されたデータを受信することができる。なお、画像処理装置1が車両からデータを取得する手段はこの方法に限られず、任意の方法を用いることができる。
図3(a)~(d)を用いて、マルチカメラシステムについて説明する。図3(a)は、マルチカメラシステムにおけるカメラの設置例を示す。図3(a)では、第1カメラ11が車両10のサイドミラーの下、第2カメラ12と第3カメラ13が車両10のルーフの前後に取り付けられている。それぞれのカメラは、画角を共有する領域(以降、共通撮像領域)を持つように車両10に設置されており、第1カメラ11と第2カメラ12の共通撮像領域が第1共通撮像領域21(図3(b))、第1カメラ11と第3カメラ13の共通撮像領域が第2共通撮像領域22(図3(c))、第2カメラ12と第3カメラ13の共通撮像領域が第3共通撮像領域23(図3(d))である。各共通撮像領域では、ステレオ視により視差を推定することができ、撮像された対象への距離を算出できる。本実施例は、上述のように、視野の少なくとも一部が重複する共通撮像領域(重複撮像領域)を複数有するように、車両に複数のカメラを設置するマルチカメラシステムにおいて実施される。
マルチカメラシステムのカメラ配置は、図3(a)~(d)に限定されることはなく、共通撮像領域を持つように配置されれば任意の組み合わせを選択できる。例えば、車両前方を撮像範囲とするフロントカメラを設置し、視野を共有するカメラペアで視差を算出しても良く、車両後方を撮像範囲とするリアカメラを追加しても良い。各カメラには焦点距離、画像サイズ、レンズモデルなどの仕様が異なるカメラを選択しても良い。
また、各共通撮像領域で視差算出モデルを学習する際に距離データの正解値が必要になる。距離データは、LiDAR等の測距センサで取得するため、測距センサも合わせて車両10に設置する。図3(a)のように、車両10のルーフ中央に測距センサとしてLiDAR14が設置されることが多いが、第1~第3共通撮像領域を測距できれば任意の位置で良く、また複数LiDARを設置して各LiDARの死角をカバーしても良い。
データ保存部100(図1)は、前述のマルチカメラシステムを備えた車両で取得されたデータを保存する。データ保存部100では、各カメラの撮像画像と測距センサのセンサデータが、センサIDとタイムスタンプとセットで保存される。その他、車両においてIMU(Inertial Measurement Unit)や車両CANから自車挙動が取得できる場合には、データ保存部100は、センサデータとその自車挙動も合わせて保存しても良い。また、各センサのキャリブレーションデータ(カメラごとの内部/外部パラメータ、測距センサの設置位置など)も保存される。キャリブレーションデータは、センサ取り付け時の値を保存しても良いし、経年劣化や温度変化に対応するため、走行中に補正された値を保存しても良い。
学習方針決定部200(図1)は、各センサの種別、配置から視差算出モデルを学習する順序を決定する。図3(a)~(d)の例では、第1共通撮像領域21の視差を推論する第1視差算出モデル、第2共通撮像領域22の視差を推論する第2視差算出モデル、第3共通撮像領域23の視差を推論する第3視差算出モデルの3種類の視差算出モデルがあった場合、どの順序で視差算出モデルを学習するかの方針を決定する。
図4を用いて、視差算出モデルの学習について説明する。視差算出モデルの学習では、2台のカメラで撮像された画像と、視差画像の正解値を用いる。撮像された画像(右画像と左画像)を視差算出モデルに入力し、視差画像の推論結果を出力する。用意した視差画像の正解値と推論結果を比較し、より正解値に近い推論結果を出力する(視差画像の正解値と推論結果の差が小さくなる)ように視差算出モデルのパラメータを更新していく。推論結果と正解値が類似するように視差算出モデルのパラメータを更新しても良いし、正解値から算出した左右画像の同一画素において類似する特徴ベクトルを出力するようにパラメータを更新しても良い。また、パラメータ数が異なる視差算出モデルを用意し、パラメータ数が多い視差算出モデルの最終出力、もしくは中間層の出力に類似するように、パラメータ数が少ない視差算出モデルを学習しても良い。
視差画像の正解値は、LiDARなどの測距センサで測定された距離情報を使用する。視差画像の正解値は、LiDARの距離を視差に変換し、画像座標にプロットすることで作成できる。LiDARの測距結果から正解値を作成する場合、全画素に視差の正解値をプロットすることは難しい。これは、LiDARの測距点がカメラの解像度よりも少ないためである。そのため、LiDARで作成した正解値は、画像の領域によって正解値の個数に偏りが生じる。正解値の個数が少ない領域では、視差算出モデルの学習が進まず、精度が低下する可能性がある。
LiDARの点密度が低い領域の学習精度を改善する方法として、LiDAR以外の方法で取得した視差情報を正解値に追加し(以降、追加視差情報)、視差算出モデルの学習をサポートすることが考えられる。
図5(a)~(c)を用いて、追加視差情報について説明する。
図5(a)では、測距センサを用いずに取得した視差を示しており、ルールベースの視差算出手法が該当する。従来のブロックマッチングに代表される視差算出手法では、学習用の正解値を必要とせずに左右画像のみから視差を算出できる。そのため、ルールベースの手法で算出した視差を正解値として視差算出モデルを学習することができる。また、予め異なるデータセットで学習された視差算出モデルの推論結果を正解値に使用しても良い。
図5(b)では、特徴点マッチングの手法を用いて追加視差情報を作成している。特徴点マッチングとは、2枚の画像間で同一の特徴点(コーナーや輝度変化が激しい画素)を探索するアルゴリズムである。特徴点マッチングで同一画素を探索し、その座標の差分から視差を計算できる。特徴点マッチングの代表手法としては、SIFT(Scale Invariant Feature Transform)がある。また、近年、Deep learningにより高密度に特徴点をマッチングできる手法も開発されているため、それらを用いても良い。
図5(c)では、他の共通撮像領域で算出した視差を利用して追加視差情報を作成している。図3(a)で示す第1共通撮像領域21と、図3(c)が示す第3共通撮像領域23は重複しているため、第3共通撮像領域23で算出した視差を使って第1共通撮像領域21に対する第1視差算出モデルを学習できる。図5(c)では、第3共通撮像領域23の情報を第1共通撮像領域21の学習で利用する例を記載しているが、その他、共通撮像領域が重複すれば同様の処理が可能である。第3共通撮像領域23からは、図5(a)、(b)の方法で算出した追加視差情報(以降、第3追加視差情報)の他、LiDARと第3追加視差情報で学習した第3視差算出モデルの推論結果を取得できる。近年のDeep learningを用いた視差算出モデルは、画像全体で高密度な視差を推定できるため、第3共通撮像領域23では高密度な視差推論結果を得ることができる。これらの情報(第3追加視差情報、第3視差算出モデルの推論結果)を第1共通撮像領域21の追加視差情報(以降、第1追加視差情報)として使用することで、LiDARの点不足を補うことができる。また、第1共通撮像領域21において、図5(a)、(b)の方法で算出した追加視差情報も第1追加視差情報として含めても良い。
追加視差情報を用いて視差算出モデルの精度を向上させるためには、精度良く追加視差情報を算出する必要がある。図6(a)、(b)を用いて、追加視差情報の精度について説明する。図6(a)では、第2共通撮像領域22における例を示す。第2共通撮像領域22を構成する第1カメラ11と第3カメラ13は、基線長(カメラ間の距離)が長いため、同一物体でも大きく形状が変化して撮像される。
図7を用いて、同一物体を異なるカメラで撮像したときの形状変化について説明する。路面上に存在する物体に対し、カメラ高さH、基線長(カメラ間の距離)Bのステレオカメラにおいては、左画像の点pl(x,y,1)に対応する右画像上の点pr(x,y,1)は、式(1)で計算される。この際、B/Hの値に応じて変形度合いが上がるため、基線長が長いカメラペアの方が形状変化が激しくなる。
[数1]
[数1]
また、第1カメラ11と第3カメラ13では設置されているカメラ高さが異なるため、同一物体でも撮像される面が異なる。第1カメラ11は低い位置に設置されているため、並走車30の側面を主に撮像できる。一方、第3カメラ13は自車のルーフに設置されており、並走車30を見下ろすような画像が撮像される。そのため、並走車30の側面、上面のどちらも撮像される。
一方、図6(b)に示す第3共通撮像領域23では、第3共通撮像領域23を構成する第2カメラ12と第3カメラ13は、基線長も短く、カメラも同じ高さに設置されているため、並走車30をほぼ同一の形状で撮像することができる。また、オクルージョン領域も少なく、両方の画像で物体の同一面を観測可能である。
ステレオ視による測距は、2枚の画像間で同一画素を探索することで視差を推定する。図5(a)、(b)の方法では、画像の局所領域における類似度を基に同一画素を探索する手法が多く、2枚の画像間で撮像のされ方(形状変化、撮像面など)が異なる場合に同一画素を特定できず正しく視差を算出できない。図6(a)のように、形状変化が激しく、オクルージョン領域も多い場合には、追加視差情報の精度が低下し、視差算出モデルの学習精度を悪化させる可能性がある。一方、図6(b)では、形状変化やオクルージョン領域が少なく、精度よく追加視差情報を算出できるため、学習に追加することで視差算出モデルの学習精度を向上できる。
精度よく追加視差情報を算出できる共通撮像領域の視差情報を、異なる共通撮像領域の学習に使用することで、すなわち、精度よく追加視差情報を算出できる共通撮像領域の視差情報を、それよりも後の実行順序に割り当てられた共通撮像領域の視差算出モデルの学習に使用することで、他の視差算出モデルの学習精度を高めることができる。図6(a)、(b)の例では、図6(b)の第3共通撮像領域23から学習を開始し、その時に算出した視差情報を図6(a)の第2共通撮像領域22の追加視差情報として使用することで、第2共通撮像領域22に対する第2視差算出モデルの学習精度を高めることができる。
学習方針決定部200(図1)は、センサ配置優先度決定部201、センサ種別優先度決定部202、共通撮像領域順序決定部203を備えている。
センサ配置優先度決定部201は、各センサの位置関係から、第1共通撮像領域21、第2共通撮像領域22、第3共通撮像領域23の各々に対して視差算出(推論)の難易度を推定し、第1視差算出モデル、第2視差算出モデル、第3視差算出モデルの学習優先度を決定する。図5(c)で説明した通り、共通撮像領域が重複する場合、別の共通撮像領域で算出した視差を視差算出モデルの学習に使用することができる。そのため、追加視差情報の精度が高い共通撮像領域から視差算出モデルの学習を開始し、その時に作成された追加視差情報を別の視差算出モデルの学習に使用することで、精度よく視差算出モデルを学習できる。
図7で説明した通り、2枚の画像間の形状変化は、カメラ間の距離が離れるにつれて大きくなるため、カメラ間の距離が短いカメラペアから視差算出の難易度は低いとして優先的に学習を開始することで、後続の視差算出モデルの学習精度を高めることができる。
また、正解値を提供するLiDARとの位置が近いカメラの方が、オクルージョンが少なく、正しい距離を学習できているため、LiDARとの距離が近いカメラペアの共通撮像領域の学習優先度を高く設定する。
センサ種別優先度決定部202は、センサの種別(焦点距離、画像サイズ、レンズモデルなどの仕様の違い)(特性)から、視差算出(推論)の難易度を推定し、学習優先度を決定する。同種のセンサの方が、追加視差情報の精度が高いため、学習優先度を高く設定する。
共通撮像領域順序決定部203は、センサ配置優先度決定部201とセンサ種別優先度決定部202が出力した優先度から、最終的に視差算出モデルの学習を実行していく順序を決定する。
図8を用いて、学習方針決定部200の処理フローを示す。学習方針決定部200は、データ保存部100で保存している各カメラの撮像画像と測距センサのセンサデータなどを取得している。
まず、ステップS101により、全ての共通撮像領域に対して、視差算出の難易度による優先度を算出する(センサ配置優先度決定部201)。難易度は、共通撮像領域においてどれくらい正確に視差を算出できるかを示した指標であり、図7で説明したカメラ間の距離に起因する2枚の画像間の形状変化の大きさを使用する。図7では、路面上に存在する物体の変形度合いを求めているが、路面以外の平面に対する変形度合いも計算できる。そのため、並走する車両との距離を精度よく求めたい場合には、路面と垂直な面に対する形状変化の度合いを難易度の指標に用いても良いし、その他、任意の指標を使用しても良い。
ステップS102では、LiDARと視差を算出するカメラ(以降、基準カメラ)との位置関係による優先度を算出する(センサ配置優先度決定部201)。LiDARは、取得された点群データに基づいて正解値を生成する。LiDARと基準カメラの位置が離れている場合、両センサのオクルージョン領域の違いから、基準カメラで撮像される物体とは異なる距離を正解値に含む可能性がある。例えば、カメラでは歩行者を撮像しているが、設置位置が異なるLiDARからは歩行者の背後のある路面が見えている場合、歩行者が撮像されている画素に誤って背景の路面の視差をプロットしてしまう。一方、LiDARと基準カメラの設置位置が近い場合、観測できる領域も両センサで差は少ないため、正しく視差をプロットすることができる。上記を考慮し、LiDARと基準カメラの距離が近い程、精度よく視差算出モデルを学習できるため、優先度を高く設定する。
また、ステップS102では、共通撮像領域に含まれるLiDAR点群の個数から優先度を算出しても良い。カメラとLiDARの位置、向き、画角が分かれば、撮像範囲内に出現するLiDARの点数は予測できる。LiDARの点数が多い程、視差算出モデルの学習精度が上がるため、各共通撮像領域のLiDAR点数が多い程、優先度を高く設定しても良い。
ステップS103では、センサ種別から優先度を算出する(センサ種別優先度決定部202)。マルチカメラシステムを構成するカメラは、焦点距離や画角、画像サイズ、レンズモデルなどが異なるカメラが設置される可能性がある。異なる種別のカメラでは、歪み補正や平行化変換などの視差算出に必要な前処理を行うと、同一領域でも空間分解能が異なるため、視差の算出が難しくなる。そのため、同種のカメラほど視差算出の難易度は低いとして高い優先度を設定する。
ステップS104では、ステップS101、ステップS102、ステップS103で算出した優先度を統合する(共通撮像領域順序決定部203)。各優先度の平均を用いても良いし、各優先度に重みを付けて足し合わせても良い。
ステップS105では、ステップS104で算出した優先度が高い共通撮像領域から順に学習を進めるよう、順序を決定する(共通撮像領域順序決定部203)。これにより、精度よく追加視差情報を算出できる共通撮像領域の視差情報を、後続の共通撮像領域の学習に使用することで、後続の視差算出モデルの学習精度を高めることができる。
図8では、ステップS101、ステップS102、ステップS103で優先度を算出する例を示したが、ステップS101、ステップS102、ステップS103の少なくとも1つを使用しても良く、また別の指標に基づいて優先度を決定しても良い。
視差算出モデル学習部300は、データ保存部100で保存しているセンサデータと、学習方針決定部200が出力した学習順序に基づいて、視差算出モデルを学習する。視差算出モデル学習部300は、視差正解値作成部301、学習・評価部302、モデル保存部303を備えている。
視差正解値作成部301は、学習方針決定部200から受け取った学習順序に従って、視差算出モデルに正解値として与える視差画像を作成する。まずは、データ保存部100に保存されているLiDARデータを基に、視差画像を作成する。このとき、データ保存部100にIMU(Inertial Measurement Unit)や車両CANから取得した自車挙動が含まれている場合には、その自車挙動にLiDARデータを時系列で重ね合わせることで、より高密度な正解値を作成することができる。
次に、作成した視差画像に追加視差情報を付加する。正解値を作成している共通撮像領域(以降、第4共通撮像領域)よりも順序が前の共通撮像領域(以降、第5共通撮像領域)が存在し、かつ第4共通撮像領域と第5共通撮像領域が重複領域を持つ場合には、第5共通撮像領域で算出した視差を第4共通撮像領域の正解値に追加する。言い換えれば、第4共通撮像領域の正解値に、第5共通撮像領域で算出した視差を含める。第5共通撮像領域が複数存在する場合には、全ての共通撮像領域の視差を正解値に追加しても良いし、順序が早い(精度が高い)視差のみを正解値に追加しても良い。
さらに、第4共通撮像領域において、図5(a)、(b)の方法で視差(ルールベースモデル、特徴点マッチングにより求められた視差)を算出し、正解値に追加する。
上述した例では、正解値にLiDARと、第4共通撮像領域と第5共通撮像領域の追加視差情報の視差を統合して正解値を作成する。同じ画素に複数の視差正解値が得られた場合には、複数視差の平均値を正解値に設定する。また、LiDARが取得できている場合には、平均値ではなく、LiDARの値を正解値として用いても良い。また、より早い順序の追加視差情報を正解値として用いても良い。
また、LiDARが設置されていない量産車両においては、第4共通撮像領域と第5共通撮像領域の追加視差情報のみを正解値に用いても良い。
学習・評価部302は、視差正解値作成部301が作成した正解値を使って、視差算出モデルを学習し、精度を評価する。視差正解値作成部301が作成した正解値を学習用と評価用のデータセットに分割し、学習用データセットを用いて図4の通りに視差算出モデルを学習する。また、学習後の視差算出モデルに対し、評価データセットを用いて推定精度を評価する。精度が問題なければ、モデル保存部303に出力される。
モデル保存部303は、学習・評価部302が出力した視差算出モデルを保存する。保存された視差算出モデルは、枝刈り、量子化といった実機での処理速度を上げるための処理が施され、実機へ組み込まれる。
<実施例2>
図9で、本発明の実施例2に係る学習システム2について説明する。図9は、本発明の実施例2に係る学習システム2の構成図であり、エッジデバイスとサーバやクラウドとの連携(通信)を考慮した時の構成となっている。なお、実施例1で説明した構成と同一もしくは相当する構成の説明は省き、以下では相違点を主に説明する。
図9で、本発明の実施例2に係る学習システム2について説明する。図9は、本発明の実施例2に係る学習システム2の構成図であり、エッジデバイスとサーバやクラウドとの連携(通信)を考慮した時の構成となっている。なお、実施例1で説明した構成と同一もしくは相当する構成の説明は省き、以下では相違点を主に説明する。
エッジデバイス400は、車両や移動ロボットなどの移動体、監視カメラなどのインフラセンサを含むエッジデバイスであり、複数のカメラの視野が重複するように設置されている。エッジデバイス400は、センサ部401、カメラ変更検知部402、カメラ異常検知部403、モデル検証部404、モデル推論部405、エッジ側送受信部406を備えている。以降は、エッジデバイス400は、マルチカメラシステムを備えた車両に搭載される車載情報処理装置として説明するが、車載情報処理装置に限定されるものではない。
センサ部401は、複数台のカメラから構成されており、視野を共有するように設置されている。カメラで撮像された画像は、視差算出モデルの再学習に使用するため、一定間隔でサーバ500に送信される。また、LiDARなどの測距センサも合わせて設置されていても良く、カメラ画像とセットで測距結果がサーバ500に送信される。また、車両の走行状況や走行環境が分かる情報が取得できる場合には、合わせてサーバ500に送信しても良く、IMU(Inertial Measurement Unit)や車両CAN、GNSS(Global Navigation Satellite System)による位置情報、ワイパーやヘッドライトの作動状況、時刻、照度などが含まれる。
送信するデータは、特定の条件に当てはまるデータのみを送信しても良い。例えば、GNSSによる位置情報から視差算出モデルの学習に使っていない走行路のデータのみを送信しても良く、また時刻、天候などから学習画像が少ないシーンのみを限定して送信しても良い。
カメラ変更検知部402は、マルチカメラシステムを構成するカメラのうち少なくとも一つのカメラが変更されたことを検知し、サーバ500に視差算出モデルの再学習を依頼する。量産された車両に設置されたカメラは、経年劣化や故障などで新規のカメラに変更される場合がある。新規のカメラは、部品の調達状況やカメラ自体の高性能化のため、焦点距離、画像サイズ、レンズモデルなどの仕様が変更前のカメラと異なる場合があり、このとき新規のカメラにより撮像される画像は変更前のカメラにより撮像される画像とは異なる。視差算出モデルへの入力が学習時と異なる場合、視差の推定精度が低下するため、視差算出モデルを再学習する必要がある。カメラ変更検知部402は、製品化時のカメラのシリアルナンバーを記憶しておき、異なるシリアルナンバーのカメラが設置されたタイミングで、サーバ500に再学習の依頼を出力する。また、焦点距離、画像サイズ、レンズモデルなどのカメラの仕様が分かっている場合には、そのいずれかが変更されたタイミングで、サーバ500に再学習の依頼を出力しても良い。また、カメラの位置、方向などの設置条件が分かる場合には、いずれかの変化が大きいタイミングで、サーバ500に再学習の依頼を出力しても良い。
カメラ異常検知部403は、マルチカメラシステムを構成するカメラのうち少なくとも一つのカメラに異常が発生したことを検知し、サーバ500に異常フラグを出力する。マルチカメラシステムでは、カメラが車外/屋外に設置される場合もあり、レンズの汚れで、撮像される画像の色やコントラストが変わる可能性がある。また、泥や汚れ、雨滴などの遮蔽物が付着、衝撃によるレンズのひび割れなど、正常に画像が取得できない場合もある。レンズ汚れによる画像の色やコントラストの変化では、視差算出モデルを再学習することで、視差精度を改善できるが、遮蔽物やレンズのひび割れではステレオ視ができなくなるため、視差算出モデルを再学習しても性能改善は期待できない。カメラ異常検知部403がカメラの異常状態(センサ状態の変化)をサーバ500に出力(通知)することで、サーバ500が視差算出モデルを再学習するタイミングを決定する。異常状態の種別(汚れ、付着物、ひび割れなど)も合わせて推定できる場合には、異常種別も合わせてサーバ500に送信する。
また、カメラ異常検知部403は、サーバ500にカメラの異常状態を送信するだけでなく、車両のドライバ、インフラシステムの管理画面などにカメラの異常を表示し、ユーザにカメラの異常に対する注意喚起や異常回復の行動を促す。
モデル検証部404は、サーバ500から配信された再学習モデルの動作を検証する。再学習したモデルが実環境において問題なく動作しているかをバックグラウンドで検証することで、視差算出モデルが誤った出力をしたことによるシステム誤動作を抑制できる。実環境の映像を入力とし、再学習前のモデルと同様の出力をするか、または再学習後のモデルの出力を使ってシステムを制御したときに異常な挙動がなかったか、をバックグラウンドで検証する。
モデル推論部405は、視差算出モデルを実環境で動作させるブロックであり、カメラ画像を入力として視差を出力し、出力した視差を基にマルチカメラシステムが動作する。製品化時の学習済みモデルを使用するほか、モデル検証部404で一定期間動作が検証されたモデルを受け取り、モデルを更新して使用しても良い。
エッジ側送受信部406は、後述するサーバ側送受信部501と通信を行い、センサ部401で撮像された画像をサーバ500に送信する。また、エッジ側送受信部406は、サーバ500から視差算出モデルを受信する。
サーバ500は、エッジデバイス400からの情報を受け取り、視差算出モデルを再学習し、エッジデバイス400に配信する。サーバ500は、サーバ側送受信部501、データ保存部502、学習タイミング決定部503、学習方針決定部504、視差算出モデル学習部505を備えている。
サーバ側送受信部501(以下、画像取得部ともいう)は、エッジデバイス400のエッジ側送受信部406と通信を行い、センサ部401で撮像された画像を受信(取得)する。また、サーバ側送受信部501は、エッジデバイス400に視差算出モデルを送信する。
データ保存部502には、エッジデバイス400から送信されたデータや、エッジデバイス400へ配信する視差算出モデルが保存される。
学習タイミング決定部503は、データ保存部502に保存されたデータを参照し、視差算出モデルを再学習するタイミングを決定する。
センサ部401から出力された走行状況や走行環境のデータから、モデル推論部405で動作している視差算出モデルの学習に使用していないデータが見つかったタイミングで視差算出モデルの再学習を実施する。GNSSの位置情報や、ワイパーやヘッドライトの作動状況、照度、天気予報から学習画像に含まれていないデータを特定する。
また、エッジデバイス400に設置してあるカメラが変更された場合、また異常が発生したタイミングで、視差算出モデルの再学習を実施する。カメラの異常状態には複数種類が存在し、レンズ汚れなどで撮像される画像の色やコントラストが変化している場合には、その画像を用いて視差算出モデルを再学習することで、レンズが汚れているシーンにおいても視差算出モデルの性能を維持することができる。一方、泥や汚れなどの付着物、レンズのひび割れなどで正常にカメラ画像が撮像できずにステレオ視が困難な状況では、視差算出モデルの再学習は実施しない。また、そのような画像がサーバ500に送信された場合には、視差算出モデルの再学習対象から排除する。
学習方針決定部504と視差算出モデル学習部505は、実施例1で記載した学習方針決定部200と視差算出モデル学習部300と同一の機能を有する。
学習方針決定部504では、マルチカメラシステムの全ての共通撮像領域で視差算出モデルを再学習しても良いし、カメラが更新された(センサ構成が変化した)、異常が発生した(センサ状態が変化した)、新規の走行シーンが取得できた(追加データが収集できた)などの特定の条件を満たす共通撮像領域のみを再学習しても良い。全ての共通撮像領域で視差算出モデルを再学習する際は、実施例1で説明した各共通撮像領域で学習順序を決定して、その順序に従って視差算出モデルの学習を進める。一方、条件を満たした一部の共通撮像領域で視差算出モデルを再学習する場合には、再学習する共通撮像領域と重複する全ての共通撮像領域で学習順序を決定し、その順序に従って視差算出モデルの学習を進める。
視差算出モデル学習部505において、量産車両では正解値取得用のLiDARが設置されていない場合が多いため、その場合には、追加視差情報のみを使って視差算出モデルを再学習する。再学習された視差算出モデルはデータ保存部502に保存される。データ保存部502に保存された再学習済み視差算出モデルは、エッジデバイス400のエッジ側送受信部406を介してモデル検証部404に配信され、実環境での動作を一定期間検証されたのち、モデル推論部405に出力され、エッジデバイス400が搭載された車両のマルチカメラシステムで使用される。
<変形例>
上述の実施例において、マルチカメラシステムのカメラ構成は、学習データを収集する時とシステム稼働時で変更しても良い。図3(a)~(d)のカメラ構成を例に説明すると、第1カメラ11と第3カメラ13は、基線長が長くなるため、追加視差情報の精度が下がる。そのため、データ収集時のみ、第1カメラ11と第3カメラ13の中間に第4カメラ(不図示)を追加で設置(増設)する。第1カメラ11と第4カメラ、第3カメラ13と第4カメラでそれぞれ追加視差情報を算出した後、全ての追加視差情報を使って第1カメラ11と第3カメラ13の視差算出モデルを学習する。中間に第4カメラを設置することで基線長が短いカメラペアを作成し、そこで算出した精度が高い視差情報を使うことで、第3視差算出モデルの精度を高めることができる。第4カメラは、データ収集時のみ設置し、実際にシステムが稼働する際には取り外すことが可能である。
上述の実施例において、マルチカメラシステムのカメラ構成は、学習データを収集する時とシステム稼働時で変更しても良い。図3(a)~(d)のカメラ構成を例に説明すると、第1カメラ11と第3カメラ13は、基線長が長くなるため、追加視差情報の精度が下がる。そのため、データ収集時のみ、第1カメラ11と第3カメラ13の中間に第4カメラ(不図示)を追加で設置(増設)する。第1カメラ11と第4カメラ、第3カメラ13と第4カメラでそれぞれ追加視差情報を算出した後、全ての追加視差情報を使って第1カメラ11と第3カメラ13の視差算出モデルを学習する。中間に第4カメラを設置することで基線長が短いカメラペアを作成し、そこで算出した精度が高い視差情報を使うことで、第3視差算出モデルの精度を高めることができる。第4カメラは、データ収集時のみ設置し、実際にシステムが稼働する際には取り外すことが可能である。
<まとめ>
以上説明したように、本実施例に係る学習方法は、コンピュータにより実行される学習方法であって、視野の少なくとも一部が重複する共通撮像領域(21、22、23)を(複数)有する複数のカメラ(11、12、13)により撮像された画像を取得するステップと、複数の共通撮像領域(21、22、23)毎に前記画像を用いて視差を推論する視差推論モデルの学習の実行順序を決定するステップと(学習方針決定部200;図8)、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差推論モデルに入力して、得られる視差と正解値データの差から視差推論モデルを学習するステップと(視差算出モデル学習部300;図4)、を含み、前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
以上説明したように、本実施例に係る学習方法は、コンピュータにより実行される学習方法であって、視野の少なくとも一部が重複する共通撮像領域(21、22、23)を(複数)有する複数のカメラ(11、12、13)により撮像された画像を取得するステップと、複数の共通撮像領域(21、22、23)毎に前記画像を用いて視差を推論する視差推論モデルの学習の実行順序を決定するステップと(学習方針決定部200;図8)、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差推論モデルに入力して、得られる視差と正解値データの差から視差推論モデルを学習するステップと(視差算出モデル学習部300;図4)、を含み、前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
これにより、複数の共通撮像領域(21、22、23)に対し、順序付けて視差算出モデルを学習する。
また、前記複数のカメラ(11、12、13)の特性及び配置の少なくとも一方に基づいて、複数の共通撮像領域(21、22、23)の各々に対して視差の推論難易度を推定するステップを含み(学習方針決定部200のセンサ配置優先度決定部201、センサ種別優先度決定部202;図8のステップS101、S103)、前記推定の結果に基づいて、複数の共通撮像領域(21、22、23)に対して視差推論モデルの学習の実行順序を決定する。
これにより、視差の推論難易度に応じて、視差算出モデルの学習順序を決定する。
また、前記複数のカメラ(11、12、13)を備えた車両に配置されたLiDARにより取得された点群データに基づいて前記正解値データを生成するステップを含み、前記複数のカメラと前記LiDARとの位置関係に基づいて(学習方針決定部200のセンサ配置優先度決定部201;図8のステップS102)、複数の共通撮像領域(21、22、23)に対して視差推論モデルの学習の実行順序を決定する。
これにより、LiDARの位置関係から、視差算出モデルの学習順序を決定する。
また、前記正解値データは、取得した画像に基づいて、ルールベースモデル又は特徴点マッチングにより求められた視差の少なくとも一方を含む(図5)。
これにより、LiDARとは別手法で視差の正解値を作成する。
また、センサ構成の変化、センサ状態の変化、及び追加データの収集状況の少なくとも一つに応じて視差推論モデルの学習の実行順序を決定し、視差推論モデルを再学習する(実施例2)。
これにより、製品化後のモデルアップデートが可能となる。
また、複数の共通撮像領域(21、22、23)の各々に含まれるLiDARの点群データの個数(点数)に基づいて、複数の共通撮像領域(21、22、23)に対して視差推論モデルの学習の実行順序を決定する(図8のステップS102)。
これにより、例えばLiDARの位置関係から予測できるLiDARの点群データの個数(点数)から、視差算出モデルの学習順序を決定する。
また、本実施例に係る学習システム2は、視野の少なくとも一部が重複した共通撮像領域(21、22、23)を有する複数のカメラ(11、12、13)を備えた車両10に搭載された車載情報処理装置(エッジデバイス400)と、車載情報処理装置(エッジデバイス400)と通信するサーバ装置(サーバ500)と、を含む学習システム2であって、複数のカメラ(11、12、13)により撮像された画像を取得する画像取得部(サーバ側送受信部501)と、複数の共通撮像領域(21、22、23)に対して視差算出モデルの学習の実行順序を決定する学習方針決定部504と、決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差算出モデルに入力して、得られる視差と正解値データの差から視差算出モデルを学習する視差算出モデル学習部505と、を備え、正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む。
これにより、複数の共通撮像領域(21、22、23)に対し、順序付けて視差算出モデルを学習する。
また、本実施例に係る学習システム2は、学習方針決定部504が、複数のカメラ(11、12、13)の特性及び配置の少なくとも一方に基づいて、複数の共通撮像領域(21、22、23)の各々に対して視差の推論難易度を推定し、推定の結果に基づいて、複数の共通撮像領域(21、22、23)に対して視差算出モデルの学習の実行順序を決定する。
これにより、視差の推論難易度に応じて、視差算出モデルの学習順序を決定する。
また、本実施例に係る学習システム2は、車両に配置されたLiDARにより取得された点群データに基づいて正解値データを生成する視差正解値作成部301をさらに備え、学習方針決定部504は、複数のカメラとLiDARとの位置関係に基づいて、複数の共通撮像領域(21、22、23)に対して視差算出モデルの学習の実行順序を決定する。
これにより、カメラとLiDARとの位置関係から、視差算出モデルの学習順序を決定する。
また、本実施例に係る学習システム2は、車両に配置されたLiDARにより取得された点群データに基づいて正解値データを生成する視差正解値作成部301をさらに備え、学習方針決定部504は、複数の共通撮像領域(21、22、23)の各々に含まれるLiDARの点群データの個数(点数)に基づいて、複数の共通撮像領域(21、22、23)に対して視差算出モデルの学習の実行順序を決定する。
これにより、例えばLiDARの位置関係から予測できるLiDARの点群データの個数(点数)から、視差算出モデルの学習順序を決定する。
また、本実施例に係る学習システム2は、正解値データは、ルールベースモデル又は特徴点マッチングにより求められた視差の少なくとも一方を含む(図5)。
これにより、LiDARとは別手法で視差の正解値を作成する。
また、本実施例に係る学習システム2は、車載情報処理装置(エッジデバイス400)が、複数のカメラのうち少なくとも一つのカメラが変更されたことを検知すると、変更されたカメラの撮像領域が含まれる共通撮像領域に対する視差算出モデルの再学習をサーバ装置(サーバ500)に依頼し(カメラ変更検知部402)、サーバ装置(サーバ500)が、視差算出モデルを再学習することにより再学習モデルを生成し、再学習モデルを車載情報処理装置(エッジデバイス400)に配信する。
これにより、カメラが変更されたタイミングで視差算出モデルの再学習を実行することができ、製品化後のモデルアップデートが可能となる。
また、本実施例に係る学習システム2は、車載情報処理装置(エッジデバイス400)が、複数のカメラのうち少なくとも一つのカメラに異常が発生したことを検知すると、異常が検知されたカメラの異常状態をサーバ装置(サーバ500)に通知し(カメラ異常検知部403)、サーバ装置(サーバ500)が、異常状態に基づいて、異常が検知されたカメラの撮像領域が含まれる共通撮像領域に対する視差算出モデルの再学習を実行するか否かを判断し、再学習を実行すると判断した視差算出モデルを再学習することにより再学習モデルを生成し、再学習モデルを車載情報処理装置(エッジデバイス400)に配信する。
これにより、カメラに発生した異常の状態に応じて、適切に視差算出モデルの再学習を実行することができ、製品化後のモデルアップデートが可能となる。
また、本実施例に係る学習システム2は、車載情報処理装置(エッジデバイス400)が、複数のカメラで撮像された複数の画像をサーバ装置(サーバ500)に送信し、サーバ装置(サーバ500)が、複数の画像に基づいて、複数の前記視差算出モデルのうち少なくとも一つの視差算出モデルの学習に使用されていないデータが含まれるか否かを判断し、複数の視差算出モデルのうち少なくとも一つの視差算出モデルの学習に使用されていないデータが含まれる場合に、視差算出モデルを再学習することにより再学習モデルを生成し、再学習モデルを車載情報処理装置(エッジデバイス400)に配信する。
これにより、学習済みの視差算出モデルが未だ学習していないシーンの再学習を適切に実行することができ、製品化後のモデルアップデートが可能となる。
本実施例によれば、複数の共通撮像領域に対し、順序付けて視差算出モデルを学習する、換言すれば、視差算出モデルの学習順序を決定することで、学習に用いる視差正解値の精度を高めることができ、視差算出モデルの学習精度を向上できる。
言い換えれば、本実施例によれば、マルチカメラシステムにおける複数の共通撮像領域において、視差算出の難易度が容易な領域から学習を開始し、学習過程で算出した追加視差情報を後続の共通撮像領域の学習に用いることで、視差算出モデルの学習精度を高めることができる。
以上、本発明の実施例について説明したが、上記実施例は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施例の具体的構成に限定する趣旨ではない。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 画像処理装置(実施例1)
100 データ保存部
200 学習方針決定部
201 センサ配置優先度決定部
202 センサ種別優先度決定部
203 共通撮像領域順序決定部
300 視差算出モデル学習部
301 視差正解値作成部
302 学習・評価部
303 モデル保存部
2 学習システム(実施例2)
400 エッジデバイス(車載情報処理装置)
401 センサ部
402 カメラ変更検知部
403 カメラ異常検知部
404 モデル検証部
405 モデル推論部
406 エッジ側送受信部
500 サーバ(サーバ装置)
501 サーバ側送受信部(画像取得部)
502 データ保存部
503 学習タイミング決定部
504 学習方針決定部
505 視差算出モデル学習部
100 データ保存部
200 学習方針決定部
201 センサ配置優先度決定部
202 センサ種別優先度決定部
203 共通撮像領域順序決定部
300 視差算出モデル学習部
301 視差正解値作成部
302 学習・評価部
303 モデル保存部
2 学習システム(実施例2)
400 エッジデバイス(車載情報処理装置)
401 センサ部
402 カメラ変更検知部
403 カメラ異常検知部
404 モデル検証部
405 モデル推論部
406 エッジ側送受信部
500 サーバ(サーバ装置)
501 サーバ側送受信部(画像取得部)
502 データ保存部
503 学習タイミング決定部
504 学習方針決定部
505 視差算出モデル学習部
Claims (14)
- 視野の少なくとも一部が重複した共通撮像領域を有する複数のカメラを備えた車両に搭載された車載情報処理装置と、前記車載情報処理装置と通信するサーバ装置と、を含む学習システムであって、
前記複数のカメラにより撮像された画像を取得する画像取得部と、
複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する学習方針決定部と、
決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差算出モデルに入力して、得られる視差と正解値データの差から視差算出モデルを学習する視差算出モデル学習部と、を備え、
前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む、学習システム。 - 請求項1に記載の学習システムであって、
前記学習方針決定部は、
前記複数のカメラの特性及び配置の少なくとも一方に基づいて、複数の共通撮像領域の各々に対して視差の推論難易度を推定し、
前記推定の結果に基づいて、複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する、学習システム。 - 請求項1に記載の学習システムであって、
前記車両に配置されたLiDARにより取得された点群データに基づいて前記正解値データを生成する視差正解値作成部をさらに備え、
前記学習方針決定部は、前記複数のカメラと前記LiDARとの位置関係に基づいて、複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する、学習システム。 - 請求項1に記載の学習システムであって、
前記車両に配置されたLiDARにより取得された点群データに基づいて前記正解値データを生成する視差正解値作成部をさらに備え、
前記学習方針決定部は、複数の共通撮像領域の各々に含まれるLiDARの点群データの個数に基づいて、複数の共通撮像領域に対して視差算出モデルの学習の実行順序を決定する、学習システム。 - 請求項1に記載の学習システムであって、
前記正解値データは、ルールベースモデル又は特徴点マッチングにより求められた視差の少なくとも一方を含む、学習システム。 - 請求項1に記載の学習システムであって、
前記車載情報処理装置が、前記複数のカメラのうち少なくとも一つのカメラが変更されたことを検知すると、変更されたカメラの撮像領域が含まれる共通撮像領域に対する視差算出モデルの再学習を前記サーバ装置に依頼し、
前記サーバ装置が、
前記視差算出モデルを再学習することにより再学習モデルを生成し、
前記再学習モデルを前記車載情報処理装置に配信する、学習システム。 - 請求項1に記載の学習システムであって、
前記車載情報処理装置が、前記複数のカメラのうち少なくとも一つのカメラに異常が発生したことを検知すると、異常が検知されたカメラの異常状態を前記サーバ装置に通知し、
前記サーバ装置が、
前記異常状態に基づいて、前記異常が検知されたカメラの撮像領域が含まれる共通撮像領域に対する視差算出モデルの再学習を実行するか否かを判断し、
再学習を実行すると判断した視差算出モデルを再学習することにより再学習モデルを生成し、
前記再学習モデルを前記車載情報処理装置に配信する、学習システム。 - 請求項1に記載の学習システムであって、
前記車載情報処理装置が、前記複数のカメラで撮像された複数の画像を前記サーバ装置に送信し、
前記サーバ装置が、
前記複数の画像に基づいて、複数の前記視差算出モデルのうち少なくとも一つの視差算出モデルの学習に使用されていないデータが含まれるか否かを判断し、
複数の前記視差算出モデルのうち少なくとも一つの視差算出モデルの学習に使用されていないデータが含まれる場合に、前記視差算出モデルを再学習することにより再学習モデルを生成し、
前記再学習モデルを前記車載情報処理装置に配信する、学習システム。 - コンピュータにより実行される学習方法であって、
視野の少なくとも一部が重複する共通撮像領域を有する複数のカメラにより撮像された画像を取得するステップと、
複数の共通撮像領域毎に前記画像を用いて視差を推論する視差推論モデルの学習の実行順序を決定するステップと、
決定された実行順序に従って、学習対象の共通撮像領域を有する複数のカメラから取得した画像を視差推論モデルに入力して、得られる視差と正解値データの差から視差推論モデルを学習するステップと、を含み、
前記正解値データは、学習対象の共通撮像領域よりも前の実行順序に割り当てられた共通撮像領域の視差情報を含む、学習方法。 - 請求項9に記載の学習方法であって、
前記複数のカメラの特性及び配置の少なくとも一方に基づいて、複数の共通撮像領域の各々に対して視差の推論難易度を推定するステップを含み、
前記推定の結果に基づいて、複数の共通撮像領域に対して視差推論モデルの学習の実行順序を決定する、学習方法。 - 請求項9に記載の学習方法であって、
前記複数のカメラを備えた車両に配置されたLiDARにより取得された点群データに基づいて前記正解値データを生成するステップを含み、
前記複数のカメラと前記LiDARとの位置関係に基づいて、複数の共通撮像領域に対して視差推論モデルの学習の実行順序を決定する、学習方法。 - 請求項9に記載の学習方法であって、
前記正解値データは、取得した画像に基づいて、ルールベースモデル又は特徴点マッチングにより求められた視差の少なくとも一方を含む、学習方法。 - 請求項9に記載の学習方法であって、
前記複数のカメラを備えた車両に配置されたLiDARにより取得された点群データに基づいて前記正解値データを生成するステップを含み、
複数の共通撮像領域の各々に含まれるLiDARの点群データの個数に基づいて、複数の共通撮像領域に対して視差推論モデルの学習の実行順序を決定する、学習方法。 - 請求項9に記載の学習方法であって、
センサ構成の変化、センサ状態の変化、及び追加データの収集状況の少なくとも一つに応じて視差推論モデルの学習の実行順序を決定し、視差推論モデルを再学習する、学習方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024060040A JP2025157800A (ja) | 2024-04-03 | 2024-04-03 | 学習システム及び学習方法 |
| JP2024-060040 | 2024-04-03 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025211129A1 true WO2025211129A1 (ja) | 2025-10-09 |
Family
ID=97266900
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2025/009758 Pending WO2025211129A1 (ja) | 2024-04-03 | 2025-03-13 | 学習システム及び学習方法 |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2025157800A (ja) |
| WO (1) | WO2025211129A1 (ja) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20180139431A1 (en) * | 2012-02-24 | 2018-05-17 | Matterport, Inc. | Capturing and aligning panoramic image and depth data |
| US20200394813A1 (en) * | 2019-06-17 | 2020-12-17 | SafeAI, Inc. | Techniques for volumetric estimation |
| JP2022173069A (ja) * | 2021-05-07 | 2022-11-17 | キヤノン株式会社 | 画像処理装置及び方法、及び、撮像装置及びその制御方法、プログラム、記憶媒体 |
-
2024
- 2024-04-03 JP JP2024060040A patent/JP2025157800A/ja active Pending
-
2025
- 2025-03-13 WO PCT/JP2025/009758 patent/WO2025211129A1/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20180139431A1 (en) * | 2012-02-24 | 2018-05-17 | Matterport, Inc. | Capturing and aligning panoramic image and depth data |
| US20200394813A1 (en) * | 2019-06-17 | 2020-12-17 | SafeAI, Inc. | Techniques for volumetric estimation |
| JP2022173069A (ja) * | 2021-05-07 | 2022-11-17 | キヤノン株式会社 | 画像処理装置及び方法、及び、撮像装置及びその制御方法、プログラム、記憶媒体 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2025157800A (ja) | 2025-10-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3732657B1 (en) | Vehicle localization | |
| JP5926228B2 (ja) | 自律車両用の奥行き検知方法及びシステム | |
| US9884623B2 (en) | Method for image-based vehicle localization | |
| JP4919036B2 (ja) | 移動物体認識装置 | |
| CN111263960B (zh) | 用于更新高清晰度地图的设备和方法 | |
| JP5089545B2 (ja) | 道路境界検出判断装置 | |
| EP2757527B1 (en) | System and method for distorted camera image correction | |
| US11887336B2 (en) | Method for estimating a relative position of an object in the surroundings of a vehicle and electronic control unit for a vehicle and vehicle | |
| EP2960858B1 (en) | Sensor system for determining distance information based on stereoscopic images | |
| WO2018142900A1 (ja) | 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム | |
| KR20160123668A (ko) | 무인자동주차 기능 지원을 위한 장애물 및 주차구획 인식 장치 및 그 방법 | |
| CN111937036A (zh) | 用于处理传感器数据的方法、设备和具有指令的计算机可读存储介质 | |
| WO2020154990A1 (zh) | 目标物体运动状态检测方法、设备及存储介质 | |
| CN110992424B (zh) | 基于双目视觉的定位方法和系统 | |
| CN111989541B (zh) | 立体摄像机装置 | |
| JP2019139420A (ja) | 立体物認識装置、撮像装置および車両 | |
| KR102003387B1 (ko) | 조감도 이미지를 이용한 교통 장애물의 검출 및 거리 측정 방법, 교통 장애물을 검출하고 거리를 측정하는 프로그램을 저장한 컴퓨터 판독가능 기록매체 | |
| US20210190509A1 (en) | Position estimating apparatus and position estimating method | |
| CN116449356A (zh) | 基于聚集的lidar数据对准 | |
| US12525003B2 (en) | Method and system for determining ground level using an artificial neural network | |
| CN118735999A (zh) | 相机定位 | |
| CN110864670B (zh) | 目标障碍物位置的获取方法和系统 | |
| WO2022133986A1 (en) | Accuracy estimation method and system | |
| JP2025157800A (ja) | 学習システム及び学習方法 | |
| JP5903901B2 (ja) | 車両位置算出装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 25782285 Country of ref document: EP Kind code of ref document: A1 |