Information processing device, information processing method and program
By calculating and using specific approximation formulas for rotated path information at various candidate rotation angles, the accuracy of path-based processing is improved, addressing the limitations of existing techniques in handling curved paths.
Patent Information
- Application Number
- JP2023205926
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-06
- Publication Date
- 2025-06-18
- Estimated Expiration
- 2043-12-06
AI Technical Summary
Existing techniques for processing based on object paths, such as decomposing paths into straight line, arc, and cycloid curve parts and approximating each part differently, do not significantly improve the accuracy of approximation or subsequent processing.
Calculating an approximation formula for rotated path information at various candidate rotation angles, determining a specific rotation angle and approximation formula for processing, and using these to perform predetermined processes such as object detection and trajectory prediction.
This approach enhances the accuracy of processing based on paths by improving the accuracy of path approximation and subsequent object detection and trajectory prediction, even for curved paths.
Smart Images

Figure 2025090992000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus, an information processing method, and a program.
Background Art
[0002] In recent years, a technique for executing processing based on the path of an object has been known. In such a technique, it is conceivable to calculate an approximate path obtained by approximating the path to a straight line and execute processing based on the approximate path. However, the path is not always a straight line. For example, the path may be a curve, or the path may be a combination of a straight line and a curve. Therefore, Patent Document 1 discloses a technique of decomposing a path into a plurality of parts such as a straight line part, an arc part, and a cycloid curve part, performing approximation on each of the plurality of parts by a different approximation method for each part to calculate an approximate path, and executing processing based on the approximate path.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, simply performing approximation on each of the plurality of parts obtained by decomposing the path by a different approximation method for each part may not improve the accuracy of the approximation. Further, if the accuracy of the approximation is not improved, the accuracy of the processing based on the approximate path may not be improved.
[0005] Therefore, the present invention has been made in view of the above problems, and an object of the present invention is to provide a technique capable of improving the accuracy of processing based on a path.
Means for Solving the Problems
[0006] In order to solve the above problems, according to one aspect of the present invention, an approximation formula for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information is calculated as a candidate approximation formula, and based on the candidate approximation formula and the rotated path information, a calculation unit that calculates a determined rotation angle and a determined approximation formula used for a predetermined process, and a processing unit that performs the predetermined process based on the determined rotation angle and the determined approximation formula are provided.
[0007] The information processing apparatus includes an object detection unit that detects an object based on a point cloud obtained by a sensor, and the processing unit may perform the predetermined process based on an object position based on a detection result of the object, the determined rotation angle, and the determined approximation formula.
[0008] The predetermined process may include a process of calculating a predicted distance that the object moves from the object position to a reference position based on the rotated object position by the determined rotation angle, the rotated reference position by the determined rotation angle, and the determined approximation formula.
[0009] The predetermined process may include a process of calculating, as an arrival prediction time, a time required for the object to move the predicted distance based on the predicted distance and a moving speed of the object.
[0010] The path information includes a plurality of path information, the calculation unit calculates the determined rotation angle and the determined approximation formula for each of the plurality of path information, and the processing unit may perform the predetermined process based on the rotated object position by the determined rotation angle for each of the plurality of path information and the determined approximation formula.
[0011] Each of the plurality of path information corresponds to a lane in which the object may exist, and the predetermined process may include a process of determining a lane in which the object exists based on the rotated object position by the determined rotation angle for each of the plurality of path information and the determined approximation formula.
[0012] The predetermined process may include a process of obtaining a reference position in the lane where the object is determined to exist, and a process of calculating a predicted distance that the object moves from the object position to the reference position based on the object position after rotation by the determined rotation angle, the reference position after rotation by the determined rotation angle, and the determined approximation formula in the lane where the object is determined to exist.
[0013] The predetermined process includes a process of specifying a point group used for object detection based on the point group after rotation by the determined rotation angle of each of the plurality of path information and the determined approximation formula, and the information processing apparatus may include an object detection unit that detects an object based on the point group.
[0014] The plurality of path information includes first path information and second path information, and for the same point, the second coordinate after rotation by the determined rotation angle of the first path information is smaller than the second coordinate after rotation by the determined rotation angle of the second path information. The predetermined process satisfies the condition that the second coordinate after rotation by the determined rotation angle of the first path information is greater than or equal to a first approximate value based on the first coordinate after rotation by the determined rotation angle of the first path information and the determined approximation formula of the first path information or a value obtained by subtracting a first margin width from the first approximate value, and the condition that the second coordinate after rotation by the determined rotation angle of the second path information is less than or equal to a second approximate value based on the first coordinate after rotation by the determined rotation angle of the second path information and the determined approximation formula of the second path information or a value obtained by adding a second margin width to the second approximate value. The process may include specifying, as the point group used for object detection, a point group that satisfies the conditions.
[0015] The calculation unit may calculate, for each candidate rotation angle, an approximate value based on the first coordinate of the rotated path information and the candidate approximation formula, and calculate the candidate rotation angle and the candidate approximation formula as the determined rotation angle and the determined approximation formula when the error between the approximate value and the second coordinate of the rotated path information is minimized.
[0016] Further, according to another aspect of the present invention for solving the above problems, an approximate expression for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information is calculated as a candidate approximate expression, and based on the candidate approximate expression and the rotated path information, a determination rotation angle and a determination approximate expression used for a predetermined process are calculated, and based on the determination rotation angle and the determination approximate expression, the predetermined process is performed. An information processing method executed by a computer is provided.
[0017] Further, according to another aspect of the present invention for solving the above problems, a computer calculates an approximate expression for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information as a candidate approximate expression, and based on the candidate approximate expression and the rotated path information, calculates a determination rotation angle and a determination approximate expression used for a predetermined process, and based on the determination rotation angle and the determination approximate expression, performs the predetermined process. A program is provided that causes the computer to function as a calculation unit and a processing unit.
Advantages of the Invention
[0018] As described above, according to the present invention, a technique capable of improving the accuracy of processing based on a path is provided.
Brief Description of the Drawings
[0019]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Embodiments for Carrying Out the Invention
[0020] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant description is omitted.
[0021] <0. Background> First, the background of the embodiments of the present invention will be described.
[0022] In recent years, techniques for executing processing based on the path of an object have been known. As described above, simply performing approximation for each of a plurality of parts obtained by decomposing the path using different approximation methods for each part may not improve the accuracy of the approximation. Also, if the accuracy of the approximation is not improved, the accuracy of the processing based on the approximated path may not be improved either.
[0023] Also, it is conceivable to calculate an approximated path by approximating the path with a curve represented by a polynomial of degree 2 or higher without decomposing the path, and execute processing based on the approximated path. As an example, with reference to FIG. 1, an example of an approximated path obtained by approximating the path with a curve represented by a 100th-degree polynomial will be described.
[0024] FIG. 1 is a diagram for explaining an example of an approximated path obtained by approximating a path with a curve represented by a 100th-degree polynomial. In the example shown in FIG. 1, on the xy plane with the horizontal axis as the x-axis and the vertical axis as the y-axis, "path information" is shown. The path information includes a plurality of points through which the path passes. Hereinafter, each of the plurality of points included in the path information will also be referred to as a "path element". Also, an approximated path obtained by approximating the path with a curve represented by a 100th-degree polynomial is shown as an "approximation result with a 100th-degree polynomial".
[0025] Referring to FIG. 1, it can be grasped that there is a part where the "approximation result with a 100th-degree polynomial" does not fit the "path information". This is mainly due to the difficulty of approximating a polynomial for path information in which there are multiple outputs y for one input x. That is, it can be grasped that simply approximating the path with a curve represented by a 100th-degree polynomial does not improve the accuracy of the approximation. Therefore, in this specification, a technique capable of improving the accuracy of processing based on an approximated path by improving the accuracy of approximation for a path will be mainly proposed.
[0026] The background of the embodiment of the present invention has been described above.
[0027] <1. First Embodiment> Subsequently, a first embodiment of the present invention will be described.
[0028] [1-1. Application Scenario of Information Processing System] First, with reference to FIG. 2, a scenario in which the information processing system according to the first embodiment of the present invention is applied will be described.
[0029] FIG. 2 is a diagram for explaining a scenario in which the information processing system according to the first embodiment of the present invention is applied. Referring to FIG. 2, an information processing apparatus 10-1 and a laser sensor 200 included in the information processing system according to the first embodiment of the present invention are shown. The laser sensor 200 can also be paraphrased as a LiDAR (Light Detection and Ranging) sensor.
[0030] Further referring to FIG. 2, a vehicle C1 traveling in lane L1 and a vehicle C2 traveling in lane L2 are shown. The traveling directions of vehicle C1 and vehicle C2 are the same direction. In the first embodiment of the present invention, lanes L1 and L2 in which vehicles travel in the same direction are the main target lane areas D1. In the example shown in FIG. 2, the number of lanes in the target lane area D1 is two lanes of lane L1 and lane L2, but the number of lanes in the target lane area D1 is not limited to two lanes, and may be one lane or three or more lanes.
[0031] On the other hand, the oncoming lane area D2 is an area in which vehicles travel in a direction opposite to the traveling directions of vehicle C1 and vehicle C2. The number of lanes in the oncoming lane area D2 is not particularly limited, and may be one lane or two or more lanes. The target lane area D1 and the oncoming lane area D2 correspond to the main road (hereinafter, also referred to as "main line") N1.
[0032] The autonomous vehicle C3 is traveling on the unpaved road N2 and is located at a position immediately before exiting from the unpaved road N2 onto the main line N1. Note that instead of the autonomous vehicle C3, a manually driven vehicle may be traveling on the unpaved road N2.
[0033] In recent years, with the realization of autonomous vehicles, it is expected to solve social issues such as reducing traffic accidents and alleviating the shortage of human resources. Along with the popularization of these autonomous vehicles, the provision of infrastructure - coordinated ITS (Intelligent Transport System) services is demanded.
[0034] In particular, when an autonomous vehicle (for example, the autonomous vehicle C3 shown in FIG. 2) makes a right - turn or a left - turn when exiting from the unpaved road N2 onto the main line N1, it is difficult for the autonomous vehicle to grasp the traffic information of the main line N1. Therefore, there is a risk that the autonomous vehicle may disrupt the traffic flow by forcefully merging from the unpaved road N2 onto the main line N1. Similarly, when an autonomous vehicle makes a right - turn or a left - turn at an intersection, there is also a risk of disrupting the traffic flow. Due to such circumstances, the provision of such services is strongly demanded.
[0035] As shown in FIG. 2, if the laser sensor 200 is installed as an infrastructure sensor on the roadside of the main line N1, the information processing device 10 - 1 can extract the traffic information of the main line N1 (information regarding the vehicle C1 traveling in the lane L1 and the vehicle C2 traveling in the lane L2, etc.) from the data obtained by the laser sensor 200. Then, the information processing device 10 - 1 can notify the autonomous vehicle C3 of the traffic information of the main line N1 by wireless means or the like. Thereby, a safe and smooth merging of the autonomous vehicle C3 onto the main line N1 can be expected.
[0036] Here, depending on the viewing angle of the laser sensor 200, data in an area outside the target lane area D1 (for example, the oncoming lane area D2, etc.) may also be acquired. In such a case, although vehicles should be detected only from the target lane area D1, vehicles may be detected from an area outside the target lane area D1, resulting in a situation where vehicles are misdetected and a situation where processing costs for unnecessary object detection are incurred.
[0037] According to the first embodiment of the present invention described below, even when the main line N1 is a curved road, only the vehicles C1 and C2 traveling in the target lane area D1 can be detected with high accuracy. Further, according to the first embodiment of the present invention, the possibility of incurring processing costs for unnecessary object detection can be reduced. As a result, even with an edge PC (Personal Computer) with low processing performance, only the vehicles C1 and C2 traveling in the target lane area D1 can be detected.
[0038] Referring to FIG. 2, route information R is shown. Although the route information R includes a plurality of route elements, if each of the plurality of routes is assigned a symbol, the visibility of the figure will be impaired. Therefore, a symbol P is assigned to one of the plurality of route elements. In the first embodiment of the present invention, the route information R is located at the boundary between the inside and the outside of the target lane area D1.
[0039] The boundary exists at both ends in the width direction of the target lane area D1. In the following description, among these boundaries, the route information R located at the left end side boundary of the lane L1 facing the direction from the upstream to the downstream of the target lane area D1 (hereinafter, also referred to as the "length direction") is simply referred to as "the route information R on the lane L1 side". Further, the route information R located at the right end side boundary of the lane L2 facing the length direction is simply referred to as "the route information R on the lane L2 side". The route information R will be described in more detail later.
[0040] In addition, vehicle C1 and vehicle C2 are examples of objects detected by laser sensor 200. Therefore, instead of vehicle C1 and vehicle C2, other objects may be detected by laser sensor 200. For example, the objects detected by laser sensor 200 may be a train or a person moving on an escalator.
[0041] At this time, the term "travel of a vehicle" appearing in this specification may be appropriately paraphrased as the term "movement of an object", and the term "lane" appearing in this specification may be appropriately paraphrased as the term "lane".
[0042] As described above, the scene to which the information processing system according to the first embodiment of the present invention is applied has been described.
[0043] [1-2. Configuration example of information processing system] Subsequently, a functional configuration example of the information processing system according to the first embodiment of the present invention will be described. FIG. 3 is a block diagram showing a functional configuration example of the information processing system according to the first embodiment of the present invention. As shown in FIG. 3, the information processing system according to the first embodiment of the present invention includes an information processing device 10-1, a laser sensor 200, a notification device 280, and a display device 290. The information processing device 10-1, the laser sensor 200, the notification device 280, and the display device 290 may be connected via a network.
[0044] (Laser sensor 200) The laser sensor 200 is installed at a position and orientation such that the vehicles C1 and C2 traveling in the target lane area D1 are within the measurement range of the laser sensor 200. Note that instead of the laser sensor 200, sensors other than the laser sensor 200 (for example, a distance measuring sensor, etc.) may be used. For example, a radar that uses electromagnetic waves instead of laser light (for example, a millimeter wave radar, etc.) may be used as the sensor. Alternatively, a sonar that uses sound waves instead of laser light may be used as the sensor.
[0045] (Information Processing Apparatus 10-1) The information processing apparatus 10-1 can be realized by a computer. As shown in FIG. 3, the information processing apparatus 10-1 includes a route information storage unit 100, a reference coordinate system information storage unit 110, a coordinate system conversion unit 120, an approximate route calculation unit 130, an approximate route information storage unit 140, and a route information output unit 160.
[0046] Furthermore, the information processing apparatus 10-1 includes a point cloud acquisition unit 210, a sensor coordinate system conversion unit 220, a point cloud identification unit 230, an object detection unit 250, a past frame detected object information storage unit 240, an object tracking unit 260, and an object information calculation unit 270. Details of these configurations included in the information processing apparatus 10-1 will be described later.
[0047] For example, the coordinate system conversion unit 120, the approximate route calculation unit 130, the route information output unit 160, the point cloud acquisition unit 210, the sensor coordinate system conversion unit 220, the point cloud identification unit 230, the past frame detected object information storage unit 240, the object detection unit 250, the object tracking unit 260, and the object information calculation unit 270 can be realized by a control unit (not shown). On the other hand, the route information storage unit 100, the reference coordinate system information storage unit 110, and the approximate route information storage unit 140 can be realized by a storage unit (not shown).
[0048] The control unit (not shown) includes a CPU (Central Processing Unit) and the like, and its function can be realized by a program stored in a non-volatile storage device being expanded to a RAM (Random Access Memory) by the CPU and executed. At this time, a computer-readable recording medium recording the program may also be provided. Alternatively, the control unit (not shown) may be configured by dedicated hardware or may be configured by a combination of a plurality of hardware components.
[0049] The memory unit (not shown) is a memory device capable of storing programs and data for operating a control unit (not shown). Further, the memory unit (not shown) can also temporarily store various data required in the process of operating the control unit (not shown). For example, the memory device may be a non-volatile memory device.
[0050] (Notification device 280) The notification device 280 notifies the information output from the information processing device 10-1 to the notification device 280 according to the control by the information processing device 10-1. For example, the notification device 280 may be configured by a display, and may notify the information by displaying the information output from the information processing device 10-1 to the notification device 280 on the display.
[0051] Note that the position where the notification device 280 is provided is not particularly limited. For example, the notification device 280 may be mounted on the autonomous vehicle C3.
[0052] (Display device 290) The display device 290 displays the information output from the information processing device 10-1 to the display device 290 according to the control by the information processing device 10-1. For example, the display device 290 may be configured by a display, and may display the information by displaying the information output from the information processing device 10-1 to the display device 290 on the display.
[0053] Note that the position where the display device 290 is provided is not particularly limited. For example, the display device 290 may be provided in a monitoring room where a monitor for monitoring the driving status of the vehicle is present.
[0054] The functional configuration example of the information processing system according to the first embodiment of the present invention has been described above.
[0055] [1-3. Operation example of information processing device] Next, an operation example of the information processing apparatus 10-1 according to the first embodiment of the present invention will be described. The operation example of the information processing apparatus 10-1 is mainly divided into two stages. The first stage is the pre-preparation stage. The second stage is the operation stage. Hereinafter, an operation example of the information processing apparatus 10-1 in the pre-preparation stage will be described with reference to FIGS. 4 to 6 (and also referring to FIGS. 1 to 3 as appropriate).
[0056] (Pre-preparation stage) FIG. 4 is a flowchart showing an operation example of the information processing apparatus 10-1 in the pre-preparation stage. As shown in FIG. 4, in the pre-preparation stage, the information processing apparatus 10-1 performs steps A12 and A13 for the left end and the right end of the target lane area D1 (that is, for the path information R on the lane L1 side and the path information R on the lane L2 side respectively) (step A11).
[0057] Here, the path information storage unit 100 has the path information R registered in advance. The path information R includes the positions of a plurality of path elements P respectively.
[0058] For example, the position of the moving body equipped with an RTK (Real Time Kinematic) mobile station detected while moving along the boundary between the inside and the outside of the target lane area D1 may be registered as the position of each of the plurality of path elements P. For example, when a white line is drawn on the boundary between the inside and the outside of the target lane area D1, the moving body equipped with the RTK mobile station may move on the white line.
[0059] Alternatively, the position on the boundary between the inside and the outside of the target lane area D1 obtained from the map information of the Geospatial Information Authority of Japan may be registered as the position of each of the plurality of path elements P.
[0060] The path information R is represented by the position in the coordinate system before conversion in the laser sensor 200 (hereinafter, also referred to as the "original coordinate system"). However, the coordinate system suitable for processing the point cloud obtained by the laser sensor 200 may be a coordinate system different from the original coordinate system (hereinafter, also referred to as the "reference coordinate system"). Therefore, the coordinate system conversion unit 120 converts the coordinate system indicating the path information R from the original coordinate system to the reference coordinate system (step A12).
[0061] Note that in cases where the processing of the point cloud can be appropriately performed even without coordinate system conversion, step A12 may be omitted.
[0062] For example, the reference coordinate system may be a coordinate system with the position of the laser sensor 200 as the origin, the direction from the upstream to the downstream of the target lane area D1 in a predetermined section (i.e., the length direction) as the y-axis, and the direction from the left end of the lane L1 to the right end of the lane L2 (hereinafter, also referred to as the "width direction") in the length direction in the predetermined section as the x-axis. The predetermined section does not have to be particularly limited. As an example, the predetermined section may be a section close to the position of the laser sensor 200.
[0063] More specifically, assume that the position of the laser sensor 200 in the original coordinate system is (O x , O y ), and the position of the path element P in the original coordinate system is (P x , P y ). Also assume that the length direction of the target lane area D1 in the predetermined section is deviated from the y-axis in the original coordinate system by an angle α. At this time, the position (P x , P y ) of the path element P in the original coordinate system is stored in the path information storage unit 100, and the position (O x , O y ) of the laser sensor 200 and the angle α are stored in the reference coordinate system information storage unit 110.
[0064] The coordinate system conversion unit 120 obtains, from the path information storage unit 100, the position (P x , Py ) is obtained, and the position (O x , O y ) and the angle α of the laser sensor 200 are obtained from the reference coordinate system information storage unit 110. Then, the coordinate system conversion unit 120 determines the position (P x , P y ) of the path element P in the original coordinate system and the position (O x , O y ) and the angle α of the laser sensor 200, and based on these, the position P’ (P’ x , P’ y ) of the path element P in the reference coordinate system can be calculated as shown in the following formula (1).
[0065]
Equation
[0066] In this way, the position P’ (P’ x , P’ y ) of each of the plurality of path elements P included in the path information R in the reference coordinate system is calculated. The approximate path calculation unit 130 calculates an approximate path by approximating the positions P’ (P’ x , P’ y ) of each of the plurality of path elements P in the reference coordinate system (step A13).
[0067] More specifically, the approximate path calculation unit 130 rotates each of the positions P’ (P’ x , P’ y ) of the plurality of path elements P in the reference coordinate system by each of the plurality of candidate rotation angles θ, and calculates the plurality of path elements P’’ θ after rotation for each candidate rotation angle θ. Then, the approximate path calculation unit 130 calculates an approximate formula for the plurality of path elements P’’ θ after rotation as a candidate approximate formula y = f kθ (x). Here, k indicates the highest degree of the candidate approximate formula.
[0068] The plurality of path elements P’’ θThe approximation for may be a polynomial approximation (hereinafter also referred to as "polyfit"). In this specification, a polynomial may include not only cases where the number of terms is plural but also cases where the number of terms is one. Also, in this specification, a polynomial may be an expression with a highest degree of 0 dimension or 1 dimension or more. That is, the candidate approximation formula y = f kθ (x) can be expressed using k coefficients (where k is an integer greater than or equal to 0) and one constant. For example, f kθ (x) can be calculated as shown in the following formula (2).
[0069] [Number]
[0070] Here, the plurality of candidate rotation angles θ may be determined in any manner. As an example, the plurality of candidate rotation angles θ may be angles that change by Δθ (for example, 1 degree, etc.) within the range of -0 ≦ θ < 180 degrees.
[0071] The approximation path calculation unit 130 calculates, for each candidate rotation angle θ, the rotation angle used for a predetermined process as a determination rotation angle and calculates the approximation formula used for the predetermined process as a determination approximation formula based on the candidate approximation formula y = f kθ (x) and the plurality of path elements P'' θ after rotation.
[0072] In the first embodiment of the present invention, the predetermined process is a process of specifying the point group used by the point group specifying unit 230 for object detection. That is, the point group specifying unit 230 corresponds to an example of a processing unit that performs a predetermined process based on the determination rotation angle and the determination approximation formula.
[0073] For example, the approximation path calculation unit 130 may calculate, for each candidate rotation angle θ, the x coordinate (first coordinate) of the plurality of path elements P'' θ after rotation, which is P'' θx , and the approximation value f kθ (x) based on the candidate approximation formula y = f kθ (P'' θx ).
[0074] Then, the approximate path calculation unit 130 calculates the approximate value f kθ (P'') θx and the y - coordinate (second coordinate) of the plurality of path elements P'' after rotation, P'' θ , and when the error with P'' θy is minimized, the candidate rotation angle θ and the candidate approximation formula y = f kθ (x) may be calculated as the determined rotation angle θ k_min and the determined approximation formula y = f kθ_min (x).
[0075] At this time, the error between f kθ (P'') θx and P'' θy may be the maximum error maxError kθ . Also, the maximum error maxError kθ may be the maximum value of the absolute value of the difference between f kθ (P'') θx and P'' θy . For example, the approximate path calculation unit 130 may calculate the determined rotation angle θ k_min as shown in the following formula (3).
[0076]
Equation
[0077] In the above formula (3), argmin takes the maximum error maxError kθ as the input and outputs the candidate rotation angle θ when the maximum error maxError kθ is minimized. That is, the candidate rotation angle θ output from argmin is calculated as the determined rotation angle θ k_min , and the candidate approximation formula y = f kθ (x) corresponding to the candidate rotation angle θ is calculated as the determined approximation formula y = f kθ_min (x).
[0078] Note that, the higher the degree k of the determined approximation formula y = f kθ_min (x), the higher the degree of the determined approximation formula y = f kθ_minAfter using (x), it is conceivable that the processing load in the subsequent stage increases while the processing accuracy improves. Therefore, instead of determining the degree k all at once from the beginning, the approximate path calculation unit 130 calculates maxError kθ for each of a plurality of candidate degrees k, and may determine the degree k based on maxError kθ .
[0079] FIG. 5 is a diagram showing an example of the correspondence relationship between the degree k, the maximum error maxError kθ , and the determined rotation angle θ k_min . In the example shown in FIG. 5, even if the degree k is lowered to some extent, the maximum error maxError kθ is kept small.
[0080] For example, the approximate path calculation unit 130 may determine the degree k based on the correspondence relationship between the degree k and the maximum error maxError kθ (that is, considering the processing accuracy and the processing load). As an example, the approximate path calculation unit 130 may determine the lowest degree k among the degrees k for which the maximum error maxError kθ is lower than the threshold value.
[0081] The determined rotation angle θ k_min and the determined approximate expression y = f kθ_min (x) may correspond to the approximate path. That is, according to the first embodiment of the present invention, an approximate path based on the path information can be calculated with high accuracy. The approximate path calculation unit 130 stores the determined rotation angle θ k_min , and the k coefficients and 1 constant representing the determined approximate expression y = f kθ_min (x) in the approximate path information storage unit 140.
[0082] FIG. 6 is a diagram for explaining an example of an approximate path obtained by approximating the path after rotation with a curve represented by a sixth-degree polynomial. In the example shown in FIG. 6, the approximate path obtained by approximating the path after a 45-degree rotation with a curve represented by a sixth-degree polynomial is shown as the "approximation result with a sixth-degree polynomial". Referring to FIG. 6, it can be understood that an approximate path with a small error was calculated for the curve represented by a lower-degree polynomial due to the rotation of the path.
[0083] The path information output unit 160 may output an approximate path based on the determined rotation angle θ k_min and the k coefficients and one constant representing the determined approximate expression y = f kθ_min (x) to the display device 290. Then, the display device 290 may display the approximate path. Thereby, the supervisor can visually confirm the approximate path calculated by the approximate path calculation unit 130.
[0084] As described above, with reference to FIGS. 4 to 6, an operation example of the information processing apparatus 10-1 in the pre-preparation stage has been described.
[0085] (Operation stage) Subsequently, with reference to FIGS. 7 to 9, an operation example of the information processing apparatus 10-1 in the operation stage will be described.
[0086] FIG. 7 is a flowchart showing an operation example of the information processing apparatus 10-1 in the operation stage. As shown in FIG. 7, in the operation stage, the point group acquisition unit 210 acquires the point group obtained by the laser sensor 200 from the laser sensor 200 (step B11).
[0087] Subsequently, the sensor coordinate system conversion unit 220 converts the coordinate system indicating the point group from the original coordinate system to the reference coordinate system (step B12). Note that, similar to step A12 (FIG. 4), step B12 may be omitted when the processing for the point group can be appropriately performed even without the coordinate system conversion.
[0088] More specifically, the sensor coordinate system conversion unit 220 obtains the position (O x , O y ) and the angle α of the laser sensor 200 from the reference coordinate system information storage unit 110. Then, the sensor coordinate system conversion unit 220 uses the equation obtained by substituting (P x , P y ) in the above equation (1) with the position of the point cloud, and based on the position (O x , O y ) and the angle α of the point cloud and the laser sensor 200, the point cloud Pc(x, y, z) in the reference coordinate system can be calculated.
[0089] The point cloud specifying unit 230 specifies the point cloud used for object detection (step B13). Hereinafter, an example will be described in which the point cloud specifying unit 230 specifies the point cloud used for object detection in the z-axis direction and in the xy plane (that is, the direction perpendicular to the z-axis). Note that the process of specifying the point cloud used for object detection in the z-axis direction is a process performed for speeding up the process of specifying the point cloud used for object detection in the xy plane, and may be omitted as appropriate.
[0090] First, the minimum value z_min and the maximum value z_max of the z coordinate of the position where the object to be detected (in the example shown in FIG. 2, the vehicle C1 and the vehicle C2) may exist are set in advance.
[0091] The point cloud specifying unit 230 specifies, based on the point cloud Pc(x, y, z) in the reference coordinate system, a point cloud Pc' among the point cloud Pc whose z coordinate is greater than or equal to z_min and less than or equal to z_max. That is, when the z coordinate of the point cloud Pc in the reference coordinate system is pc_z, the point cloud specifying unit 230 specifies a point cloud Pc' that satisfies (pc_z≥z_min) && (pc_z≤z_max). Hereinafter, focusing on the xy coordinates of the point cloud Pc', the point cloud Pc' is expressed as Pc'(x', y').
[0092] In the following description, the position of the route information R on the lane L1 side in the reference coordinate system is also denoted as the route information R1' in the reference coordinate system. Also, the position of the route information R on the lane L2 side in the reference coordinate system is also denoted as the route information R2' in the reference coordinate system. The route information R1' in the reference coordinate system corresponds to an example of the first route information. The route information R2' in the reference coordinate system corresponds to an example of the second route information.
[0093] Also, the determination rotation angle θ corresponding to the route information R1' in the reference coordinate system k_min is also denoted as θ1, and the determination rotation angle θ corresponding to the route information R2' in the reference coordinate system k_min is also denoted as θ2. Also, the determination approximation formula y = f kθ_min (x) corresponding to the route information R1' in the reference coordinate system is also denoted as y = f1(x), and the determination rotation angle y = f corresponding to the route information R2' in the reference coordinate system kθ_min (x) is also denoted as y = f2(x).
[0094] The point group specifying unit 230 acquires from the approximate route information storage unit 140 the determination rotation angle θ1 corresponding to the route information R1' in the reference coordinate system, and k coefficients and one constant representing the determination approximation formula y = f1(x). Further, the point group specifying unit 230 acquires from the approximate route information storage unit 140 the determination rotation angle θ2 corresponding to the route information R2' in the reference coordinate system, and k coefficients and one constant representing the determination approximation formula y = f2(x).
[0095] FIG. 8 is a diagram showing an example of route information before and after rotation by the determination rotation angle. The graph shown on the left in FIG. 8 shows the route information R1' and the route information R2' in the reference coordinate system. The graph on the right in FIG. 8 shows the determination approximation formula y = f1(x) after rotating the route information R1' in the reference coordinate system by the determination rotation angle θ1, and the determination approximation formula y = f2(x) after rotating the route information R2' in the reference coordinate system by the determination rotation angle θ2.
[0096] Based on the determined rotation angle θ1, the path information R1' in the reference coordinate system, the determined rotation angle θ2, and the path information R2' in the reference coordinate system, the point group specifying unit 230 determines, among y = f1(x) and y = f2(x), the approximate expression that changes at the position with the larger y coordinate as f_upper(x), and determines the approximate expression that changes at the position with the smaller y coordinate as f_lower(x).
[0097] As detailed determination methods for f_upper(x) and f_lower(x), various methods can be adopted. As an example, the point group specifying unit 230 may input a certain point Pc'(x', y') included in the point group Pc' into y = f1(x) with the x value after rotation by θ1 as x1, and obtain the y value as y1, which is the output. Similarly, the point group specifying unit 230 may input the point Pc'(x', y') into y = f2(x) with the x value after rotation by θ2 as x2, and obtain the y value as y2, which is the output.
[0098] Then, when y1 is smaller than y2, the point group specifying unit 230 may determine y = f1(x) as y = f_lower(x), determine θ1 as θ_lower, determine y = f2(x) as y = f_upper(x), and determine θ2 as θ_upper. On the other hand, when y2 is smaller than y1, the point group specifying unit 230 may determine y = f2(x) as y = f_lower(x), determine θ2 as θ_lower, determine y = f1(x) as y = f_upper(x), and determine θ1 as θ_upper.
[0099] The point group specifying unit 230 calculates the point group (x'_rot_lower, y'_rot_lower) after rotation by θ_lower for each point (x', y') included in the point group Pc'. Also, the point group specifying unit 230 calculates the point group (x'_rot_upper, y'_rot_upper) after rotation by θ_upper for each point (x', y') included in the point group Pc'. That is, the point group after rotation can be calculated as shown in the following formula (4).
[0100]
Mathematics
[0101] Furthermore, the point group specifying unit 230 calculates, using x’_rot_lower as an input, the y value (the first approximation value) output from y = f_lower(x) as an approximate value y’_est_lower. Also, the point group specifying unit 230 calculates, using x’_rot_upper as an input, the y value (the second approximation value) output from y = f_upper(x) as an approximate value y’_est_upper. That is, each approximate value can be calculated as shown in the following formula (5).
[0102]
Mathematics
[0103] The point group specifying unit 230 can specify, as the point group Pc’’(x’’,y’’) used for object detection, the point group that satisfies the condition that the approximate value y’_est_lower is greater than or equal to y’_rot_lower and the condition that the approximate value y’_est_upper is less than or equal to y’_rot_upper. That is, the point group Pc’’(x’’,y’’) can be specified as shown in the following formula (6).
[0104]
Mathematics
[0105] Alternatively, the point group specifying unit 230 may specify, as the point group Pc’’(x’’,y’’) used for object detection, the point group that satisfies the condition that the value obtained by subtracting the first margin width margin1 from the approximate value y’_est_lower is greater than or equal to y’_rot_lower and the condition that the value obtained by adding the second margin width margin2 to the approximate value y’_est_upper is less than or equal to y’_rot_upper. That is, the point group Pc’’(x’’,y’’) may be specified as shown in the following formula (7).
[0106] [Numerical]
[0107] The point group specifying unit 230 may output the specified point group Pc’’(x’’,y’’) to the display device 290. Then, the display device 290 may display the point group Pc’’(x’’,y’’). Thereby, the monitor can visually confirm the point group Pc’’(x’’,y’’) specified by the point group specifying unit 230.
[0108] FIG. 9 is a diagram showing an example of the point group Pc’(x’,y’) before being specified by the point group specifying unit 230. FIG. 10 is a diagram showing an example of the point group Pc’’(x’’,y’’) specified by the point group specifying unit 230. The point group area V11 corresponds to the target lane area D1. The point group area V12 corresponds to the oncoming lane area D2. The point group area V13 corresponds to other areas.
[0109] Referring to FIG. 9, before being specified by the point group specifying unit 230, not only the point group area V11 corresponding to the target lane area D1 but also the point group area V12 corresponding to the oncoming lane area D2 and the point group area V13 corresponding to other areas are included in the point group Pc’(x’,y’). On the other hand, referring to FIG. 10, after being specified by the point group specifying unit 230, only the point group area V11 corresponding to the target lane area D1 is included in the point group Pc’’(x’’,y’’).
[0110] The object detection unit 250 detects an object based on the point group Pc’’(x’’,y’’) specified by the point group specifying unit 230 (step B14). For example, the object detection unit 250 may detect an object by background difference processing and clustering processing. Note that the object detected by the object detection unit 250 is obtained as a three-dimensional point group of the object. In this specification, the object detected by the object detection unit 250 is mainly a vehicle.
[0111] The object tracking unit 260 performs association between the detected objects in the current frame (the point cloud obtained at the current time) and the detected objects in the previous frame (the point cloud obtained at a predetermined time before the current time) (step B15). More specifically, the object tracking unit 260 acquires the positions of the objects in the previous frame from the past frame detected object information storage unit 240.
[0112] Furthermore, the object tracking unit 260 detects the positions of the objects in the current frame based on the detection results of the objects. The position of the object detected by the object tracking unit 260 may be any position of the object. For example, the object tracking unit 260 may detect the centroid position of the three-dimensional point cloud of the object as the position of the object, or may detect the position estimated based on the position of the three-dimensional point cloud of the object and the velocity of the object as the position of the object. Alternatively, the object tracking unit 260 may detect the leading position or the trailing position of the object as the position of the object. Known techniques may be applied to calculate the leading position and the trailing position of the object.
[0113] When the distance between the position of the object in the previous frame and the position of the object in the current frame is equal to or less than the threshold value, the object tracking unit 260 associates the position of the object in the current frame with the position of the object in the previous frame that is closest to the position of the object in the current frame and stores it in the past frame detected object information storage unit 240. For example, the distance between the position of the object in the previous frame and the position of the object in the current frame may be the Euclidean distance. Note that the previous frame can also be referred to as a frame in the past (past frame) relative to the current frame.
[0114] On the other hand, when the distance between the position of the object in the previous frame and the position of the object in the current frame exceeds the threshold value, the object tracking unit 260 stores the position of the object in the current frame in the past frame detected object information storage unit 240 without associating it with the position of the object in the previous frame.
[0115] The object information calculation unit 270 calculates information about the object detected by the object detection unit 250 as object information (step B16). In the example shown in FIG. 2, the information about the object is information about the vehicle C1 traveling on the lane L1 of the target lane area D1 and information about the vehicle C2 traveling on the lane L2 of the target lane area D1.
[0116] For example, the object information calculation unit 270 may calculate the speed of the object as an example of object information based on the position of the object in the previous frame and the position of the object in the current frame. Further, the object information calculation unit 270 may calculate the centroid position of the object as an example of object information. For example, the centroid position of the object may be the centroid position of the point cloud corresponding to the object. Furthermore, the object information calculation unit 270 may calculate the head position or the tail position of the object as an example of object information based on the position of the object in the current frame.
[0117] The object information calculation unit 270 outputs the calculated object information to the notification device 280 (step B17). Then, the notification device 280 may notify the object information. Thus, when the notification device 280 is mounted on the autonomous vehicle C3 (FIG. 2), the passengers of the autonomous vehicle C3 can confirm the object information calculated by the object information calculation unit 270.
[0118] Also, the object information calculation unit 270 outputs the calculated object information to the display device 290 (step B18). Then, the display device 290 may display the object information. Thus, the supervisor can visually confirm the object information calculated by the object information calculation unit 270.
[0119] The operation example of the information processing apparatus 10-1 according to the first embodiment of the present invention has been described above.
[0120] [1-4. Effects of the Embodiment] As described above, in the information processing apparatus 10-1 according to the first embodiment of the present invention, the approximate path calculation unit 130 calculates, as candidate approximate expressions, approximate expressions for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information. Then, the approximate path calculation unit 130 calculates a determined rotation angle and a determined approximate expression used for a predetermined process based on the candidate approximate expressions and the rotated path information. Thereby, even when the path has a curved shape or the like, the accuracy of approximation for the path is improved.
[0121] Further, the point group specifying unit 230 performs a predetermined process based on the determined rotation angle and the determined approximate expression. Thereby, the accuracy of the process is improved. In the first embodiment of the present invention, the predetermined process is a point group specifying process used for object detection. Thereby, only the point group corresponding to the path information is used for object detection, so that the accuracy of object detection is improved.
[0122] Furthermore, according to the point group specifying process according to the first embodiment of the present invention, the processing time is significantly reduced as compared with the point group specifying process according to the comparative example. For example, the comparative example is an example in which a plurality of three-dimensional regions having a rectangular parallelepiped shape are arranged, and the point group in the plurality of three-dimensional regions is specified as the point group used for object detection.
[0123] FIG. 11 is a diagram showing the processing times of the point group specifying process according to the first embodiment of the present invention and the point group specifying process according to the comparative example. Referring to FIG. 11, it can be understood that the processing time required for the point group specifying process according to the "present embodiment" is reduced by 88.7% based on the processing time required for the point group specifying process according to the "comparative example".
[0124] The effects of the first embodiment of the present invention have been described above.
[0125] <2. Second Embodiment> Next, a second embodiment of the present invention will be described. In the following description, among the configurations according to the second embodiment of the present invention, the description of the configurations common to the configurations according to the first embodiment of the present invention will be omitted, and the configurations different from the configurations according to the first embodiment of the present invention will be mainly described.
[0126] [2-1. Application Scenarios of Information Processing System] First, with reference to FIG. 12, the scenarios to which the information processing system according to the second embodiment of the present invention is applied will be described.
[0127] FIG. 12 is a diagram for explaining the scenarios to which the information processing system according to the second embodiment of the present invention is applied. Referring to FIG. 12, an information processing apparatus 10-2 and a laser sensor 200 included in the information processing system according to the second embodiment of the present invention are shown.
[0128] Similar to the first embodiment of the present invention, if the laser sensor 200 is installed as an infrastructure sensor on the roadside of the main line N1, the information processing apparatus 10-2 can extract the traffic information of the main line N1 from the data obtained by the laser sensor 200. Then, the information processing apparatus 10-2 can notify the automated vehicle C3 of the traffic information of the main line N1 by wireless or the like. As a result, a safe and smooth merge of the automated vehicle C3 into the main line N1 can be expected.
[0129] The traffic information of the main line N1 may include the driving lanes of the vehicles C1 and C2 existing in the target lane area D1 of the main line N1.
[0130] In addition, the traffic information of the main line N1 may include the predicted distances that the vehicles C1 and C2 existing in the target lane area D1 of the main line N1 each travel from their current positions to the positions where the automated vehicle C3 makes a right turn or a left turn (hereinafter, also referred to as "reference positions"). In FIG. 12, the reference position Q1 of the lane L1 and the reference position Q2 of the lane L2 are shown.
[0131] Furthermore, the traffic information of the main line N1 may include the time required for each of the vehicles C1 and C2 existing in the target lane area D1 of the main line N1 to travel their predicted distances (hereinafter, also referred to as "predicted arrival time").
[0132] If the main line N1 is a straight road, the determination of the driving lanes of the vehicles C1 and C2 existing in the target lane area D1 of the main line N1, the calculation of the predicted distance that the vehicle C1 travels from its current position to the reference position Q1, and the calculation of the predicted distance that the vehicle C2 travels from its current position to the reference position Q2 can be easily performed.
[0133] For example, assuming that each of the lanes L1 and L2 is a straight lane, the upstream-to-downstream direction (i.e., the length direction) of the target lane area D1 is set as the y-axis, and the direction from the left end of the lane L1 to the right end of the lane L2 (i.e., the width direction) facing the upstream-to-downstream direction of the target lane area D1 is set as the x-axis.
[0134] At this time, the driving lanes of each of the vehicles C1 and C2 can be determined based on the comparison between the x-coordinates of each of the vehicles C1 and C2 and the threshold value of the x-component.
[0135] As an example, assume that the x-coordinate of the left end of the lane L1 is 0, and the width of each of the lanes L1 and L2 is 3.0 m. At this time, the driving lane of a vehicle that satisfies the condition of 0 ≦ x < 3.0 m for the x-coordinate is determined to be the lane L1. The x-coordinate of the vehicle C1 is considered to satisfy this condition. On the other hand, the driving lane of a vehicle that satisfies the condition of 3.0 m ≦ x < 6.0 m for the x-coordinate is determined to be the lane L2. The x-coordinate of the vehicle C2 is considered to satisfy this condition.
[0136] Also, the predicted distance that the vehicle C1 travels from its current position to the reference position Q1 can be calculated by subtracting the y-coordinate of the current position of the vehicle C1 from the y-coordinate of the reference position Q1. Similarly, the predicted distance that the vehicle C2 travels from its current position to the reference position Q2 can be calculated by subtracting the y-coordinate of the current position of the vehicle C2 from the y-coordinate of the reference position Q2.
[0137] As an example, assume that the y - coordinate of the current position of vehicle C1 is 50.0 m and the y - coordinate of the reference position Q1 is 150.0 m. At this time, the predicted distance from the current position of vehicle C1 to the reference position Q1 can be calculated as 150.0 m−50.0 m = 100.0 m by subtracting the y - coordinate of the current position of vehicle C1 from the y - coordinate of the reference position Q1. Note that the predicted distance from the current position of vehicle C2 to the reference position Q2 can also be calculated in the same way.
[0138] However, as shown in FIG. 12, when the main line N1 is a curved road (that is, when the main line N1 has a curved shape with a curve), an error occurs in the determination of the travel lanes of vehicle C1 and vehicle C2. Then, an error also occurs in the calculation of the predicted distance that vehicle C1 travels from its current position to the reference position Q1 and in the calculation of the predicted distance that vehicle C2 travels from its current position to the reference position Q2. As a result, an error also occurs in the calculation of the arrival prediction time required for vehicle C1 and vehicle C2 to travel their respective predicted distances.
[0139] According to the second embodiment of the present invention described below, even when the main line N1 is a curved road, the determination accuracy of the travel lanes of vehicle C1 and vehicle C2 is improved, and the calculation accuracy of the predicted distance that vehicle C1 travels from its current position to the reference position Q1 and the calculation accuracy of the predicted distance that vehicle C2 travels from its current position to the reference position Q2 can be improved. As a result, the calculation accuracy of the arrival prediction time required for vehicle C1 and vehicle C2 to travel their respective predicted distances can be improved.
[0140] Referring to FIG. 12, route information R is shown. Although the route information R includes a plurality of route elements, as in the first embodiment of the present invention, a code P is assigned to one of the plurality of route elements.
[0141] In the second embodiment of the present invention, the route information R is located inside each of the lanes L1 and L2 in the target lane area D1. In the following description, the route information R located inside the lane L1 is also simply referred to as "the route information R in the lane L1". Further, the route information R located inside the lane L2 is also simply referred to as "the route information R in the lane L2". The route information R will be described in more detail later.
[0142] The above describes the scenario to which the information processing system according to the second embodiment of the present invention is applied.
[0143] [2-2. Configuration example of the information processing system] Subsequently, a functional configuration example of the information processing system according to the second embodiment of the present invention will be described. FIG. 13 is a block diagram showing a functional configuration example of the information processing system according to the second embodiment of the present invention. As shown in FIG. 13, in the information processing system according to the second embodiment of the present invention, compared with the information processing system according to the first embodiment of the present invention, the information processing device 10-1 (FIG. 3) is replaced by the information processing device 10-2.
[0144] (Information processing device 10-2) The information processing device 10-2 can be realized by a computer. As shown in FIG. 12, compared with the information processing device 10-1, the information processing device 10-2 does not include the point group specifying unit 230, but instead includes a reference position information storage unit 150 and an arrival information calculation unit 275. The arrival information calculation unit 275 can be realized by a control unit (not shown). On the other hand, the reference position information storage unit 150 can be realized by a storage unit (not shown).
[0145] The above describes the functional configuration example of the information processing system according to the second embodiment of the present invention.
[0146] [2-3. Operation example of the information processing device] Next, an operation example of the information processing apparatus 10-2 according to the second embodiment of the present invention will be described. The operation example of the information processing apparatus 10-2 according to the second embodiment of the present invention is divided into a pre-preparation stage and an operation stage, similar to the operation example of the information processing apparatus 10-1 according to the first embodiment of the present invention. Hereinafter, with reference to FIG. 14 (and also referring to FIGS. 12 to 13 as appropriate), an operation example of the information processing apparatus 10-2 in the pre-preparation stage will be described.
[0147] (Pre-preparation stage) FIG. 14 is a flowchart showing an operation example of the information processing apparatus 10-2 in the pre-preparation stage. As shown in FIG. 14, in the pre-preparation stage, the information processing apparatus 10-2 performs steps A12 and A13 for each lane in the target lane area D1 (that is, for the route information R in lane L1 and the route information R in lane L2 respectively) (step A21).
[0148] Note that steps A12 and A13 in the second embodiment of the present invention may be executed in the same manner as steps A12 and A13 in the first embodiment of the present invention.
[0149] As described above, with reference to FIG. 14, an operation example of the information processing apparatus 10-2 in the pre-preparation stage has been described.
[0150] (Operation stage) Next, with reference to FIGS. 15 and 16, an operation example of the information processing apparatus 10-2 in the operation stage will be described.
[0151] FIG. 15 is a flowchart showing an operation example of the information processing apparatus 10-2 in the operation stage. As shown in FIG. 15, in the operation stage, steps B11 and B12 are executed. Steps B11 and B12 in the second embodiment of the present invention may be executed in the same manner as steps B11 and B12 in the first embodiment of the present invention.
[0152] Subsequently, step B14 is executed. In the first embodiment of the present invention, it is assumed that step B13 (FIG. 7) is executed before step B14, and object detection is performed in step B14 based on the point group specified in step B13.
[0153] On the other hand, in the second embodiment of the present invention, it is assumed that object detection is performed based on the point group indicated by the coordinate system converted from the original coordinate system to the reference coordinate system in step B12. However, also in the second embodiment of the present invention, similar to the first embodiment of the present invention, step B13 may be executed before step B14, and object detection may be performed in step B14 based on the point group specified in step B13.
[0154] Subsequently, steps B15 and B16 are executed. In the following description, the position of the route information R in the reference coordinate system within the lane L1 is also denoted as the route information R1' in the reference coordinate system. Also, the position of the route information R in the reference coordinate system within the lane L2 is also denoted as the route information R2' in the reference coordinate system. The route information R1' in the reference coordinate system corresponds to an example of the first route information. The route information R2' in the reference coordinate system corresponds to an example of the second route information.
[0155] Also, similar to the first embodiment of the present invention, the determination rotation angle θ k_min corresponding to the route information R1' in the reference coordinate system is also denoted as θ1, and the determination rotation angle θ k_min corresponding to the route information R2' in the reference coordinate system is also denoted as θ2. Also, the determination approximation formula y = f kθ_min (x) corresponding to the route information R1' in the reference coordinate system is also denoted as y = f1(x), and the determination rotation angle y = f kθ_min (x) corresponding to the route information R2' in the reference coordinate system is also denoted as y = f2(x).
[0156] The arrival information calculation unit 275 acquires, from the approximate path information storage unit 140, the determined rotation angle θ1 corresponding to the path information R1' in the reference coordinate system, k coefficients and one constant that represent the determined approximate expression y = f1(x). Further, the arrival information calculation unit 275 acquires, from the approximate path information storage unit 140, the determined rotation angle θ2 corresponding to the path information R2' in the reference coordinate system, k coefficients and one constant that represent the determined approximate expression y = f2(x).
[0157] In this specification, it is mainly assumed that the object detected by the object detection unit 250 is a vehicle. In the example shown in FIG. 12, each of the vehicles C1 and C2 corresponds to an example of a vehicle. Therefore, hereinafter, it is assumed that the object position is the "vehicle position", and the vehicle position is described as C(Cx, Cy).
[0158] Also, hereinafter, the number of lanes is denoted as N, the lane number is denoted as i (where 1 ≤ i ≤ N), the determined rotation angle is denoted as θi, and the determined approximate expression is denoted as y = fi(x). In the example shown in FIG. 12, N = 2, but N may be any integer of 2 or more. Also, hereinafter, the reference position is described as Qi(Qix, Qiy). In the example shown in FIG. 12, the reference position Q1 in the lane L1 and the reference position Q2 in the lane L2 correspond to examples of the reference position.
[0159] The arrival information calculation unit 275 performs a predetermined process based on the vehicle position C(Cx, Cy), the determined rotation angles θ1 to θn, and the determined approximate expressions y = f1(x), y = f2(x), ···, y = fn(x). Thereby, the accuracy of the process is improved.
[0160] In the second embodiment of the present invention, the arrival information calculation unit 275 executes, as an example of a predetermined process, a process of determining the traveling lane of the vehicle (step B21). More specifically, the arrival information calculation unit 275 performs, for i = 1 to N, a process of obtaining the rotated vehicle position C'i(C'ix, C'iy) by rotating the vehicle position C(Cx, Cy) by the determined rotation angle θi, as shown in the following formula (8).
[0161] [Number]
[0162] As shown in the following formula (9), the arrival information calculation unit 275 inputs the x value C'ix of the rotated vehicle position C'i into the determination approximation formula y = fi(x), and performs the process of obtaining the output yi value as the approximate value yi for i = 1 to N.
[0163] [Number]
[0164] As shown in the following formula (10), the arrival information calculation unit 275 calculates the error Error i between the approximate value yi and the y value C'iy of the rotated vehicle position C'i for i = 1 to N.
[0165] [Number]
[0166] Here, assuming that the lane on which the vehicle is actually traveling is the driving lane n, among the errors from Error1 to Error n it is considered that the error Error n corresponding to the driving lane n is minimized. Therefore, the arrival information calculation unit 275 can calculate the driving lane n of the vehicle as shown in the following formula (11).
[0167] [Number]
[0168] In formula (11), argmin takes Error i as the input, and Error iIt is a function that outputs the lane number when it is minimized. With reference to FIG. 16, a determination example of the driving lane n when the number of lanes N is 2 will be specifically described. Since the number of lanes N is 2, the cases where the lane numbers i = 1, 2 will be considered.
[0169] FIG. 16 is a diagram for explaining a determination example of the driving lane n when the number of lanes N is 2. In the example shown in FIG. 16, for simplicity of explanation, it is assumed that the determination rotation angle θ1 and the determination rotation angle θ2 are the same, and the rotated vehicle position C’1 (C’1x, C’1y) and the rotated vehicle position C’2 (C’2x, C’2y) are the same, and the rotated vehicle position is shown as C’ (C’x, C’y). Also, it is assumed that the vehicle is traveling in the lane where the lane number i = 2.
[0170] Also, the determination approximation formula y = f1(x) is shown, and the approximation value y1 of C’x to the determination approximation formula y = f1(x) is shown. Further, the determination approximation formula y = f2(x) is shown, and the approximation value y2 of C’x to the determination approximation formula y = f2(x) is shown. Also, the error Error1 between the approximation value y1 and C’y, and the error Error2 between the approximation value y2 and C’y are shown.
[0171] Referring to FIG. 16, it can be grasped that the error Error2 corresponding to the lane number i = 2 is smaller than the error Error1 corresponding to the lane number i = 1. Therefore, the arrival information calculation unit 275 can determine that the driving lane n of the vehicle is 2.
[0172] Also, in the second embodiment of the present invention, the arrival information calculation unit 275 executes, as an example of a predetermined process, a process of calculating a predicted distance that the vehicle moves from the vehicle position C (Cx, Cy) to the reference position Qn in the driving lane n of the vehicle. In the following description, the predicted distance is denoted as D.
[0173] Furthermore, the arrival information calculation unit 275 executes, as an example of a predetermined process, a process of calculating, as an arrival prediction time, the time required for the vehicle to move the predicted distance (step B22). In the following description, the arrival prediction time is denoted as T.
[0174] More specifically, the determined rotation angle corresponding to the driving lane n of the vehicle is θn. The determined approximation formula corresponding to the driving lane n of the vehicle is y = fn(x). The reference position corresponding to the driving lane n of the vehicle is Qn(Qnx, Qny). The arrival information calculation unit 275 acquires the reference position Qn(Qnx, Qny) corresponding to the lane n from the reference position information storage unit 150.
[0175] Also, let the vehicle position for calculating the predicted distance and the arrival prediction time be H(Hx, Hy). This vehicle position H(Hx, Hy) may be the same as the vehicle position C(Cx, Cy) that has already been used. However, in view of the fact that it is more important in terms of safety to grasp the timing at which the leading end of the vehicle reaches the reference position Qn, etc., the vehicle position H(Hx, Hy) is preferably the leading end position of the vehicle.
[0176] As shown in the following formula (12), the arrival information calculation unit 275 rotates the vehicle position H(Hx, Hy) and the reference position Qn(Qnx, Qny) corresponding to the lane n by the determined rotation angle θn corresponding to the driving lane n of the vehicle. Thereby, the arrival information calculation unit 275 obtains the rotated vehicle position H’(H’x, H’y) and the rotated reference position Q’n(Q’nx, Q’ny).
[0177]
Equation
[0178] Based on the rotated vehicle position H’(H’x, H’y), the rotated reference position Q’n(Q’nx, Q’ny), and the determined approximation formula y = fn(x), the arrival information calculation unit 275 calculates the predicted distance that the vehicle moves from the rotated vehicle position H’(H’x, H’y) to the rotated reference position Q’n(Q’nx, Q’ny).
[0179] Here, various methods can be applied to the method for calculating the predicted distance D. As an example, as shown in the following formula (13), the reach information calculation unit 275 calculates the difference between H'x, which is the x value of the rotated vehicle position H', and Q'nx, which is the x value of the rotated reference position Q'n, as range x and calculates it as such.
[0180]
Number
[0181] Next, as shown in the following formula (14), the reach information calculation unit 275 divides range_x by a preset number of divisions M to calculate the x-coordinate interval step_x per one. The larger the number of divisions M, the greater the processing load, but it is expected that the calculation accuracy of the predicted distance D will be improved.
[0182]
Number
[0183] Next, as shown in the following formula (15), the reach information calculation unit 275 divides the range from H'x to Q'nx at each x-coordinate interval step_x to calculate the x-coordinates s of M + 1 sample positions xj and calculates the x-coordinates s of M + 1 sample positions xj and inputs them into the decision approximation formula y = fn(x) corresponding to the driving lane n, and calculates its output as the y-coordinates x of M + 1 sample positions yj and calculates it as such.
[0184]
Number
[0185] Next, as shown in the following formula (16), the reach information calculation unit 275 calculates the sum of the lengths of M line segments connecting adjacent sample positions s as the predicted distance D.
[0186] [Number]
[0187] Next, as shown in the following formula (17), the arrival information calculation unit 275 calculates, as the arrival prediction time T, the time required for the vehicle to move the predicted distance D based on the predicted distance D and the moving speed of the vehicle. For example, as the moving speed of the vehicle, the speed of the object calculated by the object information calculation unit 270 may be used.
[0188] [Number]
[0189] The arrival information calculation unit 275 outputs, as traffic information, the driving lane n of the vehicle, the predicted distance D that the vehicle travels from the current position to the reference position Qn, and the arrival prediction time T required for the vehicle to travel the predicted distance D, to the notification device 280 (step B23). Then, the notification device 280 may notify the traffic information. Thereby, when the notification device 280 is mounted on the autonomous vehicle C3 (FIG. 12), the passengers of the autonomous vehicle C3 can confirm the traffic information.
[0190] In addition, the object information calculation unit 270 outputs the traffic information to the display device 290 (step B24). Then, the display device 290 may display the traffic information. Thereby, the supervisor can visually confirm the traffic information.
[0191] Note that the arrival information calculation unit 275 may output the object information calculated by the object information calculation unit 270 to the notification device 280 together with the traffic information, or may output the object information calculated by the object information calculation unit 270 to the display device 290 together with the traffic information.
[0192] The operation example of the information processing apparatus 10-2 according to the second embodiment of the present invention has been described above.
[0193] [2-4. Effects of the Embodiment] As described above, according to the second embodiment of the present invention, similar to the first embodiment of the present invention, even when the path has a curved shape, the accuracy of approximation to the path is improved, and the accuracy of a predetermined process based on the approximation is improved.
[0194] In the second embodiment of the present invention, the predetermined process may include a process of determining the driving lane of the vehicle, a process of calculating the predicted distance that the vehicle travels from the current position to the reference position, and a process of calculating the predicted arrival time required for the vehicle to travel the predicted distance. Therefore, according to the second embodiment of the present invention, traffic information such as the driving lane of the vehicle, the predicted distance, and the predicted arrival time can be obtained.
[0195] The effects of the second embodiment of the present invention have been described above.
[0196] <3. Hardware Configuration Example> Subsequently, a hardware configuration example of the information processing apparatus 10 according to an embodiment of the present invention will be described. Hereinafter, as a hardware configuration example of the information processing apparatus 10 according to an embodiment of the present invention, a hardware configuration example of the information processing apparatus 900 will be described. Note that the hardware configuration example of the information processing apparatus 900 described below is merely an example of the hardware configuration of the information processing apparatus 10. Therefore, the hardware configuration of the information processing apparatus 10 may have unnecessary configurations deleted from the hardware configuration of the information processing apparatus 900 described below, or new configurations may be added. Note that the hardware of the information processing apparatus 10 can be similarly realized.
[0197] FIG. 17 is a diagram showing a hardware configuration of an information processing apparatus 900 as an example of the information processing apparatus 10 according to an embodiment of the present invention. The information processing apparatus 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, a RAM (Random Access Memory) 903, a host bus 904, a bridge 905, an external bus 906, an interface 907, an input device 908, an output device 909, a storage device 910, and a communication device 911.
[0198] The CPU 901 functions as an arithmetic processing unit and a control unit, and controls the overall operations within the information processing device 900 according to various programs. Also, the CPU 901 may be a microprocessor. The ROM 902 stores programs, arithmetic parameters, etc. used by the CPU 901. The RAM 903 temporarily stores programs used in the execution of the CPU 901 and parameters that change as appropriate during the execution. These are interconnected by a host bus 904 composed of a CPU bus, etc.
[0199] The host bus 904 is connected to an external bus 906 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 905. Note that it is not necessarily required to separately configure the host bus 904, the bridge 905, and the external bus 906, and these functions may be implemented in one bus.
[0200] The input device 908 is composed of input means such as a mouse, keyboard, touch panel, button, microphone, switch, and lever for the user to input information, and an input control circuit that generates an input signal based on the user's input and outputs it to the CPU 901. The user who operates the information processing device 900 can input various data to the information processing device 900 or instruct processing operations by operating this input device 908.
[0201] The output device 909 includes, for example, display devices such as a CRT (Cathode Ray Tube) display device, a liquid crystal display (LCD) device, an OLED (Organic Light Emitting Diode) device, a lamp, etc., and an audio output device such as a speaker.
[0202] The storage device 910 is a device for storing data. The storage device 910 may include a storage medium, a recording device for recording data on the storage medium, a reading device for reading data from the storage medium, a deleting device for deleting data recorded on the storage medium, and the like. The storage device 910 is constituted by, for example, an HDD (Hard Disk Drive). This storage device 910 drives a hard disk and stores programs executed by the CPU 901 and various data.
[0203] The communication device 911 is a communication interface constituted by, for example, a communication device for connecting to a network. Further, the communication device 911 may support either wireless communication or wired communication.
[0204] The hardware configuration example of the information processing apparatus 10 according to the embodiment of the present invention has been described above.
[0205] <4. Various Modification Examples> As described above, the preferred embodiments of the present invention have been described in detail with reference to the accompanying drawings, but the present invention is not limited to such examples. It is obvious that those having ordinary knowledge in the technical field to which the present invention pertains can conceive of various modification examples or correction examples within the scope of the technical idea described in the claims, and it is naturally understood that these also belong to the technical scope of the present invention.
[0206] (Setting of Route Information) In the first embodiment and the second embodiment of the present invention, an example in which route information is set for a road has been mainly described. However, the place where the route information is set may not be limited to a road. For example, the route information may be set for a curved station platform in a railway. As an example, in the first embodiment of the present invention, when an object is detected from an area between a station platform and a train, route information may be set at the end of the station platform and the end of the train, and based on this route information, the point group used for object detection may be specified.
[0207] (Timing of Coordinate Conversion) In the first embodiment and the second embodiment of the present invention, an example in which the rotation angle and the approximation formula are determined mainly based on the path information after the coordinate transformation from the original coordinate system to the reference coordinate system has been described. However, the coordinate transformation may be performed on the approximate path after the determined rotation angle and the determined approximation formula have been applied to the path information.
[0208] (Variation of error) In the first embodiment and the second embodiment of the present invention, the maximum error maxError θ is mainly described as an example of the error between the x coordinate of the plurality of path elements P'' θx after rotation and the approximate value f kθ (x) based on the candidate approximation formula y = f kθ (P'' θx ) and the y coordinate of the plurality of path elements P'' θ after rotation, which is P'' θy . However, as the error between the approximate value f kθ and P'', a cumulative error obtained by summing up the errors between the approximate value f kθ (P'' θx ) and P'' θy for all candidate rotation angles θ may be used. kθ (P'' θx ) and P'' θy .
[0209] (Variation of approximate curve) In the first embodiment and the second embodiment of the present invention, an example in which one approximation formula (for example, an approximation formula represented by one curve) is determined for the path information has been mainly described. However, the path information may be divided into a plurality of sections, and different approximation formulas (for example, a linear function represented by a straight line and a quadratic function represented by a curve) may be determined for each section.
[0210] (Area where object detection is performed) In the first embodiment of the present invention, an example in which a point cloud used for object detection is specified based on path information and an object is detected based on the specified point cloud has been mainly described. As a result, an object existing inside the area sandwiched by the path information can be mainly detected. However, an object may be detected based on the remaining point cloud excluding the specified point cloud. As a result, an object existing outside the area sandwiched by the path information can be mainly detected.
[0211] (Setting of reference position) In the second embodiment of the present invention, an example in which the reference position Q1 of the lane L1 is determined in advance has been mainly described. However, when the standby position of the autonomous vehicle waiting for a right turn or a left turn is detected by the stop position of the autonomous vehicle or the like, the path element P closest to the standby position may be determined as the reference position Q1 of the lane L1. Similarly, for the reference position Q2 of the lane L2, the path element P closest to the standby position of the autonomous vehicle waiting for a right turn or a left turn may be determined as the reference position Q2.
[0212] (Judgment of lane crossing) In the second embodiment of the present invention, an example of determining the traveling lane of a vehicle has been described. However, a state in which the vehicle crosses from one lane to another lane (hereinafter, also referred to as "lane crossing") may be determined. For example, when the difference between the error Error1 and the error Error2 is smaller than the threshold value, the arrival information calculation unit 275 may determine that the vehicle is crossing lanes because it is considered that the vehicle exists around the boundary between the lane L1 and the lane L2.
[0213] The various modifications according to the embodiments of the present invention have been described above.
Description of reference numerals
[0214] 10 Information processing device 100 Path information storage unit 110 Reference coordinate system information storage unit 120 Coordinate system conversion unit 130 Approximate path calculation unit 140 Approximate path information storage unit 150 Reference position information storage unit 160 Route information output unit 200 Laser sensor 210 Point cloud acquisition unit 220 Sensor coordinate system conversion unit 230 Point cloud identification unit 240 Past frame detected object information storage unit 250 Object detection unit 260 Object tracking unit 270 Object information calculation unit 275 Arrival information calculation unit 280 Notification device 290 Display device
Claims
1. A calculation unit that calculates, as candidate approximation formulas, approximation formulas for the path information after rotation by each of a plurality of candidate rotation angles for the path information, and calculates a determined rotation angle and a determined approximation formula used for a predetermined process based on the candidate approximation formulas and the path information after rotation; A processing unit that performs the predetermined process based on the determined rotation angle and the determined approximation formula; An information processing apparatus comprising:
2. The information processing apparatus includes an object detection unit that detects an object based on a point cloud obtained by a sensor, and the processing unit performs the predetermined process based on an object position based on a detection result of the object, the determined rotation angle, and the determined approximation formula. The information processing apparatus according to claim 1.
3. The predetermined process includes a process of calculating a predicted distance that the object moves from the object position to a reference position based on the object position after rotation by the determined rotation angle, the reference position after rotation by the determined rotation angle, and the determined approximation formula. The information processing apparatus according to claim 2.
4. The predetermined process includes a process of calculating, as an arrival prediction time, a time required for the object to move the predicted distance based on the predicted distance and a moving speed of the object. The information processing apparatus according to claim 3.
5. The path information includes a plurality of pieces of path information, the calculation unit calculates the determined rotation angle and the determined approximation formula for each of the plurality of pieces of path information, and the processing unit performs the predetermined process based on the object position after rotation by the determined rotation angle for each of the plurality of pieces of path information and the determined approximation formula. The information processing apparatus according to claim 2.
6. Each of the plurality of pieces of path information corresponds to a lane in which the object may exist, The predetermined process includes a process of determining the lane in which the object exists based on the position of the object after rotation by the determined rotation angle of each of the plurality of path information and the determined approximation formula. The information processing apparatus according to claim 5.
7. The predetermined process includes a process of obtaining a reference position in the lane determined to have the object, and a process of calculating a predicted distance that the object moves from the object position to the reference position based on the position of the object after rotation by the determined rotation angle, the reference position after rotation by the determined rotation angle, and the determined approximation formula in the lane determined to have the object. The information processing apparatus according to claim 6.
8. The predetermined process includes a process of specifying point groups used for object detection based on the point groups after rotation by the determined rotation angle of each of the plurality of path information and the determined approximation formula. The information processing apparatus includes an object detection unit that detects an object based on the point groups. The information processing apparatus according to claim 1.
9. The plurality of path information includes first path information and second path information. For the same point, the second coordinates after rotation by the determined rotation angle of the first path information are smaller than the second coordinates after rotation by the determined rotation angle of the second path information. The predetermined process is such that the second coordinates after rotation by the determined rotation angle of the first path information are equal to or greater than a first approximation value based on the first coordinates after rotation by the determined rotation angle of the first path information and the determined approximation formula of the first path information, or a value obtained by subtracting a first margin width from the first approximation value, and the second coordinates after rotation by the determined rotation angle of the second path information A point group that satisfies the condition of being less than or equal to a second approximation value based on the first coordinate after rotation by the determined rotation angle of the second path information and the determined approximation formula of the second path information, or a value obtained by adding a second margin width to the second approximation value, including a process of specifying as the point group used for the object detection, The information processing apparatus according to claim 8.
10. The calculation unit calculates an approximation value based on the first coordinate of the rotated path information and the candidate approximation formula for each candidate rotation angle, and calculates the candidate rotation angle and the candidate approximation formula in the case where the error between the approximation value and the second coordinate of the rotated path information is minimized as the determined rotation angle and the determined approximation formula. The information processing apparatus according to any one of claims 1 to 9.
11. Calculating an approximation formula for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information as a candidate approximation formula, and calculating a determined rotation angle and a determined approximation formula used for a predetermined process based on the candidate approximation formula and the rotated path information; Performing the predetermined process based on the determined rotation angle and the determined approximation formula; An information processing method executed by a computer, including:
12. A computer, a calculation unit that calculates an approximation formula for the rotated path information for each of a plurality of candidate rotation angles with respect to the path information as a candidate approximation formula, and calculates a determined rotation angle and a determined approximation formula used for a predetermined process based on the candidate approximation formula and the rotated path information; a processing unit that performs the predetermined process based on the determined rotation angle and the determined approximation formula; A program that causes the computer to function as such.
Citation Information
Patent Citations
Road map preparation device, road map preparation method and navigation system
JP2014160064A
Stator for permanent magnet excitation type electric machine
JP1982049359A