Scanning data transmission method and device of scanner and scanner

By dividing the scan data into subscan data groups in a handheld laser scanner, and performing frame drop processing according to the network transmission rate, dynamically adjusting the output frame rate, the problem of unstable wireless transmission speed is solved, and the problem of inconsistency in hardware pressure and power consumption is reduced.

CN119788783APending Publication Date: 2025-04-08SCANTECH (HANGZHOU) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411712460.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

During wireless transmission, the handheld laser scanner has unstable transmission speed due to signal interference and distance changes, and requires dynamic adjustment of the camera frame rate, which leads to overheating of the camera and excessive battery consumption.

Method used

By acquiring the scan data output by the camera at the target frame rate, the data is divided into multiple subscan data groups, and the subscan data in the partial subscan data group is dropped according to the communication network transmission rate to adjust the output frame rate to match the current network transmission rate.

Benefits of technology

Reduces pressure on the scanner hardware, reduces camera overheating and battery consumption problems caused by frequent frame rates, keeping the camera frame rate stable, helping to maintain power consumption consistency across the device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119788783A_ABST
    Figure CN119788783A_ABST
Patent Text Reader

Abstract

The present application discloses a scanning data transmission method, device and scanner of a scanner, belonging to the field of three-dimensional scanning technology. The method includes: obtaining scanning data output by a camera in a scanner at a target frame rate; dividing the scanning data into a plurality of sub-scanning data groups; and dropping frames of at least a portion of the sub-scanning data in a portion of the sub-scanning data groups according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The present application obtains scanning data output by a camera at a target frame rate, divides the scanning data into a plurality of sub-scanning data groups, monitors the transmission rate of the communication network, and when the transmission rate of the communication network changes, drops frames of at least a portion of the sub-scanning data in a portion of the sub-scanning data groups to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, keeping the camera frame rate stable, and helping to maintain the consistency of power consumption of the entire device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of three-dimensional scanning technology, and in particular, relates to a scanning data transmission method and device of a scanner, and a scanner. Background Art

[0002] With the development of wireless communication technology, handheld laser scanners have added wireless transmission functions, which enable scanned data to be transmitted to computers or other receiving devices in real time, greatly improving work efficiency.

[0003] Wireless transmission is greatly affected by environmental factors, such as signal interference, distance changes, etc., which leads to unstable transmission speed and large fluctuations. In order to adapt to this unstable transmission speed, it is necessary to adjust the scanner output frame rate in real time by adjusting the camera frame rate of the handheld laser scanner so that the scanner output frame rate can match the wireless transmission rate.

[0004] However, frequent changes in the camera frame rate will cause the camera's photosensitive elements and processing circuits to work frequently, causing the camera in the handheld laser scanner to overheat or the battery to consume too quickly, thereby affecting the scanner's ability to continue working. Summary of the invention

[0005] The present application aims to solve at least one of the technical problems existing in the prior art. To this end, the present application proposes a scanning data transmission method, device and scanner of a scanner to keep the camera frame rate stable and improve the power consumption consistency of the entire device.

[0006] In a first aspect, the present application provides a scanning data transmission method of a scanner, comprising:

[0007] Obtain the scan data output by the camera in the scanner at a target frame rate;

[0008] Dividing the scan data into a plurality of sub-scan data groups;

[0009] At least part of the sub-scanning data in part of the sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0010] According to the scanning data transmission method of the scanner of the present application, the scanning data outputted by the camera in the scanner at the target frame rate is obtained; the scanning data is divided into a plurality of sub-scanning data groups; and at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The embodiment of the present application obtains the scanning data outputted by the camera at the target frame rate, divides the scanning data into a plurality of sub-scanning data groups, and monitors the transmission rate of the communication network. When the transmission rate of the communication network changes, at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, reducing the camera overheating and battery consumption problems caused by frequent changes in the frame rate, and keeping the camera frame rate stable, which helps to maintain the consistency of power consumption of the entire device.

[0011] According to an embodiment of the present application, dividing the scan data into a plurality of sub-scan data groups includes:

[0012] Determining the number of lasers in the scanner that are in operation during a scan;

[0013] The scanning data is divided into a plurality of sub-scanning data groups according to the number of lasers in working state during the scanning process.

[0014] In this embodiment, the scanning data is divided into multiple sub-scanning data groups based on the number of lasers in working state in the scanner. Each sub-scanning data group can be independent. When some sub-scanning data groups need to drop frames due to network transmission rate issues, the data of other sub-groups can still be used as a reference, thereby reducing information loss caused by frame loss.

[0015] According to an embodiment of the present application, dividing the scan data into a plurality of sub-scan data groups includes:

[0016] Activating each laser in the working state in the scanner in sequence once is determined as a working cycle of the laser group;

[0017] The data captured by the camera corresponding to at least one working cycle of the laser group in the scanning data is divided into a sub-scanning data group.

[0018] In this embodiment, the data captured by the camera corresponding to at least one working cycle is divided into a sub-scan data group so that the sub-scan data group corresponds to at least one complete scanning process. In the subsequent frame loss process, even if the data of some sub-scan data groups are discarded, there are still data from other groups as references, which helps to reduce information loss caused by frame loss while maintaining data transmission efficiency, thereby improving the integrity of data after frame loss.

[0019] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0020] Dividing a preset number of sub-scan data groups into a cycle group;

[0021] At least part of the sub-scanning data in part of the sub-scanning data groups is dropped from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0022] In this embodiment, by dividing the cycle groups, at least part of the sub-scan data in the sub-scan data groups are dropped from each cycle group, so that when the network conditions are poor, the frame dropping operation will not be concentrated in a certain section of the sub-scan data group, but will be evenly distributed in the entire data stream. The data in each cycle group has the opportunity to be retained or discarded, and the remaining scan data can also represent the entire scanning process as much as possible, reducing the scanning blind area caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0023] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0024] At least part of the sub-scanning data in the part of the sub-scanning data groups located at the same position in each cycle group is dropped to adjust the output frame rate of the scanning data.

[0025] In this embodiment, by dropping frames for at least part of the sub-scan data in the partial sub-scan data groups located at the same position from each cycle group according to the communication network transmission rate, the frame dropping operation is further evenly distributed in the scan data, reducing the scan blind area caused by excessive local data loss, thereby improving the integrity of the scan data transmission to a certain extent.

[0026] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0027] Calculate a first target number of sub-scan data groups that need to be dropped frames in each cycle group according to the communication network transmission rate;

[0028] selecting sub-scan data groups from each of the cycle groups in the scan data according to the first target quantity;

[0029] Frames are dropped for at least part of the sub-scanning data in the selected sub-scanning data group to adjust the output frame rate of the scanning data.

[0030] In this embodiment, the first target number of sub-scan data groups that need to be dropped in each cycle group is calculated according to the transmission rate of the communication network, so that the frame dropping operation is real-time data based on the current network conditions, thereby improving the efficiency of scanning data transmission.

[0031] According to an embodiment of the present application, the calculating, according to the communication network transmission rate, a first target number of sub-scan data groups that need to be frame dropped in each cycle group includes:

[0032] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0033] A first target number of sub-scan data groups that need to be dropped frames in each cycle group is determined according to the maximum output frame rate.

[0034] In this embodiment, the number of sub-scan data groups that need to be subjected to frame loss in each cycle group is determined according to the maximum output frame rate supported by the communication network transmission rate, so that the frame loss operation is performed based on the actual transmission capacity of the network, thereby reducing the problem of excessive frame loss or insufficient frame loss caused by network fluctuations, and helping to improve the efficiency of scanning data transmission while reducing information loss caused by frame loss.

[0035] According to an embodiment of the present application, the calculating, according to the communication network transmission rate, a first target number of sub-scan data groups that need to be frame dropped in each cycle group includes:

