Preprocessing device, determination system, preprocessing method, and recording medium
By rotating and segmenting polygons and their coordinates, the preprocessing system addresses inefficiencies in existing polygon inclusion/exclusion algorithms, notably for elongated shapes, by reducing processing time through minimized bounding container areas and vertex counts.
Patent Information
- Application Number
- CN201980100208.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-09-12
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2039-09-12
AI Technical Summary
When the existing polygon inside and outside judgment technology is used to process polygons with a large number of vertices and slender shapes, the processing time is too long and it is difficult to effectively shorten.
Preprocessing is performed by rotating, dividing or reducing the vertices of the polygon, shortening the processing time of internal and external determination, and preprocessing is performed using a rotating device, a segmentation device or a vertex reduction device, and then a simple judgment is performed.
The processing time for internal and external determination of polygons is significantly shortened, especially in the determination of whether a vehicle or the like is included in the road area, and the processing speed is improved.
Smart Images

Figure CN114424248B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a pretreatment device, a determination system, a pretreatment method, and a recording medium. Background Art
[0002] There is a polygon inside / outside determination technique for determining whether a specific coordinate is included in the interior of a specific polygon. The polygon inside / outside determination technique is applicable, for example, to a case of determining whether the coordinates of a vehicle or the like on a map are included in a polygon representing a road area.
[0003] For example, as an existing polygon inside / outside determination technique, there is a determination technique based on the Crossing Number and the Winding Number (for example, refer to Non-Patent Document 1). These determination techniques determine whether a coordinate is included in the interior of a polygon by statistically analyzing the positional relationship between all the sides of the polygon to be determined and the coordinate to be determined.
[0004] In addition, as an existing polygon inside / outside determination technique, there is a simple determination technique based on a bounding container (for example, refer to Non-Patent Document 2). The bounding container refers to a figure such as a polygon that contains the object to be determined. This technique is a technique for reducing the average processing time by selecting a figure that can perform inside / outside determination at high speed as the bounding container and applying only the Crossing Number method and the Winding Number method to the coordinates included in the bounding container. As the above-mentioned bounding container, a rectangle (MBR, Minimal Bounding Rectangle) having sides parallel to the XY axes is generally used.
[0005] Prior Art Documents
[0006] Non-Patent Documents
[0007] Non-Patent Document 1: “Inclusion of a Point in a Polygon”, [online], [searched on August 23, Reiwa 1], Internet <URL: http: / / geomalgorithms.com / a03-_inclusion.html>
[0008] Non-Patent Document 2: "Bounding Containers for Point Sets", [online], [searched on August 23, Reiwa 1], Internet <URL: http: / / geomalgorithms.com / a08-_containers.html> Summary of the Invention
[0009] Problems to be Solved by the Invention
[0010] In the case of applying the polygon inside / outside determination technique to determine whether a road area contains a vehicle, etc. geographically, since the polygon represents the road area, it has the following characteristics: having a large number of vertices and being slender in shape.
[0011] However, since the Crossing Number method and the Winding Number method have the property that the processing time is proportional to the number of vertices, when determining a polygon with a large number of vertices, there is a problem that the processing time becomes long. In addition, since the MBR has the property of including a relatively large area outside the polygon even for a slender polygon, when determining a polygon with a slender shape, there is a problem that it is difficult to achieve the effect of shortening the average processing time.
[0012] The present invention has been completed in view of the above circumstances, and an object thereof is to provide a preprocessing device, a determination system, a preprocessing method, and a preprocessing program capable of shortening the processing time required for polygon inside / outside determination processing.
[0013] Means for Solving the Problems
[0014] In order to solve the above problems and achieve the object, the preprocessing device of the present invention is characterized by having: a rotation unit that, as preprocessing of the determination processing, acquires the coordinate information of each vertex of the polygon for inside / outside determination and the coordinate information of each vertex of the polygon for inside / outside determination, and rotates the coordinate to be determined and the polygon for inside / outside determination, wherein the determination processing determines whether the coordinate to be determined exists inside or outside the polygon for inside / outside determination; and an output unit that outputs the coordinate information of each vertex of the rotated polygon for inside / outside determination and the coordinate to be determined after rotation as the rotated coordinate information.
[0015] In addition, the determination system of the present invention has a determination device that performs a determination process of determining whether the coordinates to be determined exist inside or outside a polygon for internal and external determination, and a first preprocessing device that performs preprocessing for the determination process. The determination system is characterized in that the first preprocessing device has: a rotation unit that, as preprocessing, acquires the coordinate information of each vertex of the polygon for internal and external determination and the coordinate information of each vertex of the polygon for internal and external determination, and rotates the coordinates to be determined and the polygon for internal and external determination; and a first output unit that outputs the coordinate information of each vertex of the rotated polygon for internal and external determination and the coordinates to be determined after rotation as rotated coordinate information. The determination device uses the preprocessed information to determine whether the coordinates to be determined exist inside or outside the polygon for internal and external determination.
[0016] In addition, the preprocessing method of the present invention is a preprocessing method performed by a preprocessing device, and is characterized by including the following steps: as preprocessing for a determination process, acquiring the coordinate information of each vertex of a polygon for internal and external determination and the coordinate information of each vertex of the polygon for internal and external determination, and rotating the coordinates to be determined and the polygon for internal and external determination, wherein the determination process determines whether the coordinates to be determined exist inside or outside the polygon for internal and external determination; and outputting the coordinate information of each vertex of the rotated polygon for internal and external determination and the coordinates to be determined after rotation as rotated coordinate information.
[0017] In addition, the preprocessing program of the present invention causes a computer to execute the following steps as preprocessing for a determination process: acquiring the coordinate information of each vertex of a polygon for internal and external determination and the coordinate information of each vertex of the polygon for internal and external determination, and rotating the coordinates to be determined and the polygon for internal and external determination, wherein the determination process determines whether the coordinates to be determined exist inside or outside the polygon for internal and external determination; and outputting the coordinate information of each vertex of the rotated polygon for internal and external determination and the coordinates to be determined after rotation as rotated coordinate information.
[0018] Advantages of the Invention
[0019] According to the present invention, the processing time required for polygon internal and external determination processing can be shortened. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] Figure 1 is a block diagram showing an example of the structure of the determination system according to Embodiment 1.
[0021] Figure 2 shows Figure 1 an example of the structure of the vertex reduction device shown.
[0022] Figure 3 It is a diagram showing an overview of a data structure of polygon information.
[0023] Figure 4 It shows Figure 1 A block diagram showing an example of the structure of the determination device shown.
[0024] Figure 5 It is a diagram showing an overview of a data structure of coordinate information.
[0025] Figure 6 It is a diagram explaining vertex reduction processing.
[0026] Figure 7 It explains Figure 1 A sequence diagram showing the processing procedure of the determination processing of the determination system shown.
[0027] Figure 8 It shows Figure 7 A flowchart showing the processing procedure of the vertex reduction processing shown.
[0028] Figure 9 It shows Figure 7 A flowchart showing the processing procedure of the inside / outside determination processing shown.
[0029] Figure 10 It is a block diagram showing an example of the structure of the determination system of Embodiment 2.
[0030] Figure 11 It shows Figure 10 A block diagram showing an example of the structure of the rotation device shown.
[0031] Figure 12 It is a diagram explaining rotation processing.
[0032] Figure 13 It explains Figure 10 A sequence diagram showing the processing procedure of the determination processing of the determination system shown.
[0033] Figure 14 It shows Figure 13 A flowchart showing the processing procedure of the rotation processing shown.
[0034] Figure 15 It is a block diagram showing an example of the structure of the determination system of Embodiment 3.
[0035] Figure 16 It shows Figure 15 A block diagram showing an example of the structure of the division device shown.
[0036] Figure 17 It is a diagram explaining division processing.
[0037] Figure 18Is an explanation Figure 15 A sequence diagram showing the processing procedure of the determination processing of the determination system shown
[0038] Figure 19 Is a diagram showing Figure 18 A flowchart showing the processing procedure of the splitting processing shown
[0039] Figure 20 Is a block diagram showing an example of the structure of the determination system according to Embodiment 4
[0040] Figure 21 Is an explanation Figure 20 A sequence diagram showing the processing procedure of the determination processing of the determination system shown
[0041] Figure 22 Is a sequence diagram showing the processing procedure of the determination processing in Modification 1 of Embodiment 4
[0042] Figure 23 Is a sequence diagram showing the processing procedure of the determination processing in Modification 2 of Embodiment 4
[0043] Figure 24 Is a sequence diagram showing the processing procedure of the determination processing in Modification 3 of Embodiment 4
[0044] Figure 25 Is a diagram explaining the experimental model
[0045] Figure 26 Is a diagram explaining the PIP processing time in the case where the inside / outside determination is performed after the vertex reduction processing and in the case where the inside / outside determination is performed without performing the preprocessing
[0046] Figure 27 Is a diagram explaining the splitting processing implemented in the verification
[0047] Figure 28 Is a diagram explaining the PIP processing time in the case where the inside / outside determination is performed after the splitting processing and in the case where the inside / outside determination is performed without performing the preprocessing
[0048] Figure 29 Is a diagram explaining the rotation processing implemented in the verification
[0049] Figure 30 Is a diagram explaining the PIP processing time in the case where the inside / outside determination is performed after the rotation processing and in the case where the inside / outside determination is performed without performing the preprocessing
[0050] Figure 31 Is a diagram explaining other application examples of the determination system according to Embodiments 1 to 4
[0051] Figure 32It is a diagram showing an example of a computer that implements a vertex reduction device, a determination device, a rotation device, and a division device by executing a program. Detailed implementation mode
[0052] Hereinafter, embodiments of a preprocessing device, a determination system, a preprocessing method, and a preprocessing program of the present application will be described in detail with reference to the accompanying drawings. In addition, the present invention is not limited to the embodiments described below.
[0053] [Embodiment 1]
[0054] First, Embodiment 1 will be described. In this Embodiment 1, before the inside / outside determination process of determining whether the coordinates to be determined exist inside or outside the inside / outside determination polygon, the vertices of the inside / outside determination polygon are reduced, thereby shortening the processing time required for the inside / outside determination process.
[0055] [Structure of the determination system]
[0056] Figure 1 It is a block diagram showing an example of the structure of the determination system of Embodiment 1. As Figure 1 shown, the determination system 1 of this Embodiment 1 includes a client terminal 2, an inside / outside determination control device 3, a vertex reduction device 10, and a determination device 20. The client terminal 2 and the inside / outside determination control device 3 are connected via a network or the like. The inside / outside determination control device 3, the vertex reduction device 10, and the determination device 20 are connected via a network or the like.
[0057] The client terminal 2 is a terminal device used by the user of the determination system 1. The client terminal 2 sends the coordinate information D20 of the coordinates to be determined and the polygon information D10 of the coordinates of each vertex of the inside / outside determination polygon to the inside / outside determination control device 3 and makes a determination request.
[0058] The inside / outside determination control device 3 is a server device that controls the processing in the vertex reduction device 10 and the determination device 20. When the inside / outside determination control device 3 receives a determination request from the client terminal 2, it causes the determination device 20 to execute the inside / outside determination process (determination process) of determining whether the coordinates to be determined exist inside or outside the inside / outside determination polygon, and returns the determination result to the client terminal 2. In addition, in this Embodiment 1, the inside / outside determination control device 3 causes the vertex reduction device 10 to execute the preprocessing of the inside / outside determination process before the determination device 20 executes the inside / outside determination process.
[0059] The vertex reduction device 10 receives the polygon information D10 from the inside / outside determination control device 3 and executes the preprocessing of reducing the vertices of the inside / outside determination polygon. The vertex reduction device 10 outputs the coordinate information of each vertex of the polygon after reducing the vertices, that is, the reduced polygon information D11, to the inside / outside determination control device 3.
[0060] The determination device 20 performs an inside / outside determination process to determine whether the coordinates to be determined exist inside or outside the inside / outside determination polygon. At this time, the determination device 20 performs the inside / outside determination process based on the reduced polygon information D11 and the coordinate information D20 of the coordinates to be determined. The determination device 20 outputs determination information including the determination result to the inside / outside determination control device 3.
[0061] [Vertex reduction device]
[0062] Next, Figure 1 the vertex reduction device 10 shown in Figure 2 will be described. Figure 1 FIG. is a block diagram showing an example of the structure of the vertex reduction device 10 shown in Figure 2 . As shown in
[0063] The communication unit 11 is a communication interface that transmits and receives various information between other devices connected via a network or the like. The communication unit 11 is implemented by a NIC (Network Interface Card), etc., and performs communication between other devices connected via an electrical communication line such as a LAN (Local Area Network) or the Internet and the control unit 13 (described later).
[0064] The communication unit 11 receives the polygon information D10 from the inside / outside determination control device 3 via the network. In addition, the communication unit 11 sends the reduced polygon information D11 to the inside / outside determination control device 3.
[0065] The storage unit 12 is implemented by semiconductor storage elements such as a RAM (Random Access Memory) and a flash memory, or storage devices such as a hard disk and an optical disc, and stores a processing program that causes the vertex reduction device 10 to operate, data used in the execution of the processing program, etc. The storage unit 12 stores the polygon information D10 and the reduced polygon information D11.
[0066] The polygon information D10 is the coordinate information of each vertex of the inside / outside determination polygon. The polygon information D10 is sent from the inside / outside determination control device 3. Figure 3 FIG. is a diagram showing an overview of the data structure of the polygon information D10. As shown in Figure 3 , the polygon information D10 is a list of the coordinates of the vertices of the inside / outside determination polygon. For example, when the inside / outside determination polygon has 100 vertices, it has 100 sets of coordinates.
[0067] The reduced coordinate information D11 is the coordinate information of the vertices of the polygon whose vertices have been reduced through the processing of the vertex reduction unit 131 (described later) for each vertex of the polygon for internal and external determination. The reduced coordinate information D11 is, for example, a coordinate list of the vertices of a polygon whose vertices have been reduced from 100 to 60.
[0068] The control unit 13 controls the entire vertex reduction device 10. The control unit 13 is, for example, an electronic circuit such as a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an integrated circuit such as an ASIC (Application Specific Integrated Circuit), or an FPGA (Field Programmable Gate Array). In addition, the control unit 13 has an internal memory for storing programs and control data that define various processing procedures, and executes each process using the internal memory. In addition, the control unit 13 functions as various processing units by operating various programs. The control unit 13 has a vertex reduction unit 131 (reduction unit).
[0069] As a preprocessing for the internal and external determination process, the vertex reduction unit 131 acquires the polygon information D10 and reduces the vertices of the polygon for internal and external determination. The vertex reduction unit 131 performs a process of removing vertices at appropriate intervals for the vertices of the polygon for internal and external determination. For example, the vertex reduction unit 131 uses an algorithm such as the Ramer - Douglas - Peucker algorithm (for example, refer to Reference 1) to implement the vertex reduction process.
[0070] Reference 1: “Ramer - Douglas - Peucker Algorithm”, [online], [searched on August 23, Reiwa 1], Internet <URL: https: / / siguniang.wordpress.com / 2012 / 07 / 16 / ramer - douglas - peucker - algorithm / >
[0071] The vertex reduction unit 131 stores the reduced coordinate information D11, which is the coordinate information of the vertices of the polygon whose vertices have been reduced through the vertex reduction process for each vertex of the polygon for internal and external determination, in the storage unit 12, and outputs this information to the internal and external determination control device 3 via the communication unit 11.
[0072] [Determination Device]
[0073] Next, for Figure 1A description will be given of the determination device 20 shown below. Figure 4 It shows Figure 1 A block diagram showing an example of the structure of the determination device 20 shown below. As Figure 4 shown, the determination device 20 includes a communication unit 21, a storage unit 22, and a control unit 23.
[0074] The communication unit 21 is a communication interface that transmits and receives various information between other devices connected via a network or the like, and is implemented by a NIC or the like, and performs communication between other devices via an electrical communication line such as a LAN or the Internet and the control unit 23 (described later). The communication unit 21 receives the reduced polygon information D11 and the coordinate information D20 from the internal and external determination control device 3 via the network, as the coordinate information of each vertex of the internal and external determination polygon. In addition, the communication unit 21 sends the determination result of the internal and external determination unit 231 (described later) to the internal and external determination control device 3.
[0075] The storage unit 22 is implemented by a semiconductor storage element such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk, and stores a processing program for operating the determination device 20, data used in the execution of the processing program, and the like. The storage unit 22 stores the reduced polygon information D11 and the coordinate information D20.
[0076] The coordinate information D20 is the coordinate information of the coordinates to be determined. The coordinate information D20 is sent from the internal and external determination control device 3. Figure 5 It is a diagram showing an overview of the data structure of the coordinate information D20. As Figure 5 shown, the coordinate information D20 represents the longitude and latitude of the coordinates to be determined.
[0077] The control unit 23 controls the entire vertex reduction device 10. The control unit 23 is, for example, an electronic circuit such as a CPU or an MPU, or an integrated circuit such as an ASIC or an FPGA. In addition, the control unit 23 has an internal memory for storing programs and control data that define various processing procedures, and executes each process using the internal memory. In addition, the control unit 23 functions as various processing units by operating various programs. The control unit 23 performs the internal and external determination unit 231.
[0078] The internal and external determination unit 231 performs an internal and external determination process of determining whether the coordinates to be determined exist inside or outside the internal and external determination polygon based on the reduced polygon information D11 and the coordinate information D20. After a simple determination based on the MBR, the internal and external determination unit 231 executes a detailed determination based on the Crossing Number method or the Winding Number method.
[0079] [Vertex Reduction Processing]
[0080] Next, the vertex reduction process performed by the vertex reduction device 10 will be specifically described. Figure 6 This is a diagram for explaining the vertex reduction process. Figure 6 (1) of this figure shows the polygon P10 for internal / external determination before the vertex reduction process. Figure 6 (2) of this figure shows the polygon P11 after the vertex reduction process. For ease of explanation, Figure 6 the MBR 40, and the coordinates C1, C2, and C3 to be determined are also shown.
[0081] Figure 6 The number of vertices of the polygon P10 shown in (1) of this figure is 16. In the vertex reduction device 10, the vertex reduction unit 131 uses the Ramer - Douglas - Peucker algorithm to reduce the vertices of the polygon P10. The Ramer - Douglas - Peucker algorithm is as follows: (A) The start point and end point of the route are used as the drawing objects. (B) The distances between the straight line connecting the drawing objects and each point between them are investigated, and the point with the farthest distance among the points with a distance greater than or equal to the allowable distance is found. (C) This point is used as the new drawing object, and the processes of (B) and (C) are recursively repeated. (D) If there are no points with a distance greater than ε, the process ends.
[0082] Through this process, as shown in Figure 6 (2) of this figure, the vertex reduction unit 131 generates a polygon P11 with the number of vertices reduced from 16 of the polygon P10 to 10. Then, in the determination device 20, this polygon P11 is used as the polygon for internal / external determination for the determination process.
[0083] In this case, for the coordinates C2 and C3 that require detailed determination, since the detailed determination is performed based on the polygon P11 after the vertices are reduced, the processing time of the detailed determination process can be shortened compared to the case where the detailed determination is performed with the original internal / external determination polygon P10 as the object. In addition, for the coordinate C1, since it is outside the MBR 40, the determination ends only through simple determination.
[0084] [Process of the determination process]
[0085] Next, the process of the determination process in the determination system 1 will be described. Figure 7 This is for explaining Figure 1 the sequence diagram of the process of the determination process of the determination system 1 shown in this figure.
[0086] First, the client terminal 2 sends the coordinate information D20 of the coordinates to be determined and the polygon information D10 of the coordinates of the vertices of the polygon for inside / outside determination to the inside / outside determination control device 3 to commission the determination (step S1). When receiving the determination commission, the inside / outside determination control device 3 sends the polygon information D10 to the vertex reduction device 10 (step S2) to execute preprocessing.
[0087] As preprocessing, the vertex reduction device 10 executes vertex reduction processing to reduce the vertices of the polygon for inside / outside determination based on the polygon information D10 received from the inside / outside determination control device 3 (step S3), and sends the reduced polygon information D11 to the inside / outside determination control device 3 (step S4).
[0088] The inside / outside determination control device 3 sends the reduced polygon information D11 and the coordinate information D20 to the determination device 20 (step S5) to execute inside / outside determination processing. The inside / outside determination control device 3 performs inside / outside determination processing based on the reduced polygon information D11 and the coordinate information D20 (step S6), sends the determination information to the inside / outside determination control device 3 (step S7). The inside / outside determination control device 3 sends the determination information to the client terminal 2 (step S8).
[0089] [Processing procedure of vertex reduction processing]
[0090] Next, the processing procedure of the vertex reduction processing (step S3) will be described. Figure 8 It shows Figure 7 The flowchart of the processing procedure of the vertex reduction processing shown.
[0091] As Figure 8 shown, when the vertex reduction device 10 receives the input of the polygon information D10 from the inside / outside determination control device 3 (step S11), it reduces the vertices of the polygon for inside / outside determination (step S12). The vertex reduction device 10 generates the reduced polygon information D11 and outputs it to the inside / outside determination control device 3 (step S13), and ends the vertex reduction processing.
[0092] [Processing procedure of inside / outside determination processing]
[0093] Next, the processing procedure of the inside / outside determination processing (step S6) will be described. Figure 9 It shows Figure 7 The flowchart of the processing procedure of the inside / outside determination processing shown.
[0094] As Figure 9As shown, the determination device 20 performs a simple determination process of determining whether the coordinates of the determination object are inside the MBR (step S21). When the determination device 20 determines that the coordinates of the determination object are not inside the MBR (step S21: No), it determines that the coordinates are outside the polygon for inside / outside determination ("false") (step S22).
[0095] On the other hand, when the determination device 20 determines that the coordinates of the determination object are inside the MBR (step S21: Yes), it performs a detailed determination based on the Crossing Number method or the Winding Number method. In this case, the determination device 20 sets the polygon shown in the reduced polygon information D11 as the polygon for inside / outside determination of the determination object, and determines whether the coordinates of the determination object are inside the polygon for inside / outside determination (step S23).
[0096] When the determination device 20 determines that the coordinates of the determination object are not inside the polygon for inside / outside determination (step S23: No), it proceeds to step S22 and determines that the coordinates are outside the polygon for inside / outside determination ("false") (step S22).
[0097] In contrast, when the determination device 20 determines that the coordinates of the determination object are inside the polygon for inside / outside determination (step S23: Yes), it determines that the coordinates are inside the polygon for inside / outside determination ("true") (step S24).
[0098] The determination device 20 executes the processing of steps S21 to S24 for each coordinate of the determination object, and sends determination information obtained by associating the determination results for each coordinate of the determination object to the inside / outside determination control device 3.
[0099] [Effect of Embodiment 1]
[0100] In this way, in Embodiment 1, preprocessing of reducing the vertices of the polygon for inside / outside determination is performed, and the polygon with reduced vertices is used to perform the polygon inside / outside determination process for each coordinate. Therefore, in Embodiment 1, since the detailed determination is performed according to the polygon with reduced vertices during the detailed determination process, the processing time of the detailed determination process can be shortened compared with the case of performing the detailed determination using the original polygon for inside / outside determination.
[0101] In particular, in this Embodiment 1, when applied to the determination of whether the coordinates of a vehicle, etc. geographically are included in the polygon representing the road area, since the detailed determination process is performed after pre-reducing the vertices of the polygon representing the road area with a large number of vertices, the processing time of the determination process can be speeded up.
[0102] In addition, in the first embodiment, the inside / outside determination control device 3 may also pre-cut the vertices of the polygon for inside / outside determination by the vertex reduction device 10, store them in the storage area of the inside / outside determination control device 3, read them out during the inside / outside determination, and send them to the determination device 20.
[0103] [Second Embodiment]
[0104] Next, the second embodiment will be described. In the second embodiment, before the inside / outside determination process of the determination device, the coordinates of the polygon for inside / outside determination and the determination object are rotated, and the area of the MBR including the rotated polygon is reduced, thereby shortening the processing time required for the inside / outside determination process.
[0105] Figure 10 is a block diagram showing an example of the structure of the determination system of the second embodiment. As Figure 10 shown, compared with the determination system 1 shown in Figure 1 the determination system 201 of the second embodiment has a rotation device 210 (preprocessing device, first preprocessing device) instead of the vertex reduction device 10.
[0106] The rotation device 210 receives the polygon information D10 and the coordinate information D20 from the inside / outside determination control device 3, and performs preprocessing for rotating the coordinates of the polygon for inside / outside determination and the determination object. The rotation device 210 outputs the coordinate information of each vertex of the rotated polygon, that is, the rotated polygon information D12, and the coordinate information of the rotated coordinates of the determination object, that is, the rotated coordinate information D22, to the inside / outside determination control device 3.
[0107] The determination device 20 performs an inside / outside determination process for determining whether the coordinates of the rotated determination object exist inside or outside the rotated polygon for inside / outside determination based on the rotated polygon information D12 and the rotated coordinate information D22.
[0108] [Rotation Device]
[0109] Next, the Figure 10 shown rotation device 210 will be described. Figure 11 is a block diagram showing an example of the structure of the Figure 10 shown rotation device 210. As Figure 11 shown, the rotation device 210 has a communication unit 211 (output unit, first output unit), a storage unit 212, and a control unit 213.
[0110] The communication unit 211 has the same function as the communication unit 11 in the vertex reduction device 10. The communication unit 211 receives the polygon information D10 and the coordinate information D20 from the inside / outside determination control device 3 via the network. In addition, the communication unit 211 sends the rotated polygon information D12 and the rotated coordinate information D22 generated by rotating the inside / outside determination polygon and the coordinates of the determination object by the rotation unit 2131 (described later) to the inside / outside determination control device 3.
[0111] The storage unit 212 has the same function as the storage unit 12 in the vertex reduction device 10. The storage unit 312 stores the polygon information D10, the coordinate information D20, the rotated polygon information D12, and the rotated coordinate information D22.
[0112] The control unit 213 has the same function as the control unit 13 in the vertex reduction device 10. The control unit 213 has a rotation unit 2131.
[0113] As a preprocessing of the inside / outside determination process, the rotation unit 2131 acquires the polygon information D10 and the coordinate information D20, and rotates the inside / outside determination polygon and the coordinates of the determination object. For example, the rotation unit 2131 uses an algorithm for deriving the rotation angle (for example, refer to Reference 2) to implement the rotation process.
[0114] Reference 2: “Minimum-Area Rectangle Containing a Set of Points”, [online], [searched on August 23, Reiwa 1], Internet <URL: https: / / www.geometrictools.com / Documentation / MinimumAreaRectangle.pdf>
[0115] The rotation unit 2131 stores the rotated polygon information D12 and the rotated coordinate information D22 in the storage unit 212, and outputs these information to the inside / outside determination control device 3 via the communication unit 211.
[0116] [Rotation Process]
[0117] Next, the rotation process performed by the rotation device 210 will be specifically described. Figure 12 It is a diagram for explaining the rotation process. Figure 12 (1) of shows the inside / outside determination polygon P10 before the rotation process and the coordinates C1, C2, C3 of the determination object, Figure 12 (2) of shows the polygon P11 after the rotation process and the rotated coordinates C12, C22, C32. In addition, for the convenience of explanation, Figure 12The MBR 40 before the rotation process and the set MBR 42 after the rotation process are also shown.
[0118] As Figure 12 shown in (1) of [], the MBR 40 for the polygon P10 is a rough square including the coordinates C1 and C2. In the rotation device 210, the rotation unit 2131 appropriately rotates the polygon P10 and the coordinates C1, C2, and C3 of the determination object using the derived algorithm of the rotation angle.
[0119] Through this process, as Figure 12 shown in (2) of [], it is possible to set the MBR42 whose area is reduced compared to the MBR 40 as the MBR including the rotated inner / outer determination polygon P12. And, the coordinate C22 of the determination object is located outside the new MBR 42 by rotation, and the determination is ended only by simple determination.
[0120] As a result, in the determination process of the determination device 20, since simple determination is performed using the MBR 42 with a reduced area, it is possible to increase the coordinates determined to be outside the inner / outer determination polygon only by simple determination, and reduce the number of executions of detailed determination. In Figure 12 the example of [], the coordinates that are the objects of detailed determination are only the coordinate C32 among the coordinates C12, C22, and C23.
[0121] [Processing procedure of determination process]
[0122] Next, the processing procedure of the determination process in the determination system 201 will be described. Figure 13 It is to explain Figure 10 the sequence diagram of the processing procedure of the determination process of the determination system 201 shown in [].
[0123] Figure 13 The step S31 shown in [] is the same process as the step S1 shown in []. When the inner / outer determination control device 3 receives a determination entrustment, it sends the polygon information D10 and the coordinate information D20 to the rotation device 210 (step S32) to execute preprocessing. Figure 7 As preprocessing, the rotation device 210 performs a rotation process of rotating the inner / outer determination polygon and the coordinates of the determination object according to the polygon information D10 and the coordinate information D20 received from the inner / outer determination control device 3 (step S33), and sends the rotated polygon information D12 and the rotated coordinate information D22 to the inner / outer determination control device 3 (step S34).
[0124]
[0125] The internal / external determination control device 3 sends the rotated polygon information D12 and the rotated coordinate information D22 to the determination device 20 (step S35) to cause it to perform the internal / external determination process. The determination device 20 performs an internal / external determination process of determining whether the coordinates of the rotated determination object exist inside or outside the rotated internal / external determination polygon based on the rotated polygon information D12 and the rotated coordinate information D22 (step S36). In addition, the internal / external determination process is the same process as Figure 7 the step S6 shown. In addition, Figure 13 the steps S37 and S38 shown are the same processes as Figure 7 the steps S7 and S8 shown.
[0126] [Process of the rotation process]
[0127] Next, the process of the rotation process (step S33) will be described. Figure 14 is a flowchart showing Figure 13 the process of the rotation process shown.
[0128] As Figure 14 shown, when the rotation device 210 receives the input of the polygon information D10 and the coordinate information D20 from the internal / external determination control device 3 (step S41), it rotates the internal / external determination polygon and the coordinates of the determination object (step S42). The rotation device 210 generates the rotated polygon information D12 and the rotated coordinate information D22 and outputs them to the internal / external determination control device 3 (step S43), and ends the rotation process.
[0129] [Effects of Embodiment 2]
[0130] In this way, in Embodiment 2, a preprocess of rotating the internal / external determination polygon and the coordinates of the determination object is performed, and the internal / external determination process for each coordinate of the rotated determination object is performed using the MBR with a reduced area compared to before rotation. Therefore, in Embodiment 2, since a simple determination is performed using the MBR with a reduced area, the coordinates determined to be outside the internal / external determination polygon by only the simple determination increase. Thus, in Embodiment 2, the number of executions of the detailed determination can be reduced, and the overall processing time of the determination process can be shortened.
[0131] In addition, in this Embodiment 2, the internal / external determination control device 3 may also rotate the internal / external determination polygon and the coordinates of the determination object in advance for the rotation device 210, store them in the storage area of the internal / external determination control device 3, read them out at the time of internal / external determination, and send them to the determination device 20.
[0132] [Embodiment 3]
[0133] Next, Embodiment 3 will be described. In Embodiment 3, before the inside / outside determination process of the determination device, the polygon for inside / outside determination is divided into a plurality of polygons with smaller areas, and the areas of the MBRs for the divided polygons are reduced, thereby shortening the processing time required for the inside / outside determination process.
[0134] Figure 15 FIG. is a block diagram showing an example of the configuration of the determination system according to Embodiment 3. As Figure 15 shown, compared with the determination system 1 shown in Figure 1 the determination system 301 according to Embodiment 3 has a dividing device 310 (second preprocessing device) instead of the vertex reduction device 10.
[0135] The dividing device 310 performs preprocessing of receiving the polygon information D10 from the inside / outside determination control device 3 and dividing the polygon for inside / outside determination. The dividing device 310 divides the polygon for inside / outside determination and outputs the divided polygon information D13 including the coordinate information of each vertex of the divided polygons to the inside / outside determination control device 3.
[0136] The determination device 20 performs an inside / outside determination process of determining whether the coordinates of the determination object exist inside or outside the polygon for inside / outside determination for each divided polygon for inside / outside determination based on the divided polygon information D13 and the coordinate information D20.
[0137] [Dividing Device]
[0138] Next, the Figure 15 shown dividing device 310 will be described. Figure 16 FIG. is a block diagram showing an example of the configuration of the dividing device 310 shown in Figure 15 As Figure 16 shown, the dividing device 310 has a communication unit 311 (second output unit), a storage unit 312, and a control unit 313.
[0139] The communication unit 311 has the same function as the communication unit 11 in the vertex reduction device 10. The communication unit 311 receives the polygon information D10 from the inside / outside determination control device 3 via the network. In addition, the communication unit 311 transmits the divided polygon information D13 generated by the division process of the polygon for inside / outside determination by a division unit 3131 (described later) to the inside / outside determination control device 3.
[0140] The storage unit 312 has the same function as the storage unit 12 in the vertex reduction device 10. The storage unit stores the polygon information D10 and the divided polygon information D13.
[0141] The control unit 313 has the same function as the control unit 13 in the vertex reduction device 10. The control unit 313 has a division unit 3131.
[0142] As preprocessing for the inside / outside determination process, the segmentation unit 3131 obtains polygon information D10 and divides the polygon for inside / outside determination into a plurality of polygons. For example, the segmentation unit 3131 implements the segmentation process using an algorithm for dividing a polygon into triangles (for example, refer to Reference 3).
[0143] Reference 3: “Polygon triangulation in O(n log logn) time with simple data structures”, [online], [searched on August 23, Reiwa 1], Internet <URL: https: / / link.springer.com / article / 10.1007%2FBF02187846>
[0144] The segmentation unit 3131 stores the coordinate information of each vertex of each polygon divided by the segmentation process for the polygon for inside / outside determination, that is, the segmented polygon information D13, in the storage unit 312, and outputs this information to the inside / outside determination control device 3 via the communication unit 211.
[0145] [Segmentation Process]
[0146] Next, the segmentation process performed by the segmentation device 310 will be specifically described. Figure 17 It is a diagram for explaining the segmentation process. Figure 17 (1) of shows the polygon P10 for inside / outside determination before the segmentation process and the coordinates C1, C2, and C3 of the object to be determined. Figure 17 (2) of shows the polygons P13-1, P13-2, and P13-3 after the segmentation process. In addition, for ease of explanation, Figure 17 the MBR 40, the MBRs 43-1, 43-2, and 43-3 corresponding to the segmented polygons P13-1, P13-2, and P13-3, respectively, and the coordinates C1, C2, and C3 of the object to be determined are also shown.
[0147] As Figure 17 shown in (1) of, the MBR 40 for the polygon P10 is a rough square including the coordinates C1 and C2. In the segmentation device 310, the segmentation unit 3131 uses an algorithm for dividing a polygon into triangles to divide the polygon P10 into, for example, 3 polygons P13-1, P13-2, and P13-3 (refer to Figure 17 (2) of).
[0148] Through this process, as Figure 17As shown in (2) thereof, it is possible to set MBRs 43-1, 43-2, and 43-3 as MBRs each including the divided inner / outer determination polygons P13-1, P13-2, and P13-3. As Figure 17 shown in (2) thereof, the areas of these MBRs 43-1, 43-2, and 43-3 are reduced compared to the MBR 40. Then, as Figure 17 shown in (2) thereof, the coordinate C2 of the determination object located within the MBR 40 is outside the new MBRs 43-1, 43-2, and 43-3, and the determination is ended only by simple determination.
[0149] As a result, in the determination process of the determination device 20, since simple determination is performed using the MBRs 43-1, 43-2, and 43-3 with reduced usage areas, the coordinates determined to be outside the inner / outer determination polygons by simple determination increase, and the number of executions of detailed determination can be reduced. In Figure 17 the example, the coordinates that are the objects of detailed determination are only the coordinate C3 among the coordinates C1, C2, and C3.
[0150] [Processing procedure of determination process]
[0151] Next, the processing procedure of the determination process in the determination system 301 will be described. Figure 18 It is to explain Figure 15 the sequence diagram of the processing procedure of the determination process of the determination system 301 shown in
[0152] Figure 18 The step S51 shown in Figure 7 is the same processing as the step S1 shown in
[0153] When receiving a determination request, the inner / outer determination control device 3 sends the polygon information D10 to the division device 310 (step S52) to cause it to perform preprocessing.
[0154] As preprocessing, the division device 310 performs a division process of dividing the inner / outer determination polygon into a plurality of polygons based on the polygon information D10 received from the inner / outer determination control device 3 (step S53), and sends the divided polygon information D13 to the inner / outer determination control device 3 (step S54).
[0154] The inner / outer determination control device 3 sends the divided polygon information D13 and the coordinate information D20 to the determination device 20 (step S55) to cause it to perform the inner / outer determination process. The determination device 20 performs the following inner / outer determination process: Based on the divided polygon information D13 and the coordinate information D20, for each divided inner / outer determination polygon, it determines whether the coordinate of the determination object exists inside or outside the divided inner / outer determination polygon (step S56). In addition, the inner / outer determination process is the same processing as the Figure 7 step S6 shown inFigure 17 The steps S57 and S58 shown are the same processing as Figure 7 the steps S7 and S8 shown.
[0155] [Process of segmentation processing]
[0156] Next, the process of the segmentation processing (step S53) will be described. Figure 19 is a flowchart showing Figure 18 the process of the segmentation processing shown.
[0157] As Figure 14 shown, when the rotation device 210 receives the input of the polygon information D10 from the inside / outside determination control device 3 (step S61), it divides the inside / outside determination polygon into a plurality of polygons (step S62). The division device 310 generates the divided polygon information D13 and outputs it to the inside / outside determination control device 3 (step S63), and the rotation process ends.
[0158] [Effects of Embodiment 3]
[0159] Thus, in Embodiment 3, a preprocessing of dividing the inside / outside determination polygon into a plurality of polygons is performed, and the inside / outside polygon determination process for each coordinate of the determination object is performed using a plurality of MBRs whose areas are overall reduced compared to the MBR of the polygon before division. Therefore, in Embodiment 3, since simple determination is performed using a plurality of MBRs whose areas are overall reduced, the coordinates determined to be outside the inside / outside determination polygon by simple determination alone increase. Thus, in Embodiment 3, the number of executions of the detailed determination can be reduced, and the overall processing time of the determination process can be shortened.
[0160] In addition, in this Embodiment 3, the inside / outside determination control device 3 may also cause the division device 310 to divide the inside / outside determination polygon into a plurality of polygons in advance, store them in the storage area of the inside / outside determination control device 3, read them out during inside / outside determination, and send them to the determination device 20.
[0161] [Embodiment 4]
[0162] Next, Embodiment 4 will be described. In Embodiment 4, by sequentially performing the preprocessing described in Embodiments 1 to 3, the processing time required for the inside / outside determination process is further shortened.
[0163] Figure 20 is a block diagram showing an example of the structure of the determination system of Embodiment 4. As Figure 20 shown, the determination system 401 of Embodiment 4 has a vertex reduction device 10, a division device 310, and a rotation device 210 as preprocessing devices.
[0164] The inside / outside determination control device 3 first sends polygon information D10 to the vertex reduction device 10, for example, and executes the vertex reduction process of the vertex reduction device 10 as the first preprocessing, thereby obtaining the polygon information D11 after reduction.
[0165] Then, the inside / outside determination control device 3 sends the polygon information D11 after reduction to the division device 310, and executes the division process of the division device 310 as the second preprocessing. Thus, the inside / outside determination control device 3 obtains the vertex reduction / division after division of the polygon after vertex reduction / division after division polygon information D13'.
[0166] Next, the inside / outside determination control device 3 sends the vertex reduction / division after division polygon information D13' and coordinate information D20 to the rotation device 210, and executes the rotation process of the rotation device 210 as the third preprocessing. Thus, the inside / outside determination control device 3 obtains the vertex reduction / division / rotation after rotation of each polygon for inside / outside determination divided after vertex reduction / division after rotation polygon information D12' and the rotated coordinate information D22.
[0167] The determination device 20 performs an inside / outside determination process of determining whether the coordinates of the determination object exist inside or outside the inside / outside determination polygon for each divided and rotated inside / outside determination polygon based on the vertex reduction / division / rotation after rotation polygon information D12' and the rotated coordinate information D22.
[0168] [Processing procedure of the determination process]
[0169] Next, the processing procedure of the determination process in the determination system 401 will be described. Figure 21 It is an explanation Figure 20 The sequence diagram of the processing procedure of the determination process of the determination system 401 shown.
[0170] Figure 20 The steps S71 to S74 shown are the same processing as Figure 7 The steps S1 to S4 shown. The inside / outside determination control device 3 sends the polygon information D11 after reduction to the division device 310 (step S75) to execute the preprocessing.
[0171] As preprocessing, the division device 310 performs a division process of dividing the polygon after vertex reduction into a plurality of polygons (step S76), and sends the vertex reduction / division after division polygon information D13' to the inside / outside determination control device 3 (step S77). Step S76 is the same processing as Figure 18 The step S53 shown.
[0172] Next, the inside / outside determination control device 3 sends the vertex-reduced / split polygon information D13' and the coordinate information D20 to the rotation device 210 (step S78) to perform preprocessing. As preprocessing, the rotation device 210 performs a rotation process of rotating each polygon for inside / outside determination and the coordinates of the determination object according to the vertex-reduced / split polygon information D13' and the coordinate information D20 received from the inside / outside determination control device 3 (step S79), and sends the vertex-reduced / split / rotated polygon information D12' and the rotated coordinate information D22 to the inside / outside determination control device 3 (step S80). Step S79 is the same process as Figure 13 the step S33 shown.
[0173] The inside / outside determination control device 3 sends the vertex-reduced / split / rotated polygon information D12' and the rotated coordinate information D22 to the determination device 20 (step S81) to perform inside / outside determination processing. The determination device 20 performs inside / outside determination processing of determining whether the coordinates of the determination object exist inside or outside the inside / outside determination polygon for each split and rotated inside / outside determination polygon according to the vertex-reduced / split / rotated polygon information D12' and the rotated coordinate information D22 (step S82). In addition, the inside / outside determination processing is the same process as Figure 7 the step S6 shown. In addition, Figure 21 the steps S83 and S84 shown are the same processes as Figure 7 the steps S7 and S8 shown.
[0174] [Effect of Embodiment 4]
[0175] In this way, in Embodiment 4, the vertex reduction process for the inside / outside determination polygon, the rotation process for the vertex-reduced inside / outside determination polygon, and the split process for the vertex-reduced and rotated inside / outside determination polygon are sequentially performed as preprocessing. Thus, in Embodiment 4, it is possible to expect an increase in the coordinates that can be determined to be outside the inside / outside determination polygon only by simple determination, and compared with Embodiments 1 to 3, the processing time required for the inside / outside determination processing can be further shortened.
[0176] In addition, in Embodiment 4, the case where the preprocessing is performed in the order of the vertex reduction process for the inside / outside determination polygon, the rotation process for the vertex-reduced inside / outside determination polygon, and the split process for the vertex-reduced and rotated inside / outside determination polygon is taken as an example for explanation, but the order of the preprocessing is not limited.
[0177] [Modification Example 1 of Embodiment 4]
[0178] In addition, as Embodiment 4, an example in which the vertex reduction device 10, the division device 310, and the rotation device 210 are used as the preprocessing device has been described, but it is not limited thereto. The preprocessing device may also be both the vertex reduction device 10 and the rotation device 210. The processing procedure of the determination processing in this case will be described.
[0179] Figure 22 It is a sequence diagram illustrating the processing procedure of the determination processing in Modification 1 of Embodiment 4. Figure 22 Steps S91 to S94 shown are the same processing as Figure 7 Steps S1 to S4 shown. The inside / outside determination control device 3 sends the polygon information D11 after reduction and the coordinate information D20 to the rotation device 210 (step S95) to perform preprocessing.
[0180] As preprocessing, the rotation device 210 performs a rotation process of rotating the polygon for inside / outside determination after vertex reduction and the coordinates of the determination object according to the polygon information D11 after reduction and the coordinate information D20 received from the inside / outside determination control device 3 (step S96), and sends the polygon information D12″ after vertex reduction / rotation and the rotated coordinate information D22 to the inside / outside determination control device 3 (step S97). Step S96 is the same processing as Figure 13 Step S33 shown.
[0181] The inside / outside determination control device 3 sends the polygon information D12″ after vertex reduction / rotation and the rotated coordinate information D22 to the determination device 20 (step S98) to perform the inside / outside determination process. The determination device 20 performs an inside / outside determination process of determining whether the coordinates of the determination object exist inside or outside the polygon for inside / outside determination after vertex reduction and rotation according to the polygon information D12″ after vertex reduction / rotation and the rotated coordinate information D22 (step S99). In addition, the inside / outside determination process is the same processing as Figure 7 Step S6 shown. In addition, Figure 21 Steps S100 and S101 shown are the same processing as Figure 7 Steps S7 and S8 shown.
[0182] [Modification 2 of Embodiment 4]
[0183] In addition, the preprocessing device may also be both the vertex reduction device 10 and the division device 310. The processing procedure of the determination processing in this case will be described.
[0184] Figure 23 It is a sequence diagram illustrating the processing procedure of the determination processing in Modification 2 of Embodiment 4. Figure 23 Steps S111 to S114 shown are the same as Figure 7The same processing as steps S1 to S4 shown above. Figure 23 Steps S115 to S117 shown above are the same as Figure 21 the same processing as steps S75 to S77 shown above. The inside / outside determination control device 3 sends the polygon information D13' after vertex reduction / splitting and the coordinate information D20 to the determination device 20 (step S118) to make it perform the inside / outside determination process.
[0185] The determination device 20 performs an inside / outside determination process (step S119) of determining whether the coordinates of the determination object exist inside or outside the inside / outside determination polygons for each polygon after vertex reduction and splitting based on the polygon information D13' after vertex reduction / splitting and the coordinate information D20. In addition, the inside / outside determination process is the same as Figure 7 step S6 shown above. In addition, Figure 23 steps S120 and S121 shown above are the same as Figure 7 steps S7 and S8 shown above.
[0186] [Modification Example 3 of Embodiment 4]
[0187] In addition, the preprocessing device may also be both the rotation device 210 and the splitting device 310. The processing procedure of the determination process in this case will be described.
[0188] Figure 24 is a sequence diagram showing the processing procedure of the determination process in Modification Example 3 of Embodiment 4. Figure 24 Steps S131 to S134 shown above are the same as Figure 18 steps S51 to S54 shown above.
[0189] Then, the inside / outside determination control device 3 sends the split polygon information D13 and the coordinate information D20 to the rotation device 210 (step S135) to make it perform preprocessing. As preprocessing, the rotation device 210 performs a rotation process of rotating each polygon for inside / outside determination and the coordinates of the determination object based on the split polygon information D13 and the coordinate information D20 received from the inside / outside determination control device 3 (step S136), and sends the split / rotated polygon information D13'' and the rotated coordinate information D22 to the inside / outside determination control device 3 (step S137). Step S136 is the same as Figure 13 step S33 shown above.
[0190] The inside / outside determination control device 3 sends the divided / rotated polygon information D13″ and the rotated coordinate information D22 to the determination device 20 (step S138), causing it to perform the inside / outside determination process. The determination device 20 performs the inside / outside determination process of determining whether the coordinates of the determination object exist inside or outside the inside / outside determination polygon for each divided and rotated inside / outside determination polygon based on the divided / rotated polygon information D13″ and the rotated coordinate information D22 (step S139). In addition, the inside / outside determination process is the same process as step S6 shown in Figure 7 . In addition, Figure 24 steps S140 and S141 shown in are the same processes as steps S7 and S8 shown in Figure 7 .
[0191] [Verification]
[0192] The performance comparison of the determination method using the determination system in Embodiments 1 to 3 of the present invention with respect to the existing determination method was verified. Figure 25 is a diagram illustrating the experimental model. In this verification, one polygon shown in Figure 25 and 4000 vehicles were used as objects. Specifically, Figure 25 the polygon shown is a road polygon with a long side of 7000 m, a short side of 35 m, and an interval of 1 m between vertices. Moreover, in this verification, three modes were set: the vehicle is outside the MBR and outside the polygon, inside the MBR and outside the polygon, and inside the MBR and inside the polygon. The average value of the determination results after 10 trials was used for comparison.
[0193] First, the comparison results between the case where inside / outside determination is performed after performing vertex reduction processing on the road polygon as a preprocessing and the case where inside / outside determination is performed without performing the preprocessing will be described. As the preprocessing, the PIP processing time when the number of vertices of the road polygon is reduced to 1 / 2, 1 / 10, 1 / 100 and the PIP processing time when inside / outside determination is performed without performing the preprocessing were measured.
[0194] Figure 26 is a diagram illustrating the PIP processing time in the case where inside / outside determination is performed after performing vertex reduction processing and the case where inside / outside determination is performed without performing the preprocessing. As shown in Figure 26 , when the number of vertices is reduced to 1 / 2, 1 / 10, 1 / 100 compared to the case where inside / outside determination is performed without performing the preprocessing ( Figure 26 “reference”), the processing time is shortened to 0.5 times, 0.15 times, 0.07 times the PIP time in the reference, respectively.
[0195] Next, the comparison results between the case where the internal and external determination is performed after performing the segmentation process of dividing the road polygon into multiple polygons as a preprocessing and the case where the internal and external determination is performed without performing the preprocessing are described. Figure 27 It is a diagram illustrating the segmentation process implemented in the verification.
[0196] In this verification, as a preprocessing, the measurement was made for the case where the road polygon P14 (refer to Figure 27 (1) of this) was bisected into road polygons P14-1 and P-14-2 (refer to Figure 27 (2) of this), and the MBR 44 ( Figure 27 (1) of this, refer to) was divided into MBR 44-1 and 44-2 with the area reduced compared to MBR 44 (refer to Figure 27 (2) of this), and the PIP processing time in this case and the PIP processing time in the case where the internal and external determination was performed without performing the preprocessing were measured.
[0197] Figure 28 It is a diagram illustrating the PIP processing time in the case where the internal and external determination was performed after implementing the segmentation process and in the case where the internal and external determination was performed without performing the preprocessing. The experimental result becomes a model where all 4000 assumed vehicles are in positions that have moved outside the MBR through the segmentation process. In this way, the model is extreme because of the estimated value of the improvement effect based on what degree of estimation method.
[0198] In the case where the internal and external determination was performed without performing the segmentation process, the total time required until the PIP processing for 4000 vehicles located inside the MBR was completed was 7984 ms ( Figure 28 “no segmentation” of this). In contrast, in the case where the segmentation process was performed and the internal and external determination was performed, since all 4000 vehicles located inside the MBR were “outside the MBR”, the processing could be ended only by simple determination. In other words, the outer product operation for the vehicles located outside the MBR through the segmentation process could be omitted. Therefore, in the case where the segmentation process was performed and the internal and external determination was performed ( Figure 28 “with segmentation” of this), the total time required for the internal and external determination processing for 4000 vehicles outside the MBR was 1.4 ms.
[0199] As a result, when the internal and external determination was performed after implementing the segmentation process, the total processing time obtained by adding the segmentation processing time and the PIP processing time was shortened to 0.00018 times the processing time in the case where the preprocessing was not performed.
[0200] Then, the comparison results between the case where the internal and external determination was performed after performing the rotation process of rotating the road polygon and the vehicle as a preprocessing and the case where the internal and external determination was performed without performing the preprocessing are described. Figure 29This is a diagram illustrating the rotation process implemented in the verification.
[0201] As Figure 29 shown, in this verification, as a preprocessing step, the PIP processing time was measured when the road polygon P14 (refer to Figure 29 (1)) and the vehicle were rotated by 45° (refer to Figure 29 (2)), and the PIP processing time was also measured when the inside / outside determination was made without performing the preprocessing. As Figure 29 (2) shows, based on the road polygon P15 rotated by 45°, the MBR becomes MBR 44-3 with a reduced area compared to MBR 44. Additionally, the experimental result becomes a model assuming that all 4000 vehicles are located at positions shifted outside the MBR after the rotation process. Thus, the model is extreme because it is based on the estimated value of the improvement effect of the estimation method to a certain extent. Furthermore, the rotation processing time is as short as less than 1 / 10000 of the PIP processing time.
[0202] Figure 30 This is a diagram illustrating the PIP processing time in the case where the inside / outside determination is made after performing the rotation process and in the case where the inside / outside determination is made without performing the preprocessing. In the case where the inside / outside determination is made without performing the rotation process, the total time required until the PIP processing of 4000 vehicles located inside the MBR is completed is 8127 ms ( Figure 30 "No rotation" in the figure).
[0203] In contrast, in the case where the inside / outside determination is made after performing the rotation process ( Figure 30 "With rotation" in the figure), all 4000 vehicles located inside the MBR are outside the "MBR", so the processing can be completed only through a simple determination. In other words, the outer product operation for the vehicles outside the MBR due to the rotation process can be omitted. Therefore, in the case where the rotation process is performed and the inside / outside determination is made ( Figure 30 "With rotation" in the figure), the total time required for the inside / outside determination processing for 4000 vehicles outside the MBR is 3.3 ms.
[0204] As a result, when the inside / outside determination is made after performing the rotation process, the total processing time obtained by summing the rotation processing time and the PIP processing time is reduced to 0.0004 times the processing time in the case where no preprocessing is performed.
[0205] [Other application examples]
[0206] Figure 31 This is a diagram illustrating other application examples of the determination systems of Embodiments 1 to 4. The determination systems of Embodiments 1 to 4 can be applied to the coordinate determination of ships on sea routes (area: sea routes). First, based on the sea route (Figure 31 As shown by the solid line in (1), the width of the sea route is extended to Wm (W can be freely set). Then, the determination systems of Embodiments 1 to 4 replace the road with a new sea route and the car with a ship, and determine the position of the ship on the sea.
[0207] In addition, the determination systems of Embodiments 1 to 4 can be applied to the tracking of fish with coordinate sensors (area: river). Specifically, the determination systems of Embodiments 1 to 4 replace the road with a river and the car with a fish, and determine the position of the fish on the river.
[0208] [System Structure of Embodiment]
[0209] Figure 2 The vertex reduction device 10 shown, Figure 4 The determination device 20 shown, Figure 11 The rotation device 210 shown, Figure 16 Each structural element of the segmentation device 310 shown is a functional concept, and physically it does not necessarily need to be configured as shown. That is, the specific way of dispersion / merging of the functions of the vertex reduction device 10, the determination device 20, the rotation device 210, and the segmentation device 310 is not limited to what is shown, and all or part of them can be configured to be dispersed / merged functionally or physically in any unit according to various loads, usage conditions, etc.
[0210] In addition, all or any part of the processes performed in the vertex reduction device 10, the determination device 20, the rotation device 210, and the segmentation device 310 can also be implemented by a CPU and a program analyzed and executed by the CPU. In addition, each process performed in the vertex reduction device 10 can also be implemented as hardware based on wired logic.
[0211] In addition, all or part of the processes described as automatic processes in the various processes described in the embodiment can also be performed manually. Or, all or part of the processes described as manual processes can also be performed automatically by a known method. In addition, for the above-mentioned and the processing procedures, control procedures, specific names, and information including various data and parameters in the drawings, except for special records, they can be appropriately changed.
[0212] [Program]
[0213] Figure 32FIG. 0 is a diagram showing an example of a computer that implements the vertex reduction device 10, the determination device 20, the rotation device 210, and the division device 310 by executing a program. The computer 1000 has, for example, a memory 1010 and a CPU 1020. In addition, the computer 1000 has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.
[0214] The memory 1010 includes a ROM 1011 and a RAM 1012. The ROM 1011 stores a boot program such as BIOS (Basic InputOutput System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. For example, a detachable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120. The video adapter 1060 is connected to, for example, a display 1130.
[0215] The hard disk drive 1090 stores, for example, an OS (Operating System) 1091, application programs 1092, program modules 1093, and program data 1094. That is, the programs that define the respective processes of the vertex reduction device 10, the determination device 20, the rotation device 210, and the division device 310 are installed as program modules 1093 that describe codes executable by the computer 1000. The program modules 1093 are stored in the hard disk drive 1090, for example. For example, program modules 1093 that perform the same processes as the functional structures in the vertex reduction device 10, the determination device 20, the rotation device 210, and the division device 310 are stored in the hard disk drive 1090. In addition, the hard disk drive 1090 may be replaced with an SSD (Solid State Drive).
[0216] In addition, the setting data used in the processes of the above-described embodiments is stored as program data 1094 in, for example, the memory 1010 and the hard disk drive 1090. Then, the CPU 1020 reads out the program modules 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 as needed and executes them.
[0217] In addition, the program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, and may also be stored in a detachable storage medium, for example, and read out by the CPU 1020 via a disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may also be stored in other computers connected via a network (such as a LAN (Local Area Network) or a WAN (Wide Area Network)). Moreover, the program module 1093 and the program data 1094 may also be read out by the CPU 1020 from other computers via the network interface 1070.
[0218] As described above, embodiments to which the invention completed by the present inventor is applied have been described, but the present invention is not limited to the descriptions and drawings that form a part of the disclosure of the present invention based on the present embodiment. That is, other embodiments, examples, and application techniques and the like completed by those skilled in the art based on the present embodiment are all included in the scope of the present invention.
[0219] Reference Numeral Explanation
[0220] 1, 201, 301, 401: Determination system;
[0221] 2: Client terminal;
[0222] 3: Internal / External Determination Control Device;
[0223] 10: Vertex Reduction Device;
[0224] 11, 21, 211, 311: Communication Unit;
[0225] 12, 22, 212, 312: Storage Unit;
[0226] 13, 23, 213, 313: Control Unit;
[0227] 20: Determination Device;
[0228] 131: Vertex Reduction Section;
[0229] 231: Internal / External Determination Section;
[0230] 210: Rotation Device;
[0231] 310: Division Device;
[0232] 2131: Rotation Section;
[0233] 3131: Division Section.
Claims
1. A pretreatment device, characterized in that, comprising: a rotation unit that, as a preprocessing of the determination process, obtains coordinate information of coordinates to be determined and coordinate information of each vertex of an inner / outer determination polygon, and rotates the coordinates to be determined and the inner / outer determination polygon, thereby reducing the area of the minimum bounding rectangle including the inner / outer determination polygon, wherein the determination process determines whether the coordinates to be determined exist inside or outside the inner / outer determination polygon; and an output unit that outputs the coordinate information of each vertex of the rotated inner / outer determination polygon and the coordinate information of the coordinates to be determined after rotation as the rotated coordinate information.
2. A determination system comprising a determination device that performs a determination process and a first preprocessing device that performs preprocessing of the determination process, the determination process determining whether coordinates to be determined exist inside or outside an inner / outer determination polygon, wherein the determination system is characterized in that the first preprocessing device comprises: a rotation unit that, as preprocessing, obtains coordinate information of the coordinates to be determined and coordinate information of each vertex of an inner / outer determination polygon, and rotates the coordinates to be determined and the inner / outer determination polygon, thereby reducing the area of the minimum bounding rectangle including the inner / outer determination polygon; and a first output unit that outputs the coordinate information of each vertex of the rotated inner / outer determination polygon and the coordinate information of the coordinates to be determined after rotation as the rotated coordinate information, and the determination device uses the preprocessed information to determine whether the coordinates to be determined exist inside or outside the inner / outer determination polygon.
3. The determination system according to claim 2, characterized in that the determination system further comprises a second preprocessing device that performs preprocessing of the determination process, the second preprocessing device comprises: a division unit that, as preprocessing, obtains coordinate information of each vertex of the inner / outer determination polygon and divides the inner / outer determination polygon into a plurality of polygons; and a second output unit that outputs the coordinate information of each vertex of each of the divided inner / outer determination polygons as divided polygon information, and the divided polygon information is output to the rotation unit as the coordinate information of each vertex of the obtained inner / outer determination polygon.
4. A preprocessing method performed by a preprocessing device, characterized in that, The preprocessing method includes the following steps: as preprocessing of the determination process, obtaining coordinate information of coordinates to be determined and coordinate information of each vertex of an inner / outer determination polygon, and rotating the coordinates to be determined and the inner / outer determination polygon, thereby reducing the area of the minimum bounding rectangle including the inner / outer determination polygon, wherein the determination process determines whether the coordinates to be determined exist inside or outside the inner / outer determination polygon; and outputting the coordinate information of each vertex of the rotated inner / outer determination polygon and the coordinate information of the coordinates to be determined after rotation as the rotated coordinate information.
5. A recording medium storing a preprocessing program for causing a computer to execute the following steps: As a preprocessing for the determination process, coordinate information of the coordinates to be determined and coordinate information of each vertex of the inner / outer determination polygon are obtained, and the coordinates to be determined and the inner / outer determination polygon are rotated to reduce the area of the minimum bounding rectangle including the inner / outer determination polygon, wherein, This determination process determines whether the coordinates to be determined exist inside or outside the inner / outer determination polygon; and Output the coordinate information of each vertex of the rotated inner / outer determination polygon and the coordinate information of the coordinates to be determined after rotation as the rotated coordinate information.
Citation Information
Patent Citations
Area inside / Outside deciding method
JP1995182532A
Video game machine, video game method, and computer-readable medium on which video game program is recorded
US6155924A