Position information generation method, device and equipment of dome camera and readable medium
By initializing the shooting settings of the spherical camera and generating target angle information through multiple rotation methods, the problems of large resource consumption and large positioning error of spherical cameras are solved, and more efficient image acquisition and target object tracking are achieved.
Patent Information
- Application Number
- CN202511387912.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-26
- Publication Date
- 2026-01-09
AI Technical Summary
When using a dome camera for automatic orientation control, it consumes a lot of CPU or GPU resources, resulting in large positioning errors, incomplete target objects in the image, and increased system operation time and resource consumption.
The spherical camera is initialized with preset shooting settings to generate target angle information. Multiple rotation methods are used to control the camera to rotate to the final position, reducing target detection and coordinate transformation, and directly controlling rotation based on the target object's position information.
It reduces CPU or GPU resource consumption, improves the accuracy of spherical camera rotation, ensures the target object is intact in the image, and shortens system operation time and resource consumption.
Smart Images

Figure CN121309971A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of this disclosure relate to the field of computer technology, and more specifically to a method, apparatus, device, and readable medium for generating location information of a spherical camera. Background Technology
[0002] Automatic orientation calculation technology for dome cameras can significantly improve the intelligence level and operational efficiency of monitoring systems in practical applications. In vehicle-mounted or drone-based scenarios, the relative position of the dome camera and the target object changes rapidly, resulting in poor real-time updates of coordinate transformation parameters and thus significant positioning errors. Therefore, it is necessary to further improve the accuracy of images acquired by the dome camera. Currently, the common method for achieving automatic orientation control of dome cameras is as follows: on the video monitoring screen, the system determines the required angular offset based on the selected object's position and controls the dome camera to rotate, ensuring the target object's position is centered in the frame.
[0003] However, in practice, it has been found that when using the above method to generate the position information of a spherical camera, the following technical problems often occur:
[0004] When controlling the rotation of a spherical camera using a box selection method, the system needs to rotate the spherical camera through target detection and coordinate transformation, which consumes a large amount of CPU or GPU resources. Moreover, the system's coordinate transformation (calculating the target angle information based on the pixel coordinates of the box selection position) has a large error, resulting in low accuracy of the spherical camera's rotation. Consequently, the target object in the acquired image is incomplete, leading to target object tracking failure. This requires readjusting the spherical camera, increasing system operation time and resource consumption.
[0005] The information disclosed in this background section is only intended to enhance the understanding of the background of the inventive concept, and therefore may contain information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0006] The summary portion of this disclosure is intended to provide a brief overview of the concepts, which will be described in detail in the detailed description portion. This summary portion is not intended to identify key or essential features of the claimed technical solutions, nor is it intended to limit the scope of the claimed technical solutions.
[0007] Some embodiments of this disclosure provide methods, apparatus, electronic devices, and computer-readable media for generating location information of spherical cameras to address one or more of the technical problems mentioned in the background section above.
[0008] In a first aspect, some embodiments of this disclosure provide a method for generating position information for a spherical camera. The method includes: initializing the shooting settings information of the spherical camera according to preset shooting settings information; generating target angle information of the spherical camera according to the preset shooting settings information and target object position information; in response to determining that the rotation mode of the spherical camera is a first rotation mode, generating final position information of the spherical camera according to the first rotation mode and the target angle information; in response to determining that the rotation mode of the spherical camera is a second rotation mode, performing the following steps according to the target angle information: determining preset position information in the preset position information group that meets preset position selection conditions as target preset position information according to the target angle information and a preset position information group; generating supplementary rotation angle information corresponding to the spherical camera according to the target preset position information; generating final position information of the spherical camera according to the supplementary rotation angle information; in response to determining that the rotation mode of the spherical camera is a third rotation mode, generating final position information of the spherical camera according to the third rotation mode and the target angle information; and controlling the spherical camera to capture image information of a target scene.
[0009] Secondly, some embodiments of this disclosure provide a position information generation apparatus for a spherical camera, including an initialization unit configured to initialize the shooting settings information of the spherical camera according to preset shooting settings information; a first generation unit configured to generate target angle information of the spherical camera according to the preset shooting settings information and target object position information; a second generation unit configured to generate final position information of the spherical camera according to the first rotation mode and the target angle information in response to determining that the rotation mode of the spherical camera is a first rotation mode; and an execution unit configured to generate final position information of the spherical camera according to the first rotation mode and the target angle information in response to determining that the rotation mode of the spherical camera is a second rotation mode. Based on the aforementioned target angle information, the following steps are performed: a determining unit is configured to determine the preset position information in the preset position information group that meets the preset position selection conditions as target preset position information, based on the aforementioned target angle information and preset position information group; a third generating unit is configured to generate the corresponding rotation angle information of the spherical camera based on the aforementioned target preset position information; a fourth generating unit is configured to generate the final position information of the spherical camera based on the aforementioned rotation angle information; and a fifth generating unit is configured to generate the final position information of the spherical camera based on the aforementioned third rotation mode and the aforementioned target angle information in response to determining that the rotation mode of the spherical camera is a third rotation mode. A control unit is configured to control the spherical camera to capture image information of the target scene.
[0010] Thirdly, some embodiments of this disclosure provide an electronic device, including: one or more processors; and a storage device having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any implementation of the first aspect above.
[0011] Fourthly, some embodiments of this disclosure provide a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the method described in any of the implementations of the first or second aspect.
[0012] The above-described embodiments of this disclosure have the following beneficial effects: The method for generating position information for a spherical camera, applied to some embodiments of this disclosure, can reduce the CPU or GPU resources used, improve the accuracy of the spherical camera's rotation, and thus ensure the completeness of the target object in the acquired image, reducing system operation time and resource consumption. Specifically, the reasons for consuming large amounts of CPU or GPU resources, low accuracy of the spherical camera's rotation, incomplete target objects in the acquired image, and subsequent target object tracking failure, leading to increased system operation time and resource consumption, are as follows: When controlling the spherical camera's rotation using a box selection method, the system needs to rotate the spherical camera through target detection and coordinate transformation, resulting in the consumption of large amounts of CPU or GPU resources; and the system's coordinate transformation (calculating target angle information based on the pixel coordinates of the box selection position) has a large error, resulting in low accuracy of the spherical camera's rotation, incomplete target objects in the acquired image, and subsequent target object tracking failure, requiring readjustment of the spherical camera, increasing system operation time and resource consumption. Based on this, the method for generating position information for a spherical camera in some embodiments of this disclosure first initializes the spherical camera's shooting settings information according to preset shooting settings information. Therefore, the state of the spherical camera when it returns to its initial preset position and its field of view is scaled to its maximum can be obtained. Then, based on the aforementioned preset shooting settings and target object position information, the target angle information of the spherical camera is generated. Thus, the angle required for the spherical camera to rotate to the target object position in the target scene can be obtained. Next, in response to determining that the rotation mode of the spherical camera is a first rotation mode, the final position information of the spherical camera is generated based on the first rotation mode and the target angle information. Thus, the spherical camera can be rotated to its final position using the first rotation mode, obtaining the final position information of the spherical camera. Next, in response to determining that the rotation mode of the spherical camera is a second rotation mode, the following steps are performed based on the target angle information: First, based on the target angle information and the preset position information group, the preset position information in the preset position information group that meets the preset position selection conditions is determined as the target preset position information. Thus, the target preset position to which the spherical camera should rotate can be obtained. Next, based on the target preset position information, the corresponding supplementary rotation angle information of the spherical camera is generated. Therefore, the additional rotation angle after rotating to the target preset position can be obtained. Then, based on the above additional rotation angle information, the final position information of the spherical camera is generated. Thus, the spherical camera can be rotated to the position using the second rotation method to obtain the final position information of the spherical camera. Finally, in response to determining that the above spherical camera rotation method is the third rotation method, the final position information of the spherical camera is generated based on the above third rotation method and the above target angle information.Therefore, the spherical camera can be rotated to its final position using a third rotation method, obtaining its final position information. Because the spherical camera rotation is not controlled by selecting a frame, target detection and coordinate transformation are unnecessary. Instead, the rotation control is directly based on the acquired target object's position information (geographic coordinates: latitude and longitude), improving the alignment accuracy, reducing the time required to rotate to the final position, and decreasing CPU or GPU resource consumption. Furthermore, since the final position can be achieved using target preset position information and supplementary rotation angle information, the spherical camera can be directly controlled to rotate to the target preset position (a large-angle rotation), and then controlled to rotate to the final position using the supplementary rotation angle information (a small-angle rotation). This large-angle rotation shortens the time required to control the spherical camera to the final position, while the small-angle rotation improves the accuracy of the final position, reducing the need for further adjustments to the spherical camera, shortening system operation time, and reducing resource consumption. This reduces the CPU or GPU resources used, improves the accuracy of the spherical camera's rotation, and ensures that the target object is complete in the captured image, thus reducing the system's operation time and resource consumption. Attached Figure Description
[0013] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and elements are not necessarily drawn to scale.
[0014] Figure 1 This is a flowchart of some embodiments of the method for generating position information of a spherical camera according to the present disclosure;
[0015] Figure 2 This is a schematic diagram of the structure of some embodiments of the spherical camera position information generation device according to the present disclosure;
[0016] Figure 3 This is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure. Detailed Implementation
[0017] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0018] It should also be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings. Unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other.
[0019] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0020] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0021] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0022] This disclosure will now be described in detail with reference to the accompanying drawings and embodiments.
[0023] Figure 1 A flow 100 of some embodiments of a method for generating position information for a spherical camera according to the present disclosure is shown. The method for generating position information for a spherical camera includes the following steps:
[0024] Step 101: Initialize the shooting settings of the spherical camera according to the preset shooting settings.
[0025] In some embodiments, the execution entity (e.g., a computer device) of the method for generating position information of a spherical camera can initialize the shooting settings information of the spherical camera according to preset shooting settings information. The preset shooting settings information can represent the preset position parameters and maximum field of view of the spherical camera. For example, the maximum field of view can be 60°. The preset shooting settings information may include the maximum field of view and initial preset position information of the spherical camera. The initial preset position information can represent the preset position parameters. The position parameters can represent the azimuth angle and pitch angle of the spherical camera. The pitch angle can be a fixed value. The spherical camera can have a multi-level rotation speed adjustment function, with 10 speed levels, the level value increasing sequentially from 1 to 10, corresponding to progressively increasing rotation speeds, with the 10th speed level corresponding to the highest speed. The shooting settings information can represent the field of view, azimuth angle, and pitch angle of the spherical camera in the current state. For example, the pitch angle can be in the range of -3° to +85°. For example, the 10 speed levels can be: "1st gear: 1° / second, 2nd gear: 5° / second, 3rd gear: 10° / second, 4th gear: 15° / second, 5th gear: 20° / second, 6th gear: 30° / second, 7th gear: 50° / second, 8th gear: 100° / second, 9th gear: 200° / second, 10th gear: 300° / second".
[0026] In some optional implementations of certain embodiments, the aforementioned execution entity may initialize the shooting settings information of the spherical camera according to preset shooting settings information through the following steps:
[0027] The first step is to rotate the spherical camera according to the initial preset position information. In practice, the executing entity can control the spherical camera to rotate to the initial preset position information.
[0028] The second step is to scale the field of view of the spherical camera after rotation to the maximum field of view mentioned above.
[0029] Step 102: Generate the target angle information of the spherical camera based on the preset shooting settings and the target object position information.
[0030] In some embodiments, the execution entity can generate target angle information for the spherical camera based on the preset shooting settings and target object position information. The target object position information can represent the geographic coordinates (latitude and longitude) of the target object. The target object can be any object in the target scene. The target scene can be the scene in which the spherical camera is located. The target angle information can represent the angle the spherical camera needs to rotate from the orientation angle corresponding to the initial preset position information to effectively observe the target object. Effective observation of the target object can be achieved when the target object is located at the center of the spherical camera's field of view. For example, the target angle information can be 90°.
[0031] In some optional implementations of certain embodiments, the execution entity can generate the target angle information of the spherical camera based on the preset shooting settings information and the target object position information through the following steps:
[0032] The first step is to obtain the coordinates of the spherical camera and the location information of the target objects within the target scene. The spherical camera coordinates represent the geographic coordinates (latitude and longitude) of the spherical camera. In practice, the executing entity can first obtain the spherical camera coordinates by integrating a GNSS module. Then, the location information of the target objects within the target scene is obtained through a geographic information system (GIS).
[0033] The second step is to determine the angle information between the spherical camera coordinates and the target object position information, based on the aforementioned spherical camera coordinates and target object position information. This angle information represents the horizontal angle between the spherical camera coordinates and the target object position information. In practice, the executing entity can determine the angle information between the spherical camera coordinates and the target object position information using spherical trigonometry formulas.
[0034] The third step involves generating the target angle information for the spherical camera based on the aforementioned angle information and the aforementioned preset shooting settings. In practice, the executing entity can determine the target angle information for the spherical camera as the difference between the aforementioned angle information and the directional angle in the aforementioned preset shooting settings.
[0035] Step 103: In response to determining that the rotation mode of the spherical camera is the first rotation mode, the final position information of the spherical camera is generated based on the first rotation mode and the target angle information.
[0036] In some embodiments, in response to determining that the rotation mode of the spherical camera is a first rotation mode, the executing entity can generate the final position information of the spherical camera based on the first rotation mode and the target angle information. The first rotation mode can characterize that the spherical camera rotates based on the determined proximity position information of the spherical camera. The final position information can characterize the azimuth angle of the spherical camera when it is rotated to a position where it can effectively observe the target object. For example, the azimuth angle represented by the final position information can be 30°.
[0037] In some optional implementations of certain embodiments, in response to determining that the rotation mode of the spherical camera is a first rotation mode, the execution entity can generate the final position information of the spherical camera based on the first rotation mode and the target angle information through the following steps:
[0038] The first step is to determine the number of drags and the final drag position of the 3D gimbal based on the target angle information and the preset shooting settings. The final drag position represents the pixel distance of the last drag of the 3D gimbal. The number of drags represents the number of times the 3D gimbal is dragged. It should be noted that the executing entity can simulate dragging the 3D gimbal from the center to the edge of the image captured by the spherical camera, in pixel units, to drive the spherical camera to rotate within a preset rotation range. The preset rotation range can be 1% * (maximum field of view of the spherical camera / 2) to 100% * (maximum field of view of the spherical camera / 2). For example, if the maximum field of view of the spherical camera is 60°, the corresponding preset rotation range can be 0.3° to 30°. In practice, the executing entity can first divide the maximum field of view by 2 to obtain the maximum rotation angle information of the spherical camera. The maximum rotation angle information represents the maximum angle of a single rotation of the spherical camera. For example, if the image captured by a spherical camera is 200x200 pixels and its maximum field of view is 60 degrees, then the pixel distance from the center of the spherical camera's image to the edge of the image is 100 pixels. The preset rotation range can then be 0.3° to 30°, and the corresponding maximum rotation angle is 30 degrees. Then, the target angle information and the maximum rotation angle information are input into a first preset function to obtain the number of drags for the 3D gimbal. Finally, the target angle information, the maximum rotation angle information, and the pixel distance from the center of the spherical camera's image to the edge of the image are input into a second preset function to obtain the final drag position information.
[0039] As an example, the first preset function mentioned above can be:
[0040] Nh = ceil(|Δθ| / β).
[0041] Where Nh represents the number of times the 3D gimbal is dragged. |Δθ| represents the target angle information mentioned above. β represents the maximum rotation angle information mentioned above.
[0042] As an example, the second preset function mentioned above can be:
[0043] Dfinal=(|Δθ|modβ)*(Dmax / β).
[0044] Dfinal represents the final drag position information. Dmax represents the pixel distance from the center to the edge of the spherical camera's image.
[0045] The second step involves determining the proximity information of the spherical camera based on the aforementioned number of drags. This proximity information represents the azimuth angle of the spherical camera after rotating it a target number of times, using the maximum rotation angle as the unit. The target number represents the difference between the number of drags and 1. In practice, the executing entity first subtracts 1 from the number of drags to obtain the target number corresponding to the maximum rotation angle. Then, it programmatically sends simulated mouse drag commands via the device SDK or API to rotate the spherical camera a target number of times, using the maximum rotation angle as the unit, thus obtaining the proximity information of the spherical camera.
[0046] The third step is to determine the final position information of the spherical camera based on the aforementioned proximity position information and the aforementioned final drag position information. In practice, the executing entity can programmatically send simulated mouse drag commands through the device SDK or API based on the aforementioned final drag position information to rotate the spherical camera based on the aforementioned proximity position information, thereby obtaining the final position information of the spherical camera.
[0047] Step 104: In response to determining that the rotation mode of the spherical camera is the second rotation mode, the following steps are performed based on the target angle information:
[0048] Step 1041: Based on the target angle information and the preset position information group, determine the preset position information in the preset position information group that meets the preset position selection conditions as the target preset position information.
[0049] In some embodiments, the execution entity can determine the preset position information that satisfies the preset position selection condition in the preset position information group as the target preset position information, based on the target angle information and the preset position information group. The preset position information in the preset position information group can represent the preset position of the spherical camera stored in advance. The preset position selection condition can be the condition where the difference between the direction angle corresponding to the preset position information and the final position information of the spherical camera is minimized. The second rotation method can represent the method of rotating the spherical camera according to the preset position information group. In practice, firstly, the execution entity can determine the sum of the target angle information and the direction angle corresponding to the initial preset position information as the target value. Then, the modulus of the target value and 360° is determined as the final position information of the spherical camera. Finally, the preset position with the smallest difference between the corresponding direction angle in the preset position information group and the final position information of the spherical camera is determined as the target preset position information.
[0050] Optionally, after step 1041, the aforementioned execution entity may generate the aforementioned preset bit information group through the following steps:
[0051] The first step is to determine the preset deflection angle information as the target deflection angle information. The preset deflection angle information can represent a pre-set angle. The preset deflection angle information can be 0. The target deflection angle information can represent the difference between the orientation angle corresponding to the initial preset position information and the orientation angle of the spherical camera at the current moment.
[0052] The second step is to determine the above-mentioned initial preset bit information as the target initial preset bit information.
[0053] Third, in response to the determination that the target deflection angle information does not meet the preset constraints, the following update steps are performed on the above-mentioned spherical camera based on the target's initial preset position information and the target deflection angle information:
[0054] The first sub-step involves determining the subsequent preset position information of the spherical camera based on the initial preset position information of the target and the aforementioned maximum field of view. This subsequent preset position information characterizes the position parameters of the spherical camera after rotating it from the initial preset position information of the target by the aforementioned maximum rotation angle. In practice, the executing entity first rotates the spherical camera by the aforementioned maximum rotation angle based on the initial preset position information of the target. Then, the position of the rotated spherical camera is determined as the subsequent preset position information of the spherical camera. This position characterizes the azimuth and pitch angles of the spherical camera.
[0055] The second sub-step involves updating the target deflection angle information based on the target deflection angle information and the maximum field of view, resulting in updated target deflection angle information. In practice, the executing entity can determine the sum of the target deflection angle information and the maximum rotation angle information as the updated target deflection angle information for updating the target deflection angle information.
[0056] The third sub-step is to store the aforementioned subsequent preset bit information as preset bit information into the preset bit information group.
[0057] Fourth, in response to the determination that the updated target deflection angle information does not meet the above-mentioned preset constraint conditions, the above-mentioned subsequent preset position information is used as the target initial preset position information, and the above-mentioned updated target deflection angle information is used as the target deflection angle information, and the above-mentioned update steps are executed again. The above-mentioned preset constraint conditions can be that the target deflection angle information is greater than or equal to 360°.
[0058] Step 1042: Generate the rotation angle information of the corresponding spherical camera based on the target preset position information.
[0059] In some embodiments, the executing entity can generate the rotation angle information corresponding to the spherical camera based on the target preset position information. The rotation angle information can represent the difference between the orientation angle in the target preset position information and the final position information. In practice, the executing entity can first determine the difference between the final position information of the spherical camera and the orientation angle in the target preset position information as the rotation angle information corresponding to the spherical camera.
[0060] Step 1043: Generate the final position information of the spherical camera based on the rotation angle information.
[0061] In some embodiments, the execution entity can generate the final position information of the spherical camera based on the aforementioned rotation angle information. In practice, firstly, the execution entity can return the spherical camera to a preset target position. Then, based on the ratio between the aforementioned rotation angle information and the aforementioned maximum rotation angle information, a simulated mouse drag command is programmatically sent via the device SDK or API to rotate the spherical camera. Finally, the orientation angle of the rotated spherical camera is determined as the final position information of the spherical camera.
[0062] In the process of adopting technical solutions to address the aforementioned technical problems, the following technical problem often arises: When controlling the spherical camera using a fixed theoretical rotation speed, the control process does not consider overshoot and inertia issues during the motor's start-up and shutdown phases. During the stopping phase after high-speed rotation, overshoot can easily cause the camera to deviate from the target position, resulting in incomplete image acquisition and target object tracking failure. This necessitates readjustment of the spherical camera, increasing system operation time and resource consumption. The conventional solution to this second technical problem is to control the spherical camera's rotation at a fixed, reasonable rotation speed. However, considering the drawbacks of controlling the spherical camera's rotation at a fixed speed, and leveraging the advantages of our company in developing position information generation for spherical cameras, we have decided to adopt the following solution:
[0063] Step 105: In response to determining that the rotation mode of the spherical camera is the third rotation mode, the final position information of the spherical camera is generated based on the third rotation mode and the target angle information.
[0064] In some embodiments, in response to determining that the rotation mode of the spherical camera is a third rotation mode, the execution entity can generate the final position information of the spherical camera based on the third rotation mode and the target angle information. The third rotation mode can characterize the method of rotating the spherical camera according to a first preset rotation speed and a second preset rotation speed.
[0065] In some optional implementations of certain embodiments, in response to determining that the rotation mode of the spherical camera is a third rotation mode, the execution entity can generate the final position information of the spherical camera based on the third rotation mode and the target angle information through the following steps:
[0066] The first step involves rotating the spherical camera according to a first preset rotation speed and a first preset target position, in response to determining that the target angle information satisfies a preset angle information condition. This rotation process yields the first angle step time information of the spherical camera. The preset angle information condition can be that the target angle information is greater than or equal to a preset value. The specific value of the preset value is not limited here. For example, the preset value can be 10°. The first preset rotation speed represents the rotation speed of the spherical camera when the target angle information satisfies the preset angle information condition. The first preset rotation speed can be at level 4. The specific value of the first preset rotation speed is not limited here. For example, the first preset rotation speed can be 15° / second. The first preset target position can be the orientation angle of the spherical camera after rotating it by a preset angle according to the first preset rotation speed. The preset angle can be 360°. The first angle step time information represents the time required for the spherical camera to rotate 1 degree according to the first preset rotation speed. In practice, firstly, the executing entity can determine the time taken for the spherical camera to rotate to the first target preset position at the first preset rotation speed as the target duration. Then, the ratio between the determined target duration and the preset angle is determined as the first angular step time information.
[0067] The second step is to determine the obtained first angle step time information as the target angle step time information.
[0068] The third step is to determine the first preset rotation speed as the target preset rotation speed.
[0069] Fourth, based on the target angle information, target angle step time information, and target preset rotation speed mentioned above, perform the following supplementary steps:
[0070] The first sub-step involves determining the first rotation duration information of the spherical camera rotating to the target scene based on the aforementioned target angle information and target angle step time information. This first rotation duration information characterizes the time taken for the spherical camera to rotate from the initial preset position information to the target angle information according to the aforementioned target angle step time information. In practice, the executing entity can determine the first rotation duration information of the spherical camera rotating to the target scene by multiplying the aforementioned target angle information and the aforementioned target angle step time information.
[0071] The second sub-step involves controlling the spherical camera to rotate based on the first rotation duration information and the target preset rotation speed, resulting in a rotated spherical camera. In practice, the executing entity can rotate the spherical camera at the target preset rotation speed to obtain the rotated spherical camera after considering the first rotation duration information.
[0072] The third sub-step involves determining the orientation angle information of the rotated spherical camera as the final position information of the spherical camera. This orientation angle information characterizes the orientation angle of the rotated spherical camera.
[0073] Fifth step: In response to the determination that the target angle information does not meet the preset angle information condition, the spherical camera is rotated according to the second preset rotation speed and the first target preset position to obtain the second angle step time information of the spherical camera. The second preset rotation speed can represent a pre-set rotation speed of the spherical camera when the target angle information does not meet the preset angle information condition. The second preset rotation speed can be at level 1. The specific value of the second preset rotation speed is not limited here. For example, the second preset rotation speed can be 1° / second. The second angle step time information can represent the time required for the spherical camera to rotate 1 degree at the second preset rotation speed. In practice, firstly, the executing entity can determine the time it takes for the spherical camera to rotate to the first target preset position at the second preset rotation speed as the first duration. Then, the ratio between the first duration and the preset angle is determined as the second angle step time information.
[0074] Step 6: Use the obtained second angle step time information as the target angle step time information, and the above-mentioned second preset rotation speed as the target preset rotation speed, and execute the above supplementary steps again.
[0075] The above technical solution, as an inventive point of this disclosure, solves technical problem two: "Incomplete image acquisition leads to target object tracking failure, increasing system operation time and resource consumption." The reasons for poor alignment accuracy, incomplete image acquisition, target object tracking failure, and increased system operation time and resource consumption are as follows: Using a fixed theoretical rotation speed value to control the spherical camera does not consider overshoot and inertia issues during motor start-up and shutdown. When the target angle information is small, the stopping phase after high-speed rotation is prone to overshoot, causing deviation from the target position, resulting in incomplete image acquisition and target object tracking failure. This necessitates readjustment of the spherical camera, increasing system operation time and resource consumption. Solving these factors ensures complete image acquisition, thereby improving the alignment accuracy of the spherical camera and reducing system operation time and resource consumption. To achieve this effect, the position information generation method for a spherical camera disclosed herein firstly, in response to determining that the target angle information meets a preset angle information condition, controls the spherical camera to rotate at a specified relatively fast speed; and in response to determining that the target angle information does not meet the preset angle information condition, controls the spherical camera to rotate at the slowest speed, obtaining the time required for rotation of 1 degree at each speed. Then, based on the speed of the corresponding target angle information and the time required for rotation of 1 degree, the spherical camera is rotated into position at a fixed speed. This ensures complete image acquisition, thereby improving the alignment accuracy of the spherical camera and reducing system operation time and resource consumption.
[0076] Step 106: Control the spherical camera to capture image information of the target scene.
[0077] In some embodiments, the aforementioned executing entity can control the aforementioned spherical camera to capture image information of the target scene. The aforementioned image information can represent the captured image of the target scene.
[0078] In the process of adopting technical solutions to address the aforementioned technical problems, the following technical problem three often arises: Existing PTZ camera control solutions have poor adaptability and are difficult to effectively adapt to the differences in PTZ characteristics of different devices (especially older or non-standard devices). This leads to large cumulative errors and inaccurate positioning in the control process, resulting in the inability to align with the target object's position information in the target scene. This necessitates readjustment of the spherical camera, increasing the system's operation time and resource consumption. To address this technical problem three, the conventional solution is to pre-calibrate multiple preset positions to fit the control model, thereby adapting it to different devices. However, considering the shortcomings of pre-calibrating multiple preset positions to fit the control model and adapting it to different devices, and combining the advantages of the inventor's company in the research and development of position information generation for spherical cameras, we have decided to adopt the following solution:
[0079] Optionally, after step 106, firstly, the current shooting settings information of the spherical camera is obtained. This current shooting settings information can characterize the azimuth angle, pitch angle, and field of view of the spherical camera in its current state. The pitch angle can be a fixed value.
[0080] Next, based on the current shooting settings and the second target preset position, the spherical camera is rotated to obtain updated shooting settings. The second target preset position represents the position of the spherical camera after rotating by a target preset angle. The specific value of the target preset angle is not limited; for example, it can be 180°. The updated shooting settings represent the azimuth angle, pitch angle, and field of view of the rotated spherical camera. In practice, the executing entity can rotate the spherical camera to the second target preset position at the first preset rotation speed, and determine the time taken for the spherical camera to rotate to the second target preset position as the second duration. Finally, the azimuth angle, pitch angle, and field of view after rotating to the second target preset position are determined as the updated shooting settings.
[0081] Then, based on the current shooting settings and the updated shooting settings, the angular step time information of the spherical camera is determined. This angular step time information represents the time required for the spherical camera to rotate 1 degree. In practice, the executing entity can determine the angular step time information as the ratio between the second duration and the preset position of the first target.
[0082] Subsequently, based on the target object position information and the updated shooting settings information, the target rotation angle information of the spherical camera is determined. This target rotation angle information represents the angle required to rotate from the azimuth angle in the updated shooting settings information to the angle necessary for effective observation of the target object. In practice, the executing entity can determine the target rotation angle information of the spherical camera as the difference between the aforementioned angle information and the azimuth angle in the updated shooting settings information.
[0083] Secondly, based on the aforementioned step time information and target rotation angle information, the second rotation duration information of the spherical camera is determined. This second rotation duration information characterizes the time consumed by the spherical camera to rotate around the target rotation angle. In practice, the executing entity can determine the second rotation duration information of the spherical camera as the product of the aforementioned step time information and the target rotation angle information.
[0084] Then, based on the second rotation duration information mentioned above, the spherical camera is controlled to rotate, resulting in a rotated spherical camera. In practice, the execution entity can rotate the spherical camera using the first preset rotation speed and the second rotation duration information to obtain a rotated spherical camera.
[0085] Finally, the orientation angle information of the rotated spherical camera is determined as the final position information of the spherical camera.
[0086] The above-described technical solution, as an inventive point of this disclosure, solves technical problem three: "The control process suffers from large cumulative errors and inaccurate positioning, which leads to the inability to align with the target object's position information in the target scene, increasing the system's operation time and resource consumption." The reasons for this large cumulative error and inaccurate positioning in the control process, leading to the inability to align with the target object's position information in the target scene and increasing the system's operation time and resource consumption, are as follows: Existing PTZ camera control schemes have poor adaptability and are difficult to effectively adapt to the PTZ characteristics of different devices (especially old or non-standard devices), resulting in large cumulative errors and inaccurate positioning in the control process. This leads to the inability to align with the target object's position information in the target scene, requiring further adjustments to the spherical camera, increasing the system's operation time and resource consumption. Solving these factors can reduce the cumulative errors in the control process, improve positioning accuracy, and thus enable precise alignment with the target object's position information in the target scene. To achieve this effect, the position information generation method for a spherical camera disclosed in this disclosure first rotates the spherical camera at a fixed speed and a specified angle, while simultaneously recording the rotation time. Then, the angular step time information of the spherical camera is determined based on the specified angle and rotation duration. Next, based on the angular step time information and the target angle information, the rotation duration information for the spherical camera to rotate into position is determined. Finally, based on the rotation duration information, the spherical camera is rotated into position at a fixed speed. This reduces accumulated errors during the control process, improves positioning accuracy, and enables precise alignment with the target object's position in the target scene, thereby reducing system operation time and resource consumption.
[0087] The above-described embodiments of this disclosure have the following beneficial effects: Through the method for generating position information of a spherical camera according to some embodiments of this disclosure, the CPU or GPU resources consumed can be reduced, the accuracy of the spherical camera's rotation can be improved, and the target object in the acquired image can be complete, thus reducing the system's operation time and resource consumption. Specifically, the reason for consuming a large amount of CPU or GPU resources, resulting in low accuracy of the spherical camera's rotation, and consequently incomplete target objects in the acquired image, leading to target object tracking failure and increased system operation time and resource consumption, is that: when controlling the spherical camera's rotation using a box selection method, the system needs to rotate the spherical camera through target detection and coordinate transformation, resulting in the consumption of a large amount of CPU or GPU resources; and the system's coordinate transformation (calculating target angle information based on the pixel coordinates of the box selection position) has a large error, resulting in low accuracy of the spherical camera's rotation, and consequently incomplete target objects in the acquired image, leading to target object tracking failure, requiring readjustment of the spherical camera, increasing system operation time and resource consumption. Based on this, the method for generating position information of a spherical camera according to some embodiments of this disclosure first initializes the spherical camera's shooting settings information according to preset shooting settings information. Therefore, the state of the spherical camera when it returns to its initial preset position and its field of view is scaled to its maximum can be obtained. Then, based on the aforementioned preset shooting settings and target object position information, the target angle information of the spherical camera is generated. Thus, the angle required for the spherical camera to rotate to the target object position in the target scene can be obtained. Next, in response to determining that the rotation mode of the spherical camera is a first rotation mode, the final position information of the spherical camera is generated based on the first rotation mode and the target angle information. Thus, the spherical camera can be rotated to its final position using the first rotation mode, obtaining the final position information of the spherical camera. Next, in response to determining that the rotation mode of the spherical camera is a second rotation mode, the following steps are performed based on the target angle information: First, based on the target angle information and the preset position information group, the preset position information in the preset position information group that meets the preset position selection conditions is determined as the target preset position information. Thus, the target preset position to which the spherical camera should rotate can be obtained. Next, based on the target preset position information, the corresponding supplementary rotation angle information of the spherical camera is generated. Therefore, the additional rotation angle after rotating to the target preset position can be obtained. Then, based on the above additional rotation angle information, the final position information of the spherical camera is generated. Thus, the spherical camera can be rotated to the position using the second rotation method to obtain the final position information of the spherical camera. Finally, in response to determining that the above spherical camera rotation method is the third rotation method, the final position information of the spherical camera is generated based on the above third rotation method and the above target angle information.Therefore, the spherical camera can be rotated to its final position using a third rotation method, obtaining its final position information. Because the spherical camera rotation is not controlled by selecting a frame, target detection and coordinate transformation are unnecessary. Instead, the rotation control is directly based on the acquired target object's position information (geographic coordinates: latitude and longitude), improving the alignment accuracy, reducing the time required to rotate to the final position, and decreasing CPU or GPU resource consumption. Furthermore, since the final position can be achieved using target preset position information and supplementary rotation angle information, the spherical camera can be directly controlled to rotate to the target preset position (a large-angle rotation), and then controlled to rotate to the final position using the supplementary rotation angle information (a small-angle rotation). This large-angle rotation shortens the time required to control the spherical camera to the final position, while the small-angle rotation improves the accuracy of the final position, reducing the need for further adjustments to the spherical camera, shortening system operation time, and reducing resource consumption. This reduces the CPU or GPU resources used, improves the accuracy of the spherical camera's rotation, and ensures that the target object is complete in the captured image, thus reducing the system's operation time and resource consumption.
[0088] Further reference Figure 2 As an implementation of the methods shown in the above figures, this disclosure provides some embodiments of a method for generating position information of a spherical camera. These device embodiments are similar to... Figure 1 Corresponding to the method embodiments shown, the device can be specifically applied to various electronic devices.
[0089] like Figure 2As shown, a spherical camera position information generation device 200 in some embodiments includes: an initialization unit 201, a first generation unit 202, a second generation unit 203, an execution unit 204, a third generation unit 205, and a control unit 206. The initialization unit 201 is configured to initialize the spherical camera's shooting settings information according to preset shooting settings information; the first generation unit 202 is configured to generate target angle information for the spherical camera according to the preset shooting settings information and target object position information; the second generation unit 203 is configured to generate the final position information of the spherical camera according to the first rotation mode and the target angle information in response to determining that the spherical camera's rotation mode is a first rotation mode; and the execution unit 204 is configured to execute the third generation unit 205 according to the target angle information in response to determining that the spherical camera's rotation mode is a second rotation mode. The steps are as follows: Based on the target angle information and the preset position information group, the preset position information that meets the preset position selection conditions in the preset position information group is determined as the target preset position information; based on the target preset position information, the corresponding rotation angle information of the spherical camera is generated; based on the rotation angle information, the final position information of the spherical camera is generated; the third generation unit 205 is configured to generate the final position information of the spherical camera based on the third rotation mode and the target angle information in response to determining that the rotation mode of the spherical camera is the third rotation mode; the control unit 206 is configured to control the spherical camera to capture image information of the target scene.
[0090] It is understandable that the units recorded in the position information generation device 200 of the spherical camera are related to the reference... Figure 1 The steps in the described method correspond to each other. Therefore, the operations, features, and beneficial effects described above for the method also apply to the dome camera position information generation device 200 and the units contained therein, and will not be repeated here.
[0091] The following is for reference. Figure 3 It shows a schematic diagram of the structure of an electronic device (such as a computing device) 300 suitable for implementing some embodiments of the present disclosure. Figure 3 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments of this disclosure.
[0092] like Figure 3As shown, the electronic device 300 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 301, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 302 or a program loaded from a storage device 308 into a random access memory (RAM) 303. The RAM 303 also stores various programs and data required for the operation of the electronic device 300. The processing unit 301, ROM 302, and RAM 303 are interconnected via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0093] Typically, the following devices can be connected to I / O interface 305: input devices 306 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 307 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 308 including, for example, magnetic tapes, hard disks, etc.; and communication devices 309. Communication device 309 allows electronic device 300 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 3 An electronic device 300 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively. Figure 3 Each box shown can represent a device or multiple devices as needed.
[0094] In particular, according to some embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, some embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 309, or installed from storage device 308, or installed from ROM 302. When the computer program is executed by processing device 301, it performs the functions defined in the methods of some embodiments of this disclosure.
[0095] It should be noted that, in some embodiments of this disclosure, the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In some embodiments of this disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In some embodiments of this disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0096] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0097] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently without being assembled into the electronic device. The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: initialize the shooting settings information of the spherical camera according to preset shooting settings information; generate target angle information of the spherical camera according to the preset shooting settings information and target object position information; in response to determining that the rotation mode of the spherical camera is a first rotation mode, generate the final position information of the spherical camera according to the first rotation mode and the target angle information; in response to determining that the rotation mode of the spherical camera is a second rotation mode, generate the final position information of the spherical camera according to the first rotation mode and the target angle information. Based on the target angle information, the following steps are performed: According to the target angle information and the preset position information group, the preset position information that meets the preset position selection conditions in the preset position information group is determined as the target preset position information; according to the target preset position information, the corresponding rotation angle information of the spherical camera is generated; according to the rotation angle information, the final position information of the spherical camera is generated; in response to determining that the rotation mode of the spherical camera is the third rotation mode, the final position information of the spherical camera is generated according to the third rotation mode and the target angle information; the spherical camera is controlled to capture image information of the target scene.
[0098] Computer program code for performing operations of some embodiments of this disclosure can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0099] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0100] The units described in some embodiments of this disclosure can be implemented in software or hardware. The described units can also be housed in a processor; for example, a processor may be described as including an initialization unit, a first generation unit, a second generation unit, an execution unit, a third generation unit, and a control unit. The names of these units do not necessarily limit the specific unit; for example, the initialization unit may also be described as "a unit that initializes the shooting settings information of a spherical camera according to preset shooting settings information."
[0101] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0102] The above description is merely a selection of preferred embodiments of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in the embodiments of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features with similar functions disclosed in the embodiments of this disclosure.
Claims
1. A method for generating position information for a spherical camera, comprising: The shooting settings of the dome camera are initialized based on the preset shooting settings. Based on the preset shooting settings and the target object position information, the target angle information of the spherical camera is generated; In response to determining that the rotation mode of the spherical camera is a first rotation mode, the final position information of the spherical camera is generated based on the first rotation mode and the target angle information; In response to determining that the rotation mode of the spherical camera is the second rotation mode, the following steps are performed based on the target angle information: Based on the target angle information and the preset position information group, the preset position information in the preset position information group that meets the preset position selection conditions is determined as the target preset position information; Based on the target preset position information, generate the corresponding rotation angle information of the spherical camera; Based on the rotation angle information, the final position information of the spherical camera is generated; in response to determining that the rotation mode of the spherical camera is the third rotation mode, the final position information of the spherical camera is generated based on the third rotation mode and the target angle information. Control the spherical camera to capture image information of the target scene.
2. The method according to claim 1, wherein the step of generating the final position information of the spherical camera based on the first rotation mode and the target angle information, in response to determining that the rotation mode of the spherical camera is a first rotation mode, includes: Based on the target angle information and the preset shooting settings, determine the number of drags and the final drag position information of the 3D gimbal; Based on the number of drags, determine the proximity information of the spherical camera; The final position information of the spherical camera is determined based on the nearby position information and the final drag position information.
3. The method according to claim 1, wherein the preset shooting settings information includes initial preset position information and maximum field of view; The initialization process for the shooting settings information of the spherical camera based on preset shooting settings information includes: The spherical camera is rotated according to the initial preset position information; The field of view of the spherical camera after rotation is scaled to the maximum field of view.
4. The method according to claim 1, wherein generating the target angle information of the spherical camera based on the preset shooting settings information and the target object position information includes: Obtain the spherical camera coordinate information and the target object position information within the target scene; Based on the coordinate information of the spherical camera and the position information of the target object, determine the angle information between the coordinate information of the spherical camera and the position information of the target object; Based on the angle information and the preset shooting settings, the target angle information of the spherical camera is generated.
5. The method according to claim 1, wherein, The steps for generating the preset bit information group are as follows: The preset deflection angle information is determined as the target deflection angle information; The initial preset bit information is determined as the target initial preset bit information; In response to the determination that the target deflection angle information does not meet the preset constraints, the following update steps are performed on the spherical camera based on the target's initial preset position information and the target deflection angle information: Based on the initial preset position information of the target and the maximum field of view, the subsequent preset position information of the spherical camera is determined; The target deflection angle information is updated based on the target deflection angle information and the maximum field of view to obtain the updated target deflection angle information. The subsequent preset bit information is stored as preset bit information in the preset bit information group; In response to the determination that the updated target deflection angle information does not meet the preset constraint conditions, the subsequent preset position information is used as the target initial preset position information, and the updated target deflection angle information is used as the target deflection angle information, and the update step is executed again.
6. A location information generation device for a dome camera, comprising: The initialization unit is configured to initialize the shooting settings information of the spherical camera according to the preset shooting settings information; The first generation unit is configured to generate the target angle information of the spherical camera based on the preset shooting settings information and the target object position information; The second generation unit is configured to generate the final position information of the spherical camera in response to determining that the rotation mode of the spherical camera is a first rotation mode, based on the first rotation mode and the target angle information; The execution unit is configured to, in response to determining that the rotation mode of the spherical camera is a second rotation mode, perform the following steps based on the target angle information: determining the preset position information in the preset position information group that meets the preset position selection conditions as target preset position information based on the target angle information and the preset position information group; generating the supplementary rotation angle information corresponding to the spherical camera based on the target preset position information; and generating the final position information of the spherical camera based on the supplementary rotation angle information. The third generation unit is configured to generate the final position information of the spherical camera in response to determining that the rotation mode of the spherical camera is a third rotation mode, based on the third rotation mode and the target angle information; The control unit is configured to control the spherical camera to capture image information of the target scene.
7. An electronic device, comprising: One or more processors; A storage device on which one or more programs are stored; When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1 to 5.
8. A computer-readable medium having a computer program stored thereon, wherein, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 5.