[0036] Matching a target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship;

[0037] The first target quantity is determined according to the target output frame rate.

[0038] In this embodiment, by matching the target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship, the frame loss operation is performed based on the actual transmission capacity of the network and the preset performance parameters, thereby achieving precise control over the number of frame losses, reducing information loss caused by network fluctuations, and improving the overall reliability and efficiency of scanning data transmission.

[0039] According to an embodiment of the present application, selecting sub-scan data groups from each cycle group in the scan data according to the first target quantity includes:

[0040] In case the first target number is a group of the sub-scan data sets, one sub-scan data set is randomly selected from each cycle group.

[0041] In this embodiment, frame loss is achieved by randomly selecting a sub-scan data group in each cycle group, thereby reducing the preferential selection of specific cycle groups or sub-scan data groups, thereby reducing potential data deviations caused by the frame loss strategy, and the random selection mechanism makes it possible for data in each cycle group to be discarded, which helps to reduce the impact of network fluctuations on the integrity of scan data, thereby improving the reliability of scan data transmission.

[0042] According to an embodiment of the present application, selecting sub-scan data groups from each cycle group in the scan data according to the first target quantity includes:

[0043] When the first target number is at least two of the sub-scan data sets, a plurality of sub-scan data sets that are evenly distributed are selected from each cycle group.

[0044] In this embodiment, frame loss is performed by selecting multiple evenly distributed sub-scan data groups from each cycle group. This frame loss strategy makes the lost data evenly distributed in each cycle group, thereby dispersing the impact of frame loss among different cycle groups, further reducing the scanning blind area caused by excessive local data loss, and improving the reliability of scanning data transmission.

[0045] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0046] Selecting a sub-scan data group to be dropped every second target number of sub-scan data groups;

[0047] At least part of the sub-scanning data in the sub-scanning data group to be dropped is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0048] In this embodiment, frame dropping is performed every second target number of sub-scan data groups. Therefore, when network conditions are poor, the frame dropping operation will not be concentrated in a certain section of sub-scan data groups, but will be evenly distributed in the entire data stream, thereby reducing the scanning blind area caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0049] According to one embodiment of the present application, before selecting a sub-scanning data group to be dropped at every interval of the second target number of sub-scanning data groups, the method includes:

[0050] The second target quantity is calculated according to the communication network transmission rate.

[0051] In this embodiment, by calculating the second target number according to the communication network transmission rate, the frame dropping operation can be accurately controlled. When the communication network transmission rate changes, frame dropping can be performed at intervals of the second target number of sub-scan data groups. This can more effectively utilize the available network bandwidth, reduce delays and packet loss in data transmission, and improve the reliability of data transmission.

[0052] According to one embodiment of the present application, the calculating the second target quantity according to the communication network transmission rate includes:

[0053] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0054] The second target number is determined according to the maximum output frame rate.

[0055] In this embodiment, the number of sub-scanning data groups for frame drop operation intervals is determined according to the maximum output frame rate supported by the communication network transmission rate, so that the frame drop operation is performed based on the actual transmission capacity of the network, thereby reducing the problem of excessive or insufficient frame drop caused by network fluctuations, and helping to improve the scanning data transmission efficiency while reducing information loss caused by frame drop.

[0056] According to one embodiment of the present application, the calculating the second target quantity according to the communication network transmission rate includes:

[0057] Matching a target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship;

[0058] The second target number is determined according to the target output frame rate.

[0059] In this embodiment, by matching the target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship, the frame loss operation is performed based on the actual transmission capacity of the network and the preset performance parameters, thereby achieving precise control over the number of frame losses, reducing information loss caused by network fluctuations, and improving the overall reliability and efficiency of scanning data transmission.

[0060] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0061] The sub-scan data group is used as a frame dropping unit, and the sub-scan data in part of the sub-scan data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scan data.

[0062] In this embodiment, by taking the sub-scan data group as the basic unit of frame loss, deciding which sub-scan data groups to be processed for frame loss is determined according to the real-time transmission rate of the communication network. When the network environment fluctuates, the integrity of the sub-scan data that has not been subjected to frame loss can be retained. This not only provides relatively stable data output under different network conditions, but also reduces information loss caused by frame loss, thereby improving the reliability of scanning data transmission.

[0063] According to an embodiment of the present application, the step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0064] Part of the sub-scanning data in part of the sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0065] In this embodiment, by selectively performing frame dropping processing on part of the sub-scan data in the sub-scan data group instead of performing frame dropping on the entire sub-scan data group, the frame dropping operation can be evenly distributed in different sub-scan groups. This frame dropping strategy helps to improve the efficiency of scanning data transmission while reducing information loss caused by frame dropping, thereby improving the reliability of scanning data transmission.

[0066] According to an embodiment of the present application, the lasers corresponding to the parts of the sub-scanning data in different sub-scanning data groups are the same; or, the lasers corresponding to the parts of the sub-scanning data in different sub-scanning data groups are evenly distributed.

[0067] In this embodiment, part of the sub-scan data in different sub-scan data groups are dropped, and the lasers corresponding to these sub-scan data are the same, so that during the frame dropping process, the lost data are the data corresponding to the same laser, and the non-lost data in the sub-scan data group can still provide valid information, thereby reducing the local information loss caused by frame dropping; and the lasers corresponding to the sub-scan data are evenly distributed, so that the lost data is dispersed as much as possible, rather than concentrated on a certain laser, which can reduce the risk of information loss of a certain laser.

[0068] In a second aspect, the present application provides a scanning data transmission device of a scanner, comprising:

[0069] An acquisition module, used for acquiring scan data outputted by a camera in a scanner at a target frame rate;

[0070] A division module, used for dividing the scan data into a plurality of sub-scan data groups;

[0071] The frame dropping module is used to drop frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0072] According to the scanning data transmission device of the scanner of the present application, the scanning data outputted by the camera in the scanner at the target frame rate is obtained; the scanning data is divided into a plurality of sub-scanning data groups; and at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The embodiment of the present application obtains the scanning data outputted by the camera at the target frame rate, divides the scanning data into a plurality of sub-scanning data groups, and monitors the transmission rate of the communication network. When the transmission rate of the communication network changes, at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, reducing the camera overheating and battery consumption problems caused by frequent changes in the frame rate, and keeping the camera frame rate stable, which helps to maintain the consistency of power consumption of the entire device.

[0073] In a third aspect, the present application provides a scanner, comprising: a camera, a laser group, and a controller;

[0074] The laser group includes multiple lasers;

[0075] The camera is used to capture the reflections generated by the lasers emitted by each laser of the laser group to the scanned object at a target frame rate to form scanning data;

[0076] The controller is used to execute the scanning data transmission method of the scanner as described in the first aspect above.

[0077] In a fourth aspect, the present application provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the scanning data transmission method of the scanner as described in the first aspect above is implemented.

[0078] In a fifth aspect, the present application provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the scanning data transmission method of the scanner as described in the first aspect above is implemented.

[0079] In a sixth aspect, the present application provides a chip, comprising a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run a program or instruction to implement the scanning data transmission method of the scanner as described in the first aspect above.

[0080] In a seventh aspect, the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the scanning data transmission method of the scanner as described in the first aspect above.

[0081] The above one or more technical solutions in the embodiments of the present application have at least one of the following technical effects:

[0082] According to the scanning data transmission method of the scanner of the present application, the scanning data outputted by the camera in the scanner at the target frame rate is obtained; the scanning data is divided into a plurality of sub-scanning data groups; and at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The embodiment of the present application obtains the scanning data outputted by the camera at the target frame rate, divides the scanning data into a plurality of sub-scanning data groups, and monitors the transmission rate of the communication network. When the transmission rate of the communication network changes, at least a portion of the sub-scanning data in some of the sub-scanning data groups is dropped to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, reducing the camera overheating and battery consumption problems caused by frequent changes in the frame rate, and keeping the camera frame rate stable, which helps to maintain the consistency of power consumption of the entire device.

