WO2015125299A1 - 自己位置算出装置及び自己位置算出方法 - Google Patents

自己位置算出装置及び自己位置算出方法 Download PDF

Info

Publication number
WO2015125299A1
WO2015125299A1 PCT/JP2014/054315 JP2014054315W WO2015125299A1 WO 2015125299 A1 WO2015125299 A1 WO 2015125299A1 JP 2014054315 W JP2014054315 W JP 2014054315W WO 2015125299 A1 WO2015125299 A1 WO 2015125299A1
Authority
WO
WIPO (PCT)
Prior art keywords
vehicle
self
traveling state
road surface
posture
Prior art date
Application number
PCT/JP2014/054315
Other languages
English (en)
French (fr)
Inventor
山口 一郎
西内 秀和
Original Assignee
日産自動車株式会社
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 日産自動車株式会社 filed Critical 日産自動車株式会社
Priority to EP14883047.4A priority Critical patent/EP3113147B1/en
Priority to CN201480076278.5A priority patent/CN106030681B/zh
Priority to US15/120,795 priority patent/US9684837B2/en
Priority to PCT/JP2014/054315 priority patent/WO2015125299A1/ja
Priority to JP2016503898A priority patent/JP6176387B2/ja
Priority to RU2016137938A priority patent/RU2628420C1/ru
Priority to MX2016010744A priority patent/MX349227B/es
Priority to BR112016019589-2A priority patent/BR112016019589B1/pt
Publication of WO2015125299A1 publication Critical patent/WO2015125299A1/ja

Links

Images

Classifications

    • 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/10Estimation 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 vehicle motion
    • B60W40/11Pitch movement
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K31/00Vehicle fittings, acting on a single sub-unit only, for automatically controlling vehicle speed, i.e. preventing speed from exceeding an arbitrarily established velocity or maintaining speed at a particular velocity, as selected by the vehicle operator
    • 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/10Estimation 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 vehicle motion
    • B60W40/112Roll movement
    • 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/10Estimation 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 vehicle motion
    • B60W40/114Yaw movement
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • 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
    • 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
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2400/00Special features of vehicle units
    • B60Y2400/30Sensors
    • B60Y2400/301Sensors for position or displacement
    • B60Y2400/3015Optical cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems

Definitions

  • the present invention relates to a self-position calculation device and a self-position calculation method.
  • Patent Document 1 A technique is known in which an image in the vicinity of a vehicle is captured by a camera mounted on the vehicle and the amount of movement of the vehicle is obtained based on the change in the image (see Patent Document 1).
  • Patent Document 1 a feature point is detected from an image so that the amount of movement can be obtained accurately even when the vehicle moves at low speed and delicately, the position of the feature point is obtained, and the moving direction and movement of the feature point.
  • the movement amount of the vehicle is obtained from the distance (movement amount).
  • the present invention has been proposed in view of the above-described circumstances, and resets the starting point for calculating the vehicle's own position when the behavior of the vehicle is stable, thereby accurately determining the vehicle's own position. It is an object of the present invention to provide a self-position calculating apparatus and method capable of calculating the same.
  • a self-position calculation apparatus captures an image of a road surface around a vehicle on which pattern light is projected, acquires an image, and determines the position of the pattern light in the image.
  • the attitude angle of the vehicle with respect to the road surface is calculated.
  • the self-position calculation device calculates a posture change amount of the vehicle based on a temporal change of a plurality of feature points on the road surface in the acquired image, and adds the posture change amount to the initial position and posture angle of the vehicle.
  • the self-position calculation device calculates the current position and the attitude angle of the vehicle by adding the attitude change amount to the predetermined initial distance and initial attitude angle.
  • FIG. 1 is a block diagram showing the overall configuration of the self-position calculation apparatus according to the first embodiment.
  • FIG. 2 is an external view showing an example of a method for mounting a projector and a camera on a vehicle.
  • FIG. 3A is a diagram illustrating a state in which the position on the road surface irradiated with the spot light is calculated using a projector and a camera, and FIG. 3B is different from the region irradiated with the pattern light. It is a figure which shows a mode that the moving direction of a camera is calculated
  • FIG. 4 is a diagram showing an image of pattern light obtained by performing binarization processing on an image acquired by a camera, FIG.
  • FIG. 4A is a diagram showing the entire pattern light
  • FIG. FIG. 4C is an enlarged view showing the spot light
  • FIG. 4C is a view showing the position of the center of gravity of the spot light.
  • FIG. 5 is a schematic diagram for explaining a method of calculating the change amount of the distance and the posture angle.
  • FIG. 6 is a diagram showing the feature points detected on the image
  • FIG. 6A is a diagram showing the first frame (image) acquired at time t
  • FIG. 6B is the diagram at time t + ⁇ t. It is a figure which shows the acquired 2nd frame.
  • FIG. 6 is a diagram showing the feature points detected on the image
  • FIG. 6A is a diagram showing the first frame (image) acquired at time t
  • FIG. 6B is the diagram at time t + ⁇ t. It is a figure which shows the acquired 2nd frame.
  • FIG. 7 is a time chart showing a process of resetting the distance and the attitude angle of the vehicle according to whether or not the vehicle is in a stable traveling state by the self-position calculating device according to the first embodiment.
  • FIG. 8 is a flowchart illustrating a processing procedure of self-position calculation processing by the self-position calculation apparatus according to the first embodiment.
  • FIG. 9 is a flowchart showing a detailed processing procedure of step S09 of FIG. 8 by the self-position calculating apparatus according to the first embodiment.
  • FIG. 10 is a flowchart showing a detailed processing procedure of step S09 of FIG. 8 by the self-position calculation apparatus according to the second embodiment.
  • the self-position calculating device includes a projector 11, a camera 12, and an engine control unit (ECU) 13.
  • the projector 11 is mounted on the vehicle and projects pattern light onto a road surface around the vehicle.
  • the camera 12 is an example of an imaging unit that is mounted on a vehicle and captures an image of a road surface around the vehicle including an area where pattern light is projected.
  • the ECU 13 is an example of a control unit that controls the projector 11 and executes a series of information processing cycles for calculating the vehicle's own position from an image acquired by the camera 12.
  • the camera 12 is a digital camera using a solid-state imaging device such as a CCD and a CMOS, and acquires a digital image that can be processed.
  • the imaging target of the camera 12 is a road surface around the vehicle, and the road surface around the vehicle includes the road surface of the front, rear, side, and bottom of the vehicle.
  • the camera 12 can be mounted on the front portion of the vehicle 10, specifically on the front bumper.
  • the height and direction in which the camera 12 is installed are adjusted so that the feature point (texture) on the road surface 31 in front of the vehicle 10 and the pattern light 32b projected from the projector 11 can be imaged, and the camera 12 is provided.
  • the lens focus and aperture are also automatically adjusted.
  • the camera 12 repeatedly captures images at a predetermined time interval and acquires a series of images (frames). Image data acquired by the camera 12 is transferred to the ECU 13 every time it is imaged and stored in a memory provided in the ECU 13.
  • the projector 11 projects pattern light 32 b having a predetermined shape including a square or rectangular lattice image toward the road surface 31 within the imaging range of the camera 12.
  • the camera 12 images the pattern light irradiated on the road surface 31.
  • the projector 11 includes, for example, a laser pointer and a diffraction grating.
  • the projector 11 diffracts the laser light emitted from the laser pointer with a diffraction grating, and as shown in FIG. 2 to FIG. 4, pattern light (pattern light consisting of a plurality of spot lights arranged in a matrix form) 32b, 32a).
  • the pattern light 32a composed of 5 ⁇ 7 spot lights is generated.
  • the ECU 13 includes a microcontroller including a CPU, a memory, and an input / output unit, and configures a plurality of information processing units that function as a self-position calculating device by executing a computer program installed in advance. .
  • the ECU 13 repeatedly executes a series of information processing cycles for calculating the vehicle's own position from the image acquired by the camera 12 for each image (frame).
  • the ECU 13 may also be used as an ECU used for other controls of the vehicle 10.
  • the plurality of information processing units include a pattern light extraction unit 21, an attitude angle calculation unit 22, a feature point detection unit 23, an attitude change amount calculation unit 24, a self-position calculation unit 26, and pattern light control.
  • a unit 27 and a traveling state determination unit 30 are included.
  • the posture change amount calculation unit 24 includes a feature point detection unit 23.
  • the pattern light extraction unit 21 reads an image acquired by the camera 12 from the memory, and extracts the position of the pattern light from this image. As shown in FIG. 3A, for example, the pattern light 32a composed of a plurality of spot lights arranged in a matrix on the projector 11 is projected toward the road surface 31, and the pattern light 32a reflected by the road surface 31 is reflected. Detection is performed by the camera 12. The pattern light extraction unit 21 extracts only the image of the spot light Sp as shown in FIGS. 4A and 4B by performing binarization processing on the image acquired by the camera 12. . Then, as shown in FIG.
  • the pattern light extraction unit 21 calculates the position He of the center of gravity of each spot light Sp, that is, the coordinates (Uj, Vj) on the image of the spot light Sp.
  • the position of the light 32a is extracted.
  • the coordinates are in units of pixels of the image sensor of the camera 12, and in the case of 5 ⁇ 7 spot light Sp, “j” is a natural number between 1 and 35.
  • the coordinates (Uj, Vj) on the image of the spot light Sp are stored in the memory as data indicating the position of the pattern light 32a.
  • the posture angle calculation unit 22 reads data indicating the position of the pattern light 32a from the memory, and calculates the distance and posture angle of the vehicle 10 with respect to the road surface 31 from the position of the pattern light 32a in the image acquired by the camera 12. For example, as shown in FIG. 3A, from the baseline length Lb between the projector 11 and the camera 12 and the coordinates (Uj, Vj) on the image of each spot light, The position on the road surface 31 irradiated with the spot light is calculated as a relative position with respect to the camera 12.
  • the attitude angle calculation unit 22 calculates the plane type of the road surface 31 on which the pattern light 32a is projected, that is, the distance and the attitude angle of the camera 12 with respect to the road surface 31 (normal vector) from the relative position of each spot light with respect to the camera 12. ) Is calculated.
  • the distance and posture angle of the camera 12 with respect to the road surface 31 are calculated as an example of the distance and posture angle of the vehicle 10 with respect to the road surface 31. .
  • the distance between the road surface 31 and the vehicle 10 and the posture angle of the vehicle 10 with respect to the road surface 31 can be obtained.
  • the attitude angle calculation unit 22 uses the principle of triangulation to determine the position on the road surface 31 irradiated with each spot light from the coordinates (Uj, Vj) of each spot light on the image relative to the camera 12. (Xj, Yj, Zj).
  • the distance and posture angle of the camera 12 with respect to the road surface 31 are abbreviated as “distance and posture angle”.
  • the distance and posture angle calculated by the posture angle calculation unit 22 are stored in the memory.
  • the relative position (Xj, Yj, Zj) of each spot light with respect to the camera 12 often does not exist on the same plane. This is because the relative position of each spot light changes according to the asphalt unevenness exposed on the road surface 31. Therefore, a plane formula that minimizes the sum of squares of distance errors with respect to each spot light may be obtained by using the least square method.
  • the distance and posture angle data calculated in this way are used by the self-position calculation unit 26 shown in FIG.
  • the feature point detection unit 23 reads an image acquired by the camera 12 from the memory, and detects a feature point on the road surface 31 from the image read from the memory.
  • the feature point detection unit 23 detects, for example, “DG Lowe,“ Distinctive Image Features from Scale-Invariant Keypoints, ”“ Int. J. Compute. Vis., Vol. 60, no. 2, pp. 91-110, Nov. 200 "can be used.
  • the feature point detection unit 23 may be configured as “Akira Kanazawa, Kenichi Kanaya,“ Extracting feature points of an image for computer vision, ”IEICE Journal, vol. 87, no. 12, pp. 1043-1048, Dec. 2004. Can also be used.
  • the feature point detector 23 detects, as a feature point, a point whose luminance value changes greatly compared to the surroundings, such as a vertex of an object, using, for example, a Harris operator or a SUSAN operator.
  • the feature point detection unit 23 may detect, as a feature point, a point where the luminance value changes under a certain regularity using a SIFT (Scale-Invariant Feature Transform) feature amount. .
  • SIFT Scale-Invariant Feature Transform
  • the feature point detection unit 23 counts the total number N of feature points detected from one image, and assigns an identification number (i (1 ⁇ i ⁇ N)) to each feature point.
  • the position (Ui, Vi) on the image of each feature point is stored in a memory in the ECU 13.
  • FIGS. 6A and 6B show examples of feature points Te detected from an image acquired by the camera 12. Furthermore, the change direction and change amount of each feature point Te are shown as a vector Dte.
  • the feature points on the road surface 31 are mainly assumed to be asphalt mixture grains having a size of 1 cm to 2 cm.
  • the resolution of the camera 12 is VGA (approximately 300,000 pixels).
  • the distance of the camera 12 with respect to the road surface 31 is about 70 cm.
  • the imaging direction of the camera 12 is inclined toward the road surface 31 by about 45 degrees from the horizontal plane.
  • the luminance value when the image acquired by the camera 12 is transferred to the ECU 13 is in the range of 0 to 255 (0: the darkest, 255: the brightest).
  • the posture change amount calculation unit 24 among the images of each frame captured every fixed information processing cycle, the position coordinates (Ui,) of the plurality of feature points included in the image of the previous (time t) frame. Vi) is read from memory. Further, the posture change amount calculation unit 24 reads the position coordinates (Ui, Vi) on the image of a plurality of feature points included in the image of the current frame (time t + ⁇ t) from the memory. Then, the posture change amount calculation unit 24 obtains the posture change amount of the vehicle based on temporal position changes on the images of the plurality of feature points.
  • the “vehicle attitude change amount” includes both the “distance and attitude angle change amount” of the vehicle with respect to the road surface and the “vehicle movement amount” on the road surface.
  • the amount of change in the distance and posture angle” and “the amount of movement of the vehicle” will be described.
  • FIG. 6A shows an example of the first frame (image) 38 (FIG. 5) acquired at time t.
  • FIGS. 5 and 6A consider a case where, for example, the relative positions (Xi, Yi, Zi) of three feature points Te1, Te2, Te3 are calculated in the first frame 38, respectively.
  • the plane G (see FIG. 6A) specified by the feature points Te1, Te2, Te3 can be regarded as a road surface. Therefore, the posture change amount calculation unit 24 can obtain the distance and posture angle (normal vector) of the camera 12 with respect to the road surface (plane G) from the relative position (Xi, Yi, Zi) of each feature point.
  • the posture change amount calculation unit 24 forms distances (l1, l2, l3) between the feature points Te1, Te2, Te3 and straight lines connecting the feature points Te1, Te2, Te3 by a known camera model. The angle can be determined.
  • the camera 12 in FIG. 5 shows the position of the camera when the first frame 38 is imaged.
  • the Z axis is set in the imaging direction of the camera 12, and the camera 12 is included with the imaging direction as the normal line.
  • An X axis and a Y axis that are orthogonal to each other are set in the plane.
  • the horizontal direction and the vertical direction are set to the V axis and the U axis, respectively.
  • FIG. 6B shows the second frame 38 ′ acquired at time (t + ⁇ t) when time ⁇ t has elapsed from time t.
  • the camera 12 ′ in FIG. 5 indicates the position of the camera when the second frame 38 ′ is imaged.
  • the camera 12 ′ captures the feature points Te1, Te2, and Te3, and the feature point detection unit 23 detects the feature points Te1, Te2, and Te3.
  • the posture change amount calculation unit 24 calculates the relative position (Xi, Yi, Zi) of each feature point Te1 to Te3 at time t and the position P1 (Ui, Vi) of each feature point on the second frame 38 ′.
  • the movement amount ⁇ L of the camera 12 at time ⁇ t can be calculated from the camera model of the camera 12. Therefore, the movement amount of the vehicle can be calculated. Furthermore, the amount of change in distance and posture angle can also be calculated.
  • the posture change amount calculation unit 24 calculates the movement amount ( ⁇ L) of the camera 12 (vehicle), and the change amounts of the distance and posture angle. Can be calculated.
  • the following equation (1) is modeled as an ideal pinhole camera in which the camera 12 has no distortion or optical axis deviation, ⁇ i is a constant, and f is a focal length.
  • the camera model parameters may be calibrated in advance.
  • the posture change amount calculation unit 24 does not use all of the feature points whose relative positions are calculated in the images detected at time t and time t + ⁇ t, but is optimal based on the positional relationship between the feature points.
  • a feature point may be selected.
  • epipolar geometry RI polar geometry, R. I. Hartley: “A linear method for reconstruction, points, points”, “Proc. (1995)
  • RI polar geometry R. I. Hartley: “A linear method for reconstruction, points, points”, “Proc. (1995)
  • the feature point detection unit 23 also detects the feature points Te1, Te2, and Te3 whose relative positions (Xi, Yi, Zi) are calculated in the frame image 38 at the time t from the frame image 38 ′ at the time t + ⁇ t.
  • the posture change amount calculation unit 24 calculates “the vehicle's position from the time change of the relative positions (Xi, Yi, Zi) of the plurality of feature points on the road surface and the positions (Ui, Vi) of the feature points on the image.
  • the “posture angle change amount” can be calculated.
  • the amount of movement of the vehicle can be calculated.
  • the pattern light can be obtained by continuing the process of adding the distance and the change amount of the posture angle (integral calculation).
  • the distance and the posture angle can be continuously updated without using 32a.
  • a distance and posture angle calculated using the pattern light 32a or a predetermined initial distance and initial posture angle may be used. That is, the distance and posture angle that are the starting points for the integration calculation may be calculated using the pattern light 32a, or a predetermined initial distance and initial posture angle may be used. It is desirable that the predetermined initial distance and initial posture angle are a distance and posture angle that take into account at least an occupant and a load on the vehicle 10.
  • the pattern light 32a is projected, and the distance and posture angle calculated from the pattern light 32a are set to a predetermined initial value. What is necessary is just to use as a distance and an initial posture angle. Thereby, the distance and the posture angle when the roll motion or the pitch motion due to the turning or acceleration / deceleration of the vehicle 10 is not generated can be obtained.
  • an image of a small area around the detected feature points may be recorded in a memory, and the determination may be made based on the similarity of luminance and color information.
  • the ECU 13 records an image for 5 ⁇ 5 (horizontal ⁇ vertical) pixels centered on the detected feature point in the memory.
  • the posture change amount calculation unit 24 determines that the feature point is a feature point that can be correlated between the previous and next frames. Then, the posture change amount acquired by the above processing is used when the self-position calculating unit 26 in the subsequent stage calculates the self-position of the vehicle.
  • the self position calculation unit 26 calculates the current distance and posture angle of the vehicle from the “distance and change amount of posture angle” calculated by the posture change amount calculation unit 24. Further, the vehicle's own position is calculated from the “vehicle movement amount” calculated by the posture change amount calculation unit 24.
  • the self-position calculation unit 26 sequentially adds the distance and the change amount of the posture angle for each frame calculated by the posture change amount calculation unit 24 with respect to the starting point (distance and posture angle). Update the distance and posture angle to the latest values (by integrating).
  • the self-position calculation unit 26 uses the vehicle position when the distance and posture angle are calculated by the posture angle calculation unit 22 as a starting point (initial position of the vehicle), and sequentially adds the movement amount of the vehicle from this initial position. To calculate the vehicle's own position. For example, the current position of the vehicle on the map can be sequentially calculated by setting the starting point (the initial position of the vehicle) that is collated with the position on the map.
  • the posture change amount calculation unit 24 can calculate the self-position of the vehicle by obtaining the movement amount ( ⁇ L) of the camera 12 during the time ⁇ t. Furthermore, since the change amount of the distance and the posture angle can be calculated at the same time, the posture change amount calculation unit 24 takes into account the change amount of the distance and the posture angle of the vehicle, and has six degrees of freedom (front and rear, left and right, up and down, The amount of movement ( ⁇ L) of yaw, pitch, roll) can be calculated with high accuracy. That is, even if the distance and the posture angle change due to roll motion or pitch motion caused by turning or acceleration / deceleration of the vehicle 10, an estimation error of the movement amount ( ⁇ L) can be suppressed.
  • the movement amount ( ⁇ L) of the camera 12 is calculated by calculating the change amount of the distance and the posture angle and updating the distance and the posture angle.
  • the change amount may be calculated and updated.
  • the distance between the road surface 31 and the camera 12 may be assumed to be constant. Accordingly, it is possible to reduce the calculation load of the ECU 13 and improve the calculation speed while suppressing the estimation error of the movement amount ( ⁇ L) in consideration of the change amount of the posture angle.
  • the pattern light control unit 27 controls the projection of the pattern light 32 a by the projector 11. For example, when the ignition switch of the vehicle 10 is turned on and the self-position calculating device is activated, the pattern light control unit 27 starts projecting the pattern light 32a. Thereafter, the pattern light control unit 27 continuously projects the pattern light 32a until the self-position calculating device stops. Alternatively, the on / off of the light projection may be repeated at a predetermined time interval.
  • the traveling state determination unit 30 detects the traveling state of the vehicle 10 and determines whether or not the vehicle 10 is in a traveling stable state.
  • the self-position calculating unit 26 uses the position where the vehicle 10 is in the traveling stable state, the predetermined initial distance, and the starting point for calculating the self-position. Set the initial posture angle.
  • the self-position calculating unit 26 adds the posture change amount to the position where the vehicle 10 is in the traveling stable state and the predetermined initial distance and initial attitude angle, so that the current position of the current vehicle 10, the distance and posture relative to the road surface Calculate the corner.
  • the traveling state determination unit 30 calculates the distance and the posture angle of the vehicle 10 from the pattern light 32a in the current information processing cycle by the posture angle calculation unit 22. It is determined whether or not it has been done.
  • the attitude angle calculation unit 22 calculates the distance and the attitude angle of the vehicle 10
  • the self-position calculation unit 26 calculates the current position of the vehicle 10 calculated in the current information processing cycle, the distance to the road surface, and The posture angle is set as a starting point for calculating the self position.
  • the self-position calculation unit 26 calculates the current position of the vehicle 10 calculated in the previous information processing cycle.
  • the position, the distance to the road surface, and the posture angle are set as starting points for calculating the self position.
  • the traveling state of the vehicle 10 is the traveling stable state.
  • the vehicle 10 when the vehicle 10 is stopped, when the speed of the vehicle 10 is constant, when the vehicle 10 is traveling straight, the vehicle 10 is satisfied when any one, plural, or all of them are satisfied. 10 is determined to be in the travel stable state.
  • the determination method of whether or not the speed of the vehicle 10 is constant determines that the speed of the vehicle 10 is constant when the acceleration in the front-rear direction of the acceleration sensor mounted on the vehicle 10 is equal to or less than a threshold value.
  • a threshold value an acceleration Xg in the front-rear direction in which the pitch angle changes by 0.01 [rad] ⁇ 0.57 [deg] as compared with a state where the vehicle 10 is stationary is obtained in advance, and this value is set to this value. Set. Thereby, the error at the time of calculating the movement amount of the vehicle 10 can be suppressed to 1% or less.
  • the acceleration sensor is not mounted on the vehicle 10, the acceleration may be obtained by differentiating the value of the wheel speed sensor, or the movement amount calculated by the posture change amount calculation unit 24 may be time-differentiated. The acceleration may be obtained.
  • a method for determining whether or not the vehicle 10 is traveling straight it is determined that the vehicle 10 is traveling straight when the acceleration in the vehicle width direction of the acceleration sensor mounted on the vehicle 10 is equal to or less than a threshold value.
  • a threshold for example, an acceleration Yg in the vehicle width direction in which the roll angle changes by 0.01 [rad] ⁇ 0.57 [deg] as compared with the state where the vehicle 10 is stationary is obtained in advance. Set to this value. Thereby, the error at the time of calculating the movement amount of the vehicle 10 can be suppressed to 1% or less.
  • the yaw rate ⁇ [rad / s] (Yg ⁇ V ⁇ ⁇ ) corresponding to the vehicle speed V at which the acceleration in the vehicle width direction is Yg may be set as a threshold, or the steering angle of the steering wheel may be set as a threshold. If the vehicle 10 is not equipped with an acceleration sensor or a yaw rate sensor, the movement amount calculated by the posture change amount calculation unit 24 may be time-differentiated to obtain the acceleration.
  • the self-position calculating unit 26 sets the vehicle 10 in the traveling stable state.
  • a posture change amount is added to a certain position, a predetermined initial distance, and an initial posture angle to calculate the current position of the current vehicle 10, the distance to the road surface, and the posture angle.
  • the predetermined initial distance and initial posture angle the distance and posture angle with respect to the road surface of the vehicle 10 when the ignition switch of the vehicle 10 is turned on are used.
  • the threshold value is set to an acceleration Xg whose pitch angle changes by 0.01 [rad]. Has been.
  • the ignition switch of the vehicle 10 is turned on at time t1
  • the attitude angle calculation flag is turned on, and therefore the pattern light 32a is emitted at this timing.
  • the posture angle calculation unit 22 calculates the distance and posture angle of the vehicle 10 from the position of the pattern light 32a and stores them in the memory.
  • the traveling state determination unit 30 determines that the traveling stable state is set and sets the reset flag to ON.
  • the self-position calculating unit 26 resets the starting point for calculating the self-position, and the predetermined initial distance and initial attitude angle, that is, the current position of the vehicle 10 when the ignition switch is turned on, the distance to the road surface, Use the attitude angle as a starting point.
  • the traveling state determining unit 30 determines that the traveling state is not stable and sets the reset flag to OFF. Therefore, the self-position calculation unit 26 stops using a predetermined initial distance and initial posture angle as a starting point for calculating the self-position. Thereafter, at time t4, since the longitudinal acceleration of the vehicle 10 again becomes the threshold value Xg or less, it is determined that the vehicle is in a stable running state, the reset flag is turned on, and the self-position calculating unit 26 determines the predetermined initial distance and The initial posture angle is used as the starting point.
  • the starting point for calculating the self-position is set to the predetermined initial distance and the initial attitude angle. Therefore, since the starting point for calculating the self position can be reset when the behavior of the vehicle 10 is stable, the self position of the vehicle 10 can be accurately calculated.
  • This information processing cycle is an example of a self-position calculation method for calculating the self-position of the vehicle 10 from the image 38 acquired by the camera 12.
  • the pattern light control unit 27 controls the projector 11 to project the pattern light 32a onto the road surface 31 around the vehicle.
  • step S03 the ECU 13 controls the camera 12 to capture the road surface 31 around the vehicle including the area where the pattern light 32a is projected, and acquire the image 38.
  • the ECU 13 stores the image data acquired by the camera 12 in a memory.
  • the ECU 13 can automatically control the aperture of the camera 12.
  • the diaphragm of the camera 12 may be feedback controlled so that the average luminance of the image 38 acquired in the previous information processing cycle becomes an intermediate value between the maximum value and the minimum value of the luminance value.
  • ECU13 may obtain
  • step S05 first, the pattern light extraction unit 21 reads the image 38 acquired by the camera 12 from the memory, and extracts the position of the pattern light 32a from the image 38 as shown in FIG.
  • the pattern light extraction unit 21 stores the coordinates (Uj, Vj) on the image of the spot light Sp calculated as data indicating the position of the pattern light 32a in the memory.
  • step S05 the posture angle calculation unit 22 reads data indicating the position of the pattern light 32a from the memory, calculates the distance and posture angle of the vehicle 10 with respect to the road surface 31 from the position of the pattern light 32a, and stores them in the memory. .
  • step S07 the ECU 13 detects feature points from the image 38, extracts feature points that can be correlated between the preceding and following information processing cycles, and extracts the distance and the distance from the position (Ui, Vi) of the feature points on the image.
  • the amount of change in posture angle is calculated. Further, the moving amount of the vehicle is calculated.
  • the feature point detection unit 23 reads an image 38 acquired by the camera 12 from the memory, detects a feature point on the road surface 31 from the image 38, and positions each feature point on the image (Ui, Vi). ) Is stored in the memory.
  • the posture change amount calculation unit 24 reads the position (Ui, Vi) of each feature point on the image from the memory, and calculates the distance and posture angle calculated by the posture angle calculation unit 22 and the position (Ui) of the feature point on the image. , Vi), the relative position (Xi, Yi, Zi) of the feature point with respect to the camera 12 is calculated.
  • the posture change amount calculation unit 24 uses the distance and posture angle set in step S09 of the previous information processing cycle. Then, the posture change amount calculation unit 24 stores the relative position (Xi, Yi, Zi) of the feature point with respect to the camera 12 in the memory.
  • the posture change amount calculation unit 24 calculates the position (Ui, Vi) of the feature point on the image and the relative position (Xi, Yi, Zi) of the feature point calculated in step S07 of the previous information processing cycle. Read from memory.
  • the posture change amount calculation unit 24 uses the relative positions (Xi, Yi, Zi) and the positions (Ui, Vi) of the feature points that can be correlated between the previous and subsequent information processing cycles, and the distance and posture angle. The amount of change is calculated. Further, the posture change amount calculation unit 24 calculates the movement amount of the vehicle from the previous relative position (Xi, Yi, Zi) of the feature point and the current relative position (Xi, Yi, Zi) of the feature point. Store in memory.
  • the “amount of change in distance and attitude angle” and “amount of movement of the vehicle” calculated in step S07 are used in the process of step S11.
  • step S09 the ECU 13 sets the starting point of the integral calculation for calculating the self position according to the traveling state of the vehicle. Details will be described later with reference to FIG.
  • the self-position calculating unit 26 calculates the self-position of the vehicle 10 from the starting point of the integral calculation set in step S09 and the distance and the change amount of the attitude angle of the vehicle 10 calculated in the process of step S07. Is calculated.
  • the self-position calculation apparatus can calculate the self-position of the vehicle 10 by repeatedly executing the above-described series of information processing cycles and integrating the movement amount of the vehicle 10.
  • step S ⁇ b> 101 traveling state determination unit 30 detects the traveling state of vehicle 10. Specifically, the speed of the vehicle 10 is detected by a wheel speed sensor, and the acceleration in the front-rear direction and the vehicle width direction of the vehicle 10 is detected by an acceleration sensor. Further, the yaw rate of the vehicle 10 may be detected by a yaw rate sensor.
  • the traveling state determination unit 30 determines whether or not the vehicle 10 is in a traveling stable state. Specifically, the traveling state determination unit 30 determines that the traveling state is stable when the vehicle 10 is stopped. In this case, when the value of the wheel speed sensor mounted on the vehicle 10 becomes 0, it is determined that the vehicle 10 has stopped and it is determined that the vehicle is in a stable traveling state.
  • the traveling state determination unit 30 determines that the traveling state is stable when the speed of the vehicle 10 is constant. In this case, when the longitudinal acceleration detected by the acceleration sensor mounted on the vehicle 10 is equal to or less than the threshold value, it is determined that the speed of the vehicle 10 is constant and the traveling stable state is determined.
  • the traveling state determination unit 30 determines that the traveling state is in the traveling stable state when the vehicle 10 is traveling straight. In this case, when the acceleration in the vehicle width direction detected by the acceleration sensor mounted on the vehicle 10 is equal to or less than the threshold value, it is determined that the vehicle 10 is traveling straight and is determined to be in the traveling stable state.
  • step S103 it is determined whether or not the vehicle 10 is in the travel stable state, and if the travel state determination unit 30 determines that the vehicle is in the travel stable state (YES in step S103), the process proceeds to step S105. If the traveling state determination unit 30 determines that the traveling state is not stable (NO in step S103), the process proceeds to step S107.
  • step S105 the self-position calculation unit 26 sets a predetermined initial distance and initial posture angle as a starting point of the integration calculation.
  • a predetermined initial distance and initial posture angle For example, in the present embodiment, the distance and posture angle with respect to the road surface of the vehicle 10 when the ignition switch of the vehicle 10 is turned on are set as the predetermined initial distance and initial posture angle.
  • step S107 the traveling state determination unit 30 determines whether the posture angle calculation unit 22 has calculated the distance and the posture angle from the pattern light 32a.
  • step S05 of the current information processing cycle if the posture angle calculation unit 22 has calculated the distance and posture angle (YES in step S107), the process proceeds to step S109.
  • the posture angle calculation unit 22 has not calculated the distance and the posture angle in step S05 of the current information processing cycle (NO in step S107)
  • the process proceeds to step S111.
  • step S109 the self-position calculation unit 26 sets the distance and posture angle calculated from the pattern light 32a in step S05 of the current information processing cycle as the starting point of the integration calculation.
  • the self-position calculating unit 26 sets the vehicle position when the distance and the attitude angle are calculated in the current information processing cycle as the starting point of the integration calculation (the initial position of the vehicle).
  • step S111 the self-position calculation unit 26 sets the distance and the posture angle calculated from the pattern light 32a in step S05 of the previous information processing cycle as the starting point of the integration calculation.
  • the self-position calculation unit 26 sets the vehicle position when the distance and the attitude angle are calculated in the previous information processing cycle as the starting point of the integration calculation (the initial position of the vehicle).
  • step S09 is ended and the process proceeds to step S11 of FIG.
  • the posture change amount is added to the predetermined initial distance and the initial posture angle.
  • the current position of the current vehicle 10, the distance to the road surface, and the posture angle are calculated.
  • the starting point for calculating the self-position of the vehicle 10 can be reset to the initial distance and the initial attitude angle, so that the self-position of the vehicle 10 can be accurately calculated. it can.
  • the starting point for calculating the self-position of the vehicle 10 can be periodically reset to the initial distance and the initial attitude angle, it is possible to prevent the error from expanding.
  • the self-position calculation device it is determined that the vehicle 10 is in a stable running state when the vehicle 10 stops, so that the state in which the behavior of the vehicle 10 is stable can be reliably detected.
  • the self-position of the vehicle 10 can be calculated with high accuracy.
  • the self-position calculation device it is determined that the traveling state is stable when the speed of the vehicle 10 is constant, so that it is possible to reliably detect a state in which the behavior of the vehicle 10 is stable.
  • the self-position of the vehicle 10 can be calculated with high accuracy.
  • the self-position calculating device it is determined that the traveling state is stable when the vehicle 10 is traveling straight, so that the state where the behavior of the vehicle 10 is stable can be reliably detected.
  • the self-position of the vehicle 10 can be calculated with high accuracy.
  • the distance and posture angle with respect to the road surface of the vehicle 10 when the ignition switch of the vehicle 10 is turned on are used as the predetermined initial distance and initial posture angle. Therefore, since the value reflecting the number of passengers and the loading amount of the vehicle 10 can be used as the initial distance and the initial attitude angle, the self-position of the vehicle 10 can be calculated more accurately.
  • step S09 Next, the detailed procedure of step S09 in FIG. 8 will be described with reference to the flowchart in FIG.
  • the vehicle 10 after determining whether or not the vehicle 10 is in a stable running state in step S103, it is determined whether or not the distance and posture angle are calculated from the pattern light 32a in step S107. .
  • the present embodiment as shown in FIG. 10, after determining whether the distance and the attitude angle are calculated from the pattern light 32a in step S203, whether or not the vehicle 10 is in a stable traveling state in step S205. Is judged.
  • the other steps S201, S207 to S211 are the same as the steps S101, S105, S109, and S111 in FIG.
  • the vehicle 10 is in the traveling stable state only when the distance and posture angle of the vehicle 10 cannot be calculated from the pattern light 32a in the current information processing cycle. It is determined whether or not there is. Thereby, since the frequency which performs the process which determines whether a vehicle is a driving

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Combustion & Propulsion (AREA)
  • Chemical & Material Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

 本発明の自己位置算出装置は、車両周囲の路面にパターン光を投光し、車両周囲の路面を撮像して画像を取得する。そして、車両の走行状態を検出して車両が走行安定状態であると判定された場合に、自己位置算出装置は、所定の初期姿勢角に姿勢変化量を加算して車両の現在位置及び姿勢角を算出する。

