WO2025197855A1 - 地図作成装置、地図作成方法及び地図作成プログラム - Google Patents

地図作成装置、地図作成方法及び地図作成プログラム

Info

Publication number
WO2025197855A1
WO2025197855A1 PCT/JP2025/010250 JP2025010250W WO2025197855A1 WO 2025197855 A1 WO2025197855 A1 WO 2025197855A1 JP 2025010250 W JP2025010250 W JP 2025010250W WO 2025197855 A1 WO2025197855 A1 WO 2025197855A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature points
predetermined value
feature
key frames
images
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
PCT/JP2025/010250
Other languages
English (en)
French (fr)
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.)
Toyota Central R&D Labs Inc
Aisin Corp
Original Assignee
Toyota Central R&D Labs Inc
Aisin Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Central R&D Labs Inc, Aisin Corp filed Critical Toyota Central R&D Labs Inc
Publication of WO2025197855A1 publication Critical patent/WO2025197855A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/246Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules

Definitions

  • This disclosure relates to a map creation device, a map creation method, and a map creation program.
  • Non-Patent Document 1 discloses a system that simultaneously identifies the position of a mobile robot and creates an environmental map from images captured by a camera.
  • Non-patent document 1 Raul Mur-Artal, J. M. M. Montiel, Juan D. Tardos, "ORB-SLAM: a Versatile and Accurate Monocular SLAM System", IEEE Transactions on Robotics Volume 31 Issue 5, pp 1147-1163
  • the falsely detected feature points may be incorrectly associated with actual feature points in the environment, making it impossible to correctly calculate the 3D positions of the actual feature points in the environment. Furthermore, when falsely detected feature points are associated with each other and the 3D positions of multiple associated feature points are simultaneously optimized using bundle adjustment, the falsely detected feature points may pull the actual feature points, increasing the error in their 3D positions.
  • the present disclosure has been made in consideration of the above points, and aims to provide a map creation device, map creation method, and map creation program that improve the accuracy of environmental maps created using images captured by a camera compared to conventional methods.
  • a map creation device comprising: an acquisition unit that acquires images captured by an imaging device mounted on a vehicle; a selection unit that selects an image acquired by the acquisition unit as a key frame each time the amount of movement of the vehicle exceeds a predetermined value; a feature point detection unit that detects multiple feature points from the image of each of the key frames; a feature point selection unit that excludes, from feature point correspondence, feature points detected by the feature point detection unit from the image of each of the key frames whose distance on the image between consecutive key frames is smaller than a predetermined value and whose brightness value is greater than a predetermined value; a feature point correspondence unit that matches feature points between the images of each of the key frames based on the feature amounts of feature points not excluded by the feature point selection unit; and a position calculation unit that calculates the three-dimensional positions of the feature points matched by the feature point correspondence unit.
  • the feature point correspondence unit may exclude feature points for which the distance on the image between successive key frames is less than a predetermined value, in descending order of brightness value, until the number of feature points reaches the predetermined value.
  • the position calculation unit may, for feature points where the distance on the image between consecutive key frames is smaller than a predetermined value, relatively decrease the optimization weight for the feature points when calculating the three-dimensional position of the feature points as the brightness value increases.
  • a map creation method in which a processor acquires images captured by an imaging device mounted on a vehicle, selects the acquired image as a key frame each time the amount of movement of the vehicle exceeds a predetermined value, detects multiple feature points from the image of each of the key frames, excludes from the feature point correspondence those feature points detected from the image of each of the key frames whose distance on the image between consecutive key frames is less than a predetermined value and whose brightness value is greater than a predetermined value, matches the feature points between the images of each of the key frames based on the feature amounts of the feature points that were not excluded, and executes a process of calculating the three-dimensional positions of the matched feature points.
  • a map creation program causes a computer to acquire images captured by an imaging device mounted on a vehicle, select the acquired image as a key frame each time the amount of movement of the vehicle exceeds a predetermined value, detect multiple feature points from the image of each of the key frames, exclude from the feature point correspondence those feature points detected from the image of each of the key frames whose distance on the image between consecutive key frames is less than a predetermined value and whose brightness value is greater than a predetermined value, associate feature points between the images of each of the key frames based on the feature amounts of the feature points that were not excluded, and calculate the three-dimensional positions of the associated feature points.
  • This disclosure provides a map creation device, map creation method, and map creation program that improve the accuracy of environmental maps created using images captured by a camera compared to conventional methods.
  • FIG. 1 is a diagram illustrating an overview of a map creation device according to an embodiment of the disclosed technology.
  • FIG. 2 is a block diagram showing the hardware configuration of the map creation device.
  • FIG. 2 is a block diagram illustrating an example of a functional configuration of the map creation device.
  • 10 is a flowchart showing the flow of a map creation process performed by the map creation device.
  • FIG. 2 is a diagram illustrating calculation of vehicle odometry.
  • 10 is an example of a keyframe image.
  • 10 is a flowchart showing the flow of a map creation process performed by the map creation device.
  • 10A and 10B are diagrams illustrating calculation of the three-dimensional position of a feature point according to the principle of triangulation using the amount of change in the position and orientation of a camera.
  • FIG. 1 is a diagram showing an overview of a map creation device according to this embodiment.
  • the map creation device 10 is a device that creates an environmental map using images captured by a camera 20 mounted on a vehicle (not shown).
  • the camera 20 is an example of an imaging device, and sequentially sends images captured at predetermined intervals (for example, every 0.1 seconds) to the map creation device 10.
  • the map creation device 10 uses the sensing results of a wheel speed sensor 30 that senses the rotational speed of the vehicle's wheels, and a steering angle sensor 40 that senses the steering angle of the vehicle.
  • the vehicle's moving speed can be determined from the sensing result of the wheel speed sensor 30, and the vehicle's turning radius can be determined from the sensing result of the steering angle sensor 40.
  • the map creation device 10 can reduce the influence of erroneously detected feature points that can occur with conventional map creation methods when creating an environmental map using images captured by a camera 20.
  • the map creation device 10 according to this embodiment is characterized by improving the accuracy of environmental maps created using images captured by a camera compared to conventional map creation methods.
  • FIG. 2 is a block diagram showing the hardware configuration of the map creation device 10.
  • the map creation device 10 has a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, storage 14, an input unit 15, a display unit 16, and a communication interface (I/F) 17.
  • CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • storage 14 an input unit
  • I/F communication interface
  • Each component is connected to each other via a bus 19 so that they can communicate with each other.
  • CPU 11 is a central processing unit that executes various programs and controls each component. That is, CPU 11 reads programs from ROM 12 or storage 14 and executes them using RAM 13 as a work area. CPU 11 controls the above components and performs various calculations in accordance with the programs recorded in ROM 12 or storage 14.
  • ROM 12 or storage 14 stores a map creation program that creates an environmental map using images captured by camera 20.
  • ROM 12 stores various programs and data.
  • RAM 13 temporarily stores programs or data as a working area.
  • Storage 14 is composed of a storage device such as an HDD (Hard Disk Drive), SSD (Solid State Drive), or flash memory, and stores various programs including the operating system, and various data.
  • the input unit 15 includes a pointing device such as a mouse and a keyboard, and is used to perform various inputs.
  • the display unit 16 is, for example, a liquid crystal display, and displays various information.
  • the display unit 16 may also be a touch panel type and function as the input unit 15.
  • the communication interface 17 is an interface for communicating with other devices, and uses standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark).
  • the map creation device 10 uses the above hardware resources to realize various functions.
  • Figure 3 is a block diagram showing an example of the functional configuration of the map creation device 10.
  • the map creation device 10 has, as its functional components, an acquisition unit 101, an odometry calculation unit 102, a selection unit 103, a feature point detection unit 104, a feature point selection unit 105, a feature point correspondence unit 106, and a position calculation unit 107.
  • Each functional component is realized by the CPU 11 reading and executing a map creation program stored in the ROM 12 or storage 14.
  • the acquisition unit 101 sequentially acquires images captured by the camera 20, the sensing results of the wheel speed sensor 30 that senses the rotational speed of the vehicle's wheels, and the sensing results of the steering angle sensor 40 that senses the steering angle of the vehicle.
  • the odometry calculation unit 102 calculates the vehicle position change amount ( ⁇ X v , ⁇ Y v ) and yaw angle change amount ⁇ v in the vehicle coordinate system from the vehicle travel distance obtained from the sensing results of the wheel speed sensor 30 and the vehicle turning radius obtained from the sensing results of the steering angle sensor 40 .
  • the selection unit 103 selects a key frame image from among the images acquired from the camera 20. Specifically, the selection unit 103 first selects the image acquired from the camera 20 as the first key frame, and thereafter selects a new image acquired from the camera 20 as a different key frame each time the amount of vehicle movement obtained from the sensing results of the wheel speed sensor 30 exceeds a predetermined value (e.g., 0.3 m).
  • a predetermined value e.g., 0.3 m
  • the feature point detection unit 104 uses an arbitrary algorithm to detect multiple feature points from the image selected as a key frame by the selection unit 103.
  • An example of an algorithm for detecting feature points from an image is FAST (Features from Accelerated Segment Test).
  • FAST is an algorithm that can quickly detect corners in an image.
  • the feature point selection unit 105 excludes from the feature point correspondence those feature points detected by the feature point detection unit 104 from the images of each successive key frame whose distance on the image between successive key frames is less than a predetermined value and whose brightness value is greater than a predetermined value.
  • the feature point correspondence unit 106 corresponds feature points between images of each key frame based on feature amounts described by the brightness values of the areas surrounding feature points that were not excluded by the feature point selection unit 105.
  • the feature point correspondence unit 106 may exclude feature points for which the distance on the image between successive key frames is less than a predetermined value, in descending order of brightness value, until the number of feature points reaches the predetermined value.
  • the position calculation unit 107 calculates the three-dimensional positions of the feature points associated by the feature point correspondence unit 106.
  • the position calculation unit 107 calculates the amount of change in position and orientation of the camera 20 between key frames from the positions on the images of the feature points associated by the feature point correspondence unit 106, and calculates the three-dimensional positions of the feature points using the calculation results of the position and orientation change amount according to the principles of triangulation.
  • the position calculation unit 107 then applies bundle adjustment to the images of all key frames, thereby simultaneously optimizing the amount of change in position and orientation of the camera 20 and the three-dimensional positions of the feature points.
  • the position calculation unit 107 may relatively decrease the optimization weight for the feature point when calculating the three-dimensional position of the feature point as the brightness value increases.
  • FIG. 4 is a flowchart showing the flow of the map creation process performed by the map creation device 10.
  • the map creation process is performed by the CPU 11 reading the map creation program from the ROM 12 or storage 14, expanding it into the RAM 13, and executing it.
  • step S101 the CPU 11 periodically acquires images captured by the camera 20.
  • the CPU 11 acquires images captured by the camera 20, for example, every 0.1 seconds.
  • Fig. 5 is a diagram illustrating the calculation of the vehicle odometry.
  • the CPU 11 calculates the vehicle position change amount ( ⁇ Xv, ⁇ Yv) and the yaw angle change amount ⁇ v in the vehicle coordinate system from the vehicle movement amount obtained from the sensing results of the wheel speed sensors 30 and the vehicle turning radius obtained from the sensing results of the steering angle sensor 40, thereby calculating the vehicle odometry.
  • step S103 the CPU 11 selects a key frame image from the images acquired from the camera 20. Specifically, the CPU 11 first selects the image acquired from the camera 20 as the first key frame, and thereafter selects a new image acquired from the camera 20 as a different key frame each time the amount of vehicle movement obtained from the sensing results of the wheel speed sensor 30 exceeds a predetermined value (e.g., 0.3 m).
  • a predetermined value e.g., 0.3 m
  • step S104 the CPU 11 uses any algorithm to detect multiple feature points from the image selected as a key frame in step S103.
  • An example of an algorithm for detecting feature points from an image is FAST.
  • step S105 the CPU 11 selects feature points to be matched in the image of each key frame. Specifically, of the feature points detected by the feature point detection unit 104 from the image of each key frame, the CPU 11 excludes from the feature point matching those feature points whose distance on the image between consecutive key frames is less than a predetermined value and whose brightness value is greater than a predetermined value.
  • FIG. 6 shows an example of images of consecutive key frames.
  • FIG. 6 shows the (N-1)th key frame image 200 n-1 and the Nth key frame image 200 n .
  • key frame images may contain overexposed areas due to lighting or the like.
  • the CPU 11 excludes feature points whose brightness value b is greater than a predetermined value b s and whose image distance d between consecutive key frames is less than a predetermined value d s from the matching targets.
  • the image distance d is calculated as follows using the coordinates (x n-1 , y n-1 ) of the feature point in the ( N- 1)th key frame image 200 n-1 and the coordinates (x n , y n ) of the feature point in the Nth key frame image 200 n :
  • Feature points near the edge of a blown-out highlight area have a large brightness value b, and if the lighting equipment causing the blown-out highlight area is far from the camera, the distance d on the image is small. Therefore, by setting the predetermined value b s to a large value, for example, 0.8 (when brightness values are expressed as 0 to 1), and the predetermined value d s to a small value, such as 10 pixels, the CPU 11 can exclude feature points that are erroneously detected due to blown-out highlight area.
  • step S106 the CPU 11 associates the feature points selected in step S105 with each other using local feature amounts such as ORB. If the number of feature points not excluded in step S105 exceeds a predetermined value, the CPU 11 may exclude feature points whose distance on the image of each key frame is less than the predetermined value in descending order of brightness value until the number of feature points reaches the predetermined value.
  • the feature amounts may be described based on brightness values or color information (e.g., RGB).
  • step S107 the CPU 11 calculates the three-dimensional positions of the feature points associated in step S106. Specifically, the CPU 11 calculates the amount of change in position and orientation of the camera 20 between key frames from the positions on the image of the feature points associated in step S106, and uses the amount of change in position and orientation of the camera 20 to calculate the three-dimensional positions of the feature points according to the principles of triangulation.
  • Figure 7 is a flowchart showing the flow of the map creation process by the map creation device 10, and is a flowchart showing the process of calculating the three-dimensional positions of feature points.
  • step S111 the CPU 11 determines whether the key frame to be processed is the second one.
  • step S112 the CPU 11 calculates the amount of change in position and orientation of the camera 20 using an 8-point algorithm and RANSAC (RANdom Sample Consensus).
  • step S111 determines whether the key frame to be processed is the second (step S111; No). If the result of the determination in step S111 is that the key frame to be processed is not the second (step S111; No), then in step S113, the CPU 11 calculates the amount of change in position and orientation of the camera 20 that minimizes the sum of reprojection errors.
  • step S114 the CPU 11 calculates the three-dimensional positions of the feature points using the amount of change in position and orientation of the camera 20 according to the principles of triangulation.
  • FIG. 8 is a diagram illustrating calculation of the three-dimensional position of a feature point according to the principle of triangulation using the amount of change in the position and orientation of the camera 20.
  • the three-dimensional position of the feature point is calculated according to the principle of triangulation using the amount of change in the position and orientation of the camera 20 from the feature point in the (N-1)th key frame image 200 n-1 and the feature point in the Nth key frame image 200 n , which are associated in advance.
  • the CPU 11 applies bundle adjustment to all key frames to simultaneously optimize the amount of change in position and orientation of the camera 20 and the three-dimensional positions of the feature points.
  • the CPU 11 may decrease the optimization weight the larger the brightness value. By decreasing the optimization weight the larger the brightness value, it is possible to reduce the influence of falsely detected feature points that could not be excluded in step S105.
  • the map creation device 10 eliminates the problem that occurred in the creation of conventional environmental maps, in which falsely detected feature points are mistakenly associated with feature points that actually exist in the environment, making it impossible to correctly calculate the three-dimensional positions of feature points that actually exist in the environment.
  • the map creation device 10 associates misdetected feature points with each other, and when simultaneously optimizing the three-dimensional positions of multiple associated feature points using bundle adjustment, the larger the brightness value, the smaller the optimization weight. This eliminates the problem that occurs in the creation of conventional environmental maps, where the misdetected feature points tend to attract attention and increase the error in the three-dimensional positions of actual feature points. As a result, the map creation device 10 according to this embodiment can improve the accuracy of environmental maps created using images captured by a camera compared to conventional map creation methods.
  • the effects described in the above embodiments are descriptive or exemplary, and are not limited to those described in the above embodiments.
  • the technology of the present disclosure may achieve other effects in addition to, or in place of, the effects described in the above embodiments, that would be obvious to a person with ordinary skill in the technical field of the present disclosure from the description in the above embodiments.
  • the map creation process executed by the CPU in each of the above embodiments by loading software may also be executed by various processors other than the CPU.
  • processors in this case include PLDs (Programmable Logic Devices) such as FPGAs (Field-Programmable Gate Arrays), whose circuit configuration can be changed after manufacture, and dedicated electrical circuits, such as ASICs (Application Specific Integrated Circuits), which are processors with circuit configurations designed specifically to execute specific processes.
  • the map creation process may be executed by one of these various processors, or by a combination of two or more processors of the same or different types (e.g., multiple FPGAs, or a combination of a CPU and an FPGA).
  • the hardware structure of these various processors is, more specifically, an electrical circuit that combines circuit elements such as semiconductor devices.
  • map creation processing program is pre-stored (installed) in ROM or storage
  • the program may also be provided in a form recorded on a non-transitory recording medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), or a USB (Universal Serial Bus) memory.
  • the program may also be downloaded from an external device via a network.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Navigation (AREA)