[0083] Furthermore, in some embodiments, the scanning data is divided into multiple sub-scanning data groups based on the number of lasers in operation in the scanner. Each sub-scanning data group can be independent. When some sub-scanning data groups need to drop frames due to network transmission rate issues, the data of other sub-groups can still be used as a reference, thereby reducing information loss caused by frame loss.

[0084] Furthermore, in some embodiments, the data captured by the camera corresponding to at least one working cycle is divided into a sub-scan data group, so that the sub-scan data group corresponds to at least one complete scanning process. In the subsequent frame loss process, even if the data of some sub-scan data groups are discarded, there are still other groups of data as a reference, which helps to reduce information loss caused by frame loss while maintaining data transmission efficiency, thereby improving the integrity of the data after frame loss.

[0085] Furthermore, in some embodiments, by dividing the cycle groups, at least part of the sub-scan data in some sub-scan data groups are dropped from each cycle group, so that when the network conditions are poor, the frame dropping operation will not be concentrated in a certain section of the sub-scan data group, but will be evenly distributed in the entire data stream. The data in each cycle group has the opportunity to be retained or discarded, and the remaining scan data can also represent the entire scanning process as much as possible, reducing the scanning blind area caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0086] Furthermore, in some embodiments, by dropping frames every second target number of sub-scan data groups, when network conditions are poor, the frame dropping operation will not be concentrated in a certain section of the sub-scan data groups, but will be evenly distributed in the entire data stream, thereby reducing scanning blind spots caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0087] Furthermore, in some embodiments, by taking the sub-scan data group as the basic unit of frame loss, deciding which sub-scan data groups to process for frame loss is determined according to the real-time transmission rate of the communication network. When the network environment fluctuates, the integrity of the sub-scan data that has not been subjected to frame loss can be retained. This not only provides relatively stable data output under different network conditions, but also reduces information loss caused by frame loss, thereby improving the reliability of scanning data transmission.

[0088] Furthermore, in some embodiments, by selectively performing frame loss processing on part of the sub-scan data in the sub-scan data group instead of performing frame loss on the entire sub-scan data group, the frame loss operation can be evenly distributed in different sub-scan groups. This frame loss strategy helps to improve the efficiency of scanning data transmission while reducing information loss caused by frame loss, thereby improving the reliability of scanning data transmission.

[0089] Additional aspects and advantages of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through the practice of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0090] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0091] Figure 1 It is a flowchart of a scanning data transmission method of a scanner provided in an embodiment of the present application;

[0092] Figure 2 is a schematic diagram of a laser provided in an embodiment of the present application emitting a laser beam;

[0093] Figure 3 is a schematic diagram of a sub-scan data group provided in an embodiment of the present application;

[0094] Figure 4 It is a schematic diagram of dropping frames in a cyclic group provided in an embodiment of the present application;

[0095] Figure 5 is a schematic diagram of the structure of a scanning data transmission device of a scanner provided in an embodiment of the present application;

[0096] Figure 6 It is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0097] The following will be combined with the drawings in the embodiments of the present application to clearly describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments in the present application belong to the scope of protection of this application.

[0098] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.

[0099] A handheld laser scanner is a high-precision 3D measurement device that can measure the surface features of an object by emitting a laser beam and receiving the reflected light. Handheld laser scanners can be used in industrial design, architectural measurement, archaeological excavation and other fields to obtain a 3D model of an object.

[0100] In the related art, handheld laser scanners mainly interact with the host computer to transmit scan data through wired methods such as Ethernet and USB (Universal Serial Bus). Since the transmission bandwidth rate of wired communication is stable, the camera frame rate, device frame rate and wired transmission rate can be matched to achieve stable transmission of scan data.

[0101] With the development of wireless communication technology, handheld laser scanners have added wireless transmission functions. Since wireless transmission is greatly affected by environmental factors, such as signal interference and distance changes, the transmission speed is unstable and fluctuates greatly. It is necessary to dynamically adjust the output frame rate of the scanner to achieve stable transmission of scanned data. Alternatively, since the communication transmission speed of the handheld laser scanner changes when switching between wireless and wired communication, it is also necessary to dynamically adjust the output frame rate of the scanner to achieve stable transmission of scanned data.

[0102] In the related art, the scanner output frame rate is usually adjusted in real time by adjusting the camera frame rate of the handheld laser scanner, so that the scanner output frame rate can match the wireless transmission rate. However, the frequent changes in the camera frame rate will cause the camera's photosensitive element and processing circuit to work frequently, causing the camera to overheat or the battery to consume too quickly, thereby affecting the scanner's ability to continue working.

[0103] To solve at least one of the above technical problems, the present application provides a method, device and scanner for transmitting scanning data of a scanner. The following is a detailed description of the method, device and scanner for transmitting scanning data of a scanner provided by the present application in conjunction with the accompanying drawings through specific embodiments and their application scenarios.

[0104] The scanning data transmission method of the scanner can be applied to a terminal, and can be specifically executed by hardware or software in the terminal.

[0105] The terminal includes, but is not limited to, a portable communication device such as a mobile phone or tablet computer with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad). It should also be understood that in some embodiments, the terminal may not be a portable communication device, but a desktop computer with a touch-sensitive surface (e.g., a touch screen display and / or a touch pad).

[0106] In the following various embodiments, a terminal including a display and a touch-sensitive surface is described. However, it should be understood that the terminal may include one or more other physical user interface devices such as a physical keyboard, a mouse and a joystick.

[0107] The scanning data transmission method of the scanner provided in the embodiment of the present application can be executed by an electronic device or a functional module or functional entity in the electronic device that can implement the scanning data transmission method of the scanner. The electronic devices mentioned in the embodiment of the present application include but are not limited to mobile phones, tablet computers, computers, cameras, wearable devices, scanners, etc. The scanning data transmission method of the scanner provided in the embodiment of the present application is explained below using an electronic device as an example of the execution subject.

[0108] like Figure 1 As shown, the scanning data transmission method of the scanner includes: step 110, step 120 and step 130.

[0109] Step 110: Obtain scan data output by a camera in the scanner at a target frame rate.

[0110] In the embodiment of the present application, the scanner is a high-precision measuring device, and the scanner may include components such as a light source component and a camera (receiver). The light source component may emit a light beam, which is reflected after being irradiated on the surface of the scanned object. The camera captures these reflected lasers and calculates the three-dimensional coordinate information of the surface of the object by measuring the deformation of the laser on the surface of the object or the displacement of the laser point.

[0111] In the embodiment of the present application, the scanner may be a flatbed scanner or a portable scanner. Depending on the light source of the scanner, the scanner may also be a laser scanner, a white light scanner, a structured light scanner, an infrared light scanner, etc. The embodiment of the present application does not limit the type of scanner.

[0112] Taking the scanner as an example, a laser scanner may include components such as a laser and a camera (receiver). Among them, the laser can emit a laser beam, which is reflected after being irradiated on the surface of the scanned object. The camera captures these reflected lasers and calculates the three-dimensional coordinate information of the surface of the object by measuring the deformation of the laser on the surface of the object or the displacement of the laser point. In a laser scanner, it may include a laser that emits a single laser beam; it may also include multiple lasers that can emit intersecting lasers. These laser lines intersect in space to form a cross shape for capturing the three-dimensional information of the surface of the object, so as to improve the accuracy and efficiency of the scanning.