Description

自己位置算出装置及び自己位置算出方法
 本発明は、自己位置算出装置及び自己位置算出方法に関するものである。
 車両に搭載されたカメラで車両近傍の画像を撮像して取得し、この画像の変化に基づいて車両の移動量を求める技術が知られている(特許文献1参照)。特許文献1では、車両が低速かつ微妙に移動した場合でも精度よく移動量を求められるように、画像の中から特徴点を検出し、この特徴点の位置を求め、特徴点の移動方向及び移動距離(移動量)から車両の移動量を求めている。
特開2008-175717号公報
 しかしながら、上述した従来の技術では、車両の挙動が安定していないときに車両の移動量を求めるための起点をリセットしてしまうと、車両の移動量を精度よく推定することができないという問題点があった。
 そこで、本発明は、上述した実情に鑑みて提案されたものであり、車両の挙動が安定しているときに車両の自己位置を算出するための起点をリセットして車両の自己位置を精度よく算出することのできる自己位置算出装置及びその方法を提供することを目的とする。
 上述した課題を解決するために、本発明の一態様に係る自己位置算出装置は、パターン光が投光された車両周囲の路面を撮像して画像を取得し、この画像におけるパターン光の位置から路面に対する車両の姿勢角を算出する。そして、自己位置算出装置は、取得した画像における路面上の複数の特徴点の時間変化に基づいて車両の姿勢変化量を算出し、この姿勢変化量を車両の初期位置及び姿勢角に加算することによって車両の現在位置及び姿勢角を算出する。そして、自己位置算出装置は、車両が走行安定状態であると判定した場合には、所定の初期距離及び初期姿勢角に姿勢変化量を加算して車両の現在位置及び姿勢角を算出する。
