Method and device for generating electronic fence
By clustering and filtering the historical trajectory data of transportation equipment, a cluster of stop points matching the warehouse is generated, which solves the problem of false detection caused by unreasonable coverage of electronic fences in the existing technology and achieves more accurate detection.
Patent Information
- Application Number
- CN202111356108.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-16
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2041-11-16
AI Technical Summary
The coverage of the electronic fence generated in the prior art is unreasonable, resulting in the situation where the transport equipment is mistakenly detected as arriving at or leaving the warehouse when it is traveling on the road near the warehouse but not entering the warehouse.
By obtaining the historical trajectory data of transportation equipment, determining the stop points and clustering them, we can filter out the stop point clusters that match the warehouse and generate electronic fences to accurately cover the areas where transportation equipment often stays.
The generated electronic fence is more in line with the actual operating conditions of the transportation equipment, reducing false detections and improving detection accuracy.
Smart Images

Figure CN116156422B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of computer technology, and in particular to a method and device for generating an electronic fence. Background Art
[0002] With the rapid development of society and the economy, freight and warehousing services have provided strong support for the convenience of people's daily lives. In freight and warehousing services, goods are usually stored in fixed warehouses. Transport equipment loads goods in the warehouses and then delivers the loaded goods to various receiving points one by one. The loaded goods then return to the warehouse for reloading and delivery, and this cycle repeats.
[0003] During the cargo delivery process, it is common to record when each transport arrives at the warehouse for loading and when it leaves the warehouse for delivery. This allows for monitoring of the transport's delivery process. In practice, to determine whether a transport has arrived or left the warehouse, an electronic fence is set up for each warehouse. The Global Positioning System (GPS) installed on the transport collects the transport's location data in real time. Automatic detection of the transport's arrival and departure is then implemented based on whether the transport's location data falls within the geographic area covered by the warehouse's corresponding electronic fence.
[0004] When generating the geo-fence for each warehouse, a circle is drawn with the coordinates of the preset marker corresponding to the warehouse as the center and a given preset radius. The resulting circle's coverage is the geographic area covered by the geo-fence. However, the geo-fence created in this way may include areas outside the warehouse, such as roads near the warehouse. This can result in transport equipment traveling on roads near the warehouse but not entering the warehouse being mistakenly detected as having arrived at or left the warehouse.
[0005] Therefore, in the prior art, there is a problem in which the coverage of the electronic fence generated for the warehouse is unreasonable, which leads to the problem of false detection of the arrival or departure of the transport equipment. Summary of the Invention
[0006] This specification provides a method and device for generating an electronic fence to partially solve the above-mentioned problems existing in the prior art.
[0007] This manual adopts the following technical solutions:
[0008] This manual provides a method for generating an electronic fence, including:
[0009] Obtain historical trajectory data of transportation equipment when performing transportation operations;
[0010] Determining, from the historical trajectory data, corresponding stopover points of the transport equipment when performing transport operations in the past;
[0011] Clustering the stay points to obtain stay point clusters;
[0012] According to the location information corresponding to the warehouse, a stay point cluster matching the warehouse is screened out from the stay point clusters as a target stay point cluster, and an electronic fence for the warehouse is generated based on the target stay point cluster.
[0013] Optionally, clustering the stay points to obtain stay point clusters specifically includes:
[0014] Selecting each designated stop point from the stop points;
[0015] For each designated stay point, determine whether the coverage area corresponding to the designated stay point contains at least one stay point that meets a preset condition, wherein, for each stay point within the coverage area corresponding to the designated stay point, if the number of stay points included in the set neighborhood of the stay point is not less than a set number, determine that the stay point meets the preset condition;
[0016] If so, adjusting the coverage range corresponding to the designated stay point according to the set neighborhood range of at least one stay point that meets the preset conditions, and determining whether the adjusted coverage range corresponding to the designated stay point contains at least one stay point that meets the preset conditions, until the coverage range corresponding to the designated stay point cannot be adjusted;
[0017] According to the coverage range corresponding to each designated stay point after adjustment, each stay point cluster is obtained.
[0018] Optionally, selecting designated stay points from the stay points specifically includes:
[0019] For each stay point, if it is determined that the number of stay points included in the set neighborhood range of the stay point is not less than the set number, the stay point is used as a designated stay point.
[0020] Optionally, selecting designated stay points from the stay points specifically includes:
[0021] For each stay point, if the distance between the stay point and the center point corresponding to the warehouse determined based on the location information of the warehouse is less than the set distance, the stay point is used as a designated stay point.
[0022] Optionally, based on the location information corresponding to the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster, specifically including:
[0023] For each stay point cluster, determine the center point corresponding to the stay point cluster based on the location information of each stay point included in the stay point cluster, and determine the center point corresponding to the warehouse based on the location information of the warehouse;
[0024] Determine the distance between the center point corresponding to the stay point cluster and the center point corresponding to the warehouse as the distance between the stay point cluster and the warehouse;
[0025] According to the distances between the stay point clusters and the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster.
[0026] Optionally, generating an electronic fence for the warehouse according to the target stay point cluster specifically includes:
[0027] Determining the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster;
[0028] Determine a minimum circumscribed polygon that includes the geographic area corresponding to the target stay point cluster;
[0029] An electronic fence for the warehouse is generated according to the minimum circumscribed polygon.
[0030] Optionally, generating an electronic fence for the warehouse according to the target stay point cluster specifically includes:
[0031] Determining the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster;
[0032] Determining, in a preset electronic map, an area that includes a geographical area corresponding to the target stay point cluster but does not cover roads surrounding the target stay point cluster as a target area;
[0033] An electronic fence for the warehouse is generated according to the target area.
[0034] This specification provides a device for generating an electronic fence, including:
[0035] A data acquisition module is used to obtain historical trajectory data of transportation equipment when performing transportation business in the past;
[0036] a stop point determination module, configured to determine, from the historical trajectory data, each stop point corresponding to when the transport equipment historically performed transport operations;
[0037] A clustering module, configured to cluster the stay points to obtain stay point clusters;
[0038] The electronic fence generation module is used to screen out a stay point cluster matching the warehouse from the stay point clusters according to the location information corresponding to the warehouse as a target stay point cluster, and generate an electronic fence for the warehouse according to the target stay point cluster.
[0039] This specification provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above-mentioned method for generating an electronic fence is implemented.
[0040] This specification provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the above-mentioned method for generating an electronic fence is implemented.
[0041] At least one of the above technical solutions adopted in this specification can achieve the following beneficial effects:
[0042] In the method for generating an electronic fence provided in this specification, historical trajectory data of transportation equipment when performing transportation business in the past is obtained, and then, from the historical trajectory data, the corresponding stop points when the transportation equipment performed transportation business in the past are determined, and then the stop points are clustered to obtain stop point clusters. Then, based on the location information corresponding to the warehouse, the stop point cluster that matches the warehouse is screened out from the stop point clusters as the target stop point cluster, and based on the target stop point cluster, an electronic fence for the warehouse is generated.
[0043] It can be seen from the above method that the electronic fence generated by this method is determined based on the stop points where the position of the transport equipment has not changed as actually monitored during the execution of the transport business. Compared with the electronic fence formed by simply drawing a circle based on the set marking points and the set radius, such an electronic fence is more in line with the actual operating conditions of the transport equipment, and the range of the determined electronic fence is also more accurate. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] The drawings described herein are used to provide a further understanding of this specification and constitute a part of this specification. The exemplary embodiments and descriptions of this specification are used to explain this specification and do not constitute an improper limitation of this specification. In the drawings:
[0045] Figure 1 This is a flowchart of a method for generating an electronic fence in this specification;
[0046] Figures 2A-2B A schematic diagram of clustering stay points provided for this specification;
[0047] Figure 3 A detailed flowchart of the method for generating an electronic fence provided in this manual;
[0048] Figure 4 This is a schematic diagram of a device for generating an electronic fence provided in this specification;
[0049] Figure 5 The corresponding Figure 1 Schematic diagram of electronic equipment. DETAILED DESCRIPTION
[0050] To make the objectives, technical solutions, and advantages of this specification more clear, the following will clearly and completely describe the technical solutions of this specification in conjunction with the specific embodiments of this specification and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this specification, not all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this specification.
[0051] The electronic fence generation solution provided in this specification will be described in detail below with reference to embodiments.
[0052] Figure 1 This is a flow chart of a method for generating an electronic fence in this specification, which specifically includes the following steps:
[0053] Step S100: Acquire historical trajectory data of transportation equipment when performing transportation services in the past.
[0054] In actual operations, when transport equipment is performing transportation operations, the GPS device installed on the transport equipment will collect and save the location information of the transport equipment in real time, obtaining the historical trajectory data of the transport equipment. In this way, the server can analyze the historical trajectory data of the transport equipment to determine when, where, and for how long the transport equipment stayed. When the transport equipment arrives at the warehouse for loading and unloading goods, the transport equipment will stay in the warehouse for a long time to load the goods. Therefore, in theory, the density of the transportation equipment's stop points in the warehouse should be significantly higher than other areas. In this way, the server can more accurately infer the area of the warehouse where the transportation equipment often stops based on the distribution of the stop points where the transportation equipment has stayed for a long time in history. Then, based on the actual stop situation of the transportation equipment, the server can flexibly frame the electronic fence corresponding to each warehouse.
[0055] Specifically, this specification provides a scheme for generating an electronic fence in which the server is based on the historical trajectory data of the transport equipment when it performs transportation business in the past, and the corresponding stop points when the transport equipment performs transportation business in the past, and then clusters these stop points to determine multiple stop point clusters where the transport equipment has relatively dense stop points in the past, and then, based on the location information corresponding to the warehouse, selects the stop point cluster that matches the warehouse from these stop point clusters as the target stop point cluster, and finally, generates an electronic fence for the warehouse based on the target stop point cluster. In this way, since the electronic fence is generated based on the target stop point cluster near the warehouse, the electronic fence finally generated can accurately cover the stop area where the transport equipment often stops in the warehouse, thereby reducing the situation where the transport equipment traveling on the road near the warehouse but not entering the warehouse is mistakenly detected as having executed an arrival or departure from the warehouse.
[0056] Among them, the above-mentioned historical trajectory data can be the positioning data collected for the transportation equipment within a certain time period in history (for example, within a day, within a week, within a month, etc.) (including the location information of the transportation equipment (including longitude and latitude), and the collection time corresponding to the location information). The transportation equipment can be one transportation equipment (in this case, the historical trajectory data can only include the positioning data of the transportation equipment and the collection time of the positioning data), or it can be multiple transportation equipment (in this case, the historical trajectory data not only needs to include the positioning data of the transportation equipment and the collection time of the positioning data, but also needs to record which transportation equipment the positioning data is collected for, that is, the identification information of the transportation equipment corresponding to the positioning data). When the number of transportation equipment is relatively small, the length of the time period corresponding to the historical trajectory data should be appropriately increased. Among them, the identification information of the transportation equipment can be the internal operation number of the transportation equipment (for example, transportation equipment No. 1, transportation equipment No. 2, etc.), or it can be the registered number of the transportation equipment (for example, when the transportation equipment is a truck, the identification information of the transportation equipment can be the license plate number).
[0057] The execution subject of the method for generating an electronic fence involved in this specification can be either the server that maintains the electronic fence or a terminal device such as a desktop computer or a laptop computer. For ease of description, this specification will only use the server as an example.
[0058] Step S102: determining, from the historical trajectory data, corresponding stopover points of the transportation equipment when performing transportation services in the past.
[0059] In the specific implementation, the server will search for the location information in the historical trajectory data corresponding to each transportation equipment, find the trajectory point whose position has not changed, and then further determine the length of time the transportation equipment stays at the position corresponding to the trajectory point. When it is determined that the stay time is greater than the set time, the trajectory point is used as a stay point corresponding to the transportation equipment, and then obtain the corresponding stay points when the transportation equipment performed transportation business in history.
[0060] Step S104: clustering the stay points to obtain stay point clusters.
[0061] In a specific implementation, after obtaining each stay point, the server first selects each designated stay point from each stay point, and then, for each designated stay point, determines whether the coverage range corresponding to the designated stay point contains at least one stay point that meets the preset conditions. If so, the coverage range corresponding to the designated stay point is adjusted according to the set neighborhood range of at least one stay point that meets the preset conditions, and determines whether the coverage range corresponding to the adjusted designated stay point contains at least one stay point that meets the preset conditions, until the coverage range corresponding to the designated stay point cannot be adjusted. Finally, each stay point cluster is obtained according to the coverage range corresponding to each adjusted designated stay point.
[0062] When clustering each designated stay point, the server may determine whether the coverage area corresponding to the designated stay point contains any stay points that meet the preset conditions using the following method. Specifically, for each stay point within the coverage area corresponding to the designated stay point, the server determines that the stay point meets the preset conditions if the number of stay points within the set neighborhood of the stay point is not less than a set number.
[0063] The following will explain in detail how to cluster each stay point with the help of diagrams. Figures 2A-2B .
[0064] Figure 2A The stop point A is a designated stop point selected by the server. The coverage area of the designated stop point is the area covered by a circle with the stop point A as the center and the set neighborhood radius (which can be called the neighborhood of stop point A).
[0065] Then, the server draws a circle with a set radius for stay point B in the neighborhood of stay point A to obtain the neighborhood of stay point B (a circle with stay point B as the center and determined according to the set neighborhood radius). Then, based on the number of stay points contained in the neighborhood of stay point B, the server determines whether stay point B meets the preset conditions.
[0066] If the stay point B meets the preset conditions, the coverage area corresponding to the stay point A will be adjusted from the original coverage area of the neighborhood of the stay point A to Figure 2B The coverage area of the stay point A is the union of the coverage area of the stay point A’s neighborhood and the coverage area of the stay point B’s neighborhood. If the stay point B does not meet the preset conditions, the coverage area of the stay point A is still the coverage area of the original stay point A’s neighborhood.
[0067] In this way, the above method is used to process each of the stay points within the coverage area corresponding to stay point A, and the coverage area of the neighborhood of stay point A is adjusted. The above operation is repeated until the points closest to stay point A are determined, and the coverage area of the neighborhood corresponding to stay point A cannot be adjusted. These points are the boundary points of the stay point cluster containing stay point A, and the stay point cluster containing stay point A is obtained. Based on this, the server will be able to find the stay point cluster containing each specified stay point.
[0068] In this specification, when the server clusters the stay points, it clusters the stay points based on the pre-selected designated stay points.
[0069] In practical applications, the server can select designated stay points from the various stay points using various methods. For example, for each stay point, if the server determines that the number of stay points within a predetermined neighborhood of the stay point is at least a predetermined number, the server can designate the stay point as the designated stay point. Selecting designated stay points in this manner can result in duplicate stay point clusters within the resulting stay point clusters. Therefore, after determining the stay point cluster corresponding to each designated stay point, the server can compare the coordinates of each stay point within the stay point cluster to filter out duplicate stay point clusters, ensuring that the resulting stay point clusters do not overlap.
[0070] For another example, the server can also designate each stopover point as a designated stopover point if the distance between the stopover point and the center point of the warehouse determined based on the warehouse's location information is less than a set distance. This allows the server to cluster only the stopover points near the warehouse, significantly reducing the server's computational workload and conserving computing resources.
[0071] Step S106 , based on the location information corresponding to the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster, and an electronic fence for the warehouse is generated based on the target stay point cluster.
[0072] When determining the target stay point cluster, the server first determines the center point of each stay point cluster based on the location information of each stay point contained in the cluster. It also determines the center point of the warehouse based on the warehouse's location information. The server then determines the distance between the center point of the stay point cluster and the center point of the warehouse as the distance between the stay point cluster and the warehouse. Based on the distances between each stay point cluster and the warehouse, the server selects the stay point cluster that matches the warehouse from the cluster as the target stay point cluster.
[0073] In this way, the server can select, for each warehouse, the stay point clusters near the warehouse whose distance from the warehouse is less than a set distance threshold based on the distance between each stay point cluster and the warehouse, as target stay point clusters matching the warehouse. Since these target stay point clusters are all located near the warehouse, they are more likely to be stay points collected by transportation equipment when loading cargo in the warehouse.
[0074] In practical applications, when determining the center point corresponding to each stay point cluster, the server can determine the geographic area defined by each stay point in the cluster based on the location information of each stay point in the cluster. The server can then determine the center point of this geographic area as the center point of the cluster. Alternatively, the server can average the longitude and latitude values in the location information of each stay point in the cluster, and use the point determined by the average of the longitude and latitude values as the center point of the cluster.
[0075] Alternatively, when the server determines the center point of a warehouse, the center point can be the coordinates of a marker set for the warehouse when manually defining the geo-fence. Of course, if the warehouse location information available to the server is the geographic area of the geo-fence corresponding to the warehouse, the server can determine the center point of the geographic area based on the geographic area of the geo-fence corresponding to the warehouse, and use that as the center point of the warehouse.
[0076] In this way, the server can determine the distance between each stay point cluster and each warehouse based on the location information of the center point corresponding to each stay point cluster and the location information of the center point corresponding to the warehouse, and based on the distance between each stay point cluster and the warehouse and the set distance threshold, screen out the target stay point cluster that matches the warehouse for each warehouse.
[0077] In a specific implementation, after determining the target stay point cluster corresponding to each warehouse, the server will continue to generate an electronic fence for each warehouse according to the target stay point cluster corresponding to the warehouse.
[0078] The server may generate an electronic fence for the warehouse according to the target stay point cluster corresponding to the warehouse in a variety of ways.
[0079] For example, for each warehouse, the server can determine the geographic area defined by each of the target stay point clusters, using this as the geographic area corresponding to the target stay point cluster. The server can then determine the minimum circumscribed polygon that encompasses the geographic area corresponding to the target stay point cluster corresponding to the warehouse, and finally, generate an electronic fence for the warehouse based on this minimum circumscribed polygon. Of course, in actual implementation, after determining the geographic area corresponding to each of the target stay point clusters for each warehouse, the server can also determine the minimum circumscribed circle that encompasses the geographic area corresponding to the target stay point cluster corresponding to the warehouse, and then generate an electronic fence for the warehouse based on this minimum circumscribed circle.
[0080] For another example, for each warehouse, the server can determine the geographic area defined by each stop point included in the target stop point cluster, using this as the geographic area corresponding to the target stop point cluster. The server can then identify an area within a pre-set electronic map that includes the geographic area corresponding to the target stop point cluster but does not cover the roads surrounding the target stop point cluster, using this area as the target area. Finally, based on the target area, the server generates an electronic fence for the warehouse. This ensures that the resulting electronic fence does not include roads near the warehouse, preventing transport vehicles from being mistakenly detected as arriving or departing from the warehouse even if they are traveling on roads near the warehouse.
[0081] In practical applications, in order to make the electronic fence generated for the warehouse more accurate, the above two methods of generating the electronic fence can be combined.
[0082] The electronic fence generated by the above method is determined based on the actual stop points monitored by the transportation equipment during the execution of transportation operations. Compared with the electronic fence formed by simply drawing a circle based on the set marking points and the set radius, such an electronic fence is more in line with the actual operating conditions of the transportation equipment, and the range of the determined electronic fence is also more accurate.
[0083] The following is a detailed flow chart of the execution of the method for generating an electronic fence provided in this manual. Figure 3 .
[0084] Step S300: The server obtains historical trajectory data of the transportation equipment when performing transportation services in the past.
[0085] In step S302 , the server determines, from the historical trajectory data, corresponding stopover points of the transportation equipment when performing transportation services in the past.
[0086] In step S304, the server selects designated stay points from the stay points.
[0087] In step S306 , the server determines, for each designated stay point, whether the coverage area corresponding to the designated stay point contains at least one stay point that meets a preset condition. If so, step S308 is executed; otherwise, step S312 is executed.
[0088] Step S308: The server adjusts the coverage range corresponding to the designated stay point according to the set neighborhood range of at least one stay point that meets the preset conditions.
[0089] In step S310 , the server determines whether the coverage area corresponding to the adjusted designated stay point includes at least one stay point that meets a preset condition. If so, step S308 is executed; otherwise, step S312 is executed.
[0090] Step S312: The server determines that the coverage area corresponding to the designated stay point cannot be adjusted.
[0091] In step S314, the server obtains each stay point cluster according to the adjusted coverage range corresponding to each designated stay point.
[0092] In step S316 , the server determines, for each stay point cluster, a center point corresponding to the stay point cluster according to the location information of each stay point included in the stay point cluster.
[0093] In step S318, the server determines the center point corresponding to each warehouse based on the location information of the warehouse, and determines the distance between the center point corresponding to each stay point cluster and the center point corresponding to the warehouse as the distance between the stay point cluster and the warehouse.
[0094] In step S320 , the server selects a stay point cluster that matches the warehouse from the stay point clusters according to the distances between the stay point clusters and the warehouse as a target stay point cluster.
[0095] In step S322, the server determines the geographical area defined by each stay point included in each target stay point cluster of the warehouse as the geographical area corresponding to the target stay point cluster, and determines the minimum circumscribed polygon containing the geographical area corresponding to each target stay point cluster.
[0096] In step S324 , the server generates an electronic fence for the warehouse based on the minimum circumscribed polygon.
[0097] The above is a method for generating an electronic fence provided in one or more embodiments of this specification. Based on the same idea, this specification also provides a corresponding electronic fence generation device, such as Figure 4 shown.
[0098] Figure 4 This is a schematic diagram of a device for generating an electronic fence provided in this manual, specifically including:
[0099] The data acquisition module 400 is used to acquire historical trajectory data of the transportation equipment when performing transportation business in the past;
[0100] A stop point determination module 401 is configured to determine, from the historical trajectory data, the stop points corresponding to the transportation equipment when performing transportation operations in the past;
[0101] A clustering module 402 is used to cluster the stay points to obtain stay point clusters;
[0102] The electronic fence generation module 403 is used to filter out a stay point cluster matching the warehouse from the stay point clusters according to the location information corresponding to the warehouse as a target stay point cluster, and generate an electronic fence for the warehouse according to the target stay point cluster.
[0103] Optionally, the clustering module 402 is specifically used to select each designated stay point from the various stay points; for each designated stay point, determine whether the coverage range corresponding to the designated stay point contains at least one stay point that meets the preset conditions, wherein, for each stay point located within the coverage range corresponding to the designated stay point, if the number of stay points included in the set neighborhood range of the stay point is not less than the set number, determine that the stay point meets the preset conditions; if so, adjust the coverage range corresponding to the designated stay point according to the set neighborhood range of at least one stay point that meets the preset conditions, and determine whether the adjusted coverage range corresponding to the designated stay point contains at least one stay point that meets the preset conditions, until the coverage range corresponding to the designated stay point cannot be adjusted; obtain each stay point cluster according to the adjusted coverage range corresponding to each designated stay point.
[0104] Optionally, the clustering module 402 is specifically configured to, for each stay point, if it is determined that the number of stay points within a set neighborhood range of the stay point is not less than a set number, use the stay point as a designated stay point.
[0105] Optionally, the clustering module 402 is specifically configured to, for each stay point, determine that if the distance between the stay point and the center point corresponding to the warehouse determined based on the location information of the warehouse is less than a set distance, use the stay point as a designated stay point.
[0106] Optionally, the electronic fence generation module 403 is specifically used to determine, for each stay point cluster, the center point corresponding to the stay point cluster based on the location information of each stay point contained in the stay point cluster, and determine the center point corresponding to the warehouse based on the location information of the warehouse; determine the distance between the center point corresponding to the stay point cluster and the center point corresponding to the warehouse as the distance between the stay point cluster and the warehouse; and screen out, from the stay point clusters, a stay point cluster that matches the warehouse as the target stay point cluster based on the distance between the stay point clusters and the warehouse.
[0107] Optionally, the electronic fence generation module 403 is specifically used to determine the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster; determine the minimum circumscribed polygon containing the geographical area range corresponding to the target stay point cluster; and generate an electronic fence for the warehouse based on the minimum circumscribed polygon.
[0108] Optionally, the electronic fence generation module 403 is specifically used to determine the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster; determine in a preset electronic map an area that includes the geographical area range corresponding to the target stay point cluster but does not cover the roads around the target stay point cluster as the target area; and generate an electronic fence for the warehouse based on the target area.
[0109] This specification also provides a computer-readable storage medium, which stores a computer program that can be used to execute the above Figure 1 Provides a method for generating an electronic fence.
[0110] This manual also provides Figure 5 The schematic structure diagram of the electronic device shown in FIG. Figure 5 As mentioned above, at the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory and a non-volatile memory, and may also include other hardware required for the business. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to achieve the above Figure 1 Of course, in addition to software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0111] In the 1990s, technological improvements could be clearly distinguished as either hardware improvements (for example, improvements to circuit structures like diodes, transistors, and switches) or software improvements (improvements to process flows). However, with the advancement of technology, many process flow improvements today can now be considered direct improvements to hardware circuit structures. Designers almost always create the corresponding hardware circuit structure by programming the improved process flow into the hardware circuit. Therefore, it cannot be said that a process flow improvement cannot be implemented using hardware modules. For example, a programmable logic device (PLD), such as a field programmable gate array (FPGA), is an integrated circuit whose logical function is determined by user programming. Designers can "integrate" a digital system on a PLD through their own programming, without having to hire a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly done using "logic compiler" software. This is similar to the software compiler used when developing programs. Before compilation, the original code must also be written in a specific programming language, called a hardware description language (HDL). There is not just one HDL, but many, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art will also understand that by simply programming the method flow in one of these hardware description languages and then programming it into an integrated circuit, a hardware circuit that implements the logic method flow can be easily obtained.
[0112] The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also know that in addition to implementing the controller in a purely computer-readable program code format, the controller can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the devices for implementing various functions can be considered as both software modules that implement the method and structures within the hardware component.
[0113] The systems, devices, modules, or units described in the above embodiments may be implemented by computer chips or entities, or by products having certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0114] For the convenience of description, the above devices are described as being divided into various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0115] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0116] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0117] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0118] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0119] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
[0120] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
[0121] Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media (transitory media), such as modulated data signals and carrier waves.
[0122] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.
[0123] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Thus, this specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0124] This specification may be described in the general context of computer-executable instructions, such as program modules, executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media, including storage devices.
[0125] The various embodiments in this specification are described in a progressive manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system embodiments are generally similar to the method embodiments, so the description is relatively simple. For relevant parts, refer to the description of the method embodiments.
[0126] The foregoing is merely an example of the present invention and is not intended to limit the present invention. Various modifications and variations are possible within the scope of the present invention. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be included within the scope of the claims of the present invention.
Claims
1. A method for generating an electronic fence, characterized in that: include: Obtain historical trajectory data of transportation equipment when performing transportation operations; Determining, from the historical trajectory data, corresponding stopover points of the transport equipment when performing transport operations in the past; Clustering the stay points to obtain stay point clusters; According to the location information corresponding to the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster, and an electronic fence for the warehouse is generated based on the target stay point cluster; Clustering the stay points to obtain stay point clusters, specifically including: Selecting each designated stop point from the stop points; For each designated stay point, determine whether the coverage area corresponding to the designated stay point contains at least one stay point that meets a preset condition, wherein, for each stay point within the coverage area corresponding to the designated stay point, if the number of stay points included in the set neighborhood of the stay point is not less than a set number, determine that the stay point meets the preset condition; If so, adjusting the coverage range corresponding to the designated stay point according to the set neighborhood range of at least one stay point that meets the preset conditions, and determining whether the adjusted coverage range corresponding to the designated stay point contains at least one stay point that meets the preset conditions, until the coverage range corresponding to the designated stay point cannot be adjusted; According to the coverage range corresponding to each designated stay point after adjustment, each stay point cluster is obtained.
2. The method according to claim 1, wherein Selecting designated stay points from the stay points specifically includes: For each stay point, if it is determined that the number of stay points included in the set neighborhood range of the stay point is not less than the set number, the stay point is used as a designated stay point.
3. The method according to claim 1, wherein Selecting designated stay points from the stay points specifically includes: For each stay point, if the distance between the stay point and the center point corresponding to the warehouse determined based on the location information of the warehouse is less than the set distance, the stay point is used as a designated stay point.
4. The method according to claim 1, wherein According to the location information corresponding to the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster, specifically including: For each stay point cluster, determine the center point corresponding to the stay point cluster based on the location information of each stay point included in the stay point cluster, and determine the center point corresponding to the warehouse based on the location information of the warehouse; Determine the distance between the center point corresponding to the stay point cluster and the center point corresponding to the warehouse as the distance between the stay point cluster and the warehouse; According to the distances between the stay point clusters and the warehouse, a stay point cluster matching the warehouse is selected from the stay point clusters as a target stay point cluster.
5. The method according to claim 1, wherein Generating an electronic fence for the warehouse based on the target stay point cluster specifically includes: Determining the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster; Determine a minimum circumscribed polygon that includes the geographic area corresponding to the target stay point cluster; An electronic fence for the warehouse is generated according to the minimum circumscribed polygon.
6. The method according to claim 1 or 5, wherein: Generating an electronic fence for the warehouse based on the target stay point cluster specifically includes: Determining the geographical area range defined by each stay point included in the target stay point cluster as the geographical area range corresponding to the target stay point cluster; Determining, in a preset electronic map, an area that includes a geographical area corresponding to the target stay point cluster but does not cover roads surrounding the target stay point cluster as a target area; An electronic fence for the warehouse is generated according to the target area.
7. A computer-readable storage medium, characterized in that The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Semantic mining method and device for vehicle stop points, storage medium and terminal
CN113268678A