[0113] The target frame rate is the number of images or data frames that the camera can capture per second. Before starting scanning, you can set the scanning parameters, such as scanning mode, camera frame rate, etc. After the scanning parameters are set, the scanner can scan according to the scanning parameters, and the camera captures the reflection of the laser beam on the scanned object at the target frame rate, forms the scanning data and outputs it.

[0114] Step 120: Divide the scan data into a plurality of sub-scan data groups.

[0115] In some embodiments, the scan data may be divided into a plurality of sub-scan data groups according to preset rules, such as size, number of frames, content of data frames, timestamp of data frames, etc. For example, the scan data may be divided into a sub-scan data group every 4 frames, a sub-scan data group every 1MB, etc.

[0116] Step 130 : Drop frames of at least part of the sub-scanning data in the partial sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scan data.

[0117] In an embodiment of the present application, after obtaining the scan data output by the camera, the scan data needs to be output to a host computer so as to facilitate three-dimensional reconstruction of the scanned object. Among them, the host computer can be any electronic device, such as a mobile phone, a tablet computer, a computer, a server, etc. The host computer and the execution subject of the embodiment of the present application, such as a scanner, can be connected by wired or wireless means. Since the transmission bandwidth rate of the wired communication method is stable, the stable transmission of the scan data can be achieved by matching the camera frame rate, the device frame rate and the wired transmission rate. However, wireless transmission is greatly affected by environmental factors, such as signal interference, distance changes, etc., resulting in unstable transmission speed and large fluctuations. It is necessary to dynamically adjust the output frame rate of the scanner to achieve stable transmission of the scan data. Alternatively, since the communication transmission speed changes when the handheld laser scanner communication mode switches between wireless and wired, it is also necessary to dynamically adjust the output frame rate of the scanner to achieve stable transmission of the scan data.

[0118] In an embodiment of the present application, the communication network transmission rate can be monitored. For example, the round-trip time and packet loss rate of the network can be estimated by monitoring the sending and receiving time of the data packets, thereby evaluating the current communication network transmission rate. When the communication network transmission rate changes, the output frame rate of the scan data can be adjusted in time. For example, when the communication network transmission rate supports it, the scan data can be output at the maximum output frame rate, and the maximum output frame rate can be the above-mentioned target frame rate. In the case of network fluctuations or bandwidth limitation, the communication network transmission rate will decrease, and the output frame rate of the scan data can be reduced by dropping frames of the scan data. Among them, frame dropping refers to discarding or ignoring some data frames of the scan data, thereby reducing the output frame rate of the scan data.

[0119] In some embodiments, any frame dropping strategy may be used to drop frames. For example, frames may be dropped according to a certain ratio, such as outputting only one frame for every three frames of data received. Frames may also be dropped based on the importance of the frame content, such as giving priority to retaining key frames or important data frames and dropping redundant or low-priority frames. Of course, other frame dropping strategies may also be used to drop frames, which are not limited in the embodiments of the present application.

[0120] In specific implementation, a queue can be maintained to store the received scan data, and unnecessary frames can be selected and discarded according to the above frame loss strategy. Frames that need to be output are taken out from the queue regularly and output. It should be noted that the proportion of frame loss needs to be determined according to the communication network transmission rate. For example, the communication network transmission rate is compared with the maximum output frame rate of the scan data to determine the proportion of frames that need to be discarded. For example, if the maximum output frame rate of the scan data is 30MB / s and the communication network transmission rate is 20MB / s, the frame loss ratio can be 1 / 3.

[0121] In an embodiment of the present application, after calculating the frame loss ratio according to the communication network transmission rate, it can be determined which frames from multiple sub-scan data groups to discard, or which sub-scan data groups to discard all sub-scan data, based on the frame loss ratio. For example, if the discard ratio is 10%, one sub-scan data group can be selected to be discarded from every 10 sub-scan data groups, or some sub-scan data groups can be selected from every 10 sub-scan data groups, and then some sub-scan data are discarded from some sub-scan data groups, so that the discard ratio is 10%. By performing frame loss processing on at least some of the sub-scan data in some sub-scan data groups according to the communication network transmission rate, concentrated and continuous frame losses caused by network fluctuations can be reduced to reduce the damage to the continuity of the scan data, thereby improving the scan data transmission efficiency while improving the scan data integrity.

[0122] According to the scanning data transmission method of the scanner of the present application, the scanning data outputted by the camera in the scanner at the target frame rate is obtained; the scanning data is divided into a plurality of sub-scanning data groups; and at least a portion of the sub-scanning data in the partial sub-scanning data groups is dropped according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The embodiment of the present application obtains the scanning data outputted by the camera at the target frame rate, divides the scanning data into a plurality of sub-scanning data groups, and monitors the transmission rate of the communication network. When the transmission rate of the communication network changes, at least a portion of the sub-scanning data in the partial sub-scanning data groups is dropped to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, reducing the camera overheating and battery consumption problems caused by frequent changes in the frame rate, and keeping the camera frame rate stable, which helps to maintain the consistency of power consumption of the entire device.

[0123] In some embodiments, the scan data is divided into a plurality of sub-scan data groups, including:

[0124] Determine the number of lasers in the scanner that are active during scanning;

[0125] The scanning data is divided into a plurality of sub-scanning data groups according to the number of lasers in working state during the scanning process.

[0126] In this embodiment, the scanner used may be a laser scanner. When the laser scanner performs scanning, multiple lasers are used to obtain three-dimensional information of the object. These lasers may emit point lasers, linear lasers or lasers of other shapes. According to different scanning requirements, the lasers may be controlled to form different emission combinations. For example, one laser may be controlled to emit a line laser to form a single-line laser, and multiple lasers may be controlled to emit line lasers to form multi-line lasers. When multiple lasers are controlled to emit line lasers, multi-line lasers of different structures may be formed according to scanning requirements by adjusting the emission direction of the lasers, for example, a cross-shaped or other cross-shaped beam may be formed.

[0127] In this embodiment, the lasers in working state can be regarded as a laser group. During the scanning process, the laser group emits lasers for scanning, and the camera captures the reflection of the laser beam on the scanned object at the target frame rate to form scanning data and output it. Figure 2 As shown, in one example, a laser scanner includes multiple lasers, and there are four lasers in working state, namely laser a, laser b, laser c and laser d. Then these four lasers form a laser group, wherein these lasers can emit line lasers cyclically and alternately, that is, cyclically and alternately emit cross lasers a, b, c, d, and the line lasers emitted by the four lasers intersect with each other, so as to more accurately obtain the three-dimensional information of the scanned object. It should be noted that the laser in working state means the laser that participates in the cyclic alternating emission of lasers during the scanning process, that is, the laser in working state will cyclically alternate between the activation state of emitting laser beams and the non-laser state of not emitting laser beams during the scanning process.

[0128] The number of lasers in operation can be predetermined, such as the number of lasers in operation is the same as the number of lasers in the laser scanner. The number of lasers in operation can also be determined by the scanning mode. For example, if the laser scanner includes 6 lasers, 4 lasers will be activated in the current scanning mode. These 4 lasers participate in the cycle of alternately emitting lasers, and the number of lasers in operation is 4.

[0129] like Figure 3As shown, during the scanning process, multiple lasers will be activated in sequence, and the camera will collect the reflection data corresponding to these lasers in sequence. For example, the activation order of the lasers is a, b, c, and d. Then in the scanning data output by the camera, the order of each data frame can also be the data corresponding to laser a, the data corresponding to laser b, the data corresponding to laser c, and the data corresponding to laser d. The data corresponding to laser d is followed by the data corresponding to laser a, and so on.

[0130] In this embodiment, the scanning data can be divided according to the number of lasers in working state. For example, if the number of lasers in working state is 5, then 5 data frames are a sub-scanning data group, or 10 data frames are a sub-scanning data group, etc.

