CN111780773A - Method and system for identifying curve - Google Patents

Method and system for identifying curve Download PDF

Info

Publication number
CN111780773A
CN111780773A CN201910269440.XA CN201910269440A CN111780773A CN 111780773 A CN111780773 A CN 111780773A CN 201910269440 A CN201910269440 A CN 201910269440A CN 111780773 A CN111780773 A CN 111780773A
Authority
CN
China
Prior art keywords
coordinate point
point
coordinate
identified
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910269440.XA
Other languages
Chinese (zh)
Inventor
唐真
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to CN201910269440.XA priority Critical patent/CN111780773A/en
Publication of CN111780773A publication Critical patent/CN111780773A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)

Abstract

The embodiment of the application discloses a method for identifying a curve, which comprises the following steps: acquiring a driving path; determining coordinate points to be identified based on the coordinate points; determining an included angle of the coordinate point to be identified based on the coordinate point to be identified; the included angle of the coordinate point to be identified is an included angle formed by a first coordinate point and a second coordinate point which take the coordinate point to be identified as a vertex, are respectively positioned at two sides of the coordinate point to be identified, and have a distance with the coordinate point to be identified not less than a first threshold value; determining whether the included angle of the current coordinate point to be identified is smaller than a second threshold value; and if the included angle of the current coordinate point to be identified is smaller than the second threshold value, identifying the current coordinate point to be identified as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve. The method and the system can identify the curve, so that the driver can be prompted and the display scale can be adjusted conveniently.

Description