Abstract

地図作成装置は、撮像装置で撮像された画像を取得する取得部と、車両の移動量が所定値を超える度に、取得した画像をキーフレームとして選択する選択部と、各前記キーフレームの画像から複数の特徴点を検出する特徴点検出部と、検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外する特徴点選定部と、除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付ける特徴点対応部と、対応付けた特徴点の三次元位置を計算する位置計算部と、を備える。

Description

地図作成装置、地図作成方法及び地図作成プログラム
 本開示は、地図作成装置、地図作成方法及び地図作成プログラムに関する。
 カメラが撮像した画像を用いて環境地図を作成する技術が存在する。例えば非特許文献1は、カメラで撮像した画像から、移動ロボットの位置同定と環境地図作成との同時に実行するシステムを開示している。
   非特許文献1:Raul Mur-Artal, J. M. M. Montiel, Juan D. Tardos, "ORB-SLAM: a Versatile and Accurate Monocular SLAM System", IEEE Transactions on Robotics Volume 31 Issue 5, pp 1147-1163
 車両に搭載されたカメラから遠方にある照明機器がカメラで撮像された画像に写ると、画像の一部が白飛びし、白飛びの領域の端付近から特徴点が誤検出される場合がある。特徴点が誤検出されることで、誤検出された特徴点と環境中に実在する特徴点が誤って対応付けられてしまい、環境中に実在する特徴点の三次元位置を正しく計算できない問題や、誤検出された特徴点どうしが対応付けられ、対応付けられた複数の特徴点の三次元位置をバンドル調整で同時に最適化する際に、誤検出された特徴点に引っ張られて、実在する特徴点の三次元位置の誤差が大きくなる問題があった。
 本開示は、上記の点に鑑みてなされたものであり、従来と比べてカメラが撮像した画像を用いて作成する環境地図の精度を向上させる地図作成装置、地図作成方法及び地図作成プログラムを提供することを目的とする。
 上記の目的を達成するために、本開示のある観点によれば、車両に搭載された撮像装置で撮像された画像を取得する取得部と、前記車両の移動量が所定値を超える度に、前記取得部が取得した画像をキーフレームとして選択する選択部と、各前記キーフレームの画像から複数の特徴点を検出する特徴点検出部と、各前記キーフレームの画像から前記特徴点検出部が検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外する特徴点選定部と、前記特徴点選定部で除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付ける特徴点対応部と、前記特徴点対応部が対応付けた特徴点の三次元位置を計算する位置計算部と、を備える、地図作成装置が提供される。
 前記特徴点対応部は、前記特徴点選定部で除外されなかった特徴点の数が所定値を超えた場合、連続する前記キーフレーム間の画像上の距離が所定値より小さい特徴点を、特徴点の数が所定値に達するまで、輝度値が大きい順に除外してもよい。
 前記位置計算部は、連続する前記キーフレーム間の画像上の距離が所定値より小さい特徴点について、輝度値が大きいほど当該特徴点に対する、特徴点の三次元位置の計算の際の最適化の重みを相対的に小さくしてもよい。
 上記の目的を達成するために、本開示の別の観点によれば、プロセッサが、車両に搭載された撮像装置で撮像された画像を取得し、前記車両の移動量が所定値を超える度に、取得した画像をキーフレームとして選択し、各前記キーフレームの画像から複数の特徴点を検出し、各前記キーフレームの画像から検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外し、除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付け、対応付けた特徴点の三次元位置を計算する処理を実行する、地図作成方法が提供される。
 上記の目的を達成するために、本開示の別の観点によれば、コンピュータに、車両に搭載された撮像装置で撮像された画像を取得し、前記車両の移動量が所定値を超える度に、取得した画像をキーフレームとして選択し、各前記キーフレームの画像から複数の特徴点を検出し、各前記キーフレームの画像から検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外し、除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付け、対応付けた特徴点の三次元位置を計算する処理を実行させる、地図作成プログラムが提供される。
 本開示によれば、従来と比べてカメラが撮像した画像を用いて作成する環境地図の精度を向上させる地図作成装置、地図作成方法及び地図作成プログラムを提供することができる。
