Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "target," "preset," and "to be optimized" in the specification and claims of the present invention and the above-described drawings are used for distinguishing similar objects, and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example 1
Fig. 1 is a flowchart of a sensor external parameter calibration method according to a first embodiment of the present invention, where the method may be performed by a sensor external parameter calibration device, and the sensor external parameter calibration device may be implemented in hardware and/or software, and the sensor external parameter calibration device may be configured in any electronic device having the sensor external parameter calibration method. As shown in fig. 1, the method for calibrating the external parameters of the sensor of the present embodiment may include:
S110, controlling the target equipment to execute the external parameter calibration motion operation.
The method is suitable for the sensor external parameter calibration scene. For example, a plurality of sensors are generally mounted on a target device, and output data of each sensor is generally output under a coordinate system of the sensor itself, so that the sensor data needs to be unified under the same coordinate system, and therefore calibration of sensor external parameters is required.
The target device may be a mobile device, such as a mobile robot or an autonomous vehicle, for which external parameter calibration is required for a plurality of sensors mounted on the target device. The external parameters are the relative position relation or the relative angle relation between different sensors. The external parameter calibration may refer to a process of calibrating external parameters between target sensors carried on the target device, and the external parameter calibration motion operation may implement a motion operation adopted for performing external parameter calibration on the sensors carried on the target device.
In a possible embodiment, the control target device performs the external parameter calibration motion operation, which may include the following procedures:
and controlling the target equipment to perform acceleration and deceleration movement along an external parameter calibration movement route with a preset shape, and enabling the speed adjustment frequency of the target equipment to be larger than a preset frequency threshold value.
Wherein the speed adjustment comprises a speed magnitude and/or a speed direction; the acceleration and deceleration movement includes fixed acceleration, fixed deceleration, variable acceleration and variable deceleration.
The preset shape may be any path track shape capable of enabling the target device to move, and may include, but not limited to, a straight line track and/or a curved line track, for example, an "8" path, an "S" path, a "Z" path, etc., so as to ensure that the external parameter calibration result can be more suitable for an actual running scene to use, and obtain a more accurate external parameter calibration value. Alternatively, the pre-shaped extrinsic nominal motion profile may include, but is not limited to, straight, tight turns, quarter turns, turn around, left turns, right turns, etc.
The preset frequency threshold value can be the minimum adjustment times for adjusting the speed of the target equipment, can be specifically set according to actual conditions, and can only ensure that the target equipment performs multiple speed adjustment changes, and can obtain more speed variation data aiming at the same sensor so as to ensure the sufficiency and reality of the data quantity as much as possible, thus avoiding calibration deviation caused by individual data.
According to the technical scheme, the target equipment is controlled to perform acceleration and deceleration movement for multiple times on the external parameter calibration movement route with the preset shape, so that the speed of the target equipment is changed for multiple times, the speed variation value of each sensor when the target equipment operates according to each speed is conveniently recorded, the data of the speed variation is ensured to be as much as possible, and the phenomenon that the calibrated external parameter is not representative due to the fact that the data quantity is small is avoided.
In one possible embodiment, the control target device performs acceleration and deceleration movement along the external parameter calibration movement route with the preset shape, and the method can comprise the following steps:
and adjusting the load capacity of the target equipment, and controlling the target equipment with the adjusted load capacity to perform acceleration and deceleration movement along an external parameter calibration movement route with a preset shape.
The load capacity can be the weight borne by the target equipment, and the target equipment can simulate the motion state of the target equipment when carrying the articles with different weights in the external parameter calibration motion process by adjusting the weight of the articles borne by the target equipment, so that the target equipment can acquire the output values of the sensors under different load conditions for calibration, and the accuracy of the external parameter calibration is ensured. Alternatively, if invalid data occurs in consideration of setting different loads, it may be set directly as empty and full.
Specifically, the load capacity of the target equipment is adjusted, the target equipment is controlled to perform acceleration and deceleration movement according to the external parameter calibration movement route with a preset shape when the target equipment has different load capacities, and the speed adjustment frequency of the target equipment is enabled to be larger than a preset frequency threshold. For example, when the target device is in an empty state, the target device is controlled to perform acceleration and deceleration according to the 8-shaped movement route, then the target device is in a full-load state, and the target device is controlled to perform acceleration and deceleration according to the 8-shaped movement route; and respectively recording the speed variation of the target equipment under different carrying capacities so as to perform external parameter calibration.
According to the technical scheme, the target equipment with different carrying capacities is controlled to perform acceleration and deceleration movement according to the external parameter calibration movement route with the preset shape, so that the speed variation of the target equipment in different states can be recorded, the singleness of data is avoided, the diversity of the data is realized, and the external parameter calibration is more accurate.
S120, determining the speed change quantity of the target sensor corresponding to different target sensors on the target equipment when the external parameter calibration motion operation is executed; wherein different target sensors are carried on the target device by a rigid connection.
The target sensor is a detection device, and can convert detected signals into electric signals or output the electric signals in other required forms according to a certain rule so as to meet the requirements of information transmission, processing, storage, display, recording, control and the like. Such as laser sensors, inertial sensors, displacement sensors, speed sensors, acceleration sensors, etc.
Rigid connection may refer to a connection between two connectors in which when one of the connectors is displaced or forced, the other connected to it does not displace or deform relative to the first connector, i.e., the two connectors are integral. For example, two connected sensors, do not displace relative to each other or deform at the connection location between the two when the target device is accelerated and decelerated.
Specifically, when the target device executes the external reference calibration motion operation, a plurality of speeds of different target sensors on the target device on an external reference calibration motion route with a preset shape are determined, and a plurality of speed variation amounts of the corresponding target sensors are determined according to the plurality of speeds of the target sensors. For example, when the robot moves in an acceleration and deceleration way according to the 8-shaped route, a plurality of speed values of each target sensor in the robot are determined in the running process, a plurality of corresponding speed variation amounts of the target sensors are determined according to the plurality of speed values of the target sensors in the robot, so that a plurality of speed variation amounts of each target sensor on the robot can be more accurately determined, errors caused by too few speed variation amount data are avoided, calibration of external parameters is facilitated, and external parameter calibration errors are reduced.
S130, performing external parameter calibration on different target sensors according to the corresponding target sensor speed variation of the different target sensors.
Specifically, when the external parameter calibration motion operation is performed on the target equipment, a plurality of speed variation amounts of the target sensors corresponding to different target sensors are determined, and external parameters among the target sensors are calibrated according to the plurality of speed variation amounts of the target sensors. When the target device executes the external parameter calibration motion operation, the first speed variation corresponding to the first sensor and the second speed variation corresponding to the second sensor on the target device in the same time interval are determined, and the external parameter between the first sensor and the second sensor is calibrated according to the first speed variation and the second speed variation in the same time interval.
According to the technical scheme, the speed variation of the target sensor corresponding to different target sensors which are rigidly connected on the target equipment is determined by controlling the target equipment to execute external parameter calibration movement operation; according to the speed variation of the target sensor corresponding to different target sensors, the external parameter calibration is carried out on different target sensors, and the external parameter calibration is carried out according to the speed variation condition among different sensors.
Example two
Fig. 2 is a flowchart of a sensor external parameter calibration method according to a second embodiment of the present invention, where the speed variation of the target sensor is described in detail on the basis of the foregoing embodiment, so as to perform external parameter calibration on different target sensors. As shown in fig. 2, the method for calibrating the external parameters of the sensor of the present embodiment may include:
s210, determining target sensor data corresponding to the acquired target sensors when the target equipment executes external parameter calibration motion operation at each acquisition time aiming at each target sensor.
Different target sensors are mounted on the target equipment, and in the process of executing external parameter calibration motion operation by the target equipment, the target sensors can acquire data, namely, the corresponding target sensor data acquired by each target sensor at different acquisition moments can be obtained. The target sensor data may include, but is not limited to, position data, speed and direction data, acceleration data, data acquisition time of the sensor, and the like of the sensor.
S220, determining the speed variation of the target sensor at the target time interval according to the data of the target sensor at each acquisition time of the target sensor; each target time interval is determined by the time interval between any two adjacent acquisition moments selected from the acquisition moments, and different target time intervals are not overlapped in time.
For each target time interval, each target sensor needs to obtain a target sensor speed variation, that is, each target sensor in the same target time interval calculates a target sensor speed variation, so that the speed variation in the same time interval can be used for characterization when determining the speed variation difference between different sensors. The target time interval can be a time interval within a threshold time, so that a plurality of speed variation amounts of the target equipment in the motion process can be obtained, the data amount is increased, and the external parameter error is reduced. It is understood that the threshold time may be set according to the actual situation, and may be 0.5 seconds, 1 second, 2 seconds, or the like.
Optionally, the target sensor data collected at different collection moments are collected when the target device moves along a straight line in the process of executing the external parameter calibration motion operation.
Specifically, no matter what preset-shaped external parameter calibration motion route is followed by the target equipment to perform acceleration and deceleration movement, the target sensor data when the target equipment moves along the straight line road section is collected as much as possible, and because the target sensor data when the target equipment moves along the straight line is collected when the target sensor speed variation is obtained at intervals, the accuracy of the target sensor speed variation obtained at intervals can be ensured. For example, in the position sensor, if position data of a curved position is acquired, the position change data of a target time interval is calculated to be small, and the speed change amount acquired by the position change data is also small, which greatly affects the accuracy of the data, so that the target sensor data when the target device moves along a straight line is recorded.
In one possible embodiment, determining the target sensor speed variation of the target sensor at the target time interval according to the target sensor data of the target sensor at each acquisition time may comprise the following steps A1-A2:
And A1, if the target sensor is suitable for speed measurement, determining the acceleration of the target sensor at each acquisition time from the target sensor data of the target sensor at each acquisition time.
And A2, calculating the speed variation of the target sensor at different target time intervals according to the acceleration of the target sensor at each acquisition time and the target time interval duration.
Specifically, the method is suitable for the target sensor for speed measurement, can collect the target sensor data of each collection time of the target sensor in the process of performing external parameter calibration motion operation of the target equipment, determine the acceleration of each collection time of the target sensor according to the data of the target sensor, and in addition, needs to determine different target time intervals of the target sensor, and then combines the acceleration of each collection time of the target sensor to obtain the target sensor speed variation of different target time intervals through calculation.
For example, the inertial sensor during the movement of the robot is adapted to take a speed measurement, obtaining t
1 Acceleration of inertial sensor at moment of time, let acceleration
The method comprises the following steps:
similarly, get t
2 Acceleration of moment inertial sensor
Then at t
2 Speed variation of the time inertial sensor +.>
Relative to t
1 The time is:
the speed variation of the target sensor with different target time intervals can be obtained according to the method
The speed variation of the target sensor is more accurate. Wherein i is a positive integer greater than zero.
According to the technical scheme, after the acceleration of each acquisition moment of the target sensor suitable for speed measurement is determined, the speed variation of the target sensor at different target time intervals is obtained through accurate calculation, so that the accuracy of the speed variation of the target sensor and the acquisition easiness are realized.
In one possible embodiment, determining the target sensor speed variation of the target sensor at the target time interval according to the target sensor data of the target sensor at each acquisition time may include the following steps B1-B2:
and B1, if the target sensor is suitable for position measurement, determining the sensor position of the target sensor at each acquisition time from the target sensor data of the target sensor at each acquisition time.
And B2, calculating the speed variation of the target sensor at different target time intervals according to the sensor positions of the target sensor at each acquisition time and the target time interval duration.
Specifically, the method is suitable for the target sensor for position measurement, can collect the target sensor data of each collection time of the target sensor in the process of performing external parameter calibration motion operation of the target equipment, and determines the sensor position of each collection time of the target sensor according to the data of the target sensor.
For example, during the movement of the robot, for the laser sensor on the robot, which is suitable for position measurement, the laser sensor t is obtained by using the laser odometer technology
0 Position of time of day
The method comprises the following steps:
similarly, get t
2 Position of the laser sensor at the moment
Assuming uniform motion of the vehicle within a target time interval, t
0 <t
1 <t
2 And t
0 、t
1 、t
2 The moment is within the threshold time period, t
1 Speed of laser sensor at moment->
The method comprises the following steps:
similarly, get t
2 Speed of time laser sensor
Then the laser sensor speed change at time t2
Relative to t
1 The time is:
the speed variation of the target sensor with different target time intervals can be obtained according to the method
The speed variation of the target sensor is more accurate. Wherein i is a positive integer greater than zero.
According to the technical scheme, the positions of all the acquisition moments of the target sensors suitable for position measurement are determined, although the acquisition of position data is easier, some target sensors such as an inertial measurement sensor cannot easily acquire the position data, so that external parameter calibration with the target sensors for position measurement is very difficult, the speed variation of the target sensors for position measurement with different target time intervals is required to be calculated simply and accurately, and the accuracy of the speed variation of the target sensors and the acquisition easiness are realized. For example, the position of each acquisition time of the laser sensor is acquired, the speed variation of each target time interval is determined by determining the position information of each of the start time and the end time of different time intervals and corresponding time intervals, the acquisition of the speed variation is simply and accurately completed, and the external parameter calibration is easier.
In one possible embodiment, performing the extrinsic calibration on different target sensors according to the target sensor speed variation corresponding to the different target sensors may include the following steps C1-C2:
Step C1, constructing a speed residual error between target sensors by adopting the to-be-optimized external parameter calibration parameter variable and the speed variation of the target sensor corresponding to the two target sensors in the same target time interval; the speed residual error is used for describing the difference value between the speed variation of different target sensors converted to the same coordinate system through external parameters;
and C2, optimizing speed residuals among target sensors at different target time intervals, and determining an optimized value of the external parameter calibration parameter to be optimized.
The parameter variable of the external parameter calibration to be optimized can be an original external parameter with a certain error obtained by a mechanical processing parameter or a direct measurement mode before the external parameter calibration operation is carried out.
Specifically, the speed residual error between the target sensors is constructed by adopting the speed variation of the target sensor corresponding to the external parameter variable to be optimized and the two target sensors in the same target time interval. For example, in the moving process of the robot, two sensors are respectively an inertial sensor and a laser sensor as target sensors with the same time interval of each target in the moving process, and the parameter variable U is calibrated by the external parameters to be optimized and combined with the speed variation of the inertial sensor in the same time interval
And the speed variation of the laser sensor +.>
The formula for the speed residual, characterized by the difference in speed variation between the two sensors, can be derived as follows:
wherein i is a positive integer greater than zero, t i Represents the ending time of the target time interval, the starting time t of the target time interval i-1 . According to the technical scheme, the speed residual error between the target sensors is obtained through the speed variation of the target sensors corresponding to the two target sensors in the same target time interval and the variable of the parameter to be calibrated of the external parameter to be optimized, when the speed residual error between the target sensors is smaller, the current external parameter is more fit with the actual situation, and the error in the calibration process can be reduced, so that the speed residual error is required to be optimized to determine the optimized value of the parameter to be calibrated of the external parameter to be optimized, and the external parameter is more accurate.
In one possible embodiment, optimizing the speed residual function between the target sensors for different target time intervals may comprise the following steps D1-D2:
and D1, taking summation of multiplication results between speed residuals between target sensors corresponding to different target time intervals and speed residual transposition between the target sensors as an objective function.
And D2, solving the objective function, and determining the value of the parameter variable of the external parameter calibration to be optimized when the objective function takes the minimum value.
Specifically, after determining the speed residual, in order to obtain an accurate external parameter, the speed residual needs to be optimized, that is, the summation of multiplication results between the speed residual between the target sensors corresponding to different target time intervals and the speed residual transposition between the target sensors needs to be used as a target function, the target function is solved, and the minimum value obtained by solving the target function is used as the optimized value of the external parameter calibration parameter variable to be optimized. For example, during robot motion, the velocity residual between the inertial sensor and the laser sensor has been obtained, then the objective function is:
and solving the objective function to obtain the minimum value of the objective function, and obtaining the optimized value of the parameter variable of the external parameter calibration to be optimized. In addition, after the calibration is finished, the optimized value of the parameter variable of the external parameter to be optimized can be used as the external parameter of the sensor calibration, but as time goes by, the error of the external parameter value can become large due to various practical reasons, so that the external parameter needs to be calibrated again after a period of time so as to ensure the operation accuracy of the target equipment; of course, a dynamic calibration method can be used to add the newly added speed variation to obtain the optimized value of the parameter variable of the external parameter calibration to be optimized.
According to the technical scheme, after the speed residual errors among the target sensors are obtained, the speed residual errors are optimized by utilizing the target function, and the external parameters with higher precision are obtained after accurate calculation, so that the errors among the target sensors are reduced, and the operation accuracy of target equipment is ensured.
According to the technical scheme, the speed variation of the target sensor corresponding to different target sensors which are rigidly connected on the target equipment is determined by controlling the target equipment to execute external parameter calibration movement operation; according to the speed variation of the target sensor corresponding to different target sensors, the external parameter calibration is carried out on different target sensors, and the external parameter calibration is carried out according to the speed variation condition among different sensors.
Example III
Fig. 3 is a schematic structural diagram of a sensor external parameter calibration device according to a third embodiment of the present invention. As shown in fig. 3, the apparatus includes:
The control module 310 is configured to control the target device to perform the external parameter calibration motion operation.
The speed variation determining module 320 is configured to determine speed variation of the target sensor corresponding to different target sensors on the target device when performing the external parameter calibration motion operation; wherein different target sensors are carried on the target device by a rigid connection.
The calibration module 330 is configured to perform external parameter calibration on different target sensors according to the speed variation of the target sensor corresponding to the different target sensors.
Optionally, the control module is specifically configured to:
controlling the target equipment to perform acceleration and deceleration movement along an external parameter calibration movement route with a preset shape, and enabling the speed adjustment frequency of the target equipment to be larger than a preset frequency threshold value;
wherein the speed adjustment comprises a speed magnitude and/or a speed direction; the acceleration and deceleration movement includes fixed acceleration, fixed deceleration, variable acceleration and variable deceleration.
Optionally, the control module comprises an operation unit, specifically configured to:
and adjusting the load capacity of the target equipment, and controlling the target equipment with the adjusted load capacity to perform acceleration and deceleration movement along an external parameter calibration movement route with a preset shape.
Optionally, the speed variation determining module is specifically configured to:
Determining target sensor data corresponding to the acquired target sensors when the target equipment executes external parameter calibration motion operation at each acquisition time aiming at each target sensor;
determining the speed variation of the target sensor at the target time interval according to the data of the target sensor at each acquisition time of the target sensor;
each target time interval is determined by the time interval between any two adjacent acquisition moments selected from the acquisition moments, and different target time intervals are not overlapped in time.
Optionally, the speed change amount determining module includes a first speed change amount determining unit, specifically configured to:
if the target sensor is suitable for speed measurement, determining acceleration of the target sensor at each acquisition time from the target sensor data of the target sensor at each acquisition time;
and calculating the speed variation of the target sensor at different target time intervals according to the acceleration of the target sensor at each acquisition time and the target time interval duration.
Optionally, the speed change amount determining module includes a second speed change amount determining unit, specifically configured to: :
If the target sensor is suitable for position measurement, determining the sensor position of the target sensor at each acquisition time from the target sensor data of the target sensor at each acquisition time;
calculating the speed variation of the target sensor at different target time intervals according to the sensor positions of the target sensor at each acquisition time and the target time interval duration;
optionally, the target sensor data collected at different collection moments are collected when the target device moves along a straight line in the process of executing the external parameter calibration motion operation.
Optionally, the calibration module is specifically configured to:
constructing a speed residual error between the target sensors by adopting the to-be-optimized external parameter calibration variable and the speed variation of the target sensor corresponding to the two target sensors in the same target time interval; the speed residual error is used for describing the difference value between the speed variation of different target sensors converted to the same coordinate system through external parameters;
and optimizing the speed residual errors among the target sensors at different target time intervals, and determining the optimized value of the external parameter calibration parameter to be optimized.
Optionally, the calibration module includes an optimizing unit, specifically configured to:
Taking summation of multiplication results between speed residuals between target sensors corresponding to different target time intervals and speed residual transposition between the target sensors as a target function;
and solving the objective function, and determining the value of the parameter variable of the external parameter calibration to be optimized when the objective function takes the minimum value.
The sensor external parameter calibration device provided by the embodiment of the invention can execute the sensor external parameter calibration method provided by any embodiment of the invention, has the corresponding functions and beneficial effects of executing the sensor external parameter calibration method, and the detailed process refers to the related operation of the sensor external parameter calibration method in the embodiment.
Example IV
FIG. 4 shows a schematic diagram of an electronic device that may be used to implement the sensor external parameter calibration method of an embodiment of the present invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Electronic equipment may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 4, the electronic device 10 includes at least one processor 11, and a memory, such as a Read Only Memory (ROM) 12, a Random Access Memory (RAM) 13, etc., communicatively connected to the at least one processor 11, in which the memory stores a computer program executable by the at least one processor, and the processor 11 may perform various appropriate actions and processes according to the computer program stored in the Read Only Memory (ROM) 12 or the computer program loaded from the storage unit 18 into the Random Access Memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 may also be stored. The processor 11, the ROM 12 and the RAM 13 are connected to each other via a bus 14. An input/output (I/O) interface 15 is also connected to bus 14.
Various components in the electronic device 10 are connected to the I/O interface 15, including: an input unit 16 such as a keyboard, a mouse, etc.; an output unit 17 such as various types of displays, speakers, and the like; a storage unit 18 such as a magnetic disk, an optical disk, or the like; and a communication unit 19 such as a network card, modem, wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
The processor 11 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, digital Signal Processors (DSPs), and any suitable processor, controller, microcontroller, etc. The processor 11 performs the various methods and processes described above, such as the sensor external parameter calibration method.
In some embodiments, the sensor external parameter calibration method may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as the storage unit 18. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 10 via the ROM 12 and/or the communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more of the steps of the sensor external reference calibration method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the sensor external parameter calibration method in any other suitable way (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for carrying out methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be implemented. The computer program may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. The computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) through which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the internet.
The computing system may include clients and servers. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service are overcome.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps described in the present invention may be performed in parallel, sequentially, or in a different order, so long as the desired results of the technical solution of the present invention are achieved, and the present invention is not limited herein.
The above embodiments do not limit the scope of the present invention. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the scope of the present invention.