Positioning device, moving body, and positioning method
The positioning device corrects for angle errors in mobile body positioning systems by using camera image data and map information to adjust movement direction and distance, ensuring accurate tracking and preventing deviations during turns.
Patent Information
- Application Number
- JP2023113677
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-11
- Publication Date
- 2025-01-24
AI Technical Summary
Existing positioning systems for mobile bodies, such as forklifts or trucks, suffer from angle errors during turns, leading to deviations in positioning results, especially when transitioning from a turn to a straight path.
A positioning device that utilizes a camera to receive image data, calculates the mobile body's position based on marker and characteristic points, and includes correction units to adjust the movement direction and distance, using map information to clip or correct positioning results to prevent deviations.
The system effectively suppresses discrepancies in positioning results by correcting for angle errors and ensuring accurate tracking of the mobile body's movement within defined ranges or avoiding prohibited areas, maintaining precise location estimation.
Smart Images

Figure 2025011512000001_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a positioning device, a moving object, and a positioning method. [Background technology]
[0002] There are moving objects that transport luggage indoors, such as in a logistics warehouse, while measuring their positions. Patent Document 1 discloses a luggage location management device that measures the position of a vehicle using positioning techniques such as a global positioning system (GPS), a wireless local area network (LAN) positioning, and infrared positioning.
[0003] Non-Patent Document 1 discloses a positioning method called Visual-SLAM (Visual Simultaneous Localization and Mapping). In Visual-SLAM, a moving body equipped with a camera moves while capturing images of its surroundings, and the amount of movement of the moving body is calculated based on the amount of movement of feature points in multiple captured images. In this way, in Visual-SLAM, it is possible to estimate the current position of the moving body and generate a map based on the trajectory of the moving body. Note that calculating the position, direction, etc. of a moving body based on multiple captured images is called visual odometry. As a function of this visual odometry, the amount of movement of a moving body may be calculated based on the amount of movement of feature points in multiple captured images. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2011-219229 A [Patent Document 2] International Publication No. 2020 / 137315 [Non-patent literature]
[0005] [Non-Patent Document 1] R. Mur-Artal, et al., "ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras", IEEE Transactions on Robotics, Volume: 33, Issue: 5, Oct. 2017 Summary of the Invention [Problem to be solved by the invention]
[0006] In visual odometry, an angle error is likely to occur when a moving object turns. If an angle error occurs when a moving object turns, for example, the positioning result by the positioning device may deviate from the actual position of the moving object when the moving object moves linearly after turning.
[0007] Non-limiting embodiments of the present disclosure contribute to providing a positioning device, a moving object, and a positioning method that suppress discrepancies in positioning results. [Means for solving the problem]
[0008] A positioning device according to one embodiment of the present disclosure includes a receiving unit that receives image data from a camera mounted on a moving body, a feature point positioning unit that calculates a movement amount including a movement distance and movement direction of the moving body based on feature points of an image of the image data, and calculates a position of the moving body on a map based on the movement amount and a past position of the moving body, and a correction unit that corrects the movement direction when it is determined that the position of the moving body is incorrect based on the position of the moving body calculated by the feature point positioning unit and information regarding the movement range of the moving body on the map, and when the correction unit corrects the movement direction, the feature point positioning unit further recalculates the position of the moving body based on the movement amount including the movement distance and the corrected movement direction of the moving body and the past position of the moving body.
[0009] A moving body according to one embodiment of the present disclosure includes a camera, a receiving unit that receives image data from the camera, a feature point positioning unit that calculates a movement amount including a movement distance and a movement direction of the moving body based on feature points of an image of the image data, and calculates a position of the moving body on a map based on the movement amount and a past position of the moving body, and a correction unit that corrects the movement direction when it is determined that the position of the moving body is incorrect based on the position of the moving body calculated by the feature point positioning unit and information related to the movement range of the moving body on the map, and the feature point positioning unit further includes a positioning device that, when the correction unit corrects the movement direction, recalculates the position of the moving body based on the movement amount including the movement distance and the corrected movement direction of the moving body and the past positions of the moving body.
[0010] In a positioning method according to one embodiment of the present disclosure, a receiving unit receives image data from a camera mounted on a moving body, a feature point positioning unit calculates a movement amount including a movement distance and a movement direction of the moving body based on feature points of an image of the image data, and calculates a position of the moving body on a map based on the movement amount and a past position of the moving body, a correction unit corrects the movement direction when it determines that the position of the moving body is incorrect based on the position of the moving body calculated by the feature point positioning unit and information related to the movement range of the moving body on the map, and when the correction unit corrects the movement direction, the feature point positioning unit recalculates the position of the moving body based on the movement amount including the movement distance and the corrected movement direction of the moving body and the past position of the moving body.
[0011] In addition, these comprehensive or specific aspects may be realized by a system, an apparatus, a method, an integrated circuit, a computer program, or a recording medium, or may be realized by any combination of a system, an apparatus, a method, an integrated circuit, a computer program, and a recording medium. Effect of the Invention
[0012] According to an embodiment of the present disclosure, deviations in positioning results can be suppressed.
[0013] Further advantages and benefits of an embodiment of the present disclosure will become apparent from the specification and drawings, in which such advantages and / or benefits are provided by some of the embodiments and features described in the specification and drawings, respectively, but not necessarily all of which are provided to obtain one or more identical features. [Brief description of the drawings]
[0014] [Figure 1] FIG. 1 is a diagram showing a moving body equipped with a positioning device according to a first embodiment; [Diagram 2] Top view of the area in which the moving object moves [Diagram 3] Diagram explaining marker positioning [Figure 4] Diagram explaining feature point positioning [Diagram 5] FIG. 1 is a diagram illustrating an example of error in feature point positioning. [Figure 6] FIG. 1 is a diagram illustrating an example of a moving range of a moving object set in a positioning device; [Figure 7] FIG. 1 is a diagram for explaining an operation example 1 of a positioning device; [Figure 8] FIG. 1 is a diagram illustrating an example of a no-entry area for moving objects set in a positioning device. [Figure 9] FIG. 2 is a diagram for explaining an operation example 2 of the positioning device; [Figure 10] FIG. 3 is a diagram for explaining an operation example 3 of the positioning device; [Figure 11] A block diagram showing the configuration of a positioning device. [Figure 12] A flowchart showing an example of a positioning process of a positioning device [Figure 13] A flowchart showing an example of the process of S3 (marker positioning) in FIG. 12. [Figure 14] A flowchart showing an example of the process of S4 (feature point positioning) in FIG. 12 [Figure 15] Flowchart showing operation example 1 of the positioning device [Figure 16] Flowchart showing operation example 2 of the positioning device [Figure 17] Flowchart showing operation example 3 of the positioning device [Figure 18] FIG. 1 is a diagram for explaining an example of an error in the positioning result of marker positioning. [Figure 19] FIG. 1 is a diagram for explaining an operation example 1 of a positioning device; [Figure 20] FIG. 2 is a diagram for explaining an operation example 2 of the positioning device; [Figure 21] Flowchart showing an operation example 1 of marker positioning [Figure 22] Flowchart showing marker positioning operation example 2 DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Hereinafter, the embodiments of the present disclosure will be described in detail with reference to the drawings as appropriate. However, more detailed explanation than necessary may be omitted. For example, detailed explanation of already well-known matters or duplicate explanation of substantially the same configuration may be omitted. This is to avoid the following explanation becoming unnecessarily redundant and to facilitate understanding by those skilled in the art.
[0016] It should be noted that the accompanying drawings and the following description are provided to enable those skilled in the art to fully understand the present disclosure, and are not intended to limit the subject matter described in the claims.
[0017] <First embodiment> 1 is a diagram showing a moving object 2 equipped with a positioning device 1 according to a first embodiment. The moving object 2 may be a vehicle such as a forklift or a truck. The moving object 2 is equipped with the positioning device 1 and a camera 3.
[0018] The positioning device 1 receives image data of an image captured by the camera 3. Based on the image data received from the camera 3, the positioning device 1 measures the position of the moving object 2 by positioning based on image recognition of a marker (image of the marker) attached to an object and by positioning based on the amount of movement of a feature point in the image, such as visual odometry. That is, the positioning device 1 measures the position of the moving object 2 using two positioning methods (see, for example, Patent Document 2). Note that the position of the positioning device 1 may be regarded as the position of the moving object 2. That is, the positioning device 1 may measure the position of the positioning device 1 and use it as the position of the moving object 2.
[0019] Hereinafter, positioning based on image recognition of markers may be referred to as marker positioning, and positioning based on the amount of movement of feature points in an image may be referred to as feature point positioning. Positioning based on both marker positioning and feature point positioning may be referred to as a hybrid positioning method.
[0020] The camera 3 is, for example, a stereo camera. The camera 3 may be a compound eye camera as long as it outputs image data that allows the positioning device 1 to calculate the distance to the target object.
[0021] Fig. 2 is a diagram showing an area A2a in which the moving object 2 moves, viewed from above. The square and circle figures shown in the area A2a indicate objects such as luggage stored in a building such as a logistics warehouse, pillars of the building, and walls of the building. Markers A2b are attached to the objects as shown in Fig. 2. Note that, in Fig. 2, the markers A2b are drawn on the top surface of the object for ease of understanding, but the markers A2b may be attached to the side of the object so that the camera 3 can easily capture the object.
[0022] Map information (map data) of the area A2a is stored in the positioning device 1. The map information includes marker information such as image data of the marker A2b, and position information indicating the attachment position of the marker A2b. The marker information and the attachment position are associated with each other.
[0023] The area in which the moving object 2 moves may be indoors or outdoors. The term "attaching" may be rephrased as "installing."
[0024] Marker positioning Fig. 3 is a diagram for explaining marker positioning. Fig. 3 shows an image A3a captured by a camera 3. The image A3a includes a marker A3b.
[0025] The positioning device 1 receives an image A3a captured by a camera 3. The positioning device 1 calculates the relative position of the moving object 2 with respect to the marker A3b based on the appearance of the marker A3b, such as the image angle (tilt), shape, and size of the marker A3b included in the received image A3a. For example, the positioning device 1 calculates the relative position, such as the distance and direction of the moving object 2 with respect to the marker A3b. The positioning device 1 calculates the position (absolute position) of the moving object 2 on the map of the map information based on the calculated relative position and position information of the marker A3b included in the map information.
[0026] Feature point positioning There may be cases where the marker A3b is not present in the location within the area A2a where the moving object 2 moves or in the traveling direction (the shooting direction of the camera 3) of the moving object 2. In this case, the positioning device 1 measures the position of the moving object 2 by feature point positioning.
[0027] Fig. 4 is a diagram for explaining feature point positioning. Fig. 4 shows an image A4a captured by the camera 3. Black squares shown in the image A4a indicate feature points calculated by the positioning device 1. Note that the image A4a does not include markers.
[0028] The positioning device 1 receives an image A4a captured by the camera 3. If the received image A4a does not include a marker image, the positioning device 1 calculates feature points for each frame (or n frames, where n is a positive integer) and calculates the relative movement amount, such as the moving distance and moving direction (rotation angle) of the moving object 2, from the difference (deviation) in the positions of the feature points for each frame.
[0029] For example, the positioning device 1 calculates edges, such as corners of an object, where the shape changes and where the color changes, as feature points from the image A4a. The positioning device 1 calculates the feature points for each frame. The positioning device 1 calculates the relative movement amount of the moving object 2 from the difference in the positions of the feature points for each frame.
[0030] The calculation of the feature points is not limited to the above example. The feature points may be calculated using existing techniques. The feature points may be referred to as feature amounts.
[0031] After calculating the amount of relative movement, the positioning device 1 calculates the position of the moving object 2 within the area A2a based on the calculated amount of relative movement and the positioning result of the marker positioning. For example, the positioning device 1 adds the amount of relative movement to the positioning result of the marker positioning to calculate the position (absolute position) of the moving object 2 on the map of the map information.
[0032] The positioning device 1 performs marker positioning when the marker is again included in the image received from the camera 3. When the marker is no longer included in the image received from the camera 3, the positioning device 1 performs feature point positioning based on the position of the moving object 2 measured by the marker positioning.
[0033] In this way, the positioning device 1 executes marker positioning when the marker is photographed by the camera 3, and executes feature point positioning when the marker is not photographed by the camera 3. As a result, in the hybrid positioning method, even if the positioning result of the feature point positioning contains an error, the error is corrected by the positioning result of the marker positioning.
[0034] Furthermore, compared to the Visual-SLAM positioning method, the hybrid positioning method has the advantage that it does not require data such as point cloud data of the location where positioning is performed (for example, area A2a shown in FIG. 2) and has lighter processing power.
[0035] ·Consider In feature point positioning, angle errors are likely to occur when a moving object turns. If angle errors occur when a moving object turns, for example, the positioning result by the positioning device may deviate from the actual position of the moving object during linear movement of the moving object after the turn.
[0036] Furthermore, even if the angle error during turning of the mobile body is small, if the linear movement of the mobile body after turning is long, the positioning result by the positioning device may deviate from the actual position of the mobile body.
[0037] 5 is a diagram for explaining an example of an error in feature point positioning, in which the same components as those in FIG. 2 are denoted by the same reference numerals.
[0038] 5 indicates the movement trajectory of the moving object, and the dotted arrow A5b indicates the movement trajectory of the moving object based on feature point positioning (the movement trajectory of the moving object based on the calculation result of feature point positioning).
[0039] As shown by linear movement A5c in FIG. 5, while the moving object is moving linearly, the difference between the moving trajectory (positioning result) of the moving object obtained by feature point positioning and the actual moving trajectory of the moving object is small.
[0040] However, as described above, in feature point positioning, angle errors are likely to occur when the moving object turns. Therefore, for example, in the black circle A5d in Fig. 5, if the moving object turns and an angle error is included in the positioning result of the feature point positioning, as shown by the arrows A5a and A5b extending from the black circle A5d, the difference between the positioning result of the moving object by the feature point positioning and the actual movement trajectory of the moving object increases as the moving object moves.
[0041] Therefore, a movement range of the moving object 2 is set for the positioning device 1. When the positioning result of the feature point positioning exceeds the set movement range, the positioning device 1 clips the positioning result of the feature point positioning within the set movement range (operation example 1).
[0042] A no-entry range (no-entry area) for the moving body 2 is set for the positioning device 1. When the positioning result of the feature point positioning enters the set no-entry area (when the positioning result of the feature point positioning enters the no-entry area), the positioning device 1 clips the positioning result of the feature point positioning to outside the set no-entry area (operation example 2).
[0043] An entry-prohibited area for the moving object 2 is set for the positioning device 1. When the positioning device 1 enters the entry-prohibited area in which the positioning result of the feature point positioning is set, the positioning device 1 corrects the positioning result (movement direction) of the moving object 2 by using the feature points of the image captured by the camera 3 (Operation Example 3).
[0044] Example 1 Fig. 6 is a diagram for explaining an example of a moving range of a moving object 2 set in the positioning device 1. In Fig. 6, the same components as in Fig. 2 are denoted by the same reference numerals.
[0045] A movement range of the moving object 2 is set in the map information stored in the positioning device 1. For example, the edge of the area A2a may be set as the movement range of the moving object 2, as shown by the thick line A6a in Fig. 6. The moving object 2 can move within the set movement range.
[0046] Fig. 7 is a diagram for explaining an operation example 1 of the positioning device 1. In Fig. 7, the same components as those in Fig. 6 are given the same reference numerals. It is assumed that the map information stored in the positioning device 1 includes movement range information indicating the movement range of the moving object 2 (see the thick line A6a).
[0047] 7 indicates the movement trajectory of the moving object 2. The dotted arrow A7b indicates the movement trajectory of the moving object 2 obtained by feature point positioning. It is assumed that the moving object 2 turns at the position indicated by the black circle A7c in FIG.
[0048] When the moving body 2 turns and the positioning result includes an angle error, as shown by arrows A7a and A7b extending from a black circle A7c, the difference between the positioning result of the moving body 2 based on feature point positioning and the actual movement trajectory of the moving body 2 increases as the moving body 2 moves. When the positioning result exceeds the movement range indicated by the movement range information included in the map information (when the positioning result goes outside the movement range), the positioning device 1 clips the positioning result that exceeds the movement range. For example, as shown by correction A7d in FIG. 7, the positioning device 1 corrects the movement direction of the positioning result before it exceeds the movement range so that it is along (parallel to) the frame (line) of the movement range.
[0049] The moving object 2 moves within the set movement range. Therefore, when the moving object 2 approaches the frame of the set movement range (thick line A6a in FIG. 7), it is assumed that it turns so as not to go outside the movement range. For example, the moving object 2 is assumed to turn so as to move along the frame of the movement range, as shown by arrow A7a starting from black circle A7c in FIG. 7. Based on this assumption, when the positioning result goes beyond the set movement range, the positioning device 1 corrects the movement direction of the positioning result so as to follow the frame of the movement range, as shown by correction A7d in FIG. 7.
[0050] As a result, even if the moving object 2 continues to move linearly after turning, after the positioning result is corrected, the deviation between the movement trajectory of the moving object 2 and the movement trajectory based on the positioning result of the positioning device 1 is suppressed. For example, the deviation between the positioning result of the feature point positioning after the black circle A7e shown in FIG. 7 and the movement trajectory of the moving object 2 is suppressed.
[0051] Example 2 In the second operation example, no-entry areas are set in the map information.
[0052] Fig. 8 is a diagram for explaining examples of no-entry areas for the moving object 2 set in the positioning device 1. In Fig. 8, the same components as in Fig. 2 are denoted by the same reference numerals.
[0053] In the map information stored in the positioning device 1, no-entry areas into which the moving body 2 cannot enter are set. The no-entry areas may be considered as areas into which the moving body 2 cannot enter or areas into which the entry of the moving body 2 is restricted.
[0054] For example, as shown by a thick line A8a in Fig. 8, objects such as luggage stored in the area A2a, pillars of a building, and walls of a building may be set as no-entry areas for the moving body 2. Furthermore, the no-entry areas for the moving body 2 are not limited to the areas of the objects described above, and may be, for example, areas where people work.
[0055] Fig. 9 is a diagram for explaining an operation example 2 of the positioning device 1. In Fig. 9, the same components as those in Fig. 8 are given the same reference numerals. It is assumed that the map information stored in the positioning device 1 includes no-entry area information indicating no-entry areas for the moving object 2 (see thick line A8a).
[0056] 9 indicates the movement trajectory of the moving object 2. The dotted arrow A9b indicates the movement trajectory of the moving object 2 obtained by feature point positioning. It is assumed that the moving object 2 turns at the position indicated by the black circle A9c in FIG.
[0057] When the moving body 2 turns and the positioning result includes an angle error, as shown by arrows A9a and A9b extending from a black circle A9c, the difference between the positioning result of the moving body 2 obtained by feature point positioning and the actual movement trajectory of the moving body 2 increases as the moving body 2 moves. When the positioning result enters an area indicated by the no-entry area information included in the map information, the positioning device 1 clips the positioning result for the entered area. For example, as shown by correction A9d in FIG. 9, the positioning device 1 corrects the movement direction of the positioning result before entering the no-entry area so that it follows the frame (line) of the no-entry area.
[0058] The moving object 2 moves outside the set no-entry area. Therefore, when the moving object 2 approaches the frame of the set no-entry area (thick line A8a in FIG. 9), it is assumed that it will turn so as not to enter the no-entry area. For example, the moving object 2 is assumed to turn so as to move along the frame of the no-entry area, as shown by arrow A9a starting from black circle A9c in FIG. 9. Based on this assumption, when the positioning result enters the no-entry area, the positioning device 1 corrects the moving direction of the positioning result so as to follow the frame of the no-entry area, as shown by correction A9d in FIG. 9.
[0059] As a result, even if the moving object 2 continues to move linearly after turning, after the positioning result is corrected, the deviation between the movement trajectory of the moving object 2 and the movement trajectory based on the positioning result of the positioning device 1 is suppressed. For example, the deviation between the movement trajectory of the moving object 2 and the movement trajectory based on the positioning result of the positioning device 1 is suppressed in the positioning result after the black circle A9e shown in FIG.
[0060] The movement range information described in Operation Example 1 and the no-entry area information described in Operation Example 2 can be regarded as information related to the movement range of the moving object 2. Also, outside the movement range described in Fig. 7 is an area where the movement of the moving object 2 is restricted, and can be regarded as a no-entry area.
[0061] Example 3 In operation example 1, the positioning result (movement direction) is corrected to conform to the movement range (frame of the movement range). In operation example 2, the positioning result (movement direction) is corrected to conform to the area (frame of the area) of the no-entry area. In operation example 3, the positioning result (movement direction) of the moving object 2 is corrected using feature points.
[0062] Fig. 10 is a diagram for explaining an operation example 3 of the positioning device 1. In Fig. 10, the same components as those in Fig. 8 are denoted by the same reference numerals. It is assumed that the map information stored in the positioning device 1 includes no-entry area information indicating no-entry areas (see thick line A8a).
[0063] 10 indicates the movement trajectory of the moving object 2. The dotted arrow A10b indicates the movement trajectory of the moving object 2 obtained by feature point positioning. It is assumed that the moving object 2 turns at the position indicated by the black circle A10c in FIG.
[0064] When the moving body 2 turns, the positioning device 1 calculates the distance to the no-entry area ahead of the moving body 2 based on the positioning result at the time of turning and map information. For example, the positioning device 1 calculates the distance to the no-entry area indicated by the double arrow A10d in Fig. 10 based on the position and turning angle of the moving body 2 when the moving body 2 turns and map information. Hereinafter, the distance to the no-entry area calculated based on the positioning result and map information when the positioning device 1 turns may be referred to as a first distance.
[0065] The positioning device 1 calculates the distance to an object ahead of the moving body 2 by using feature points in an image ahead of the moving body 2 captured by the camera 3 after the moving body 2 turns. For example, the positioning device 1 calculates the distance indicated by the double-headed arrow A10e in Fig. 10. Hereinafter, the distance to an object ahead of the moving body 2 calculated based on the feature points when the positioning device 1 turns may be referred to as a second distance.
[0066] The object in front of the moving body 2 photographed by the camera 3 is, for example, an object such as luggage stored in the area A2a, a pillar of a building, or a wall of a building, or a person working in the area A2a, and can be regarded as a no-entry area. In other words, the second distance can be regarded as the distance to the no-entry area in front of the moving body 2 photographed by the camera 3.
[0067] The feature points represent the edges of an object, etc. Therefore, the positioning device 1 can recognize the shape of an object ahead of the moving body 2 and calculate the distance to the object, for example, by connecting the feature points. An existing technology may be used as the object recognition technology.
[0068] Here, for example, if the error included in the turning angle of the positioning result calculated by the positioning device 1 is small, the difference between the first distance and the second distance is assumed to be small. For example, if the positioning device 1 calculates the turning angle indicating the direction of the arrow A10a starting from the black circle A10c in FIG. 10, the difference between the first distance and the second distance is assumed to be small. On the other hand, for example, if the positioning device 1 calculates the turning angle indicating the direction of the double arrow A10d starting from the black circle A10c in FIG. 10, the difference between the first distance and the second distance is assumed to be large. In other words, if the difference between the first distance and the second distance is large, the error included in the turning angle calculated by the positioning device 1 is assumed to be large.
[0069] Therefore, when the difference between the first distance and the second distance is greater than a predetermined threshold, the positioning device 1 refers to the map information and corrects the moving direction (turning angle) so as to minimize the difference between the first distance and the second distance.
[0070] For example, the positioning device 1 rotates the direction of the moving object 2 in the positioning result (see the direction of the double-headed arrow A10d) around the turning position of the moving object 2 (see the black circle A10c). When the direction of the double-headed arrow A10d becomes parallel to the double-headed arrow A10e, the difference between the first distance and the second distance becomes the smallest. The positioning device 1 corrects the direction of the double-headed arrow A10d when the difference between the first distance and the second distance becomes the smallest to the turning angle.
[0071] This allows the positioning device 1 to suppress angle errors caused by the turning of the moving object 2. Even if the moving object 2 continues to move linearly after turning, the deviation between the movement trajectory of the moving object 2 and the movement trajectory based on the positioning result of the positioning device 1 is suppressed after the positioning result is corrected.
[0072] The turning angle corrected by the positioning device 1 may be in the direction of the double-headed arrow A10d when the difference between the first distance and the second distance becomes less than a predetermined threshold. That is, the turning angle corrected does not necessarily have to be in the direction of the double-headed arrow A10d when the difference between the first distance and the second distance becomes the smallest. This is because the first distance or the second distance itself may contain an error, and therefore the turning angle when the difference between the first distance and the second distance is the smallest is not necessarily the most correct.
[0073] As described above, in feature point positioning, angle errors are likely to occur when a moving object turns, but errors are unlikely to occur in the distance to the feature point. Therefore, even if an angle error occurs, there is a high possibility that an accurate value for the distance to the feature point is obtained. Therefore, in the third operation example, this property is utilized to correct the turning angle to an angle that reduces the difference between the distance obtained by feature point positioning and the distance obtained from the map information, thereby making it possible to correct the turning angle with high accuracy.
[0074] Moreover, in the operation example 3, since the magnitude of the error contained in the turning angle is estimated based on the difference between the first distance and the second distance, it is possible to more accurately determine whether or not the turning angle contains an error than in the operation example 1 and the operation example 2. Hereinafter, this effect will be described in more detail. In the operation example 1 and the operation example 2, whether or not the turning angle contains an error is estimated based on whether or not the position of the moving body 2 and the area are consistent. Hereinafter, if the accessible area is sufficiently wide or the error contained in the turning angle is small, the position of the moving body 2 calculated based on the turning angle including the error may be included in the accessible area. As a result, in the operation example 1 or the operation example 2, even if the turning angle actually contains an error, it may be estimated that the turning angle does not contain an error, and the process of correcting the error may not be performed. In contrast, in the operation example 3, since the magnitude of the error contained in the turning angle is estimated based on the consistency of the distance to the feature point, it is possible to accurately determine whether or not the turning angle contains an error even if the position of the moving body 2 calculated based on the turning angle including the error is included in the accessible area.
[0075] In the above description, the first distance and the second distance are calculated when the moving body 2 turns, but if the moving direction of the moving body 2 recognized by the positioning device 1 includes an angle error due to turning, it may be difficult to detect that the moving body 2 has turned. Therefore, the positioning device 1 may calculate the first distance and the second distance at a predetermined timing such as a fixed cycle, regardless of whether it recognizes that the moving body 2 has turned, and determine whether to correct the turning angle.
[0076] In the above, the distance to the no-entry area is used as the first distance. However, the first distance may be determined based on other criteria. The first distance may be any distance from the current position of the moving body 2 to an area on the map where the moving body 2 cannot move, and for example, the distance to the edge of the movement range may be used as the first distance. That is, in the operation example 3, it is sufficient that information indicating the boundary between the area where the moving body 2 can enter and the area where it cannot enter is set on the map, and the information does not need to be set as the no-entry area or the movement range.
[0077] Block configuration 11 is a diagram showing a block configuration of the positioning device 1. As shown in FIG. 11, the positioning device 1 has a control unit 11, a storage unit 12, and a communication unit 13.
[0078] The control unit 11 controls the entire positioning device 1. The control unit 11 may be configured by a processor such as a CPU (central processing unit), for example.
[0079] The control unit 11 includes a marker positioning unit 11a, a feature point positioning unit 11b, and a correction unit 11c. The control unit 11 may realize the functions of each unit described above in accordance with a program (application) stored in the storage unit 12.
[0080] The marker positioning unit 11a calculates the relative position of the moving object 2 with respect to the marker, based on the tilt, shape, and size of the image of the marker included in the image captured by the camera 3. The marker positioning unit 11a calculates the position of the moving object 2 (positioning device 1) in the area A2a, based on the calculated relative position and map information.
[0081] When a marker image is not included in the image captured by the camera 3, the feature point positioning unit 11b calculates a feature point for each frame, for example, and calculates the relative movement amount of the moving object 2 from the difference in the position of the feature point for each frame. The feature point positioning unit 11b calculates the position of the moving object 2 in the area A2a based on the absolute value calculated by the marker positioning unit 11a and the relative movement amount.
[0082] The correction unit 11c corrects the positioning result calculated by the feature point positioning unit 11b. For example, the correction unit 11c corrects the positioning result calculated by the feature point positioning unit 11b based on any one of the above operation examples 1 to 3.
[0083] The memory unit 12 stores an operating system (OS) program and application programs executed by the control unit 11. The memory unit 12 also stores various data necessary for processing by the control unit 11. For example, the memory unit 12 stores map information of the area A2a. The memory unit 12 stores movement range information. The memory unit 12 stores no-entry area information. The memory unit 12 may be, for example, a solid state drive (SSD), a random access memory (RAM), a flash memory, a read only memory (ROM), and / or a hard disk drive (HDD).
[0084] The communication unit 13 communicates with the camera 3, for example, via wireless or wired LAN.
[0085] Operation flow Fig. 12 is a flowchart showing an example of positioning processing of the positioning device 1. The positioning device 1 repeatedly executes the processing of the flowchart shown in Fig. 12, for example, at a predetermined cycle.
[0086] The positioning device 1 receives image data from the camera 3 (S1).
[0087] The positioning device 1 determines whether or not the image of the image data received in S1 includes a marker (S2).
[0088] When the positioning device 1 determines that the image of the image data received in S1 includes a marker (YES in S2), it executes a positioning estimation process by marker positioning (S3). The process of S3 will be described in detail in the flowchart of FIG.
[0089] On the other hand, when the positioning device 1 determines that the image of the image data received in S1 does not include a marker (NO in S2), it executes a positioning estimation process by feature point positioning (S4). The process of S4 will be described in detail in the flowchart of FIG.
[0090] After performing the positioning estimation process in S3 and S4, the positioning device 1 stores the positioning result in the storage unit 12 (S5). Then, the positioning device 1 ends the process of this flowchart.
[0091] Fig. 13 is a flowchart showing a processing example of S3 (marker positioning) in Fig. 12. The positioning device 1 acquires marker coordinates of a marker included in an image based on map information including marker installation information (S11). Note that the marker installation information is information that associates image data of a marker affixed to an object with the installation position (coordinates) of the marker.
[0092] The positioning device 1 calculates a vector between the camera 3 and the marker from the shape of the marker included in the image (S12). That is, the positioning device 1 calculates the relative position of the moving object 2 with respect to the marker, such as the distance and direction.
[0093] The positioning device 1 adds the vector between the camera 3 and the marker calculated in S2 to the marker coordinates acquired in S11, and calculates the position of the moving object 2 (absolute position within the map of the map information) (S13). Then, the positioning device 1 ends the processing of this flowchart.
[0094] Fig. 14 is a flowchart showing an example of the process of S4 (feature point positioning) in Fig. 12. The positioning device 1 calculates feature points in an image captured by the camera 3 (S21).
[0095] The positioning device 1 compares the feature points with those of the previous frame to calculate the relative movement amount, such as the movement distance and movement direction, of the moving object 2 (S22).
[0096] The positioning device 1 adds the amount of relative movement calculated in S22 to the position (absolute position) of the previous frame to calculate the position (absolute position) of the moving object 2 (S23).Then, the positioning device 1 ends the process of this flowchart.
[0097] Fig. 15 is a flowchart showing an operation example 1 of the positioning device 1. Information on a moving range in which the moving object 2 can move is stored in the storage unit 12 of the positioning device 1. The positioning device 1 may execute the processing of the flowchart shown in Fig. 15 in parallel with the processing of the flowchart shown in Fig. 12, for example, or may execute the processing of the flowchart shown in Fig. 15 after the processing of S23 of the flowchart shown in Fig. 14.
[0098] The positioning device 1 determines whether or not the positioning result obtained by feature point positioning exceeds the movement range indicated by the movement range information (S31).
[0099] When the positioning device 1 determines that the positioning result obtained by the feature point positioning does not exceed the movement range indicated by the movement range information (NO in S31), the process of this flowchart ends.
[0100] On the other hand, when the positioning device 1 determines that the positioning result by the feature point positioning exceeds the movement range indicated by the movement range information (YES in S31), it corrects the movement direction of the moving object 2 so that it is in line with the movement range indicated by the movement range information (S32). Then, the positioning device 1 ends the process of the flowchart.
[0101] Fig. 16 is a flowchart showing an operation example 2 of the positioning device 1. The storage unit 12 of the positioning device 1 stores no-entry area information indicating no-entry areas into which the moving object 2 cannot enter. The positioning device 1 may, for example, execute the process of the flowchart shown in Fig. 16 in parallel with the process of the flowchart shown in Fig. 12, or may execute the process of the flowchart shown in Fig. 16 after the process of S23 of the flowchart shown in Fig. 14.
[0102] The positioning device 1 determines whether or not the positioning result based on the feature point positioning indicates that the vehicle has entered an area indicated by the no-entry area information (S41).
[0103] When the positioning device 1 determines that the positioning result by the feature point positioning does not indicate entry into the area indicated by the entry-prohibited area information (NO in S41), the process of this flowchart ends.
[0104] On the other hand, when the positioning device 1 determines that the positioning result by the feature point positioning indicates that the moving object 2 has entered the area indicated by the entry-prohibited area information (YES in S41), the positioning device 1 corrects the moving direction of the moving object 2 so that the moving object 2 follows the area indicated by the entry-prohibited area information (S42). Then, the positioning device 1 ends the process of the flowchart.
[0105] Fig. 17 is a flowchart showing an operation example 3 of the positioning device 1. The storage unit 12 of the positioning device 1 stores no-entry area information indicating no-entry areas into which the moving object 2 cannot enter. The positioning device 1 may, for example, execute the process of the flowchart shown in Fig. 17 in parallel with the process of the flowchart shown in Fig. 12, or may execute the process of the flowchart shown in Fig. 17 after the process of S23 of the flowchart shown in Fig. 14.
[0106] The positioning device 1 determines whether the moving object 2 has turned (S51).
[0107] When the positioning device 1 determines that the moving object 2 is not turning (NO in S51), the process of this flowchart ends.
[0108] On the other hand, if the positioning device 1 determines that the moving body 2 has turned (YES in S51), it calculates a first distance to the no-entry area ahead of the moving body 2 based on the positioning results at the time of turning (the position and turning angle of the moving body 2) and the map information (S52).
[0109] The positioning device 1 calculates a second distance to an object in front of the moving object 2 by using the feature points of the camera image of the camera 3 (S53).
[0110] The positioning device 1 determines whether or not the difference (absolute value) between the first distance and the second distance calculated in S52 is greater than a predetermined threshold value (S54).
[0111] When the positioning device 1 determines that the difference between the first distance and the second distance is not greater than the predetermined threshold (NO in S54), the process of this flowchart ends.
[0112] On the other hand, when the positioning device 1 determines that the difference between the first distance and the second distance is greater than the predetermined threshold (YES in S54), it corrects the turning angle so that the difference between the first distance and the second distance becomes the smallest (S55). Then, the positioning device 1 ends the process of the flowchart.
[0113] Summary of the first embodiment As described above, the communication unit 13 of the positioning device 1 receives image data from the camera 3 mounted on the moving object 2. The marker positioning unit 11a calculates the position of the moving object 2 on the map of the map information based on the marker image included in the image data. When the image data does not include a marker image, the feature point positioning unit 11b calculates the amount of movement including the moving distance and moving direction of the moving object 2 based on the feature points of the image of the image data, and calculates the position of the moving object 2 on the map based on the amount of movement and the position of the moving object 2 calculated by the marker positioning unit 11a. The correction unit 11c corrects the moving direction calculated by the feature point positioning unit 11b based on information related to the moving range of the moving object 2. This allows the positioning device 1 to suppress deviations in the positioning results.
[0114] For example, when the position of the moving body 2 calculated by the feature point positioning unit 11b goes outside the moving range indicated by the moving range information, the correction unit 11c corrects the moving direction to follow the frame of the moving range. For example, when the position of the moving body 2 calculated by the feature point positioning unit 11b enters the non-entry area indicated by the non-entry area information, the correction unit 11c corrects the moving direction to follow the frame of the non-entry area. For example, when the moving body turns, the correction unit 11c calculates a first distance to the non-entry area in the moving direction calculated by the feature point positioning unit 11b and a second distance to the non-entry area in the traveling direction of the moving body 2. When the difference between the first distance and the second distance is greater than a predetermined threshold, the correction unit 11c corrects the moving direction so that the difference between the first distance and the second distance becomes smaller. <Second embodiment> In the second embodiment, output of an erroneous positioning result of marker positioning is suppressed. The following describes the differences from the first embodiment.
[0115] ·Consider Fig. 18 is a diagram for explaining an example of an error in the positioning result of the marker positioning, in which the same components as in Fig. 2 are denoted by the same reference numerals.
[0116] A solid arrow A18a shown in Fig. 18 indicates a movement trajectory of the moving object 2. Black circles in Fig. 18 indicate the positioning results of the marker positioning.
[0117] In marker positioning, the positioning result may be erroneous due to shooting factors such as distortion of the image of the camera 3, the way the marker A2b is attached to the object, and incident light on the camera 3. For example, the positioning device 1 shoots the marker A2b at the position of the tip of the arrow A18a in Fig. 18. The positioning result of the marker positioning by shooting the marker A2b may be a place where the moving object 2 cannot move, as shown by the black circle A18b.
[0118] Therefore, the positioning device 1 sets a movement range of the moving object 2. When the positioning result of the marker positioning exceeds the set movement range, the positioning device 1 prioritizes the result of the feature point positioning (operation example 1).
[0119] In the positioning device 1, a no-entry area is set for the moving object 2. When the positioning device 1 enters the set no-entry area based on the positioning result of the marker positioning, the positioning device 1 prioritizes the result of the feature point positioning (operation example 2).
[0120] Example 1 In the operation example 1, the movement range of the moving object 2 is set in the same manner as in the operation example 1 of the first embodiment (see the description of FIG. 6).
[0121] Fig. 19 is a diagram for explaining an operation example 1 of the positioning device 1. In Fig. 19, the same components as those in Fig. 18 are denoted by the same reference numerals. It is assumed that the map information stored in the positioning device 1 includes movement range information indicating the movement range of the moving object 2 (see the thick line A19a).
[0122] Solid arrows A19b and A19d shown in Fig. 19 indicate the movement trajectory of the moving object 2. A black circle A19c in Fig. 19 indicates the positioning result of the marker positioning.
[0123] The positioning device 1 captures an image of the marker A2b at the position of the tip of the arrow A19b. It is assumed that the positioning result of the marker positioning by capturing the image of the marker A2b is outside the movement range indicated by the movement range information, as shown by a black circle A19c.
[0124] In this case, the positioning device 1 continues to output the result of feature point positioning until the next marker positioning is performed, without using the result of marker positioning by photographing the marker A2b at the tip position of the arrow A19b. For example, in the movement of the movement trajectory indicated by the arrow A19b and the arrow A19d in FIG. 19, the positioning device 1 continuously performs only feature point positioning without using the result of marker positioning.
[0125] This makes it possible for the positioning device 1 to output an appropriate positioning result for the moving object 2 even if the positioning result obtained by marker positioning is incorrect.
[0126] Example 2 In the second operational example, a no-entry area is set in the same manner as in the first operational example of the first embodiment (see the description of FIG. 8).
[0127] Fig. 20 is a diagram for explaining an operation example 2 of the positioning device 1. In Fig. 20, the same components as those in Fig. 18 are denoted by the same reference numerals. It is assumed that the map information stored in the positioning device 1 includes no-entry area information indicating areas where the moving object 2 cannot enter (see thick line A20a).
[0128] Solid arrows A20b and A20d shown in Fig. 20 indicate the movement trajectory of the moving object 2. A black circle A20c in Fig. 20 indicates the positioning result of the marker positioning.
[0129] The positioning device 1 captures an image of the marker A2b at the position of the tip of the arrow A20b. It is assumed that the positioning result of the marker positioning by capturing the image of the marker A2b is within the area of the no-entry area indicated by the no-entry area information, as shown by a black circle A20c.
[0130] In this case, the positioning device 1 continues to output the result of feature point positioning until the next marker positioning is performed, without using the result of marker positioning by photographing the marker A2b at the tip position of the arrow A20b. For example, in the movement of the movement trajectory indicated by the arrow A20b and the arrow A20d in FIG. 20, the positioning device 1 continuously performs only feature point positioning without using the result of marker positioning.
[0131] This makes it possible for the positioning device 1 to output an appropriate positioning result for the moving object 2 even if the positioning result obtained by marker positioning is incorrect.
[0132] Block configuration The block configuration in the second embodiment is similar to the block configuration shown in Fig. 11, but the function of the feature point positioning unit 11b is different. In the second embodiment, the feature point positioning unit 11b calculates the positioning result of the moving object 2 depending on the positioning result of the marker positioning unit 11a, without using the positioning result of the marker positioning.
[0133] Operation flow The flowchart of the overall process of the positioning device 1 in the second embodiment is similar to the flowchart shown in Fig. 12, and the description thereof will be omitted. Also, the flowchart of the feature point positioning process of the positioning device 1 in the second embodiment is similar to the flowchart shown in Fig. 14, and the description thereof will be omitted.
[0134] Fig. 21 is a flowchart showing an operation example 1 of marker positioning. The processes of S11 to S13 in Fig. 21 are similar to the processes of S11 to S13 in the flowchart in Fig. 13, and therefore the description thereof will be omitted.
[0135] The positioning device 1 refers to the map information stored in the storage unit 12 and determines whether the position of the moving object 2 calculated in S13 (the positioning result by marker positioning) has exceeded the movement range indicated by the movement range information (S61).
[0136] When the positioning device 1 determines that the position of the moving object 2 calculated in S13 does not exceed the movement range indicated by the movement range information (NO in S61), the process of this flowchart ends.
[0137] On the other hand, when the positioning device 1 determines that the position of the moving object 2 calculated in S13 exceeds the moving range indicated by the moving range information (YES in S61), it decides not to adopt the positioning result of S13 (S62). That is, the positioning device 1 outputs the positioning result of the feature point positioning as the positioning result of the moving object 2.
[0138] Fig. 22 is a flowchart showing an operation example 2 of marker positioning. The processes of S11 to S13 in Fig. 22 are similar to the processes of S11 to S13 in the flowchart in Fig. 13, and therefore the description thereof will be omitted.
[0139] The positioning device 1 refers to the map information stored in the memory unit 12 and determines whether the position of the moving body 2 calculated in S13 (the positioning result by marker positioning) has entered the area indicated by the no-entry area information (S71).
[0140] When the positioning device 1 determines that the position of the moving object 2 calculated in S13 has not entered the area indicated by the no-entry area information (NO in S71), the process of this flowchart ends.
[0141] On the other hand, when the positioning device 1 determines that the position of the moving object 2 calculated in S13 is in the area indicated by the no-entry area information (YES in S71), it decides not to adopt the positioning result of S13 (S72). That is, the positioning device 1 outputs the positioning result of the feature point positioning as the positioning result of the moving object 2.
[0142] Summary of the second embodiment As described above, when the position of the moving object 2 calculated by the marker positioning unit 11a goes outside the movement range of the movement range information, the feature point positioning unit 11b calculates the position of the moving object 2 without using the position of the moving object 2 calculated by the marker positioning unit 11a. This enables the positioning device 1 to output an appropriate positioning result for the moving object 2 even if the positioning result by the marker positioning is erroneous.
[0143] When the position of the moving object 2 calculated by the marker positioning unit 11a enters an unenterable area indicated by the unenterable area information, the feature point positioning unit 11b calculates the position of the moving object 2 without using the position of the moving object 2 calculated by the marker positioning unit 11a. This enables the positioning device 1 to output an appropriate positioning result for the moving object 2 even if the positioning result by the marker positioning is erroneous.
[0144] In the above, the feature point positioning unit 11b determines that the positioning result by the marker positioning is erroneous when the position of the moving object 2 calculated by the marker positioning unit 11a goes outside the movement range or enters an inaccessible area. However, the error of the positioning result by the marker positioning may be determined by other criteria. For example, when the positioning result by the marker positioning changes to an unrealistic extent, such as moving tens of meters in a few seconds, the positioning result by the marker positioning unit 11a is likely to be erroneous regardless of the positional relationship between the positioning result and the movement range or the inaccessible area. Therefore, the positioning result by the marker positioning may be determined to be erroneous in such a case as well.
[0145] In the above, when it is determined that the position of the moving object 2 calculated by the marker positioning unit 11a is incorrect, the feature point positioning unit 11b is controlled to calculate the position of the moving object 2 without using the position of the moving object 2 calculated by the marker positioning unit 11a. However, even if the position of the moving object 2 most recently calculated by the marker positioning unit 11a is incorrect, the position of the moving object calculated in the past may be correct. Therefore, when it is determined that the position of the moving object 2 calculated by the marker positioning unit 11a is incorrect, the feature point positioning unit 11b may be controlled to use the position calculated in the past by the marker positioning unit 11a to calculate the position of the moving object 2. That is, in the second embodiment, when it is determined that the position of the moving object 2 calculated by the marker positioning unit 11a is incorrect, the positioning device 1 may be controlled to output the position calculated by the feature point positioning unit 11b without outputting the position of the moving object 2 calculated by the marker positioning unit 11a. In this case, whether or not to use the position calculated by the marker positioning unit 11a in the calculation of the position by the feature point positioning unit 11b may be determined based on the timing at which the position was calculated, the reliability of the position, and the like.
[0146] The embodiment has been described above.
[0147] <Modification> Variation 1 In the above description, the positioning device 1 mounted on the moving body 2 measures the position of the moving body 2, but this is not limited to the above. A positioning device not mounted on the moving body 2 may measure the position of the moving body 2. For example, the moving body 2 may wirelessly communicate with a positioning device such as a server, and the positioning device such as the server may measure the position of the moving body 2. The positioning device such as a server may wirelessly receive image data from the camera 3 of the moving body 2. The positioning device such as a server may calculate a positioning result of the moving body 2 and transmit it to the moving body 2 wirelessly.
[0148] Variation 2 The first embodiment and the second embodiment may be combined. For example, the positioning device 1 may perform the correction described in the first embodiment and the correction described in the second embodiment.
[0149] Variation 3 In the above, the positioning estimation process using feature point positioning is performed when it is determined that the image of the image data does not include a marker or when the result of the marker positioning is not adopted. However, the positioning estimation process using feature point positioning may be performed regardless of whether or not the marker positioning is performed. For example, the marker positioning and the feature point positioning may be performed in parallel before the result of the marker positioning is obtained.
[0150] Variation 4 In the above, the positioning device 1 has been described as a device capable of performing both marker positioning and feature point positioning. However, the present disclosure can also be applied to a positioning device 1 that does not have a marker positioning function. In this case, the position of the positioning device 1 may be estimated using a means other than a marker. For example, it is possible to estimate the relative position with respect to a wireless communication access point from wireless communication parameters, or to use satellite positioning such as GPS. The position of the positioning device 1 may also be estimated from the result of feature point positioning. As described above, feature point positioning is prone to include errors when there is turning, but if there is movement without turning, the position indicated by the result of feature point positioning is sufficiently reliable.
[0151] Variation 5 In the above, when the positioning device 1 uses the result of feature point positioning, the position of the moving object 2 is calculated by adding the relative movement amount calculated by feature point positioning to the position of one frame before. However, the target to which the relative movement amount is added may be a position of two or more frames before. This is because, if the position of one frame before may include an error or margin of error, the position of one frame before is not necessarily more accurate than the position of two or more frames before. In addition, the target position to which the relative movement amount is added may be obtained by any positioning method, such as marker positioning, feature point positioning, or a positioning method using a known method such as satellite signals or wireless communication. In other words, the target position to which the relative movement amount is added may be a past position of the moving object 2.
[0152] Although the embodiment has been described above with reference to the drawings, the present disclosure is not limited to such examples. It is clear that a person skilled in the art can conceive of various modified or amended examples within the scope of the claims. It is understood that such modified or amended examples also belong to the technical scope of the present disclosure. In addition, the components in the embodiment may be arbitrarily combined within the scope of the present disclosure. Calculation may be rephrased as computation.
[0153] In the above-described embodiments, the notation "... part" used for each component may be replaced with other notations such as "... circuit", "... assembly", "... device", "... unit", or "... module".
[0154] The present disclosure can be realized by software, hardware, or software in cooperation with hardware. Each functional block used in the description of the above embodiment may be realized partially or entirely as an LSI, which is an integrated circuit, and each process described in the above embodiment may be controlled partially or entirely by one LSI or a combination of LSIs. The LSI may be composed of individual chips, or may be composed of one chip that includes some or all of the functional blocks. The LSI may have input and output of data. Depending on the degree of integration, the LSI may be called an IC, a system LSI, a super LSI, or an ultra LSI.
[0155] The method of integration is not limited to LSI, but may be realized by a dedicated circuit, a general-purpose processor, or a dedicated processor. Also, after LSI manufacturing, a programmable FPGA (Field Programmable Gate Array) or a reconfigurable processor that can reconfigure the connections and settings of circuit cells inside the LSI may be used. The present disclosure may be realized as digital processing or analog processing.
[0156] Furthermore, if a new integrated circuit technology that can replace LSI appears due to the progress of semiconductor technology or a derivative technology, it is possible to integrate the functional blocks using that technology. The application of biotechnology is also a possibility. [Industrial Applicability]
[0157] The present disclosure is useful for determining the position of a moving object. [Explanation of symbols]
[0158] 1 Positioning device 2. Mobile 3. Camera A2b, A3b markers 11 Control section 11a Marker positioning unit 11b Feature point positioning unit 11c Correction section 12 Storage section 13. Communications Department
Claims
1. A receiving unit that receives image data from a camera mounted on the moving object; a feature point positioning unit that calculates a movement amount including a movement distance and a movement direction of the moving object based on a feature point of an image of the image data, and calculates a position of the moving object on a map based on the movement amount and a past position of the moving object; a correction unit that corrects the moving direction when it is determined that the position of the moving object is incorrect based on the position of the moving object calculated by the feature point positioning unit and information on a moving range of the moving object on the map, and when the correction unit corrects the moving direction, the feature point positioning unit further recalculates a position of the moving body based on an amount of movement including a moving distance of the moving body and the corrected moving direction, and a past position of the moving body. Positioning device.
2. the information is movement range information indicating a movable range within which the moving object can move, the correction unit determines that the position of the moving object calculated by the feature point positioning unit is erroneous when the position of the moving object is outside the movement range. The positioning device according to claim 1 .
3. The correction unit corrects the movement direction so as to be aligned with a frame of the movement range. The positioning device according to claim 2.
4. the information is non-entry range information indicating a non-entry range into which the moving object cannot enter, the correction unit determines that the position of the moving object calculated by the feature point positioning unit is incorrect when the position of the moving object falls within the no-entry area. The positioning device according to claim 1 .
5. The correction unit corrects the movement direction so as to be aligned with a frame of the no-entry area. The positioning device according to claim 4.
6. the information indicates a boundary between an area in which the moving object can enter and an area in which the moving object cannot enter, the correction unit determines whether or not to correct the moving direction based on a comparison result between a first distance to the boundary in the moving direction on the map and a second distance to an object in the moving direction of the moving body, the second distance being calculated using feature points of an image of the image data. The positioning device according to claim 1 .
7. When a difference between the first distance and the second distance is greater than a predetermined threshold, the correction unit determines to correct the moving direction, and corrects the moving direction so that the difference between the first distance and the second distance becomes smaller. The positioning device according to claim 6.
8. The positioning device further comprises: a marker positioning unit that calculates a position of the moving object on a map of map information based on a marker image included in the image data; an output unit that outputs the position calculated by the feature point positioning unit or a position recalculated by the feature point positioning unit when it is determined that the position of the moving object calculated by the marker positioning unit is incorrect; The positioning device according to claim 1 .
9. when it is determined that the position of the moving object calculated by the marker positioning unit is incorrect, the feature point positioning unit calculates the position of the moving object without using the position of the moving object calculated by the marker positioning unit. The positioning device according to claim 8.
10. the information is movement range information indicating a movable range within which the moving object can move, When the position of the moving object calculated by the marker positioning unit is outside the movement range, the output unit determines that the position of the moving object calculated by the marker positioning unit is incorrect. The positioning device according to claim 8.
11. the information is non-entry range information indicating a non-entry range into which the moving object cannot enter, when the position of the moving object calculated by the marker positioning unit falls within the no-entry range, the output unit determines that the position of the moving object calculated by the marker positioning unit is incorrect. The positioning device according to claim 8.
12. A camera and a receiving unit that receives image data from the camera; a feature point positioning unit that calculates an amount of movement including a moving distance and a moving direction of a moving object based on feature points of an image of the image data, and calculates a position of the moving object on a map based on the amount of movement and a past position of the moving object; and a correction unit that corrects the moving direction when it is determined that the position of the moving object is incorrect based on the position of the moving object calculated by the feature point positioning unit and information regarding a moving range of the moving object on the map, wherein the feature point positioning unit further recalculates the position of the moving object based on the amount of movement including the moving distance and the corrected moving direction of the moving object and the past position of the moving object when the correction unit corrects the moving direction; A mobile object having the above configuration.
13. A receiving unit receives image data from a camera mounted on the moving object, a feature point positioning unit that calculates a movement amount including a movement distance and a movement direction of the moving object based on the feature points of the image of the image data, and calculates a position of the moving object on a map based on the movement amount and a past position of the moving object; a correction unit corrects the moving direction when it is determined that the position of the moving object is incorrect based on the position of the moving object calculated by the feature point positioning unit and information related to a moving range of the moving object on the map; When the correction unit corrects the moving direction, the feature point positioning unit recalculates a position of the moving body based on an amount of movement including a moving distance of the moving body and the corrected moving direction of the moving body and a past position of the moving body. Positioning method.
Citation Information
Patent Citations
Cargo location management device
JP2011219229A
Positioning device and mobile body
WO2020137315A1