開示の技術の実施形態に係る地図作成装置の概要を示す図である。 地図作成装置のハードウェア構成を示すブロック図である。 地図作成装置の機能構成の例を示すブロック図である。 地図作成装置による地図作成処理の流れを示すフローチャートである。 車両のオドメトリの計算について説明する図である。 キーフレームの画像の例である。 地図作成装置による地図作成処理の流れを示すフローチャートである。 カメラの位置姿勢変化量を用いた、三角測量の原理による特徴点の三次元位置の計算について説明する図である。
 以下、本開示の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一または等価な構成要素および部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
 図1は、本実施形態に係る地図作成装置の概要を示す図である。地図作成装置10は、車両(図示せず)に搭載されるカメラ20で撮像された画像を用いて環境地図を作成する装置である。カメラ20は、撮像装置の一例であり、所定の間隔(例えば0.1秒おき)で撮像した画像を地図作成装置10に逐次送る。地図作成装置10は、カメラ20で撮像された画像を用いて環境地図を作成する際に、車両の車輪の回転速度をセンシングする車輪速センサ30と、車両の操舵角をセンシングする操舵角センサ40と、のセンシング結果を用いる。車輪速センサ30のセンシング結果からは車両の移動速度が求められ、操舵角センサ40のセンシング結果からは車両の旋回半径が求められる。
 本実施形態に係る地図作成装置10は、カメラ20で撮像された画像を用いて環境地図を作成する際に、従来の地図作成手法では生じる可能性があった、誤検出された特徴点の影響を低減することができる。本実施形態に係る地図作成装置10は、誤検出された特徴点の影響を低減することで、従来の地図作成手法と比較して、カメラが撮像した画像を用いて作成する環境地図の精度を向上させることを特徴としている。
 図2は、地図作成装置10のハードウェア構成を示すブロック図である。
 図2に示すように、地図作成装置10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ストレージ14、入力部15、表示部16及び通信インタフェース(I/F)17を有する。各構成は、バス19を介して相互に通信可能に接続されている。
 CPU11は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU11は、ROM12またはストレージ14からプログラムを読み出し、RAM13を作業領域としてプログラムを実行する。CPU11は、ROM12またはストレージ14に記録されているプログラムにしたがって、上記各構成の制御および各種の演算処理を行う。本実施形態では、ROM12またはストレージ14には、カメラ20で撮像された画像を用いて環境地図を作成する地図作成プログラムが格納されている。
 ROM12は、各種プログラムおよび各種データを格納する。RAM13は、作業領域として一時的にプログラムまたはデータを記憶する。ストレージ14は、HDD(Hard Disk Drive)、SSD(Solid State Drive)またはフラッシュメモリ等の記憶装置により構成され、オペレーティングシステムを含む各種プログラム、および各種データを格納する。
 入力部15は、マウス等のポインティングデバイス、およびキーボードを含み、各種の入力を行うために使用される。
 表示部16は、たとえば、液晶ディスプレイであり、各種の情報を表示する。表示部16は、タッチパネル方式を採用して、入力部15として機能しても良い。
 通信インタフェース17は、他の機器と通信するためのインタフェースであり、たとえば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
 上記の地図作成プログラムを実行する際に、地図作成装置10は、上記のハードウェア資源を用いて、各種の機能を実現する。
 次に、地図作成装置10の機能構成について説明する。
 図3は、地図作成装置10の機能構成の例を示すブロック図である。
 図3に示すように、地図作成装置10は、機能構成として、取得部101、オドメトリ計算部102、選択部103、特徴点検出部104、特徴点選定部105、特徴点対応部106及び位置計算部107を有する。各機能構成は、CPU11がROM12またはストレージ14に記憶された地図作成プログラムを読み出し、実行することにより実現される。
 取得部101は、カメラ20で撮像された画像と、車両の車輪の回転速度をセンシングする車輪速センサ30のセンシング結果と、車両の操舵角をセンシングする操舵角センサ40のセンシング結果と、を逐次取得する。
 オドメトリ計算部102は、車輪速センサ30のセンシング結果から得られる車両の走行距離と、操舵角センサ40のセンシング結果から得られる車両の旋回半径とから、車両座標系での車両の位置変化量(ΔX,ΔY)とヨー角変化量Δθとを計算する。
 選択部103は、カメラ20から取得した画像の中からキーフレームの画像を選択する。具体的には、選択部103は、最初にカメラ20から取得した画像を1番目のキーフレームとして選択し、その後は、車輪速センサ30のセンシング結果から得られる車両の移動量が所定値(例えば0.3m)を超えるごとに、新たにカメラ20から取得した画像を別のキーフレームとして選択する。
 特徴点検出部104は、選択部103がキーフレームとして選択した画像に対して任意のアルゴリズムを用いて複数の特徴点を検出する。画像から特徴点を検出するアルゴリズムとしては、例えばFAST(Features from Accelerated Segment Test)がある。FASTは、画像中のコーナー部分を高速に検出することができるアルゴリズムである。
 特徴点選定部105は、連続する各キーフレームの画像から特徴点検出部104が検出した特徴点の内、連続するキーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外する。
 特徴点対応部106は、特徴点選定部105で除外されなかった特徴点の周囲の領域の輝度値で記述される特徴量に基づいて、各キーフレームの画像間で特徴点を対応付ける。
 なお、特徴点対応部106は、特徴点選定部105で除外されなかった特徴点の数が所定値を超えた場合、連続するキーフレーム間の画像上の距離が所定値より小さい特徴点を、特徴点の数が所定値に達するまで、輝度値が大きい順に除外してもよい。
 位置計算部107は、特徴点対応部106が対応付けた特徴点の三次元位置を計算する。位置計算部107は、特徴点対応部106が対応付けた特徴点の画像上の位置から、キーフレーム間のカメラ20の位置姿勢変化量を計算し、位置姿勢変化量の計算結果を用いて、三角測量の原理により特徴点の三次元位置を計算する。そして位置計算部107は、全てのキーフレームの画像に対してバンドル調整を適用することにより、カメラ20の位置姿勢変化量と特徴点の三次元位置とを同時に最適化する。
 位置計算部107は、連続するキーフレーム間の画像上の距離が所定値より小さい特徴点について、輝度値が大きいほど、当該特徴点に対する、特徴点の三次元位置の計算の際の最適化の重みを相対的に小さくしてもよい。
 次に、地図作成装置10の作用について説明する。
 図4は、地図作成装置10による地図作成処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から地図作成プログラムを読み出して、RAM13に展開して実行することにより、地図作成処理が行われる。
 CPU11は、ステップS101において、カメラ20が撮像した画像を周期的に取得する。CPU11は、例えば0.1秒おきでカメラ20が撮像した画像を取得する。
 ステップS101に続いて、CPU11は、ステップS102において、車両のオドメトリを計算する。図5は、車両のオドメトリの計算について説明する図である。CPU11は、車輪速センサ30のセンシング結果から得られる車両の移動量と、操舵角センサ40のセンシング結果から得られる車両の旋回半径とから、車両座標系での車両の位置変化量(ΔX,ΔY)とヨー角変化量Δθとを計算することにより、車両のオドメトリを計算する。
 ステップS102に続いて、CPU11は、ステップS103において、カメラ20から取得した画像の中からキーフレームの画像を選択する。具体的には、CPU11は、最初にカメラ20から取得した画像を1番目のキーフレームとして選択し、その後は、車輪速センサ30のセンシング結果から得られる車両の移動量が所定値(例えば0.3m)を超えるごとに、新たにカメラ20から取得した画像を別のキーフレームとして選択する。
 ステップS103に続いて、CPU11は、ステップS104において、ステップS103がキーフレームとして選択した画像に対して任意のアルゴリズムを用いて複数の特徴点を検出する。画像から特徴点を検出するアルゴリズムとしては、例えばFASTがある。
 ステップS104に続いて、CPU11は、ステップS105において、各キーフレームの画像において、対応付け対象の特徴点を選定する。具体的に、CPU11は、各キーフレームの画像から特徴点検出部104が検出した特徴点の内、連続するキーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外する。
 図6は、連続するキーフレームの画像の例である。図6には、N-1番目のキーフレーム画像200n-1と、N番目のキーフレーム画像200とが示されている。キーフレームの画像には、図6に示したように、照明光などに起因する白飛び部分が含まれる場合がある。CPU11は、特徴点の輝度値bが所定値bよりも大きく、かつ、連続するキーフレーム間での画像上の距離dが所定値dよりも小さい特徴点を、対応付けの対象から除外する。画像上の距離dは、N-1番目のキーフレーム画像200n-1における特徴点の座標(xn-1,yn-1)と、N番目のキーフレーム画像200における特徴点の座標(x,y)とを用いて以下のように求められる。
 白飛び領域の端部付近の特徴点は輝度値bが大きく、白飛びの原因となる照明機器がカメラから遠方の場合は画像上の距離dが小さい。そのため、所定値bを例えば0.8(輝度値を0~1で表現する場合)と大きく設定し、所定値dを10ピクセルと小さく設定することにより、CPU11は、白飛びに起因する誤検出された特徴点を除外できる。
 ステップS105に続いて、CPU11は、ステップS106において、ステップS105で選定した特徴点同士を、ORB等の局所特徴量を用いて対応付ける。CPU11は、ステップS105で除外されなかった特徴点の数が所定値を超えた場合、各キーフレームの画像上の距離が所定値より小さい特徴点を、特徴点の数が所定値に達するまで、輝度値が大きい順に除外してもよい。そして、特徴量は輝度値に基づいて記述されるものでもよく、カラー情報(例えばRGB)に基づいて記述されるものでもよい。
 ステップS106に続いて、CPU11は、ステップS107において、ステップS106で対応付けた特徴点の三次元位置を計算する。具体的には、CPU11は、ステップS106で対応付けた特徴点の画像上の位置から、キーフレーム間のカメラ20の位置姿勢変化量を計算し、カメラ20の位置姿勢変化量を用いて、三角測量の原理により特徴点の三次元位置を計算する。
 図7は、地図作成装置10による地図作成処理の流れを示すフローチャートであり、特徴点の三次元位置の計算処理を示すフローチャートである。
 CPU11は、ステップS111において、処理対象のキーフレームが2番目であるかどうか判断する。
 ステップS111の判断の結果、処理対象のキーフレームが2番目であれば(ステップS111;Yes)、CPU11は、ステップS112において、8点アルゴリズムとRANSAC(RANdom SAmple Consensus)とにより、カメラ20の位置姿勢変化量を計算する。
 一方、ステップS111の判断の結果、処理対象のキーフレームが2番目でなければ(ステップS111;No)、CPU11は、ステップS113において、再投影誤差の和が最小となる、カメラ20の位置姿勢変化量を計算する。
 ステップS112又はステップS113に続いて、CPU11は、ステップS114において、カメラ20の位置姿勢変化量を用いて、三角測量の原理により、特徴点の三次元位置を計算する。
 図8は、カメラ20の位置姿勢変化量を用いた、三角測量の原理による特徴点の三次元位置の計算について説明する図である。予め対応付けられている、N-1番目のキーフレーム画像200n-1における特徴点と、N番目のキーフレーム画像200における特徴点とから、カメラ20の位置姿勢変化量を用いて、三角測量の原理により、当該特徴点の三次元位置が求められる。
 CPU11は、最後に、全キーフレームに対してバンドル調整を適用することにより、カメラ20の位置姿勢変化量と特徴点の三次元位置とを同時に最適化する。CPU11は、画像上の距離が上記所定値よりも小さい特徴点に対しては、輝度値が大きいほど最適化の重みを小さくしてもよい。輝度値が大きいほど最適化の重みを小さくすることにより、ステップS105で除外できなかった、誤検出の特徴点の影響を低減できる。
 以上説明したように、本実施形態に係る地図作成装置10は、誤検出された特徴点を除外することで、誤検出された特徴点と環境中に実在する特徴点が誤って対応付けられてしまい、環境中に実在する特徴点の三次元位置を正しく計算できないという、従来の環境地図の作成に生じていた問題が生じなくなる。
 また本実施形態に係る地図作成装置10は、誤検出された特徴点どうしが対応付けられ、対応付けられた複数の特徴点の三次元位置をバンドル調整で同時に最適化する際に、輝度値が大きいほど最適化の重みを小さくすることにより、誤検出された特徴点に引っ張られて、実在する特徴点の三次元位置の誤差が大きくなるという、従来の環境地図の作成に生じていた問題が生じなくなる。以上から、本実施形態に係る地図作成装置10は、従来の地図作成手法と比較して、カメラが撮像した画像を用いて作成する環境地図の精度を向上させることができる。
 以上、添付図面を参照しながら本開示の実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。上記で記載された実施形態は例示的なものであり、本開示の技術的範囲を限定するものではない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらの変更例または修正例についても、当然に本開示の技術的範囲に属するものと了解される。
 また、上記実施形態において記載された効果は、説明的又は例示的なものであり、上記実施形態において記載されたものに限定されない。つまり、本開示に係る技術は、上記実施形態において記載された効果とともに、又は上記実施形態において記載された効果に代えて、上記実施形態における記載から、本開示の技術分野における通常の知識を有する者には明らかな他の効果を奏しうる。
 なお、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した地図作成処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、地図作成処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
 また、上記各実施形態では、地図作成処理のプログラムがROMまたはストレージに予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記録媒体に記録された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
 2024年3月19日に出願された日本国特許出願2024-43581号の開示は、その全体が参照により本明細書に取り込まれる。

