Detailed Description
First, elements related to the present application will be described.
The planar occupancy grid map (FOGM) is based on the assumption that a detection area is a plane, the planar detection area is divided into a plurality of grids, the probability of each grid occupied by an obstacle is determined according to detection data of a detector (such as a radar and a camera) on the surrounding environment, and the probability of each grid occupied by the obstacle is reflected to the corresponding grid in the detection area, so that the planar occupancy grid map is obtained. A schematic diagram of a planar occupancy grid map may be as shown in fig. 1, the darker the color filling in the grid, the greater the probability that the grid is occupied.
The method includes the steps that a curved surface occupation grid map (COGM) means that a curved surface detection area is divided into a plurality of grids, the probability that each grid is occupied by an obstacle is determined according to detection data of a detector on the surrounding environment, the probability that each grid is occupied by the obstacle is reflected to the corresponding grid in the curved surface detection area, and the curved surface occupation grid map is obtained.
For a better understanding of the present application, the problems that exist at present are explained below.
Fig. 2 to 7 are schematic diagrams of several scenes for acquiring a grid map occupied by a road surface, referring to fig. 2 to 7, where a vehicle in fig. 2 to 7 is mounted with a detector, a road in fig. 2 is a planar road, a road in fig. 3 is a curved road with an uphill slope, a road in fig. 4 is a curved road with a downhill slope, a road in fig. 5 is an uneven curved road, a suspension is arranged above the road in fig. 6, and a road in fig. 7 is a road with a bridge opening and a tunnel.
At present, no matter in which scene, a road is assumed as a planar road, a planar road is fitted based on ground point cloud acquired by a detector, a travelable area is determined from the planar road according to the view field range of the detector, the travelable area is divided into a plurality of grids, the probability of each grid occupied by an obstacle is determined according to the obstacle point cloud acquired by the detector, and the probability of each grid occupied by the obstacle is reflected to the corresponding grid in the travelable area, so that a planar occupied grid map is obtained.
It can be understood that, in the current method for obtaining the plane occupancy grid map, in the scenarios shown in fig. 3 to 5, since the actual road surface is not a plane, the plane occupancy grid map obtained by fitting the road surface to the plane road is not accurate. Further, in the scenario shown in fig. 3, there may be a case where an uphill road is erroneously determined as an obstacle, in the scenario shown in fig. 4, a downhill road is erroneously determined as a plane area where traveling is freely possible, in the scenario shown in fig. 5, there may be a case where an uphill road is erroneously determined as an obstacle, and in the case where a downhill road is erroneously determined as a plane area where traveling is freely possible. In the scenario shown in fig. 6 and 7, a suspended object may be erroneously determined as an obstacle, and in the scenario shown in fig. 7, a bridge opening or a roof of a tunnel may be erroneously determined as an obstacle. That is, in the current method for obtaining the plane occupancy grid map, the obtained plane occupancy grid map is not accurate enough because the road surface is assumed to be a plane road surface, and/or all the obstacle point cloud data are used in determining the probability that each grid is occupied by the obstacle.
In order to solve the technical problem, the curved surface road surface is fitted based on the actual characteristics of the ground, so that the accuracy of the obtained grid-occupied map can be improved.
The method for generating the grid-occupied map of the present application will be described below with reference to specific examples.
Fig. 8 is a diagram illustrating a method for generating an occupancy grid map according to an embodiment of the present invention. The execution subject of the present embodiment may be a generation apparatus of a grid-occupied map, and referring to fig. 8, the method of the present embodiment includes:
step S801, acquiring a point cloud of a surrounding environment acquired by a point cloud sensor.
The point cloud sensor of this embodiment may be a time of flight (TOF) sensor, or a radar or a camera. The radar may be a lidar, which may be a rotary lidar or a solid state lidar. The point cloud sensor can be carried on the mobile platform to acquire the point cloud of the surrounding environment of the mobile platform. The mobile platform may be a vehicle, such as an autonomous vehicle or the like.
The generation device of the occupancy grid map in this embodiment may be all or part of the point cloud sensor, may also be all or part of a mobile platform on which the point cloud sensor is mounted, and may also be all or part of a server or a terminal device which has a communication connection relationship with the point cloud sensor or the mobile platform.
Step S802, obtaining an obstacle point cloud and a ground point cloud from the point cloud of the surrounding environment.
It can be understood that the point cloud of the surrounding environment includes an obstacle point cloud and a ground point cloud, the ground point cloud may be extracted from the point cloud of the surrounding environment, and the remaining point cloud is the obstacle point cloud.
Optionally, a ground point cloud fast segmentation algorithm may be adopted to extract the ground point cloud from the point cloud of the surrounding environment.
That is to say, the method of the present embodiment can accurately extract the ground point cloud from the point cloud of the surrounding environment, for example, in the scene shown in fig. 3, the method of the present embodiment does not misjudge the point cloud corresponding to the ascending slope as the obstacle point cloud.
And S803, fitting a curved surface driving road surface according to the ground point cloud and the characteristics of the ground, wherein the ground is the ground of the road where the mobile platform is located, and the point cloud sensor is carried on the mobile platform.
After the ground point cloud is obtained, the curved surface driving road surface can be fitted according to the ground point cloud.
In one specific implementation, the fitted curved driving road surface comprises the following a 1-a 4 according to the ground point cloud and the characteristics of the ground surface:
and a1, acquiring the center line of the road where the ground is located.
It can be understood that the road of the present embodiment is a road on which the mobile platform carrying the point cloud sensor is driven, wherein the center line of the road on which the ground is located may indicate the feature of the ground.
In a specific implementation, according to the boundary in the road width direction, the range of the center line may be calculated, and then an equation of the center line of the road on which the ground is located may be obtained, where the equation is used to indicate the center line of the road on which the ground is located. The center line of the road where the ground is located is parallel to the extending direction of the road.
Illustratively, referring to fig. 9, 901 shown in fig. 9 is the centerline of the road on which the ground is located.
a2, acquiring a first point in the ground point cloud, wherein the vertical distance between the first point and the center line is less than or equal to a preset distance.
For example, the equation of the center line of the road on which the mobile platform on which the point cloud sensor is located runs is a1xi+b1yjAnd if the distance is 0, calculating the vertical distance between each point in the ground point clouds and the central line according to the equation, wherein the point in the ground point clouds, the vertical distance between which and the central line is less than or equal to a preset distance, is the first point. It is understood that the number of the first points is plural.
Optionally, obtaining a first point in the ground point cloud, where a vertical distance from the center line is less than or equal to a preset distance, includes: and filtering the ground point cloud to obtain the filtered ground point cloud, and determining a point in the filtered ground point cloud, which has a vertical distance with the central line smaller than or equal to a preset distance, as a first point.
and a3, fitting each first point by adopting polynomial curve interpolation to obtain a road center fitting curve.
And after a plurality of first points are obtained, fitting each first point by adopting polynomial curve interpolation to obtain a road center fitting curve. The polynomial curve interpolation may be an L-term curve interpolation, where L is an integer greater than or equal to 2, for example, L is 2, 3, 4, 5, or 6.
and a4, fitting a curve according to the road center to obtain a curved surface running road surface, wherein the road center fitting curve is the center line of the curved surface running road surface.
According to the forming principle of a straight line surface, a line segment with the same width as the road width moves along a center fitting curve to form a straight line surface, namely a curved driving road surface.
Specifically, a first end of a road center fitting curve of the aisle, a first line segment with a width being the width of a road on which a mobile platform where the point cloud sensor is located runs and being perpendicular to the extending direction of the road can be obtained, the first line segment is moved from the first end of the road center fitting curve to a second end of the road center fitting curve along the road center fitting curve, and the obtained curved surface with the road center fitting curve as a center line is a curved surface running road surface. It will be appreciated that the first line segment is always perpendicular to the direction of extension of the road during the movement.
Or, the curved surface driving road surface is equivalent to a curved surface obtained by moving a first line segment from the first end of the road center fitting curve to the second end of the road center fitting curve along the road center fitting curve.
And step S804, determining a road surface area to be driven from the curved driving road surface, wherein the road surface area to be driven is divided into a plurality of grids.
One side of the area of the road surface to be driven, which is close to the moving platform, can be superposed with one side of the curved surface driving road surface, which is close to the moving platform, and the point cloud sensor is carried on the moving platform.
In a specific implementation, the area of the road surface to be traveled is determined from the curved travel road surface, and the area may specifically include b 1-b 2 as follows:
b1, obtaining the preset length.
Wherein the preset length may be stored in the generation means of the occupation grid map.
b2, determining a road surface area to be driven with a preset length and a first width from the curved driving road surface, wherein the first width is the width of the curved driving road surface.
That is, the area of the road surface to be traveled determined in this specific implementation is an area of a curved travel road surface, the length of which is a preset length, and the width of which is a first width. Alternatively, the road surface area to be traveled may be abstractly regarded as a plane formed by a straight line perpendicular to the advancing direction of the movable platform moving from a predetermined length along the central arc-shaped curve of the road.
After the road surface area to be traveled is obtained, the road surface area to be traveled is divided into a plurality of grids with the same size, for example, M × N grids with the same size, wherein M, N are positive integers.
In this specific implementation, since the length of the road surface area to be traveled is the preset length, the efficiency of determining the road surface area to be traveled is high.
In another specific implementation, the area of the road surface to be traveled can be determined from the curved driving road surface according to the detection range of the sensor and the curved driving road surface, and the area may specifically include c 1-c 2 as follows:
c1, determining a first length according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is less than or equal to the length of the curved surface driving road surface.
When the farthest distance which can be detected by the point cloud sensor is smaller than the length of the curved surface running road surface, the first length is the farthest distance which can be detected by the point cloud sensor, and when the farthest distance which can be detected by the point cloud sensor is larger than or equal to the length of the curved surface running road surface, the first length is equal to the length of the curved surface running road surface.
c2, determining the area of the road surface to be driven with the length as the first length and the width as the first width from the curved driving road surface, wherein the first width is the width of the curved driving road surface.
That is, the area of the road surface to be traveled is an area of the curved road surface having a first length and a first width.
After the road surface area to be traveled is obtained, the road surface area to be traveled is divided into a plurality of grids with the same size, which can be specifically shown in fig. 10. Referring to fig. 10, the road surface area to be traveled in fig. 10 may be the road surface area to be traveled obtained in the scene shown in fig. 3, and it is understood that the visually different size grids exist in the road surface area to be traveled because the road surface is fitted to a curved surface, and the size of each grid included in the road surface area to be traveled is actually the same.
In this specific implementation, since the length of the road surface area to be traveled is determined based on the detection range of the sensor, the determined road surface area to be traveled is more reasonable and accurate.
In another specific implementation, the area of the road surface to be traveled can be determined from the curved travel road surface according to the detection range of the sensor, and may specifically include d 1-d 2 as follows:
d1, determining a first length and a second width according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is less than or equal to the length of the curved surface driving road surface, and the second width is less than or equal to the width of the curved surface driving road surface.
The method for determining the first length is the same as above, and is not described herein again. And for the second width, when the maximum width which can be detected by the point cloud sensor is smaller than the first width of the curved running road surface, the second width is the maximum width which can be detected by the point cloud sensor, and when the maximum width which can be detected by the point cloud sensor is larger than or equal to the first width, the second width is equal to the first width.
d2, determining the area of the road surface to be driven with the length of the first length and the width of the second width from the curved driving road surface.
In this specific implementation, since the length of the road surface area to be traveled is determined based on the detection range of the sensor, the determined road surface area to be traveled is more reasonable and accurate.
Step S805, determining the probability of each grid occupied according to the obstacle point cloud.
The method for determining the probability of each grid occupied in the road surface area to be driven according to the point cloud of the obstacle may refer to a current general method, and details are not repeated here.
In an alternative manner, in order not to misjudge the suspended object on the driving road surface or the top of the bridge opening or the tunnel as the obstacle, "the probability that each grid in the road surface area to be driven is occupied according to the obstacle point cloud" in this step may include e1 to e2 as follows:
e1, extracting second points of which the height difference with the curved surface driving road surface in the obstacle point cloud is less than or equal to the maximum height of the vehicle.
That is, the vertical height difference between each second point and the curved running surface is less than or equal to the maximum height of the vehicle.
In one approach, the equation for a curved driving surface is: axm+byn+czk0; and for each point in the obstacle point cloud, acquiring the vertical distance between the point and the curved surface driving road surface, and if the vertical distance is less than or equal to the maximum height of the vehicle, determining the point as a second point. Wherein a, b, c are constants, m is an integer greater than or equal to 2, n is a positive integer, such as 1 or 2 or 3, and k is a positive integer, such as 1 or 2 or 3.
Illustratively, referring to fig. 11, 111 is a side view of a curved driving surface, and the points between the curve 112 and the curve 111 are all the second points.
e2, determining the probability of each grid in the road surface area to be driven being occupied according to each second point.
The specific implementation of determining the probability of each grid occupied in the road surface area to be traveled according to each second point may be as follows:
e21, for any one of the second points, determining the first grid occupied by the second point and the influence probability of the second point on the first grid.
The method for determining the influence probability of the second point on the first grid may refer to a conventional method, and is not described herein again.
e22, adding the influence probabilities of second points occupying the same grid to the grid to obtain the preselected occupation probability of each grid;
e23, for any first grid in the grids, obtaining the occupation probability of the first grid according to the first pre-selected occupation probability of the first grid and the occupation probability of the first grid at the last moment.
Where the initial probability of occupation of each grid is 0.
The method for obtaining the occupation probability of the first grid according to the first pre-selected occupation probability of the first grid and the occupation probability of the first grid at the previous time may refer to a current general method, and will not be described herein again.
e 1-e 2, the method for determining the probability of each grid occupied in the road surface area to be driven can avoid misjudging the suspended object on the driving road surface or the top of a bridge opening or a tunnel as an obstacle, improves the accuracy of determining the probability of each grid occupied in the road surface area to be driven, and further improves the accuracy of the generated grid occupied map.
And step 806, generating a curved surface occupation grid map according to the probability of occupation of each grid in the road surface area to be driven and the road surface area to be driven.
That is, the probability that each grid in the road surface area to be driven is occupied is reflected to the corresponding grid, and the grid map occupied by the curved surface can be generated. Specifically, as shown in fig. 12, the darker the color, the greater the probability that the grid is occupied.
Through the above steps S801 to S806, the method for obtaining the occupied grid map at the time t from the ambient point cloud acquired by the point cloud sensor at the time t is described. It will be appreciated that the occupancy grid map at any one time may be obtained according to the same method described above.
In this embodiment, a curved surface traveling road surface is fitted based on characteristics of the ground, a road surface area to be traveled is determined from the curved surface traveling road surface, the road surface area to be traveled is divided into a plurality of grids, and a curved surface occupancy grid map is generated according to the probability occupied by each grid and the road surface area to be traveled, that is, a ground point cloud is not subjected to plane fitting any more, but the curved surface traveling road surface conforming to actual characteristics of the ground is obtained by surface fitting, so that the accuracy of the occupancy probability of each grid of the obtained road surface area to be traveled is improved, and the accuracy of the generated occupancy grid map is improved.
The method according to the present application is explained above, and the apparatus according to the present application is explained below.
Fig. 13 is a schematic block diagram of a generation apparatus for an occupation grid map provided in an embodiment of the present application, and referring to fig. 13, the apparatus of the present embodiment includes: an obtaining module 1301 and a processing module 1302.
An obtaining module 1301, configured to obtain a point cloud of a surrounding environment collected by a point cloud sensor;
a processing module 1302, configured to:
acquiring an obstacle point cloud and a ground point cloud from the point cloud of the surrounding environment; and
according to the ground point cloud and the characteristics of the ground, fitting a curved surface driving road surface, wherein the ground is the ground of a road where a mobile platform is located, and the point cloud sensor is carried on the mobile platform; and
determining a road surface area to be driven from the curved driving road surface, wherein the road surface area to be driven is divided into a plurality of grids; and
determining a probability that each of the grids is occupied according to the obstacle point cloud; and
and generating a curved surface occupation grid map according to the probability of each grid being occupied and the road surface area to be driven.
Optionally, the processing module 1302 is specifically configured to:
acquiring a center line of a road where the ground is located;
acquiring a first point in the ground point cloud, wherein the vertical distance between the first point and the center line is less than or equal to a preset distance;
fitting each first point by adopting polynomial curve interpolation to obtain a road center fitting curve;
and obtaining the curved surface running road surface according to a road center fitting curve, wherein the road center fitting curve is the center line of the curved surface running road surface.
Optionally, the processing module 1302 is specifically configured to:
extracting second points, of which the height difference between the obstacle point cloud and the curved surface driving road surface is smaller than or equal to the maximum height of the vehicle;
determining, from each of the second points, a probability that each of the occupancy grids is occupied.
Optionally, the processing module 1302 is specifically configured to:
and determining a road surface area to be driven from the curved surface driving road surface according to the visual field range of the point cloud sensor and the curved surface driving road surface.
Optionally, the processing module 1302 is specifically configured to:
determining a first length according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is smaller than or equal to the length of the curved surface driving road surface;
and determining the area of the road surface to be driven with the length of the first length and the width of the first width from the curved driving road surface, wherein the first width is the width of the curved driving road surface.
Optionally, the processing module 1302 is specifically configured to:
determining a first length and a second width according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is smaller than or equal to the length of the curved surface driving road surface, and the second width is smaller than or equal to the width of the curved surface driving road surface;
and determining the area of the road surface to be driven, which has the first length and the second width, from the curved driving road surface.
Optionally, one side of the to-be-driven road surface area coincides with one side of the curved-surface driven road surface close to the moving platform.
The apparatus of this embodiment may be configured to execute the technical solution in the foregoing method embodiment, and the implementation principle and the technical effect are similar, which are not described herein again.
Fig. 14 is a schematic block diagram of a mobile platform provided in an embodiment of the present application, and referring to fig. 14, an apparatus in this embodiment includes: a point cloud sensor 1401 and a processor 1402;
the point cloud sensor is used for acquiring a point cloud of a surrounding environment and sending the point cloud of the surrounding environment to the processor;
the processor is used for receiving the point cloud of the surrounding environment, and acquiring an obstacle point cloud and a ground point cloud from the point cloud of the surrounding environment; according to the ground point cloud and the characteristics of the ground, fitting a curved surface driving road surface, wherein the ground is the ground of the road where the mobile platform is located, and the point cloud sensor is carried on the mobile platform; determining a road surface area to be driven from the curved driving road surface, wherein the road surface area to be driven is divided into a plurality of grids; determining the probability of each grid being occupied according to the obstacle point cloud; and generating a curved surface occupation grid map according to the probability of each grid being occupied and the road surface area to be driven.
Optionally, the processor 1402 is specifically configured to:
acquiring a center line of a road where the ground is located;
acquiring a first point in the ground point cloud, wherein the vertical distance between the first point and the center line is less than or equal to a preset distance;
fitting each first point by adopting polynomial curve interpolation to obtain a road center fitting curve;
and obtaining the curved surface running road surface according to a road center fitting curve, wherein the road center fitting curve is the center line of the curved surface running road surface.
Optionally, the processor 1402 is specifically configured to:
extracting second points, of which the height difference between the obstacle point cloud and the curved surface driving road surface is smaller than or equal to the maximum height of the vehicle;
determining, from each of the second points, a probability that each of the occupancy grids is occupied.
Optionally, the processor 1402 is specifically configured to: and determining a road surface area to be driven from the curved surface driving road surface according to the visual field range of the point cloud sensor and the curved surface driving road surface.
Optionally, the processor 1402:
determining a first length according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is smaller than or equal to the length of the curved surface driving road surface;
and determining the area of the road surface to be driven with the length of the first length and the width of the first width from the curved driving road surface, wherein the first width is the width of the curved driving road surface.
Optionally, the processor 1402 is specifically configured to:
determining a first length and a second width according to the visual field range of the point cloud sensor and the curved surface driving road surface, wherein the first length is smaller than or equal to the length of the curved surface driving road surface, and the second width is smaller than or equal to the width of the curved surface driving road surface;
and determining the area of the road surface to be driven, which has the first length and the second width, from the curved driving road surface.
Optionally, one side of the to-be-driven road surface area coincides with one side of the curved-surface driven road surface close to the moving platform.
The mobile platform of this embodiment may be configured to execute the technical solution in the foregoing method embodiment, and the implementation principle and the technical effect are similar, which are not described herein again.
The embodiment of the application also provides a mobile platform, wherein the mobile platform is provided with a point cloud sensor, and the point cloud sensor can execute the method in the embodiment of the method.
Fig. 15 is a schematic block diagram of an electronic device according to an embodiment of the present application. The electronic device of this embodiment may be a mobile platform, or may be a chip, a chip system, or a processor that supports the mobile platform to implement the method described above; the electronic device may be a point cloud sensor, or may be a chip, a chip system, or a processor supporting the point cloud sensor to implement the above method. The electronic device of this embodiment may be used to implement the method described in the above method embodiment, and specific reference may be made to the description in the above method embodiment.
The electronic device may comprise one or more processors 1501, which processors 1501 may also be referred to as processing units, which may implement certain control functions. The processor 1501 may be a general-purpose processor, a special-purpose processor, or the like.
In an alternative design, the processor 1501 may also store instructions and/or data 1503, and the instructions and/or data 1503 may be executed by the processor to enable the electronic device to perform the methods described in the above method embodiments.
In an alternative design, processor 1501 may include a transceiver unit to perform receive and transmit functions. The transceiving unit may be, for example, a transceiving circuit, or an interface circuit. The transmit and receive circuitry, interfaces or interface circuitry used to implement the receive and transmit functions may be separate or integrated. The transceiver circuit, the interface circuit or the interface circuit may be used for reading and writing code/data, or the transceiver circuit, the interface circuit or the interface circuit may be used for transmitting or transferring signals.
Optionally, the electronic device may include one or more memories 1502, on which instructions 1504 may be stored, which are executable on the processor to cause the electronic device to perform the methods described in the above method embodiments. Optionally, the memory may further store data therein. Optionally, instructions and/or data may also be stored in the processor. The processor and the memory may be provided separately or may be integrated together. For example, the correspondence described in the above method embodiments may be stored in a memory or in a processor.
Optionally, the electronic device may also include a transceiver 1505 and/or an antenna 1506. The processor 1501, which may be referred to as a processing unit, controls the electronic device. The transceiver 1505 may be referred to as a transceiver unit, a transceiver, a transceiving circuit or a transceiver, etc. for implementing transceiving functions.
The storage medium includes a computer program, and the computer program is used for implementing the method in the above method embodiments.
The processors and transceivers described in embodiments of the present application may be fabricated using various IC process technologies, such as Complementary Metal Oxide Semiconductor (CMOS), N-type metal oxide semiconductor (NMOS), P-type metal oxide semiconductor (PMOS), Bipolar Junction Transistor (BJT), Bipolar CMOS (bicmos), silicon germanium (SiGe), gallium arsenide (GaAs), and the like.
It should be understood that the processor in the embodiments of the present application may be an integrated circuit chip having signal processing capability. In implementation, the steps of the above method embodiments may be performed by integrated logic circuits of hardware in a processor or instructions in the form of software. The processor may be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or discrete hardware components.
It will be appreciated that the memory in the embodiments of the subject application can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. The non-volatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. Volatile memory can be Random Access Memory (RAM), which acts as external cache memory. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate SDRAM, enhanced SDRAM, SLDRAM, Synchronous Link DRAM (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
Where the above embodiments are implemented using software, they may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a Digital Video Disk (DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), among others.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
It should be appreciated that reference throughout this specification to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present application. Thus, the various embodiments are not necessarily referring to the same embodiment throughout the specification. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. It should be understood that, in the various embodiments of the present application, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
It should also be understood that, in the present application, "when …", "if" and "if" all refer to the electronic device in the present application performing corresponding processing under certain objective conditions, and are not time-limited, and do not require certain judgment actions to be performed by the electronic device, nor do they imply that other limitations exist.
Reference in the present application to an element using the singular is intended to mean "one or more" rather than "one and only one" unless specifically stated otherwise. In the present application, unless otherwise specified, "at least one" is intended to mean "one or more" and "a plurality" is intended to mean "two or more".
In addition, the term "and/or" herein is only one kind of association relationship describing an associated object, and means that there may be three kinds of relationships, for example, a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone, wherein A can be singular or plural, and B can be singular or plural.
The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
Herein, the term "at least one of … …" or "at least one of … …" means all or any combination of the listed items, e.g., "at least one of A, B and C", may mean: the compound comprises six cases of separately existing A, separately existing B, separately existing C, simultaneously existing A and B, simultaneously existing B and C, and simultaneously existing A, B and C, wherein A can be singular or plural, B can be singular or plural, and C can be singular or plural.
It should be understood that in the embodiments of the present application, "B corresponding to a" means that B is associated with a, from which B can be determined. It should also be understood that determining B from a does not mean determining B from a alone, but may be determined from a and/or other information.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.