図1は、第1実施形態に係る自己位置算出装置の全体構成を示すブロック図である。 図2は、投光器及びカメラを車両に搭載する方法の一例を示す外観図である。 図3(a)は、投光器とカメラを用いてスポット光が照射された路面上の位置を算出する様子を示す図であり、図3(b)は、パターン光が照射された領域とは異なる領域で検出された特徴点の時間変化からカメラの移動方向を求める様子を示す図である。 図4は、カメラで取得した画像に二値化処理を施したパターン光の画像を示す図であり、図4(a)はパターン光全体を示す図であり、図4(b)は1つのスポット光を拡大して示す図であり、図4(c)はスポット光の重心位置を示す図である。 図5は、距離及び姿勢角の変化量を算出する方法を説明するための模式図である。 図6は、画像上に検出された特徴点を示す図であり、図6(a)は時刻tに取得した第1フレーム(画像)を示す図であり、図6(b)は時刻t+Δtに取得した第2フレームを示す図である。 図7は、第1実施形態に係る自己位置算出装置による走行安定状態であるか否かに応じて車両の距離及び姿勢角をリセットする処理を示すタイムチャートである。 図8は、第1実施形態に係る自己位置算出装置による自己位置算出処理の処理手順を示すフローチャートである。 図9は、第1実施形態に係る自己位置算出装置による図8のステップS09の詳細な処理手順を示すフローチャートである。 図10は、第2実施形態に係る自己位置算出装置による図8のステップS09の詳細な処理手順を示すフローチャートである。
 以下、本発明を適用した第1及び第2実施形態について図面を参照して説明する。