Claims (5)

  1.  車両に搭載された撮像装置で撮像された画像を取得する取得部と、
     前記車両の移動量が所定値を超える度に、前記取得部が取得した画像をキーフレームとして選択する選択部と、
     各前記キーフレームの画像から複数の特徴点を検出する特徴点検出部と、
     各前記キーフレームの画像から前記特徴点検出部が検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外する特徴点選定部と、
     前記特徴点選定部で除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付ける特徴点対応部と、
     前記特徴点対応部が対応付けた特徴点の三次元位置を計算する位置計算部と、
    を備える、地図作成装置。
  2.  前記特徴点対応部は、前記特徴点選定部で除外されなかった特徴点の数が所定値を超えた場合、連続する前記キーフレームの画像上の距離が所定値より小さい特徴点を、特徴点の数が所定値に達するまで、輝度値が大きい順に除外する、請求項1に記載の地図作成装置。
  3.  前記位置計算部は、連続する前記キーフレームの画像上の距離が所定値より小さい特徴点について、輝度値が大きいほど当該特徴点に対する、特徴点の三次元位置の計算の際の最適化の重みを相対的に小さくする、請求項1又は請求項2に記載の地図作成装置。
  4.  プロセッサが、
     車両に搭載された撮像装置で撮像された画像を取得し、
     前記車両の移動量が所定値を超える度に、取得した画像をキーフレームとして選択し、
     各前記キーフレームの画像から複数の特徴点を検出し、
     各前記キーフレームの画像から検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外し、
     除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付け、
     対応付けた特徴点の三次元位置を計算する
    処理を実行する、地図作成方法。
  5.  コンピュータに、
     車両に搭載された撮像装置で撮像された画像を取得し、
     前記車両の移動量が所定値を超える度に、取得した画像をキーフレームとして選択し、
     各前記キーフレームの画像から複数の特徴点を検出し、
     各前記キーフレームの画像から検出した特徴点の内、連続する前記キーフレーム間で画像上の距離が所定値よりも小さく、かつ輝度値が所定値よりも大きい特徴点を特徴点の対応付けから除外し、
     除外されなかった特徴点の特徴量に基づいて、各前記キーフレームの画像間で特徴点を対応付け、
     対応付けた特徴点の三次元位置を計算する
    処理を実行させる、地図作成プログラム。