Method and system for identifying curve
Technical Field
The present disclosure relates to the field of road condition detection, and more particularly, to a method, a system, a device and a storage medium for identifying a curve.
Background
In the driving process, when a driver encounters a curve, a fork, a tunnel and other complex road conditions, the driver usually wants to know details of the road conditions in advance so as to make a prejudgment. In the existing navigation system, if a user wants to know the road condition in advance, the user is usually required to operate the navigation system by himself to switch the display area or adjust the scale, which is inconvenient for the driver to obtain the road information in advance and is not beneficial to the driving safety. Particularly, the navigation system does not have any prompt when the map has no curve marked in advance. Therefore, it is necessary to provide a method for automatically identifying a curve, which can quickly and accurately identify the curve when the curve is still a certain distance away from the curve, so as to prompt the user or show the details of the curve or the whole curve after the curve is identified.
Disclosure of Invention
The application provides a method and a system capable of identifying a curve, so as to prompt a driver and adjust a display scale conveniently.
In order to achieve the purpose of the invention, the technical scheme provided by the invention is as follows:
a method of identifying a curve, comprising: acquiring a driving path; the driving path comprises a starting point, an end point and at least one coordinate point positioned between the starting point and the end point; determining coordinate points to be identified based on the coordinate points; the coordinate points to be identified are at least one part of the coordinate points; determining an included angle of the coordinate point to be identified based on the coordinate point to be identified; the included angle of the coordinate point to be identified is an included angle formed by a first coordinate point and a second coordinate point which take the coordinate point to be identified as a vertex, are respectively positioned at two sides of the coordinate point to be identified, and have a distance with the coordinate point to be identified not smaller than a first threshold value; the first coordinate point and the second coordinate point are arbitrary coordinate points on the travel path; determining whether the included angle of the current coordinate point to be identified is smaller than a second threshold value; and if the included angle of the current coordinate point to be identified is smaller than the second threshold value, identifying the current coordinate point to be identified as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve.
A curve identification system, comprising: the acquisition module is used for acquiring a driving path of a moving object; the driving path comprises a starting point, an end point and a plurality of coordinate points positioned between the starting point and the end point; the coordinate point determination module is used for determining a coordinate point to be identified based on the coordinate point; the coordinate points to be identified are at least one part of the coordinate points; the coordinate point included angle determination module is used for determining a coordinate point included angle to be identified based on the coordinate point to be identified; the included angle of the coordinate point to be identified is an included angle formed by a first coordinate point and a second coordinate point which take the coordinate point to be identified as a vertex, are respectively positioned at two sides of the coordinate point to be identified, and have a distance with the coordinate point to be identified not smaller than a first threshold value; the first coordinate point and the second coordinate point are arbitrary coordinate points on the travel path; the identification module is used for determining whether the included angle of the current coordinate point to be identified is smaller than a second threshold value; and if the included angle of the current coordinate point to be identified is smaller than the second threshold value, identifying the current coordinate point to be identified as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve.
A curve identification apparatus, the apparatus comprising a processor and a memory; the memory is used for storing instructions which, when executed by the processor, cause the apparatus to implement the corresponding operations of the method as described above.
A computer readable storage medium storing computer instructions which, when read by a computer, cause the computer to perform the method as previously described.
Drawings
The present application will be further explained by way of exemplary embodiments, which will be described in detail by way of the accompanying drawings. These embodiments are not intended to be limiting, and in these embodiments like numerals are used to indicate like structures, wherein:
FIG. 1 is a schematic illustration of an exemplary transportation service system, according to some embodiments of the present application;
FIG. 2 is a schematic diagram of exemplary hardware and/or software components of an exemplary computing device according to some embodiments of the present invention;
FIG. 3 is a schematic diagram of exemplary hardware components and/or software components of an exemplary mobile device shown in accordance with some embodiments of the present invention;
FIG. 4 is a block diagram of an exemplary processing engine shown in accordance with some embodiments of the invention;
FIG. 5 is an illustrative diagram of a travel path from a start point to an end point;
FIG. 6 is an exemplary flow chart illustrating identifying a curve according to some embodiments of the invention;
FIG. 7 is an exemplary flow diagram illustrating the determination of coordinate points to be identified according to some embodiments of the invention;
FIG. 8 is an exemplary flow chart illustrating adjusting a scale according to some embodiments of the invention.
Detailed Description
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings used in the description of the embodiments will be briefly introduced below. It is obvious that the drawings in the following description are only examples or embodiments of the application, from which the application can also be applied to other similar scenarios without inventive effort for a person skilled in the art. Unless otherwise apparent from the context, or otherwise indicated, like reference numbers in the figures refer to the same structure or operation.
As used in this application and the appended claims, the terms "a," "an," "the," and/or "the" are not intended to be inclusive in the singular, but rather are intended to be inclusive in the plural unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements. The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment". Relevant definitions for other terms will be given in the following description.
Embodiments of the present application may be applied to different transportation systems and/or mobile devices, including but not limited to one or a combination of land, surface, aviation, aerospace, and the like. Such as a human powered vehicle, a vehicle, an automobile (e.g., a small car, a bus, a large transportation vehicle, etc.), rail transportation (e.g., a train, a bullet train, a high-speed rail, a subway, etc.), a boat, an airplane, an airship, a satellite, a hot air balloon, an unmanned vehicle, etc. Different mobile terminals include, but are not limited to, mobile devices such as smart phones, smart watches, video cameras, notebooks, tablet computers, Personal Digital Assistants (PDAs), in-vehicle computers, and the like. The application scenarios of the different embodiments of the present application include but are not limited to one or a combination of several of transportation industry, warehouse logistics industry, agricultural operation system, urban public transportation system, commercial operation vehicle, etc. It should be understood that the application scenarios of the system and method of the present application are merely examples or embodiments of the present application, and those skilled in the art can also apply the present application to other similar scenarios without inventive effort based on these drawings.
FIG. 1 is a schematic diagram of a transport services system 100 according to some embodiments of the present invention. For example, the transport services system 100 may be a platform that provides services for transportation services. The transport services system 100 may include a server 110, one or more user terminals 120, storage 130, network 140, and information sources 150. The server 110 may include a processing engine 112.
In some embodiments, the server 110 may be a single server or a group of servers. The server farm can be centralized or distributed (e.g., server 110 can be a distributed system). In some embodiments, the server 110 may be local or remote. For example, server 110 may access information and/or data stored in storage device 130, user terminal 120, through network 140. As another example, server 110 may be directly connected to storage device 130, user terminal 120 to access stored information and/or data. In some embodiments, the server 110 may be implemented on a cloud platform. By way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, between clouds, multiple clouds, the like, or any combination of the above. In some embodiments, server 110 may be implemented on a computing device similar to that shown in FIG. 2 or FIG. 3 of the present application. For example, server 110 may be implemented on one computing device 200 as shown in FIG. 2, including one or more components in computing device 200. As another example, server 110 may be implemented on a mobile device 300 as shown in FIG. 3, including one or more components in computing device 200.
In some embodiments, the user terminal 120 may send the transport service request based on a current location, a preset location, or a destination location. In some embodiments, the user terminal 120 may receive transportation service data such as route planning, navigation services, information prompts, and the like. In some embodiments, the user terminal 120 may include, but is not limited to, a desktop computer 120-1, a laptop computer 120-2, a vehicle mounted built-in device 120-3, a mobile device 120-4, and the like or any combination thereof. In some embodiments, the in-vehicle built-in device 120-3 may include, but is not limited to, a personal computer, an in-vehicle heads-up display (HUD), an in-vehicle automatic diagnostic system (OBD), and the like, or any combination thereof. In some embodiments, mobile device 120-4 may include, but is not limited to, a smartphone, a Personal Digital Assistant (PDA), a tablet, a palmtop, smart glasses, a smart watch, a wearable device, a virtual display device, a display enhancement device, and the like, or any combination thereof. In some embodiments, the user terminal 120 may send the transport service requirements to one or more devices in the transport service system 100. For example, the user terminal 120 may send the transport service requirements to the server 110 for processing.
Storage device 130 may store data and/or instructions. In some embodiments, the storage device 130 may store data obtained from the data acquisition end 120. In some embodiments, storage device 130 may store data and/or instructions for execution or use by server 110, which may be executed or used by server 110 to implement the example methods described herein. In some embodiments, storage device 130 may be connected to network 140 to enable communication with one or more components (e.g., server 110, user terminal 120, etc.) in transport services system 100. One or more components of transport services system 100 may access data or instructions stored in storage device 130 via network 140. In some embodiments, the storage device 130 may be directly connected to or in communication with one or more components of the transport services system 100 (e.g., the server 110, the user terminal 120, etc.). In some embodiments, storage device 130 may be part of server 110.
Network 140 may facilitate the exchange of information and/or data. In some embodiments, one or more components (e.g., server 110, storage device 130, user terminal 120, etc.) in transport services system 100 may send information and/or data to other components in transport services system 100 via network 140. For example, the server 110 may obtain/obtain data information from the data collection end 120 via the network 140. In some embodiments, the network 140 may be any one of, or a combination of, a wired network or a wireless network. For example, network 140 may include a cable network, a wired network, a fiber optic network, a telecommunications network, an intranet, the internet, a Local Area Network (LAN), a Wide Area Network (WAN), a Wireless Local Area Network (WLAN), a Metropolitan Area Network (MAN), a Public Switched Telephone Network (PSTN), a bluetooth network, a ZigBee network, a Near Field Communication (NFC) network, the like, or any combination of the above. In some embodiments, network 140 may include one or more network access points. For example, the network 140 may include wired or wireless network access points, such as base stations and/or Internet switching points 140-1, 140-2, and so forth. Through the access point, one or more components of the transport services system 100 may connect to the network 140 to exchange data and/or information.
The information source 150 is a source that provides other information to the transport services system 100. The information source 150 may be used to provide information related to road information for the system, such as weather conditions, traffic information, legal information, news information, life guide information, and the like. The information source 150 may be in the form of a single central server, or may be in the form of a plurality of servers connected via a network, or may be in the form of a large number of personal devices. When the information source 150 exists as a plurality of personal devices, the devices may upload text, voice, image, video, etc. to the cloud server in a user-generated content (user-generated content) manner, so that the cloud server communicates with the plurality of personal devices connected thereto to form the information source 150.
FIG. 2 is a schematic diagram of an exemplary computing device 200 shown in accordance with some embodiments of the invention. Server 110 and storage device 130 may be implemented on computing device 200. For example, the processing engine 112 may be implemented on the computing device 200 and configured to implement the functionality disclosed herein.
Computing device 200 may include any components used to implement the systems described herein. For example, the processing engine 112 may be implemented on the computing device 200 by its hardware, software programs, firmware, or a combination thereof. For convenience, only one computer is depicted in the figures, but the computing functions described herein in relation to the transport services system 100 may be implemented in a distributed manner by a set of similar platforms to distribute the processing load of the system.
Computing device 200 may include a communication port 250 for connecting to a network for enabling data communication. Computing device 200 may include a processor (e.g., CPU)220 that may execute program instructions in the form of one or more processors. An exemplary computer platform may include an internal bus 210, various forms of program memory and data storage including, for example, a hard disk 270, and Read Only Memory (ROM)230 or Random Access Memory (RAM)240 for storing various data files that are processed and/or transmitted by the computer. An exemplary computing device may include program instructions stored in read-only memory 230, random access memory 240, and/or other types of non-transitory storage media that are executed by processor 220. The methods and/or processes of the present application may be embodied in the form of program instructions. Computing device 200 also includes input/output component 260 for supporting input/output between the computer and other components. Computing device 200 may also receive programs and data in the present disclosure via network communication.
For ease of understanding, only one processor is exemplarily depicted in fig. 2. However, it should be noted that the computing device 200 in the present application may include multiple processors, and thus the operations and/or methods described in the present application that are implemented by one processor may also be implemented by multiple processors, collectively or independently. For example, if in the present application the processors of computing device 200 perform steps 1 and 2, it should be understood that steps 1 and 2 may also be performed by two different processors of computing device 200, either collectively or independently (e.g., a first processor performing step 1, a second processor performing step 2, or a first and second processor performing steps 1 and 2 collectively).
Fig. 3 is a schematic diagram of exemplary hardware and/or software of an exemplary mobile device 300, shown in accordance with some embodiments of the present invention. As shown in fig. 3, mobile device 300 may include a communication unit 310, a display unit 320, a graphics processor 330, a processor 340, an input/output unit 350, a memory 360, and a storage unit 390. A bus or a controller may also be included in the mobile device 300. In some embodiments, mobile operating system 370 and one or more application programs 380 may be loaded from storage unit 390 into memory 360 and executed by processor 340. In some embodiments, application 380 may receive and display information for image processing or other information related to processing engine 112. Input/output unit 350 may enable interaction of data information with transport services system 100 and provide interaction-related information to other components in transport services system 100, such as server 110, via network 140.
To implement the various modules, units and their functionality described in this application, a computer hardware platform may be used as the hardware platform for one or more of the elements mentioned herein. A computer having user interface elements may be used to implement a Personal Computer (PC) or any other form of workstation or terminal equipment. A computer may also act as a server, suitably programmed.
Fig. 4 is a block diagram illustrating an exemplary processing engine 112 according to some embodiments of the invention. As shown, the processing engine 112 may include an obtaining module 410, a coordinate point to be identified determining module 420, a coordinate point included angle to be identified determining module 430, and an identifying module 440.
In some embodiments, the acquisition module 410 may acquire a travel path. In some embodiments, the acquisition module 410 may acquire data from one or more of the transport services system 100, the server 110, the user terminal 120, the storage device 130, the network 140, the information source 150, or any device or component disclosed herein capable of storing data. The acquired data may include one or more of a current position, a preset starting point position, a destination position, path planning information, a driving path, road condition information, environment information, traffic congestion condition information, an algorithm, a model, and the like. In some embodiments, the acquisition module 410 may acquire a travel path. In some embodiments, the travel path may be a travel path currently in real-time progress. For example, the travel path may be a real-time travel path from the current location to the destination location. In some embodiments, the travel path may include a start point, an end point, and at least one coordinate point located between the start point and the end point. In some embodiments, the starting point may be a coordinate point corresponding to a current position on the travel path. In some embodiments, the end point may be a coordinate point corresponding to the destination. In some embodiments, the end point may be any one of a current position and a destination position. In some embodiments, the end point may be a coordinate point on the travel path located forward in the travel direction, at a distance not less than the third threshold from the current position. The third threshold may be any distance value, for example, the third threshold may be 2 km, 3 km, 4 km, 5 km, 10 km, and the like. It is to be understood that, since the current position may be changed in real time, the positions of the start point and the end point are also advanced forward in real time as the travel is progressed until the travel is stopped at the destination. In some embodiments, the coordinate points on the travel path may be actual acquisition points in the electronic map drawing. For example, coordinate points collected by professionals, professional vehicles or other professional equipment drawing an electronic map can be connected one by one to completely present the characteristics of the route. In some embodiments, the coordinate points may be collected in advance when the electronic map is drawn and stored in the transportation service system 100, the server 110, the user terminal 120, the storage device 130, the network 140, the information source 150, or any device or component disclosed herein capable of storing data. In some embodiments, the distribution of coordinate points may be related to the road type. In some embodiments, the number of coordinate points may be smaller if the route is more straight. For example, only 3-5 coordinate points need to be connected to obtain a straight route. In some embodiments, if the route is a curve or a more complex road segment, a greater density of coordinate points is required in order to present the characteristics of the route in as detail and smoothly as possible. For example, at a curve, 10-20 coordinate points need to be connected to accurately represent the characteristics of the entire curve. In a tortuous and winding route, at least 50 coordinate points need to be connected to accurately represent the detailed characteristics of the route. In some embodiments, the obtaining module 410 further includes a number obtaining unit for obtaining the number of the coordinate point while obtaining the travel path. In some embodiments, the coordinate point number may be a number of acquisition points. In some embodiments, the coordinate point number may be a number compiled when processing map data. In some embodiments, the coordinate point numbers of the travel paths are in a regular sequence, for example, the coordinate point numbers on a travel path may be 126, 127, 128 … 173, 174. In some embodiments, the number of coordinate points is a sequence between a start point and an end point arranged in a regular order, e.g., the number of coordinate points may be n, n +1, n +2, n +3 … n + i … n + m, 0< i < m. As shown in fig. 5, if the start point is a and the end point is D, the coordinate point number between a and D may be 1, 2 … n + i … 25, where n is 1, m is 24, and 0< i < 24.
In some embodiments, the coordinate point to be identified determination module 420 may determine the coordinate point to be identified based on the coordinate point. In some embodiments, the coordinate points to be identified may be all coordinate points. In some embodiments, the coordinate points to be identified are at least a portion of the coordinate points. So as to reduce the operation amount and save the processing time. In some embodiments, the coordinate point to be identified may be a coordinate point on a section of the path on the travel path. For example, it may be a coordinate point of a path having a length of 3 km at 1 km from the current position on the driving path. In some embodiments, the coordinate points to be identified may be coordinate points distributed at intervals on the travel path. For example, the coordinate points on the travel path are coordinate points numbered from 100 to 200, and the coordinate points to be identified may be coordinate points distributed every 5 points: 100. 105, 110 …, or coordinates distributed every 10 points: 100. 110, 120 …. In some embodiments, the coordinate points to be identified may be determined from the actual density of the coordinate points. For example, if the coordinate points on a certain path are sparsely distributed, all the coordinate points on the path may be regarded as coordinate points to be identified. If the coordinate points on a certain path are distributed more densely, a part of the coordinate points on the path can be determined as coordinate points to be identified. In some embodiments, a coordinate point at the midpoint of the path length from the current location to the destination location may be determined as the coordinate point to be identified. In some embodiments, a coordinate point between the start point and the end point may be determined as the coordinate point to be identified. And along with the change of the starting point and the end point, the coordinate points to be identified also change sequentially. For example, the starting point is a real-time current position, the end point is a coordinate point which is about 3 kilometers away from the starting point, the starting point and the end point move forward continuously along with the continuous travel of the vehicle, the coordinate point to be identified is a coordinate point between the starting point and the end point, and the coordinate point to be identified also moves forward continuously along with the coordinate point until the vehicle stops running to the destination. In some embodiments, at least a part of coordinate points between the start point and the end point may be determined as coordinate points to be identified. In some embodiments, a coordinate point on a path that is a distance between the start point and the end point may be determined as the coordinate point to be identified. For example, coordinate points within 1 km to 4 km from the start point are determined as coordinate points to be identified. In some embodiments, a coordinate point at the midpoint of the path length from the start point to the end point may be determined as the coordinate point to be identified. In some embodiments, a coordinate point whose coordinate point number is within a certain range may be determined as the coordinate point to be identified. For example, if the coordinate points of the travel path are numbered in order from 150 to 230 and the coordinate point of the current position is numbered 150, the coordinate points numbered 20 to 50 apart from the coordinate point of the current position (the coordinate points numbered 170 to 200) may be determined as the coordinate points to be identified. And as the coordinate point of the current position changes, the coordinate point to be identified also changes, for example, when the coordinate point traveled to the current position is the number 160, the coordinate point to be identified is a coordinate point between the numbers 180 to 210.
In some embodiments, the coordinate point determination module to be identified further comprises a first coordinate point determination unit and/or a second coordinate point determination unit. The first coordinate point and the second coordinate point may be arbitrary coordinate points on the travel path. In some embodiments, the first coordinate point and the second coordinate point may be respectively located on two sides of the coordinate point to be identified. In some embodiments, the first coordinate point determination unit may determine, as the first coordinate point, an arbitrary coordinate point that is located on the travel path in a direction close to the start point and is not less than a first threshold from the coordinate point to be identified. Wherein the first threshold may be 1 km, 2 km, 3 km, 5 km, 10 km, etc. In some embodiments, the first coordinate point determination unit may determine the start point as the first coordinate point. The second coordinate point determination unit may be configured to determine the second coordinate point. In some embodiments, the second coordinate point may be a coordinate point located on the travel path in a direction close to the end point and not less than a first threshold from the coordinate point to be identified. Wherein the first threshold may be 1 km, 2 km, 3 km, 5 km, 10 km, etc. In some embodiments, the second coordinate point determination unit may determine the end point as the second coordinate point.
In some embodiments, the coordinate point determination module to be identified further includes a third coordinate point determination unit. In some embodiments, the third coordinate point determination unit is configured to determine the third coordinate point based on the coordinate point. The third coordinate point is an arbitrary coordinate point on the travel path. In some embodiments, the coordinate point to be identified determination module may determine the coordinate point to be identified based on the third coordinate point. In some embodiments, the third coordinate point may satisfy a path length from the start point to the third coordinate point that is greater than a certain ratio of the path length between the start point and the end point. In some embodiments, the ratio may be any value such as one-half, one-third, one-fourth, or two-thirds. In some embodiments, the third coordinate point may satisfy a path length from the start point to the third coordinate point that is greater than one-half of a path length between the start point and the end point. In some embodiments, the basket may be rotatedThe coordinate point of half the path length between the start point and the end point is determined as a path midpoint coordinate point, and at least one coordinate point between the path midpoint coordinate point and the end point is determined as a third coordinate point. As shown in fig. 5, that is, if a coordinate point corresponding to one-half of the path length between the start point and the end point is M points, the third coordinate point is a coordinate point between the M points to the end point D point. In some embodiments, the path length is an actual length value extending along the travel path between the coordinate points. In some embodiments, the third coordinate point is any coordinate point between the M point and the end point D point. For example, if the M point is a coordinate point numbered n + k, the third coordinate point n + i (k ≦ i ≦ M) is a coordinate point numbered between n + k and n + M. In some embodiments, the coordinate point to be identified determination module may determine the coordinate point to be identified based on the third coordinate point. In some embodiments, a third coordinate point may be traversed, and the coordinate point which is located between the first coordinate point and the third coordinate point and has a distance from the first coordinate point and the third coordinate point, respectively, which is not less than a first threshold value, may be determined as the coordinate point to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000123
And determining the corresponding coordinate point as the coordinate point to be identified. In some embodiments, if i/2 is not an integer, an integer number of i/2 may be taken for calculation. For example, if i ═ 7, i/2 takes the value 3; i is 8, i/2 takes the value 4. In some embodiments, as shown in FIG. 5, one-half of the path length between the start point A and the end point D is B14 corresponding to the M point, and the third coordinate point is a coordinate point between B14 and D points, and the B14 and B25 are traversed to obtain a point number of B14 and D points
Figure BDA0002017892940000121
Corresponding coordinate points B7(1+13/2), B8(1+14/2) … B13(1+25/2), B7 to B13 are determined as coordinate points to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000122
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000131
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000132
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. In some embodiments, the second coordinate point determination unit may determine the third coordinate point as the second coordinate point.
In some embodiments, the coordinate point included angle to be identified determining module 430 may determine the coordinate point included angle to be identified based on the coordinate point to be identified. In some embodiments, the included angle of the coordinate point to be identified may be an included angle formed by the coordinate point to be identified as a vertex and the start point and the end point respectively. In some embodiments, the included angle of the coordinate point to be identified may be an included angle formed by the coordinate point to be identified as a vertex and the first coordinate point and the end point respectively. In some embodiments, the included angle of the coordinate point to be identified may be an included angle formed by the coordinate point to be identified as a vertex and the starting point and the second coordinate point respectively. In some embodiments, the included angle of the coordinate point to be identified may be an included angle formed by the coordinate point to be identified as a vertex and the first coordinate point and the second coordinate point respectively.
In some embodiments, the identification module 440 may determine whether the included angle of the current coordinate point to be identified is less than a second threshold, and identify the current coordinate point to be identified as a curve coordinate point if the included angle of the current coordinate point to be identified is less than the second threshold, and identify a path position where the curve coordinate point is located as a curve. In some embodiments, the second threshold may be an empirically or statistically derived pinch angle value. When less than the second threshold, the current road segment may be considered a curve. The driver is required to pay attention to and decelerate in advance in order to drive safely. When greater than the second threshold, the segment may be considered to be approximately a straight road. In some embodiments, the second threshold may be 140 °. In some embodiments, the second threshold may be 135 °. In some embodiments, the second threshold may be 130 °.
In some embodiments, the processing engine 112 may also include an adjustment module to adjust the scale. In some embodiments, the adjustment module may adjust the scale as the curve coordinate point is approached. In some embodiments, the adjustment module may adjust the scale based on a distance between a current location of travel and the curve coordinate point. For example, the scale is enlarged at a current position 200m from the curve coordinate point, and voice-prompted. The scale is further enlarged when the current position is at a distance of 100 from the curve coordinate point, and is enlarged to the maximum when the current position is at a distance of 50 meters from the curve coordinate point. In some embodiments, the adjustment module may adjust the scale based on an included angle value of the curve coordinate point. For example, if the angle value of the curve coordinate point is 130 °, the scale may be enlarged and a voice prompt may be performed. If the angle value of the curve coordinate point is 120, the scale can be further enlarged. If the angle value of the curve coordinate point is 90 deg. or less, the scale may be enlarged to the maximum value. In some embodiments, the adjustment module may scale up to show details of the curve. In some embodiments, the adjustment module may scale down to display an overview of the curve. In some embodiments, the adjustment module may dynamically adjust the scale according to a change in a distance between the current position and the curve coordinate point, or a change in an included angle of the curve coordinate point. In some embodiments, the adjusting module can continuously switch between the scaling-up scale and the scaling-down scale, so as to dynamically adjust the scaling. In some embodiments, the adjustment module may dynamically scale up and scale down at the same time, dynamically adjusting the scale on different display areas.
It should be understood that the system and its modules shown in FIG. 4 may be implemented in a variety of ways. For example, in some embodiments, the system and its modules may be implemented in hardware, software, or a combination of software and hardware. Wherein the hardware portion may be implemented using dedicated logic; the software portions may be stored in a memory for execution by a suitable instruction execution system, such as a microprocessor or specially designed hardware. Those skilled in the art will appreciate that the methods and systems described above may be implemented using computer executable instructions and/or embodied in processor control code, such code being provided, for example, on a carrier medium such as a diskette, CD-or DVD-ROM, a programmable memory such as read-only memory (firmware), or a data carrier such as an optical or electronic signal carrier. The system and its modules of the present application may be implemented not only by hardware circuits such as very large scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field programmable gate arrays, programmable logic devices, etc., but also by software executed by various types of processors, for example, or by a combination of the above hardware circuits and software (e.g., firmware).
It should be noted that the above description is merely for convenience and should not be taken as limiting the scope of the present application. It will be understood by those skilled in the art that, having the benefit of the teachings of this system, various modifications and changes in form and detail may be made to the field of application for which the method and system described above may be practiced without departing from this teachings. For example, the coordinate point to be recognized module 420 and the coordinate point included angle to be recognized module 430 may be integrated together into one module, and the function of determining the coordinate point to be recognized and the included angle of the coordinate point to be recognized is realized at the same time. However, such changes and modifications do not depart from the scope of the present application.
FIG. 6 is an exemplary flow diagram illustrating identifying a curve according to one embodiment of the invention. In some embodiments, flow 600 may be performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (instructions run on a processing device to perform hardware simulation), etc., or any combination thereof. One or more operations of the process 600 for identifying a curve shown in fig. 6 may be implemented by the road information system 100 shown in fig. 1. For example, the flow 600 may be stored in the storage device 130 in the form of instructions and executed by the processing engine 112 to perform the calls and/or perform the operations (e.g., the processor 220 of the computing device 200 shown in fig. 2, the central processor 340 of the mobile device 300 shown in fig. 3).
At 610, a travel path may be acquired. Operation 610 may be performed by acquisition module 410. In some embodiments, the travel path may be a travel path currently in real-time progress. For example, the travel path may be a real-time travel path from the current location to the destination location. In some embodiments, the travel path may include a start point, an end point, and at least one coordinate point located between the start point and the end point. In some embodiments, the starting point may be a coordinate point corresponding to a current position on the travel path. In some embodiments, the end point may be a coordinate point corresponding to the destination. In some embodiments, the end point may be any one of a current position and a destination position. In some embodiments, the end point may be a coordinate point located forward in the traveling direction on the traveling path, at a distance not less than the third threshold value from the current position. The third threshold may be any distance value, for example, the third threshold may be 2 km, 3 km, 4 km, 5 km, 10 km, and the like. In some embodiments, the number of coordinate points is acquired at the same time as the travel path is acquired. In some embodiments, the coordinate point number may be a number of an acquisition point when the map is drawn. In some embodiments, the coordinate point number may be a number compiled when processing map data. In some embodiments, the coordinate point numbers of the travel paths are in a regular sequence, for example, the coordinate point numbers on a travel path may be 126, 127, 128 … 173, 174. In some embodiments, the number of coordinate points is a sequence between a start point and an end point arranged in a regular order, e.g., the number of coordinate points may be n, n +1, n +2, n +3 … n + i … n + m, 0< i < m. As shown in fig. 5, if the start point is a and the end point is D, the coordinate point number between a and D may be 1, 2 … n + i … 25, where n is 1, m is 24, and 0< i < 24.
In 620, coordinate points to be identified may be determined based on the coordinate points. Operation 620 may be performed by the coordinate point to be identified determination module 420. In some embodiments, the coordinate points to be identified are at least a portion of the coordinate points. So as to reduce the operation amount and save the processing time. In some embodiments, the coordinate point to be identified may be a coordinate point on a section of the path on the travel path. For example, it may be a coordinate point of a path having a length of 3 km at 1 km from the current position on the driving path. In some embodiments, the coordinate points to be identified may be coordinate points distributed at intervals on the travel path. For example, the coordinate points on the travel path are coordinate points numbered from 100 to 200, and the coordinate points to be identified may be coordinate points distributed every 5 points: 100. 105, 110 …. In some embodiments, a coordinate point at the midpoint of the path length from the current location to the destination location may be determined as the coordinate point to be identified. In some embodiments, a coordinate point between the start point and the end point may be determined as the coordinate point to be identified. And along with the change of the starting point and the end point, the coordinate points to be identified also change sequentially. For example, the starting point is a real-time current position, the end point is a coordinate point which is about 3 kilometers away from the starting point, the starting point and the end point move forward continuously along with the continuous travel of the vehicle, the coordinate point to be identified is a coordinate point between the starting point and the end point, and the coordinate point to be identified also moves forward continuously along with the coordinate point until the vehicle stops running to the destination. In some embodiments, at least a part of coordinate points between the start point and the end point may be determined as coordinate points to be identified. In some embodiments, a coordinate point on a path that is a distance between the start point and the end point may be determined as the coordinate point to be identified. For example, coordinate points within 1 km to 4 km from the start point are determined as coordinate points to be identified. In some embodiments, a coordinate point at the midpoint of the path length from the start point to the end point may be determined as the coordinate point to be identified.
In 630, an included angle of the coordinate point to be identified may be determined based on the coordinate point to be identified. Operation 630 may be performed by to-be-identified coordinate point included angle determination module 430. In some embodiments, the included angle of the coordinate point to be identified may be an included angle formed by the coordinate point to be identified as a vertex and the first coordinate point and the second coordinate point respectively. In some embodiments, the first coordinate point and the second coordinate point may be arbitrary coordinate points on the travel path. In some embodiments, the first coordinate point and the second coordinate point may be respectively located on two sides of the coordinate point to be identified. In some embodiments, an arbitrary coordinate point located on the travel path in a direction close to the start point and not less than the first threshold from the coordinate point to be identified may be determined as the first coordinate point. Wherein the first threshold may be 1 km, 2 km, 3 km, 5 km, 10 km, etc. In some embodiments, the second coordinate point may be a coordinate point located on the travel path in a direction close to the end point and not less than a first threshold from the coordinate point to be identified. Wherein the first threshold may be 1 km, 2 km, 3 km, 5 km, 10 km, etc. In some embodiments, the first coordinate point may be a starting point. In some embodiments, the second coordinate point may be an end point. In some embodiments, the second coordinate point may be a third coordinate point.
At 640, it may be determined whether the included angle of the coordinate point to be currently identified is smaller than a second threshold, and if the included angle of the coordinate point to be currently identified is smaller than the second threshold, the coordinate point to be currently identified is identified as a curve coordinate point, and a path position where the curve coordinate point is located is identified as a curve. Operation 640 may be performed by identification module 440. When the included angle of the curve coordinate point is smaller than the second threshold value, the current road section can be considered as the curve. The driver is required to pay attention to and decelerate in advance in order to drive safely. When greater than the second threshold, the segment may be considered to be approximately a straight road. In some embodiments, the second threshold may be 140 °. In some embodiments, the second threshold may be 135 °. In some embodiments, the second threshold may be 130 °.
It should be noted that the above description is merely for convenience and should not be taken as limiting the scope of the present application. It will be understood by those skilled in the art that, having the benefit of the teachings of this system, various modifications and changes in form and detail may be made to the field of application for which the method and system described above may be practiced without departing from this teachings.
Fig. 7 is an exemplary flowchart illustrating the determination of coordinate points to be identified according to an embodiment of the present invention. In some embodiments, flow 700 may be performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (instructions run on a processing device to perform hardware simulation), etc., or any combination thereof. One or more operations in the process 700 for determining a coordinate point to be identified shown in fig. 7 may be implemented by the road information system 100 shown in fig. 1. For example, flow 700 may be stored in storage device 130 in the form of instructions and executed by processing engine 112 to perform calls and/or execute (e.g., processor 220 of computing device 200 shown in fig. 2, central processor 340 of mobile device 300 shown in fig. 3).
At 710, a third coordinate point may be determined based on the coordinate points. Operation 710 may be performed by the coordinate point to be identified determination module 420. The third coordinate point is an arbitrary coordinate point on the travel path. In some embodiments, the coordinate point to be identified determination module may determine the coordinate point to be identified based on the third coordinate point. In some embodiments, the third coordinate point may satisfy a path length from the start point to the first coordinate point that is greater than a certain ratio of the path length between the start point and the end point. In some embodiments, the ratio may be any value such as one-half, one-third, one-fourth, or two-thirds. In some embodiments, the third coordinate point may satisfy a path length from the start point to the third coordinate point that is greater than one-half of a path length between the start point and the end point. In some embodiments, the coordinate point of half the path length between the start point and the end point may be determined as a path midpoint coordinate point, and at least one coordinate point between the path midpoint coordinate point and the end point may be determined as a third coordinate point. As shown in fig. 5, that is, if a coordinate point corresponding to one-half of the path length between the start point and the end point is M points, the third coordinate point is a coordinate point between the M points to the end point D point. In some embodiments, the path length is an actual length value extending along the travel path between the coordinate points. In some embodiments, the third coordinate point is any coordinate point between the M point and the end point D point. For example, if the M point is a coordinate point numbered n + k, the third coordinate point n + i (k ≦ i ≦ M) is a coordinate point numbered between n + k and n + M.
At 720, the third coordinate point may be traversed. Operation 720 may be performed by the coordinate point to be identified determination module 420.
In 730, the number may be numbered as
Figure BDA0002017892940000191
And determining the corresponding coordinate point as the coordinate point to be identified. Operation 730 may be performed by the coordinate point to be identified determination module 420. In some embodiments, if i/2 is not an integer, an integer number of i/2 may be taken for calculation. For example, if i ═ 7, i/2 takes the value 3; i is 8, i/2 takes the value 4. In some embodiments, as shown in FIG. 5, one-half of the path length between the start point A and the end point D is B14 corresponding to the M point, and the third coordinate point is a coordinate point between B14 and D points, and the B14 and B25 are traversed to obtain a point number of B14 and D points
Figure BDA0002017892940000192
Corresponding coordinate points B7(1+13/2), B8(1+14/2) … B13(1+25/2), B7 to B13 are determined as coordinate points to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000193
Figure BDA0002017892940000194
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000195
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. In some embodiments, the third coordinate point may be traversed, numbering as
Figure BDA0002017892940000196
And determining the coordinate point corresponding to the integer as the coordinate point to be identified. The way in which the coordinate points to be identified are determined in this wayThe distance between the coordinate point to be recognized and the first coordinate point and the distance between the coordinate point to be recognized and the second coordinate point are kept, the three points are prevented from being too close to each other, and the included angle calculation error of the coordinate point to be recognized is large. As mentioned above, on a non-linear path, the distribution of coordinate points is dense, and taking points directly results in a large amount of calculation and a large error. After the points are taken, a certain distance can be ensured among the three points, and the accuracy of curve identification is further improved.
It should be noted that the above description is merely for convenience and should not be taken as limiting the scope of the present application. It will be understood by those skilled in the art that, having the benefit of the teachings of this system, various modifications and changes in form and detail may be made to the field of application for which the method and system described above may be practiced without departing from this teachings.
FIG. 8 is an exemplary flow chart illustrating adjusting a scale according to one embodiment of the present invention. In some embodiments, flow 800 may be performed by processing logic that may comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (instructions run on a processing device to perform hardware simulation), etc., or any combination thereof. One or more operations in the process 800 for adjusting the scale shown in fig. 8 may be implemented by the road information system 100 shown in fig. 1. For example, the flow 800 may be stored in the storage device 130 in the form of instructions and executed by the processing engine 112 to perform the calls and/or perform the operations (e.g., the processor 220 of the computing device 200 shown in fig. 2, the central processor 340 of the mobile device 300 shown in fig. 3).
At 810, determining whether the included angle of the coordinate point to be identified currently is smaller than a second threshold, if the included angle of the coordinate point to be identified currently is smaller than the second threshold, identifying the coordinate point to be identified currently as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve. Operation 810 may be performed by identification module 440. In some embodiments, the second threshold may be an empirically or statistically derived pinch angle value. When less than the second threshold, the current road segment may be considered a curve. The driver is required to pay attention to and decelerate in advance in order to drive safely. When greater than the second threshold, the segment may be considered to be approximately a straight road. In some embodiments, the second threshold may be 140 °. In some embodiments, the second threshold may be 135 °. In some embodiments, the second threshold may be 130 °
At 820, the scale may be adjusted based on a distance between the current position of travel and the curve coordinate point. For example, the scale is enlarged at a current position 200m from the curve coordinate point, and voice-prompted. The scale is further enlarged when the current position is at a distance of 100 from the curve coordinate point, and is enlarged to the maximum when the current position is at a distance of 50 meters from the curve coordinate point. In some embodiments, the adjustment module may adjust the scale based on an included angle value of the curve coordinate point. For example, if the angle value of the curve coordinate point is 130 °, the scale may be enlarged and a voice prompt may be performed. If the angle value of the curve coordinate point is 120, the scale can be further enlarged. If the angle value of the curve coordinate point is 90 deg. or less, the scale may be enlarged to the maximum value. In some embodiments, the adjustment module may scale up to show details of the curve. In some embodiments, the adjustment module may scale down to display an overview of the curve. In some embodiments, the adjustment module may dynamically adjust the scale according to a change in a distance between the current position and the curve coordinate point, or a change in an included angle of the curve coordinate point. In some embodiments, the adjusting module can continuously switch between the scaling-up scale and the scaling-down scale, so as to dynamically adjust the scaling. In some embodiments, the adjustment module may dynamically scale up and scale down at the same time, dynamically adjusting the scale on different display areas. Operation 810 may be performed by the adjustment module.
The beneficial effects that may be brought by the embodiments of the present application include, but are not limited to: (1) the method has the advantages that the curve in the driving process is identified, particularly in mountainous areas in non-urban areas, the map data may not be complete, the curve on the mountain can be accurately identified, the scale is adjusted, and the driving safety is improved; (2) the point mode of getting of waiting to discern coordinate point, first coordinate point and second coordinate point in this application can guarantee to have a certain distance between this three, reduces the calculation error of waiting to discern coordinate point contained angle, especially on non-linear path, when the coordinate point distributes comparatively densely, the calculation volume that the point mode of getting of this application can avoid directly getting the point and lead to is great, can reduce data processing volume, the discernment bend that can be quick accurate. It is to be noted that different embodiments may produce different advantages, and in different embodiments, any one or combination of the above advantages may be produced, or any other advantages may be obtained.
Having thus described the basic concept, it will be apparent to those skilled in the art that the foregoing disclosure is by way of example only, and is not intended to limit the present application. Various modifications, improvements and adaptations to the present application may occur to those skilled in the art, although not explicitly described herein. Such modifications, improvements and adaptations are proposed in the present application and thus fall within the spirit and scope of the exemplary embodiments of the present application.
Also, this application uses specific language to describe embodiments of the application. Reference to "one embodiment," "an embodiment," and/or "some embodiments" means that a particular feature, structure, or characteristic described in connection with at least one embodiment of the application. Therefore, it is emphasized and should be appreciated that two or more references to "an embodiment" or "one embodiment" or "an alternative embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, some features, structures, or characteristics of one or more embodiments of the present application may be combined as appropriate. Additionally, the order in which elements and sequences of the processes are recited in the present application, the use of alphanumeric or other designations, is not intended to limit the order of the processes and methods in the present application, unless otherwise indicated in the claims. While various presently contemplated embodiments of the invention have been discussed in the foregoing disclosure by way of example, it is to be understood that such detail is solely for that purpose and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover all modifications and equivalent arrangements that are within the spirit and scope of the embodiments herein. For example, although the system components described above may be implemented by hardware devices, they may also be implemented by software-only solutions, such as installing the described system on an existing server or mobile device.
Similarly, it should be noted that in the preceding description of embodiments of the application, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the embodiments. This method of disclosure, however, is not intended to require more features than are expressly recited in the claims. Indeed, the embodiments may be characterized as having less than all of the features of a single embodiment disclosed above.
Numerals describing the number of components, attributes, etc. are used in some embodiments, it being understood that such numerals used in the description of the embodiments are modified in some instances by the use of the modifier "about", "approximately" or "substantially", etc. Unless otherwise indicated, "about", "approximately" or "substantially" indicates that the number allows a variation of ± 20%. Accordingly, in some embodiments, the numerical data used in the specification and claims are approximations that may vary depending upon the desired properties of the individual embodiments. In some embodiments, numerical data should take into account the specified significant digits and employ a general digit preservation approach. Notwithstanding that the numerical ranges and data setting forth the broad scope of the range presented in some of the examples are approximations, in specific examples, such numerical values are set forth as precisely as possible within the practical range.
Finally, it should be understood that the embodiments described herein are merely illustrative of the principles of the embodiments of the present application. Other variations are also possible within the scope of the present application. Thus, by way of example, and not limitation, alternative configurations of the embodiments of the present application can be viewed as being consistent with the teachings of the present application. Accordingly, the embodiments of the present application are not limited to only those embodiments explicitly described and depicted herein.