[第1実施形態]
 [ハードウェア構成]
 先ず、図1を参照して、第1実施形態に係わる自己位置算出装置のハードウェア構成を説明する。自己位置算出装置は、投光器11と、カメラ12と、エンジンコントロールユニット(ECU)13とを備える。投光器11は、車両に搭載され、車両周囲の路面にパターン光を投光する。カメラ12は、車両に搭載され、パターン光が投光された領域を含む車両周囲の路面を撮像して画像を取得する撮像部の一例である。ECU13は、投光器11を制御し、且つカメラ12で取得した画像から車両の自己位置を算出する一連の情報処理サイクルを実行する制御部の一例である。
 カメラ12は、固体撮像素子、例えばCCD及びCMOSを用いたデジタルカメラであって、画像処理が可能なデジタル画像を取得する。カメラ12の撮像対象は車両周囲の路面であって、車両周囲の路面には車両の前部、後部、側部、車両底部の路面が含まれている。例えば、図2に示すように、カメラ12は、車両10の前部、具体的にはフロントバンパ上に搭載することができる。車両10の前方の路面31上の特徴点(テクスチャ)及び投光器11から投光されたパターン光32bを撮像できるように、カメラ12を設置する高さ及び向きが調整され、且つ、カメラ12が備えるレンズのピント及び絞りについても自動調整される。カメラ12は、所定の時間間隔をおいて繰り返し撮像を行い、一連の画像(フレーム)群を取得する。カメラ12で取得した画像データは、撮像する毎にECU13へ転送され、ECU13が備えるメモリに記憶される。
 投光器11は、図2に示すように、カメラ12の撮像範囲内の路面31に向けて、正方形や長方形の格子像を含む所定の形状を有するパターン光32bを投光する。カメラ12は、路面31に照射されたパターン光を撮像する。投光器11は、例えば、レーザポインター及び回折格子を備える。レーザポインターから射出されたレーザ光を回折格子で回折することにより、投光器11は、図2~図4に示すように、格子像、或いは行列状に配列された複数のスポット光からなるパターン光(32b、32a)を生成する。図3及び図4に示す例では、5×7個のスポット光からなるパターン光32aを生成している。
 図1に戻り、ECU13は、CPU、メモリ、及び入出力部を備えるマイクロコントローラからなり、予めインストールされたコンピュータプログラムを実行することにより、自己位置算出装置として機能する複数の情報処理部を構成する。ECU13は、カメラ12で取得した画像から車両の自己位置を算出する一連の情報処理サイクルを、画像(フレーム)毎に繰り返し実行する。尚、ECU13は、車両10の他の制御に用いるECUと兼用してもよい。
 ここで、複数の情報処理部には、パターン光抽出部21と、姿勢角算出部22と、特徴点検出部23と、姿勢変化量算出部24と、自己位置算出部26と、パターン光制御部27と、走行状態判定部30とが含まれる。姿勢変化量算出部24には、特徴点検出部23が含まれる。
 パターン光抽出部21は、カメラ12で取得した画像をメモリから読み込み、この画像からパターン光の位置を抽出する。図3(a)に示すように、例えば、投光器11が行列上に配列された複数のスポット光からなるパターン光32aを、路面31に向けて投光し、路面31で反射したパターン光32aをカメラ12で検出する。パターン光抽出部21は、カメラ12で取得した画像に対して二値化処理を施すことにより、図4(a)及び図4(b)に示すように、スポット光Spの画像のみを抽出する。そして、図4(c)に示すように、パターン光抽出部21は、各スポット光Spの重心の位置He、即ちスポット光Spの画像上の座標(Uj、Vj)を算出することにより、パターン光32aの位置を抽出する。座標は、カメラ12の撮像素子の画素を単位とし、5×7のスポット光Spの場合、“j”は1以上35以下の自然数である。スポット光Spの画像上の座標(Uj、Vj)は、パターン光32aの位置を示すデータとしてメモリに記憶される。
 姿勢角算出部22は、パターン光32aの位置を示すデータをメモリから読み込み、カメラ12で取得した画像におけるパターン光32aの位置から、路面31に対する車両10の距離及び姿勢角を算出する。例えば、図3(a)に示すように、投光器11とカメラ12の間の基線長Lbと、各スポット光の画像上の座標(Uj、Vj)とから、三角測量の原理を用いて、各スポット光が照射された路面31上の位置を、カメラ12に対する相対位置として算出する。そして、姿勢角算出部22は、カメラ12に対する各スポット光の相対位置から、パターン光32aが投光された路面31の平面式、即ち、路面31に対するカメラ12の距離及び姿勢角(法線ベクトル)を算出する。
 なお、車両10に対するカメラ12の搭載位置及び撮像方向は既知であるため、実施形態では、路面31に対する車両10の距離及び姿勢角の一例として、路面31に対するカメラ12の距離及び姿勢角を算出する。換言すれば、路面31に対するカメラ12の距離及び姿勢角を算出することにより、路面31と車両10との間の距離、及び路面31に対する車両10の姿勢角を求めることができる。
 具体的には、カメラ12及び投光器11は車両10にそれぞれ固定されているため、パターン光32aの照射方向と、カメラ12と投光器11との間の距離(基線長Lb)は既知である。そこで、姿勢角算出部22は、三角測量の原理を用いて、各スポット光の画像上の座標(Uj、Vj)から各スポット光が照射された路面31上の位置を、カメラ12に対する相対位置(Xj,Yj,Zj)として求めることができる。以後、路面31に対するカメラ12の距離及び姿勢角を、「距離及び姿勢角」と略す。姿勢角算出部22で算出された距離及び姿勢角は、メモリに記憶される。
 なお、カメラ12に対する各スポット光の相対位置(Xj,Yj,Zj)は同一平面上に存在しない場合が多い。なぜなら、路面31に表出するアスファルトの凹凸に応じて各スポット光の相対位置が変化するからである。そこで、最小二乗法を用いて、各スポット光との距離誤差の二乗和が最小となるような平面式を求めてもよい。こうして算出された距離及び姿勢角のデータは、図1に示す自己位置算出部26で使用される。
 特徴点検出部23は、カメラ12で取得した画像をメモリから読み込み、メモリから読み込んだ画像から、路面31上の特徴点を検出する。特徴点検出部23は、路面31上の特徴点を検出するために、例えば、「D.G.Lowe,“Distinctive Image Features from Scale-Invariant Keypoints,”Int.J.Comput.Vis.,vol.60,no.2,pp.91-110,Nov.200」に記載の手法を用いることができる。或いは、特徴点検出部23は、「金澤靖,金谷健一,“コンピュータビジョンのための画像の特徴点抽出,”信学誌,vol.87,no.12,pp.1043-1048,Dec.2004」に記載の手法を用いることもできる。
 具体的には、特徴点検出部23は、例えば、ハリス(Harris)作用素又はSUSANオペレータを用いて、物体の頂点のように周囲に比べて輝度値が大きく変化する点を特徴点として検出する。或いは、特徴点検出部23は、SIFT(Scale-Invariant Feature Transform)特徴量を用いて、その周囲で輝度値がある規則性のもとで変化している点を特徴点として検出してもよい。そして、特徴点検出部23は、1つの画像から検出した特徴点の総数Nを計数し、各特徴点に識別番号(i(1≦i≦N))を付す。各特徴点の画像上の位置(Ui、Vi)は、ECU13内のメモリに記憶される。図6(a)及び図6(b)は、カメラ12で取得した画像から検出された特徴点Teの例を示す。更に、各特徴点Teの変化方向及び変化量をベクトルDteとして示している。
 なお、実施形態において、路面31上の特徴点は、主に大きさが1cm以上2cm以下のアスファルト混合物の粒を想定している。この特徴点を検出するために、カメラ12の解像度はVGA(約30万画素)である。また、路面31に対するカメラ12の距離は、おおよそ70cmである。更に、カメラ12の撮像方向は、水平面から約45degだけ路面31に向けて傾斜させる。また、カメラ12で取得する画像をECU13に転送するときの輝度数値は、0~255(0:最も暗い,255:最も明るい)の範囲内である。
 姿勢変化量算出部24は、一定の情報処理サイクル毎に撮像される各フレームの画像のうち、前回(時刻t)のフレームの画像に含まれる複数の特徴点の画像上の位置座標(Ui、Vi)をメモリから読み込む。更に、姿勢変化量算出部24は、今回(時刻t+Δt)のフレームの画像に含まれる複数の特徴点の画像上の位置座標(Ui、Vi)をメモリから読み込む。そして、姿勢変化量算出部24は、複数の特徴点の画像上での時間的な位置変化に基づいて、車両の姿勢変化量を求める。ここで、「車両の姿勢変化量」とは、路面に対する車両の「距離及び姿勢角の変化量」、及び路面上での「車両の移動量」の双方を含んでいる。以下、「距離及び姿勢角の変化量」及び「車両の移動量」の算出方法について説明する。
 距離及び姿勢角の変化量は、例えば、以下のようにして求めることができる。図6(a)は、時刻tに取得した第1フレーム(画像)38(図5)の一例を示す。図5及び図6(a)に示すように、第1フレーム38において、例えば3つの特徴点Te1、Te2、Te3の相対位置(Xi,Yi,Zi)がそれぞれ算出されている場合を考える。この場合、特徴点Te1、Te2、Te3によって特定される平面G(図6(a)参照)を路面と見なすことができる。よって、姿勢変化量算出部24は、各特徴点の相対位置(Xi,Yi,Zi)から、路面(平面G)に対するカメラ12の距離及び姿勢角(法線ベクトル)を求めることができる。更に、姿勢変化量算出部24は、既知のカメラモデルによって、各特徴点Te1、Te2、Te3の間の距離(l1、l2、l3)及び夫々の特徴点Te1、Te2、Te3を結ぶ直線が成す角度を求めることができる。図5のカメラ12は、第1フレーム38を撮像したときのカメラの位置を示す。
 なお、図5では、カメラ12に対する特徴点の相対位置を示す3次元座標(Xi,Yi,Zi)として、カメラ12の撮像方向にZ軸を設定し、撮像方向を法線としてカメラ12を含む平面内に互いに直交するX軸及びY軸を設定する。一方、画像38上の座標としては、水平方向及び垂直方向をそれぞれV軸及びU軸に設定する。
 図6(b)は、時刻tから時間Δtだけ経過した時刻(t+Δt)に取得された第2フレーム38’を示す。図5のカメラ12’は、第2フレーム38’を撮像したときのカメラの位置を示す。図5及び図6(b)に示すように、第2フレーム38’において、カメラ12’が特徴点Te1、Te2、Te3を撮像し、特徴点検出部23が特徴点Te1、Te2、Te3を検出する。この場合、姿勢変化量算出部24は、時刻tにおける各特徴点Te1~Te3の相対位置(Xi,Yi,Zi)と、各特徴点の第2フレーム38’上の位置P1(Ui、Vi)と、カメラ12のカメラモデルとから時間Δtにおけるカメラ12の移動量ΔLを算出できる。したがって、ひいては車両の移動量を算出できる。更には、距離及び姿勢角の変化量も算出することができる。例えば、以下の(1)~(4)式からなる連立方程式を解くことにより、姿勢変化量算出部24は、カメラ12(車両)の移動量(ΔL)、及び距離及び姿勢角の変化量を算出することができる。なお、下記の(1)式はカメラ12が歪みや光軸ずれのない理想的なピンホールカメラとしてモデル化したものであり、λiは定数、fは焦点距離である。カメラモデルのパラメータは、予めキャリブレーションをしておけば良い。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
 なお、姿勢変化量算出部24は、時刻tと時刻t+Δtで検出される各画像中で相対位置が算出された特徴点の全てを用いるのではなく、特徴点同士の位置関係に基づいて最適な特徴点を選定しても良い。選定方法としては、例えば、エピポーラ幾何(エピ極線幾何,R.I.Hartley:“A linear method for reconstruction from lines and points,”Proc.5thInternational Conference on Computer Vision,Cambridge,Massachusetts,pp.882-887(1995))を用いることができる。
 このように、特徴点検出部23が、時刻tのフレーム画像38で相対位置(Xi,Yi,Zi)が算出された特徴点Te1、Te2、Te3を、時刻t+Δtにおけるフレーム画像38’からも検出した場合に、姿勢変化量算出部24は、路面上の複数の特徴点の相対位置(Xi,Yi,Zi)と特徴点の画像上の位置(Ui、Vi)の時間変化から、「車両の姿勢角変化量」を算出することができる。更には、車両の移動量を算出することができる。
 即ち、前回フレームと今回フレームの間で対応関係が取れる3点以上の特徴点を継続して検出できれば、距離及び姿勢角の変化量を加算する処理(積分演算)を継続することにより、パターン光32aを用いずに距離及び姿勢角を更新し続けることができる。但し、最初の情報処理サイクルでは、パターン光32aを用いて算出した距離及び姿勢角、或いは所定の初期距離及び初期姿勢角を用いても良い。つまり、積分演算の起点となる距離及び姿勢角は、パターン光32aを用いて算出しても、或いは、所定の初期距離及び初期姿勢角を用いても構わない。所定の初期距離及び初期姿勢角は、少なくとも車両10への乗員及び搭載物を考慮した距離及び姿勢角であることが望ましい。例えば、車両10のイグニションスイッチがオン状態で、尚且つシフトポジションがパーキングから他のポジションへ移動した時に、パターン光32aを投光し、パターン光32aから算出した距離及び姿勢角を、所定の初期距離及び初期姿勢角として用いれば良い。これにより、車両10の旋回や加減速によるロール運動或いはピッチ運動が発生していない時の距離や姿勢角を求めることができる。
 なお、前後のフレーム間で特徴点を対応付けるには、例えば、検出した特徴点の周辺の小領域の画像をメモリに記録しておき、輝度や色情報の類似度から判断すれば良い。具体的には、ECU13は、検出した特徴点を中心とする5×5(水平×垂直)画素分の画像をメモリに記録する。姿勢変化量算出部24は、例えば、輝度情報が20画素以上で誤差1%以下に収まっていれば、前後のフレーム間で対応関係が取れる特徴点であると判断する。そして、上記の処理で取得した姿勢変化量は、後段の自己位置算出部26で車両の自己位置を算出する際に使用される。
 自己位置算出部26は、姿勢変化量算出部24で算出された「距離及び姿勢角の変化量」から車両の現在の距離及び姿勢角を算出する。更に、姿勢変化量算出部24で算出された「車両の移動量」から車両の自己位置を算出する。
 具体的に、姿勢角算出部22で算出された距離及び姿勢角(パターン光を用いて算出された距離及び姿勢角)が起点として設定された場合について説明する。この場合には、この起点(距離及び姿勢角)に対して、自己位置算出部26は、姿勢変化量算出部24で算出された各フレーム毎の距離及び姿勢角の変化量を逐次加算して(積分演算して)、距離及び姿勢角を最新の数値に更新する。また、自己位置算出部26は、姿勢角算出部22で距離及び姿勢角が算出された際の車両位置を起点(車両の初期位置)とし、この初期位置からの車両の移動量を逐次加算して(積分演算して)、車両の自己位置を算出する。例えば、地図上の位置と照合された起点(車両の初期位置)を設定することで、地図上の車両の現在位置を逐次算出することができる。
 従って、姿勢変化量算出部24は、時間Δtの間でのカメラ12の移動量(ΔL)を求めることにより、車両の自己位置を算出することができる。更に、距離及び姿勢角の変化量も同時に算出することができるので、姿勢変化量算出部24は、車両の距離及び姿勢角の変化量を考慮して、6自由度(前後、左右、上下、ヨー、ピッチ、ロール)の移動量(ΔL)を精度よく算出することができる。即ち、車両10の旋回や加減速によるロール運動或いはピッチ運動によって距離や姿勢角が変化しても、移動量(ΔL)の推定誤差を抑制することができる。
 なお、実施形態では、距離及び姿勢角の変化量を算出し、距離及び姿勢角を更新することにより、カメラ12の移動量(ΔL)を算出したが、路面31に対するカメラ12の姿勢角だけを変化量算出及び更新の対象としても構わない。この場合、路面31とカメラ12との間の距離は一定と仮定すれば良い。これにより、姿勢角の変化量を考慮して、移動量(ΔL)の推定誤差を抑制しつつ、ECU13の演算負荷を軽減し、且つ演算速度を向上させることもできる。
 パターン光制御部27は、投光器11によるパターン光32aの投光を制御する。例えば、車両10のイグニションスイッチがオン状態となり、自己位置算出装置が起動すると同時に、パターン光制御部27は、パターン光32aの投光を開始する。その後、自己位置算出装置が停止するまで、パターン光制御部27は、パターン光32aを連続して投光する。或いは、所定の時間間隔をおいて、投光のオン/オフを繰り返してもよい。
 走行状態判定部30は、車両10の走行状態を検出して車両10が走行安定状態であるか否かを判定する。そして、車両10が走行安定状態であると判定された場合には、自己位置算出部26が、自己位置を算出するための起点として、車両10が走行安定状態にある位置及び所定の初期距離及び初期姿勢角を設定する。これにより、自己位置算出部26は、車両10が走行安定状態にある位置及び所定の初期距離及び初期姿勢角に姿勢変化量を加算して、現在の車両10の現在位置、路面に対する距離及び姿勢角を算出する。
 一方、車両10が走行安定状態ではないと判定された場合には、走行状態判定部30は、姿勢角算出部22によって今回の情報処理サイクルでパターン光32aから車両10の距離及び姿勢角が算出されているか否かを判定する。そして、姿勢角算出部22が車両10の距離及び姿勢角を算出している場合には、自己位置算出部26は、今回の情報処理サイクルで算出された車両10の現在位置、路面に対する距離及び姿勢角を、自己位置を算出するための起点として設定する。
 また、姿勢角算出部22によって今回の情報処理サイクルで車両10の距離及び姿勢角が算出されていない場合には、自己位置算出部26は、前回の情報処理サイクルで算出された車両10の現在位置、路面に対する距離及び姿勢角を、自己位置を算出するための起点として設定する。
 ここで、車両10の走行状態が走行安定状態であるか否かを判定する方法について説明する。本実施形態では、車両10が停車している場合、車両10の速度が一定である場合、車両10が直進している場合のいずれか1つ、またはいずれか複数、あるいはすべてを満たす場合に車両10が走行安定状態であると判定する。
 車両10が停車しているか否かの判定方法としては、車両10に搭載されている車輪速センサの値が0になった場合に車両10が停車していると判定する。
 また、車両10の速度が一定であるか否かの判定方法は、車両10に搭載されている加速度センサの前後方向の加速度が閾値以下の場合に車両10の速度が一定であると判定する。閾値としては、車両10が静止している状態と比較して、ピッチ角が0.01[rad]≒0.57[deg]だけ変化する前後方向の加速度Xgを予め求めておき、この値に設定する。これにより、車両10の移動量を算出した際の誤差を1%以下に抑えることができる。尚、車両10に加速度センサが搭載されていない場合には、車輪速センサの値を微分して加速度を求めてもよいし、姿勢変化量算出部24で算出された移動量を時間微分して加速度を求めてもよい。
 さらに、車両10が直進しているか否かの判定方法は、車両10に搭載されている加速度センサの車幅方向の加速度が閾値以下の場合に車両10が直進していると判定する。閾値としては、例えば、車両10が静止している状態と比較して、ロール角が0.01[rad]≒0.57[deg]だけ変化する車幅方向の加速度Ygを予め求めておき、この値に設定する。これにより、車両10の移動量を算出した際の誤差を1%以下に抑えることができる。
 尚、車幅方向の加速度がYgとなる車速Vに応じたヨーレートγ[rad/s](Yg≒V×γ)を閾値としてもよいし、ハンドル操舵角を閾値としてもよい。また、車両10に加速度センサやヨーレートセンサが搭載されていない場合には、姿勢変化量算出部24で算出された移動量を時間微分して加速度を求めてもよい。
 このようにして走行状態判定部30によって車両10が走行安定状態であるか否かが判定され、走行安定状態であると判定されると、自己位置算出部26は、車両10が走行安定状態にある位置及び所定の初期距離及び初期姿勢角に姿勢変化量を加算して、現在の車両10の現在位置、路面に対する距離及び姿勢角を算出する。ここで、所定の初期距離及び初期姿勢角としては、車両10のイグニッションスイッチがオンされたときの車両10の路面に対する距離及び姿勢角を用いる。
 例えば、図7に示すように、走行状態判定部30が車両10の前後方向の加速度をモニターしている場合について説明すると、閾値はピッチ角が0.01[rad]だけ変化する加速度Xgに設定されている。この場合に、時刻t1に車両10のイグニッションスイッチがオンされると、姿勢角算出フラグがオンされるので、このタイミングでパターン光32aが照射される。そして、姿勢角算出部22が、パターン光32aの位置から車両10の距離及び姿勢角を算出してメモリに記憶する。この後、時刻t2では、車両10の前後方向の加速度が閾値Xg以下となるので、走行状態判定部30は走行安定状態であると判定してリセットフラグをオンに設定する。したがって、自己位置算出部26は、自己位置を算出するための起点をリセットして、所定の初期距離及び初期姿勢角、すなわちイグニッションスイッチがオンされたときの車両10の現在位置、路面に対する距離及び姿勢角を起点として用いる。
 しかし、時刻t3になると、車両10の前後方向の加速度が閾値Xgを越えるので、走行状態判定部30は、走行安定状態ではないと判定してリセットフラグをオフに設定する。そこで、自己位置算出部26は、自己位置を算出するための起点として所定の初期距離及び初期姿勢角を用いることを中止する。この後、時刻t4になると、再び車両10の前後方向の加速度が閾値Xg以下となるので、走行安定状態であると判定されてリセットフラグがオンとなり、自己位置算出部26は所定の初期距離及び初期姿勢角を起点として用いる。
 このようにして本実施形態では、車両10が走行安定状態であると判定された場合に、自己位置を算出するための起点を所定の初期距離及び初期姿勢角に設定する。これにより、車両10の挙動が安定しているときに自己位置を算出するための起点をリセットできるので、車両10の自己位置を精度よく算出することができる。
 [情報処理サイクル]
 次に、図8及び図9を参照して、ECU13によって繰り返し実行される情報処理サイクルを説明する。この情報処理サイクルは、カメラ12で取得した画像38から車両10の自己位置を算出する自己位置算出方法の一例である。
 図8のフローチャートに示す情報処理サイクルは、車両10のイグニションスイッチがオン状態となり、自己位置算出装置が起動すると同時に開始され、自己位置算出装置が停止するまで繰り返し実行される。
 図8のステップS01において、パターン光制御部27は、投光器11を制御して、車両周囲の路面31にパターン光32aを投光する。
 ステップS03に進み、ECU13は、カメラ12を制御して、パターン光32aが投光された領域を含む車両周囲の路面31を撮像して画像38を取得する。ECU13は、カメラ12で取得した画像データを、メモリに記憶する。
 なお、ECU13はカメラ12の絞りを自動制御できる。前の情報処理サイクルで取得した画像38の平均輝度から、輝度値の最大値と最小値の中間値になるようにカメラ12の絞りをフィードバック制御してもよい。また、パターン光32aが投光されている領域は輝度値が高いため、ECU13は、パターン光32aを抽出した部分を除いた領域から、平均輝度値を求めてもよい。
 ステップS05に進み、先ず、パターン光抽出部21は、カメラ12で取得した画像38をメモリから読み込み、図4(c)に示すように、画像38からパターン光32aの位置を抽出する。パターン光抽出部21は、パターン光32aの位置を示すデータとして算出されたスポット光Spの画像上の座標(Uj、Vj)をメモリに記憶する。
 さらに、ステップS05において、姿勢角算出部22は、パターン光32aの位置を示すデータをメモリから読み込み、パターン光32aの位置から路面31に対する車両10の距離及び姿勢角を算出してメモリに記憶する。
 ステップS07に進み、ECU13は、画像38から特徴点を検出し、前後の情報処理サイクルの間で対応関係が取れる特徴点を抽出し、特徴点の画像上の位置(Ui、Vi)から距離及び姿勢角の変化量を算出する。さらに、車両の移動量を算出する。
 具体的に、先ず、特徴点検出部23は、カメラ12で取得した画像38をメモリから読み込み、画像38から路面31上の特徴点を検出し、各特徴点の画像上の位置(Ui、Vi)をメモリに記憶させる。
 姿勢変化量算出部24は、各特徴点の画像上の位置(Ui、Vi)をメモリから読み込み、姿勢角算出部22で算出された距離及び姿勢角と、特徴点の画像上の位置(Ui、Vi)とから、カメラ12に対する特徴点の相対位置(Xi,Yi,Zi)を算出する。なお、姿勢変化量算出部24は、前の情報処理サイクルのステップS09において設定された距離及び姿勢角を用いる。そして、姿勢変化量算出部24は、カメラ12に対する特徴点の相対位置(Xi,Yi,Zi)を、メモリに記憶する。
 この後、姿勢変化量算出部24は、特徴点の画像上の位置(Ui、Vi)と、前の情報処理サイクルのステップS07において算出された特徴点の相対位置(Xi,Yi,Zi)をメモリから読み込む。姿勢変化量算出部24は、前後の情報処理サイクルの間で対応関係が取れる特徴点の相対位置(Xi,Yi,Zi)及び画像上の位置(Ui、Vi)を用いて、距離及び姿勢角の変化量を算出する。さらに、姿勢変化量算出部24は、前回の特徴点の相対位置(Xi,Yi,Zi)と今回の特徴点の相対位置(Xi,Yi,Zi)とから、車両の移動量を算出してメモリに記憶する。ステップS07で算出された「距離及び姿勢角の変化量」及び「車両の移動量」は、ステップS11の処理で用いられる。
 ステップS09に進み、ECU13は、車両の走行状態に応じて、自己位置を算出するための積分演算の起点を設定する。詳細は、図9を参照して後述する。
 ステップS11に進み、自己位置算出部26は、ステップS09で設定された積分演算の起点と、ステップS07の処理で算出された車両10の距離及び姿勢角の変化量とから、車両10の自己位置を算出する。
 こうして本実施形態に係る自己位置算出装置は、上記した一連の情報処理サイクルを繰り返し実行して車両10の移動量を積算することにより、車両10の自己位置を算出することができる。
 [ステップS09の処理]
 次に、図9のフローチャートを参照して、図8のステップS09の詳細な手順を説明する。図9に示すように、ステップS101において、走行状態判定部30は、車両10の走行状態を検出する。具体的には、車輪速センサによって車両10の速度を検出したり、加速度センサによって車両10の前後方向や車幅方向の加速度を検出したりする。また、ヨーレートセンサによって車両10のヨーレートを検出してもよい。
 次に、ステップS103において、走行状態判定部30は、車両10が走行安定状態であるか否かを判定する。具体的に、走行状態判定部30は、車両10が停車している場合に走行安定状態であると判定する。この場合には、車両10に搭載されている車輪速センサの値が0になると、車両10が停車したと判断して走行安定状態であると判定する。
 また、走行状態判定部30は、車両10の速度が一定である場合に走行安定状態であると判定する。この場合には、車両10に搭載されている加速度センサで検出された前後方向の加速度が閾値以下になると、車両10の速度が一定と判断して走行安定状態であると判定する。
 さらに、走行状態判定部30は、車両10が直進している場合に走行安定状態であると判定する。この場合には、車両10に搭載されている加速度センサで検出された車幅方向の加速度が閾値以下になると、車両10が直進していると判断して走行安定状態であると判定する。
 このようにして、車両10が走行安定状態であるか否かの判定が行われ、走行状態判定部30が走行安定状態であると判定した場合(ステップS103でYES)にはステップS105に進む。また、走行状態判定部30が走行安定状態ではないと判定した場合(ステップS103でNO)にはステップS107に進む。
 ステップS105では、自己位置算出部26が、積分演算の起点として所定の初期距離及び初期姿勢角を設定する。例えば、本実施形態では、車両10のイグニッションスイッチがオンされたときの車両10の路面に対する距離及び姿勢角が、所定の初期距離及び初期姿勢角として設定される。
 ステップS107では、走行状態判定部30が、姿勢角算出部22によってパターン光32aから距離及び姿勢角が算出されているか否かを判定する。そして、今回の情報処理サイクルのステップS05において、姿勢角算出部22が距離及び姿勢角を算出している場合(ステップS107でYES)にはステップS109へ進む。一方、今回の情報処理サイクルのステップS05において、姿勢角算出部22が距離及び姿勢角を算出していない場合(ステップS107でNO)には、ステップS111へ進む。
 ステップS109では、自己位置算出部26が、積分演算の起点として、今回の情報処理サイクルのステップS05でパターン光32aから算出された距離及び姿勢角を設定する。また、自己位置算出部26は、今回の情報処理サイクルで距離及び姿勢角が算出された際の車両位置を、積分演算の起点(車両の初期位置)として設定する。
 ステップS111では、自己位置算出部26が、積分演算の起点として、前回の情報処理サイクルのステップS05でパターン光32aから算出された距離及び姿勢角を設定する。また、自己位置算出部26は、前回の情報処理サイクルで距離及び姿勢角が算出された際の車両位置を、積分演算の起点(車両の初期位置)として設定する。
 このようにして、積分演算の起点が設定されると、ステップS09の処理は終了して図8のステップS11に進む。
 [第1実施形態の効果]
 以上詳細に説明したように、本実施形態に係る自己位置算出装置では、車両10が走行安定状態であると判定された場合に、所定の初期距離及び初期姿勢角に姿勢変化量を加算して、現在の車両10の現在位置、路面に対する距離及び姿勢角を算出する。これにより、車両10の挙動が安定しているときに、車両10の自己位置を算出するための起点を初期距離及び初期姿勢角にリセットできるので、車両10の自己位置を精度よく算出することができる。さらに、車両10の自己位置を算出するための起点を定期的に初期距離及び初期姿勢角にリセットできるので、誤差が拡大してしまうことを防止することができる。
 また、本実施形態に係る自己位置算出装置では、車両10が停車したときに走行安定状態であると判定するので、車両10の挙動が安定している状態を確実に検出することができ、これによって車両10の自己位置を精度よく算出することができる。
 さらに、本実施形態に係る自己位置算出装置では、車両10の速度が一定のときに走行安定状態であると判定するので、車両10の挙動が安定している状態を確実に検出することができ、これによって車両10の自己位置を精度よく算出することができる。
 また、本実施形態に係る自己位置算出装置では、車両10が直進しているときに走行安定状態であると判定するので、車両10の挙動が安定している状態を確実に検出することができ、これによって車両10の自己位置を精度よく算出することができる。
 さらに、本実施形態に係る自己位置算出装置では、所定の初期距離及び初期姿勢角として車両10のイグニッションスイッチがオンされたときの車両10の路面に対する距離及び姿勢角を用いる。これにより、車両10の乗員数や積載量を反映した値を初期距離及び初期姿勢角とすることができるので、より正確に車両10の自己位置を算出することができる。