[0131] In this embodiment, the scanning data is divided into multiple sub-scanning data groups based on the number of lasers in working state in the scanner. Each sub-scanning data group can be independent. When some sub-scanning data groups need to drop frames due to network transmission rate issues, the data of other sub-groups can still be used as a reference, thereby reducing information loss caused by frame loss.

[0132] In some embodiments, the scan data is divided into a plurality of sub-scan data groups, including:

[0133] Activating each laser in the working state in the scanner in sequence once is determined as a working cycle of the laser group;

[0134] The data captured by the camera corresponding to at least one working cycle of the laser group in the scanning data is divided into a sub-scanning data group.

[0135] In this embodiment, each laser in the scanner is activated alternately in sequence during the scanning process, and each activation can be determined as a working cycle of the laser group. Figure 3 As shown, the data captured by the camera during one working cycle or multiple working cycles of the laser group can be divided into a sub-scanning data group.

[0136] It should be noted that the scanner generates a large amount of data during the scanning process, including depth information, intensity information, and coordinate information. The acquired scanning data can be mapped to the corresponding laser through a mapping algorithm, for example, which data in the scanning data corresponds to which laser according to the specific angle and range of the laser. In this way, in the process of dividing the scanning data, each sub-scanning data group can be the data corresponding to one working cycle or the data corresponding to multiple working cycles.

[0137] In this embodiment, the data captured by the camera corresponding to at least one working cycle is divided into a sub-scan data group so that the sub-scan data group corresponds to at least one complete scanning process. In the subsequent frame loss process, even if the data of some sub-scan data groups are discarded, there are still data from other groups as references, which helps to reduce information loss caused by frame loss while maintaining data transmission efficiency, thereby improving the integrity of data after frame loss.

[0138] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0139] Dividing a preset number of sub-scan data groups into a cycle group;

[0140] At least part of the sub-scanning data in the part of the sub-scanning data groups is dropped from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0141] In this embodiment, a preset number of cyclic groups can be set according to actual applications and requirements. For example, every 10 equal number of sub-scan data groups are selected to be divided into a cyclic group, the first 10 sub-scan data groups are used as the first cyclic group, and then the next 10 sub-scan data groups are used as the second cyclic group, and so on, until all sub-scan data groups are divided into cyclic groups.

[0142] In one example, if Figure 4 As shown, if a sub-scan data group includes 4 frames of sub-scan data, and every 25 sub-scan data groups form a cycle group, and the frame loss ratio is determined to be 4% based on the communication network transmission rate, then a sub-scan data group can be selected from a cycle group, and all the sub-scan data in the sub-scan data group can be discarded, so that the output frame rate of the scan data can be reduced by 4% relative to the target frame rate of the camera. In this way, the output frame rate of the scan data can be reduced while the frame rate of the camera remains unchanged, so that the device working condition of the scanner is consistent and the integrity of the scan data is retained. Of course, if the frame loss strategy is to drop frames for part of the sub-scan data in the sub-scan data group, in order to make the frame loss ratio 4%, it is necessary to select multiple sub-scan data groups for frame loss, for example, select two sub-scan data groups, each of which discards two frames of sub-scan data, or select four sub-scan data groups, each of which discards one frame of sub-scan data, etc.

[0143] In another example, assuming that the scanner has T lasers, M sub-scanning data groups are a cycle group, and all sub-scanning data of N sub-scanning data groups are discarded in a cycle group. When the target frame rate of the camera is F, the output frame rate of the scan data is: F*(1-N / M), where parameters such as T, M, and N can be configured and adjusted by the software in real time to achieve dynamic frame dropping operation, which can be applicable to different scanners.

[0144] In this embodiment, by dividing the cycle groups, at least part of the sub-scan data in the sub-scan data groups are dropped from each cycle group, so that when the network conditions are poor, the frame dropping operation will not be concentrated in a certain section of the sub-scan data group, but will be evenly distributed in the entire data stream. The data in each cycle group has the opportunity to be retained or discarded, and the remaining scan data can also represent the entire scanning process as much as possible, reducing the scanning blind area caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0145] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0146] Frame dropping is performed on at least part of the sub-scanning data in part of the sub-scanning data groups located at the same position in each cycle group to adjust the output frame rate of the scanning data.

[0147] In this embodiment, the sub-scanning data groups in each cycle group are usually arranged in time sequence, and the same position can indicate that the sub-scanning data groups in each cycle group have the same position in time sequence. Figure 4 As shown, in one cycle group, if the sub-scan data group in the second group is subjected to frame dropping, then in other cycle groups, the sub-scan data group in the second group may also be subjected to frame dropping.

[0148] In this embodiment, by dropping frames for at least part of the sub-scan data in the partial sub-scan data groups located at the same position from each cycle group according to the communication network transmission rate, the frame dropping operation is further evenly distributed in the scan data, reducing the scan blind area caused by excessive local data loss, thereby improving the integrity of the scan data transmission to a certain extent.

[0149] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0150] Calculate the first target number of sub-scan data groups that need to be dropped in each cycle group according to the communication network transmission rate;

[0151] selecting sub-scan data groups from each of the cycle groups in the scan data according to a first target quantity;

[0152] Frames are dropped for at least part of the sub-scanning data in the selected sub-scanning data group to adjust the output frame rate of the scanning data.

[0153] In this embodiment, the first target number of sub-scanning data groups that need to be dropped in the cycle group can be determined according to the frame drop ratio and the number of sub-scanning data groups in the cycle group. The frame drop ratio can be determined according to the communication network transmission rate. For example, the communication network transmission rate is compared with the maximum output frame rate of the scan data to determine the ratio of frames that need to be dropped. For example, if the maximum output frame rate of the scan data is 30MB / s and the communication network transmission rate is 20MB / s, the frame drop ratio can be 1 / 3.

[0154] If the frame dropping strategy is to discard all the sub-scan data in the sub-scan data group, the first target number of sub-scan data groups that need to be dropped in the cycle group is the sub-scan data group in the cycle group multiplied by the frame dropping ratio. If the frame dropping strategy is to drop some of the sub-scan data in the sub-scan data group, the first target number needs to be calculated based on the number of frames of the sub-scan data discarded in the scan data group, the sub-scan data group in the cycle group and the frame dropping ratio.

[0155] In this embodiment, the first target number of sub-scan data groups that need to be dropped in each cycle group is calculated according to the transmission rate of the communication network, so that the frame dropping operation is real-time data based on the current network conditions, thereby improving the efficiency of scanning data transmission.

[0156] In some embodiments, calculating the first target number of sub-scan data groups that need to be dropped in each cycle group according to the communication network transmission rate includes:

[0157] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0158] A first target number of sub-scan data groups that need to be dropped frames in each cycle group is determined according to the maximum output frame rate.

[0159] In this embodiment, the maximum output frame rate supported by the communication network transmission rate can be calculated in combination with the size of each frame of sub-scan data. For example, if the size of each frame of sub-scan data is 1MB and the communication network transmission rate is 90MB / s, the maximum output frame rate supported is 90FPS. If the camera outputs scan data at a target frame rate of 100FPS, the frame loss ratio can be determined to be 0.1. Of course, in order to set a certain redundancy, the frame loss ratio can also be other values ​​greater than 0.1 and close to 0.1. After determining the frame loss ratio, the first target number can be calculated.

[0160] In this embodiment, the number of sub-scan data groups that need to be subjected to frame loss in each cycle group is determined according to the maximum output frame rate supported by the communication network transmission rate, so that the frame loss operation is performed based on the actual transmission capacity of the network, thereby reducing the problem of excessive frame loss or insufficient frame loss caused by network fluctuations, and helping to improve the efficiency of scanning data transmission while reducing information loss caused by frame loss.