Claims (22)

1. A method of identifying a curve, comprising:
acquiring a driving path; the driving path comprises a starting point, an end point and at least one coordinate point positioned between the starting point and the end point;
determining coordinate points to be identified based on the coordinate points; the coordinate points to be identified are at least one part of the coordinate points;
determining an included angle of the coordinate point to be identified based on the coordinate point to be identified; the included angle of the coordinate point to be identified is an included angle formed by a first coordinate point and a second coordinate point which take the coordinate point to be identified as a vertex, are respectively positioned at two sides of the coordinate point to be identified, and have a distance with the coordinate point to be identified not smaller than a first threshold value; the first coordinate point and the second coordinate point are arbitrary coordinate points on the travel path;
determining whether the included angle of the current coordinate point to be identified is smaller than a second threshold value; and if the included angle of the current coordinate point to be identified is smaller than the second threshold value, identifying the current coordinate point to be identified as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve.
2. The method of claim 1, wherein determining coordinate points to be identified based on the coordinate points comprises:
determining a third coordinate point based on the coordinate points; the third coordinate point is any coordinate point on the driving path;
and determining a coordinate point to be identified based on the third coordinate point.
3. The method of claim 2, wherein determining the third coordinate point based on the coordinate point comprises:
determining the coordinate point of half the path length between the starting point and the end point as a path midpoint coordinate point;
determining at least one coordinate point between the point coordinate point in the path and the end point as a third coordinate point;
wherein the path length is an actual length value extending along the travel path between the coordinate points.
4. The method of claim 3, wherein determining the landmark to be identified based on the third coordinate point comprises:
traversing the third coordinate point;
and determining the coordinate point which is located between the first coordinate point and the third coordinate point and has a distance with the first coordinate point and the third coordinate point not less than a first threshold value as the coordinate point to be identified.
5. The method of claim 3, wherein determining the landmark to be identified based on the third coordinate point further comprises:
acquiring the number of the coordinate point; the coordinate points are numbered in a sequence from small to large starting from the position close to the starting point: n, n +1 … n + i … n + m, 0< i < m;
the third coordinate point has a number n + i, where k < i < m, k being the number of the coordinate point having a path length with the starting point equal to or greater than half of the path length between the starting point and the end point;
the intermediate value of the number of the third coordinate point
Figure FDA0002017892930000021
And determining the corresponding coordinate point as the coordinate point to be identified.
6. The method of claim 5,
the intermediate value of the number of the third coordinate point
Figure FDA0002017892930000022
And determining the corresponding coordinate point after the integer number is taken as the coordinate point to be identified.
7. The method of claim 2,
determining the starting point as the first coordinate point;
determining the third coordinate point as the second coordinate point.
8. The method of claim 1,
the starting point is a coordinate point corresponding to the current position;
the end point is a coordinate point which is located in the front of the driving direction on the driving path and is not less than a third threshold value away from the starting point.
9. The method of claim 1,
the first coordinate point is the starting point;
the second coordinate point is the end point.
10. The method of claim 1,
and adjusting the scale of the driving path based on the distance between the current position and the curve coordinate point or the included angle value of the curve coordinate point, and amplifying or reducing the driving path.
11. A curve identification system, the system comprising:
the acquisition module is used for acquiring a driving path of a moving object; the driving path comprises a starting point, an end point and a plurality of coordinate points positioned between the starting point and the end point;
the coordinate point determination module is used for determining a coordinate point to be identified based on the coordinate point; the coordinate points to be identified are at least one part of the coordinate points;
the coordinate point included angle determination module is used for determining a coordinate point included angle to be identified based on the coordinate point to be identified; the included angle of the coordinate point to be identified is an included angle formed by a first coordinate point and a second coordinate point which take the coordinate point to be identified as a vertex, are respectively positioned at two sides of the coordinate point to be identified, and have a distance with the coordinate point to be identified not smaller than a first threshold value; the first coordinate point and the second coordinate point are arbitrary coordinate points on the travel path;
the identification module is used for determining whether the included angle of the current coordinate point to be identified is smaller than a second threshold value; and if the included angle of the current coordinate point to be identified is smaller than the second threshold value, identifying the current coordinate point to be identified as a curve coordinate point, and identifying the path position where the curve coordinate point is located as a curve.
12. The system of claim 11,
the coordinate point determination module to be identified further comprises a third coordinate point determination unit, wherein the third coordinate point determination unit is used for determining the third coordinate point based on the coordinate point; the third coordinate point is any coordinate point on the driving path;
and the coordinate point determination module to be identified is used for determining the coordinate point to be identified based on the third coordinate point.
13. The system according to claim 12, wherein the third coordinate point determination unit is configured to:
determining the coordinate point of half the path length between the starting point and the end point as a path midpoint coordinate point;
determining at least one coordinate point between the point coordinate point in the path and the end point as a third coordinate point;
wherein the path length is an actual length value extending along the travel path between the coordinate points.
14. The system of claim 13, wherein the coordinate point to be identified determination module is further configured to:
traversing the third coordinate point;
and determining the coordinate point which is located between the first coordinate point and the third coordinate point and has a distance with the first coordinate point and the third coordinate point not less than a first threshold value as the coordinate point to be identified.
15. The system of claim 13,
the acquiring module further comprises a number acquiring unit, and the acquiring unit is used for acquiring the number of the coordinate point; the coordinate points are numbered in a sequence from small to large starting from the position close to the starting point: n, n +1 … n + i … n + m, 0< i < m; the third coordinate point has a number n + i, where k < i < m, k being the number of the coordinate point having a path length with the starting point equal to or greater than half of the path length between the starting point and the end point;
the coordinate point determination module to be identified is also used for determining the intermediate value of the serial number of the third coordinate point
Figure FDA0002017892930000051
And determining the corresponding coordinate point as the coordinate point to be identified.
16. The system of claim 15, wherein the coordinate point to be identified determination module is further configured to:
the intermediate value of the number of the third coordinate point
Figure FDA0002017892930000052
And determining the corresponding coordinate point after the integer number is taken as the coordinate point to be identified.
17. The system according to claim 12, wherein the coordinate point determination module to be identified further comprises a first coordinate point determination unit and a second coordinate point determination unit;
the first coordinate point determination unit is configured to determine the start point as the first coordinate point;
the second coordinate point determination unit is configured to determine the third coordinate point as the second coordinate point.
18. The system of claim 11,
the starting point is a coordinate point corresponding to the current position;
the end point is a coordinate point which is located on the traveling path in front of the traveling direction and is not less than a third threshold value away from the starting point.
19. The system according to claim 11, wherein the coordinate point determination module to be identified further comprises a first coordinate point determination unit and a second coordinate point determination unit;
the first coordinate point determination unit is configured to determine the start point as the first coordinate point;
the second coordinate point determination unit is configured to determine the end point as the second coordinate point.
20. The system of claim 11, further comprising an adjustment module configured to adjust a scale of the travel path, and to enlarge or reduce the travel path based on a distance between a current location and the curve coordinate point or an angle value of the curve coordinate point.
21. A curve identification apparatus, the apparatus comprising a processor and a memory; the memory is configured to store instructions, and the instructions, when executed by the processor, cause the apparatus to implement operations corresponding to the method of any one of claims 1 to 10.
22. A computer-readable storage medium storing computer instructions, wherein when the computer instructions in the storage medium are read by a computer, the computer performs the method of any one of claims 1 to 10.
CN201910269440.XA 2019-04-04 2019-04-04 Method and system for identifying curve Pending CN111780773A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910269440.XA CN111780773A (en) 2019-04-04 2019-04-04 Method and system for identifying curve

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910269440.XA CN111780773A (en) 2019-04-04 2019-04-04 Method and system for identifying curve