[第2実施形態]
 次に、本発明の第2実施形態に係る自己位置算出装置について図面を参照して説明する。ただし、本実施形態に係る自己位置算出装置の構成は、図1に示した第1実施形態と同一なので、詳細な説明は省略する。
 [情報処理サイクル]
 本実施形態に係る自己位置算出装置による情報処理サイクルは、図8に示す第1実施形態と同一なので、詳細な説明は省略する。本実施形態では、図8のステップS09の積分演算の起点を設定する処理が第1実施形態と相違している。
 [ステップS09の処理]
 次に、図10のフローチャートを参照して、図8のステップS09の詳細な手順を説明する。上述した第1実施形態では、ステップS103において車両10が走行安定状態であるか否かを判定した後に、ステップS107でパターン光32aから距離及び姿勢角が算出されているか否かを判定していた。しかし、本実施形態では、図10に示すようにステップS203においてパターン光32aから距離及び姿勢角が算出されているか否かを判定した後に、ステップS205において車両10が走行安定状態であるか否かを判定している。
 この他のステップS201、S207~S211の処理については、それぞれ図9のステップS101、S105、S109、S111の処理と同一なので、詳細な説明は省略する。
 [第2実施形態の効果]
 上述したように、本実施形態に係る自己位置算出装置では、今回の情報処理サイクルでパターン光32aから車両10の距離及び姿勢角が算出できなかった場合に限って、車両10が走行安定状態であるか否かを判定する。これにより、車両が走行安定状態であるか否かを判定する処理を行う頻度を少なくできるので、ECU13の演算負荷を軽減し、且つ演算速度を向上させることができる。
 なお、上述の実施形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施形態以外の形態であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計などに応じて種々の変更が可能であることは勿論である。