[0161] In some embodiments, calculating the first target number of sub-scan data groups that need to be dropped in each cycle group according to the communication network transmission rate includes:

[0162] Matching a target output frame rate corresponding to a communication network transmission rate from a preset corresponding relationship;

[0163] A first target number is determined according to a target output frame rate.

[0164] In this embodiment, the correspondence between the communication network transmission rate and the output frame rate of the scan data can be pre-stored. For example, if the size of each frame of sub-scan data is 1MB and the communication network transmission rate is 90MB / s, the maximum output frame rate supported is 90FPS, and the corresponding target output frame rate can be 90FPS or any value less than 90FPS; if the communication network transmission rate is 70MB / s, the maximum output frame rate supported is 70FPS, and the corresponding target output frame rate can be 70FPS or any value less than 70FPS. After obtaining the current communication network transmission rate, the corresponding target output frame rate can be matched from the correspondence. Then, the frame loss ratio is determined according to the target output frame rate and the target frame rate of the camera. For example, if the camera outputs the scan data at a target frame rate of 100FPS and the target output frame rate is 80FPS, the frame loss ratio can be 0.2. After determining the frame loss ratio, the first target number can be calculated.

[0165] In this embodiment, by matching the target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship, the frame loss operation is performed based on the actual transmission capacity of the network and the preset performance parameters, thereby achieving precise control over the number of frame losses, reducing information loss caused by network fluctuations, and improving the overall reliability and efficiency of scanning data transmission.

[0166] In some embodiments, selecting sub-scan data groups from each cycle group in the scan data according to the first target number includes:

[0167] In case the first target number is a set of sub-scan data sets, one sub-scan data set is randomly selected from each cycle set.

[0168] In this embodiment, frame loss is achieved by randomly selecting a sub-scan data group in each cycle group, thereby reducing the preferential selection of specific cycle groups or sub-scan data groups, thereby reducing potential data deviations caused by the frame loss strategy, and the random selection mechanism makes it possible for data in each cycle group to be discarded, which helps to reduce the impact of network fluctuations on the integrity of scan data, thereby improving the reliability of scan data transmission.

[0169] In some embodiments, selecting sub-scan data groups from each cycle group in the scan data according to the first target number includes:

[0170] When the first target number is at least two groups of sub-scan data sets, a plurality of sub-scan data sets that are evenly distributed are selected from each circulation group.

[0171] In this embodiment, in order to reduce the concentration of lost data in a certain section of scan data, when the first target number is at least two groups, multiple evenly distributed sub-scan data groups can be selected from each cycle group. For example, if a cycle group includes 7 sub-scan data groups and the first target number is 3, the first, fourth and seventh sub-scan data groups can be selected, or the second, fourth and sixth sub-scan data groups can be selected, so as to reduce the situation where the selected sub-scan data groups are too concentrated.

[0172] In this embodiment, frame loss is performed by selecting multiple evenly distributed sub-scan data groups from each cycle group. This frame loss strategy makes the lost data evenly distributed in each cycle group, thereby dispersing the impact of frame loss among different cycle groups, further reducing the scanning blind area caused by excessive local data loss, and improving the reliability of scanning data transmission.

[0173] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0174] Selecting a sub-scan data group to be dropped every second target number of sub-scan data groups;

[0175] At least part of the sub-scanning data in the sub-scanning data group to be dropped is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0176] In this embodiment, in order to reduce the loss of data concentrated in a certain section of scan data, a sub-scan data group can be selected for frame dropping operation every second target number of sub-scan data groups. The second target data can be preset or determined according to the communication network transmission rate.

[0177] In this embodiment, frame dropping is performed every second target number of sub-scan data groups. Therefore, when network conditions are poor, the frame dropping operation will not be concentrated in a certain section of sub-scan data groups, but will be evenly distributed in the entire data stream, thereby reducing the scanning blind area caused by excessive local data loss, thereby improving the integrity of the scanning data transmission to a certain extent.

[0178] In some embodiments, before selecting the sub-scan data group to be dropped at every interval of the second target number of sub-scan data groups, the method includes:

[0179] The second target quantity is calculated according to the communication network transmission rate.

[0180] In this embodiment, the frame loss ratio can be calculated according to the communication network transmission rate, and then the second target number can be calculated according to the frame loss ratio. For example, if the frame loss strategy is to discard all the sub-scan data in the sub-scan data group, and the frame loss ratio is 1 / 3, then one sub-scan data group needs to be discarded for every 3 sub-scan data groups, and the second target number is 2; if the frame loss ratio is 1 / 4, then one sub-scan data group needs to be discarded for every 4 sub-scan data groups, and the second target number is 3. If the frame loss strategy is to discard part of the sub-scan data in the sub-scan data group, then the second target number needs to be calculated in combination with the number of frames of the sub-scan data discarded in the scan data group.

[0181] In this embodiment, by calculating the second target number according to the communication network transmission rate, the frame dropping operation can be accurately controlled. When the communication network transmission rate changes, frame dropping can be performed at intervals of the second target number of sub-scan data groups. This can more effectively utilize the available network bandwidth, reduce delays and packet loss in data transmission, and improve the reliability of data transmission.

[0182] In some embodiments, calculating the second target quantity according to the communication network transmission rate includes:

[0183] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0184] The second target number is determined according to the maximum output frame rate.

[0185] In this embodiment, the maximum output frame rate supported by the communication network transmission rate can be calculated in combination with the size of each frame of sub-scan data. For example, if the size of each frame of sub-scan data is 1MB and the communication network transmission rate is 90MB / s, the maximum output frame rate supported is 90FPS. If the camera outputs scan data at a target frame rate of 100FPS, the frame loss ratio can be determined to be 0.1. Of course, in order to set a certain redundancy, the frame loss ratio can also be other values ​​greater than 0.1 and close to 0.1. After determining the frame loss ratio, the second target number can be calculated.

[0186] In this embodiment, the number of sub-scanning data groups for frame drop operation intervals is determined according to the maximum output frame rate supported by the communication network transmission rate, so that the frame drop operation is performed based on the actual transmission capacity of the network, thereby reducing the problem of excessive or insufficient frame drop caused by network fluctuations, and helping to improve the scanning data transmission efficiency while reducing information loss caused by frame drop.

[0187] In some embodiments, calculating the second target quantity according to the communication network transmission rate includes:

[0188] Matching a target output frame rate corresponding to a communication network transmission rate from a preset corresponding relationship;

[0189] The second target number is determined according to the target output frame rate.

[0190] In this embodiment, the correspondence between the communication network transmission rate and the output frame rate of the scan data can be pre-stored. For example, if the size of each frame of sub-scan data is 1MB and the communication network transmission rate is 90MB / s, the maximum output frame rate supported is 90FPS, and the corresponding target output frame rate can be 90FPS or any value less than 90FPS; if the communication network transmission rate is 70MB / s, the maximum output frame rate supported is 70FPS, and the corresponding target output frame rate can be 70FPS or any value less than 70FPS. After obtaining the current communication network transmission rate, the corresponding target output frame rate can be matched from the correspondence. Then, the frame loss ratio is determined according to the target output frame rate and the target frame rate of the camera. For example, if the camera outputs the scan data at a target frame rate of 100FPS and the target output frame rate is 80FPS, the frame loss ratio can be 0.2. After determining the frame loss ratio, the second target number can be calculated.

[0191] In this embodiment, by matching the target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship, the frame loss operation is performed based on the actual transmission capacity of the network and the preset performance parameters, thereby achieving precise control over the number of frame losses, reducing information loss caused by network fluctuations, and improving the overall reliability and efficiency of scanning data transmission.