Publications (1)

Publication Number Publication Date
CN111780773A true CN111780773A (en) 2020-10-16

Family

ID=72754813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910269440.XA Pending CN111780773A (en) 2019-04-04 2019-04-04 Method and system for identifying curve

Country Status (1)

Country Link
CN (1) CN111780773A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113029165A (en) * 2021-02-24 2021-06-25 腾讯科技(深圳)有限公司 Navigation data processing method and device, electronic equipment and storage medium

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1959347A (en) * 2005-10-31 2007-05-09 爱信艾达株式会社 Route guidance system and method
CN101975577A (en) * 2010-09-20 2011-02-16 北京腾瑞万里科技有限公司 Guided system and turn early alarming processing method and equipment therein
CN105277203A (en) * 2014-06-30 2016-01-27 高德信息技术有限公司 Navigation action generation method, navigation method and device
CN105526944A (en) * 2014-10-22 2016-04-27 腾讯科技(深圳)有限公司 Information prompt method and apparatus thereof in driving process
US20160129912A1 (en) * 2014-11-11 2016-05-12 Ford Global Technologies, Llc Vehicle cornering modes
US20160258764A1 (en) * 2015-03-06 2016-09-08 Here Global B.V. Turn Lane Configuration
CN106705973A (en) * 2016-12-22 2017-05-24 深圳市智汇机器人科技有限公司 Indoor navigation turning calculating method and system
CN107328423A (en) * 2016-04-28 2017-11-07 厦门雅迅网络股份有限公司 Bend recognition methods and its system based on map datum
CN107830865A (en) * 2017-10-16 2018-03-23 东软集团股份有限公司 A kind of vehicle target sorting technique, device, system and computer program product
CN108204818A (en) * 2016-12-19 2018-06-26 北京四维图新科技股份有限公司 Relationship of keeping straight between a kind of road determines method and device and hybrid navigation system
CN109895850A (en) * 2015-09-08 2019-06-18 星克跃尔株式会社 Bend guidance method, bend guiding device, bend guiding electronic device and computer readable recording medium

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1959347A (en) * 2005-10-31 2007-05-09 爱信艾达株式会社 Route guidance system and method
CN101975577A (en) * 2010-09-20 2011-02-16 北京腾瑞万里科技有限公司 Guided system and turn early alarming processing method and equipment therein
CN105277203A (en) * 2014-06-30 2016-01-27 高德信息技术有限公司 Navigation action generation method, navigation method and device
CN105526944A (en) * 2014-10-22 2016-04-27 腾讯科技(深圳)有限公司 Information prompt method and apparatus thereof in driving process
US20160129912A1 (en) * 2014-11-11 2016-05-12 Ford Global Technologies, Llc Vehicle cornering modes
US20160258764A1 (en) * 2015-03-06 2016-09-08 Here Global B.V. Turn Lane Configuration
CN109895850A (en) * 2015-09-08 2019-06-18 星克跃尔株式会社 Bend guidance method, bend guiding device, bend guiding electronic device and computer readable recording medium
CN107328423A (en) * 2016-04-28 2017-11-07 厦门雅迅网络股份有限公司 Bend recognition methods and its system based on map datum
CN108204818A (en) * 2016-12-19 2018-06-26 北京四维图新科技股份有限公司 Relationship of keeping straight between a kind of road determines method and device and hybrid navigation system
CN106705973A (en) * 2016-12-22 2017-05-24 深圳市智汇机器人科技有限公司 Indoor navigation turning calculating method and system
CN107830865A (en) * 2017-10-16 2018-03-23 东软集团股份有限公司 A kind of vehicle target sorting technique, device, system and computer program product

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113029165A (en) * 2021-02-24 2021-06-25 腾讯科技(深圳)有限公司 Navigation data processing method and device, electronic equipment and storage medium
CN113029165B (en) * 2021-02-24 2022-04-22 腾讯科技(深圳)有限公司 Navigation data processing method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
CN109155104B (en) System and method for recommending estimated arrival time
CN109313846B (en) System and method for recommending pick-up points
CN111179577B (en) Method and system for determining boarding place
CN109416878B (en) System and method for recommending estimated time of arrival
CN111179578A (en) Method and system for determining parking place limitation
KR102042403B1 (en) Methods and systems for modifying location information of a request
CN109429520B (en) Method, system, device and readable medium for checking cheating service orders
CN111861618A (en) Boarding point recommendation method and system
JP2016516188A (en) Predicting vehicle travel distance
CN110832478B (en) System and method for on-demand services
US11290547B2 (en) Systems and methods for determining an optimal transportation service type in an online to offline service
US20210035172A1 (en) Systems and methods for transport pricing
CN111859178B (en) Method and system for recommending get-on point
CN111383073A (en) Multi-user co-power method and system
CN112270427A (en) Method and system for recommending boarding points
CN110782051A (en) Method and system for reminding service requester
CN110839346A (en) System and method for distributing service requests
CN111859184A (en) Boarding point recommendation method and system
CN111260092A (en) System and method for predicting object arrival times
CN113763695A (en) Dispatching method and system for automatic driving vehicle
CN111780773A (en) Method and system for identifying curve
CN113139139A (en) Method, apparatus, electronic device, and medium for determining boarding point
CN116088538B (en) Vehicle track information generation method, device, equipment and computer readable medium
US20200149905A1 (en) Systems and methods for reserving a carpooling service
CN111664862B (en) Display scale adjusting method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20201016

RJ01 Rejection of invention patent application after publication