10 車両
11 投光器
12 カメラ(撮像部)
13 ECU
21 パターン光抽出部
22 姿勢角算出部
23 特徴点検出部
24 姿勢変化量算出部
26 自己位置算出部
27 パターン光制御部
30 走行状態判定部
31 路面
32a、32b パターン光
Te 特徴点

Claims (6)

  1.  車両周囲の路面にパターン光を投光する投光器と、
     前記車両に搭載され、前記パターン光が投光された領域を含む車両周囲の路面を撮像して画像を取得する撮像部と、
     前記撮像部で取得した画像における前記パターン光の位置から前記路面に対する車両の姿勢角を算出する姿勢角算出部と、
     前記撮像部で取得した画像における前記路面上の複数の特徴点の時間変化に基づいて前記車両の姿勢変化量を算出する姿勢変化量算出部と、
     前記車両の初期位置及び姿勢角に前記姿勢変化量を加算してゆくことによって前記車両の現在位置及び姿勢角を算出する自己位置算出部と、
     前記車両の走行状態を検出して前記車両が走行安定状態であるか否かを判定する走行状態判定部とを備え、
     前記走行状態判定部によって前記車両が走行安定状態であると判定された場合には、前記自己位置算出部は前記車両が走行安定状態にあるときの前記車両の現在位置及び所定の初期姿勢角に前記姿勢変化量を加算して前記車両の現在位置及び姿勢角を算出することを特徴とする自己位置算出装置。
  2.  前記走行状態判定部は、前記車両が停車したときに走行安定状態であると判定することを特徴とする請求項1に記載の自己位置算出装置。
  3.  前記走行状態判定部は、前記車両の速度が一定のときに走行安定状態であると判定することを特徴とする請求項1または2に記載の自己位置算出装置。
  4.  前記走行状態判定部は、前記車両が直進しているときに走行安定状態であると判定することを特徴とする請求項1~3のいずれか1項に記載の自己位置算出装置。
  5.  前記自己位置算出部は、前記所定の初期姿勢角として、前記車両のイグニッションスイッチがオンされたときの前記車両の現在位置及び姿勢角を用いることを特徴とする請求項1~4のいずれか1項に記載の自己位置算出装置。
  6.  車両周囲の路面にパターン光を投光する手順と、
     前記パターン光が投光された領域を含む車両周囲の路面を撮像して画像を取得する手順と、
     前記画像における前記パターン光の位置から前記路面に対する車両の姿勢角を算出する手順と、
     前記画像における前記路面上の複数の特徴点の時間変化に基づいて前記車両の姿勢変化量を算出する手順と、
     前記車両の初期位置及び姿勢角に前記姿勢変化量を加算してゆくことによって前記車両の現在位置及び姿勢角を算出する自己位置算出手順と、
     前記車両の走行状態を検出して前記車両が走行安定状態であるか否かを判定する走行状態判定手順とを含み、
     前記走行状態判定手順によって前記車両が走行安定状態であると判定された場合に、前記自己位置算出手順では前記車両が走行安定状態にあるときの前記車両の現在位置及び所定の初期姿勢角に前記姿勢変化量を加算して前記車両の現在位置及び姿勢角を算出することを特徴とする自己位置算出方法。
