Panoramic image synthesis method, device and electronic equipment
By receiving and synthesizing the basic images and orientation information taken by the 3D scanner, the problem of insufficient panoramic image information is solved, and the rich display of the location information of specific points in the panoramic image is achieved, thereby improving the user experience.
Patent Information
- Application Number
- CN202111203488.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-15
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2041-10-15
AI Technical Summary
In the prior art, it is difficult for methods of synthesizing panoramic images to effectively utilize the orientation information of specific points in a basic image captured by a three-dimensional scanner, resulting in insufficient information in the synthesized panoramic image.
By receiving the basic image and orientation information transmitted by the 3D scanner, a panoramic image containing the actual position and orientation information of specific points is synthesized. The actual position information of specific points in the image is collected using an electronic compass and camera, and a panoramic image is synthesized based on this information.
The information content of the panoramic image is enriched, and users can more flexibly view the actual position and orientation information of any point in the image, thereby improving the display effect of the panoramic image.
Smart Images

Figure CN113947522B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to the field of computer technology, and more particularly, to a panoramic image synthesis method, device, and electronic device. Background Art
[0002] Panoramic images can present content to users with a three-dimensional visual effect. In some situations, using panoramic images to display content to users plays a vital role. Therefore, various methods for synthesizing panoramic images have emerged.
[0003] In the related art, the captured images are directly synthesized into a panoramic image. Summary of the Invention
[0004] This disclosure section is provided to briefly introduce concepts that will be described in detail in the detailed description section below. This disclosure section is not intended to identify key features or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.
[0005] The embodiments of the present disclosure provide a method, apparatus, and electronic device for synthesizing a panoramic image, which can enrich the information contained in the synthesized panoramic image.
[0006] In a first aspect, an embodiment of the present disclosure provides a method for synthesizing a panoramic image, the method comprising: receiving transmission data from a three-dimensional scanner, wherein the transmission data comprises: a target number of basic images taken by the three-dimensional scanner; orientation information of the actual position indicated by a specific point in each basic image captured by the three-dimensional scanner; and based on the above target number of basic images, synthesizing a panoramic image containing a target number of specific points, and each specific point indicating an actual position with orientation information.
[0007] In the second aspect, an embodiment of the present disclosure provides a panoramic image synthesis device, which includes: a receiving unit for receiving transmission data from a three-dimensional scanner, wherein the transmission data includes: a target number of basic images taken by the three-dimensional scanner; orientation information of the actual position indicated by a specific point in each basic image captured by the three-dimensional scanner; and a synthesis unit for synthesizing, based on the above target number of basic images, a panoramic image containing a target number of specific points, and each specific point indicating an actual position with orientation information.
[0008] In a third aspect, an embodiment of the present disclosure provides an electronic device comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the panoramic image synthesis method as described in the first aspect.
[0009] In a fourth aspect, an embodiment of the present disclosure provides a computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the panoramic image synthesis method as described in the first aspect.
[0010] The panoramic image synthesis method, apparatus, and electronic device provided by the embodiments of the present disclosure can receive a target number of base images captured by a 3D scanner, along with the positional information of the actual locations indicated by specific points in each captured base image. Furthermore, based on these target number of base images, a panoramic image can be synthesized that includes a target number of specific points, each with positional information indicating the actual location. This enriches the information contained in the synthesized panoramic image. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The above and other features, advantages, and aspects of the various embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and that the originals and elements are not necessarily drawn to scale.
[0012] Figure 1 is a flow chart of some embodiments of the panoramic image synthesis method disclosed herein;
[0013] Figure 2 is a flow chart of capturing a basic image and collecting orientation information using a three-dimensional scanner in some embodiments of the panoramic image synthesis method disclosed herein;
[0014] Figure 3 is a flow chart showing target orientation information in some embodiments of the panoramic image synthesis method disclosed herein;
[0015] Figure 4 is a flowchart showing a target partial image in some embodiments of the panoramic image synthesis method of the present disclosure;
[0016] Figure 5 is a schematic structural diagram of some embodiments of the panoramic image synthesis device disclosed herein;
[0017] Figure 6 is an exemplary system architecture in which the panoramic image synthesis method of the present disclosure may be applied in some embodiments;
[0018] Figure 7 is a schematic diagram of a basic structure of an electronic device provided according to some embodiments of the present disclosure. DETAILED DESCRIPTION
[0019] The following describes embodiments of the present disclosure in more detail with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.
[0020] It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this respect.
[0021] As used herein, the term "including" and its variations are open-ended, i.e., "including but not limited to." The term "based on" means "based, at least in part, on." The term "one embodiment" means "at least one embodiment," the term "another embodiment" means "at least one additional embodiment," and the term "some embodiments" means "at least some embodiments." Other terms are defined in the following description.
[0022] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.
[0023] It should be noted that the modifications of "one" and "multiple" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, they should be understood as "one or more".
[0024] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.
[0025] Please refer to Figure 1 , which shows the process of some embodiments of the panoramic image synthesis method according to the present disclosure. Figure 1 As shown, the panoramic image synthesis method includes the following steps:
[0026] Step 101: receiving transmission data from a three-dimensional scanner.
[0027] The above-mentioned transmission data is the data transmitted by the 3D scanner to the terminal device. The transmission data includes: a target number of basic images captured by the 3D scanner; and the position information of the actual position indicated by the specific point in each basic image captured by the 3D scanner.
[0028] Any point in the base image can indicate the corresponding actual position. The specific point is a point pre-specified from the base image. Optionally, the specific point can be the center point in the base image.
[0029] Direction information can include "due south," "due north," "due west," "due east," "northwest," and so on. This indicates that direction information can represent the specific location of a position. For example, if the direction information for actual location A indicated by a specific point in an image is "northwestwest," then actual location A is located at a direction of 20 degrees northwest.
[0030] The three-dimensional scanner can stop at a target number of positions during a 360-degree rotation, capture a basic image at each stop position, and collect orientation information of the actual position indicated by a specific point in the basic image.
[0031] The 3D scanner may capture each basic image and collect the orientation information of the actual position indicated by a specific point in the basic image, and transmit the basic image and orientation information to the terminal device once. The 3D scanner may also capture a target number of basic images and collect the orientation information of the actual position indicated by a specific point in each basic image, and then transmit all the basic images and orientation information to the terminal device.
[0032] After the three-dimensional scanner transmits the above data to the terminal device, the execution subject of the panoramic image synthesis method can receive the above transmitted data.
[0033] Step 102 : Based on the target number of basic images, a panoramic image is synthesized, which includes a target number of specific points, and each specific point indicates an actual position with orientation information.
[0034] The execution subject may synthesize a panoramic image containing a target number of specific points based on the target number of basic images, wherein the panoramic image includes the target number of specific points, and the actual position indicated by each specific point has orientation information.
[0035] As mentioned above, the actual position indicated by the specific point in each base image has orientation information. Therefore, based on the target number of base images, a panoramic image containing the target number of specific points, each of which indicates an actual position with orientation information, can be synthesized.
[0036] In this embodiment, when capturing a base image, the 3D scanner can collect azimuth information about the actual locations indicated by specific points in the base image. Furthermore, based on a desired number of base images captured by the 3D scanner, a panoramic image can be synthesized that includes a desired number of specific points, each with azimuth information about the actual location indicated by the specific points. This enriches the information contained in the synthesized panoramic image.
[0037] In some embodiments, the three-dimensional scanner has a camera and an electronic compass, wherein the camera is used to capture a basic image, and the electronic compass is used to capture orientation information of an actual position indicated by a specific point in the basic image.
[0038] 3D scanners can be used according to Figure 2 The process shown in FIG. 1 is to shoot the target number of basic images and collect the orientation information of the actual position indicated by the specific point in each basic image. The process includes the following steps.
[0039] Step 201: In response to receiving a shooting instruction for shooting a target number of basic images from a terminal device, a shooting step is executed, wherein the shooting step includes steps 2011 and 2012.
[0040] Step 2011: The ratio of 360 degrees to the target number is used as the single rotation angle.
[0041] As an example, if the target number is 10, then the single rotation angle is the ratio of 360 degrees to 10 (ie, 36 degrees).
[0042] Step 2012: During the 360-degree rotation, a basic image is captured using a camera for each single rotation angle, and an electronic compass is used to collect the orientation information of the actual position indicated by a specific point in the basic image.
[0043] Thus, by issuing a capture command to the 3D scanner to capture a target number of base images, the 3D scanner can capture a base image for each rotation of a certain angle (i.e., a single rotation angle) during its 360-degree rotation, and collect the orientation information of the actual position indicated by a specific point in the base image. This allows the terminal device to control the 3D scanner to capture base images and collect orientation information through a simple process.
[0044] In some embodiments, the specific point is actually a center point in the base image, and the electronic compass is set at a position corresponding to the center of the camera.
[0045] The three-dimensional scanner can use an electronic compass to collect the orientation information of the actual position indicated by a specific point in the base image in the following manner.
[0046] Specifically, the orientation information collected by the electronic compass is used as the orientation information of the actual position indicated by the specific point in the basic image.
[0047] Thus, by setting the electronic compass at a position corresponding to the center of the camera, the three-dimensional scanner can use the camera to collect the orientation information of the actual position indicated by the center point in the basic image.
[0048] In some embodiments, the above execution entity may be Figure 3 The process shown in FIG. 1 is to execute a panoramic image synthesis method, and the process includes the following steps.
[0049] Step 301: Receive transmission data from a three-dimensional scanner.
[0050] Step 302 : Based on the target number of basic images, a panoramic image is synthesized, which includes a target number of specific points, and each specific point indicates an actual position with orientation information.
[0051] In some scenarios, the execution of steps 301 to 302 is similar to Figure 1 The execution of steps 101 to 102 in the illustrated embodiment is similar and will not be described again here.
[0052] Step 303 : In response to the orientation information viewing operation for any point in the panoramic image, a first specific point and a second specific point on both sides of the arbitrary point are determined.
[0053] The position information viewing operation can be used to view the target position information of the actual position indicated by the above arbitrary point.
[0054] The panoramic image is synthesized from a target number of basic images. Therefore, a first specific point and a second specific point are distributed on both sides of any point in the panoramic image.
[0055] The position information of the actual position indicated by the first specific point is the first position information. The position information of the actual position indicated by the second specific point is the second position information.
[0056] Step 304: Determine a first distance from the arbitrary point to the first specific point, and determine a second distance from the arbitrary point to the second specific point.
[0057] Step 305 : Based on the first distance and the second distance, determine the target orientation information of the actual position indicated by the arbitrary point within the orientation information range between the first orientation information and the second orientation information.
[0058] Since the arbitrary point is located between the first specific point and the second specific point, the target orientation information is located between the first orientation information and the second orientation information.
[0059] Step 306: Display target position information.
[0060] In this way, the user can view the target orientation information of the actual position indicated by any point in the panoramic image, thereby enabling the user to flexibly view the orientation information of the actual position indicated by any point in the panoramic image.
[0061] In some embodiments, the execution entity may determine the target orientation information of the actual position indicated by any point in the panoramic image in the following manner.
[0062] In the first step, according to the distance ratios of the first distance and the second distance respectively, the angle between the first orientation information and the second orientation information is divided into a first angle between the target orientation information and the first orientation information and a second angle between the target orientation information and the second orientation information.
[0063] It is understood that the distance ratio occupied by the first distance may be the ratio of the first distance to the total distance (ie, the sum of the first distance and the second distance). The distance ratio occupied by the second distance may be the ratio of the second distance to the total distance.
[0064] As an example, the first distance between the arbitrary point and the first specific point is a, the second distance between the arbitrary point and the second specific point is b, and the angle between the first orientation information and the second orientation information is α. The execution entity can divide the angle α into the first angle between the target orientation information and the first orientation information and the second angle between the target orientation information and the second orientation information
[0065] In the second step, based on the first included angle and the second included angle, target orientation information is determined within an orientation information range between the first orientation information and the second orientation information.
[0066] It can be understood that after determining the first angle (the angle between the target orientation information and the first orientation information) and the second angle (the angle between the target orientation information and the second orientation information), the target orientation information of any of the above points can be determined from the orientation information range between the first orientation information and the second orientation information.
[0067] For example, if the first direction is due north, the second direction is due east, and the target direction has a first angle of 30 degrees with the first direction and a second angle of 60 degrees with the second direction, the execution entity may determine that the target direction is "30 degrees east of north."
[0068] This allows the target orientation information of the actual position indicated by any point to be reasonably determined based on the distance ratio between the arbitrary point and the two specific points distributed on both sides. Therefore, the orientation information of the actual position indicated by any point in the panoramic image can be determined more accurately.
[0069] In some embodiments, the above execution entity may be Figure 4 The process shown in FIG. 1 is to execute a panoramic image synthesis method, and the process includes the following steps.
[0070] Step 401: Receive transmission data from a three-dimensional scanner.
[0071] Step 402 : Based on the target number of basic images, a panoramic image is synthesized, which includes a target number of specific points, and each specific point indicates an actual position with orientation information.
[0072] In some scenarios, the execution of steps 401 to 402 is similar to Figure 1 The execution of steps 101 to 102 in the illustrated embodiment is similar and will not be described again here.
[0073] Step 403: In response to receiving the third position information provided by the user, determine, from the target number of specific points, a third specific point and a fourth specific point whose position information indicates the actual position and is located on both sides of the third position information.
[0074] Optionally, the third position information is position information selected by the user from preset position information, or is position information input by the user in an input control.
[0075] The orientation information of the actual position indicated by the third specific point is the fourth orientation information. The orientation information of the actual position indicated by the fourth specific point is the fifth orientation information. It can be understood that the third orientation information is located between the fourth orientation information and the fifth orientation information.
[0076] Step 404: Determine a third angle formed by the third orientation information and the fourth orientation information, and determine a fourth angle formed by the third orientation information and the fifth orientation information.
[0077] Step 405 : Based on the third included angle and the fourth included angle, determine that the orientation information of the actual position indicated is the target point of the third orientation information on the target line segment between the third specific point and the fourth specific point.
[0078] Step 406 : Display the target partial image in the panoramic image according to the target point.
[0079] Thus, based on the third-party position information provided by the user, a target partial image in the panoramic image is displayed to the user, thereby enabling the user to use the panoramic image to view the general situation around a certain position information.
[0080] In some embodiments, the execution entity may determine the target point in the following manner.
[0081] In the first step, according to the angle ratios of the third angle and the fourth angle respectively, the distance between the third specific point and the fourth specific point is divided into a third distance between the target point and the third specific point and a fourth distance between the target point and the fourth specific point.
[0082] It is understood that the angle ratio occupied by the first angle may be the ratio of the first angle to the total angle (the sum of the first angle and the second angle), and the angle ratio occupied by the second angle may be the ratio of the second angle to the total angle.
[0083] As an example, the third angle formed by the third orientation information and the fourth orientation information is α1, the fourth angle formed by the third orientation information and the fifth orientation information is α2, and the distance between the third specific point and the fourth specific point is c. The above execution entity can divide the distance c into the third distance between the target point and the third specific point and the fourth distance between the target point and the fourth specific point
[0084] In the second step, based on the third distance and the fourth distance, a target point is determined on the target line segment between the third specific point and the fourth specific point.
[0085] It can be understood that after determining the third distance (the distance between the target point and the third specific point on the target line segment) and the fourth distance (the distance between the target point and the fourth specific point on the target line segment), the target point can be determined from the target line segment between the third specific point and the fourth specific point. In this way, the target point can be reasonably determined based on the angle ratio of the angle between the third orientation information and the two orientation information distributed on both sides. Thus, it can be more accurately determined from the target line segment that the orientation information of the actual position indicated is the target point of the third orientation information provided by the user, thereby improving the accuracy of displaying the target local image to the user.
[0086] In some embodiments, the specific point is a center point in the base image. In this case, the execution subject may display the target partial image in the panoramic image in the following manner.
[0087] Specifically, the target point is used as the center point of the local image to display the target local image in the panoramic image.
[0088] Further references Figure 5 As an implementation of the methods shown in the above figures, the present disclosure provides some embodiments of a panoramic image synthesis device. Figure 1 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.
[0089] like Figure 5As shown, the panoramic image synthesis device of this embodiment includes a receiving unit 501 and a synthesis unit 502. The receiving unit 501 is configured to receive data transmitted from a 3D scanner, wherein the data includes: a target number of basic images captured by the 3D scanner; and position information indicating the actual position of a specific point in each basic image captured by the 3D scanner. The synthesis unit 502 is configured to synthesize a panoramic image based on the target number of basic images, including a target number of specific points, each of which has position information indicating the actual position.
[0090] In this embodiment, the specific processing of the receiving unit 501 and the synthesis unit 502 of the panoramic image synthesis device and the technical effects thereof can be referred to respectively. Figure 1 The relevant descriptions of step 101 and step 102 in the corresponding embodiment are not repeated here.
[0091] In some embodiments, the three-dimensional scanner has a camera and an electronic compass, wherein the camera is used to capture a basic image, and the electronic compass is used to capture the orientation information of the actual position indicated by a specific point in the basic image; the three-dimensional scanner captures the above-mentioned target number of basic images and captures the orientation information of the actual position indicated by a specific point in each basic image in the following manner: in response to receiving a shooting instruction from a terminal device to capture the target number of basic images, executing a shooting step: taking the ratio of 360 degrees to the above-mentioned target number as a single rotation angle; in the process of rotating 360 degrees, each time a single rotation angle is rotated, the basic image is captured using the camera, and the orientation information of the actual position indicated by the specific point in the basic image is captured using the electronic compass.
[0092] In some embodiments, the specific point is actually the center point in the basic image, and the electronic compass is set at a position corresponding to the center of the camera; the above-mentioned use of the electronic compass to collect the orientation information of the actual position indicated by the specific point in the basic image includes: using the orientation information collected by the electronic compass as the orientation information of the actual position indicated by the specific point in the basic image.
[0093] In some embodiments, the specific point is a center point in the base image.
[0094] In some embodiments, the panoramic image synthesis device may further include a first display unit (not shown in the figure). The first display unit is used to determine a first specific point and a second specific point on both sides of an arbitrary point in the panoramic image in response to an orientation information viewing operation for the arbitrary point, wherein the orientation information viewing operation is used to view the target orientation information of the actual position indicated by the arbitrary point, the orientation information of the actual position indicated by the first specific point is the first orientation information, and the orientation information of the actual position indicated by the second specific point is the second orientation information; determine a first distance from the arbitrary point to the first specific point, and determine a second distance from the arbitrary point to the second specific point; based on the first distance and the second distance, determine the target orientation information of the actual position indicated by the arbitrary point within the orientation information range between the first orientation information and the second orientation information; and display the target orientation information.
[0095] In some embodiments, the first display unit is further used to divide the angle between the first orientation information and the second orientation information into a first angle between the target orientation information and the first orientation information, and a second angle between the target orientation information and the second orientation information according to the ratio of the first distance to the second distance respectively; based on the first angle and the second angle, the target orientation information is determined from the orientation information range between the first orientation information and the second orientation information.
[0096] In some embodiments, the panoramic image synthesis device may further include a second display unit (not shown in the figure). The second display unit is configured to, in response to receiving the third orientation information provided by the user, determine, from the target number of specific points, a third specific point and a fourth specific point whose orientation information of the actual position indicated is located on both sides of the third orientation information, wherein the orientation information of the actual position indicated by the third specific point is the fourth orientation information, and the orientation information of the actual position indicated by the fourth specific point is the fifth orientation information; determine a third angle formed by the third orientation information and the fourth orientation information, and determine a fourth angle formed by the third orientation information and the fifth orientation information; based on the third angle and the fourth angle, determine, from the target line segment between the third specific point and the fourth specific point, a target point whose orientation information of the actual position indicated is the third orientation information; and display the target partial image in the panoramic image according to the target point.
[0097] In some embodiments, the second display unit is further used to divide the distance between the third specific point and the fourth specific point into a third distance between the target point and the third specific point and a fourth distance between the target point and the fourth specific point according to the angle ratios of the third angle and the fourth angle respectively; based on the third distance and the fourth distance, the target point is determined from the target line segment between the third specific point and the fourth specific point.
[0098] In some embodiments, the second display unit is further configured to display a target partial image in the panoramic image with the target point as the center point.
[0099] In some embodiments, the third position information is position information selected by the user from preset position information, or is position information input by the user in an input control.
[0100] Further references Figure 6 , Figure 6 An exemplary system architecture is shown in which the panoramic image synthesis method of some embodiments of the present disclosure can be applied.
[0101] like Figure 6 As shown, the system architecture may include terminal devices 601, 602 and a 3D scanner 603. The terminal devices 601, 602 are connected to the 3D scanner 603 via a network. The connection may include various types of connections, such as wired or wireless communication links or fiber optic cables.
[0102] Various applications (eg, image synthesis applications) may be installed on the terminal devices 601 and 602. The three-dimensional scanner 603 may be installed with a camera and an electronic compass.
[0103] In some scenarios, the 3D scanner 603 can capture a desired number of base images and collect positional information about the actual location indicated by a specific point in each base image. Furthermore, the 3D scanner 603 can transmit the captured base images and the collected positional information to the terminal devices 601 and 602. Thus, the terminal devices 601 and 602 can synthesize a panoramic image based on the desired number of base images, including the desired number of specific points, each with positional information about the actual location indicated by each specific point.
[0104] Terminal devices 601 and 602 can be either hardware or software. When terminal devices 601 and 602 are hardware, they can be various electronic devices that support image synthesis, including but not limited to smartphones, tablet computers, laptop computers, and desktop computers. When terminal devices 601 and 602 are software, they can be installed in the electronic devices listed above and can be implemented as multiple software programs or software modules, or as a single software program or software module, without specific limitations herein.
[0105] It should be noted that the panoramic image synthesis method provided in the embodiments of the present disclosure may be executed by the terminal devices 601 and 602 , and accordingly, the panoramic image synthesis apparatus may be provided in the terminal devices 601 and 602 .
[0106] It should be understood that Figure 6The number of terminal devices and three-dimensional scanners in the embodiment is merely illustrative. Any number of terminal devices and three-dimensional scanners may be provided according to implementation requirements.
[0107] Reference below Figure 7 , which shows an electronic device suitable for implementing some embodiments of the present disclosure (e.g., Figure 6 The terminal devices in some embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 7 The electronic device shown is only an example and should not limit the functions and scope of use of the embodiments of the present disclosure. Figure 7 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0108] like Figure 7 As shown, the electronic device may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703. Various programs and data required for the operation of the electronic device are also stored in the RAM 703. The processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0109] Typically, the following devices may be connected to the I / O interface 705: an input device 706 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 708 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 709. The communication device 709 may allow the electronic device to communicate with other devices wirelessly or by wire to exchange data. Although Figure 7 The electronic device is shown with various devices, but 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 instead. Figure 7 Each block shown in the figure may represent one device, or may represent multiple devices as needed.
[0110] In particular, according to some embodiments of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, some embodiments of the present disclosure include a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 709, or installed from the storage device 708, or installed from the ROM 702. When the computer program is executed by the processing device 701, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.
[0111] It should be noted that the computer-readable medium described in some embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In some embodiments of the present disclosure, the 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, device, or device. In some embodiments of the present disclosure, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination thereof.
[0112] In some embodiments, the client and server can communicate using any currently known or future developed network protocol, such as HTTP (HyperText Transfer Protocol), and can be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.
[0113] The computer-readable medium may be included in the electronic device or may exist independently and not incorporated into the electronic device. The computer-readable medium carries one or more programs. When executed by the electronic device, the computer-readable medium causes the electronic device to: receive data transmitted from a 3D scanner, wherein the transmitted data includes: a target number of base images captured by the 3D scanner; positional information indicating the actual position of a specific point in each base image captured by the 3D scanner; and, based on the target number of base images, synthesize a panoramic image containing a target number of specific points, each with positional information indicating the actual position of the specific point.
[0114] Computer program code for performing the operations of some embodiments of the present disclosure may be written in one or more programming languages, or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone 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 a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0115] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the module, program segment, or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0116] The units described in some embodiments of the present disclosure may be implemented via software or hardware. The names of these units do not, in some cases, limit the units themselves. For example, a receiving unit may also be described as a unit that "receives data transmitted from a 3D scanner."
[0117] The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, and without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.
[0118] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0119] The above descriptions are merely some preferred embodiments of the present disclosure and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of disclosure involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also encompass other technical solutions formed by any combination of the above-mentioned technical features or their equivalents without departing from the above-mentioned disclosed concepts. For example, a technical solution formed by mutually replacing the above-mentioned features with (but not limited to) technical features having similar functions disclosed in this disclosure.
[0120] In addition, although each operation is described in a specific order, this should not be understood as requiring these operations to be performed in the specific order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details have been included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single embodiment in combination. On the contrary, the various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination mode.
[0121] Although the subject matter has been described in language specific to structural features and / or methodological logical acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims.
Claims
1. A panoramic image synthesis method, characterized in that: Applied to terminal equipment, including: receiving transmission data from a three-dimensional scanner, wherein the transmission data includes: a target number of basic images captured by the three-dimensional scanner; and position information of an actual position indicated by a specific point in each basic image captured by the three-dimensional scanner; Based on the target number of basic images, synthesize a panoramic image containing the target number of specific points, and each specific point indicates an actual position with orientation information; The method further comprises: In response to an orientation information viewing operation for an arbitrary point in the panoramic image, determining a first specific point and a second specific point on both sides of the arbitrary point, wherein the orientation information viewing operation is used to view target orientation information of an actual position indicated by the arbitrary point, the orientation information of the actual position indicated by the first specific point is first orientation information, and the orientation information of the actual position indicated by the second specific point is second orientation information; Determine a first distance from the arbitrary point to the first specific point, and determine a second distance from the arbitrary point to the second specific point; Based on the first distance and the second distance, determining the target direction information of the actual position indicated by the arbitrary point within the direction information range between the first direction information and the second direction information; The target position information is displayed.
2. The method according to claim 1, characterized in that The three-dimensional scanner has a camera and an electronic compass, wherein the camera is used to acquire a basic image, and the electronic compass is used to acquire the orientation information of the actual position indicated by a specific point in the basic image; and The three-dimensional scanner captures the target number of basic images and collects the position information of the actual position indicated by a specific point in each basic image in the following manner: In response to receiving a shooting instruction for shooting a number of basic images of the target issued by the terminal device, the shooting step is executed: the ratio of 360 degrees to the number of targets is used as a single rotation angle; during the rotation of 360 degrees, each time the single rotation angle is rotated, the basic image is shot using the camera, and the orientation information of the actual position indicated by a specific point in the basic image is collected using the electronic compass.
3. The method according to claim 2, characterized in that The specific point is actually the center point in the basic image, and the electronic compass is set at a position corresponding to the center of the camera; as well as The using the electronic compass to collect the azimuth information of the actual position indicated by the specific point in the basic image includes: The orientation information collected by the electronic compass is used as the orientation information of the actual position indicated by the specific point in the basic image.
4. The method according to claim 1, wherein The specific point is the center point in the base image.
5. The method according to claim 1, wherein The determining, based on the first distance and the second distance, the target orientation information of the actual position indicated by the arbitrary point within the orientation information range between the first orientation information and the second orientation information includes: Dividing the angle between the first orientation information and the second orientation information into a first angle between the target orientation information and the first orientation information and a second angle between the target orientation information and the second orientation information according to the ratio of the first distance to the second distance respectively; The target orientation information is determined within an orientation information range between the first orientation information and the second orientation information based on the first angle and the second angle.
6. The method according to any one of claims 1 to 4, characterized in that: The method further comprises: In response to receiving third position information provided by the user, determining, from the target number of specific points, a third specific point and a fourth specific point whose position information indicates the actual position is located on both sides of the third position information, wherein the position information of the actual position indicated by the third specific point is the fourth position information, and the position information of the actual position indicated by the fourth specific point is the fifth position information; Determine a third angle formed by the third orientation information and the fourth orientation information, and determine a fourth angle formed by the third orientation information and the fifth orientation information; Based on the third included angle and the fourth included angle, determining, from a target line segment between the third specific point and the fourth specific point, that the orientation information of the indicated actual position is a target point of the third orientation information; A target partial image in the panoramic image is displayed according to the target point.
7. The method according to claim 6, characterized in that The step of determining, based on the third included angle and the fourth included angle, that the orientation information of the indicated actual position is the target point of the third orientation information on a target line segment between the third specific point and the fourth specific point, includes: Dividing the distance between the third specific point and the fourth specific point into a third distance between the target point and the third specific point and a fourth distance between the target point and the fourth specific point according to the angle ratios respectively occupied by the third angle and the fourth angle; The target point is determined from a target line segment between the third specific point and the fourth specific point based on the third distance and the fourth distance.
8. The method according to claim 6, characterized in that The specific point is the center point in the base image; as well as The displaying of the target partial image in the panoramic image according to the target point includes: The target point is used as the center point of the local image to display the target local image in the panoramic image.
9. The method according to claim 6, characterized in that The third position information is the position information selected by the user from preset position information, or is the position information input by the user in the input control.
10. A panoramic image synthesis device, characterized in that: Applied to terminal equipment, including: a receiving unit, configured to receive transmission data from a three-dimensional scanner, wherein the transmission data includes: a target number of basic images captured by the three-dimensional scanner; and position information of an actual position indicated by a specific point in each basic image captured by the three-dimensional scanner; a synthesis unit, configured to synthesize, based on the target number of basic images, a panoramic image containing a target number of specific points, wherein the actual position indicated by each specific point has orientation information; A first display unit is configured to determine, in response to an orientation information viewing operation for an arbitrary point in the panoramic image, a first specific point and a second specific point on both sides of the arbitrary point, wherein the orientation information viewing operation is configured to view target orientation information of an actual position indicated by the arbitrary point, the orientation information of the actual position indicated by the first specific point is first orientation information, and the orientation information of the actual position indicated by the second specific point is second orientation information; and to determine a first distance from the arbitrary point to the first specific point, and a second distance from the arbitrary point to the second specific point; based on the first distance and the second distance, determine the target orientation information of the actual position indicated by the arbitrary point within the range of orientation information between the first orientation information and the second orientation information; and display the target orientation information.
11. An electronic device, characterized in that: include: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 9.
12. A computer-readable medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Panoramic photography method and mobile terminal
CN106101552A
Method and device for processing panoramic image
CN106296589A