PCT/JP2025/010250 2024-03-19 2025-03-17 地図作成装置、地図作成方法及び地図作成プログラム Pending WO2025197855A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2024043581A JP2025144024A (ja) 2024-03-19 2024-03-19 地図作成装置、地図作成方法及び地図作成プログラム
JP2024-043581 2024-03-19

Publications (1)

Publication Number Publication Date
WO2025197855A1 true WO2025197855A1 (ja) 2025-09-25

Family

ID=97139739

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2025/010250 Pending WO2025197855A1 (ja) 2024-03-19 2025-03-17 地図作成装置、地図作成方法及び地図作成プログラム

Country Status (2)

Country Link
JP (1) JP2025144024A (ja)
WO (1) WO2025197855A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021210492A1 (ja) * 2020-04-15 2021-10-21 株式会社Preferred Networks 情報処理装置、情報処理方法、およびプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021210492A1 (ja) * 2020-04-15 2021-10-21 株式会社Preferred Networks 情報処理装置、情報処理方法、およびプログラム

Also Published As

Publication number Publication date
JP2025144024A (ja) 2025-10-02

Similar Documents

Publication Publication Date Title
US11763568B2 (en) Ground plane estimation in a computer vision system
EP1329850A2 (en) Apparatus, program and method for detecting both stationary objects and moving objects in an image
JP5804185B2 (ja) 移動物体位置姿勢推定装置及び移動物体位置姿勢推定方法
US11263774B2 (en) Three-dimensional position estimation device and program
JP7343054B2 (ja) 位置推定方法、位置推定装置、および位置推定プログラム
CN108872991A (zh) 目标物检测与识别方法、装置、电子设备、存储介质
CN114677655B (zh) 多传感器目标检测方法、装置、电子设备以及存储介质
EP3690847B1 (en) Lift-up determining device and lift-up determining method
CN110853085B (zh) 基于语义slam的建图方法和装置及电子设备
JP2015041164A (ja) 画像処理装置、画像処理方法およびプログラム
JP2014523572A (ja) 地図データの生成
CN116958145B (zh) 图像处理方法、装置、视觉检测系统及电子设备
US10643338B2 (en) Object detection device and object detection method
CN116844124B (zh) 三维目标检测框标注方法、装置、电子设备和存储介质
CN116643291A (zh) 一种视觉与激光雷达联合剔除动态目标的slam方法
CN115035492A (zh) 车辆识别方法、装置、设备和存储介质
KR102368031B1 (ko) 인공신경망을 이용한 슬라브 길이 인식 방법 및 그 장치
CN117830999A (zh) 一种模拟汽车全景视觉进行场景感知的方法、装置
KR102831462B1 (ko) 차량의 객체 검출 장치 및 방법
KR102405818B1 (ko) 노이즈 제거 방법, 노이즈 제거 장치 및 상기 방법을 실행시키기 위하여 기록매체에 저장된 컴퓨터 프로그램
CN118230018A (zh) 地面断崖识别方法、装置、电子设备及可读存储介质
WO2025197855A1 (ja) 地図作成装置、地図作成方法及び地図作成プログラム
CN118149796B (zh) 退化环境下的地图构建方法、装置、电子设备及存储介质
US20210326611A1 (en) Electronic device for controlling driving vehicle and operation method of the electronic device
CN116894963B (zh) 一种基于上下文聚类与多模态融合的目标检测方法和系统

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

Country of ref document: EP

Kind code of ref document: A1