PCT/JP2014/054315 2014-02-24 2014-02-24 自己位置算出装置及び自己位置算出方法 WO2015125299A1 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
EP14883047.4A EP3113147B1 (en) 2014-02-24 2014-02-24 Self-location calculating device and self-location calculating method
CN201480076278.5A CN106030681B (zh) 2014-02-24 2014-02-24 自身位置计算装置以及自身位置计算方法
US15/120,795 US9684837B2 (en) 2014-02-24 2014-02-24 Self-location calculating device and self-location calculating method
PCT/JP2014/054315 WO2015125299A1 (ja) 2014-02-24 2014-02-24 自己位置算出装置及び自己位置算出方法
JP2016503898A JP6176387B2 (ja) 2014-02-24 2014-02-24 自己位置算出装置及び自己位置算出方法
RU2016137938A RU2628420C1 (ru) 2014-02-24 2014-02-24 Устройство вычисления собственного местоположения и способ вычисления собственного местоположения
MX2016010744A MX349227B (es) 2014-02-24 2014-02-24 Dispositivo de calculo de ubicacion local y metodo de calculo de ubicacion local.
BR112016019589-2A BR112016019589B1 (pt) 2014-02-24 2014-02-24 Dispositivo de cálculo de autolocalização e método de cálculo de autolocalização

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/054315 WO2015125299A1 (ja) 2014-02-24 2014-02-24 自己位置算出装置及び自己位置算出方法

Publications (1)

Publication Number Publication Date
WO2015125299A1 true WO2015125299A1 (ja) 2015-08-27

Family

ID=53877832

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/054315 WO2015125299A1 (ja) 2014-02-24 2014-02-24 自己位置算出装置及び自己位置算出方法

Country Status (8)

Country Link
US (1) US9684837B2 (ja)
EP (1) EP3113147B1 (ja)
JP (1) JP6176387B2 (ja)
CN (1) CN106030681B (ja)
BR (1) BR112016019589B1 (ja)
MX (1) MX349227B (ja)
RU (1) RU2628420C1 (ja)
WO (1) WO2015125299A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220283588A1 (en) * 2021-03-02 2022-09-08 Kabushiki Kaisha Toyota Jidoshokki Autonomous vehicle and self-location estimating method in autonomous vehicle
WO2023017624A1 (en) * 2021-08-11 2023-02-16 Hitachi Astemo, Ltd. Drive device, vehicle, and method for automated driving and/or assisted driving

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6532229B2 (ja) * 2014-12-18 2019-06-19 株式会社デンソーテン 物体検出装置、物体検出システム、物体検出方法及びプログラム
US10783382B2 (en) * 2016-04-06 2020-09-22 Semiconductor Components Industries, Llc Systems and methods for buffer-free lane detection
WO2018216342A1 (ja) * 2017-05-24 2018-11-29 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US10580299B2 (en) * 2017-10-13 2020-03-03 Waymo Llc Lane change notification
KR102639078B1 (ko) * 2018-08-07 2024-02-22 현대자동차주식회사 노면상으로 정보를 표시하는 자동차 및 그 제어 방법
CN110231826A (zh) * 2019-06-25 2019-09-13 苏州佳世达光电有限公司 运输车控制方法、系统及应用其的运输车
US20230176216A1 (en) * 2021-12-03 2023-06-08 Argo AI, LLC Automatic bootstrap for autonomous vehicle localization

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06325298A (ja) * 1993-05-13 1994-11-25 Yazaki Corp 車両周辺監視装置
JP2007256090A (ja) * 2006-03-23 2007-10-04 Nissan Motor Co Ltd 車両用環境認識装置及び車両用環境認識方法
JP2010101683A (ja) * 2008-10-22 2010-05-06 Nissan Motor Co Ltd 距離計測装置および距離計測方法
WO2012172870A1 (ja) * 2011-06-14 2012-12-20 日産自動車株式会社 距離計測装置及び環境地図生成装置
JP2013147114A (ja) * 2012-01-18 2013-08-01 Toyota Motor Corp 周辺環境取得装置およびサスペンション制御装置
JP2013187862A (ja) * 2012-03-09 2013-09-19 Topcon Corp 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2901112B2 (ja) * 1991-09-19 1999-06-07 矢崎総業株式会社 車両周辺監視装置
JP4161584B2 (ja) * 2002-02-07 2008-10-08 トヨタ自動車株式会社 移動体用安全装置
KR100556612B1 (ko) * 2002-06-29 2006-03-06 삼성전자주식회사 레이저를 이용한 위치 측정 장치 및 방법
JP2004198211A (ja) * 2002-12-18 2004-07-15 Aisin Seiki Co Ltd 移動体周辺監視装置
JP2004198212A (ja) * 2002-12-18 2004-07-15 Aisin Seiki Co Ltd 移動体周辺監視装置
JP4258413B2 (ja) * 2004-03-26 2009-04-30 三菱ふそうトラック・バス株式会社 車両走行状態判定装置
AU2006327353B2 (en) * 2005-12-23 2011-11-24 Gcoder Systems Ab Positioning pattern
JP4780614B2 (ja) * 2006-04-10 2011-09-28 アルパイン株式会社 車体挙動測定装置
JP4914726B2 (ja) 2007-01-19 2012-04-11 クラリオン株式会社 現在位置算出装置、現在位置算出方法
DE102007022524A1 (de) * 2007-05-14 2008-11-20 Bayerische Motoren Werke Aktiengesellschaft Kraftfahrzeug
US9491451B2 (en) * 2011-11-15 2016-11-08 Magna Electronics Inc. Calibration system and method for vehicular surround vision system
JP2013196353A (ja) * 2012-03-19 2013-09-30 Sharp Corp 周辺情報生成装置、乗物、周辺情報生成方法、周辺情報生成プログラム、コンピュータ読み取り可能な記録媒体
CN104541128B (zh) * 2012-08-02 2017-10-17 丰田自动车株式会社 路面状态取得装置及悬架系统
US9349058B2 (en) * 2012-10-31 2016-05-24 Tk Holdings, Inc. Vehicular path sensing system and method
US20160176343A1 (en) * 2013-08-30 2016-06-23 Clarion Co., Ltd. Camera Calibration Device, Camera Calibration System, and Camera Calibration Method
EP2851870B1 (en) * 2013-09-20 2019-01-23 Application Solutions (Electronics and Vision) Limited Method for estimating ego motion of an object
JP2015111090A (ja) * 2013-11-05 2015-06-18 株式会社リコー 物体検出装置
JP6395393B2 (ja) * 2014-02-13 2018-09-26 株式会社小糸製作所 車両の運転支援装置
BR112016019519B1 (pt) * 2014-02-24 2022-07-26 Nissan Motor Co. Ltd Aparelho e método de cálculo de auto-posição para calcular uma auto-posição de um veículo
MX349024B (es) * 2014-02-24 2017-07-07 Nissan Motor Dispositivo de calculo de la ubicacion propia y metodo de calculo de la ubicacion propia.
BR112016019494B1 (pt) * 2014-02-24 2022-01-04 Nissan Motor Co. Ltd Aparelho de cálculo de autoposição e método de cálculo de autoposição

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06325298A (ja) * 1993-05-13 1994-11-25 Yazaki Corp 車両周辺監視装置
JP2007256090A (ja) * 2006-03-23 2007-10-04 Nissan Motor Co Ltd 車両用環境認識装置及び車両用環境認識方法
JP2010101683A (ja) * 2008-10-22 2010-05-06 Nissan Motor Co Ltd 距離計測装置および距離計測方法
WO2012172870A1 (ja) * 2011-06-14 2012-12-20 日産自動車株式会社 距離計測装置及び環境地図生成装置
JP2013147114A (ja) * 2012-01-18 2013-08-01 Toyota Motor Corp 周辺環境取得装置およびサスペンション制御装置
JP2013187862A (ja) * 2012-03-09 2013-09-19 Topcon Corp 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3113147A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220283588A1 (en) * 2021-03-02 2022-09-08 Kabushiki Kaisha Toyota Jidoshokki Autonomous vehicle and self-location estimating method in autonomous vehicle
US11681297B2 (en) * 2021-03-02 2023-06-20 Southwest Research Institute Autonomous vehicle and self-location estimating method in autonomous vehicle
WO2023017624A1 (en) * 2021-08-11 2023-02-16 Hitachi Astemo, Ltd. Drive device, vehicle, and method for automated driving and/or assisted driving

Also Published As

Publication number Publication date
BR112016019589B1 (pt) 2022-06-14
BR112016019589A2 (ja) 2017-08-15
JP6176387B2 (ja) 2017-08-09
CN106030681B (zh) 2017-09-05
CN106030681A (zh) 2016-10-12
EP3113147A4 (en) 2017-03-22
MX2016010744A (es) 2016-10-26
MX349227B (es) 2017-07-19
US9684837B2 (en) 2017-06-20
EP3113147A1 (en) 2017-01-04
JPWO2015125299A1 (ja) 2017-03-30
RU2628420C1 (ru) 2017-08-16
EP3113147B1 (en) 2018-11-28
US20170011269A1 (en) 2017-01-12

Similar Documents

Publication Publication Date Title
JP6237876B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6176387B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6187671B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6269838B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6187672B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6237875B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6237874B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6398218B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6547362B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6398217B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6369897B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6299319B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6492974B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6459745B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6398219B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6369898B2 (ja) 自己位置算出装置及び自己位置算出方法
JP6459701B2 (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: 14883047

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: MX/A/2016/010744

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2016503898

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15120795

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112016019589

Country of ref document: BR

REEP Request for entry into the european phase

Ref document number: 2014883047

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014883047

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016137938

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112016019589

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20160824