[0192] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0193] The sub-scanning data group is used as a frame dropping unit, and the sub-scanning data in part of the sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0194] In this embodiment, the sub-scan data group can be used as a frame loss unit, that is, the frame loss strategy is to discard all sub-scan data in the selected sub-scan data group. For example, a scan of the laser group is divided into a sub-scan data group, and the sub-scan data group is used as a frame loss unit. Each time a frame is lost, a sub-scan data group will be lost, and other sub-scan data groups still include the data corresponding to a complete scan, thereby reducing information loss caused by frame loss.

[0195] In this embodiment, by taking the sub-scan data group as the basic unit of frame loss, deciding which sub-scan data groups to be processed for frame loss is determined according to the real-time transmission rate of the communication network. When the network environment fluctuates, the integrity of the sub-scan data that has not been subjected to frame loss can be retained. This not only provides relatively stable data output under different network conditions, but also reduces information loss caused by frame loss, thereby improving the reliability of scanning data transmission.

[0196] In some embodiments, dropping frames of at least part of the sub-scanning data in the part of the sub-scanning data groups according to the communication network transmission rate to adjust the output frame rate of the scanning data includes:

[0197] Part of the sub-scanning data in the partial sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0198] In this embodiment, by selectively performing frame dropping processing on part of the sub-scan data in the sub-scan data group instead of performing frame dropping on the entire sub-scan data group, the frame dropping operation can be evenly distributed in different sub-scan groups. This frame dropping strategy helps to improve the efficiency of scanning data transmission while reducing information loss caused by frame dropping, thereby improving the reliability of scanning data transmission.

[0199] In some embodiments, the lasers corresponding to some of the sub-scanning data in different sub-scanning data groups are the same; or, the lasers corresponding to some of the sub-scanning data in different sub-scanning data groups are evenly distributed.

[0200] In this embodiment, by dropping frames of part of the sub-scan data in different sub-scan data groups, the lasers corresponding to these sub-scan data are the same, so that during the frame dropping process, the lost data are the data corresponding to the same laser, and the non-lost data in the sub-scan data group can still provide valid information, thereby reducing the local information loss caused by frame dropping.

[0201] The lasers corresponding to the sub-scanning data are evenly distributed, so that the lost data can be dispersed as much as possible instead of being concentrated on a certain laser, which can reduce the risk of information loss of a certain laser.

[0202] The scanning data transmission method of the scanner provided in the embodiment of the present application can be executed by the scanning data transmission device of the scanner. In the embodiment of the present application, the scanning data transmission method of the scanner is executed by the scanning data transmission device of the scanner as an example to illustrate the scanning data transmission device of the scanner provided in the embodiment of the present application.

[0203] The embodiment of the present application also provides a scanning data transmission device of a scanner.

[0204] like Figure 5 As shown, the scanning data transmission device of the scanner includes:

[0205] An acquisition module 510 is used to acquire scan data output by a camera in a scanner at a target frame rate;

[0206] A division module 520, for dividing the scan data into a plurality of sub-scan data groups;

[0207] The frame dropping module 530 is used to drop frames of at least part of the sub-scanning data in the partial sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0208] According to the scanning data transmission device of the scanner of the present application, the scanning data outputted by the camera in the scanner at the target frame rate is obtained; the scanning data is divided into a plurality of sub-scanning data groups; and at least a portion of the sub-scanning data in the partial sub-scanning data groups is dropped according to the transmission rate of the communication network to adjust the output frame rate of the scanning data. The embodiment of the present application obtains the scanning data outputted by the camera at the target frame rate, divides the scanning data into a plurality of sub-scanning data groups, and monitors the transmission rate of the communication network. When the transmission rate of the communication network changes, at least a portion of the sub-scanning data in the partial sub-scanning data groups is dropped to adjust the output frame rate so that the output frame rate matches the current network transmission rate, thereby reducing the pressure on the scanner hardware, reducing the camera overheating and battery consumption problems caused by frequent changes in the frame rate, and keeping the camera frame rate stable, which helps to maintain the consistency of power consumption of the entire device.

[0209] In some embodiments, the partitioning module 520 is further configured to:

[0210] Determine the number of lasers in the scanner that are active during scanning;

[0211] The scanning data is divided into a plurality of sub-scanning data groups according to the number of lasers in working state during the scanning process.

[0212] In some embodiments, the partitioning module 520 is further configured to:

[0213] Activating each laser in the working state in the scanner in sequence once is determined as a working cycle of the laser group;

[0214] The data captured by the camera corresponding to at least one working cycle of the laser group in the scanning data is divided into a sub-scanning data group.

[0215] In some embodiments, the frame dropping module 530 is further configured to:

[0216] Dividing a preset number of sub-scan data groups into a cycle group;

[0217] At least part of the sub-scanning data in the part of the sub-scanning data groups is dropped from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0218] In some embodiments, the frame dropping module 530 is further configured to:

[0219] Frame dropping is performed on at least part of the sub-scanning data in part of the sub-scanning data groups located at the same position in each cycle group to adjust the output frame rate of the scanning data.

[0220] In some embodiments, the frame dropping module 530 is further configured to:

[0221] Calculate the first target number of sub-scan data groups that need to be dropped in each cycle group according to the communication network transmission rate;

[0222] selecting sub-scan data groups from each of the cycle groups in the scan data according to a first target quantity;

[0223] Frames are dropped for at least part of the sub-scanning data in the selected sub-scanning data group to adjust the output frame rate of the scanning data.

[0224] In some embodiments, the frame dropping module 530 is further configured to:

[0225] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0226] A first target number of sub-scan data groups that need to be dropped frames in each cycle group is determined according to the maximum output frame rate.

[0227] In some embodiments, the frame dropping module 530 is further configured to:

[0228] Matching a target output frame rate corresponding to a communication network transmission rate from a preset corresponding relationship;

[0229] A first target number is determined according to a target output frame rate.

[0230] In some embodiments, the frame dropping module 530 is further configured to:

[0231] In case the first target number is a set of sub-scan data sets, one sub-scan data set is randomly selected from each cycle set.

[0232] In some embodiments, the frame dropping module 530 is further configured to:

[0233] When the first target number is at least two groups of sub-scan data sets, a plurality of sub-scan data sets that are evenly distributed are selected from each circulation group.

[0234] In some embodiments, the frame dropping module 530 is further configured to:

[0235] Selecting a sub-scan data group to be dropped every second target number of sub-scan data groups;

[0236] At least part of the sub-scanning data in the sub-scanning data group to be dropped is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0237] In some embodiments, the frame dropping module 530 is further configured to:

[0238] Calculating a second target quantity according to a communication network transmission rate;

[0239] At least part of the sub-scanning data in the sub-scanning data group is dropped every second target number of sub-scanning data groups according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0240] In some embodiments, the frame dropping module 530 is further configured to:

[0241] Calculate the maximum output frame rate supported by the communication network transmission rate;

[0242] The second target number is determined according to the maximum output frame rate.

[0243] In some embodiments, the frame dropping module 530 is further configured to:

[0244] Matching a target output frame rate corresponding to a communication network transmission rate from a preset corresponding relationship;

[0245] The second target number is determined according to the target output frame rate.

[0246] In some embodiments, the frame dropping module 530 is further configured to:

[0247] The sub-scanning data group is used as a frame dropping unit, and the sub-scanning data in part of the sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0248] In some embodiments, the frame dropping module 530 is further configured to:

[0249] Part of the sub-scanning data in the partial sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

[0250] The scanning data transmission device of the scanner in the embodiment of the present application can be an electronic device, or a component in the electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal, or it can be other devices other than the terminal. Exemplarily, the electronic device can be a scanner, a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted electronic device, a mobile Internet device (Mobile Internet Device, MID), an augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) device, a robot, a wearable device, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a netbook or a personal digital assistant (personal digital assistant, PDA), etc. It can also be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (personal computer, PC), a television (television, TV), a teller machine or a self-service machine, etc., and the embodiment of the present application is not specifically limited.

