WO2017168472A1 - 位置推定装置、位置推定方法及び制御プログラム - Google Patents
位置推定装置、位置推定方法及び制御プログラム Download PDFInfo
- Publication number
- WO2017168472A1 WO2017168472A1 PCT/JP2016/003850 JP2016003850W WO2017168472A1 WO 2017168472 A1 WO2017168472 A1 WO 2017168472A1 JP 2016003850 W JP2016003850 W JP 2016003850W WO 2017168472 A1 WO2017168472 A1 WO 2017168472A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- voxel
- information
- measurement
- degree
- position estimation
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C15/00—Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20048—Transform domain processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20072—Graph-based image processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20076—Probabilistic image processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Definitions
- the present disclosure relates to a position estimation device that estimates the position of a moving object in space.
- Patent Document 1 discloses a technique for superimposing and displaying parallel and rotated map data on a camera image and estimating a position based on the similarity.
- Non-Patent Document 1 estimates the camera position by comparing voxels (small rectangular parallelepiped areas obtained by dividing a three-dimensional space) with map data and measurement data measured by a camera with respect to three-dimensional coordinates. The technology to do is disclosed.
- Non-Patent Document 1 When estimating the position of a moving body such as a camera from map data representing a position in space (three-dimensional space) by three-dimensional coordinates and measurement data such as a camera image, as in the technique of Non-Patent Document 1, Using the position (three-dimensional coordinates) is useful for reducing the calculation load related to voxel matching (that is, speeding up position estimation). However, in an environment where structures having similar shapes are continuously arranged, position estimation may not be performed properly.
- the present disclosure is a position estimation device that estimates the position of a moving object in space, and has a possibility that position estimation can be appropriately performed even in an environment in which structures having similar shapes are continuously arranged.
- An enhanced position estimation device is provided.
- the present disclosure also provides a position estimation method and a position estimation control program used in the position estimation apparatus.
- the position estimation device is a position estimation device that estimates the position of a moving body in space, and the position of each of a plurality of points in a local space around the moving body and reception of electromagnetic waves from the point.
- Position information and attribute information about each voxel in a voxel group arranged in a three-dimensional manner in association with the local space are extracted from the measurement unit that measures the attribute detected by the wave and the measurement result by the measurement unit
- a position estimation unit configured to estimate the position of the moving body according to the position information and the attribute information extracted by the extraction unit based on the position information and the attribute information.
- the position estimation method in the present disclosure is a position estimation method used in a position estimation device that estimates the position of a moving object in space, and the position of each of a plurality of points in a local space around the moving object ,
- An extraction step for extracting position information and attribute information for the map, and a map management step for managing position information and attribute information for each voxel in the voxel group arranged in a three-dimensional manner in association with the space represented by the map;
- the position information extracted in the extraction step based on the position information and the attribute information managed in the map management step Depending on the fine said attribute information includes a position estimation step for estimating the position of the movable body.
- a control program is a control program for causing a position estimation device including a microprocessor to execute a position estimation process that estimates a position of a moving object in space, and the position estimation process includes: An acquisition step of acquiring a measurement result of a position and an attribute detected by receiving electromagnetic waves from the point for each of a plurality of points in the local space around the measurement point, and a measurement result acquired in the acquisition step An extraction step of extracting position information and attribute information for each voxel in the voxel group arranged in a three-dimensional manner in association with the local space, and a three-dimensional arrangement in association with the space represented by the map A map management step for managing position information and attribute information for each voxel in the voxel group, and the map management step Based on the position information and the attribute information management, according to the extracted positional information and the attribute information by the extraction step, and a position estimation step for estimating the position of the movable body.
- the position estimation device and the like in the present disclosure there is an increased possibility that the position of the moving body can be estimated quickly and appropriately even in an environment where structures having the same shape are continuously arranged.
- FIG. 1 is a schematic diagram illustrating an example of a space in which a position estimation apparatus according to Embodiment 1 is present.
- FIG. 2 is a functional block diagram of the position estimation apparatus according to the first embodiment.
- FIG. 3 is a conceptual diagram illustrating a process of extracting data (voxel data) about voxels based on measurement point data (measurement point data) in space.
- FIG. 4 is a diagram illustrating an example of measurement point data according to the first embodiment.
- FIG. 5 is a diagram illustrating an example of voxel data according to the first embodiment.
- FIG. 6 is a flowchart illustrating an example of voxel data extraction processing by the extraction unit of the position estimation device.
- FIG. 1 is a schematic diagram illustrating an example of a space in which a position estimation apparatus according to Embodiment 1 is present.
- FIG. 2 is a functional block diagram of the position estimation apparatus according to the first embodiment.
- FIG. 3 is a conceptual diagram illustrating
- FIG. 7 is a flowchart illustrating an example of position estimation processing by the position estimation unit of the position estimation device.
- FIG. 8 is a flowchart illustrating an example of likelihood calculation, which is part of the position estimation process performed by the position estimation unit.
- FIG. 9 is a diagram illustrating an example of particle data used for position estimation processing by the position estimation unit.
- FIG. 10 is a conceptual diagram showing a conversion operation for converting measurement coordinates related to position information of measurement voxels into map coordinates using particle data.
- FIG. 11 is a conceptual diagram illustrating prediction, observation (likelihood calculation), and resampling using particle data in the position estimation process.
- FIG. 12 is a diagram illustrating an example of calculating the degree of approximation of position information for voxels.
- FIG. 13 is a diagram illustrating an example of calculating the degree of approximation of color information for voxels.
- FIG. 14 is a diagram illustrating an example of map voxel data according to the first modification of the first embodiment.
- FIG. 15 is a diagram illustrating an example of voxel data according to the second modification of the first embodiment.
- FIG. 16 is a diagram illustrating an example of calculating the degree of approximation of color information for voxels in the second modification of the first embodiment.
- FIG. 17 is a diagram illustrating sub-voxels used for extracting color information for voxels in the third modification of the first embodiment.
- FIG. 18 is a functional block diagram of the position estimation apparatus according to the second embodiment.
- FIG. 19 is a diagram illustrating an example of measurement point data according to the second embodiment.
- FIG. 20 is a diagram illustrating an example of voxel data according to the second embodiment.
- FIG. 21 is a diagram illustrating an example of calculating the degree of approximation of reflection intensity information for voxels.
- FIG. 22 is a functional block diagram of the position estimation apparatus according to the third embodiment.
- FIG. 23 is a diagram illustrating an example of measurement point data according to the third embodiment.
- FIG. 24 is a diagram illustrating an example of voxel data according to the third embodiment.
- FIG. 25 is a diagram illustrating an example of calculating the degree of approximation of temperature information for voxels.
- the position estimation device includes: A position estimation device for estimating a position of a moving object in space, the position of each of a plurality of points in a local space around the moving object, and an attribute detected by receiving electromagnetic waves from the point A measurement unit for measuring, an extraction unit for extracting position information and attribute information for each voxel in a voxel group arranged in a three-dimensional manner in association with the local space from the measurement result by the measurement unit, and a map A map management unit that manages position information and attribute information for each voxel in the voxel group that is arranged in a three-dimensional manner in association with the space, and the position that is managed by the map management unit Based on the information and the attribute information in response to the position information and the attribute information the extractor has extracted, and a position estimation unit for estimating the position of the movable body.
- the position is estimated using not only the position of the voxel but also attribute information (information based on attributes detected by electromagnetic waves such as color, temperature, reflection intensity, etc.). Even in an environment where structures having the same shape are continuously arranged, attributes can be different between the structures, so that the possibility that the position of the moving body can be estimated quickly and appropriately increases.
- the position estimation unit converts the position information about each voxel corresponding to the space managed by the map management unit and the three-dimensional coordinate system of the local space into the three-dimensional coordinate system of the space.
- the degree of approximation with the position information about each voxel corresponding to the local space extracted by the extraction unit, converted using each of a plurality of conversion operations for performing, is calculated for each conversion operation
- Likelihood is calculated based on the degree of approximation between position information and the degree of approximation of attribute information for both voxels in each set of the voxels relating to the space where the degree of approximation is the highest and the voxel relating to the local space.
- the estimation of the position of the moving object according to the conversion operation with the highest likelihood calculated among the plurality of conversion operations or the conversion operation weighted average according to the calculated likelihood It may be performed.
- the likelihood related to which position in the space the measured local space is likely to correspond to is calculated based not only on the degree of approximation between the position information but also on the degree of approximation between the attribute information.
- the position of the moving object can be estimated.
- the position estimation unit may calculate the likelihood and move based on the calculation of the approximation degree related to each voxel corresponding to the local space converted using each of the plurality of conversion operations.
- the estimation of the body position may be repeatedly performed, and the plurality of conversion operations to be used for the next conversion may be determined based on the likelihood calculation result.
- the position estimation unit converts position information about each voxel corresponding to the space managed by the map management unit and a three-dimensional coordinate system of the local space into a three-dimensional coordinate system of the space.
- the degree of approximation with the position information about each voxel corresponding to the local space extracted by the extraction unit, converted using each of the plurality of conversion operations for, is calculated for each of the conversion operations
- the likelihood is calculated based on the degree of approximation between the position information for both voxels in each set of the voxel related to the space and the voxel related to the local space, and among the plurality of conversion operations
- the estimation of the position of the moving body is performed according to a conversion operation with the highest calculated likelihood or a conversion operation weighted average according to the calculated likelihood, and each of the plurality of conversion operations is used.
- the calculation of the likelihood and the estimation of the position of the moving object are repeatedly performed based on the calculation of the degree of approximation of each voxel corresponding to the local space converted in the above, and the calculation result of the likelihood is obtained.
- the plurality of conversion operations to be used for the conversion are determined, and the calculation of the likelihood is added to the degree of approximation between the position information for both voxels under a certain condition other than the first iteration. This may be performed based on the degree of approximation between the attribute information for both voxels.
- the extraction by the extraction unit is performed by determining, for each voxel, position information of the voxel so as to indicate an average value of positions of the points in the voxel measured by the measurement unit.
- the position information for each voxel performed and managed by the map management unit may indicate an average value of positions for a plurality of points in a part of the space corresponding to the corresponding voxel.
- position estimation is performed by comparing position information between voxels (approximation calculation etc.) using position information obtained by compressing measured positions for each voxel, so that all measured positions are used for comparison. Compared to the case, the calculation load is reduced, and quick position estimation becomes possible.
- the position information about each voxel corresponding to the local space extracted by the extraction unit or the position information about each voxel corresponding to the space managed by the map management unit is: Furthermore, a plane specified by a variance-covariance matrix determined based on the position of each point in the voxel is shown, and the position estimation unit indicates the degree of approximation between the position information and one of the position information is It is good also as performing the said calculation of the said likelihood by specifying according to the distance of the average value of the position to show, and the plane which the other shows.
- the position can be estimated with higher accuracy by using the position information indicating the plane.
- the extraction by the extraction unit is to determine, for each voxel, attribute information about the voxel so as to indicate a histogram based on an attribute for each point in the voxel measured by the measurement unit.
- the attribute information for each voxel managed by the map management unit is the reception of electromagnetic waves from the point for a plurality of points in a part of the space corresponding to the voxel.
- the histogram based on the detected attribute is shown, and the position estimation unit specifies the degree of approximation between the attribute information according to the distance between the histogram indicated by one of the attribute information and the histogram indicated by the other.
- the calculation of the likelihood may be performed.
- the position can be estimated with higher accuracy than when the attribute information simply indicates a one-dimensional value, for example.
- the extraction by the extraction unit may determine, for each voxel, attribute information about the voxel so as to indicate an average value of the attribute for each point in the voxel measured by the measurement unit.
- the attribute information for each voxel managed by the map management unit is the reception of electromagnetic waves from the point for a plurality of points in a part of the space corresponding to the voxel. It is good also as showing the average value of the attribute detected.
- position estimation is performed by comparing attribute information between voxels (approximation calculation etc.) using attribute information obtained by compressing measured attributes for each voxel, so that all measured positions are used for comparison. Compared to the case, the calculation load is reduced, and quick position estimation becomes possible.
- the extraction by the extraction unit may be performed so that the attribute information about the voxel is correlated with the position and the attribute for each point in the voxel measured by the measurement unit.
- the attribute information for each voxel performed by the map management unit is determined by the position and reception of electromagnetic waves at a plurality of points in a part of the space corresponding to the corresponding voxel. It is good also as showing the correlation with the attribute detected.
- the attribute information indicating local autocorrelation based on the measurement points in the voxel is used, so that, for example, the position estimation can be performed with higher accuracy than when using attribute information indicating only the average value of the attributes of the measurement points. There is a possibility of being able to do it.
- the extraction by the extraction unit is performed for each voxel by using attribute information about the voxel in each voxel measured by the measurement unit and in one or more voxels adjacent to the voxel.
- the attribute information for each voxel which is performed by determining to indicate the correlation between the position and the attribute for, is a part of the space corresponding to the corresponding voxel and the It is good also as showing the correlation with the position and the attribute detected by reception of electromagnetic waves about a plurality of points in a part of the space corresponding to one or more voxels close to a voxel.
- attribute information indicating local autocorrelation based on measurement points in adjacent voxel groups is used, for example, position estimation can be made higher than in the case of using attribute information indicating only the average value of the attributes of measurement points. There is a possibility to be able to do with accuracy.
- the attribute measured by the measurement unit is color
- the attribute information extracted by the extraction unit is color information representing color
- the attribute information managed by the map management unit is color It may be color information to represent.
- each of the color information extracted by the extraction unit and the color information managed by the map management unit is information that can distinguish a specific color component and a color component other than the specific color component
- the position estimation unit uses the approximation degree of the attribute information for the two voxels as a basis for the calculation of the likelihood, and the degree of influence of the specific color component on the approximation degree of the attribute information. It may be calculated so that the degree of influence of the other color components on the degree of approximation is different.
- the mode changes depending on the year, month, season, time, etc., and the specific color component is determined for trees, sky, etc., which are unique in color, so that the mode in space changes ( There is a possibility that the accuracy of position estimation can be prevented from lowering due to the influence of trees, sky, etc.
- each of the color information extracted by the extraction unit and the color information managed by the map management unit is information that can distinguish a specific color component and a color component other than the specific color component
- the position estimation unit based on the calculation of the likelihood, the approximation degree of the attribute information between the voxels related to the space and the attribute information about the voxels in each set of the voxels related to the local space,
- the position information about the voxel related to the local space among the both voxels satisfies a predetermined position condition
- the approximation degree of the specific color component in the attribute information about the voxel related to the local space It is also possible to calculate so as to make the degree of the influence of the other color component different from the degree of the influence on the approximation degree.
- the position where the aspect in the space changes can be limited, so that the accuracy of the position estimation is appropriately reduced due to the influence of the change in the aspect in the space. There is a possibility that it can be suppressed.
- the map management unit manages the flatness of each voxel in a voxel group arranged in a three-dimensional manner in association with the space represented by the map, and the position estimation unit The degree of approximation of the attribute information for the two voxels in each set of the voxels related to the space and the voxels related to the local space, which is the basis of the calculation, is related to the space of the two voxels.
- the degree of influence of the specific color component on the approximation degree in the attribute information on the voxel related to the space and the approximation degree of the other color component It is good also as calculating so that it may differ in the degree of the influence on.
- the attribute measured by the measurement unit is a reflection intensity of electromagnetic waves
- the attribute information extracted by the extraction unit represents a reflection intensity
- the attribute information managed by the map management unit is a reflection intensity. May be represented.
- estimation is performed using attribute information indicating the reflection intensity as well as the position of the voxel. Even in an environment where structures having the same shape are continuously arranged, the reflection intensity of electromagnetic waves may differ between the structures, so that the possibility that the position of the moving body can be estimated quickly and appropriately increases. .
- the position estimation unit is the basis of the calculation of the likelihood, and the attribute information between the voxels in the set of the voxels related to the space and the voxels related to the local space.
- the attribute information about the voxel related to the local space has a reflection intensity higher than a predetermined intensity.
- the predetermined position condition is determined so as to be satisfied at a height close to the road surface, there is a possibility that the position can be accurately estimated based on a road display such as a white line having a high reflection intensity.
- the attribute measured by the measurement unit may be temperature
- the attribute information extracted by the extraction unit may represent temperature
- the attribute information managed by the map management unit may represent temperature. Good.
- the position estimation unit is the basis of the calculation of the likelihood, and the attribute information between the voxels in the set of the voxels related to the space and the voxels related to the local space.
- the attribute information about the voxel related to the local space corresponds to a predetermined human body temperature.
- the calculation may be performed so as to increase the degree of influence on the degree of approximation rather than when indicating the temperature within the temperature range.
- the position estimation unit may output information indicating the estimated position of the moving body.
- the position estimation method in the present disclosure is a position estimation method used in a position estimation device that estimates the position of a moving object in space, and the position of each of a plurality of points in a local space around the moving object ,
- An extraction step for extracting position information and attribute information for the map, and a map management step for managing position information and attribute information for each voxel in the voxel group arranged in a three-dimensional manner in association with the space represented by the map;
- the position information extracted in the extraction step based on the position information and the attribute information managed in the map management step Depending on the fine said attribute information includes a position estimation step for estimating the position of the movable body.
- the attributes may be different between the structures, so that the possibility that the position of the moving body can be estimated quickly and appropriately increases.
- a control program is a control program for causing a position estimation device including a microprocessor to execute a position estimation process that estimates a position of a moving object in space, and the position estimation process includes: An acquisition step of acquiring a measurement result of a position and an attribute detected by receiving electromagnetic waves from the point for each of a plurality of points in the local space around the measurement point, and a measurement result acquired in the acquisition step An extraction step of extracting position information and attribute information for each voxel in the voxel group arranged in a three-dimensional manner in association with the local space, and a three-dimensional arrangement in association with the space represented by the map A map management step for managing position information and attribute information for each voxel in the voxel group, and the map management step Based on the position information and the attribute information management, according to the extracted positional information and the attribute information by the extraction step, and a position estimation step for estimating the position of the movable body.
- the position estimation device including a microprocessor, which is installed and executed by this control program, quickly and appropriately estimates the position of the moving object by acquiring and using the measurement result including the attribute of the measurement point. Can do.
- a position estimation apparatus 100 that executes a position estimation method that uses color in addition to position in order to estimate the position of a moving object in space will be mainly described.
- FIG. 1 shows an example of a position estimation apparatus 100 according to Embodiment 1, and shows an example of a space in which the position estimation apparatus 100 exists.
- the position estimation apparatus 100 is a moving body 102 to which, for example, a measurement apparatus 101 is attached, and moves in a space (three-dimensional space) in which structures such as buildings 1a and 1b exist. .
- the position estimation device 100 has a function of estimating the position of the moving body 102 in space.
- the measuring device 101 is a device that measures the position and color of a plurality of points (measurement points) in the surrounding local space.
- the measurement point may be a place having a certain size according to the measurement performance (resolution) or the like.
- the color of the measurement point is a kind of attribute of the measurement point that is detected by receiving electromagnetic waves from the point, and is detected by, for example, visible light (a type of electromagnetic wave) in the wavelength range of 380 nm to 780 nm.
- the measuring apparatus 101 is, for example, a three-dimensional scanner (3D scanner), a stereo camera, or a combination of a 3D-LiDAR (Light Detection and2Ranging) or a two-dimensional laser range finder and a camera.
- the moving body 102 is, for example, a robot, an aircraft, a ship, a vehicle, or the like, and can move in the space.
- the moving body 102 is a robot, it may be, for example, a vehicle type having wheels or a biped walking type as long as it can move.
- a description will be given on the assumption that the moving body 102 is mainly a robot or a vehicle that can travel on the road surface (ground surface) in a vehicle type.
- the position estimation apparatus 100 includes a computer that can communicate with the measurement apparatus 101, and the computer is mounted on the moving body 102, for example.
- the computer of the position estimation apparatus 100 includes a memory, a processor (microprocessor), a communication interface (I / F), and the like.
- the computer may include a storage medium such as a hard disk in addition to the memory.
- the memory is a ROM that stores a program and data in advance, a RAM that is used to store data or the like when the program is executed, and may include, for example, a nonvolatile memory.
- the memory stores in advance a control program for realizing the position estimation process according to the position estimation method, a set value used for the control program, and the like.
- a storage medium such as a memory stores map information (such as map voxel data described later) representing a space in which the moving body 102 moves in a three-dimensional coordinate system.
- the processor performs various processes by controlling the communication I / F and the like by executing a control program.
- the memory is also used for temporarily storing values used when the control program is executed by the processor.
- the communication I / F is a communication circuit or the like for communicating with the measuring apparatus 101 or the like by wireless communication or communication via a cable, for example.
- the communication I / F may have a function of communicating with an external device away from the moving body 102 via a communication network. By communicating with an external device, for example, map information corresponding to a space that can be a movement range of the mobile object 102 within a certain period is acquired (downloaded) from the external device, or the estimated position of the mobile object 102 is transmitted to the external device. It becomes possible to transmit.
- FIG. 2 is a functional block diagram of the position estimation apparatus 100.
- the position estimation apparatus 100 includes a measurement unit 110, an extraction unit 120, a map management unit 130, and a position estimation unit 140, as shown in FIG.
- each functional unit will be described.
- the measurement unit 110 has a function of measuring the position and color of each of a plurality of points (that is, measurement points) in the local space around the moving body 102, and acquires measurement point data that is a measurement result by measurement. .
- the measurement unit 110 is realized by, for example, a communication I / F in a computer of the measurement apparatus 101 and the position estimation apparatus 100, a processor that executes a control program, and the like.
- the measurement unit 110 can measure each measurement point (for example, the entire circumference in the horizontal direction, etc.) in the local space around the moving body 102 by the measuring apparatus 101 at every certain period, for example.
- the measurement point data group for each measurement point may be repeatedly acquired.
- the extraction unit 120 Based on the measurement result (measurement point data) by the measurement unit 110, the extraction unit 120 associates with the local space around the moving body 102 and positions information and attribute information (specifically) about each voxel in the voxel group arranged in a three-dimensional manner. In particular, it has a function of extracting color information representing color).
- the extraction unit 120 is realized by a processor or the like that executes a control program in the computer of the position estimation apparatus 100.
- the measurement point data obtained by measuring the local space includes a position represented by coordinates in a three-dimensional coordinate system defined by the measurement unit 110 (measurement device 101 or the like).
- the extraction unit 120 extracts data (voxel data) for each voxel obtained by dividing the local space into a rectangular parallelepiped voxel group along the three-dimensional coordinate system from the measurement point data related to the measurement point group.
- the voxel data includes position information in the three-dimensional coordinate system and includes color information.
- the voxel data extracted from the measurement point data by the extraction unit 120 is referred to as measurement voxel data, and the voxel that will have the measurement voxel data is referred to as a measurement voxel.
- the extraction of the measurement voxel data by the extraction unit 120 is performed, for example, by determining the position information of the measurement voxel for each measurement voxel so as to indicate the average value of the positions for each point in the measurement voxel measured by the measurement unit 110. Is done.
- the extraction unit 120 averages positions (positions represented by three-dimensional coordinates x, y, and z) in the measurement point data for each measurement point included in the measurement voxel and performs measurement for the measurement voxel. Calculate location information in voxel data.
- the extraction of the measurement voxel data by the extraction unit 120 may be performed by, for example, calculating the color information about the measurement voxel for each measurement voxel and the average value of the color for each point in the measurement voxel measured by the measurement unit 110. This is done by defining as shown.
- the extraction unit 120 is represented by red (R), green (G), and blue (B) components in the measurement point data for each measurement point included in the measurement voxel.
- the color information in the measurement voxel data for the measurement voxel is calculated by averaging the colors (RGB values in which each component of R, G, and B is represented by 8 bits).
- FIG. 3 is a conceptual diagram showing a process of extracting measurement voxel data for measurement voxels based on measurement point data of measurement points in space.
- each measurement point data (measurement point data 201a, etc.) is represented by an arrangement associated with the position of the measurement point, and the measurement voxel data (measurement voxel data 203a, etc.) possessed by the measurement voxel is measured. This is represented by an arrangement associated with the position indicated by the position information in the voxel data.
- the measurement unit 110 performs measurement in a local space around a moving body 102 that is a part of the space, and obtains measurement point data 201a, 201b, and the like for a plurality of measurement points including the building 1a and the building 1b.
- the extraction unit 120 divides the local space, which is the measured range, into voxels (for example, cubes with sides of several meters) such as measurement voxels 202a and 202b (that is, correspond to a three-dimensional array of voxel groups). .
- the measurement voxel 202a has measurement voxel data 203a
- the measurement voxel 202b has measurement voxel data 203b.
- Measurement point data 201a, 201b and the like corresponding to the measurement points included in the measurement voxel 202a are reflected in the measurement voxel data 203a for the measurement voxel 202a.
- the measurement point data represents the position by three-dimensional coordinates x, y, z and the color by RGB values.
- FIG. 4 shows measurement point data for one measurement point for each row.
- FIG. 5 is a diagram showing an example of measurement voxel data, and shows measurement voxel data for one measurement voxel for each row. Measurement voxel data as shown in FIG. 5 is temporarily stored in a storage medium such as a memory. As shown in FIG. 5, the measurement voxel data includes an index (index) indicating the arrangement of the corresponding measurement voxel in the three-dimensional array of measurement voxel groups associated with the local space, and each measurement point data in the measurement voxel.
- index index
- Position information indicating the average value of the position and color information indicating the average value of the color (RGB value) of each measurement point data in the measurement voxel are included.
- the position information in the measurement voxel data 203a in FIG. 3 indicates the average value of the positions of measurement point data (measurement point data 201a, 201b, etc.) corresponding to each measurement point included in the measurement voxel 202a, and the measurement voxel data 203a.
- the color information in indicates the average value of the color of the measurement point data (measurement point data 201a, 201b, etc.) corresponding to each measurement point included in the measurement voxel 202a.
- the map management unit 130 associates with a space represented by a map (that is, a map that defines a three-dimensional coordinate system representing a space), and voxel data for each voxel in a voxel group arranged in a three-dimensional manner, that is, a position It has a function of managing information and attribute information (specifically, color information representing a color).
- the map management unit 130 is realized by, for example, a storage medium such as a memory in the computer of the position estimation apparatus 100, a communication I / F, a processor that executes a control program, and the like.
- Voxel data managed by the map management unit 130 is referred to as map voxel data, and voxels that have map voxel data are referred to as map voxels.
- the map management unit 130 manages map information including map voxel data (position information and color information) for each map voxel in a map voxel group obtained by dividing a space.
- the management of the map information by the map management unit 130 is to make the map information usable.
- the map information is stored in a storage medium such as a memory, or the map information is obtained from an external device or the like. Is to get.
- the map information is, for example, information generated in advance by measuring a space according to a predetermined three-dimensional coordinate system.
- the map information is obtained by measuring the position and attribute (specifically, color) of each measurement point in space and extracting the map voxel data (position information and color information) for each map voxel based on the measurement result. To be generated.
- the extraction of the map voxel data based on the measurement result may be performed by a method similar to the method in which the extraction unit 120 extracts the measurement voxel data for the measurement voxel from the measurement point data, for example.
- the data structure of the map voxel data is the same as that of the measurement voxel data shown in FIG. That is, the map voxel data includes an index (index) indicating the arrangement of the map voxel and position information indicating an average value of the measurement result of the position of each point (that is, each location) in a part of the space corresponding to the map voxel.
- the average value of the color measurement result RGB value
- the position estimation unit 140 based on the map voxel data (position information and color information as attribute information) of the map information managed by the map management unit 130, the measurement voxel data (position information, and It has a function of estimating the position of the moving body 102 in accordance with color information (attribute information).
- the position estimation unit 140 is realized by, for example, a memory in a computer of the position estimation apparatus 100, a processor that executes a control program, and the like.
- the position estimation unit 140 collates the map voxel data for each map voxel managed by the map management unit 130 with the measurement voxel data for each measurement voxel extracted by the extraction unit 120. In this collation, the position estimation unit 140 uses the position information of the measurement voxel data (around the mobile object 102) so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- the conversion operation for converting the position information by the three-dimensional coordinates used for the measurement of the local space into the three-dimensional coordinate system related to the map is sequentially and speculatively specified. By specifying this conversion operation, the position of the moving body 102 is estimated. For example, the position of the moving body 102 in the three-dimensional coordinate system of the map can be estimated by performing the specified conversion operation on the position information of the measurement voxel data.
- the position estimation unit 140 converts the position information about each map voxel managed by the map management unit 130 and the position about each measurement voxel extracted by the extraction unit 120 converted using each of a plurality of conversion operations as candidates. Calculate the degree of approximation with information.
- the position estimation unit 140 approximates the position information and attribute information (that is, color information) between both the voxels in each set of the map voxel and the measurement voxel where the calculated approximation is the highest.
- the likelihood is calculated based on the degree of approximation between each other.
- the position estimation unit 140 estimates the position of the moving body 102 in accordance with a conversion operation having the highest calculated likelihood among a plurality of conversion operations as candidates or a conversion operation that is weighted and averaged according to the calculated likelihood. I do.
- the degree of approximation between the position information indicating the positions or the degree of approximation between the color information indicating the colors indicates the height of the degree to which the positions or colors are approximated.
- the position estimation unit 140 repeatedly calculates likelihood and estimates the position of the moving object based on calculation of the degree of approximation related to each measurement voxel converted using each of a plurality of conversion operations, and calculates the likelihood. A plurality of conversion operations to be used for the next conversion are determined based on the result.
- FIG. 6 is a flowchart showing an example of measurement voxel data extraction processing by the extraction unit 120. The measurement voxel data extraction process will be described with reference to FIG.
- the extraction unit 120 determines the voxel size for the measurement voxel (step S11). For example, the lengths in the x, y, and z directions in a three-dimensional coordinate system (xyz three-dimensional coordinate system) related to measurement are determined as voxel sizes. As a result, the measurement voxel is determined to be, for example, a cube having a side of 1 meter.
- the extraction unit 120 also adds an offset x, which is an addition value used to convert a value (x, y, z coordinate value) within the measurement range in the three-dimensional coordinate system related to the measurement of the measurement voxel into an index.
- the y and z coordinates are determined (step S12). Note that the voxel size of the measurement voxel does not necessarily need to match the voxel size of the map voxel.
- the extraction unit 120 acquires, as a processing target, measurement point data for one of the measurement points corresponding to the local space around the moving body 102 obtained by the measurement by the measurement unit 110 (Step S13). ). Then, the measurement voxel corresponding to the acquired measurement point data (measurement voxel including the position related to the measurement point data) is specified, and the index of the measurement voxel is calculated (step S14). For example, the index of the measurement voxel is calculated by the following equations 1 to 3 using the coordinate values of the measurement point data. This index is a number indicating the arrangement in the three-dimensional array for each measurement voxel of the measurement voxel group arranged three-dimensionally in the local space.
- x (index) (x coordinate of measurement point + x coordinate of offset) / voxel size (Formula 1)
- y (index) (y coordinate of measurement point + y coordinate of offset) / voxel size (Formula 2)
- z (index) (z coordinate of measurement point + z coordinate of offset) / voxel size (formula 3)
- the extraction unit 120 updates the position information about the measurement voxel identified in step S14 using the position in the measurement point data acquired in step S13 (step S15). Further, the extraction unit 120 updates the color information about the measurement voxel specified in step S14 using the color (RGB value) in the measurement point data acquired in step S13 (step S16).
- the measurement voxel data position information and color information
- the processing in steps S13 to S16 is repeated until the measurement point data not yet processed is sequentially processed and all the measurement point data is processed, and the processing is completed (step S17).
- step S11 to S11 each measurement point for the entire circumference in the horizontal direction, for example.
- this extraction process (steps S11 to S11) is performed.
- S17 or some of the processes in steps S13 to S17 may be performed.
- the extraction unit 120 extracts measurement voxel data (position information and color information) of each measurement voxel after a certain amount of measurement point data group is obtained in this way, the measurement points located in each measurement voxel
- the average value of the positions in each measurement point data for the measurement point data may be the position information for the measurement voxel, and the average value of the colors (RGB values) in the measurement point data may be the color information for the measurement voxel.
- the position of the measurement voxel (for example, the x-coordinate, y-coordinate, and z-coordinate of one vertex corresponding to the minimum position in the measurement voxel) can be specified by the following equations 4 to 6 based on the index.
- the position estimation unit 140 collates the map voxel data for each map voxel and the measurement voxel data for each measurement voxel. In other words, the position estimation unit 140 obtains where the position information in the measurement voxel data about the measurement voxel represented by the measurement three-dimensional coordinate system obtained by measuring the local space around the moving body 102 is somewhere. For converting the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so as to approximate the position information in the map voxel data for the map voxel represented in the three-dimensional coordinate system for the map for which the limitation is defined. By sequentially specifying conversion operations in an estimated manner, the position is estimated based on the estimated conversion operations.
- the position estimation unit 140 performs a position estimation process that repeats prediction, observation, and resampling procedures using a particle filter.
- the particle filter is a method of predicting the posterior probability from the prior probability and the likelihood calculation (likelihood calculation) using Bayes' theorem. Probabilities are expressed by hypothetical particles and their likelihood.
- the position estimation unit 140 converts the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- Particles are used as means for estimating a conversion operation with a high likelihood as a conversion operation. A conversion operation is specified for each particle. Further, the position of the moving body 102 is estimated by the estimated conversion calculation.
- FIG. 7 is a flowchart illustrating an example of position estimation processing by the position estimation unit 140
- FIG. 8 is a flowchart illustrating an example of likelihood calculation that is part of the position estimation processing. The position estimation process will be described below with reference to FIGS.
- the position estimation unit 140 first arranges initial particles as position estimation processing using a particle filter (step S21). Next, the position estimation unit 140 performs a prediction procedure for transition of the entire particle (step S22), an observation procedure for calculating the likelihood of the predicted particle (step S23), and resampling (resampling for the particle). ) Procedure (step S24) is repeated. The position estimation unit 140 ends the repetition of the process when a certain interruption condition such as the necessity of position estimation is satisfied (step S25).
- FIG. 9 shows an example of particle data, which is information about particles used for position estimation processing.
- the position estimation unit 140 stores particle data as shown in FIG. 9 for each particle in a storage medium such as a memory.
- the particle data indicates the three-dimensional coordinates and rotation angle of the particle.
- the storage area of the particle data in the storage medium includes three-dimensional coordinates (x-coordinate, y-coordinate, z-coordinate) of particles corresponding to the three-dimensional coordinate system of the map, and the z axis as the rotation center axis.
- the rotation angle ⁇ yaw and the likelihood of the particle are stored.
- the rotation component is expressed in one dimension, but it is expressed in three-dimensional components such as roll, pitch, and yaw. Also good.
- FIG. 10 is a conceptual diagram showing a conversion operation for converting measurement coordinates related to position information of measurement voxels into map coordinates using particle data.
- the three-dimensional measurement coordinate X which is the position indicated by the position information of the measurement voxel data, includes a translation component Tp based on the three-dimensional coordinates (x coordinate, y coordinate, z coordinate) of the particle,
- the rotation component Rp based on the rotation angle ⁇ yaw
- it is converted into the map coordinate Y in the map coordinate system 301 (the three-dimensional coordinate system of the map).
- the initial particle arrangement in step S21 shown in FIG. 7 is determined by random numbers so that each component of the particle (x coordinate, y coordinate, z coordinate, rotation angle ⁇ yaw) is within a possible range of the particle value. Realized by the production of initial particles. Based on the particle (each component of the particle), a conversion operation for converting the position information of the measurement voxel data into the map coordinate system 301 is determined. The range that the value of the particle can take is at least during the position estimation process. This corresponds to a range that the position information of the measurement voxel data can take (that is, a range in which the moving body 102 is assumed to move in a space represented by a map).
- step S21 for example, 1000 positions (coordinate x, coordinate y, coordinate z) are calculated with random numbers, and variations of 72 rotation angles ⁇ yaw that are different by 5 degrees for each position are generated. A total of 72,000 particles whose components are coordinate x, coordinate y, coordinate z, and rotation angle ⁇ yaw are generated.
- the position information of the moving body 102 can be used using the position information acquired by using a GPS (Global Positioning System) receiver or the like or the previous position information such as past position information
- the position indicated by the prior position information is the initial particle. You may arrange
- the prediction of transition of the entire particle in step S22 is based on the movement vector mv based on the movement of the particle (displacement of the particle component) between time t-2 and time t-1, where the current time is time t. Is calculated, and the movement vector mv is added to the entire particle at time t ⁇ 1, and observation noise approximated by a Gaussian distribution or the like is added to each particle to generate particles at time t.
- the odometry information may be used instead of the movement vector.
- FIG. 11 shows a state in which the particle state 402 at time t ⁇ 1 becomes the particle state 403 at time t as a result of addition of the movement vector mv and addition of observation noise by the prediction in step S22.
- the position estimation unit 140 first initializes a likelihood total value as data (variable) for likelihood calculation to zero (step S31).
- the position estimation unit 140 sequentially pays attention to each of the particles transitioned in step S22, and compares each of the plurality of measurement voxels to which the conversion operation corresponding to the focused particle is applied with the map voxel, thereby determining the likelihood of the particles.
- the degree is calculated (steps S32 to S38).
- the position estimation unit 140 specifies a map voxel related to the map voxel data including the position information and the position information having the highest degree of approximation in the measurement voxel data converted into the map coordinates of the measurement voxel under consideration (step S33). .
- the degree of approximation between position information is higher as the positions indicated by both pieces of position information are closer (the distance between the positions is shorter).
- the position estimation unit 140 among the map voxel data managed by the map management unit 130, based on the position of the measurement voxel (that is, the average value of the three-dimensional coordinates indicated by the position information in the measurement voxel data).
- the position indicated by the position information in the map voxel data specifies the map voxel related to the map voxel data that is closest to the position for the measurement voxel.
- the position estimation unit 140 calculates and obtains a map voxel index from the coordinate values of the position information in the map coordinates converted in step S32 using Expressions 1 to 3.
- the position estimation unit 140 calculates the degree of approximation between the position information in the map voxel data and the position information in the measurement voxel data related to the set of the map voxel identified in step S33 and the measurement voxel being noticed, and The degree of approximation is added to the total likelihood value (step S34).
- the degree of approximation between the position information about both the voxels is based on the distance D between the positions (three-dimensional coordinates) indicated by the both position information, and the shorter the distance D is, the shorter the distance D is.
- FIG. 12 shows the degree of approximation for calculating space (D) as the degree of approximation based on the distance D between the average position 312 indicated by the position information for the map voxel 311 and the average position 212 indicated by the position information for the measurement voxel 211.
- the position estimation unit 140 may calculate the degree of approximation between the pieces of position information indicating the positions of the distance D as space (D) as in Expression 901 illustrated in FIG.
- the position estimation unit 140 calculates the degree of approximation between the color information in the map voxel data and the color information in the measurement voxel data related to the set of the map voxel identified in step S33 and the measurement voxel being noticed, and The degree of approximation is added to the total likelihood value (step S35).
- the degree of approximation between the color information for both voxels is, for example, between the colors indicated by the two color information (the average value of the RGB values, that is, the average color). Based on the distance C in the RGB three-dimensional coordinate system, it can be calculated based on a predetermined calculation formula or the like so that the closer the distance C is, the higher the degree of approximation is.
- FIG. 13 shows color (C) as an approximation based on the distance C between the average color 313 indicated by the color information for the map voxel and the average color 213 indicated by the color information for the measurement voxel in the RGB three-dimensional coordinate system.
- An example of calculating the degree of approximation is shown.
- the position estimation unit 140 may calculate the degree of approximation between color information indicating each color (RGB value) of the distance C as color (C) as shown in Expression 902 shown in FIG.
- step S34 the degree of approximation related to the position information is added to the total likelihood value
- step S35 the degree of approximation related to the color information is added to the total likelihood value.
- step S34 and step S35 are between the map voxel and the measurement voxel.
- step S34 and step S35 are between the map voxel and the measurement voxel.
- the multiplication result of the approximate degree related to the position information and the approximate degree related to the color information May be added to the total likelihood value, for example, in order to make the weight of influence on the likelihood different between the position information and the color information, the approximation degree related to the position information multiplied by the coefficient and the color information You may add the degree of approximation concerning to the likelihood total value.
- step S36 it is determined whether or not the processing related to steps S32 to S35 has been completed (step S36), and if not completed, the process returns to step S32.
- the degree total value is stored as the likelihood of the particle under attention in the likelihood storage area (see FIG. 9) in the particle data (step S37).
- step S38 it is determined whether or not the processing for obtaining the likelihood has been completed by paying attention to all the particles (step S38), and if not completed, the process returns to step S31, and if completed, the maximum likelihood is obtained.
- Information indicating the current position of the moving body 102 (that is, the position estimation result) is output based on the conversion calculation according to the particles (step S39).
- the position estimation result can be obtained by giving zero as the position information about the measurement voxel for the conversion calculation.
- the maximum likelihood particle data component may be output as the current position.
- step S39 the position estimation unit 140 estimates the position of the particle component (three-dimensional coordinates and rotation angle) indicated by the particle data of the maximum likelihood particle. It will be output as a result.
- the position estimation unit 140 uses the weighted average result weighted by the particle likelihood for each particle component (three-dimensional coordinates and rotation angle) instead of the maximum likelihood particle component.
- the position estimation result may be output.
- a weighted average is obtained by dividing the likelihood of each particle by the total likelihood value of the whole particle and normalizing it.
- the output of the information indicating the position estimation result (position of the moving body 102) by the position estimating unit 140 in step S39 is, for example, a device provided in the moving body 102 (for example, a control mechanism that performs driving control of wheels for movement) ),
- the information is displayed on a display device mounted on the moving body 102, or the information is transmitted to a device located away from the moving body 102.
- the position estimation result is used by this output. Further, the likelihood (see FIG. 9) in the particle data of each particle is used for resampling in step S24.
- step S24 of FIG. 7 resampling is performed by determining the probability of selecting a particle again according to the likelihood of the particle using the result of particle observation (likelihood calculation) in step S23.
- the particles before resampling are (1, 0.5), (2, 0.3), (3, 0.2) when expressed by (particle number, likelihood), the likelihood of all particles
- the total value of degrees is 1.0 with 0.5 + 0.3 + 0.2.
- the particles with particle number 1 are selected with a probability of 0.5 / 1.0, ie 50%
- the particles with particle number 2 are selected with a probability of 0.3 / 1.0, ie 30%.
- the particle number 3 is sampled by selecting a particle using a random number so that the particle is selected with a probability of 0.2 / 1.0, that is, 20%.
- the number of particles selected for sampling may be constant, or may be changed for each resampling, for example, according to the variance of the likelihood of the whole particle, for example, if the variance is small, the number of particles is reduced.
- Each particle 4a to 4e in the particle state 404 shown in FIG. 11 represents the likelihood as a result of the observation in step S23 by the size of a circle.
- the particle 4a and the particle 4e having a relatively low likelihood (small) shown in the particle state 404 have a low probability of being selected again by the resampling in step S24, and the particles that are not selected as a result of the random number are particles.
- This is indicated by state 405.
- the particle 4c having a relatively high (large) likelihood shown in the particle state 404 has a high probability of being selected, and three examples are selected as a result of random numbers by resampling in step S24.
- Reference numeral 405 indicates.
- the particle 4b and the particle 4d having the medium likelihood shown in the particle state 404 have the medium probability of being selected, and the particle is selected as a result of the random number in the resampling in step S24.
- Particles resampled at time t are added with observation noise by prediction at step S22 at time t + 1, and become particles 5a to 5e as shown in the particle state 406, for example.
- the times indicated by time t ⁇ 1, time t, and time t + 1 in FIG. 11 may be advanced by 1 each time steps S22 to S24 in FIG. 7 are repeated, for example, and steps S22 to S24 may be constant. It may be incremented by 1 each time it is repeated.
- the measurement voxel data used for observation in step S23 is the result of the previous step S23 due to the relationship between the cycle in which the measurement point data group is repeatedly acquired by the measurement unit 110 and the cycle in which steps S22 to S24 are repeated.
- the content may be the same as or different from the measurement voxel data used in the observation.
- the measurement voxel data used for the observation in step S23 by combining the cycle in which the measurement point data group is repeatedly acquired by the measurement unit 110 and the cycle in which steps S22 to S24 are repeated is the observation in the previous step S23. It may be different from the measurement voxel data used.
- one of the measurement voxel data and the map voxel data may be information indicating one plane for the voxel.
- the degree of approximation between the position information in step S34 is calculated based on the average position (average position value) indicated by one of the position information, that is, the distance D between the point and the plane indicated by the other. Can do.
- the calculation of the degree of approximation between the position information when the map voxel closest to the measurement voxel is specified may be similarly performed based on the distance between the point and the plane.
- the measurement voxel data may be as illustrated in FIG. 5
- the map voxel data may be as illustrated in FIG.
- the first eigenvector and the second eigenvector are included as position information. Since the plane can be identified by the first eigenvector and the second eigenvector, for example, calculation using the distance D between the point and the plane is possible as the calculation of the degree of approximation between the position information of the measurement voxel data and the map voxel data. Become. Further, instead of the first eigenvector and the second eigenvector, a 3 ⁇ 3 (3 rows ⁇ 3 columns) variance-covariance matrix itself may be included as position information in the voxel data.
- the position information in the measurement voxel data for each measurement voxel corresponding to the local space extracted by the extraction unit 120 or the map voxel for each map voxel corresponding to the space managed by the map management unit 130 The position information in the data indicates a plane specified by the variance-covariance matrix determined based on the position of each point in the voxel.
- the position estimation unit 140 specifies the degree of approximation between the position information of the map voxel data and the measurement voxel data according to the distance between the average value of the position indicated by one of the position information and the plane indicated by the other. By doing so, the above-mentioned likelihood (that is, the likelihood of the particle and the conversion operation) can be calculated.
- the position estimation apparatus 100 can estimate the position with higher accuracy.
- the flatness may be estimated when calculating eigenvalues and eigenvectors from the variance-covariance matrix, assuming that the point cloud in the voxel is not an ideal plane.
- the first and second eigenvalues are relatively large and the third eigenvalue is relatively small, it may be estimated as an ideal plane, and the distance D between the point and the plane may be used.
- the difference from the three eigenvalues is small, there is a possibility of a sphere or a solid, so that the distance between the points may be switched.
- the degree of approximation between the position information of the map voxel data and the measurement voxel data may be weighted according to the flatness.
- the map voxel data may include the plane and flatness of each voxel calculated in advance from the variance-covariance matrix. That is, the map management unit 130 can further manage the flatness as map voxel data.
- the color information is information (histogram) in which the color is divided into bins that are a plurality of categories, and a modification example in which the degree of approximation between the color information is calculated based on the similarity of the histogram is shown.
- the voxel data (measurement voxel data and map voxel data) is as illustrated in FIG.
- the color information in the voxel data indicates the distribution (that is, the normalized frequency) divided into bins of 64 gradations for the R component, G component, and B component of the 8-bit RGB value.
- FIG. 16 shows an example of calculating the degree of approximation of color information.
- known histogram comparison methods such as Absolute (h, h ′), DEuclidean (h, h ′), or Dintersection (h, h ′) in FIG. 16 (that is, a method using the Euclidean distance, Using the section method or the like, the color information approximation degree can be calculated based on the color information histogram h in the measured voxel data and the color information histogram h ′ in the map voxel data.
- the color information histogram in the measured voxel data is a combination of the R component histogram 215, the G component histogram 216, and the B component histogram 217.
- the histogram of color information in the map voxel data is a combination of the R component histogram 315, the G component histogram 316, and the B component histogram 317.
- the extraction of the measurement voxel data by the extraction unit 120 is performed for each measurement voxel with attribute information (specifically, color information) about the measurement voxel, and for each measurement voxel in the voxel measured by the measurement unit 110.
- attribute information specifically, color information
- the attribute information (specifically color information) for each map voxel managed by the map management unit 130 is the electromagnetic wave from that point for a plurality of points in a part of the space corresponding to the corresponding map voxel.
- the histogram based on the attribute (color) obtained by receiving is received.
- the position estimation unit 140 specifies the degree of approximation between the attribute information (specifically, color information) according to the distance between the histogram indicated by one of the attribute information and the histogram indicated by the other. ,
- the above-described likelihood ie, the likelihood of particles and transformation operations
- FIG. 17 is a diagram showing sub-voxels used for extracting color information about voxels. As shown in FIG. 17, the voxel 220 is divided into 27 sub-voxels of 3 ⁇ 3 ⁇ 3. And the average value about each component of the color (RGB value) of each point (measurement point) in each sub-voxel is calculated, and normalized so that it becomes a value in the range from 0 to 1, for example.
- the average value of the color of the sub-voxel 221 at the center of the voxel 220 and the sub-voxel in that direction for each direction from the sub-voxel 221 to each other sub-voxel (for example, the sub-voxel 222).
- the 81-dimensional feature vector is used as color information in the voxel data of the voxel 220.
- the extraction of the measurement voxel data by the extraction unit 120 is performed by using, for each measurement voxel, attribute information (specifically, color information) about the measurement voxel, and the measurement voxel in the measurement voxel measured by the measurement unit 110. This is done by determining the correlation between the position and attribute (color) for each point.
- attribute information (specifically color information) about each map voxel managed by the map management unit 130 is the position and reception of electromagnetic waves at a plurality of points in a part of the space corresponding to the corresponding map voxel. The correlation with the attribute (color) obtained by the wave is shown.
- the calculation of the degree can be performed, for example, based on the Euclidean distance between the 81-dimensional feature vectors, by an operation (for example, see FIG. 12) that determines that the degree of approximation is higher as the distance is smaller.
- the scale is changed (that is, the sub-voxel in the above example is replaced with a voxel), and the color information of the voxel data related to the voxel is a local voxel group including the voxel (a plurality of adjacent voxels). May be represented by a feature vector indicating a concentration gradient (that is, local autocorrelation) that correlates with a local position.
- the average for each component of the color (RGB value) of each point (measurement point) in the voxel The value is calculated and normalized so as to be a value within a range from 0 to 1, for example. Then, the average value of the color of the voxel A for each component of R, G, and B and the multiplication of the color of the voxel in that direction for each direction from the voxel A to each other adjacent voxel are specified.
- the 81-dimensional feature vector having all the specified values as components is used as color information in the voxel data of voxel A.
- the extraction of the measurement voxel data by the extraction unit 120 is performed by using, for each measurement voxel, attribute information (specifically, color information) about the measurement voxel in the voxel measured by the measurement unit 110 and in the voxel. This is performed by determining the correlation between the position and the attribute (color) of each point in one or more voxels adjacent to. Further, the attribute information (specifically color information) for each map voxel managed by the map management unit 130 corresponds to a part of the space corresponding to the corresponding voxel and one or more voxels adjacent to the voxel. The correlation between the position and the attribute (color) obtained by receiving electromagnetic waves for a plurality of points in a part of space is shown.
- attribute information specifically, color information
- the color information in the voxel data (measurement voxel data and map voxel data) is represented by a feature vector indicating the local autocorrelation of colors in the local voxel group
- the degree of approximation between each other can be calculated, for example, based on the Euclidean distance between the 81-dimensional feature vectors by an operation (for example, see FIG. 12) that determines that the degree of approximation is higher as the distance is smaller.
- Using the color information indicating local autocorrelation in the voxel data may enable the position estimation device 100 to perform position estimation with higher accuracy.
- the position estimation unit 140 always calculates the degree of approximation between the position information in the measurement voxel data and the map voxel data in step S34 in the observation in step S23, and further in step S35, the measurement voxel data.
- the degree of approximation between attribute information (specifically color information) in the map voxel data is calculated.
- the likelihood of particles is obtained only by calculating the degree of approximation between position information, and only in fine position estimation, particles are based on the degree of approximation between color information in addition to the degree of approximation between position information.
- the likelihood of particles is obtained based only on the degree of approximation between the position information.
- the likelihood of particles may be obtained based not only on the degree of approximation but also on the degree of approximation between attribute information (specifically, color information).
- This constant condition may be, for example, a condition that determines how many times it is repeated, or a condition that the likelihood calculated by the previous observation exceeds a predetermined threshold.
- the color information in the measurement voxel data extracted by the extraction unit 120 is information that indicates a color and can distinguish at least a specific color component representing a specific color and other color components other than the specific color component.
- the color information in the map voxel data managed by the map management unit 130 is also information that can distinguish the specific color component from the other color components.
- the position estimation unit 140 is an approximation degree of the color information in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel, which is a basis for calculating the above-described likelihood (that is, the likelihood of the particle and the conversion calculation). Is calculated so that the degree of influence of the color information on the degree of approximation of the specific color component differs from the degree of influence of the other color component on the degree of approximation.
- the position estimation unit 140 may calculate the degree of approximation between color information only for other color components by setting the weight of the specific color component to zero, that is, excluding the specific color component.
- the color of the tree and the color of the leaves of the tree as a specific color, and making the influence on the calculation result of the degree of approximation between the color information smaller than other colors, the mode of the tree and leaves (appearance, etc.) It is possible to produce an effect of suppressing deterioration in position estimation accuracy by preventing appropriate matching between map voxels and measurement voxels due to changes over time due to the season or the like.
- the color of human skin may be a specific color. This can have an effect of suppressing the accuracy of position estimation from being lowered in a scene where there are many people who are not present in the map voxel.
- the position estimation unit 140 determines the degree of approximation between the color information in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel, and the position information about the measurement voxel among the voxels satisfies the predetermined position condition.
- the degree of influence on the degree of approximation of the specific color component and the degree of influence on the degree of approximation of other color components in the color information of the measurement voxel may be calculated to be different.
- the predetermined position condition is, for example, a condition related to a vertical component (for example, z coordinate) of the position.
- the predetermined position condition is satisfied when the position is higher than several meters, and the specific color component is a component corresponding to the color of blue sky and cloudy sky, the aspect of the high position portion in the space is caused by the flow of clouds, etc. It can suppress that the precision of position estimation falls by changing with time.
- the predetermined position condition may be a height of 2 m from the ground, and the human skin color or the like may be a specific color. This can have an effect of suppressing a decrease in the accuracy of position estimation in a scene where there are many people who are not present in the map voxel.
- the position estimation unit 140 determines the degree of approximation between the color information in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel, and when the flatness of the map voxel among the voxels satisfies the specific condition Alternatively, the degree of influence on the degree of approximation of the specific color component and the degree of influence on the degree of approximation of other color components in the color information for the map voxel may be calculated so as to be different.
- the state of trees and leaves changes over time depending on the year, season, etc., but the flatness when voxelized is not a plane that serves as a reference for position estimation, but is in a state close to a sphere or a solid. Therefore, in addition to the specific color component, the tree or the leaf of the tree may be distinguished according to the flatness in the voxel. As the specific condition, it can be determined that the flatness corresponds to a spherical shape, a solid shape, or the like.
- a position estimation apparatus 100a that executes a position estimation method that uses a reflection intensity (electromagnetic wave reflection intensity) in addition to a position in order to estimate the position of a moving body in space will be mainly described.
- the position estimation apparatus 100 shown in the first embodiment detects a color that is a kind of attribute of a measurement point detected by receiving electromagnetic waves, and performs position estimation using the position and the color.
- the position estimation apparatus 100a detects the reflection intensity which is another kind of the attribute, and performs position estimation using the position and the reflection intensity. Note that the same names are used in the present embodiment for those similar to the first embodiment.
- the position estimation apparatus 100a is, for example, a moving body 102 to which a measurement apparatus 101 is attached, similar to the position estimation apparatus 100 illustrated in FIG.
- the position estimation device 100a is the same as the position estimation device 100 of the first embodiment for points that are not particularly described here.
- the measuring apparatus 101 is, for example, the position of a plurality of points (measurement points) in the surrounding local space, such as a 3D scanner using a laser, and the reflection intensity of an electromagnetic wave transmitted for position estimation (laser reflection intensity). It is a device that measures.
- the measuring apparatus 101 does not necessarily have a function of measuring colors.
- the reflection intensity at the measurement point is measured, for example, as the received light intensity of the reflected light (a kind of electromagnetic wave) when the measurement point is irradiated with laser light having a wavelength in the range of 1000 nm to 1550 nm. It is utilized that the received light intensity varies depending on the material of the object such as the ground or a building.
- FIG. 18 is a functional block diagram of the position estimation apparatus 100a.
- the position estimation apparatus 100a includes a measurement unit 110a, an extraction unit 120a, a map management unit 130a, and a position estimation unit 140a.
- each functional unit will be described.
- the measurement unit 110a has a function of measuring the position and the reflection intensity at each of a plurality of points (that is, measurement points) in the local space around the moving body 102, and obtains measurement point data as a measurement result by measurement. To do.
- the measurement unit 110a is realized by, for example, a communication I / F in the computer of the measurement apparatus 101 and the position estimation apparatus 100a, a processor that executes a control program, and the like.
- the measurement unit 110a is different from the above-described measurement unit 110 that measures color in that the reflection intensity is measured, but the measurement unit 110a is the same as the measurement unit 110 except for the difference in the measurement target except that it is not described here. is there. As shown in FIG.
- the measurement point data acquired by the measurement unit 110a is obtained by expressing the position with three-dimensional coordinates x, y, z and normalizing the reflection intensity with a value in the range of 0 to 1. It is.
- FIG. 19 shows measurement point data for one measurement point for each row.
- the extraction unit 120a obtains position information and attribute information (specifically) for each voxel in the voxel group arranged in a three-dimensional manner in association with the local space around the moving body 102 from the measurement result (measurement point data) by the measurement unit 110a. Specifically, it has a function of extracting (reflection intensity information representing reflection intensity).
- the extraction unit 120a is realized by a processor or the like that executes a control program in the computer of the position estimation apparatus 100a.
- the extraction unit 120a is different from the above-described extraction unit 120 that extracts position information and color information in that it extracts position information and reflection intensity information as measurement voxel data for the measurement voxel.
- the points not particularly described here are the same as those of the extraction unit 120.
- the extraction of the reflection intensity information in the measurement voxel data (position information and reflection intensity information) by the extraction unit 120a is performed, for example, for each measurement voxel, the reflection intensity information on the measurement voxel is measured by the measurement unit 110a. This is done by defining an average value of the reflection intensity for each point. As an example, the extraction unit 120a averages the reflection intensity (value in the range of 0 to 1) in the measurement point data for each measurement point included in the measurement voxel, and the reflection intensity in the measurement voxel data for the measurement voxel. Information is calculated. FIG.
- the measurement voxel data includes an index (index) indicating the arrangement of the corresponding measurement voxel in the three-dimensional array of measurement voxel groups associated with the local space, and each measurement point data in the measurement voxel.
- index index
- the map management unit 130a maps map voxel data for each map voxel in a map voxel group arranged in a three-dimensional manner in association with a space represented by a map (that is, a map defining a three-dimensional coordinate system representing a space), That is, it has a function of managing position information and attribute information (specifically, reflection intensity information indicating reflection intensity).
- the map management unit 130a is realized by, for example, a storage medium such as a memory in a computer of the position estimation device 100a, a communication I / F, a processor that executes a control program, and the like.
- the map management unit 130a is different from the above-described map management unit 130 that manages the position information and the color information in terms of managing the position information and the reflection intensity information as map voxel data.
- the points not particularly described here are the same as those of the map management unit 130.
- the map management unit 130a manages map information including map voxel data (position information and reflection intensity information) for each map voxel in a map voxel group formed by dividing a space.
- the map information includes, for example, map voxel data (position information and reflection intensity information) for each map voxel based on the measurement result of the position and attribute (specifically, reflection intensity) of each measurement point in space. It is generated by extracting.
- the data structure of the map voxel data is the same as that of the measurement voxel data shown in FIG. That is, the map voxel data includes an index (index) indicating the arrangement of the map voxel and position information indicating an average value of the measurement result of the position of each point (that is, each location) in a part of the space corresponding to the map voxel.
- index index
- position information indicating an average value of the measurement result of the position of each point (that is, each location) in a part of the space corresponding to the map voxel.
- the position estimation unit 140a is configured to measure the voxel data (position information, and the position information, and the position information and the reflection intensity information as attribute information) of the map information managed by the map management unit 130a. , The position of the moving body 102 is estimated according to the reflection intensity information as attribute information).
- the position estimation unit 140a is realized by, for example, a memory in a computer of the position estimation apparatus 100a, a processor that executes a control program, and the like.
- the position estimation unit 140a performs position estimation using the position information and color information related to the map voxel and the measurement voxel at the point of performing position estimation using the position information and reflection intensity information related to the map voxel and the measurement voxel.
- the points other than the difference are not particularly described here, and are the same as those of the position estimation unit 140.
- the position estimation unit 140a converts the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- the conversion operation to be performed is specified sequentially and presumptively. By specifying this conversion operation, the position of the moving body 102 is estimated.
- a method for estimating the position of the moving body 102 that is, a method for preferentially specifying the conversion operation, for example, a method of repeating prediction, observation, and resampling procedures using a particle filter (see FIG. 7). Can be used.
- the position estimation unit 140a includes position information about each map voxel managed by the map management unit 130a, position information about each measurement voxel extracted by the extraction unit 120a, converted using each of a plurality of conversion operations as candidates, and The degree of approximation is calculated. Then, for each conversion operation, the position estimation unit 140a approximates the position information and attribute information (that is, reflection intensity information) for both voxels in each set of map voxel and measurement voxel where the calculated approximation is the highest. ) The likelihood is calculated based on the degree of approximation between each other. The position estimation unit 140a estimates the position of the moving body 102 in accordance with the conversion operation having the highest calculated likelihood among the plurality of conversion operations as candidates.
- the degree of approximation between the position information indicating the positions or the degree of approximation between the reflection intensity information indicating the reflection intensities indicates the height of the degree to which the positions or the reflection intensities are approximated.
- the position estimation unit 140a repeatedly performs the calculation of likelihood and the position of the moving object based on the calculation of the degree of approximation related to each measurement voxel converted using each of a plurality of conversion operations, thereby calculating the likelihood. A plurality of conversion operations to be used for the next conversion are determined based on the result.
- the measurement unit 110a acquires the measurement point data by measuring the positions and reflection intensities of a plurality of points in the local space around the moving body 102.
- the extraction unit 120a performs the processing in steps S11 to S17 shown in FIG. 6 in the same manner as the extraction unit 120 described above. However, in step S16, the extraction unit 120a updates the reflection intensity information for the measurement voxel specified in step S14 using the reflection intensity in the measurement point data acquired in step S13, instead of updating the color information. Thereby, the measurement voxel data (position information and reflection intensity information) as shown in FIG. 20 temporarily stored in a storage medium such as a memory is updated.
- the position estimation unit 140a converts the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- the conversion operation for performing the position is estimated based on the estimated conversion operation.
- a particle filter is used. That is, particles are used as means for estimating a conversion operation with high likelihood. A conversion operation is specified for each particle.
- the position estimation unit 140a performs the processing in steps S21 to S25 and steps S31 to S39 shown in FIGS. 7 and 8 in the same manner as the position estimation unit 140 described above. However, in step S35, the position estimation unit 140a uses the reflection intensity information and the measurement voxel data in the map voxel data related to the set of the map voxel identified in step S33 and the measurement voxel of interest instead of the degree of approximation between the color information. The degree of approximation with the reflection intensity information is calculated, and the degree of approximation is added to the likelihood total value.
- the degree of approximation between the reflection intensity information for both the voxels is, for example, the reflection intensity indicated by the both reflection intensity information (the value of the reflection intensity in the range of 0 to 1). Based on the difference R between the average values (that is, average reflection intensity), the degree of approximation can be increased as the difference R is smaller.
- FIG. 21 shows the degree of approximation for calculating Reflect (R) as the degree of approximation based on the difference R between the average reflection intensity 331 indicated by the reflection intensity information for the map voxel and the average reflection intensity 231 indicated by the reflection intensity information for the measurement voxel.
- the position estimation unit 140a may calculate the degree of approximation between the reflection intensity information indicating each reflection intensity of the difference R as Reflect (R) as in the equation shown in FIG.
- the approximation degree related to the position information is added to the likelihood total value in step S34, and the approximation degree related to the reflection intensity information is added to the likelihood total value in step S35.
- step S34 and step S35 are the map voxel and the measurement voxel. This is merely an example for finally calculating the likelihood for each particle based on the correlation between the position information and the reflection intensity information.
- the degree of approximation related to position information and the degree of approximation related to reflection intensity information may be added to the likelihood total value, for example, in order to make the weight of influence on the likelihood different between the position information and the reflection intensity information, the degree of approximation related to the position information multiplied by the coefficient, The approximation degree related to the reflection intensity information may be added to the likelihood total value.
- step S39 the position estimation unit 140a outputs the particle component (three-dimensional coordinates and rotation angle) indicated by the particle data of the maximum likelihood particle as a position estimation result.
- step S39 the position estimation unit 140a uses the weighted average result weighted by the particle likelihood for each particle component (three-dimensional coordinates and rotation angle) instead of the maximum likelihood particle component.
- the position estimation result may be output.
- a weighted average is obtained by dividing the likelihood of each particle by the total likelihood value of the whole particle and normalizing.
- the position estimation unit 140a uses the measurement voxel data related to the measurement voxel and the map voxel and the reflection intensity information in the map voxel data as a basis for calculating the above-described likelihood (that is, the likelihood of the particle and the conversion calculation).
- the degree of approximation between the degree of influence on the degree of approximation when the reflection intensity information indicates a reflection intensity higher than the predetermined intensity, and the degree of approximation when the reflection intensity information indicates a reflection intensity not higher than the predetermined intensity Calculate so that the degree of impact differs.
- a reflection intensity slightly lower than the reflection intensity of a road display (white line on the road surface, etc.) by a reflection sheet such as white or yellow is defined as a predetermined intensity, and a reflection intensity higher than the predetermined intensity is not higher than the predetermined intensity.
- the degree of approximation is calculated by an operation that weights the degree of approximation so as to greatly affect the degree of approximation.
- the position estimation unit 140a may calculate the degree of approximation as zero or substantially zero except for pieces of reflection intensity information indicating reflection intensity higher than a predetermined intensity. Thereby, there is a possibility that position estimation based on road display can be performed with high accuracy.
- the position estimation unit 140a calculates the degree of approximation between the reflection voxel data in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel, and the position information about the measurement voxel out of the two voxels is a predetermined position condition. If the reflection intensity information for the measurement voxel shows a reflection intensity higher than a predetermined intensity, the degree of influence on the degree of approximation is shown, and the reflection intensity information indicates a reflection intensity not higher than the predetermined intensity. It may be calculated so as to be higher than the degree of influence on the degree of approximation.
- the predetermined position condition is, for example, a condition related to a vertical component (for example, z coordinate) of the position.
- the predetermined position condition may be a condition that the position is satisfied when the position is close to the road surface, and the position estimation based on the road display may be performed more appropriately.
- a position estimation apparatus 100b that executes a position estimation method using temperature in addition to the position in order to estimate the position of a moving body in space will be mainly described.
- the position estimation apparatus 100 shown in the first embodiment detects a color that is a kind of attribute of a measurement point detected by receiving electromagnetic waves, and performs position estimation using the position and the color.
- the position estimation device 100b detects temperature, which is another kind of the attribute, and performs position estimation using the position and the temperature. Note that the same names are used in the present embodiment for those similar to the first embodiment.
- the position estimation apparatus 100b is a moving body 102 to which, for example, a measurement apparatus 101 is attached, like the position estimation apparatus 100 shown in FIG.
- the position estimation device 100b is the same as the position estimation device 100 of the first embodiment for points that are not particularly described here.
- the measuring device 101 is a device that measures the position and temperature of a plurality of points (measurement points) in the surrounding local space, such as a combination of a 3D scanner and a thermography device.
- the measuring apparatus 101 is a combination of a 3D scanner and a thermography apparatus, the positions of both apparatuses are aligned in advance.
- the measuring apparatus 101 does not necessarily have a function of measuring colors.
- the temperature at the measurement point is measured, for example, by detecting infrared rays (a type of electromagnetic wave) having a wavelength of 2 ⁇ m to 14 ⁇ m. It is used that this temperature varies depending on the material of an object such as the ground or a building.
- infrared rays a type of electromagnetic wave
- FIG. 22 is a functional block diagram of the position estimation apparatus 100b.
- the position estimation apparatus 100b includes a measurement unit 110b, an extraction unit 120b, a map management unit 130b, and a position estimation unit 140b.
- each functional unit will be described.
- the measurement unit 110b has a function of measuring the position and temperature of each of a plurality of points (that is, measurement points) in the local space around the moving body 102, and acquires measurement point data that is a measurement result by measurement. .
- the measuring unit 110b is realized by, for example, a communication I / F in the computer of the measuring apparatus 101 and the position estimating apparatus 100b, a processor that executes a control program, and the like.
- the measurement unit 110b is different from the above-described measurement unit 110 that measures color in that the temperature is measured. However, the measurement unit 110b is the same as the measurement unit 110 except for the differences in the measurement target. . As illustrated in FIG.
- the measurement point data acquired by the measurement unit 110b represents a position by three-dimensional coordinates x, y, z, and a temperature by a numerical value (for example, an absolute temperature value).
- FIG. 23 shows measurement point data for one measurement point for each row.
- the extraction unit 120b determines, based on the measurement result (measurement point data) by the measurement unit 110b, position information and attribute information (specifically) about each voxel in the voxel group arranged in a three-dimensional manner in association with the local space around the moving body 102. In particular, it has a function of extracting temperature information representing temperature).
- the extraction unit 120b is realized by a processor or the like that executes a control program in the computer of the position estimation apparatus 100b.
- the extraction unit 120b is different from the above-described extraction unit 120 that extracts position information and color information in that it extracts position information and temperature information as measurement voxel data for the measurement voxel.
- the points not particularly described here are the same as those of the extraction unit 120.
- Extraction of the temperature information in the measurement voxel data (position information and temperature information) by the extraction unit 120b is, for example, for each measurement voxel, the temperature information about the measurement voxel, and the measurement voxel in the measurement voxel measured by the measurement unit 110b. This is done by defining an average temperature value for a point.
- the extraction unit 120b calculates the temperature information in the measurement voxel data for the measurement voxel by averaging the temperatures in the measurement point data for each measurement point included in the measurement voxel.
- FIG. 24 is a diagram showing an example of measurement voxel data, and shows measurement voxel data for one measurement voxel for each row.
- the measurement voxel data includes an index (index) indicating the arrangement of the corresponding measurement voxel in the three-dimensional array of measurement voxel groups associated with the local space, and each measurement point data in the measurement voxel.
- Position information indicating the average value of the position and temperature information indicating the average temperature that is the average value of the temperatures of the measurement point data in the measurement voxel are included.
- the map management unit 130b maps map voxel data for each map voxel in a map voxel group arranged in a three-dimensional manner in association with a space represented by a map (that is, a map defining a three-dimensional coordinate system representing a space), That is, it has a function of managing position information and attribute information (specifically, temperature information indicating temperature).
- the map management unit 130b is realized by, for example, a storage medium such as a memory in the computer of the position estimation device 100b, a communication I / F, a processor that executes a control program, and the like.
- the map management unit 130b manages position information and temperature information as map voxel data, and the management information is different from the above-described map management unit 130 that manages position information and color information.
- the points that are not particularly described are the same as those of the map management unit 130.
- the map management unit 130b manages map information including map voxel data (position information and temperature information) for each map voxel in a map voxel group formed by dividing a space.
- the map information is obtained by measuring the position and attribute (specifically, temperature) of each measurement point in space and extracting the map voxel data (position information and temperature information) for each map voxel based on the measurement result. To be generated.
- the data structure of the map voxel data is the same as the measurement voxel data shown in FIG.
- the map voxel data includes an index (index) indicating the arrangement of the map voxel and position information indicating an average value of the measurement result of the position of each point (that is, each location) in a part of the space corresponding to the map voxel.
- index index
- position information indicating an average value of the measurement result of the position of each point (that is, each location) in a part of the space corresponding to the map voxel.
- Temperature information indicating the average value of the temperature measurement results for each point (that is, each location) in a part of the space corresponding to the map voxel as an attribute detected by receiving electromagnetic waves from that point; Shall be included.
- the position estimation unit 140b is based on the map voxel data (position information and temperature information as attribute information) of the map information managed by the map management unit 130b, and the measurement voxel data (position information and It has a function of estimating the position of the moving body 102 according to temperature information as attribute information.
- the position estimation unit 140b is realized by, for example, a memory in a computer of the position estimation apparatus 100b, a processor that executes a control program, and the like.
- the position estimation unit 140b performs the position estimation using the position information and the color information related to the map voxel and the measurement voxel at the point where the position estimation is performed using the position information and the temperature information related to the map voxel and the measurement voxel.
- the position estimation unit 140b converts the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- the conversion operation to be performed is specified sequentially and presumptively. By specifying this conversion operation, the position of the moving body 102 is estimated.
- a method for estimating the position of the moving body 102 that is, a method for preferentially specifying the conversion operation, for example, a method of repeating prediction, observation, and resampling procedures using a particle filter (see FIG. 7). Can be used.
- the position estimation unit 140b includes position information about each map voxel managed by the map management unit 130b, position information about each measurement voxel extracted by the extraction unit 120b, converted using each of a plurality of conversion operations as candidates, and The degree of approximation is calculated. Then, for each conversion calculation, the position estimation unit 140b approximates the position information and attribute information (that is, temperature information) for both voxels in each set of the map voxel and the measurement voxel where the calculated degree of approximation is the highest. The likelihood is calculated based on the degree of approximation between each other. The position estimation unit 140b estimates the position of the moving body 102 in accordance with the conversion operation having the highest calculated likelihood among the plurality of conversion operations as candidates.
- the degree of approximation between the position information indicating the position or the degree of approximation between the temperature information indicating the temperature indicates the height of the degree that the position or the temperature approximates.
- the position estimation unit 140b repeatedly performs calculation of likelihood and estimation of the position of the moving object based on calculation of the degree of approximation related to each measurement voxel converted using each of a plurality of conversion operations, thereby calculating the likelihood. A plurality of conversion operations to be used for the next conversion are determined based on the result.
- the measurement unit 110b measures the positions and temperatures of a plurality of points in the local space around the moving body 102, and acquires measurement point data.
- the extraction unit 120b performs the processing in steps S11 to S17 shown in FIG. 6 in the same manner as the extraction unit 120 described above. However, in step S16, the extraction unit 120b updates the temperature information about the measurement voxel specified in step S14 using the temperature in the measurement point data acquired in step S13, instead of updating the color information. Thereby, the measurement voxel data (position information and temperature information) as shown in FIG. 24 temporarily stored in a storage medium such as a memory is updated.
- the position estimation unit 140b converts the position information of the measurement voxel data into the three-dimensional coordinate system related to the map so that the position information in the measurement voxel data for the measurement voxel approximates the position information in the map voxel data for the map voxel.
- the position is estimated based on the estimated conversion operation.
- a particle filter is used. That is, particles are used as means for estimating a conversion operation with high likelihood. A conversion operation is specified for each particle.
- the position estimation unit 140b performs the processing in steps S21 to S25 and steps S31 to S39 shown in FIGS. 7 and 8 in the same manner as the position estimation unit 140 described above.
- the position estimation unit 140b uses the temperature information and the measurement voxel data in the map voxel data related to the set of the map voxel identified in step S33 and the measurement voxel of interest instead of the degree of approximation between the color information.
- the degree of approximation with temperature information is calculated, and the degree of approximation is added to the total likelihood value.
- the degree of approximation between the temperature information for both the voxels is based on the difference T between the temperatures indicated by the two temperature information (that is, the average temperature), for example. It can be calculated based on a predetermined calculation formula or the like so that the smaller the is, the higher the degree of approximation is.
- FIG. 25 shows an example of the approximation calculation for calculating Temp (T) as an approximation based on the difference T between the average temperature 341 indicated by the temperature information for the map voxel and the average temperature 241 indicated by the temperature information for the measurement voxel.
- the position estimation unit 140b may calculate, for example, the degree of approximation between the temperature information indicating each temperature of the difference T as Temp (T) as in the equation shown in FIG.
- the approximation degree related to the position information is added to the likelihood total value in step S34, and the approximation degree related to the temperature information is added to the likelihood total value in step S35.
- step S34 and step S35 are the map voxel, the measurement voxel, This is merely an example for finally calculating the likelihood of each particle based on the correlation between the position information and the temperature information.
- the product of the approximate degree related to the position information and the approximate degree related to the temperature information is calculated. It may be added to the total likelihood value.
- the approximation degree related to the position information multiplied by the coefficient and the temperature information Such approximation may be added to the total likelihood value.
- step S39 the position estimation unit 140b outputs the particle component (three-dimensional coordinates and rotation angle) indicated by the particle data of the maximum likelihood particle as a position estimation result.
- step S39 the position estimation unit 140b uses the weighted average result weighted by the particle likelihood for each particle component (three-dimensional coordinates and rotation angle) instead of the maximum likelihood particle component.
- the position estimation result may be output.
- a weighted average is obtained by dividing the likelihood of each particle by the total likelihood value of the whole particle and normalizing.
- the position estimation unit 140b uses the temperature information in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel as the basis for calculating the above-described likelihood (that is, the likelihood of the particle and the conversion calculation).
- the degree of influence on the degree of approximation when the temperature information indicates the temperature range corresponding to the human body temperature for example, absolute temperature 308 to 313K
- the degree of influence on the degree of approximation is calculated to be different.
- the degree of approximation is calculated by a weighting operation within the temperature range corresponding to the human body temperature so as not to significantly affect the degree of approximation outside the temperature range.
- the position estimation unit 140b may calculate the degree of approximation as zero or substantially zero except for temperature information indicating outside the temperature range corresponding to the human body temperature. In this way, by distinguishing the temperature range corresponding to the human body temperature and excluding humans who move according to time from the measurement results, proper matching between map voxels and measurement voxels is hindered, and the accuracy of position estimation decreases. The effect which suppresses can be produced.
- the position estimation unit 140b calculates the degree of approximation between the temperature information in the measurement voxel data and the map voxel data related to the measurement voxel and the map voxel, and the position information about the measurement voxel among the voxels satisfies the predetermined position condition. If satisfied, the degree of influence on the degree of approximation when the temperature information about the measurement voxel indicates a temperature range corresponding to the human body temperature is changed to the degree of approximation when the temperature information indicates outside the temperature range. It is good also as calculating so that it may reduce rather than the degree of influence.
- the predetermined position condition is, for example, a condition related to a vertical component (for example, z coordinate) of the position.
- the predetermined position condition may be satisfied so that a person can be generally located and the position is 2 meters or less in height. Thereby, for example, the measurement result of the temperature in the temperature range corresponding to the human body temperature at a place higher than 2 meters can be effectively used in the position estimation.
- Embodiments 1 to 3 have been described as examples of the technology disclosed in the present application. However, the technology in the present disclosure is not limited to this, and can also be applied to embodiments in which changes, replacements, additions, omissions, and the like are appropriately performed.
- each of the modifications 1 to 4 according to the position estimation device 100 of the first embodiment described above can also be applied to the position estimation devices 100a and 100b according to the second embodiment or the third embodiment.
- color information as attribute information may be replaced with reflection intensity information or temperature information
- color as an attribute may be replaced with reflection intensity or temperature.
- the position estimation devices 100, 100a, and 100b are the moving bodies 102 to which the measurement devices 101 are attached.
- the position estimation devices 100, 100a, and 100b are A part of the moving body 102 (or an apparatus mounted in the moving body 102) and the measuring apparatus 101 may be configured, or the measuring apparatus 101 attached to the moving body 102 and the moving body 102 may be separated from each other.
- You may comprise with the computer which can receive a measurement result from the measuring apparatus 101.
- the color shown in the above-described embodiment does not necessarily need to be a color that is detected in the entire wavelength range of visible light, and is detected by light limited to a part using, for example, a filter. Also good. Further, the color is not necessarily a color.
- the map voxels shown in the above-described embodiment may be created a plurality of times at different times, and the time change ratios of various information about the map voxels may be included in the map voxel data.
- attribute information such as temperature and electromagnetic wave reflection intensity, etc.
- the position information of an object that changes over time such as a tree or a leaf, changes over time.
- a phenomenon in which the temperature change with respect to the temperature change is large in the order of asphalt, concrete, and lawn can be used.
- the position information does not change much, but the reflection intensity of the laser or the like changes according to the area of the plant.
- map information shown in the above-described embodiment may be configured only by map voxel data, or may be configured including measured measurement point data and the like.
- each functional component (functional block) in the position estimation devices 100, 100a, and 100b may be individually made into one chip by a semiconductor device such as an IC (Integrated) Circuit) or an LSI (Large Scale Integration). It may be made into one chip so as to include some or all.
- the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- integrated circuit technology that replaces LSI appears as a result of progress in semiconductor technology or other derived technology functional blocks may be integrated using this technology. Biotechnology can be applied as a possibility.
- all or part of the various processes described above may be realized by hardware such as an electronic circuit or may be realized by using software.
- the processing by software is realized by a processor included in the position estimation apparatus executing a control program stored in a memory.
- the control program may be recorded on a recording medium and distributed or distributed.
- the position estimation device may not include a measurement device, for example, and may be a computer that acquires a measurement result by the measurement device and performs position estimation.
- the present disclosure can be applied to an apparatus that estimates position information of a moving object.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Computer Graphics (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Navigation (AREA)
Abstract
空間における移動体の位置を推定する位置推定装置(100)は、移動体の周囲の局所空間における複数の点各々についての、位置と、色とを、測定する測定部(110)と、測定部(110)による測定結果から、局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び色情報を抽出する抽出部(120)と、地図で表される空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び色情報を管理する地図管理部(130)と、地図管理部(130)が管理する位置情報及び色情報に基づき、抽出部(120)が抽出した位置情報及び色情報に応じて、移動体の位置を推定する位置推定部(140)とを備える。
Description
本開示は、空間における移動体の位置を推定する位置推定装置に関する。
特許文献1は、平行移動及び回転した地図データをカメラ映像に重畳表示し、その類似度から位置推定を行う技術を開示する。また、非特許文献1は、3次元座標に関して地図データとカメラで測定した測定データとをボクセル(3次元空間を分割してなる直方体の小領域)群で表してボクセルの照合によりカメラ位置を推定する技術を開示する。
鄭龍振、外3名、「大規模な三次元環境地図とRGB-Dカメラを用いた移動ロボットの広域位置同定」、日本ロボット学会誌、2013年、Vol.31、No.9、pp.895-906
空間(3次元空間)における位置を3次元座標で表す地図データとカメラ映像等の測定データとからカメラ等の移動体の位置推定を行う場合に、非特許文献1の技術のように、ボクセルの位置(3次元座標)を用いることはボクセルの照合に係る計算の負荷の低減(つまり位置推定の迅速化)に有用である。しかし、同じような形状の構造物が連続的に配置されているような環境においては、位置推定を適切に行えない場合もある。
本開示は、空間における移動体の位置を推定する位置推定装置であって、同じような形状の構造物が連続的に配置されているような環境においても位置推定を適切に行い得る可能性を高めた位置推定装置を提供する。また本開示は、その位置推定装置で用いられる位置推定方法、及び、位置推定用の制御プログラムを提供する。
本開示における位置推定装置は、空間における移動体の位置を推定する位置推定装置であって、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定部と、前記測定部による測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出部と、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理部と、前記地図管理部が管理する前記位置情報及び前記属性情報に基づき、前記抽出部が抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定部とを備える。
また、本開示における位置推定方法は、空間における移動体の位置を推定する位置推定装置において用いられる位置推定方法であって、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定ステップと、前記測定ステップでの測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む。
また、本開示における制御プログラムは、空間における移動体の位置を推定する、マイクロプロセッサを備える位置推定装置に位置推定処理を実行させるための制御プログラムであって、前記位置推定処理は、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性との、測定結果を取得する取得ステップと、前記取得ステップで取得された測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む。
本開示における位置推定装置等によれば、同じような形状の構造物が連続的に配置されているような環境においても、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
同じような形状の構造物が連続的に配置されているような環境においても、移動体の位置を迅速かつ適切に推定し得る可能性を高めるようにすべく、本開示における位置推定装置は、空間における移動体の位置を推定する位置推定装置であって、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定部と、前記測定部による測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出部と、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理部と、前記地図管理部が管理する前記位置情報及び前記属性情報に基づき、前記抽出部が抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定部とを備える。
これにより、ボクセルについての位置のみならず属性情報(色、温度、反射強度等といった電磁波により検知される属性に基づく情報)を用いて、位置推定を行う。同じような形状の構造物が連続的に配置されているような環境においても、その構造物間で属性は異なり得るので、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
ここで、例えば、前記位置推定部は、前記地図管理部が管理する前記空間に対応する前記各ボクセルについての位置情報と、前記局所空間の3次元座標系を前記空間の3次元座標系に変換するための複数の変換演算各々を用いて変換した、前記抽出部が抽出した前記局所空間に対応する前記各ボクセルについての位置情報との近似度を算定し、前記変換演算毎に、算定した前記近似度が最も高いところの前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における両ボクセルについての位置情報同士の近似度及び属性情報同士の近似度に基づいて尤度を算定し、前記複数の変換演算のうち算定した前記尤度が最も高い変換演算又は算定した前記尤度に応じて加重平均した変換演算に応じて前記移動体の位置の前記推定を行うこととしてもよい。
これにより、位置情報同士の近似度のみならず属性情報同士の近似度に基づいて、測定した局所空間が空間のどの位置に相当する可能性が高いかに関連する尤度を算定するので、適切に移動体の位置を推定し得る。
また、例えば、前記位置推定部は、前記複数の変換演算各々を用いて変換した前記局所空間に対応する前記各ボクセルに係る前記近似度の前記算定に基づく、前記尤度の前記算定及び前記移動体の位置の前記推定を、繰り返し行い、前記尤度の算定結果に基づいて次に前記変換に用いる前記複数の変換演算を定めることとしてもよい。
これにより、推定を繰り返すので、位置推定の精度を高められる可能性がある。
また、例えば、前記位置推定部は、前記地図管理部が管理する前記空間に対応する前記各ボクセルについての位置情報と、前記局所空間の3次元座標系を前記空間の3次元座標系に変換するための複数の変換演算各々を用いて変換した、前記抽出部が抽出した前記局所空間に対応する前記各ボクセルについての位置情報との近似度を算定し、前記変換演算毎に、算定した前記近似度が最も高いところの前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における両ボクセルについての位置情報同士の近似度に基づいて尤度を算定し、前記複数の変換演算のうち算定した尤度が最も高い変換演算又は算定した尤度に応じて加重平均した変換演算に応じて前記移動体の位置の前記推定を行い、前記複数の変換演算各々を用いて変換した前記局所空間に対応する前記各ボクセルに係る前記近似度の前記算定に基づく、前記尤度の前記算定及び前記移動体の位置の前記推定を、繰り返し行い、前記尤度の算定結果に基づいて次に前記変換に用いる前記複数の変換演算を定め、当該繰り返しの初回以外において一定条件下で、前記尤度の前記算定を、前記両ボクセルについての前記位置情報同士の前記近似度に加えて当該両ボクセルについての前記属性情報同士の近似度にも基づいて、行うこととしてもよい。
これにより、位置推定を効率的に行うことができる。
また、例えば、前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルの位置情報を、前記測定部により測定された当該ボクセル内の各点についての位置の平均値を示すように定めることにより、行われ、前記地図管理部により管理される前記各ボクセルについての前記位置情報は、該当のボクセルに対応する前記空間の一部における複数の点についての位置の平均値を示すこととしてもよい。
これにより、測定された位置をボクセル毎に圧縮した位置情報を用いて、ボクセル間での位置情報の比較(近似度算定等)により位置推定がなされるので、測定された位置を全て比較に用いる場合に比べて計算負荷が低減し、迅速な位置推定が可能となる。
また、例えば、前記抽出部が抽出する、前記局所空間に対応する前記各ボクセルについての前記位置情報、又は、前記地図管理部が管理する、前記空間に対応する前記各ボクセルについての前記位置情報は、更に、当該ボクセル内の各点の位置に基づいて定めた分散共分散行列で特定される平面を示し、前記位置推定部は、前記位置情報同士の近似度を、当該位置情報同士の一方が示す位置の平均値と他方が示す平面との距離に応じて特定することにより、前記尤度の前記算定を行うこととしてもよい。
これにより、平面を示す位置情報を用いることで位置推定を、より高精度に行えるようになる可能性がある。
また、例えば、前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての属性に基づくヒストグラムを示すように定めることにより、行われ、前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、当該点からの電磁波の受波で検知される属性に基づくヒストグラムを示し、前記位置推定部は、前記属性情報同士の近似度を、当該属性情報同士の一方が示す前記ヒストグラムと他方が示す前記ヒストグラムとの距離に応じて特定することにより、前記尤度の前記算定を行うこととしてもよい。
これにより、例えば属性情報が単に1次元の値を示す場合と比べて、位置推定を、より高精度に行えるようになる可能性がある。
また、例えば、前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての属性の平均値を示すように定めることにより、行われ、前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、当該点からの電磁波の受波で検知される属性の平均値を示すこととしてもよい。
これにより、測定された属性をボクセル毎に圧縮した属性情報を用いて、ボクセル間での属性情報の比較(近似度算定等)により位置推定がなされるので、測定された位置を全て比較に用いる場合に比べて計算負荷が低減し、迅速な位置推定が可能となる。
また、例えば、前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての位置と属性との相関を示すように定めることにより、行われ、前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、位置と電磁波の受波で検知される属性との相関を示すこととしてもよい。
これにより、ボクセル内の測定点に基づいた局所自己相関を示す属性情報を用いるので、例えば測定点の属性の平均値のみを示す属性情報を用いる場合と比べて、位置推定を、より高精度に行えるようになる可能性がある。
また、例えば、前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内及び当該ボクセルに近接する1以上のボクセル内の、各点についての位置と属性との相関を示すように定めることにより、行われ、前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部及び当該ボクセルに近接する1以上のボクセルに対応する前記空間の一部における、複数の点についての、位置と電磁波の受波で検知される属性との相関を示すこととしてもよい。
これにより、隣接するボクセル群における測定点に基づいた局所自己相関を示す属性情報を用いるので、例えば測定点の属性の平均値のみを示す属性情報を用いる場合と比べて、位置推定を、より高精度に行えるようになる可能性がある。
また、例えば、前記測定部が測定する前記属性は色であり、前記抽出部が抽出する前記属性情報は、色を表す色情報であり、前記地図管理部が管理する前記属性情報は、色を表す色情報であることとしてもよい。
これにより、ボクセルについての位置のみならず色情報を用いて推定を行う。同じような形状の構造物が連続的に配置されているような環境においても、その構造物間で色は異なり得るので、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
また、例えば、前記抽出部が抽出する前記色情報及び前記地図管理部が管理する前記色情報のそれぞれは、特定色成分と当該特定色成分以外の他色成分とを区別可能な情報であり、前記位置推定部は、前記尤度の前記算定の基礎とする、前記両ボクセルについての前記属性情報同士の前記近似度を、当該属性情報同士における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定することとしてもよい。
これにより、年月、季節、時刻等によって態様(外観等)が変化し、色が特有である樹木、空等について、特定色成分を定めておくことで、空間におけるその態様が変化するもの(樹木、空等)の影響で、位置推定の精度が低下することを抑制できる可能性がある。
また、例えば、前記抽出部が抽出する前記色情報及び前記地図管理部が管理する前記色情報のそれぞれは、特定色成分と当該特定色成分以外の他色成分とを区別可能な情報であり、前記位置推定部は、前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が、所定位置条件を満たす場合には、前記局所空間に係る前記ボクセルについての前記属性情報における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定することとしてもよい。
これにより、適切に所定位置条件を定めれば、空間における態様が変化するものの所在する位置を限定できるので、空間におけるその態様が変化するものの影響で、位置推定の精度が低下することを適切に抑制できる可能性がある。
また、例えば、前記地図管理部は、前記地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての平面度を管理し、前記位置推定部は、前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、当該両ボクセルのうち前記空間に係る前記ボクセルについての前記平面度が特定条件を満たす場合には、前記空間に係る前記ボクセルについての前記属性情報における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定することとしてもよい。
これにより、適切に特定条件を定めれば、空間における態様が変化するものを、平面度により限定できるので、空間におけるその態様が変化するものの影響で、位置推定の精度が低下することを適切に抑制できる可能性がある。
また、例えば、前記測定部が測定する前記属性は電磁波の反射強度であり、前記抽出部が抽出する前記属性情報は、反射強度を表し、前記地図管理部が管理する前記属性情報は、反射強度を表すこととしてもよい。
これにより、ボクセルについての位置のみならず反射強度を示す属性情報を用いて推定を行う。同じような形状の構造物が連続的に配置されているような環境においても、その構造物間で電磁波の反射強度は異なり得るので、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
また、例えば、前記位置推定部は、前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が所定位置条件を満たす場合において、前記局所空間に係る前記ボクセルについての前記属性情報が所定強度より高い反射強度を示すときには、当該属性情報が前記所定強度より高くない反射強度を示すときより、当該近似度への影響の度合いを高めるように算定することとしてもよい。
これにより、例えば所定位置条件を路面に近い高さで満たされるように定めれば、例えば反射強度が高い白線等の道路表示に基づいて、位置推定を精度良く行える可能性がある。
また、例えば、前記測定部が測定する前記属性は温度であり、前記抽出部が抽出する前記属性情報は、温度を表し、前記地図管理部が管理する前記属性情報は、温度を表すこととしてもよい。
これにより、ボクセルについての位置のみならず温度を示す属性情報を用いて推定を行う。同じような形状の構造物が連続的に配置されているような環境においても、その構造物間で温度は異なり得るので、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
また、例えば、前記位置推定部は、前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が所定位置条件を満たす場合において、前記局所空間に係る前記ボクセルについての前記属性情報が人間の体温に相当する所定温度範囲内の温度を示すときより、当該属性情報が前記所定温度範囲外の温度を示すときには、当該近似度への影響の度合いを高めるように算定することとしてもよい。
これにより、時刻によって移動する人間による影響で、位置推定の精度が低下することを抑制できる可能性がある。
また、例えば、前記位置推定部は、推定した前記移動体の位置を示す情報を出力することとしてもよい。
これにより、位置推定の結果の利用が容易となり得る。
また、本開示における位置推定方法は、空間における移動体の位置を推定する位置推定装置において用いられる位置推定方法であって、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定ステップと、前記測定ステップでの測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む。
これにより、同じような形状の構造物が連続的に配置されているような環境においても、その構造物間で属性は異なり得るので、移動体の位置を迅速かつ適切に推定できる可能性が高まる。
また、本開示における制御プログラムは、空間における移動体の位置を推定する、マイクロプロセッサを備える位置推定装置に位置推定処理を実行させるための制御プログラムであって、前記位置推定処理は、前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性との、測定結果を取得する取得ステップと、前記取得ステップで取得された測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む。
これにより、この制御プログラムがインストールされて実行される、マイクロプロセッサを備える位置推定装置は、測定点の属性を含む測定結果を取得して利用することで、移動体の位置を迅速かつ適切に推定し得る。
なお、これらの包括的又は具体的な各種態様には、装置、システム、方法、集積回路、コンピュータプログラム、コンピュータで読み取り可能な記録媒体等の1つ又は複数の組合せが含まれる。
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
なお、発明者は、当業者が本開示を十分に理解するために図面及び以下の説明を提供するのであって、これらによって請求の範囲に記載の主題を限定することを意図するものではない。即ち、以下の具体例を用いた説明で示される数値、形状、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は、一例であって、請求の範囲に記載の主題を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
(実施の形態1)
実施の形態1では、主に、空間における移動体の位置を推定するために位置の他に色を用いる位置推定方法を実行する位置推定装置100について説明する。
実施の形態1では、主に、空間における移動体の位置を推定するために位置の他に色を用いる位置推定方法を実行する位置推定装置100について説明する。
以下、図面を用いて、実施の形態1を説明する。
[1-1.構成]
図1は、実施の形態1に係る位置推定装置100の一例を示し、位置推定装置100が存在する空間の一例を示す。
図1は、実施の形態1に係る位置推定装置100の一例を示し、位置推定装置100が存在する空間の一例を示す。
位置推定装置100は、同図に示すように、例えば測定装置101を取り付けた移動体102であり、建物1a、建物1b等の構造物その他の物体が存在する空間(3次元空間)を移動する。位置推定装置100は、空間における移動体102の位置を推定する機能を有する。
測定装置101は、周囲の局所空間における複数の点(測定点)の位置及び色を測定する装置である。ここで測定点は、測定性能(分解能)等に応じてある程度の大きさを有する場所であり得る。測定点の色は、その点からの電磁波の受波により検知される、測定点の属性の一種であり、例えば、波長380nm~780nmの範囲の可視光(電磁波の一種)により検知される。測定装置101は、例えば、3次元スキャナ(3Dスキャナ)、ステレオカメラ、或いは、3D-LiDAR(Light Detection and Ranging)又は2次元レーザーレンジファインダーとカメラとの組み合わせ等である。
移動体102は、例えば、ロボット、航空機、船舶、車両等であり空間内を移動し得る。移動体102がロボットの場合は、移動できれば、例えば、車輪を有する車両型のものであっても、二足歩行するもの等であってもよい。ここでは、移動体102として、主に、車両型で路面(地表面)を走行し得るロボット、或いは、車両を想定して説明する。
位置推定装置100は、測定装置101と通信可能なコンピュータを備え、コンピュータは、例えば移動体102に搭載されている。
位置推定装置100のコンピュータは、メモリ、プロセッサ(マイクロプロセッサ)、通信インタフェース(I/F)等を備える。このコンピュータは、例えば、メモリの他にハードディスク等の記憶媒体を備えていてもよい。メモリは、プログラム及びデータを予め保持しているROM、プログラムの実行に際してデータ等の記憶に利用するためのRAM等であり、例えば不揮発性メモリを含んでいてもよい。メモリには、位置推定方法に係る位置推定処理を実現するための制御プログラムやその制御プログラムで利用するための設定値等が予め格納される。また、メモリ等の記憶媒体には、移動体102が移動する空間を3次元座標系で表した地図情報(後述する地図ボクセルデータ等)が格納される。プロセッサは、制御プログラムを実行することにより、通信I/F等を制御して各種処理を行う。また、メモリは、制御プログラムのプロセッサによる実行に際して用いられる各値を一時的に格納するためにも用いられる。通信I/Fは、例えば無線通信或いはケーブルを介した通信により測定装置101等と通信を行うための通信回路等である。通信I/Fは、通信網を介して移動体102と離れた外部装置と通信する機能を有してもよい。外部装置との通信により、例えば、移動体102の一定期間内の移動範囲となり得る空間に対応する地図情報を、外部装置から取得(ダウンロード)したり、推定した移動体102の位置を外部装置に送信したりすることが可能になる。
以下、上述した位置推定装置100の機能について詳細に説明する。
図2は、位置推定装置100の機能ブロック図である。位置推定装置100は、同図に示すように、測定部110、抽出部120、地図管理部130、及び、位置推定部140を有する。以下、各機能部について説明する。
[1-1-1.測定部]
測定部110は、移動体102の周囲の局所空間における複数の点(つまり測定点)各々についての、位置と色とを測定する機能を有し、測定により測定結果である測定点データを取得する。測定部110は、例えば、測定装置101、及び、位置推定装置100のコンピュータにおける通信I/F、制御プログラムを実行するプロセッサ等により実現される。
測定部110は、移動体102の周囲の局所空間における複数の点(つまり測定点)各々についての、位置と色とを測定する機能を有し、測定により測定結果である測定点データを取得する。測定部110は、例えば、測定装置101、及び、位置推定装置100のコンピュータにおける通信I/F、制御プログラムを実行するプロセッサ等により実現される。
移動体102の位置は逐次変化し得るため、測定部110は、例えば、ある一定周期毎に、測定装置101により、移動体102の周囲の局所空間における各測定点(例えば水平方向全周分等の各測定点)についての測定点データ群を繰り返し取得してもよい。
[1-1-2.抽出部]
抽出部120は、測定部110による測定結果(測定点データ)から、移動体102の周囲の局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報(具体的には色を表す色情報)を抽出する機能を有する。抽出部120は、位置推定装置100のコンピュータにおける、制御プログラムを実行するプロセッサ等により実現される。
抽出部120は、測定部110による測定結果(測定点データ)から、移動体102の周囲の局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報(具体的には色を表す色情報)を抽出する機能を有する。抽出部120は、位置推定装置100のコンピュータにおける、制御プログラムを実行するプロセッサ等により実現される。
局所空間を測定した測定点データは、測定部110(測定装置101等)で定めた3次元座標系における座標で表される位置を含む。抽出部120は、測定点群に係る測定点データから、その3次元座標系に沿って局所空間を直方体のボクセル群に分割した各ボクセルについてのデータ(ボクセルデータ)を抽出することになる。ボクセルデータは、その3次元座標系における位置情報を含み、色情報を含む。抽出部120により、測定点データから抽出されたボクセルデータを測定ボクセルデータと称し、測定ボクセルデータを有することとなるボクセルを、測定ボクセルと称する。抽出部120による測定ボクセルについての測定ボクセルデータ(位置情報及び色情報)の抽出(抽出処理)では、測定ボクセル内に含まれる複数の測定点についての測定点データ群から、情報量の面で圧縮するように、測定ボクセルについての測定ボクセルデータが算定される。この情報量の圧縮は、3次元空間では2次元平面以上に情報量が増加するので測定点同士をそのまま比較するのでは計算量が増加してリアルタイムの位置推定が困難となるという問題に、対応する手段となる。
抽出部120による測定ボクセルデータの抽出は、例えば、各測定ボクセルについて、その測定ボクセルの位置情報を、測定部110により測定された測定ボクセル内の各点についての位置の平均値を示すように定めることにより、行われる。一例としては、抽出部120は、測定ボクセル内に含まれる各測定点についての測定点データにおける位置(3次元座標x,y,zで表される位置)を平均化してその測定ボクセルについての測定ボクセルデータにおける位置情報を算定する。また、抽出部120による測定ボクセルデータの抽出は、例えば、各測定ボクセルについて、その測定ボクセルについての色情報を、測定部110により測定されたその測定ボクセル内の各点についての色の平均値を示すように定めることにより、行われる。一例としては、抽出部120は、測定ボクセル内に含まれる各測定点についての測定点データにおける、赤(R:Red)、緑(G:Green)、青(B:Blue)の成分で表される色(R、G、Bの各成分が8ビットで表されるRGB値)を平均化してその測定ボクセルについての測定ボクセルデータにおける色情報を算定する。
図3は、空間における測定点の測定点データに基づいて測定ボクセルについての測定ボクセルデータを抽出する過程を示す概念図である。同図では、各測定点データ(測定点データ201a等)をその測定点の位置と対応付けた配置で表しており、また、測定ボクセルが有する測定ボクセルデータ(測定ボクセルデータ203a等)をその測定ボクセルデータにおける位置情報が示す位置と対応付けた配置で表している。測定部110により、空間の一部の移動体102の周囲の局所空間における測定がなされて、建物1a及び建物1bを含む複数の測定点について測定点データ201a、201b等が得られる。抽出部120は、測定された範囲である局所空間を、測定ボクセル202a、202b等といったボクセル(例えば各辺が数メートルの立方体等)群に分割する(つまり、ボクセル群の3次元配列と対応付ける)。測定ボクセル202aは、測定ボクセルデータ203aを有し、測定ボクセル202bは、測定ボクセルデータ203bを有する。測定ボクセル202a内に含まれる測定点に対応する測定点データ201a、201b等は、測定ボクセル202aについての測定ボクセルデータ203aに反映される。
測定点データは、図4に例示するように、位置を3次元座標x,y,zで表し、色をRGB値で表したものである。なお、図4は、一行毎に一測定点についての測定点データを示している。図5は、測定ボクセルデータの一例を示す図であり、一行毎に一測定ボクセルについての測定ボクセルデータを示している。図5に示すような測定ボクセルデータは、メモリ等の記憶媒体に一時的に保持される。図5に示すように、測定ボクセルデータは、局所空間に対応付けた測定ボクセル群の3次元配列における該当の測定ボクセルの配置を示すインデックス(index)と、その測定ボクセル内の各測定点データの位置の平均値を示す位置情報と、その測定ボクセル内の各測定点データの色(RGB値)の平均値を示す色情報とを含む。例えば、図3の測定ボクセルデータ203aにおける位置情報は、測定ボクセル202aに含まれる各測定点に対応する測定点データ(測定点データ201a、201b等)の位置の平均値を示し、測定ボクセルデータ203aにおける色情報は、測定ボクセル202aに含まれる各測定点に対応する測定点データ(測定点データ201a、201b等)の色の平均値を示す。
[1-1-3.地図管理部]
地図管理部130は、地図(つまり空間を表す3次元座標系を定めた地図)で表される空間と対応付けて、3次元状に配列したボクセル群における各ボクセルについてのボクセルデータ、つまり、位置情報及び属性情報(具体的には色を表す色情報)を、管理する機能を有する。地図管理部130は、例えば、位置推定装置100のコンピュータにおけるメモリ等の記憶媒体、通信I/F、制御プログラムを実行するプロセッサ等により実現される。地図管理部130が管理するボクセルデータを地図ボクセルデータと称し、地図ボクセルデータを有することとなるボクセルを、地図ボクセルと称する。地図管理部130は、空間を分割してなる地図ボクセル群における各地図ボクセルについての地図ボクセルデータ(位置情報及び色情報)を含む地図情報を管理している。
地図管理部130は、地図(つまり空間を表す3次元座標系を定めた地図)で表される空間と対応付けて、3次元状に配列したボクセル群における各ボクセルについてのボクセルデータ、つまり、位置情報及び属性情報(具体的には色を表す色情報)を、管理する機能を有する。地図管理部130は、例えば、位置推定装置100のコンピュータにおけるメモリ等の記憶媒体、通信I/F、制御プログラムを実行するプロセッサ等により実現される。地図管理部130が管理するボクセルデータを地図ボクセルデータと称し、地図ボクセルデータを有することとなるボクセルを、地図ボクセルと称する。地図管理部130は、空間を分割してなる地図ボクセル群における各地図ボクセルについての地図ボクセルデータ(位置情報及び色情報)を含む地図情報を管理している。
地図管理部130による地図情報の管理は、地図情報を利用可能な状態にすることであり、具体的には、メモリ等の記憶媒体により地図情報を保持する、或いは、外部装置等から地図情報を取得することである。地図情報は、例えば、予め定めた3次元座標系に従って、空間を測定することで予め生成された情報である。地図情報は、例えば、空間における各測定点の位置及び属性(具体的には色)を測定してその測定結果に基づいて、各地図ボクセルについての地図ボクセルデータ(位置情報及び色情報)を抽出することで生成される。この測定結果に基づく地図ボクセルデータの抽出は、例えば、抽出部120が測定点データから測定ボクセルについての測定ボクセルデータを抽出する方法と同様の方法により行われてもよい。本実施の形態では、地図ボクセルデータのデータ構成は、図5に示す測定ボクセルデータと同様であるものとする。即ち、地図ボクセルデータは、地図ボクセルの配置を示すインデックス(index)とその地図ボクセルに対応する、空間の一部における各点(つまり各場所)の位置の測定結果の平均値を示す位置情報と、その地図ボクセルに対応する、空間の一部における各点(つまり各場所)についての、その点からの電磁波の受波により検知される属性としての色の測定結果(RGB値)の平均値を示す色情報とを含むものとする。
[1-1-4.位置推定部]
位置推定部140は、地図管理部130が管理する地図情報の地図ボクセルデータ(位置情報、及び、属性情報としての色情報)に基づき、抽出部120が抽出した測定ボクセルデータ(位置情報、及び、属性情報としての色情報)に応じて、移動体102の位置を推定する機能を有する。位置推定部140は、例えば、位置推定装置100のコンピュータにおけるメモリ、制御プログラムを実行するプロセッサ等により実現される。
位置推定部140は、地図管理部130が管理する地図情報の地図ボクセルデータ(位置情報、及び、属性情報としての色情報)に基づき、抽出部120が抽出した測定ボクセルデータ(位置情報、及び、属性情報としての色情報)に応じて、移動体102の位置を推定する機能を有する。位置推定部140は、例えば、位置推定装置100のコンピュータにおけるメモリ、制御プログラムを実行するプロセッサ等により実現される。
位置推定部140は、地図管理部130が管理する各地図ボクセルについての地図ボクセルデータと抽出部120が抽出した各測定ボクセルについての測定ボクセルデータとを照合する。この照合では、位置推定部140は、測定ボクセルについての測定ボクセルデータにおける位置情報が、地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報(移動体102の周囲の局所空間の測定に用いた3次元座標による位置情報)を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定する。この変換演算を特定することにより、移動体102の位置が推定される。例えば、特定された変換演算を測定ボクセルデータの位置情報に対して施すことで、地図の3次元座標系における移動体102の位置が推定できる。
この移動体102の位置を推定する方法、つまり、変換演算を推定的に特定する方法としては、例えば、ベイズ推定の一手法として知られるパーティクルフィルタを用いて予測、観測、及び、リサンプリングの手順を繰り返す方法(後述)を用いることができる。概ね、位置推定部140は、地図管理部130が管理する各地図ボクセルについての位置情報と、候補としての複数の変換演算各々を用いて変換した、抽出部120が抽出した各測定ボクセルについての位置情報との近似度を算定する。そして、位置推定部140は、その変換演算毎に、算定した近似度が最も高いところの地図ボクセル及び測定ボクセルの各組における両ボクセルについての位置情報同士の近似度及び属性情報(つまり色情報)同士の近似度に基づいて、尤度を算定する。候補としての複数の変換演算のうち算定した尤度が最も高い変換演算、又は、算定した尤度に応じて加重平均した変換演算に応じて、位置推定部140は、移動体102の位置の推定を行う。ここで、位置を示す位置情報同士の近似度或いは色を示す色情報同士の近似度は、位置或いは色が近似する度合いの高さを示し、同一であれば最高値となる。なお、位置推定部140は、複数の変換演算各々を用いて変換した各測定ボクセルに係る近似度の算定に基づく、尤度の算定及び移動体の位置の推定を、繰り返し行い、尤度の算定結果に基づいて次に変換に用いる複数の変換演算を定める。
[1-2.動作]
以下、上述の構成を備える位置推定装置100の動作(つまり位置推定方法)について説明する。
以下、上述の構成を備える位置推定装置100の動作(つまり位置推定方法)について説明する。
[1-2-1.抽出部の動作]
図6は、抽出部120による測定ボクセルデータの抽出処理の一例を示すフローチャートである。測定ボクセルデータの抽出処理について、図6に即して説明する。
図6は、抽出部120による測定ボクセルデータの抽出処理の一例を示すフローチャートである。測定ボクセルデータの抽出処理について、図6に即して説明する。
抽出部120は、測定ボクセルについてボクセルサイズを決定する(ステップS11)。例えば、ボクセルサイズとして測定に係る3次元座標系(xyz3次元座標系)におけるx,y,z方向の長さがそれぞれ定められる。これにより、測定ボクセルは、例えば、各辺が1メートルの立方体等と定められることになる。また、抽出部120は、測定ボクセルについての測定に係る3次元座標系における測定範囲内の値(x,y,z座標値)を、インデックスに換算するために用いる加算値であるオフセットのx,y,z座標を決定する(ステップS12)。なお、測定ボクセルのボクセルサイズは、必ずしも地図ボクセルのボクセルサイズと一致させる必要はない。
続いて、抽出部120は、測定部110による測定により得られた移動体102の周囲の局所空間に対応する各測定点のうちの1つについての測定点データを処理対象として取得する(ステップS13)。そしてその取得した測定点データに対応する測定ボクセル(その測定点データに係る位置を包含する測定ボクセル)を特定してその測定ボクセルのインデックスを計算する(ステップS14)。例えば、測定ボクセルのインデックスは、測定点データの座標値を用いて次の式1~式3で計算される。このインデックスは、局所空間に3次元状に配列した測定ボクセル群の各測定ボクセルについての3次元配列における配置を示す番号である。
x(index) = (測定点のx座標 + オフセットのx座標) / ボクセルサイズ (式1)
y(index) = (測定点のy座標 + オフセットのy座標) / ボクセルサイズ (式2)
z(index) = (測定点のz座標 + オフセットのz座標) / ボクセルサイズ (式3)
y(index) = (測定点のy座標 + オフセットのy座標) / ボクセルサイズ (式2)
z(index) = (測定点のz座標 + オフセットのz座標) / ボクセルサイズ (式3)
次に抽出部120は、ステップS13で取得した測定点データにおける位置を用いて、ステップS14で特定した測定ボクセルについての位置情報を更新する(ステップS15)。また、抽出部120は、ステップS13で取得した測定点データにおける色(RGB値)を用いて、ステップS14で特定した測定ボクセルについての色情報を更新する(ステップS16)。このステップS15及びステップS16での処理により、メモリ等の記憶媒体に一時的に保持される、図5に示すような測定ボクセルデータ(位置情報及び色情報)が、更新されることになる。そして、未だ処理対象としていない測定点データを順次処理対象として、全ての測定点データを処理対象として処理を終了するまでステップS13~S16での処理を繰り返す(ステップS17)。
なお、測定部110により移動体102の周囲の局所空間の各測定点(例えば水平方向全周分等の各測定点)についての測定点データ群が得られる毎に、この抽出処理(ステップS11~S17)、或いは、その一部のステップS13~S17での処理が行われるようにしてもよい。このようにある程度の量の測定点データ群が得られてから抽出部120が各測定ボクセルの測定ボクセルデータ(位置情報及び色情報)を抽出する場合には、各測定ボクセル内に位置する測定点についての各測定点データにおける位置の平均値を測定ボクセルについての位置情報とし、その各測定点データにおける色(RGB値)の平均値を測定ボクセルについての色情報としてもよい。測定ボクセルの位置(例えば測定ボクセルにおける最小位置に当たる一頂点のx座標、y座標、z座標)は、インデックスに基づいて次の式4~式6により特定可能である。
測定ボクセルのx座標 = x(index) × ボクセルサイズ - オフセットのx座標 (式4)
測定ボクセルのy座標 = y(index) × ボクセルサイズ - オフセットのy座標 (式5)
測定ボクセルのz座標 = z(index) × ボクセルサイズ - オフセットのz座標 (式6)
測定ボクセルのy座標 = y(index) × ボクセルサイズ - オフセットのy座標 (式5)
測定ボクセルのz座標 = z(index) × ボクセルサイズ - オフセットのz座標 (式6)
[1-2-2.位置推定部の動作]
位置推定部140は、各地図ボクセルについての地図ボクセルデータと各測定ボクセルについての測定ボクセルデータとを照合する。即ち、位置推定部140は、移動体102の周囲の局所空間を測定して得られた、測定用の3次元座標系で表される測定ボクセルについての測定ボクセルデータにおける位置情報が、どこかに限定を定めた地図用の3次元座標系で表される地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定することで、推定した変換演算に基づいて位置の推定を行う。
位置推定部140は、各地図ボクセルについての地図ボクセルデータと各測定ボクセルについての測定ボクセルデータとを照合する。即ち、位置推定部140は、移動体102の周囲の局所空間を測定して得られた、測定用の3次元座標系で表される測定ボクセルについての測定ボクセルデータにおける位置情報が、どこかに限定を定めた地図用の3次元座標系で表される地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定することで、推定した変換演算に基づいて位置の推定を行う。
このために位置推定部140は、パーティクルフィルタを用いて予測、観測、及び、リサンプリングの手順を繰り返す位置推定処理を行う。パーティクルフィルタは、ベイズの定理を用いて、事前確率と尤度計算(尤度算定)から事後確率を予測する手法である。確率は仮説となる粒子とその尤度によって表現される。位置推定部140では、測定ボクセルについての測定ボクセルデータにおける位置情報が地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算として尤度の高い変換演算を推定する手段として、粒子を用いる。粒子毎に変換演算が特定される。また、推定された変換演算により、移動体102の位置が推定される。
図7は、位置推定部140による位置推定処理の一例を示すフローチャートであり、図8は、位置推定処理の一部である尤度算定の一例を示すフローチャートである。以下、図7及び図8に即して、位置推定処理について説明する。
位置推定部140は、パーティクルフィルタを用いた位置推定処理として、まず、初期粒子を配置する(ステップS21)。位置推定部140は、次に、粒子全体を遷移させる予測の手順(ステップS22)、予測した粒子について尤度を算定する観測の手順(ステップS23)、及び、リサンプリング(粒子についての再標本抽出)の手順(ステップS24)を繰り返す。位置推定部140は、位置推定の必要がなくなった等の一定の中断条件が成立すると、処理の繰り返しを終える(ステップS25)。
図9に、位置推定処理に用いる粒子に関する情報である粒子データの一例を示す。位置推定部140により、メモリ等の記憶媒体に、図9に示すような粒子データが粒子毎に記憶される。粒子データは、粒子の3次元座標及び回転角度を示す。図9に示すように、記憶媒体における粒子データの記憶領域は、地図の3次元座標系に対応する粒子の3次元座標(x座標、y座標、z座標)と、z軸を回転中心軸とした回転角度θyawと、その粒子の尤度とを格納することになる。ここでは、便宜上、移動体102として車両或いは車両型のロボットを想定して説明しているので、回転成分を1次元で表現したが、roll、pitch、yaw等の3次元の成分で表現してもよい。
図10は、粒子データを用いて測定ボクセルの位置情報に係る測定座標を地図座標に変換する変換演算を示す概念図である。同図に示すように、測定ボクセルデータの位置情報が示す位置である3次元の測定座標Xは、粒子の3次元座標(x座標,y座標,z座標)に基づく並進成分Tpと、粒子の回転角度θyawに基づく回転成分Rpとを用いた変換演算により、地図座標系301(地図の3次元座標系)における地図座標Yに換算される。
上述したステップS21~S24の各手順について、詳細に説明する。
図7に示すステップS21での初期粒子の配置は、粒子の各成分(x座標、y座標、z座標、回転角度θyaw)を、粒子の値が取り得る範囲内となるように乱数により定めたものである初期粒子の生成により実現される。粒子(粒子の各成分)に基づいて、測定ボクセルデータの位置情報を地図座標系301に換算するための変換演算を定めるところ、この粒子の値が取り得る範囲は、少なくとも位置推定処理の間において測定ボクセルデータの位置情報が取り得る範囲(つまり地図で表される空間において移動体102が移動し得ると想定される範囲)に対応したものとなる。ステップS21では、例えば、1000個の位置(座標x、座標y、座標z)を乱数で算定して、各位置について5度ずつ異ならせた72個の回転角度θyawのバリエーションを生成することで、座標x、座標y、座標z及び回転角度θyawを成分とする合計72000個の粒子を生成する。
また、移動体102の位置についてGPS(Global Positioning System)受信機等を用いて取得した位置情報や過去の位置情報等の事前位置情報が利用できる場合には、初期粒子を事前位置情報が示す位置の周辺に配置してもよい。
ステップS22での粒子全体を遷移させる予測は、現在時刻を時刻tとすると、時刻t-2と時刻t-1との間での粒子の移動(粒子の成分の変位)に基づいて移動ベクトルmvを計算し、時刻t-1の粒子全体に移動ベクトルmvを加算し、更にガウス分布等で近似した観測ノイズを各粒子に加算して時刻tでの粒子を生成することにより実現される。
また、車輪等の回転数や操舵角等のオドメトリ情報が利用できる場合には、移動ベクトルの代わりにそのオドメトリ情報を用いてもよい。
図11は、ステップS22での予測により、時刻t-1の粒子状態402が、移動ベクトルmvの加算及び観測ノイズの加算の結果として、時刻tにおける粒子状態403になる様子を示している。
ステップS23での粒子の尤度を算定する観測について、図8に即して説明する。位置推定部140は、尤度算定(観測)において最初に、尤度算定用のデータ(変数)としての尤度合計値をゼロに初期化する(ステップS31)。
次に、位置推定部140は、ステップS22で遷移させた各粒子について順次着目して、着目した粒子に応じた変換演算を適用した複数の測定ボクセル各々と地図ボクセルとの照合により、粒子の尤度を算定する(ステップS32~S38)。
まず、尤度算定において未着目の粒子の1つに着目し、また、抽出部120で測定ボクセルデータを抽出した複数の測定ボクセルの1つに着目し、その着目した粒子に応じた変換演算(図10参照)により、その着目した測定ボクセルの測定ボクセルデータにおける位置情報を地図座標系301における地図座標へと変換する(ステップS32)。
続いて、位置推定部140は、着目中の測定ボクセルの地図座標に変換した測定ボクセルデータにおける位置情報と最も近似度が高い位置情報を含む地図ボクセルデータに係る地図ボクセルを特定する(ステップS33)。位置情報同士の近似度は、両位置情報が示す位置が近い(位置間の距離が短い)ほど高い。ステップS33では、位置推定部140は、測定ボクセルについての位置(つまり測定ボクセルデータにおける位置情報が示す3次元座標の平均値)に基づいて、地図管理部130が管理する各地図ボクセルデータのうち、地図ボクセルデータにおける位置情報が示す位置が、測定ボクセルについての位置と最も近い、地図ボクセルデータに係る地図ボクセルを特定する。
例えば一例として、位置推定部140は、式1~式3を用いて、ステップS32で変換した地図座標における位置情報の座標値から、地図ボクセルのインデックスを計算し、求める。
次に、位置推定部140は、ステップS33で特定した地図ボクセルと着目中の測定ボクセルとの組に係る地図ボクセルデータにおける位置情報と測定ボクセルデータにおける位置情報との近似度を算定して、その近似度を尤度合計値に加算する(ステップS34)。この両ボクセル(特定した地図ボクセルと着目中の測定ボクセル)についての位置情報同士の近似度は、その両位置情報が示す位置(3次元座標)間の距離Dに基づいて、距離Dが短いほど近似度が高くなるように予め定めた計算式等に基づいて算定し得る。図12は、地図ボクセル311についての位置情報が示す平均位置312と測定ボクセル211についての位置情報が示す平均位置212との間の距離Dに基づいて近似度としてspace(D)を算定する近似度算定の一例を示している。位置推定部140は、例えば、距離Dの間隔の各位置を示す位置情報同士の近似度を、図12に示す式901のように、space(D)として算定してもよい。
次に、位置推定部140は、ステップS33で特定した地図ボクセルと着目中の測定ボクセルとの組に係る地図ボクセルデータにおける色情報と測定ボクセルデータにおける色情報との近似度を算定して、その近似度を尤度合計値に加算する(ステップS35)。この両ボクセル(特定した地図ボクセルと着目中の測定ボクセル)についての色情報同士の近似度は、例えば、その両色情報が示す色(RGB値である色の平均値、つまり平均色)間の、RGB3次元座標系における距離Cに基づいて、距離Cが短いほど近似度が高くなるように予め定めた計算式等に基づいて算定し得る。
図13は、RGB3次元座標系における、地図ボクセルについての色情報が示す平均色313と測定ボクセルについての色情報が示す平均色213との間の距離Cに基づいて近似度としてcolor(C)を算定する近似度算定の一例を示している。位置推定部140は、例えば、距離Cの間隔の各色(RGB値)を示す色情報同士の近似度を、図13に示す式902のように、color(C)として算定してもよい。なお、ステップS34で位置情報に係る近似度を尤度合計値に加算し、ステップS35において色情報に係る近似度を尤度合計値に加算したが、これらは、地図ボクセルと測定ボクセルとの間の位置情報と色情報とに係る相関に基づいて最終的に粒子毎の尤度を算定するための一例に過ぎない。ステップS34及びステップS35で位置情報に係る近似度と色情報に係る近似度とを尤度合計値に加算する代わりに、例えば、位置情報に係る近似度と色情報に係る近似度との乗算結果を尤度合計値に加算することとしてもよいし、例えば、尤度への影響の重みを位置情報と色情報とで異ならせるために、係数を乗じた位置情報に係る近似度と、色情報に係る近似度とを尤度合計値に加算してもよい。
次に、全ての測定ボクセルについて着目してステップS32~S35に係る処理を完了したか否かを判定し(ステップS36)、未完了の場合にはステップS32に戻り、完了した場合には、尤度合計値を、着目中の粒子の尤度として、粒子データにおける尤度の記憶領域(図9参照)に格納する(ステップS37)。
次に、全ての粒子について着目して尤度を求める処理を完了したか否かを判定し(ステップS38)、未完了の場合にはステップS31に戻り、完了した場合には、最大尤度の粒子に応じた変換演算に基づいて、移動体102の現在の位置(つまり位置推定結果)を示す情報を出力する(ステップS39)。例えば、変換演算に対して測定ボクセルについての位置情報としてゼロを与えることで位置推定結果が得られる。また、単純に最大尤度の粒子データの成分を現在の位置として出力してもよい。
ステップS32で図10に示す変換演算を用いる場合において、ステップS39で、位置推定部140は、最大尤度の粒子の粒子データが示すその粒子の成分(3次元座標及び回転角度)を、位置推定結果として出力することになる。なお、ステップS39で、位置推定部140は、最大尤度の粒子の成分の代わりに、各粒子の成分(3次元座標及び回転角度)についての、粒子の尤度で重み付けした加重平均の結果を、位置推定結果として出力することとしてもよい。各粒子の尤度を、粒子全体の尤度合計値で除算して正規化することで加重平均を求める。ステップS39での位置推定部140による位置推定結果(移動体102の位置)を示す情報の出力は、例えば移動体102に設けられた装置(例えば移動のために車輪の駆動制御を行う制御機構等)へその情報を伝達すること、移動体102に搭載された表示装置にその情報を表示すること、或いは、移動体102と離れて所在する装置へその情報を送信すること等により行われる。この出力により位置推定結果が利用される。また、各粒子の粒子データにおける尤度(図9参照)は、ステップS24でのリサンプリングに用いられることになる。
次に、図7のステップS24では、ステップS23での粒子の観測(尤度算定)の結果を用いて、粒子の尤度に応じて再度粒子を選ぶ確率を定めてリサンプリングを行う。
リサンプリングについて、粒子を3つ用いた簡単な例で説明する。リサンプリング前の粒子が、(粒子番号,尤度)で表すと(1,0.5)、(2,0.3)、(3,0.2)であった場合において、全粒子の尤度の合計値は、0.5+0.3+0.2により1.0である。この場合に、粒子番号1の粒子は、0.5/1.0、つまり50%の確率で選ばれ、粒子番号2の粒子は、0.3/1.0、つまり30%の確率で選ばれ、粒子番号3の粒子は、0.2/1.0、つまり20%の確率で選ばれるように、乱数を用いて粒子を選ぶことで標本抽出を行う。なお、標本抽出で選ぶ粒子の数は一定でもよいし、例えば粒子全体の尤度の分散に応じて、例えば分散が小さいと粒子の数を減らす等、リサンプリング毎に変化させてもよい。
図11に示す粒子状態404における各粒子4a~4eは、ステップS23での観測の結果としての尤度を円の大きさで表している。粒子状態404で示した、尤度が比較的低い(小さい)粒子4a及び粒子4eは、ステップS24でのリサンプリングにより再び選択される確率が低く、乱数により結果的に選ばれなかった例を粒子状態405で示している。また、粒子状態404で示した、尤度が比較的高い(大きい)粒子4cは、選択される確率が高く、ステップS24でのリサンプリングで乱数により結果的に3つ選ばれた例を粒子状態405で示している。また、粒子状態404で示した、尤度が中位の粒子4b及び粒子4dは、選択される確率が中位であり、ステップS24でのリサンプリングで乱数により結果的に選ばれた例を粒子状態405で示している。時刻tにおいてリサンプリングされた粒子は、時刻t+1においてステップS22での予測により観測ノイズが付加され、例えば粒子状態406に示すように粒子5a~5eとなる。なお、図11で時刻t-1、時刻t、時刻t+1で示した時刻は、例えば、図7のステップS22~S24が繰り返される毎に1進むこととしてもよいし、そのステップS22~S24が一定回数繰り返される毎に1進むこととしてもよい。
また、例えば、測定部110により測定点データ群を繰り返し取得する周期と、ステップS22~S24が繰り返される周期との関係により、ステップS23で観測に用いられる測定ボクセルデータは、前回のステップS23での観測で用いられた測定ボクセルデータと同じ内容になり得るし、異なる内容にもなり得る。例えば、測定部110により測定点データ群を繰り返し取得する周期と、ステップS22~S24が繰り返される周期とを合わせて、ステップS23で観測に用いられる測定ボクセルデータが、前回のステップS23での観測で用いられた測定ボクセルデータと異なり得るようにしてもよい。
[1-3.効果等]
上述の位置推定装置100によれば、位置のみならず色を測定し、ボクセルについての位置のみならず色情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、移動体の位置を迅速かつ適切に推定できる可能性が高い。
上述の位置推定装置100によれば、位置のみならず色を測定し、ボクセルについての位置のみならず色情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、移動体の位置を迅速かつ適切に推定できる可能性が高い。
[1-4.変形例]
以下、上述した位置推定装置100の一部を変形した変形例について説明する。
以下、上述した位置推定装置100の一部を変形した変形例について説明する。
[1-4-1.変形例1:位置情報が平面を示す例]
上述の測定ボクセルデータ及び地図ボクセルデータは、いずれも3次元座標(x座標,y座標,z座標)で表される位置(ボクセル内の各点の位置の平均値)を示す位置情報を含むものであり(図5参照)、図8に示すステップS34での位置情報同士の近似度の算定は、例えば、その各位置情報が示す位置(平均位置)同士の間の距離Dに基づいて行われ得ることを示した。
上述の測定ボクセルデータ及び地図ボクセルデータは、いずれも3次元座標(x座標,y座標,z座標)で表される位置(ボクセル内の各点の位置の平均値)を示す位置情報を含むものであり(図5参照)、図8に示すステップS34での位置情報同士の近似度の算定は、例えば、その各位置情報が示す位置(平均位置)同士の間の距離Dに基づいて行われ得ることを示した。
変形例として、測定ボクセルデータ及び地図ボクセルデータのうち一方が、ボクセルについての一平面を示す情報であることとしてもよい。この例では、ステップS34での位置情報同士の近似度の算定を、その位置情報同士の一方が示す平均位置(位置の平均値)、つまり点と、他方が示す平面との距離Dに基づいて、行い得る。また、ステップS33で、測定ボクセルと最も近い地図ボクセルを特定する場合における位置情報同士の近似度の算定についても同様に、点と平面との距離に基づいて行ってもよい。例えば、測定ボクセルデータは図5に例示するものであり、地図ボクセルデータは図14に例示するものであってもよい。図14に示す地図ボクセルデータでは、地図ボクセル内についての各点について測定された3次元座標の平均値と、その分散に基づく3×3(3行3列)の分散共分散行列から算定した第1固有ベクトル及び第2固有ベクトルとを位置情報として含んでいる。第1固有ベクトルと第2固有ベクトルとにより平面は特定できるため、測定ボクセルデータと地図ボクセルデータとの位置情報同士の近似度の算定として、例えば、点と平面との距離Dを用いた計算が可能となる。また、第1固有ベクトル及び第2固有ベクトルではなく、3×3(3行3列)の分散共分散行列自体をボクセルデータに位置情報として含ませてもよい。
この変形例では、抽出部120が抽出する、局所空間に対応する各測定ボクセルについての測定ボクセルデータにおける位置情報、又は、地図管理部130が管理する、空間に対応する各地図ボクセルについての地図ボクセルデータにおける位置情報が、そのボクセル内の各点の位置に基づいて定めた分散共分散行列で特定される平面を示すものである。これにより、位置推定部140は、地図ボクセルデータと測定ボクセルデータとの位置情報同士の近似度を、その位置情報同士の一方が示す位置の平均値と他方が示す平面との距離に応じて特定することにより、上述の尤度(つまり粒子及び変換演算の尤度)の算定を行うことができる。
このように、ボクセルデータにおいて平面を示す位置情報を用いることで、位置推定装置100が位置の推定を、より高精度に行えるようになる可能性がある。
なお、ボクセル内の点群が理想的な平面でない場合も想定し、分散共分散行列から固有値及び固有ベクトルを算出する際に平面度を推定してもよい。例えば、第一、第二固有値が比較的大きく、第三固有値が比較的小さい場合には理想的な平面と推定し、点と平面との距離Dを用いてもよいが、第二固有値と第三固有値との差が小さい場合には球体又は立体の可能性があるので、点と点との距離を用いるように切り替えてもよい。
また、地図ボクセルデータと測定ボクセルデータとの位置情報同士の近似度を、点と面との距離に基づいて算定する場合には、平面度に応じて重み付けしてもよい。また、地図ボクセルデータには、分散共分散行列から事前に計算した各ボクセルの平面及び平面度を含ませてもよい。即ち、地図管理部130は、地図ボクセルデータとして、平面度を更に管理し得る。
[1-4-2.変形例2:色情報が色のヒストグラムを示す例]
上述の測定ボクセルデータ及び地図ボクセルデータは、いずれもRGB値で表される色(ボクセル内の各点の色の平均値)を示す色情報を含むものであり(図5参照)、図8に示すステップS35での色情報同士の近似度の算定は、例えば、その各色情報が示す色(平均色)同士の間のRGB3次元座標系における距離Cに基づいて行われ得ることを示した。
上述の測定ボクセルデータ及び地図ボクセルデータは、いずれもRGB値で表される色(ボクセル内の各点の色の平均値)を示す色情報を含むものであり(図5参照)、図8に示すステップS35での色情報同士の近似度の算定は、例えば、その各色情報が示す色(平均色)同士の間のRGB3次元座標系における距離Cに基づいて行われ得ることを示した。
ここでは、色情報が、色を複数のカテゴリであるビンに区分した情報(ヒストグラム)であり、色情報同士の近似度を、ヒストグラムの類似度に基づいて算定するようにした変形例を示す。この場合に、ボクセルデータ(測定ボクセルデータ及び地図ボクセルデータ)は、図15に例示するようなものとなる。図15の例では、ボクセルデータにおける色情報は、8ビットのRGB値のR成分、G成分及びB成分について64階調毎のビンに区分した配分(つまり正規化した度数)を示す。
図16に、色情報の近似度算定の一例を示す。図16の例えばDabsolute(h,h’)、DEuclidean(h,h’)、或いは、Dintersection(h,h’)等のような既知のヒストグラムの比較方法(つまりユークリッド距離を利用する方法、ヒストグラムインターセクション法等)を用いて、測定ボクセルデータにおける色情報のヒストグラムhと、地図ボクセルデータにおける色情報のヒストグラムh’とに基づいて、色情報の近似度を算定できる。なお、測定ボクセルデータにおける色情報のヒストグラムは、R成分のヒストグラム215、G成分のヒストグラム216、及び、B成分のヒストグラム217を結合したものである。また、地図ボクセルデータにおける色情報のヒストグラムは、R成分のヒストグラム315、G成分のヒストグラム316、及び、B成分のヒストグラム317を結合したものである。
この変形例では、抽出部120による測定ボクセルデータの抽出は、各測定ボクセルについて、その測定ボクセルについての属性情報(具体的には色情報)を、測定部110により測定されたそのボクセル内の各点についての属性(色)に基づくヒストグラムを示すように定めることにより、行われる。そして、地図管理部130により管理される各地図ボクセルについての属性情報(具体的には色情報)は、該当の地図ボクセルに対応する空間の一部における複数の点についての、その点からの電磁波の受波で得られる属性(色)に基づくヒストグラムを示す。これにより、位置推定部140は、前記属性情報同士(具体的には色情報)の近似度を、その属性情報同士の一方が示すヒストグラムと他方が示すヒストグラムとの距離に応じて特定することにより、上述の尤度(つまり粒子及び変換演算の尤度)の算定を行うことができる。
[1-4-3.変形例3:色情報が局所自己相関を示す例]
ボクセルに係るボクセルデータの色情報が、そのボクセル内の局所的な位置と相関する濃度傾向(つまり局所自己相関)を示す特徴ベクトルで表されるようにした変形例を示す。
ボクセルに係るボクセルデータの色情報が、そのボクセル内の局所的な位置と相関する濃度傾向(つまり局所自己相関)を示す特徴ベクトルで表されるようにした変形例を示す。
図17は、ボクセルについての色情報の抽出に用いるサブボクセルを示す図である。図17に示すように、ボクセル220を、3×3×3の27個のサブボクセルに分割する。そして、各サブボクセル内における各点(測定点)の色(RGB値)の各成分についての平均値を算出して、例えば0から1までの範囲内の値となるように正規化する。そして、R、G、Bの各成分についてボクセル220の中央のサブボクセル221の色の平均値と、そのサブボクセル221からそれ以外の各サブボクセル(例えばサブボクセル222等)へ向かう方向毎にその方向へのサブボクセルの色の乗算とを計算する。色情報はRGBの3成分あり、サブボクセルの個数は27個存在するので、3×27=81次元の特徴ベクトルが生成できる。この81次元の特徴ベクトルを、ボクセル220のボクセルデータにおける色情報とする。
この変形例では、抽出部120による測定ボクセルデータの抽出は、各測定ボクセルについて、その測定ボクセルについての属性情報(具体的には色情報)を、測定部110により測定されたその測定ボクセル内の各点についての位置と属性(色)との相関を示すように定めることにより、行われる。また、地図管理部130により管理される各地図ボクセルについての属性情報(具体的には色情報)は、該当の地図ボクセルに対応する空間の一部における複数の点についての、位置と電磁波の受波で得られる属性(色)との相関を示す。
このようにボクセルデータ(測定ボクセルデータ及び地図ボクセルデータ)における色情報を、ボクセル内の色の局所自己相関を示す特徴ベクトルで表す場合においては、図8に示すステップS35での色情報同士の近似度の算定は、例えば、その81次元の特徴ベクトル同士のユークリッド距離に基づいて、距離が小さいほど近似度が高いように定めた演算(例えば図12参照)により、行うことができる。
また、上述の変形例とはスケールを変更して(つまり上述の例のサブボクセルをボクセルに置き換えて)、ボクセルに係るボクセルデータの色情報が、そのボクセルを含む局所的なボクセル群(隣接する複数のボクセル)における局所的な位置と相関する濃度勾配(つまり局所自己相関)を示す特徴ベクトルで表されるようにしてもよい。即ち、あるボクセル(ボクセルAとする)とそのボクセルAの周囲を囲む隣接する26個のボクセルとの各々について、ボクセル内における各点(測定点)の色(RGB値)の各成分についての平均値を算出して、例えば0から1までの範囲内の値となるように正規化する。そして、R、G、Bの各成分についてボクセルAの色の平均値と、そのボクセルAからそれ以外の各隣接ボクセルへ向かう方向毎にその方向へのボクセルの色の乗算とを特定する。その特定した全ての値を成分とする81次元の特徴ベクトルを、ボクセルAのボクセルデータにおける色情報とする。
この例では、抽出部120による測定ボクセルデータの抽出は、各測定ボクセルについて、その測定ボクセルについての属性情報(具体的には色情報)を、測定部110により測定されたそのボクセル内及びそのボクセルに近接する1以上のボクセル内の、各点についての位置と属性(色)との相関を示すように定めることにより、行われる。また、地図管理部130により管理される各地図ボクセルについての属性情報(具体的には色情報)は、該当のボクセルに対応する空間の一部及びそのボクセルに近接する1以上のボクセルに対応する空間の一部における、複数の点についての、位置と電磁波の受波で得られる属性(色)との相関を示す。
このようにボクセルデータ(測定ボクセルデータ及び地図ボクセルデータ)における色情報を、局所的なボクセル群における色の局所自己相関を示す特徴ベクトルで表す場合においても、図8に示すステップS35での色情報同士の近似度の算定は、例えば、その81次元の特徴ベクトル同士のユークリッド距離に基づいて、距離が小さいほど近似度が高いように定めた演算(例えば図12参照)により、行うことができる。
ボクセルデータにおいて局所自己相関を示す色情報を用いることで、位置推定装置100が位置の推定を、より高精度に行えるようになる可能性がある。
[1-4-4.変形例4:大まかな位置推定に色情報を用いない例]
上述の実施の形態では、位置推定部140は、ステップS23での観測において常に、ステップS34で測定ボクセルデータ及び地図ボクセルデータにおける位置情報同士の近似度を算定し、更に、ステップS35で測定ボクセルデータ及び地図ボクセルデータにおける属性情報(具体的には色情報)同士の近似度を算定することとした。しかし、大まかな位置推定は、位置情報同士の近似度の算定のみによって粒子の尤度を求め、細かい位置推定においてのみ、位置情報同士の近似度に加えて色情報同士の近似度に基づいて粒子の尤度を求めることとしてもよい。これにより、位置推定を効率的に行うことができる。例えば、ステップS22~S24での予測、観測及びリサンプリングの繰り返しの初回は、位置情報同士の近似度のみによって粒子の尤度を求め、繰り返しの2回目以後において一定条件下で、位置情報同士の近似度のみならず属性情報(具体的には色情報)同士の近似度にも基づいて粒子の尤度を求めることとしてもよい。この一定条件は、例えば、繰り返しの何回目かを定める条件であってもよいし、前回の観測によって算定された尤度が予め定めた閾値を超えたという条件等であってもよい。
上述の実施の形態では、位置推定部140は、ステップS23での観測において常に、ステップS34で測定ボクセルデータ及び地図ボクセルデータにおける位置情報同士の近似度を算定し、更に、ステップS35で測定ボクセルデータ及び地図ボクセルデータにおける属性情報(具体的には色情報)同士の近似度を算定することとした。しかし、大まかな位置推定は、位置情報同士の近似度の算定のみによって粒子の尤度を求め、細かい位置推定においてのみ、位置情報同士の近似度に加えて色情報同士の近似度に基づいて粒子の尤度を求めることとしてもよい。これにより、位置推定を効率的に行うことができる。例えば、ステップS22~S24での予測、観測及びリサンプリングの繰り返しの初回は、位置情報同士の近似度のみによって粒子の尤度を求め、繰り返しの2回目以後において一定条件下で、位置情報同士の近似度のみならず属性情報(具体的には色情報)同士の近似度にも基づいて粒子の尤度を求めることとしてもよい。この一定条件は、例えば、繰り返しの何回目かを定める条件であってもよいし、前回の観測によって算定された尤度が予め定めた閾値を超えたという条件等であってもよい。
[1-4-5.変形例5:特定色を区別する例]
測定ボクセルデータにおける色情報と地図ボクセルデータにおける色情報との(つまり色情報同士の)近似度を算定する場合に、特定色がその近似度の算定結果へ影響する重みを、特定色以外の色とは異ならせるようにする変形例を示す。
測定ボクセルデータにおける色情報と地図ボクセルデータにおける色情報との(つまり色情報同士の)近似度を算定する場合に、特定色がその近似度の算定結果へ影響する重みを、特定色以外の色とは異ならせるようにする変形例を示す。
この変形例では、抽出部120により抽出される測定ボクセルデータにおける色情報は、色を示し、少なくとも特定色を表す特定色成分とその特定色成分以外の他色成分とを区別可能な情報である。また、地図管理部130が管理する地図ボクセルデータにおける色情報も、特定色成分と他色成分とを区別可能な情報である。そして、位置推定部140は、上述の尤度(つまり粒子及び変換演算の尤度)の算定の基礎とする、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける色情報同士の近似度を、その色情報同士における特定色成分の近似度への影響の度合いと他色成分の近似度への影響の度合いとを異ならせるように算定する。
具体的な一例としては、樹木の色及び木の葉の色に該当する特定色成分(例えばRGB値の緑(G)成分、一定の数値範囲の成分等)について、色情報同士の近似度の算定結果への影響を他色成分より低減させるように重み付けする演算により、近似度を算定する例が挙げられる。なお、位置推定部140は、特定色成分の重みをゼロにして、つまり特定色成分を除いて、他色成分のみについて色情報同士の近似度を算定することとしてもよい。このように、樹木の色及び木の葉の色を特定色として、色情報同士の近似度の算定結果に与える影響を他色より小さくすることは、樹木や木の葉の態様(外観等)が年月、季節等によって経年変化することで地図ボクセルと測定ボクセルとの適切な照合が妨げられて位置推定の精度が低下することを抑制する効果を、生じ得る。また、樹木の色及び木の葉の色の他に、人間の肌の色等を特定色としてもよい。これは、地図ボクセルには存在しない人間が多数存在する場面で位置推定の精度が低下することを抑制する効果を、生じ得る。
また、更に、位置推定部140は、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける色情報同士の近似度を、その両ボクセルのうち測定ボクセルについての位置情報が、所定位置条件を満たす場合には、その測定ボクセルについての色情報における、特定色成分の近似度への影響の度合いと、他色成分の近似度への影響の度合いとを、異ならせるように算定することとしてもよい。この所定位置条件は、例えば、位置のうち鉛直方向の成分(例えばz座標)に係る条件である。例えば、所定位置条件を、位置が数メートルより高い場合に満たすという条件とし、特定色成分を青空及び曇り空の色に該当する成分とすると、雲が流れる等により空間における高い位置の部分の態様が時刻によって変化することにより位置推定の精度が低下することを抑制し得る。
また、同じ考え方で、所定位置条件を地面から2mまでの高さとし、人間の肌の色等を特定色としてもよい。これは、地図ボクセルには存在しない人間が多数存在する場面で位置推定の精度が低下することを抑制する効果を生じ得る。
また、更に、位置推定部140は、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける色情報同士の近似度を、その両ボクセルのうち地図ボクセルについての平面度が特定条件を満たす場合には、その地図ボクセルについての色情報における、特定色成分の近似度への影響の度合いと、他色成分の近似度への影響の度合いとを、異ならせるように算定することとしてもよい。例えば、樹木や木の葉の態様(外観等)が年月、季節等によって経年変化するが、ボクセル化した際の平面度が、位置推定の参考になる平面でなく、球状や立体に近い状態になるので、特定色成分に加え、ボクセル内の平面度に応じて樹木や木の葉を区別してもよい。特定条件として平面度が球状、立体等に相当するものであること等を定めておくことがでる。
(実施の形態2)
実施の形態2では、主に、空間における移動体の位置を推定するために位置の他に、反射強度(電磁波の反射強度)を用いる位置推定方法を実行する位置推定装置100aについて説明する。
実施の形態2では、主に、空間における移動体の位置を推定するために位置の他に、反射強度(電磁波の反射強度)を用いる位置推定方法を実行する位置推定装置100aについて説明する。
実施の形態1で示した位置推定装置100は、電磁波の受波により検知される測定点の属性の一種である色を検知し、位置と色とを用いて位置推定を行ったのに対して、位置推定装置100aは、その属性の別の一種である反射強度を検知し、位置と反射強度を用いて位置推定を行う。なお、実施の形態1と同様のものについては本実施形態でも同じ名称を用いる。
[2-1.構成]
位置推定装置100aは、図1に示した位置推定装置100と同様に、例えば測定装置101を取り付けた移動体102である。ここで特に説明しない点については、位置推定装置100aは、実施の形態1の位置推定装置100と同様である。測定装置101は、例えば、レーザーを用いた3Dスキャナ等の、周囲の局所空間における複数の点(測定点)の位置、及び、位置推定のために送出した電磁波の反射強度(レーザーの反射強度)を測定する装置である。本実施の形態では測定装置101は、実施の形態1とは異なり必ずしも色を測定する機能を有する必要はない。測定点の反射強度は、例えば、波長1000nm~1550nmの範囲のレーザー光を測定点に照射したときの反射光(電磁波の一種)の受光強度として測定される。この受光強度が、地面や建物等といった対象物の素材によって変化するのを利用する。
位置推定装置100aは、図1に示した位置推定装置100と同様に、例えば測定装置101を取り付けた移動体102である。ここで特に説明しない点については、位置推定装置100aは、実施の形態1の位置推定装置100と同様である。測定装置101は、例えば、レーザーを用いた3Dスキャナ等の、周囲の局所空間における複数の点(測定点)の位置、及び、位置推定のために送出した電磁波の反射強度(レーザーの反射強度)を測定する装置である。本実施の形態では測定装置101は、実施の形態1とは異なり必ずしも色を測定する機能を有する必要はない。測定点の反射強度は、例えば、波長1000nm~1550nmの範囲のレーザー光を測定点に照射したときの反射光(電磁波の一種)の受光強度として測定される。この受光強度が、地面や建物等といった対象物の素材によって変化するのを利用する。
図18は、位置推定装置100aの機能ブロック図である。位置推定装置100aは、同図に示すように、測定部110a、抽出部120a、地図管理部130a、及び、位置推定部140aを有する。以下、各機能部について説明する。
測定部110aは、移動体102の周囲の局所空間における複数の点(つまり測定点)各々についての、位置と反射強度とを測定する機能を有し、測定により測定結果である測定点データを取得する。測定部110aは、例えば、測定装置101、及び、位置推定装置100aのコンピュータにおける通信I/F、制御プログラムを実行するプロセッサ等により実現される。測定部110aは、反射強度を測定する点で、色を測定する上述の測定部110とは測定対象が異なるが、測定対象の差異以外について、ここで特に説明しない点は測定部110と同様である。測定部110aにより取得される測定点データは、図19に例示するように、位置を3次元座標x,y,zで表し、反射強度を0~1の範囲の値で正規化して表したものである。なお、図19は、一行毎に一測定点についての測定点データを示している。
抽出部120aは、測定部110aによる測定結果(測定点データ)から、移動体102の周囲の局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報(具体的には反射強度を表す反射強度情報)を抽出する機能を有する。抽出部120aは、位置推定装置100aのコンピュータにおける、制御プログラムを実行するプロセッサ等により実現される。抽出部120aは、測定ボクセルについての測定ボクセルデータとして位置情報及び反射強度情報を抽出する点で、位置情報及び色情報を抽出する上述の抽出部120とは取り扱う情報が異なるが、その差異以外について、ここで特に説明しない点は、抽出部120と同様である。
抽出部120aによる測定ボクセルデータ(位置情報及び反射強度情報)における反射強度情報の抽出は、例えば、各測定ボクセルについて、その測定ボクセルについての反射強度情報を、測定部110aにより測定されたその測定ボクセル内の各点についての反射強度の平均値を示すように定めることにより、行われる。一例としては、抽出部120aは、測定ボクセル内に含まれる各測定点についての測定点データにおける反射強度(0~1の範囲の値)を平均化してその測定ボクセルについての測定ボクセルデータにおける反射強度情報を、算定する。図20は、測定ボクセルデータの一例を示す図であり、一行毎に一測定ボクセルについての測定ボクセルデータを示している。図20に示すように、測定ボクセルデータは、局所空間に対応付けた測定ボクセル群の3次元配列における該当の測定ボクセルの配置を示すインデックス(index)と、その測定ボクセル内の各測定点データの位置の平均値を示す位置情報と、その測定ボクセル内の各測定点データの反射強度の平均値である平均反射強度を示す反射強度情報とを含む。
地図管理部130aは、地図(つまり空間を表す3次元座標系を定めた地図)で表される空間と対応付けて、3次元状に配列した地図ボクセル群における各地図ボクセルについての地図ボクセルデータ、つまり、位置情報及び属性情報(具体的には反射強度を表す反射強度情報)を、管理する機能を有する。地図管理部130aは、例えば、位置推定装置100aのコンピュータにおけるメモリ等の記憶媒体、通信I/F、制御プログラムを実行するプロセッサ等により実現される。
地図管理部130aは、地図ボクセルデータとして位置情報及び反射強度情報を管理する点で、位置情報及び色情報を管理する上述の地図管理部130とは管理する情報が異なるが、その差異以外について、ここで特に説明しない点は、地図管理部130と同様である。地図管理部130aは、空間を分割してなる地図ボクセル群における各地図ボクセルについての地図ボクセルデータ(位置情報及び反射強度情報)を含む地図情報を管理している。地図情報は、例えば、空間における各測定点の位置及び属性(具体的には反射強度)を測定してその測定結果に基づいて、各地図ボクセルについての地図ボクセルデータ(位置情報及び反射強度情報)を抽出することで生成される。本実施の形態では、地図ボクセルデータのデータ構成は、図20に示す測定ボクセルデータと同様であるものとする。即ち、地図ボクセルデータは、地図ボクセルの配置を示すインデックス(index)とその地図ボクセルに対応する、空間の一部における各点(つまり各場所)の位置の測定結果の平均値を示す位置情報と、その地図ボクセルに対応する、空間の一部における各点(つまり各場所)についての、その点からの電磁波の受波により検知される属性としての反射強度の測定結果(0~1の範囲の値)の平均値を示す反射強度情報とを含むものとする。
位置推定部140aは、地図管理部130aが管理する地図情報の地図ボクセルデータ(位置情報、及び、属性情報としての反射強度情報)に基づき、抽出部120aが抽出した測定ボクセルデータ(位置情報、及び、属性情報としての反射強度情報)に応じて、移動体102の位置を推定する機能を有する。位置推定部140aは、例えば、位置推定装置100aのコンピュータにおけるメモリ、制御プログラムを実行するプロセッサ等により実現される。位置推定部140aは、地図ボクセル及び測定ボクセルに係る位置情報及び反射強度情報を用いて位置推定を行う点で、地図ボクセル及び測定ボクセルに係る位置情報及び色情報を用いて位置推定を行う上述の位置推定部140とは取り扱う情報が異なるが、その差異以外について、ここで特に説明しない点は、位置推定部140と同様である。
位置推定部140aは、測定ボクセルについての測定ボクセルデータにおける位置情報が、地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定する。この変換演算を特定することにより、移動体102の位置が推定される。この移動体102の位置を推定する方法、つまり、変換演算を推定的に特定する方法としては、例えば、パーティクルフィルタを用いて予測、観測、及び、リサンプリングの手順を繰り返す方法(図7参照)を用いることができる。位置推定部140aは、地図管理部130aが管理する各地図ボクセルについての位置情報と、候補としての複数の変換演算各々を用いて変換した、抽出部120aが抽出した各測定ボクセルについての位置情報との近似度を算定する。そして、位置推定部140aは、その変換演算毎に、算定した近似度が最も高いところの地図ボクセル及び測定ボクセルの各組における両ボクセルについての位置情報同士の近似度及び属性情報(つまり反射強度情報)同士の近似度に基づいて、尤度を算定する。候補としての複数の変換演算のうち算定した尤度が最も高い変換演算に応じて、位置推定部140aは、移動体102の位置の推定を行う。ここで、位置を示す位置情報同士の近似度或いは反射強度を示す反射強度情報同士の近似度は、位置或いは反射強度が近似する度合いの高さを示し、同一であれば最高値となる。なお、位置推定部140aは、複数の変換演算各々を用いて変換した各測定ボクセルに係る近似度の算定に基づく、尤度の算定及び移動体の位置の推定を、繰り返し行い、尤度の算定結果に基づいて次に変換に用いる複数の変換演算を定める。
[2-2.動作]
以下、上述の構成を備える位置推定装置100aの動作(つまり位置推定方法)について説明する。
以下、上述の構成を備える位置推定装置100aの動作(つまり位置推定方法)について説明する。
測定部110aが、移動体102の周囲の局所空間における複数の点の位置及び反射強度を測定して測定点データを取得する。
抽出部120aは、上述の抽出部120と同様に図6に示すステップS11~S17での処理を行う。但し、ステップS16では、抽出部120aは、色情報の更新の代わりに、ステップS13で取得した測定点データにおける反射強度を用いて、ステップS14で特定した測定ボクセルについての反射強度情報を更新する。これにより、メモリ等の記憶媒体に一時的に保持される、図20に示すような測定ボクセルデータ(位置情報及び反射強度情報)が、更新される。
位置推定部140aは、測定ボクセルについての測定ボクセルデータにおける位置情報が、地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定することで、推定した変換演算に基づいて位置の推定を行う。このための一手法としてパーティクルフィルタを用いる。即ち、尤度の高い変換演算を推定する手段として、粒子を用いる。粒子毎に変換演算が特定される。
位置推定部140aは、上述の位置推定部140と同様に図7及び図8に示すステップS21~S25及びステップS31~S39での処理を行う。但しステップS35では、位置推定部140aは、色情報同士の近似度の代わりに、ステップS33で特定した地図ボクセルと着目中の測定ボクセルとの組に係る地図ボクセルデータにおける反射強度情報と測定ボクセルデータにおける反射強度情報との近似度を算定して、その近似度を尤度合計値に加算する。この両ボクセル(特定した地図ボクセルと着目中の測定ボクセル)についての反射強度情報同士の近似度は、例えば、その両反射強度情報が示す反射強度(0~1の範囲の値である反射強度の平均値、つまり平均反射強度)間の、差分Rに基づいて、差分Rが小さいほど近似度が高くなるように予め定めた計算式等に基づいて算定し得る。
図21は、地図ボクセルについての反射強度情報が示す平均反射強度331と測定ボクセルについての反射強度情報が示す平均反射強度231との差分Rに基づいて近似度としてReflect(R)を算定する近似度算定の一例を示している。位置推定部140aは、例えば、差分Rの各反射強度を示す反射強度情報同士の近似度を、図21に示す式のように、Reflect(R)として算定してもよい。このように、ステップS34で位置情報に係る近似度を尤度合計値に加算し、ステップS35において反射強度情報に係る近似度を尤度合計値に加算したが、これらは、地図ボクセルと測定ボクセルとの間の位置情報と反射強度情報とに係る相関に基づいて最終的に粒子毎の尤度を算定するための一例に過ぎない。ステップS34及びステップS35で位置情報に係る近似度と反射強度情報に係る近似度とを尤度合計値に加算する代わりに、例えば、位置情報に係る近似度と反射強度情報に係る近似度との積を尤度合計値に加算することとしてもよいし、例えば、尤度への影響の重みを位置情報と反射強度情報とで異ならせるために、係数を乗じた位置情報に係る近似度と、反射強度情報に係る近似度とを尤度合計値に加算してもよい。
ステップS39では、位置推定部140aは、最大尤度の粒子の粒子データが示すその粒子の成分(3次元座標及び回転角度)を、位置推定結果として出力することになる。
なお、ステップS39で、位置推定部140aは、最大尤度の粒子の成分の代わりに、各粒子の成分(3次元座標及び回転角度)についての、粒子の尤度で重み付けした加重平均の結果を、位置推定結果として出力することとしてもよい。各粒子の尤度を粒子全体の尤度合計値で除算して正規化することで加重平均を求める。
[2-3.効果等]
上述の位置推定装置100aによれば、位置のみならず反射強度を測定し、ボクセルについての位置のみならず反射強度情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、構造物の材質により反射強度が異なるので、移動体の位置を迅速かつ適切に推定できる可能性が高い。
上述の位置推定装置100aによれば、位置のみならず反射強度を測定し、ボクセルについての位置のみならず反射強度情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、構造物の材質により反射強度が異なるので、移動体の位置を迅速かつ適切に推定できる可能性が高い。
[2-4.変形例]
測定ボクセルデータにおける属性情報としての反射強度情報と地図ボクセルデータにおける属性情報としての反射強度情報との(つまり反射強度情報同士の)近似度を算定する場合に、所定強度より高い反射強度がその近似度の算定結果へ影響する重みを、所定強度より高くない反射強度とは異ならせるようにする変形例を示す。
測定ボクセルデータにおける属性情報としての反射強度情報と地図ボクセルデータにおける属性情報としての反射強度情報との(つまり反射強度情報同士の)近似度を算定する場合に、所定強度より高い反射強度がその近似度の算定結果へ影響する重みを、所定強度より高くない反射強度とは異ならせるようにする変形例を示す。
この変形例では、位置推定部140aは、上述の尤度(つまり粒子及び変換演算の尤度)の算定の基礎とする、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける反射強度情報同士の近似度を、その反射強度情報が所定強度より高い反射強度を示す場合の近似度への影響の度合いと、その反射強度情報が所定強度より高くない反射強度を示す場合の近似度への影響の度合いとを異ならせるように算定する。具体的な一例としては、白又は黄色等の反射シートによる道路表示(路面の白線等)の反射強度より少し低い反射強度を所定強度として定め、所定強度より高い反射強度は所定強度より高くない反射強度に対して近似度に大きく影響するように重み付けする演算により、近似度を算定する例が挙げられる。なお、位置推定部140aは、所定強度より高い反射強度を示す反射強度情報同士以外は、近似度をゼロ或いは略ゼロと算定することとしてもよい。これにより、道路表示に基づく位置推定を精度良く行える可能性がある。
また、更に、位置推定部140aは、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける反射強度情報同士の近似度を、その両ボクセルのうち測定ボクセルについての位置情報が、所定位置条件を満たす場合には、その測定ボクセルについての反射強度情報が所定強度より高い反射強度を示すときの近似度への影響の度合いを、その反射強度情報が所定強度より高くない反射強度を示すときの近似度への影響の度合いより高めるように算定することとしてもよい。この所定位置条件は、例えば、位置のうち鉛直方向の成分(例えばz座標)に係る条件である。例えば、所定位置条件を、位置が路面に近い高さの場合に満たすという条件とし、道路表示に基づく位置推定をより適切に行えるようにしてもよい。
(実施の形態3)
実施の形態3では、主に、空間における移動体の位置を推定するために位置の他に、温度を用いる位置推定方法を実行する位置推定装置100bについて説明する。
実施の形態3では、主に、空間における移動体の位置を推定するために位置の他に、温度を用いる位置推定方法を実行する位置推定装置100bについて説明する。
実施の形態1で示した位置推定装置100は、電磁波の受波により検知される測定点の属性の一種である色を検知し、位置と色とを用いて位置推定を行ったのに対して、位置推定装置100bは、その属性の別の一種である温度を検知し、位置と温度を用いて位置推定を行う。なお、実施の形態1と同様のものについては本実施形態でも同じ名称を用いる。
[3-1.構成]
位置推定装置100bは、図1に示した位置推定装置100と同様に、例えば測定装置101を取り付けた移動体102である。ここで特に説明しない点については、位置推定装置100bは、実施の形態1の位置推定装置100と同様である。測定装置101は、例えば、3Dスキャナ及びサーモグラフィー装置の組み合わせ等の、周囲の局所空間における複数の点(測定点)の位置及び温度を測定する装置である。例えば測定装置101が3Dスキャナ及びサーモグラフィー装置の組み合わせである場合には予め両装置の位置合わせがなされている。本実施の形態では測定装置101は、実施の形態1とは異なり必ずしも色を測定する機能を有する必要はない。測定点の温度は、例えば、波長2μm~14μmの赤外線(電磁波の一種)を検出することで測定される。この温度が、地面や建物等の対象物の素材により変化するのを利用する。
位置推定装置100bは、図1に示した位置推定装置100と同様に、例えば測定装置101を取り付けた移動体102である。ここで特に説明しない点については、位置推定装置100bは、実施の形態1の位置推定装置100と同様である。測定装置101は、例えば、3Dスキャナ及びサーモグラフィー装置の組み合わせ等の、周囲の局所空間における複数の点(測定点)の位置及び温度を測定する装置である。例えば測定装置101が3Dスキャナ及びサーモグラフィー装置の組み合わせである場合には予め両装置の位置合わせがなされている。本実施の形態では測定装置101は、実施の形態1とは異なり必ずしも色を測定する機能を有する必要はない。測定点の温度は、例えば、波長2μm~14μmの赤外線(電磁波の一種)を検出することで測定される。この温度が、地面や建物等の対象物の素材により変化するのを利用する。
図22は、位置推定装置100bの機能ブロック図である。位置推定装置100bは、同図に示すように、測定部110b、抽出部120b、地図管理部130b、及び、位置推定部140bを有する。以下、各機能部について説明する。
測定部110bは、移動体102の周囲の局所空間における複数の点(つまり測定点)各々についての、位置と温度とを測定する機能を有し、測定により測定結果である測定点データを取得する。測定部110bは、例えば、測定装置101、及び、位置推定装置100bのコンピュータにおける通信I/F、制御プログラムを実行するプロセッサ等により実現される。測定部110bは、温度を測定する点で、色を測定する上述の測定部110とは測定対象が異なるが、測定対象の差異以外について、ここで特に説明しない点は測定部110と同様である。測定部110bにより取得される測定点データは、図23に例示するように、位置を3次元座標x,y,zで表し、温度を数値(例えば絶対温度の値)で表したものである。なお、図23は、一行毎に一測定点についての測定点データを示している。
抽出部120bは、測定部110bによる測定結果(測定点データ)から、移動体102の周囲の局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報(具体的には温度を表す温度情報)を抽出する機能を有する。抽出部120bは、位置推定装置100bのコンピュータにおける、制御プログラムを実行するプロセッサ等により実現される。抽出部120bは、測定ボクセルについての測定ボクセルデータとして位置情報及び温度情報を抽出する点で、位置情報及び色情報を抽出する上述の抽出部120とは取り扱う情報が異なるが、その差異以外について、ここで特に説明しない点は、抽出部120と同様である。
抽出部120bによる測定ボクセルデータ(位置情報及び温度情報)における温度情報の抽出は、例えば、各測定ボクセルについて、その測定ボクセルについての温度情報を、測定部110bにより測定されたその測定ボクセル内の各点についての温度の平均値を示すように定めることにより、行われる。一例としては、抽出部120bは、測定ボクセル内に含まれる各測定点についての測定点データにおける温度を平均化してその測定ボクセルについての測定ボクセルデータにおける温度情報を、算定する。
図24は、測定ボクセルデータの一例を示す図であり、一行毎に一測定ボクセルについての測定ボクセルデータを示している。図24に示すように、測定ボクセルデータは、局所空間に対応付けた測定ボクセル群の3次元配列における該当の測定ボクセルの配置を示すインデックス(index)と、その測定ボクセル内の各測定点データの位置の平均値を示す位置情報と、その測定ボクセル内の各測定点データの温度の平均値である平均温度を示す温度情報とを含む。
地図管理部130bは、地図(つまり空間を表す3次元座標系を定めた地図)で表される空間と対応付けて、3次元状に配列した地図ボクセル群における各地図ボクセルについての地図ボクセルデータ、つまり、位置情報及び属性情報(具体的には温度を表す温度情報)を、管理する機能を有する。地図管理部130bは、例えば、位置推定装置100bのコンピュータにおけるメモリ等の記憶媒体、通信I/F、制御プログラムを実行するプロセッサ等により実現される。地図管理部130bは、地図ボクセルデータとして位置情報及び温度情報を管理する点で、位置情報及び色情報を管理する上述の地図管理部130とは管理する情報が異なるが、その差異以外について、ここで特に説明しない点は、地図管理部130と同様である。
地図管理部130bは、空間を分割してなる地図ボクセル群における各地図ボクセルについての地図ボクセルデータ(位置情報及び温度情報)を含む地図情報を管理している。地図情報は、例えば、空間における各測定点の位置及び属性(具体的には温度)を測定してその測定結果に基づいて、各地図ボクセルについての地図ボクセルデータ(位置情報及び温度情報)を抽出することで生成される。本実施の形態では、地図ボクセルデータのデータ構成は、図24に示す測定ボクセルデータと同様であるものとする。即ち、地図ボクセルデータは、地図ボクセルの配置を示すインデックス(index)とその地図ボクセルに対応する、空間の一部における各点(つまり各場所)の位置の測定結果の平均値を示す位置情報と、その地図ボクセルに対応する、空間の一部における各点(つまり各場所)についての、その点からの電磁波の受波により検知される属性としての温度の測定結果の平均値を示す温度情報とを含むものとする。
位置推定部140bは、地図管理部130bが管理する地図情報の地図ボクセルデータ(位置情報、及び、属性情報としての温度情報)に基づき、抽出部120bが抽出した測定ボクセルデータ(位置情報、及び、属性情報としての温度情報)に応じて、移動体102の位置を推定する機能を有する。位置推定部140bは、例えば、位置推定装置100bのコンピュータにおけるメモリ、制御プログラムを実行するプロセッサ等により実現される。位置推定部140bは、地図ボクセル及び測定ボクセルに係る位置情報及び温度情報を用いて位置推定を行う点で、地図ボクセル及び測定ボクセルに係る位置情報及び色情報を用いて位置推定を行う上述の位置推定部140とは取り扱う情報が異なるが、その差異以外について、ここで特に説明しない点は、位置推定部140と同様である。位置推定部140bは、測定ボクセルについての測定ボクセルデータにおける位置情報が、地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定する。この変換演算を特定することにより、移動体102の位置が推定される。この移動体102の位置を推定する方法、つまり、変換演算を推定的に特定する方法としては、例えば、パーティクルフィルタを用いて予測、観測、及び、リサンプリングの手順を繰り返す方法(図7参照)を用いることができる。
位置推定部140bは、地図管理部130bが管理する各地図ボクセルについての位置情報と、候補としての複数の変換演算各々を用いて変換した、抽出部120bが抽出した各測定ボクセルについての位置情報との近似度を算定する。そして、位置推定部140bは、その変換演算毎に、算定した近似度が最も高いところの地図ボクセル及び測定ボクセルの各組における両ボクセルについての位置情報同士の近似度及び属性情報(つまり温度情報)同士の近似度に基づいて、尤度を算定する。候補としての複数の変換演算のうち算定した尤度が最も高い変換演算に応じて、位置推定部140bは、移動体102の位置の推定を行う。ここで、位置を示す位置情報同士の近似度或いは温度を示す温度情報同士の近似度は、位置或いは温度が近似する度合いの高さを示し、同一であれば最高値となる。なお、位置推定部140bは、複数の変換演算各々を用いて変換した各測定ボクセルに係る近似度の算定に基づく、尤度の算定及び移動体の位置の推定を、繰り返し行い、尤度の算定結果に基づいて次に変換に用いる複数の変換演算を定める。
[3-2.動作]
以下、上述の構成を備える位置推定装置100bの動作(つまり位置推定方法)について説明する。
以下、上述の構成を備える位置推定装置100bの動作(つまり位置推定方法)について説明する。
測定部110bが、移動体102の周囲の局所空間における複数の点の位置及び温度を測定して測定点データを取得する。
抽出部120bは、上述の抽出部120と同様に図6に示すステップS11~S17での処理を行う。但し、ステップS16では、抽出部120bは、色情報の更新の代わりに、ステップS13で取得した測定点データにおける温度を用いて、ステップS14で特定した測定ボクセルについての温度情報を更新する。これにより、メモリ等の記憶媒体に一時的に保持される、図24に示すような測定ボクセルデータ(位置情報及び温度情報)が、更新される。
位置推定部140bは、測定ボクセルについての測定ボクセルデータにおける位置情報が、地図ボクセルについての地図ボクセルデータにおける位置情報と近似するように、測定ボクセルデータの位置情報を地図に係る3次元座標系に変換するための変換演算を、逐次、推定的に特定することで、推定した変換演算に基づいて位置の推定を行う。このための一手法としてパーティクルフィルタを用いる。即ち、尤度の高い変換演算を推定する手段として、粒子を用いる。粒子毎に変換演算が特定される。位置推定部140bは、上述の位置推定部140と同様に図7及び図8に示すステップS21~S25及びステップS31~S39での処理を行う。但しステップS35では、位置推定部140bは、色情報同士の近似度の代わりに、ステップS33で特定した地図ボクセルと着目中の測定ボクセルとの組に係る地図ボクセルデータにおける温度情報と測定ボクセルデータにおける温度情報との近似度を算定して、その近似度を尤度合計値に加算する。この両ボクセル(特定した地図ボクセルと着目中の測定ボクセル)についての温度情報同士の近似度は、例えば、その両温度情報が示す温度(つまり平均温度)間の、差分Tに基づいて、差分Tが小さいほど近似度が高くなるように予め定めた計算式等に基づいて算定し得る。
図25は、地図ボクセルについての温度情報が示す平均温度341と測定ボクセルについての温度情報が示す平均温度241との差分Tに基づいて近似度としてTemp(T)を算定する近似度算定の一例を示している。位置推定部140bは、例えば、差分Tの各温度を示す温度情報同士の近似度を、図25に示す式のように、Temp(T)として算定してもよい。このように、ステップS34で位置情報に係る近似度を尤度合計値に加算し、ステップS35において温度情報に係る近似度を尤度合計値に加算したが、これらは、地図ボクセルと測定ボクセルとの間の位置情報と温度情報とに係る相関に基づいて最終的に粒子毎の尤度を算定するための一例に過ぎない。ステップS34及びステップS35で位置情報に係る近似度と温度情報に係る近似度とを尤度合計値に加算する代わりに、例えば、位置情報に係る近似度と温度情報に係る近似度との積を尤度合計値に加算することとしてもよいし、例えば、尤度への影響の重みを位置情報と温度情報とで異ならせるために、係数を乗じた位置情報に係る近似度と、温度情報に係る近似度とを尤度合計値に加算してもよい。
ステップS39では、位置推定部140bは、最大尤度の粒子の粒子データが示すその粒子の成分(3次元座標及び回転角度)を、位置推定結果として出力することになる。
なお、ステップS39で、位置推定部140bは、最大尤度の粒子の成分の代わりに、各粒子の成分(3次元座標及び回転角度)についての、粒子の尤度で重み付けした加重平均の結果を、位置推定結果として出力することとしてもよい。各粒子の尤度を粒子全体の尤度合計値で除算して正規化することで加重平均を求める。
[3-3.効果等]
上述の位置推定装置100bによれば、位置のみならず温度を測定し、ボクセルについての位置のみならず温度情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、構造物の材質により温度が異なるので、移動体の位置を迅速かつ適切に推定できる可能性が高い。
上述の位置推定装置100bによれば、位置のみならず温度を測定し、ボクセルについての位置のみならず温度情報を用いて位置推定を行うので、同じような形状の構造物が連続的に配置されているような環境においても、構造物の材質により温度が異なるので、移動体の位置を迅速かつ適切に推定できる可能性が高い。
[3-4.変形例]
測定ボクセルデータにおける属性情報としての温度情報と地図ボクセルデータにおける属性情報としての温度情報との(つまり温度情報同士の)近似度を算定する場合に、人間の体温に相当する所定温度範囲内の温度を示すときより、所定温度範囲外の温度を示すときにはその近似度の算定結果へ影響の度合いを高めるようにする変形例を示す。
測定ボクセルデータにおける属性情報としての温度情報と地図ボクセルデータにおける属性情報としての温度情報との(つまり温度情報同士の)近似度を算定する場合に、人間の体温に相当する所定温度範囲内の温度を示すときより、所定温度範囲外の温度を示すときにはその近似度の算定結果へ影響の度合いを高めるようにする変形例を示す。
この変形例では、位置推定部140bは、上述の尤度(つまり粒子及び変換演算の尤度)の算定の基礎とする、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける温度情報同士の近似度を、その温度情報が人間の体温に相当する温度範囲(例えば絶対温度308~313K)内を示す場合の近似度への影響の度合いと、その温度情報がその温度範囲外を示す場合の近似度への影響の度合いとを異ならせるように算定する。具体的な一例としては、人間の体温に相当する温度範囲内について、その温度範囲外に対して近似度に大きく影響しないように重み付けする演算により、近似度を算定する例が挙げられる。なお、位置推定部140bは、人間の体温に相当する温度範囲の外を示す温度情報同士以外は、近似度をゼロ或いは略ゼロと算定することとしてもよい。このように人間の体温に相当する温度範囲を区別して、時刻によって移動する人間を測定結果から除くことで、地図ボクセルと測定ボクセルとの適切な照合が妨げられて位置推定の精度が低下することを抑制する効果を、生じ得る。
また、更に、位置推定部140bは、測定ボクセル及び地図ボクセルに係る測定ボクセルデータ及び地図ボクセルデータにおける温度情報同士の近似度を、その両ボクセルのうち測定ボクセルについての位置情報が、所定位置条件を満たす場合には、その測定ボクセルについての温度情報が人間の体温に相当する温度範囲を示すときの近似度への影響の度合いを、その温度情報がその温度範囲の外を示すときの近似度への影響の度合いより低減するように算定することとしてもよい。この所定位置条件は、例えば、位置のうち鉛直方向の成分(例えばz座標)に係る条件である。例えば、所定位置条件を、概ね人間が所在し得る、位置が2メートル以下の高さの場合に満たすという条件としてもよい。これにより、例えば、2メートルより高い場所における、人間の体温に相当する温度範囲の温度の測定結果を、位置推定において有効に利用し得る。
(他の実施の形態)
以上のように、本出願において開示する技術の例示として、実施の形態1~3を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。
以上のように、本出願において開示する技術の例示として、実施の形態1~3を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。
上述の実施の形態1の位置推定装置100に係る変形例1~4の各々は、実施の形態2或いは実施の形態3に係る位置推定装置100a、100bにも適用し得る。このうち変形例2~4の適用においては、例えば属性情報としての色情報を反射強度情報或いは温度情報に、属性としての色を反射強度或いは温度に、それぞれ置き換えるとよい。
また、上述の実施の形態では、測定装置101が移動体102に取り付けられる例を示したが、移動体102の周囲に所在するものであれば必ずしも取り付けられなくてもよい。
また、上述の実施の形態では、位置推定装置100、100a、100bは、測定装置101を取り付けた移動体102であることとしたがこれは一例に過ぎず、位置推定装置100、100a、100bは移動体102の一部分(或いは移動体102内に搭載される装置)と測定装置101とで構成されるものとしてもよいし、移動体102に付随した測定装置101と、移動体102から離れた、測定装置101から測定結果を受信可能なコンピュータとで構成されていてもよい。
また、上述の実施の形態で示した色は、必ずしも可視光の波長範囲の全域で検知される色である必要はなく、例えばフィルタを用いて一部分に限定した光で検知されるものであってもよい。また、色は、必ずしもカラーである必要はない。
また、上述の実施の形態で示した地図ボクセルを、異なる時刻で複数回作成し、地図ボクセルについての各種情報の時間変化の割合を、地図ボクセルデータに含ませてもよい。例えば、各地図ボクセルについて、位置情報だけでなく、温度や電磁波の反射強度等といった属性情報の時間変化を持たせることで、地面、建物等の区別、或いは、樹木、木の葉といった経年変化する対象物の区別が可能になる。一例として、樹木や木の葉等の経年変化する対象物は、位置情報が時間変化する。また、一例として、アスファルト、コンクリート、芝生の順番で気温変化に対する温度変化が大きい現象を利用できる。また一例として、壁面や道路面に草等の植物が生息する場合に、位置情報はあまり変化しないが、植物の面積に応じて、レーザー等の反射強度が変化する。
また、上述の実施の形態では、測定ボクセルと地図ボクセルとを対応付ける変換演算として適切なものを尤度に基づき推定するために、パーティクルフィルタを用いる例を示したが、これは一手法に過ぎない。例えば、2つの点群の間で、対応する点の組を求めて、その対応する点の距離の最小二乗和に基づいて位置を求めるICP(Iterative Closest Point)アルゴリズムを用いてもよい。
また、上述の実施の形態で示した地図情報は、地図ボクセルデータのみで構成されていてもよいし、測定した測定点データ等を含んで構成されていてもよい。
また、位置推定装置100、100a、100bにおける各機能構成要素(機能ブロック)は、IC(Integrated Circuit)、LSI(Large Scale Integration)等の半導体装置により個別に1チップ化されてもよいし、一部又は全部を含むように1チップ化されてもよい。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
また、上述した各種処理(例えば図6~8に示す手順等)の全部又は一部は、電子回路等のハードウェアにより実現されても、ソフトウェアを用いて実現されてもよい。なお、ソフトウェアによる処理は、位置推定装置に含まれるプロセッサがメモリに記憶された制御プログラムを実行することにより実現されるものである。また、その制御プログラムを記録媒体に記録して頒布や流通させてもよい。例えば、頒布された制御プログラムを位置推定装置にインストールして、その位置推定装置のプロセッサに実行させることで、その位置推定装置に各種処理(図6~8に示す手順等)を行わせることが可能となる。この位置推定装置は、例えば測定装置を含まなくてもよく、測定装置による測定結果を取得して位置推定を行うコンピュータであってもよい。
また、上述した実施の形態で示した構成要素及び機能を任意に組み合わせることで実現される形態も本開示の範囲に含まれる。
本開示は、移動体の位置情報を推定する装置において適用可能である。
1a、1b 建物
4a~4e、5a~5e 粒子
100、100a、100b 位置推定装置
101 測定装置
102 移動体
110、110a、110b 測定部
120、120a、120b 抽出部
130、130a、130b 地図管理部
140、140a、140b 位置推定部
201a、201b 測定点データ
202a、202b、211、220、311 ボクセル
203a、203b ボクセルデータ
215~217、315~317 ヒストグラム
221、222 サブボクセル
402~406 粒子状態
4a~4e、5a~5e 粒子
100、100a、100b 位置推定装置
101 測定装置
102 移動体
110、110a、110b 測定部
120、120a、120b 抽出部
130、130a、130b 地図管理部
140、140a、140b 位置推定部
201a、201b 測定点データ
202a、202b、211、220、311 ボクセル
203a、203b ボクセルデータ
215~217、315~317 ヒストグラム
221、222 サブボクセル
402~406 粒子状態
Claims (21)
- 空間における移動体の位置を推定する位置推定装置であって、
前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定部と、
前記測定部による測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出部と、
地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理部と、
前記地図管理部が管理する前記位置情報及び前記属性情報に基づき、前記抽出部が抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定部とを備える
位置推定装置。 - 前記位置推定部は、
前記地図管理部が管理する前記空間に対応する前記各ボクセルについての位置情報と、前記局所空間の3次元座標系を前記空間の3次元座標系に変換するための複数の変換演算各々を用いて変換した、前記抽出部が抽出した前記局所空間に対応する前記各ボクセルについての位置情報との近似度を算定し、
前記変換演算毎に、算定した前記近似度が最も高いところの前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における両ボクセルについての位置情報同士の近似度及び属性情報同士の近似度に基づいて尤度を算定し、
前記複数の変換演算のうち算定した前記尤度が最も高い変換演算又は算定した前記尤度に応じて加重平均した変換演算に応じて前記移動体の位置の前記推定を行う
請求項1記載の位置推定装置。 - 前記位置推定部は、前記複数の変換演算各々を用いて変換した前記局所空間に対応する前記各ボクセルに係る前記近似度の前記算定に基づく、前記尤度の前記算定及び前記移動体の位置の前記推定を、繰り返し行い、前記尤度の算定結果に基づいて次に前記変換に用いる前記複数の変換演算を定める
請求項2記載の位置推定装置。 - 前記位置推定部は、
前記地図管理部が管理する前記空間に対応する前記各ボクセルについての位置情報と、前記局所空間の3次元座標系を前記空間の3次元座標系に変換するための複数の変換演算各々を用いて変換した、前記抽出部が抽出した前記局所空間に対応する前記各ボクセルについての位置情報との近似度を算定し、
前記変換演算毎に、算定した前記近似度が最も高いところの前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における両ボクセルについての位置情報同士の近似度に基づいて尤度を算定し、
前記複数の変換演算のうち算定した尤度が最も高い変換演算又は算定した尤度に応じて加重平均した変換演算に応じて前記移動体の位置の前記推定を行い、
前記複数の変換演算各々を用いて変換した前記局所空間に対応する前記各ボクセルに係る前記近似度の前記算定に基づく、前記尤度の前記算定及び前記移動体の位置の前記推定を、繰り返し行い、前記尤度の算定結果に基づいて次に前記変換に用いる前記複数の変換演算を定め、当該繰り返しの初回以外において一定条件下で、前記尤度の前記算定を、前記両ボクセルについての前記位置情報同士の前記近似度に加えて当該両ボクセルについての前記属性情報同士の近似度にも基づいて、行う
請求項1記載の位置推定装置。 - 前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルの位置情報を、前記測定部により測定された当該ボクセル内の各点についての位置の平均値を示すように定めることにより、行われ、
前記地図管理部により管理される前記各ボクセルについての前記位置情報は、該当のボクセルに対応する前記空間の一部における複数の点についての位置の平均値を示す
請求項2~4のいずれか一項に記載の位置推定装置。 - 前記抽出部が抽出する、前記局所空間に対応する前記各ボクセルについての前記位置情報、又は、前記地図管理部が管理する、前記空間に対応する前記各ボクセルについての前記位置情報は、更に、当該ボクセル内の各点の位置に基づいて定めた分散共分散行列で特定される平面を示し、
前記位置推定部は、前記位置情報同士の近似度を、当該位置情報同士の一方が示す位置の平均値と他方が示す平面との距離に応じて特定することにより、前記尤度の前記算定を行う
請求項5記載の位置推定装置。 - 前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての属性に基づくヒストグラムを示すように定めることにより、行われ、
前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、当該点からの電磁波の受波で検知される属性に基づくヒストグラムを示し、
前記位置推定部は、前記属性情報同士の近似度を、当該属性情報同士の一方が示す前記ヒストグラムと他方が示す前記ヒストグラムとの距離に応じて特定することにより、前記尤度の前記算定を行う
請求項2~6のいずれか一項に記載の位置推定装置。 - 前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての属性の平均値を示すように定めることにより、行われ、
前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、当該点からの電磁波の受波で検知される属性の平均値を示す
請求項2~6のいずれか一項に記載の位置推定装置。 - 前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内の各点についての位置と属性との相関を示すように定めることにより、行われ、
前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部における複数の点についての、位置と電磁波の受波で検知される属性との相関を示す
請求項2~6のいずれか一項に記載の位置推定装置。 - 前記抽出部による前記抽出は、前記各ボクセルについて、当該ボクセルについての属性情報を、前記測定部により測定された当該ボクセル内及び当該ボクセルに近接する1以上のボクセル内の、各点についての位置と属性との相関を示すように定めることにより、行われ、
前記地図管理部により管理される前記各ボクセルについての前記属性情報は、該当のボクセルに対応する前記空間の一部及び当該ボクセルに近接する1以上のボクセルに対応する前記空間の一部における、複数の点についての、位置と電磁波の受波で検知される属性との相関を示す
請求項2~6のいずれか一項に記載の位置推定装置。 - 前記測定部が測定する前記属性は色であり、
前記抽出部が抽出する前記属性情報は、色を表す色情報であり、
前記地図管理部が管理する前記属性情報は、色を表す色情報である
請求項2~10のいずれか一項に記載の位置推定装置。 - 前記抽出部が抽出する前記色情報及び前記地図管理部が管理する前記色情報のそれぞれは、特定色成分と当該特定色成分以外の他色成分とを区別可能な情報であり、
前記位置推定部は、
前記尤度の前記算定の基礎とする、前記両ボクセルについての前記属性情報同士の前記近似度を、
当該属性情報同士における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定する
請求項11記載の位置推定装置。 - 前記抽出部が抽出する前記色情報及び前記地図管理部が管理する前記色情報のそれぞれは、特定色成分と当該特定色成分以外の他色成分とを区別可能な情報であり、
前記位置推定部は、
前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、
当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が、所定位置条件を満たす場合には、前記局所空間に係る前記ボクセルについての前記属性情報における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定する
請求項11記載の位置推定装置。 - 前記地図管理部は、前記地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての平面度を管理し、
前記位置推定部は、
前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、
当該両ボクセルのうち前記空間に係る前記ボクセルについての前記平面度が特定条件を満たす場合には、前記空間に係る前記ボクセルについての前記属性情報における前記特定色成分の当該近似度への影響の度合いと前記他色成分の当該近似度への影響の度合いとを異ならせるように算定する
請求項11記載の位置推定装置。 - 前記測定部が測定する前記属性は電磁波の反射強度であり、
前記抽出部が抽出する前記属性情報は、反射強度を表し、
前記地図管理部が管理する前記属性情報は、反射強度を表す
請求項2~10のいずれか一項に記載の位置推定装置。 - 前記位置推定部は、
前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、
当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が所定位置条件を満たす場合において、前記局所空間に係る前記ボクセルについての前記属性情報が所定強度より高い反射強度を示すときには、当該属性情報が前記所定強度より高くない反射強度を示すときより、当該近似度への影響の度合いを高めるように算定する
請求項15記載の位置推定装置。 - 前記測定部が測定する前記属性は温度であり、
前記抽出部が抽出する前記属性情報は、温度を表し、
前記地図管理部が管理する前記属性情報は、温度を表す
請求項2~10のいずれか一項に記載の位置推定装置。 - 前記位置推定部は、
前記尤度の前記算定の基礎とする、前記空間に係る前記ボクセル及び前記局所空間に係る前記ボクセルの各組における前記両ボクセルについての前記属性情報同士の前記近似度を、
当該両ボクセルのうち前記局所空間に係る前記ボクセルについての前記位置情報が所定位置条件を満たす場合において、前記局所空間に係る前記ボクセルについての前記属性情報が人間の体温に相当する所定温度範囲内の温度を示すときより、当該属性情報が前記所定温度範囲外の温度を示すときには、当該近似度への影響の度合いを高めるように算定する
請求項17記載の位置推定装置。 - 前記位置推定部は、推定した前記移動体の位置を示す情報を出力する
請求項1~18のいずれか一項に記載の位置推定装置。 - 空間における移動体の位置を推定する位置推定装置において用いられる位置推定方法であって、
前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性とを、測定する測定ステップと、
前記測定ステップでの測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、
地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、
前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む
位置推定方法。 - 空間における移動体の位置を推定する、マイクロプロセッサを備える位置推定装置に位置推定処理を実行させるための制御プログラムであって、
前記位置推定処理は、
前記移動体の周囲の局所空間における複数の点各々についての、位置と、当該点からの電磁波の受波で検知される属性との、測定結果を取得する取得ステップと、
前記取得ステップで取得された測定結果から、前記局所空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を抽出する抽出ステップと、
地図で表される前記空間と対応付けて3次元状に配列したボクセル群における各ボクセルについての位置情報及び属性情報を管理する地図管理ステップと、
前記地図管理ステップで管理する前記位置情報及び前記属性情報に基づき、前記抽出ステップで抽出した前記位置情報及び前記属性情報に応じて、前記移動体の位置を推定する位置推定ステップとを含む
制御プログラム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017533039A JP6331114B2 (ja) | 2016-03-30 | 2016-08-24 | 位置推定装置、位置推定方法及び制御プログラム |
| US15/716,923 US10402998B2 (en) | 2016-03-30 | 2017-09-27 | Position estimation apparatus and position estimation method |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016-069706 | 2016-03-30 | ||
| JP2016069706 | 2016-03-30 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US15/716,923 Continuation US10402998B2 (en) | 2016-03-30 | 2017-09-27 | Position estimation apparatus and position estimation method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017168472A1 true WO2017168472A1 (ja) | 2017-10-05 |
Family
ID=59963586
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2016/003850 Ceased WO2017168472A1 (ja) | 2016-03-30 | 2016-08-24 | 位置推定装置、位置推定方法及び制御プログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US10402998B2 (ja) |
| JP (1) | JP6331114B2 (ja) |
| WO (1) | WO2017168472A1 (ja) |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019101885A (ja) * | 2017-12-05 | 2019-06-24 | Kddi株式会社 | モデル化装置、方法及びプログラム |
| WO2019159956A1 (ja) * | 2018-02-14 | 2019-08-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| WO2019188704A1 (ja) * | 2018-03-29 | 2019-10-03 | パイオニア株式会社 | 自己位置推定装置、自己位置推定方法、プログラム及び記憶媒体 |
| WO2019198636A1 (ja) * | 2018-04-10 | 2019-10-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP2020034451A (ja) * | 2018-08-30 | 2020-03-05 | パイオニア株式会社 | データ構造、記憶媒体及び記憶装置 |
| JP2020122784A (ja) * | 2019-01-30 | 2020-08-13 | 株式会社ストラドビジョンStradvision,Inc. | 経路プランニングのための自律走行車両の位置を決定する方法及び装置 |
| CN114238772A (zh) * | 2021-12-24 | 2022-03-25 | 韩效遥 | 内容自适应感知的网络地图智能推荐系统 |
| JP2023021770A (ja) * | 2021-08-02 | 2023-02-14 | 鹿島建設株式会社 | 割れ目評価方法 |
| WO2023047653A1 (ja) * | 2021-09-27 | 2023-03-30 | ソニーセミコンダクタソリューションズ株式会社 | 情報処理装置、情報処理方法 |
| KR102548786B1 (ko) * | 2023-01-04 | 2023-06-29 | 영남대학교 산학협력단 | 라이다 센서를 이용하여 공간 모델을 생성하는 장치, 방법 및 시스템 |
| JP2024021158A (ja) * | 2022-08-03 | 2024-02-16 | 三菱重工業株式会社 | 位置推定システム及び位置推定方法 |
| JP7526407B1 (ja) | 2023-07-19 | 2024-08-01 | 株式会社Ridge-i | 情報処理装置、情報処理方法及び情報処理プログラム |
| JP7607719B1 (ja) | 2023-09-19 | 2024-12-27 | 三菱電機インフォメーションシステムズ株式会社 | 検知装置、検知方法及び検知プログラム |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3351899B1 (en) * | 2017-01-24 | 2020-06-17 | Leica Geosystems AG | Method and device for inpainting of colourised three-dimensional point clouds |
| US11097530B2 (en) * | 2017-02-27 | 2021-08-24 | Mutoh Industries Ltd. | Three-dimensional modeling device and three-dimensional modeling method |
| US20190108647A1 (en) * | 2017-10-10 | 2019-04-11 | The Boeing Company | Systems and methods for 3d cluster recognition for relative tracking |
| EP3547208B1 (en) * | 2018-03-27 | 2025-03-05 | Aptiv Technologies AG | A device and a method for clustering light spots |
| US10935378B2 (en) * | 2018-05-21 | 2021-03-02 | Tusimple, Inc. | System and method for angle measurement |
| US20200256999A1 (en) * | 2019-02-07 | 2020-08-13 | Atulya Yellepeddi | Lidar techniques for autonomous vehicles |
| US11417017B2 (en) | 2019-04-22 | 2022-08-16 | Texas Instmments Incorporated | Camera-only-localization in sparse 3D mapped environments |
| CN112013835B (zh) * | 2020-09-21 | 2022-08-26 | 珠海格力智能装备有限公司 | 地图装置、导航车、服务器、存储介质、导航系统及方法 |
| KR102591598B1 (ko) * | 2021-02-25 | 2023-10-20 | 주식회사 에스오에스랩 | 센서를 이용한 보안 장치의 동작 방법 |
| KR102591601B1 (ko) * | 2021-02-25 | 2023-10-20 | 주식회사 에스오에스랩 | 센서를 이용한 보안 장치의 동작 방법 |
| US11403817B1 (en) * | 2021-04-14 | 2022-08-02 | Lineage Logistics, LLC | Point cloud filtering |
| CN114499716B (zh) * | 2022-01-04 | 2024-01-16 | 深圳市联洲国际技术有限公司 | 基于rssi的客户端测向方法、装置、设备及存储介质 |
| US12461241B1 (en) * | 2022-04-28 | 2025-11-04 | Zoox, Inc. | Object detection soft consistency checker |
| KR102823611B1 (ko) * | 2022-11-10 | 2025-06-23 | 한국전자통신연구원 | 메타버스 가상공연 환경 생성 방법 및 장치 |
| US20240362905A1 (en) * | 2023-04-26 | 2024-10-31 | Nokia Solutions And Networks Oy | Localization by a neural network |
| KR102678598B1 (ko) * | 2023-11-09 | 2024-06-27 | 주식회사 위쥬테크 | 라이다를 이용한 차량 감지 장치 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007069726A1 (ja) * | 2005-12-16 | 2007-06-21 | Ihi Corporation | 自己位置同定方法と装置および三次元形状の計測方法と装置 |
| JP2010134499A (ja) * | 2008-12-02 | 2010-06-17 | Mitsubishi Electric Corp | 遠隔地画像表示装置、遠隔操縦装置、車両制御装置、遠隔操縦システム、遠隔操縦方法、遠隔操縦プログラム、車両制御プログラム、遠隔地画像表示方法、遠隔地画像表示プログラム |
| JP2011191239A (ja) * | 2010-03-16 | 2011-09-29 | Mazda Motor Corp | 移動体位置検出装置 |
| JP2013187862A (ja) * | 2012-03-09 | 2013-09-19 | Topcon Corp | 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5837404B2 (ja) | 2011-11-22 | 2015-12-24 | 株式会社日立製作所 | 画像処理装置、画像処理方法 |
| US9342888B2 (en) * | 2014-02-08 | 2016-05-17 | Honda Motor Co., Ltd. | System and method for mapping, localization and pose correction of a vehicle based on images |
| US10360718B2 (en) * | 2015-08-14 | 2019-07-23 | Samsung Electronics Co., Ltd. | Method and apparatus for constructing three dimensional model of object |
-
2016
- 2016-08-24 WO PCT/JP2016/003850 patent/WO2017168472A1/ja not_active Ceased
- 2016-08-24 JP JP2017533039A patent/JP6331114B2/ja active Active
-
2017
- 2017-09-27 US US15/716,923 patent/US10402998B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007069726A1 (ja) * | 2005-12-16 | 2007-06-21 | Ihi Corporation | 自己位置同定方法と装置および三次元形状の計測方法と装置 |
| JP2010134499A (ja) * | 2008-12-02 | 2010-06-17 | Mitsubishi Electric Corp | 遠隔地画像表示装置、遠隔操縦装置、車両制御装置、遠隔操縦システム、遠隔操縦方法、遠隔操縦プログラム、車両制御プログラム、遠隔地画像表示方法、遠隔地画像表示プログラム |
| JP2011191239A (ja) * | 2010-03-16 | 2011-09-29 | Mazda Motor Corp | 移動体位置検出装置 |
| JP2013187862A (ja) * | 2012-03-09 | 2013-09-19 | Topcon Corp | 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム |
Cited By (31)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019101885A (ja) * | 2017-12-05 | 2019-06-24 | Kddi株式会社 | モデル化装置、方法及びプログラム |
| JP7054336B2 (ja) | 2017-12-05 | 2022-04-13 | Kddi株式会社 | モデル化装置、方法及びプログラム |
| JP7629970B2 (ja) | 2018-02-14 | 2025-02-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| WO2019159956A1 (ja) * | 2018-02-14 | 2019-08-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP7381444B2 (ja) | 2018-02-14 | 2023-11-15 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JPWO2019159956A1 (ja) * | 2018-02-14 | 2021-03-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP2024016160A (ja) * | 2018-02-14 | 2024-02-06 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP2023095904A (ja) * | 2018-03-29 | 2023-07-06 | パイオニア株式会社 | 自己位置推定装置 |
| JP2024133190A (ja) * | 2018-03-29 | 2024-10-01 | パイオニア株式会社 | 自己位置推定装置 |
| JPWO2019188704A1 (ja) * | 2018-03-29 | 2021-03-11 | パイオニア株式会社 | 自己位置推定装置、自己位置推定方法、プログラム及び記憶媒体 |
| JP2021185365A (ja) * | 2018-03-29 | 2021-12-09 | パイオニア株式会社 | 自己位置推定装置、自己位置推定方法、プログラム及び記憶媒体 |
| WO2019188704A1 (ja) * | 2018-03-29 | 2019-10-03 | パイオニア株式会社 | 自己位置推定装置、自己位置推定方法、プログラム及び記憶媒体 |
| CN111989713A (zh) * | 2018-04-10 | 2020-11-24 | 松下电器(美国)知识产权公司 | 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置 |
| JPWO2019198636A1 (ja) * | 2018-04-10 | 2021-05-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| WO2019198636A1 (ja) * | 2018-04-10 | 2019-10-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP7273029B2 (ja) | 2018-04-10 | 2023-05-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置 |
| JP2024056032A (ja) * | 2018-08-30 | 2024-04-19 | パイオニア株式会社 | データ構造、記憶媒体及び記憶装置 |
| JP2020034451A (ja) * | 2018-08-30 | 2020-03-05 | パイオニア株式会社 | データ構造、記憶媒体及び記憶装置 |
| JP2020122784A (ja) * | 2019-01-30 | 2020-08-13 | 株式会社ストラドビジョンStradvision,Inc. | 経路プランニングのための自律走行車両の位置を決定する方法及び装置 |
| JP7550733B2 (ja) | 2021-08-02 | 2024-09-13 | 鹿島建設株式会社 | 割れ目評価方法 |
| JP2023021770A (ja) * | 2021-08-02 | 2023-02-14 | 鹿島建設株式会社 | 割れ目評価方法 |
| WO2023047653A1 (ja) * | 2021-09-27 | 2023-03-30 | ソニーセミコンダクタソリューションズ株式会社 | 情報処理装置、情報処理方法 |
| CN114238772A (zh) * | 2021-12-24 | 2022-03-25 | 韩效遥 | 内容自适应感知的网络地图智能推荐系统 |
| JP2024021158A (ja) * | 2022-08-03 | 2024-02-16 | 三菱重工業株式会社 | 位置推定システム及び位置推定方法 |
| JP7795982B2 (ja) | 2022-08-03 | 2026-01-08 | 三菱重工業株式会社 | 位置推定システム及び位置推定方法 |
| KR102548786B1 (ko) * | 2023-01-04 | 2023-06-29 | 영남대학교 산학협력단 | 라이다 센서를 이용하여 공간 모델을 생성하는 장치, 방법 및 시스템 |
| JP7526407B1 (ja) | 2023-07-19 | 2024-08-01 | 株式会社Ridge-i | 情報処理装置、情報処理方法及び情報処理プログラム |
| JP2025014837A (ja) * | 2023-07-19 | 2025-01-30 | 株式会社Ridge-i | 情報処理装置、情報処理方法及び情報処理プログラム |
| JP7607719B1 (ja) | 2023-09-19 | 2024-12-27 | 三菱電機インフォメーションシステムズ株式会社 | 検知装置、検知方法及び検知プログラム |
| JP2025043503A (ja) * | 2023-09-19 | 2025-04-01 | 三菱電機インフォメーションシステムズ株式会社 | 検知装置、検知方法及び検知プログラム |
| JP2025044298A (ja) * | 2023-09-19 | 2025-04-01 | 三菱電機インフォメーションシステムズ株式会社 | 検知装置、検知方法及び検知プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2017168472A1 (ja) | 2018-04-05 |
| JP6331114B2 (ja) | 2018-05-30 |
| US20180033160A1 (en) | 2018-02-01 |
| US10402998B2 (en) | 2019-09-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6331114B2 (ja) | 位置推定装置、位置推定方法及び制御プログラム | |
| US11334744B2 (en) | Three-dimensional point cloud label learning device, three-dimensional point cloud label estimating device, three-dimensional point cloud label learning method, three-dimensional point cloud label estimating method, and program | |
| Ai et al. | Convolutional neural network to retrieve water depth in marine shallow water area from remote sensing images | |
| Chen et al. | Gaussian-process-based real-time ground segmentation for autonomous land vehicles | |
| Ji et al. | CPFG-SLAM: A robust simultaneous localization and mapping based on LIDAR in off-road environment | |
| Lang et al. | Adaptive Non-Stationary Kernel Regression for Terrain Modeling. | |
| JP2022520019A (ja) | 画像処理方法、装置、移動可能なプラットフォーム、プログラム | |
| CN117808689A (zh) | 基于毫米波雷达与摄像头融合的深度补全方法 | |
| KR102844461B1 (ko) | 자율 주행을 위한 지도 생성 및 관리 방법 그리고 이를 이용한 위치 인식 방법 및 장치 | |
| Bandyopadhyay et al. | Classification and extraction of trees and buildings from urban scenes using discrete return LiDAR and aerial color imagery | |
| CA3020069A1 (en) | Spatial data analysis | |
| JP7662645B2 (ja) | 多重解像度ボクセルにおける共分散を含むマップ | |
| Walas et al. | Terrain classification using laser range finder | |
| US20250224252A1 (en) | System and method for generating multi-resolution voxel spaces | |
| Lalonde et al. | Automatic three-dimensional point cloud processing for forest inventory | |
| CN110414379A (zh) | 结合高程图Gabor纹理特征和LiDAR点云特征的建筑物提取算法 | |
| Yang et al. | An optimization-based selection approach of landing sites for swarm unmanned aerial vehicles in unknown environments | |
| Wen et al. | Night-time measurement and skeleton recognition using unmanned aerial vehicles equipped with LiDAR sensors based on deep-learning algorithms | |
| CN116679317B (zh) | 基于高光谱激光雷达的环境建模方法及装置 | |
| JP6973107B2 (ja) | 自己位置推定装置 | |
| Rutzinger et al. | Object-based analysis of airborne laser scanning data for natural hazard purposes using open source components | |
| Bai et al. | Application of unmanned aerial vehicle multi-vision image 3D modeling in geological disasters | |
| Mehrzed | Optimization of a Simultaneous Localization and Mapping (SLAM) System for an Autonomous Vehicle Using a 2-Dimensional Light Detection and Ranging Sensor (LiDAR) by Sensor Fusion | |
| CN120279522B (zh) | 一种基于多元信息融合的前方道路坡度估计方法 | |
| Glira et al. | Robust 3D Mobile Mapping with Radar Sensors: A Real-Time Approach for Autonomous Navigation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ENP | Entry into the national phase |
Ref document number: 2017533039 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16896693 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16896693 Country of ref document: EP Kind code of ref document: A1 |