[0251] The scanning data transmission device of the scanner in the embodiment of the present application may be a device having an operating system. The operating system may be a Microsoft (Windows) operating system, an Android (Android) operating system, an IOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.

[0252] In some embodiments, Figure 6 As shown, an embodiment of the present application also provides an electronic device 600, including a processor 601, a memory 602, and a computer program stored in the memory 602 and executable on the processor 601. When the program is executed by the processor 601, each process of the scanning data transmission method embodiment of the above-mentioned scanner is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described here.

[0253] It should be noted that the electronic devices in the embodiments of the present application include the above-mentioned mobile electronic devices and non-mobile electronic devices.

[0254] The embodiment of the present application also provides a scanner, comprising: a camera, a laser group and a controller;

[0255] The laser group includes a plurality of lasers;

[0256] A camera, used for capturing reflections generated by lasers emitted by each laser of the laser group to the scanned object at a target frame rate to form scanning data;

[0257] The controller is used to execute each process of the above-mentioned scanner scanning data transmission method embodiment, and can achieve the same technical effect. To avoid repetition, it is not repeated here. The controller can be the above-mentioned electronic device.

[0258] An embodiment of the present application also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the various processes of the scanning data transmission method embodiment of the above-mentioned scanner are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0259] The processor is the processor in the electronic device in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk or an optical disk.

[0260] An embodiment of the present application also provides a computer program product, including a computer program, which implements the scanning data transmission method of the above-mentioned scanner when executed by a processor.

[0261] The processor is the processor in the electronic device in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk or an optical disk.

[0262] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface and the processor are coupled, and the processor is used to run programs or instructions to implement the various processes of the scanning data transmission method embodiment of the above-mentioned scanner, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0263] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0264] It should be noted that, in this article, the terms "comprise", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise one..." do not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.

[0265] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, a disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0266] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.

[0267] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "illustrative embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials, or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.

[0268] Although the embodiments of the present application have been shown and described, those skilled in the art will appreciate that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present application, and that the scope of the present application is defined by the claims and their equivalents.

Claims

1. A scanning data transmission method of a scanner, characterized in that: include: Obtain the scan data output by the camera in the scanner at a target frame rate; Dividing the scan data into a plurality of sub-scan data groups; At least part of the sub-scanning data in part of the sub-scanning data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

2. The method according to claim 1, characterized in that The step of dividing the scan data into a plurality of sub-scan data groups comprises: Determining the number of lasers in the scanner that are in operation during a scan; The scanning data is divided into a plurality of sub-scanning data groups according to the number of lasers in working state during the scanning process.

3. The method according to claim 1, characterized in that: The step of dividing the scan data into a plurality of sub-scan data groups comprises: Activating each laser in the working state in the scanner in sequence once is determined as a working cycle of the laser group; The data captured by the camera corresponding to at least one working cycle of the laser group in the scanning data is divided into a sub-scanning data group.

4. The method according to claim 1, characterized in that: The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups according to the transmission rate of the communication network to adjust the output frame rate of the scanning data comprises: Dividing a preset number of sub-scan data groups into a cycle group; According to the communication network transmission rate, at least part of the sub-scanning data in part of the sub-scanning data groups are dropped from each cycle group to adjust the output frame rate of the scanning data.

5. The method according to claim 4, characterized in that The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data comprises: At least part of the sub-scanning data in part of the sub-scanning data groups located at the same position in each cycle group is dropped to adjust the output frame rate of the scanning data.

6. The method according to claim 4, characterized in that The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups from each cycle group according to the communication network transmission rate to adjust the output frame rate of the scanning data comprises: Calculate a first target number of sub-scan data groups that need to be dropped frames in each cycle group according to the communication network transmission rate; selecting sub-scan data groups from each of the cycle groups in the scan data according to the first target quantity; Frames are dropped for at least part of the sub-scanning data in the selected sub-scanning data group to adjust the output frame rate of the scanning data.

7. The method according to claim 6, characterized in that The calculating, according to the communication network transmission rate, a first target number of sub-scan data groups that need to be dropped in each cycle group includes: Calculate the maximum output frame rate supported by the communication network transmission rate; A first target number of sub-scan data groups that need to be dropped frames in each cycle group is determined according to the maximum output frame rate.

8. The method according to claim 6, characterized in that The calculating, according to the communication network transmission rate, a first target number of sub-scan data groups that need to be dropped in each cycle group includes: Matching a target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship; The first target quantity is determined according to the target output frame rate.

9. The method according to claim 6, characterized in that The selecting sub-scan data groups from each cycle group in the scan data according to the first target quantity comprises: In case the first target number is a group of the sub-scan data sets, one sub-scan data set is randomly selected from each cycle group.

10. The method according to claim 6, characterized in that The selecting sub-scan data groups from each cycle group in the scan data according to the first target quantity comprises: When the first target number is at least two of the sub-scan data sets, a plurality of sub-scan data sets that are evenly distributed are selected from each cycle group.

11. The method according to claim 1, characterized in that: The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups according to the transmission rate of the communication network to adjust the output frame rate of the scanning data comprises: Selecting a sub-scan data group to be dropped every second target number of sub-scan data groups; At least part of the sub-scanning data in the sub-scanning data group to be dropped is dropped according to the communication network transmission rate to adjust the output frame rate of the scanning data.

12. The method according to claim 11, characterized in that Before selecting the sub-scan data group to be dropped at every interval of the second target number of sub-scan data groups, the method includes: The second target quantity is calculated according to the communication network transmission rate.

13. The method according to claim 12, characterized in that The calculating the second target quantity according to the communication network transmission rate comprises: Calculate the maximum output frame rate supported by the communication network transmission rate; The second target number is determined according to the maximum output frame rate.

14. The method according to claim 13, characterized in that The calculating the second target quantity according to the communication network transmission rate comprises: Matching a target output frame rate corresponding to the communication network transmission rate from a preset corresponding relationship; The second target number is determined according to the target output frame rate.

15. The method according to any one of claims 1 to 14, characterized in that The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups according to the transmission rate of the communication network to adjust the output frame rate of the scanning data comprises: The sub-scan data group is used as a frame dropping unit, and the sub-scan data in part of the sub-scan data group is dropped according to the communication network transmission rate to adjust the output frame rate of the scan data.

16. The method according to any one of claims 1 to 14, characterized in that The step of dropping frames of at least part of the sub-scanning data in part of the sub-scanning data groups according to the transmission rate of the communication network to adjust the output frame rate of the scanning data comprises: According to the transmission rate of the communication network, part of the sub-scanning data in part of the sub-scanning data group is dropped to adjust the output frame rate of the scanning data.

17. The method according to claim 16, characterized in that The lasers corresponding to the parts of the sub-scanning data in different sub-scanning data groups are the same; or, the lasers corresponding to the parts of the sub-scanning data in different sub-scanning data groups are evenly distributed.

18. A scanning data transmission device for a scanner, characterized in that: include: An acquisition module, used for acquiring scan data outputted by a camera in a scanner at a target frame rate; A division module, used for dividing the scan data into a plurality of sub-scan data groups; The frame dropping module is used to drop frames of at least part of the sub-scanning data in part of the sub-scanning data group according to the communication network transmission rate to adjust the output frame rate of the scanning data.

19. A scanner, characterized in that: include: Camera, laser set and controller; The laser group includes multiple lasers; The camera is used to capture the reflections generated by the lasers emitted by each laser of the laser group to the scanned object at a target frame rate to form scanning data; The controller is used to execute the method according to any one of claims 1-17.

20. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method according to any one of claims 1 to 17 is implemented.

21. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 17 is implemented.