WO2022252854A1 - 同步方法、电子设备、计算机可读存储介质及程序产品 - Google Patents

同步方法、电子设备、计算机可读存储介质及程序产品 Download PDF

Info

Publication number
WO2022252854A1
WO2022252854A1 PCT/CN2022/087849 CN2022087849W WO2022252854A1 WO 2022252854 A1 WO2022252854 A1 WO 2022252854A1 CN 2022087849 W CN2022087849 W CN 2022087849W WO 2022252854 A1 WO2022252854 A1 WO 2022252854A1
Authority
WO
WIPO (PCT)
Prior art keywords
shooting
frame rate
photographing
central device
devices
Prior art date
Application number
PCT/CN2022/087849
Other languages
English (en)
French (fr)
Inventor
彭冠奇
郑双喜
王金波
侯哲
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202110838135.5A external-priority patent/CN115484381A/zh
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022252854A1 publication Critical patent/WO2022252854A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/73Colour balance circuits, e.g. white balance circuits or colour temperature control

Definitions

  • Embodiments of the present disclosure relate to the field of terminals, and more specifically, to a synchronization method, an electronic device, a computer-readable storage medium, and a program product.
  • the multiple shooting devices are not synchronized when shooting, resulting in unsatisfactory synergistic effects.
  • Embodiments of the present disclosure provide a solution for synchronous shooting by multiple shooting devices.
  • a synchronization method includes: the central device performs time synchronization with each of the multiple shooting devices to determine time synchronization information with each shooting device; the central device sends the first frame rate information to the multiple shooting devices, and the first The frame rate information is used to indicate the target frame rate; the central device sends a first shooting instruction to multiple shooting devices, the first shooting instruction includes a first shooting start time, and the first shooting start time is based on the clock of the central device; and the central device Videos captured with the first shooting start time and at a target frame rate are respectively received from the plurality of shooting devices.
  • the central device can perform time synchronization with multiple shooting devices and specify the first shooting start time by sending the first shooting instruction, so that multiple shooting devices can start shooting at the same time, which can ensure the time when multiple shooting devices are shooting. First frame alignment.
  • the central device can synchronize the subsequent frames when shooting by multiple shooting devices, thereby ensuring the effect of post-processing of videos shot by multiple shooting devices.
  • the method before the time synchronization, further includes: establishing connections between the central device and the plurality of shooting devices respectively.
  • the central device establishes a wireless connection with each of the multiple shooting devices, and the central device and the multiple shooting devices are in the same local area network environment.
  • the central device establishes connections with multiple shooting devices in the same local area network environment, so that the transmission delay between the central device and the shooting devices can be kept constant or negligible, thus ensuring the effect of synchronization.
  • the central device determines the second shooting start time based on the first shooting start time and the target frame rate; the central device sends a second shooting instruction to another shooting device, and the second shooting instruction includes The second shooting start time; and the central device receives the video shot starting from the second shooting start time from another shooting device.
  • the second shooting start time is determined so that the plurality of shooting devices and another shooting device perform simultaneous shooting.
  • the second shooting start time can be determined based on the determined first shooting start time and target frame rate, so that another shooting device can perform synchronous shooting with multiple shooting devices that have been notified before. In this way, even for a newly added device, the shooting synchronization with the shooting device being shot can be guaranteed.
  • the method further includes: the central device sends second frame rate information to another shooting device, where the second frame rate information is used to indicate the target frame rate.
  • the central device may receive from another shooting device a video shot with the second shooting start time as a starting point and at a target frame rate.
  • the second frame rate information to indicate the target frame rate to another shooting device, it is possible to make another newly added shooting device and multiple shooting devices use the same target frame rate for image shooting, thereby ensuring the accuracy of each frame.
  • the recordings are all synchronized.
  • the first aspect also includes: based on the time synchronization information between the central device and the multiple shooting devices, determining a plurality of frames in the videos shot by the multiple shooting devices that are respectively shot at the same moment; and The device performs image post-processing on multiple frames.
  • the central device can fully and effectively utilize the images simultaneously captured by multiple shooting devices by performing post-processing on multiple frames captured synchronously from multiple shooting devices, and provide users with a richer experience than a single device.
  • the central device determines a plurality of frames respectively captured at the same moment in the video captured by the plurality of shooting devices and another shooting device; and the central device executes image processing on the multiple frames. post-processing.
  • the central device receiving the shooting capability information of each of the multiple shooting devices; and determining the target frame rate based on the shooting capability information of the multiple shooting devices.
  • a synchronization method includes: the photographing device and the central device perform time synchronization to determine time synchronization information; the photographing device receives frame rate information from the central device, and the frame rate information is used to indicate the target frame rate; the photographing device receives a photographing instruction from the central device, and the photographing instruction Including the shooting start time, the shooting start time is based on the clock of the central device; the shooting device determines the local startup time corresponding to the shooting start time based on the time synchronization information, and the local startup time is based on the clock of the shooting device; the shooting device starts from the local Time begins to shoot video according to the target frame rate; and the shooting device sends the captured video to the central device.
  • the second aspect before the time synchronization, it further includes: establishing a connection between the shooting device and the central device.
  • the shooting device establishes a wireless connection with the central device, and the central device and the shooting device are in the same local area network environment.
  • shooting the video according to the target frame rate includes: the shooting device sets shooting parameters of the shooting device based on the target frame rate; and the shooting device shoots the video based on the shooting parameters.
  • the shooting parameters include at least one of the following: the number of rows of pixels when the image is exposed, and the number of rows of blank pixels filled in when the image is exposed.
  • an apparatus for synchronization includes: a synchronization module, configured to perform time synchronization with each of the multiple shooting devices, so as to determine time synchronization information with each shooting device; a sending module, configured to send to the multiple shooting devices First frame rate information, the first frame rate information is used to indicate the target frame rate; the sending module is also configured to send a first shooting instruction to multiple shooting devices, the first shooting instruction includes the first shooting start time, the first shooting The start time is based on the clock of the device; and the receiving module is configured to respectively receive the videos shot at the target frame rate starting from the first shooting start time from the plurality of shooting devices.
  • a connection module is further included, configured to respectively establish a connection with each of the plurality of shooting devices.
  • it further includes a determining module configured to determine a second shooting start time based on the first shooting start time and the target frame rate; and wherein the sending module is further configured to send the second shooting start time to another shooting device Two shooting instructions, the second shooting instruction includes the second shooting start time, the second shooting start time is based on the clock of the device; The captured video.
  • the second shooting start time is determined so that the plurality of shooting devices and another shooting device perform simultaneous shooting.
  • the sending module is further configured to: send second frame rate information to another shooting device, where the second frame rate information is used to indicate the target frame rate.
  • the receiving module may be configured to receive from another shooting device a video shot with the second shooting start time as a starting point and at a target frame rate.
  • a processing module is further included, configured to determine a plurality of frames respectively captured at the same moment in the videos captured by the multiple capture devices based on the time synchronization information with the multiple capture devices ; and perform image post-processing on multiple frames.
  • the processing module is configured to determine a plurality of frames respectively captured at the same moment in the videos captured by the multiple capture devices and another capture device; and perform image post-processing on the multiple frames .
  • the receiving module may be further configured to receive shooting capability information of each of the multiple shooting devices; and the determining module may be configured to determine the target based on the shooting capability information of the multiple shooting devices frame rate.
  • an apparatus for synchronization includes: a synchronization module configured to perform time synchronization with a central device to determine time synchronization information; a receiving module configured to receive frame rate information from the central device, and the frame rate information is used to indicate a target frame rate; the receiving module, It is also configured to receive a shooting instruction from the central device, the shooting instruction includes a shooting start time, and the shooting start time is based on the clock of the central device; The local startup time corresponding to the shooting start time, the local startup time is based on the clock of the device; the shooting module is configured to start shooting video at the target frame rate from the local startup time; and the sending module is configured to send the captured video sent to the central device.
  • connection module configured to establish a connection with the central device.
  • the determining module is further configured to set a shooting parameter of the device based on the target frame rate, and wherein the shooting module is configured to shoot a video based on the shooting parameter.
  • the shooting parameters include at least one of the following: the number of rows of pixels when the image is exposed, and the number of rows of blank pixels filled in when the image is exposed.
  • the apparatus includes a photographing device.
  • an electronic device in a fifth aspect, includes a transceiver, a processor, and a memory.
  • the memory stores instructions executed by the processor.
  • the electronic device realizes: Perform time synchronization to determine time synchronization information with each shooting device; send first frame rate information to multiple shooting devices via a transceiver, and the first frame rate information is used to indicate the target frame rate; send multiple shooting devices via a transceiver
  • the device sends a first shooting instruction, the first shooting instruction includes a first shooting start time, and the first shooting start time is based on the clock of the electronic device; A video shot at the starting point and at the target frame rate.
  • the processor executes the instruction so that the electronic device implements: respectively establishing a connection with each of the plurality of shooting devices.
  • the processor executes instructions so that the electronic device realizes: determining the second shooting start time based on the first shooting start time and the target frame rate; sending the second shooting instruction to another shooting device via a transceiver , the second shooting instruction includes a second shooting start time; and receiving a video shot starting from the second shooting start time from another shooting device via a transceiver.
  • the second shooting start time is determined such that the plurality of shooting devices and another shooting device perform simultaneous shooting.
  • the processor executes instructions to enable the electronic device to: send the second frame rate information to another shooting device via the transceiver, where the second frame rate information is used to indicate the target frame rate.
  • the processor executes instructions so that the electronic device realizes: based on the time synchronization information with multiple shooting devices, determine how many videos captured by multiple shooting devices are respectively shot at the same time frames; and performing image post-processing on multiple frames.
  • the processor executes instructions so that the electronic device realizes: receiving the shooting capability information of each of the multiple shooting devices via the transceiver; and determining the target based on the shooting capability information of the multiple shooting devices frame rate.
  • an electronic device in a sixth aspect, includes a transceiver, a processor, and a memory, and the memory stores instructions executed by the processor.
  • the electronic device realizes: performing time synchronization with a central device to determine time synchronization information ; Receive frame rate information from the central device via the transceiver, the frame rate information is used to indicate the target frame rate; receive a shooting instruction from the central device via the transceiver, the shooting instruction includes a shooting start time, and the shooting start time is based on the clock of the central device; Based on the time synchronization information between the electronic device and the central device, determine a local startup time corresponding to the shooting start time, where the local startup time is based on the clock of the electronic device; start shooting video at a target frame rate from the local startup time; and The captured video is sent to the central device via the transceiver.
  • the processor executes the instruction so that the electronic device implements: establishing a connection with the central device.
  • the processor executes instructions to enable the electronic device to: set shooting parameters of the electronic device based on the target frame rate; and shoot video based on the shooting parameters.
  • the shooting parameters include at least one of the following: the number of rows of pixels when the image is exposed, and the number of rows of blank pixels filled in when the image is exposed.
  • the electronic device includes a photographing device.
  • a computer-readable storage medium on which a computer program is stored.
  • the computer program is executed by a processor, the above-mentioned first aspect or second aspect or any implementation thereof is realized. The operation of the method described in the manner.
  • a chip or system-on-a-chip includes a processing circuit configured to perform the operations of the method according to the first aspect or the second aspect or any implementation thereof.
  • a computer program or computer program product is provided.
  • the computer program or computer program product is tangibly stored on a computer-readable medium and includes computer-executable instructions, which, when run on a computer, cause the computer to perform The operations of the methods described in the manner are implemented.
  • a distributed camera system includes a plurality of shooting devices, and any shooting device in the multiple shooting devices includes the device as described in the fourth aspect or any implementation thereof, or includes the device as described in the sixth aspect or any implementation thereof Electronic equipment.
  • Figure 1 shows a schematic diagram of an example environment in which embodiments of the present disclosure may be implemented
  • Fig. 2 shows a signaling interaction diagram of a synchronization process of a camera device according to some embodiments of the present disclosure
  • FIG. 3 shows a signaling interaction diagram of a process for a central device to determine time synchronization information according to some embodiments of the present disclosure
  • Fig. 4 shows a signaling interaction diagram of a process in which a central device performs frame rate control on a shooting device according to some embodiments of the present disclosure
  • Fig. 5 shows another signaling interaction diagram of the synchronization process of the camera device according to some embodiments of the present disclosure
  • FIG. 6 shows a schematic flowchart of a synchronization process according to some embodiments of the present disclosure
  • FIG. 7 shows a schematic flowchart of a synchronization process according to some embodiments of the present disclosure
  • Fig. 8 shows a schematic block diagram of an apparatus for synchronization according to some embodiments of the present disclosure
  • FIG. 9 shows another schematic block diagram of an apparatus for synchronization according to some embodiments of the present disclosure.
  • Figure 10 shows a schematic block diagram of an example device that may be used to implement embodiments of the present disclosure.
  • the distributed shooting system may include a shooting array composed of at least two shooting devices, where the shooting devices can take images or videos, and the shooting devices may be called image acquisition devices, etc., and the distributed shooting system may also be called a distributed shooting array , Distributed image acquisition system, etc.
  • the "image" in the embodiments of the present disclosure may be an image captured by a capturing device or may be a frame of a video captured by a capturing device.
  • capturing an image in the embodiments of the present disclosure may include: capturing a single image, capturing a video, or capturing a frame of a video, and the like.
  • video may also be referred to as image stream, frame stream, video stream, media stream, etc., which is not limited in the present disclosure.
  • At least two shooting devices in the distributed shooting system can shoot at the same time to obtain more visual information, and then can realize multi-channel image display on the same screen and real-time stitching of multiple images through mutual cooperation.
  • a distributed camera system can be implemented in various scenarios.
  • a distributed shooting system can be implemented as a wide-angle shooting system. Multiple shooting devices in the system can be arranged at a certain angle and spacing to form a wide-angle shooting array. Each shooting device is responsible for image shooting in a certain area, and then wide-angle shooting The system can stitch images taken by multiple shooting devices to generate a stitched image with a wider field of view.
  • a distributed shooting system can be implemented as a three-dimensional (3D) reconstruction system.
  • Multiple shooting devices in the system can be arranged around the target object at a certain angle and distance, and each shooting device is responsible for the image of the target object within a certain field of view.
  • the 3D reconstruction system can perform 3D reconstruction based on images captured by multiple shooting devices, so as to generate a 3D reconstruction model of the target object.
  • different shooting devices may be affected by network conditions, hardware differences, etc., so that the frame rates of different shooting devices are different, and the time points of images captured by different shooting devices are also different. different. This will lead to greater difficulty in performing post-processing on at least two images taken by at least two shooting devices. Especially in the case of a moving target object, at least two images captured by the distributed capture system cannot even meet post-processing requirements, which affects user experience.
  • the present disclosure provides a scheme for synchronizing the shooting devices of the distributed shooting system, thereby ensuring that the image shooting of different shooting devices in the distributed shooting system is synchronized, meeting the requirements for image post-processing, and improving user experience.
  • FIG. 1 shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure may be implemented.
  • a central device 110 and a distributed camera system 120 are shown, wherein the distributed camera system 120 includes a plurality of camera devices, such as camera device 122-1, camera device 122-2, and camera device 122-3.
  • the central device 110 can interact with the distributed shooting system 120.
  • the distributed shooting system 120 can capture images or videos captured by the shooting device 122-1, the shooting device 122-2, and the shooting device 122-3 respectively. transmitted to the central device 110.
  • the photographing device 122 - 1 , the photographing device 122 - 2 , and the photographing device 122 - 3 are collectively referred to as the photographing device 122 in the embodiment of the present disclosure.
  • Wired methods may include but not limited to optical fiber connection, Universal Serial Bus (Universal Serial Bus, USB) connection, etc.
  • Wireless methods may include but not limited to 2G/3G/4G/5G/6G, Wi-Fi, Bluetooth (Bluetooth), Point-to-point (Point to Point, P2P) and so on.
  • the central device 110 and the photographing device 122 can be in the same local area network environment, and the central device 110 can discover the photographing device 122 located in the same local area network environment, and establish a Wi-Fi connection with the photographing device 122, such as the central Device 110 and camera device 122 may be connected to the same router.
  • the communication connection modes between the central device 110 and different shooting devices 122 may be the same or different.
  • the connection mode between the central device 110 and the photographing device 122-1 may be different from the connection mode between the central device 110 and the photographing device 122-2.
  • Embodiments of the present disclosure do not limit the arrangement of each photographing device in the distributed photographing system 120 .
  • the photographing device 122-1, the photographing device 122-2, and the photographing device 122-3 may be arranged side by side, so that when photographing the target object, the photographing directions of the target object are parallel or substantially consistent.
  • the photographing device 122-1, the photographing device 122-2, and the photographing device 122-3 may be arranged around the target object, so that when photographing the target object, the photographing direction of the target object forms a certain angle.
  • the shooting areas of two adjacent shooting devices in the distributed shooting system 120 may partially overlap.
  • the shooting device 122-1 shoots a target object to obtain a first image
  • the shooting device 122-2 shoots a target object to obtain a second image
  • the first area in the first image and the second area in the second image are for the target The same shooting area of the object.
  • the first area occupies 1/4 or more of the first image
  • the second area occupies 1/4 or more of the second image.
  • the distributed shooting system 120 includes three shooting devices, this embodiment of the present disclosure is not limited thereto, and the number of shooting devices included in the distributed shooting system 120 can be set according to the scene or the like. quantity.
  • the central device 110 is shown in FIG. A part of the shooting system 120, for example, the central device 110 may be an electronic device where the shooting device 122-1, the shooting device 122-2, or the shooting device 122-3 is located.
  • the central device 110 may be a desktop computer, a laptop computer, a tablet computer, a smart phone, a wearable device, a cloud computing device, and the like.
  • the photographing device 122 may be an independent device or may be an external device of other electronic devices, for example, the photographing device 122 may be implemented as an electronic device having a photographing function.
  • the shooting device 122 may include a camera, a video camera, a capture device, a mobile phone, a tablet computer, a wearable device, a laptop computer, etc., which is not limited in the present disclosure.
  • Fig. 2 shows a signaling interaction diagram of a synchronization process 200 of photographing devices in a distributed photographing system according to some embodiments of the present disclosure.
  • the central device 110 and the photographing device 122 are involved.
  • the photographing device 122 includes any photographing device in the distributed photographing system 120 , that is, the process 200 can be executed for each photographing device 122 in the distributed photographing system 120 .
  • the central device 110 performs time synchronization 210 with the camera device 122 .
  • the central device 110 may establish a connection with the photographing device 122 .
  • a connection For example wired connection or wireless connection.
  • the central device 110 may discover the shooting device 122 in the same local area network environment, and establish a wireless connection with the shooting device 122 .
  • both the central device 110 and the photographing device 122 may be connected to the same access point (Access Point, AP), and there is a Wi-Fi connection between the central device 110 and the photographing device 122.
  • AP access point
  • the time synchronization information between the central device 110 and the photographing device 122 can be expressed as diff, which is used to indicate how much faster the local clock (CLK1) of the central device 110 is than the local clock (CLK2) of the photographing device 122.
  • the camera 122 records 330 a second local time of the camera 122 when the first message was received.
  • the second local time of the shooting device 122 may be denoted as T12, indicating that the shooting device 122 receives the first message at T12.
  • the shooting device 122 sends 340 a second message to the central device 110, where the second message carries a third local time of the shooting device 122 when sending.
  • the third local time of the shooting device 122 may be denoted as T21, indicating that the shooting device 122 sends the second message at T21.
  • the central device 110 determines 360 time synchronization information with the photographing device 122 .
  • the time synchronization information may be the time difference between the clock of the central device 110 and the clock of the photographing device 122 , for example expressed as diff, indicating how much faster the clock of the central device 110 is than the clock of the photographing device 122 .
  • the photographing device 122 may also determine time synchronization information with the central device 110 . In some embodiments, it can be determined through a process similar to that of FIG. 3 . In some embodiments, the central device 110 can inform the shooting device 122 of the fourth local time after 350, so that the shooting device 122 can also base on the first local time, the second local time, the third local time and the fourth local time , it is determined that the clock at the central device 110 is faster than the clock at the photographing device 122 by diff.
  • the time synchronization between the central device 110 and the shooting device 122 can be realized. Since the time delay of message transmission between the central device 110 and the shooting device 122 is basically unchanged, the accuracy of the time synchronization is relatively high. High, able to meet the scene requirements. For example, the accuracy of time synchronization can be controlled within plus or minus 1 millisecond.
  • the photographing device 122 sends 410 photographing capability information to the central device 110 .
  • the central device 110 sends 430 the target frame rate to the shooting device 122 .
  • the central device 110 may send the frame rate information carrying the target frame rate to the shooting device 122 .
  • the central device 110 may send the indication information of the target frame rate to the shooting device 122 .
  • the corresponding relationship between the instruction information and the target frame rate may be preset, for example, the instruction information 00 corresponds to the target frame rate of 30 fps, such as the instruction information 100 corresponds to the target frame rate of 100 fps, and so on. In this way, the target frame rate can be implicitly indicated through the indication information, thereby reducing signaling overhead and improving the efficiency of frame rate control.
  • the shooting device 122 sets 440 shooting parameters of the shooting device 122 to meet the target frame rate.
  • the shooting device 122 can determine the shooting parameters based on the target frame rate, and set the shooting parameters to the driving layer of the shooting device 122 .
  • the shooting parameters may include but not limited to: the number of lines exposed in one frame of image, blank lines filled in one frame of image, and the like.
  • the number of lines exposed by one frame of image can be represented as exposure_line
  • the blank line filled by one frame of image can be represented as dummy_line.
  • the central device 110 sends 230 a first shooting instruction to the shooting device 122 , where the first shooting instruction includes a first shooting start time.
  • the central device 110 may designate a certain time point in the future as the first shooting start time (denoted as T0), and the first shooting start time is based on the clock at the central device 110 .
  • the duration between the first shooting start time and the current time of the central device 110 can be long enough , to ensure that each shooting device has enough time to start shooting at the first shooting start time.
  • the duration may be on the order of seconds (s) or even longer.
  • the photographing device 122 determines 240 a first local startup time corresponding to the first photographing start time, wherein the first local time is based on a clock of the photographing device 122 .
  • the first local start time (denoted as t1) corresponding to the first shooting start time (T0) can be determined as T0-diff.
  • the shooting device 122 shoots 250 videos at the target frame rate starting from the first local startup time.
  • the shooting device 122 may call its shooting open (Open) interface, open the sensor of the shooting device 122 at the first local startup time, and start shooting.
  • Open shooting open
  • different shooting devices 122 generally take different time to start shooting due to different driving of the shooting devices.
  • the time taken to start shooting can be determined by testing before the shooting device 122 leaves the factory, and its magnitude is generally at the level of microseconds ( ⁇ s) or milliseconds (ms).
  • the frames of the video captured by the capturing device 122 may carry a time stamp, which represents time information when the corresponding frame is captured.
  • image post-processing may include synthesizing (such as splicing) multiple frames, so as to obtain a composite image with a wider field of view.
  • image post-processing may include constructing a three-dimensional model based on multiple frames, thereby realizing three-dimensional construction.
  • the central device 110 may also perform other post-processing on the received video, and the scope of the embodiments of the present disclosure is not limited in this respect.
  • central device 110 determines 510 a second capture start time.
  • the central device 110 may establish a connection with the photographing device 124, such as a wired or wireless connection.
  • a connection such as a wired or wireless connection.
  • the central device 110 may perform time synchronization 502 with the photographing device 124 to determine time synchronization information.
  • the shooting device 124 is a newly added shooting device, then 502 may be executed.
  • the photographing device 124 is a photographing device shut down and restarted in the original photographing device 122, and the last time synchronization between the central device 110 and the photographing device 124 has passed a predetermined period of time (such as 2 hours or other values). Then step 502 can be executed, so as to perform time synchronization again.
  • a predetermined period of time such as 2 hours or other values
  • the central device 110 may perform frame rate control 504 on the shooting device 124 .
  • the central device 110 can send the target frame rate to the shooting device 124, and then the shooting device 124 can set the shooting parameters of the shooting device 124 based on the target frame rate. It can be understood that the target frame rate is determined by the central device 110 for the shooting device 122 , as described above in conjunction with 420 in FIG. 4 .
  • the central device 110 sends 520 a second shooting instruction to the shooting device 124, where the second shooting instruction includes a second shooting start time.
  • the capture device 124 determines 530 a second local start time corresponding to the second capture start time.
  • the second shooting start time is based on the clock of the central device 110
  • the second local start time is based on the clock of the shooting device 124 .
  • the process of determining the second local startup time by the camera device 124 is similar to the process 240 of determining the first local startup time by the camera device 122 in FIG. 2 .
  • the shooting device 124 starts shooting 540 a video at the target frame rate from the second local startup time, and sends 550 the shot video to the central device 110 .
  • 250 and 260 in FIG. 2 can be similarly referred to for 540 and 550 , which are not repeated here for the sake of brevity.
  • Central device 110 may perform post-processing 560 on the video. Specifically, the central device 110 may perform post-processing on videos shot by each shooting device (including the shooting device 122 and the shooting device 124 ) in the distributed shooting system 120 .
  • the frame of the video may have a time stamp, and the central device 110 may determine that multiple shooting devices are on the same Multiple frames taken separately in time, image post-processing can then be performed on multiple frames.
  • the shooting start time can be re-determined, so as to ensure that the shooting of each shooting device in the distributed shooting system is synchronized, and it is realized for
  • the dynamic control of the synchronization process of each shooting device in the distributed shooting system facilitates further processing of videos shot by each shooting device in the distributed shooting system, ensures image processing efficiency, and improves user experience.
  • FIG. 6 shows a schematic flowchart of a synchronization process 600 according to some embodiments of the present disclosure.
  • the process 600 may be executed by the central device 110 as shown in FIG. 1 .
  • the central device 110 performs time synchronization with each of the plurality of shooting devices, so as to determine time synchronization information with each shooting device.
  • the central device 110 sends first frame rate information to multiple shooting devices, where the first frame rate information is used to indicate a target frame rate.
  • the central device 110 sends a first shooting instruction to multiple shooting devices, the first shooting instruction includes a first shooting start time, and the first shooting start time is based on the clock of the central device 110 .
  • the central device 110 respectively receives videos shot at a target frame rate starting from the first shooting start time from a plurality of shooting devices.
  • the time synchronization information between the central device 110 and any shooting device can be determined through time synchronization, where the time synchronization information can be expressed as the time between the local clock of the central device and the local clock of the shooting device time difference.
  • the central device 110 may further include: the central device 110 establishes connections with multiple shooting devices respectively.
  • the central device 110 establishes a wireless connection, such as a Wi-Fi connection, with each of the multiple shooting devices in the same local area network environment.
  • the central device 110 determines a second shooting start time based on the first shooting start time and the target frame rate. Further, in block 660, the central device 110 sends a second shooting instruction to another shooting device, and the second shooting instruction includes a second shooting start time. In block 670, the central device 110 receives a video shot from another shooting device starting from the second shooting start time. The second shooting start time is located after the first shooting start time and is based on the local clock of the central device 110 .
  • the second shooting start time is determined so that multiple shooting devices and another shooting device perform simultaneous shooting.
  • multiple future moments for multiple shooting devices to shoot can be determined, and then one of the multiple future moments can be selected as the second shooting start time, so that It can be ensured that at the second shooting start time, a plurality of shooting devices and another shooting device perform synchronous shooting.
  • the process 600 may further include: the central device 110 sends second frame rate information to another shooting device, the second frame rate information is used to indicate the target frame rate, so that another shooting device can shoot based on the target frame rate video.
  • This step may be performed before block 670 or even before block 660, which is not limited in the present disclosure.
  • the step of sending the second frame rate information may be performed between 640 and 650 .
  • the process 600 may further include: the central device 110 performs post-processing on the videos received from multiple shooting devices.
  • the central device 110 may, based on the time synchronization information with the multiple shooting devices, determine multiple frames in the video captured by the multiple shooting devices that are respectively captured at the same time; and perform image post-processing on the multiple frames , such as performing post-processing such as stitching, 3D modeling, etc.
  • the photographing device 122 may further include: the photographing device 122 establishes a connection with the central device.
  • the photographing device 122 establishes a wireless connection, such as a Wi-Fi connection, with the central device in the same local area network environment.
  • the capture start time and the local start time refer to the same moment. The difference is that the clock references of the two are different.
  • the shooting device 122 may set a shooting parameter of the shooting device 122 based on the target frame rate, and then the shooting device 122 may shoot a video based on the shooting parameter.
  • the photographing parameters may include the number of rows of pixels when the image is exposed and/or the number of rows of blank pixels filled in when the image is exposed.
  • Apparatus 800 may include a plurality of modules for performing corresponding steps in process 600 as discussed in FIG. 6 .
  • the apparatus 800 includes a synchronization module 810, a sending module 820, and a receiving module 830.
  • the synchronization module 810 is configured to perform time synchronization with each of the multiple shooting devices, so as to determine the time synchronization with each shooting device. time synchronization information.
  • the sending module 820 is configured to send first frame rate information to multiple shooting devices, where the first frame rate information is used to indicate a target frame rate.
  • the sending module 820 is further configured to send a first shooting instruction to multiple shooting devices, the first shooting instruction includes a first shooting start time, and the first shooting start time is based on the clock of the apparatus 800 .
  • the receiving module 830 is configured to respectively receive videos shot at a target frame rate starting from the first shooting start time from a plurality of shooting devices.
  • the apparatus 800 may further include a connection module configured to respectively establish a connection with each of the multiple shooting devices.
  • the apparatus 800 may further include a determining module 840 configured to determine a second shooting start time based on the first shooting start time and the target frame rate.
  • the sending module 820 may also be configured to send a second shooting instruction to another shooting device, the second shooting instruction includes a second shooting start time, and the second shooting start time is based on the clock of the apparatus 800 .
  • the receiving module 830 may also be configured to receive a video shot starting from the second shooting start time from another shooting device.
  • the second shooting start time is determined so that multiple shooting devices and another shooting device perform simultaneous shooting.
  • the apparatus 800 may further include a processing module 850 configured to, based on the time synchronization information with the multiple shooting devices, determine the multiple frames in the video captured by the multiple shooting devices that are respectively captured at the same time ; and perform image post-processing on multiple frames.
  • a processing module 850 configured to, based on the time synchronization information with the multiple shooting devices, determine the multiple frames in the video captured by the multiple shooting devices that are respectively captured at the same time ; and perform image post-processing on multiple frames.
  • the receiving module 830 may be configured to receive shooting capability information of each of the multiple shooting devices, and the determining module 840 may be configured to determine the target frame rate based on the shooting capability information of the multiple shooting devices.
  • the apparatus 800 in FIG. 8 may be implemented as the central device 110, or may be implemented as a chip or a chip system in the central device 110, which is not limited by the embodiments of the present disclosure.
  • the apparatus 800 in FIG. 8 can be used to implement the processes described above in conjunction with the central device 110 in FIG. 2 to FIG. 7 , and details are not repeated here for the sake of brevity.
  • Fig. 9 shows another schematic block diagram of an apparatus 900 for synchronization according to some embodiments of the present disclosure.
  • the apparatus 900 may be implemented as or included in the photographing device 122 of FIG. 1 .
  • Apparatus 900 may include a plurality of modules for performing corresponding steps in process 700 as discussed in FIG. 7 .
  • the device 900 includes a synchronization module 910 , a receiving module 920 , a determination module 930 , a photographing module 940 and a sending module 950 .
  • the synchronization module 910 is configured to perform time synchronization with the central device to determine time synchronization information.
  • the receiving module 920 is configured to receive frame rate information from the central device, and the frame rate information is used to indicate the target frame rate.
  • the receiving module 920 is further configured to receive a photographing instruction from the central device, the photographing instruction includes a photographing start time, and the photographing start time is based on the clock of the central device.
  • the determination module 930 is configured to determine the local start time corresponding to the shooting start time based on the time synchronization information between the device and the central device, and the local start time is based on the clock of the device 900 .
  • the shooting module 940 is configured to start shooting video at a target frame rate from the local startup time.
  • the sending module 950 is configured to send the captured video to the central device.
  • the apparatus 900 may further include a connection module configured to establish a connection with the central device.
  • the determining module 930 may also be configured to set a shooting parameter of the device 900 based on the target frame rate, and then the shooting module 940 may shoot a video based on the shooting parameter.
  • the shooting parameters include at least one of the following: the number of rows of pixels when the image is exposed, and the number of rows of blank pixels filled in when the image is exposed.
  • the apparatus 900 in FIG. 9 may be implemented as the photographing device 122, or may be implemented as a chip or a chip system in the photographing device 122, which is not limited in the embodiments of the present disclosure.
  • the apparatus 900 in FIG. 9 can be used to implement the processes described above in conjunction with the photographing device 122 in FIGS. 2 to 7 , and for the sake of brevity, details are not repeated here.
  • Embodiments of the present disclosure also provide a processor, configured to be coupled with a memory, and the memory stores instructions, and when the processor executes the instructions, the processor executes any of the above-mentioned embodiments involving the central device 110 or the photographing device. 122 methods and functions.
  • Embodiments of the present disclosure also provide a computer program product containing instructions, which, when run on a computer, enable the computer to execute the methods and functions related to the central device 110 or the photographing device 122 in any of the above embodiments.
  • computer program code or related data may be carried by any suitable carrier to enable a device, apparatus or processor to perform the various processes and operations described above.
  • carriers include signals, computer readable media, and the like.
  • signals may include electrical, optical, radio, sound, or other forms of propagated signals, such as carrier waves, infrared signals, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)

Abstract

本公开的实施例提供了一种同步方法、电子设备、计算机可读存储介质及程序产品。该方法包括:中心设备与多个拍摄设备中的每个分别进行时间同步;向多个拍摄设备发送第一帧率信息,用于指示目标帧率;向多个拍摄设备发送第一拍摄指令,第一拍摄指令包括第一拍摄开始时间;以及从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率拍摄的视频。如此,中心设备可以与多个拍摄设备进行时间同步并通过发送第一拍摄指令来指定第一拍摄开始时间,从而多个拍摄设备可以同时开始拍摄,这样保证了多个拍摄设备拍摄时的首帧对齐,并通过发送目标帧率使多个拍摄设备拍摄时的后续帧也同步,能够确保多个拍摄设备拍摄的视频的后处理的效果。

Description

同步方法、电子设备、计算机可读存储介质及程序产品 技术领域
本公开的实施例涉及终端领域,更具体地,涉及同步方法、电子设备、计算机可读存储介质及程序产品。
背景技术
多个不同设备之间进行协同互联的应用场景越来越多,可以实现多路同屏显示、多路图像实时拼接等,从而给用户带来与单设备不同的场景体验。这种多个拍摄设备组成拍摄阵列的场景也可以被称为分布式拍摄系统。
但是,由于分布式拍摄系统中多个拍摄设备的硬件、软件、所处环境、网络条件等存在差异,导致多个拍摄设备进行拍摄时不同步,从而导致协同的效果不理想。
发明内容
本公开的实施例提供了一种多个拍摄设备同步拍摄的方案。
在第一方面,提供了一种同步方法。该方法包括:中心设备与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息;中心设备向多个拍摄设备发送第一帧率信息,第一帧率信息用于指示目标帧率;中心设备向多个拍摄设备发送第一拍摄指令,第一拍摄指令包括第一拍摄开始时间,第一拍摄开始时间以中心设备的时钟为基准;以及中心设备从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率所拍摄的视频。
如此,中心设备可以与多个拍摄设备分别进行时间同步并通过发送第一拍摄指令来指定第一拍摄开始时间,从而多个拍摄设备可以同时开始进行拍摄,这样能够保证多个拍摄设备拍摄时的首帧对齐。另外中心设备通过发送目标帧率使多个拍摄设备拍摄时的后续帧也能够同步,进而能够确保多个拍摄设备所拍摄的视频的后处理的效果。
在第一方面的一些实施例中,在时间同步之前还包括:中心设备与多个拍摄设备分别建立连接。在一些实施例中,中心设备与多个拍摄设备中每个拍摄设备分别建立无线连接,中心设备和多个拍摄设备处于同一局域网环境中。
如此,中心设备与处于同一局域网环境中的多个拍摄设备建立连接,从而中心设备与拍摄设备之间的传输时延可以保持不变或者变化可忽略的,这样能够保证同步的效果。
在第一方面的一些实施例中,还包括:中心设备基于第一拍摄开始时间和目标帧率确定第二拍摄开始时间;中心设备向另一个拍摄设备发送第二拍摄指令,第二拍摄指令包括第二拍摄开始时间;以及中心设备从另一个拍摄设备接收以第二拍摄开始时间为起点所拍摄的视频。
在第一方面的一些实施例中,第二拍摄开始时间被确定为使多个拍摄设备和另一个拍摄设备进行同步拍摄。
如此,可以基于已经确定的第一拍摄开始时间和目标帧率来确定第二拍摄开始时间,使得另一个拍摄设备能够与先前已经给通知的多个拍摄设备进行同步拍摄。这样,即使针对新加入的设备,也能保证与正在拍摄的拍摄设备之间的拍摄同步。
在第一方面的一些实施例中,还包括:中心设备向另一个拍摄设备发送第二帧率信息,第二帧率信息用于指示目标帧率。相应地,中心设备可以从另一个拍摄设备接收以第二拍摄开始时间为起点且按照目标帧率所拍摄的视频。
如此,通过第二帧率信息来向另一个拍摄设备指示目标帧率,能够使得新加入的另一个拍摄设备与多个拍摄设备使用相同的目标帧率进行图像拍摄,从而确保对每一帧的拍摄都是同步的。
在第一方面的一些实施例中,还包括:中心设备基于与多个拍摄设备之间的时间同步信息,确定多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及中心设备对多个帧执行图像后处理。
如此,中心设备通过对来自多个拍摄设备的同步拍摄的多个帧进行后处理,能够充分有效地利用多个拍摄设备同时拍摄的图像,给用户提供比单设备更加丰富的体验。
在第一方面的一些实施例中,还包括:中心设备确定多个拍摄设备和另一个拍摄设备各自拍摄的视频中在同一时刻被分别拍摄的多个帧;以及中心设备对多个帧执行图像后处理。
在第一方面的一些实施例中,还包括:中心设备接收多个拍摄设备中每个拍摄设备的拍摄能力信息;以及基于多个拍摄设备的拍摄能力信息确定目标帧率。
在第二方面,提供了一种同步方法。该方法包括:拍摄设备与中心设备进行时间同步,以确定时间同步信息;拍摄设备从中心设备接收帧率信息,帧率信息用于指示目标帧率;拍摄设备从中心设备接收拍摄指令,拍摄指令包括拍摄开始时间,拍摄开始时间以中心设备的时钟为基准;拍摄设备基于时间同步信息,确定与拍摄开始时间对应的本地启动时间,本地启动时间以拍摄设备的时钟为基准;拍摄设备从本地启动时间开始按照目标帧率拍摄视频;以及拍摄设备将所拍摄的视频发送至中心设备。
在第二方面的一些实施例中,在时间同步之前还包括:拍摄设备与中心设备建立连接。在一些实施例中,拍摄设备与中心设备建立无线连接,中心设备和拍摄设备处于同一局域网环境中。
在第二方面的一些实施例中,按照目标帧率拍摄视频包括:拍摄设备基于目标帧率设置拍摄设备的拍摄参数;以及拍摄设备基于拍摄参数来拍摄视频。
在第二方面的一些实施例中,拍摄参数包括以下至少一项:图像曝光时的像素的行数、图像曝光时填充的空白像素的行数。
在第三方面,提供了一种用于同步的装置。该装置包括:同步模块,被配置为与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息;发送模块,被配置为向多个拍摄设备发送第一帧率信息,第一帧率信息用于指示目标帧率;发送模块,还被配置为向多个拍摄设备发送第一拍摄指令,第一拍摄指令包括第一拍摄开始时间,第一拍摄开始时间以该装置的时钟为基准;以及接收模块,被配置为从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率所拍摄的视频。
在第三方面的一些实施例中,还包括连接模块,被配置为与多个拍摄设备中的每个拍摄设备分别建立连接。
在第三方面的一些实施例中,还包括确定模块,被配置为基于第一拍摄开始时间和目标帧率确定第二拍摄开始时间;并且其中发送模块还被配置为向另一个拍摄设备发送第二拍摄指令,第二拍摄指令包括第二拍摄开始时间,第二拍摄开始时间以该装置的时钟为基准;并 且其中接收模块还被配置为从另一个拍摄设备接收以第二拍摄开始时间为起点所拍摄的视频。
在第三方面的一些实施例中,第二拍摄开始时间被确定为使多个拍摄设备和另一个拍摄设备进行同步拍摄。
在第三方面的一些实施例中,发送模块还被配置为:向另一个拍摄设备发送第二帧率信息,第二帧率信息用于指示目标帧率。并且接收模块可以被配置为从另一个拍摄设备接收以第二拍摄开始时间为起点且按照目标帧率所拍摄的视频。
在第三方面的一些实施例中,还包括处理模块,被配置为基于与多个拍摄设备之间的时间同步信息,确定多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及对多个帧执行图像后处理。
在第三方面的一些实施例中,处理模块被配置为确定多个拍摄设备和另一个拍摄设备各自拍摄的视频中在同一时刻被分别拍摄的多个帧;以及对多个帧执行图像后处理。
在第三方面的一些实施例中,接收模块还可以被配置为接收多个拍摄设备中每个拍摄设备的拍摄能力信息;以及确定模块可以被配置为基于多个拍摄设备的拍摄能力信息确定目标帧率。
在第四方面,提供了一种用于同步的装置。该装置包括:同步模块,被配置为与中心设备进行时间同步,以确定时间同步信息;接收模块,被配置为从中心设备接收帧率信息,帧率信息用于指示目标帧率;接收模块,还被配置为从中心设备接收拍摄指令,拍摄指令包括拍摄开始时间,拍摄开始时间以中心设备的时钟为基准;确定模块,被配置为基于该装置与中心设备之间的时间同步信息,确定与拍摄开始时间对应的本地启动时间,本地启动时间以该装置的时钟为基准;拍摄模块,被配置为从本地启动时间开始按照目标帧率拍摄视频;以及发送模块,被配置为将所拍摄的视频发送至中心设备。
在第四方面的一些实施例中,还包括连接模块,被配置为与中心设备建立连接。
在第四方面的一些实施例中,确定模块还被配置为基于目标帧率设置该装置的拍摄参数,并且其中拍摄模块被配置为基于该拍摄参数来拍摄视频。
在第四方面的一些实施例中,拍摄参数包括以下至少一项:图像曝光时的像素的行数、图像曝光时填充的空白像素的行数。
在第四方面的一些实施例中,该装置包括拍摄设备。
在第五方面,提供了一种电子设备。该电子设备包括收发器、处理器以及存储器,该存储器上存储有由处理器执行的指令,当该指令被处理器执行时使得该电子设备实现:与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息;经由收发器向多个拍摄设备发送第一帧率信息,第一帧率信息用于指示目标帧率;经由收发器向多个拍摄设备发送第一拍摄指令,第一拍摄指令包括第一拍摄开始时间,第一拍摄开始时间以该电子设备的时钟为基准;以及经由收发器从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率所拍摄的视频。
在第五方面的一些实施例中,处理器执行指令使得该电子设备实现:与多个拍摄设备中的每个拍摄设备分别建立连接。
在第五方面的一些实施例中,处理器执行指令使得该电子设备实现:基于第一拍摄开始时间和目标帧率确定第二拍摄开始时间;经由收发器向另一个拍摄设备发送第二拍摄指令,第二拍摄指令包括第二拍摄开始时间;以及经由收发器从另一个拍摄设备接收以第二拍摄开 始时间为起点所拍摄的视频。
在第五方面的一些实施例中,第二拍摄开始时间被确定为使多个拍摄设备和另一个拍摄设备进行同步拍摄。
在第五方面的一些实施例中,处理器执行指令使得该电子设备实现:经由收发器向另一个拍摄设备发送第二帧率信息,第二帧率信息用于指示目标帧率。
在第五方面的一些实施例中,处理器执行指令使得该电子设备实现:基于与多个拍摄设备之间的时间同步信息,确定多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及对多个帧执行图像后处理。
在第五方面的一些实施例中,处理器执行指令使得该电子设备实现:经由收发器接收多个拍摄设备中每个拍摄设备的拍摄能力信息;以及基于多个拍摄设备的拍摄能力信息确定目标帧率。
在第六方面,提供了一种电子设备。该电子设备包括收发器、处理器以及存储器,该存储器上存储有由处理器执行的指令,当该指令被处理器执行时使得该电子设备实现:与中心设备进行时间同步,以确定时间同步信息;经由收发器从中心设备接收帧率信息,帧率信息用于指示目标帧率;经由收发器从中心设备接收拍摄指令,拍摄指令包括拍摄开始时间,拍摄开始时间以中心设备的时钟为基准;基于该电子设备与中心设备之间的时间同步信息,确定与拍摄开始时间对应的本地启动时间,本地启动时间以该电子设备的时钟为基准;从本地启动时间开始按照目标帧率拍摄视频;以及经由收发器将所拍摄的视频发送至中心设备。
在第六方面的一些实施例中,处理器执行指令使得该电子设备实现:与中心设备建立连接。
在第六方面的一些实施例中,处理器执行指令使得该电子设备实现:基于目标帧率设置该电子设备的拍摄参数;以及基于拍摄参数来拍摄视频。
在第六方面的一些实施例中,拍摄参数包括以下至少一项:图像曝光时的像素的行数、图像曝光时填充的空白像素的行数。
在第六方面的一些实施例中,该电子设备包括拍摄设备。
在第七方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现根据上述第一方面或第二方面或其任一实现方式所述的方法的操作。
在第八方面,提供了一种芯片或芯片系统。该芯片或芯片系统包括处理电路,被配置为执行根据上述第一方面或第二方面或其任一实现方式所述的方法的操作。
在第九方面,提供了一种计算机程序或计算机程序产品。该计算机程序或计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,计算机可执行指令在计算机上运行时,使得计算机执行根据上述第一方面或第二方面或其任一实现方式所述的方法的操作。
在第十方面,提供了一种分布式拍摄系统。该系统包括多个拍摄设备,该多个拍摄设备中的任一拍摄设备包括如第四方面或其任一实现方式所述的装置,或者包括如第六方面或其任一实现方式所述的电子设备。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
图1示出了可以在其中实现本公开的实施例的示例环境的一个示意图;
图2示出了根据本公开的一些实施例的拍摄设备同步的过程的一个信令交互图;
图3示出了根据本公开的一些实施例的中心设备确定时间同步信息的过程的信令交互图;
图4示出了根据本公开的一些实施例的中心设备对拍摄设备执行帧率控制的过程的信令交互图;
图5示出了根据本公开的一些实施例的拍摄设备同步的过程的另一信令交互图;
图6示出了根据本公开的一些实施例的同步过程的示意流程图;
图7示出了根据本公开的一些实施例的同步过程的示意流程图;
图8示出了根据本公开的一些实施例的用于同步的装置的示意框图;
图9示出了根据本公开的一些实施例的用于同步的装置的另一示意框图;以及
图10出了可以用来实施本公开的实施例的示例设备的示意性框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
分布式拍摄系统可以包括由至少两个拍摄设备组成的拍摄阵列,其中拍摄设备可以拍摄图像或视频,拍摄设备可以被称为图像采集设备等,分布式拍摄系统也可以被称为分布式拍摄阵列、分布式图像采集系统等。应理解的是,本公开的实施例中的“图像”可以是由拍摄设备所拍摄的图像或者可以是由拍摄设备所拍摄的视频的帧。相应地,本公开的实施例中的拍摄图像可以包括:拍摄单张图像、拍摄视频、或拍摄视频的帧等。另外,视频也可以被称为图像流、帧流、视频流、媒体流等,本公开对此不限定。
分布式拍摄系统中的至少两个拍摄设备可以同时拍摄以获取更多的视觉信息,进而可以通过相互协同以实现多路图像同屏显示、多路图像实时拼接等。分布式拍摄系统可以被实现在各种不同的场景中。例如,分布式拍摄系统可以被实现为广角拍摄系统,系统中的多个拍摄设备可以以一定的角度和间距排布组成广角拍摄阵列,每个拍摄设备负责一定区域内的图像拍摄,随后广角拍摄系统可以将多个拍摄设备拍摄的图像进行拼接,从而生成视野范围更大的拼接图像。例如,分布式拍摄系统可以被实现为三维(3D)重构系统,系统中的多个拍摄设备可以以一定的角度和间距环绕目标物体进行布置,每个拍摄设备负责一定视野内的目标物体的细节拍摄,随后3D重构系统可以基于多个拍摄设备拍摄的图像进行三维重构,从而生成目标物体的三维重构模型。
但是,分布式拍摄系统的至少两个拍摄设备中,不同的拍摄设备可能会受网络条件、硬 件差异等影响,使得不同拍摄设备的帧率不同,不同的拍摄设备所拍摄的图像的时间点也不同。这样会导致在对至少两个拍摄设备拍摄的至少两张图像执行后处理时,难度变大。尤其是在目标物体运动的情况下,分布式拍摄系统所拍摄的至少两张图像甚至无法满足后处理的需求,影响了用户体验。
有鉴于此,本公开提供了一种对分布式拍摄系统的拍摄设备进行同步的方案,进而确保分布式拍摄系统中不同拍摄设备的图像拍摄是同步的,满足对图像进行后处理的需求,提升了用户体验。
图1示出了可以在其中实现本公开的实施例的示例环境100的一个示意图。在示例环境100中,示出了中心设备110和分布式拍摄系统120,其中分布式拍摄系统120包括多个拍摄设备,例如拍摄设备122-1、拍摄设备122-2和拍摄设备122-3。
如图1所示,中心设备110可以与分布式拍摄系统120进行交互,例如分布式拍摄系统120可以将拍摄设备122-1、拍摄设备122-2和拍摄设备122-3分别拍摄的图像或视频传输到中心设备110。为了下文表述的方便,本公开实施例中将拍摄设备122-1、拍摄设备122-2和拍摄设备122-3统称为拍摄设备122。
中心设备110与拍摄设备122之间可以具有通信连接,且本公开的实施例对连接方式不作限定,例如以有线或无线方式进行连接。有线方式可以包括但不限于光纤连接、通用串行总线(Universal Serial Bus,USB)连接等,无线方式可以包括但不限于2G/3G/4G/5G/6G、Wi-Fi、蓝牙(Bluetooth)、点对点(Point to Point,P2P)等。
以Wi-Fi连接为例,中心设备110与拍摄设备122可以处于同一局域网环境中,中心设备110可以发现位于同一局域网环境中的拍摄设备122,并与拍摄设备122建立Wi-Fi连接,例如中心设备110与拍摄设备122可以连接到同一路由器。
应注意,中心设备110与不同的拍摄设备122之间的通信连接方式可以相同,也可以不同。举例来讲,中心设备110与拍摄设备122-1之间的连接方式可以不同于中心设备110与拍摄设备122-2之间的连接方式。
本公开的实施例对分布式拍摄系统120中各个拍摄设备的排布方式不作限定。在一些实施例中,拍摄设备122-1、拍摄设备122-2和拍摄设备122-3可以并排布置,从而在拍摄目标物体时,对目标物体的拍摄方向平行或基本一致。在一些实施例中,拍摄设备122-1、拍摄设备122-2和拍摄设备122-3可以环绕目标物体进行布置,从而在拍摄目标物体时,对目标物体的拍摄方向成一定角度。
本公开的实施例中,分布式拍摄系统120中相邻的两个拍摄设备的拍摄区域可以具有部分重叠。举例而言,拍摄设备122-1拍摄目标物体得到第一图像,拍摄设备122-2拍摄目标物体得到第二图像,且第一图像中第一区域与第二图像中第二区域针对的是目标物体的同一拍摄区域。在一个示例中,第一区域占第一图像的1/4或更大,第二区域占第二图像的1/4或更大。
可理解的是,尽管图1中示出了分布式拍摄系统120包括三个拍摄设备,但是本公开实施例对此不限定,可以根据场景等设定分布式拍摄系统120所包括的拍摄设备的数量。
还可理解的是,尽管图1中示出了中心设备110是独立于分布式拍摄系统120的设备,但是本公开实施例对此不限定,在一些实施例中,中心设备110可以实现为分布式拍摄系统120的一部分,例如中心设备110可以为拍摄设备122-1或拍摄设备122-2或拍摄设备122-3 所在的电子设备。
本公开的实施例对中心设备110的设备类型不作限定,例如,中心设备110可以为台式电脑、膝上型电脑、平板电脑、智能电话、可穿戴设备、云计算设备等。本公开的实施例中,拍摄设备122可以为独立的设备或者可以为其他电子设备的外设等,例如拍摄设备122可以被实现为具有拍摄功能的电子设备等。拍摄设备122可以包括相机、摄像机、抓拍设备,手机,平板电脑,可穿戴设备,膝上型电脑等,本公开对此不限定。
下面将结合图2至图5对本公开的实施例进行较为详细的阐述。
图2示出了根据本公开的一些实施例的分布式拍摄系统中拍摄设备同步的过程200的信令交互图。在过程200中,涉及中心设备110和拍摄设备122。可理解,拍摄设备122包括分布式拍摄系统120中的任一拍摄设备,也就是说,可以针对分布式拍摄系统120中的每一个拍摄设备122执行过程200。
中心设备110与拍摄设备122进行时间同步210。
在一些实施例中,在时间同步之前,中心设备110可以与拍摄设备122建立连接。例如有线连接或无线连接。以无线连接为例,中心设备110可以发现处于同一局域网环境中的拍摄设备122,并与拍摄设备122建立无线连接。例如,中心设备110和拍摄设备122可以都连接至同一个接入点(Access Point,AP),并且中心设备110与拍摄设备122之间具有Wi-Fi连接。
通过时间同步,中心设备110可以确定与拍摄设备122之间的时间同步信息。在一些实施例中,中心设备110与拍摄设备122建立通信连接之后,可以通过时间同步算法,来确定中心设备110与拍摄设备122之间的时间同步信息。在一些实施例中,时间同步信息可以为中心设备110的本地时钟(如表示为CLK1)与拍摄设备122的本地时钟(如表示为CLK2)之间的时间差。具体地,时间同步信息可以表示为:在同一时刻,CLK1表征的时间与CLK2表征的时间之间的时间差。举例来讲,CLK1为12:00时,CLK2为11:59,则说明CLK1比CLK2快1分钟。在一些实施例中,中心设备110与拍摄设备122之间的时间同步信息可以表示为diff,用于表示中心设备110的本地时钟(CLK1)比拍摄设备122的本地时钟(CLK2)快多少。
在一些实施例中,中心设备110可以通过如图3所示的过程300来确定中心设备110的本地时钟与拍摄设备122的本地时钟之间的时间同步信息。
在过程300中,中心设备110向拍摄设备122发送310时间同步指令。
中心设备110向拍摄设备122发送320第一消息,该第一消息携带发送时中心设备110的第一本地时间。示例性地,可以将中心设备110的第一本地时间表示为T11,表示中心设备110在T11发送第一消息。
拍摄设备122记录330接收到第一消息时的拍摄设备122的第二本地时间。示例性地,可以将拍摄设备122的第二本地时间表示为T12,表示拍摄设备122在T12接收到第一消息。
拍摄设备122向中心设备110发送340第二消息,该第二消息携带发送时拍摄设备122的第三本地时间。示例性地,可以将拍摄设备122的第三本地时间表示为T21,表示拍摄设备122在T21发送第二消息。
中心设备110记录350接收到第二消息时的中心设备110的第四本地时间。示例性地,可以将中心设备110的第四本地时间表示为T22,表示中心设备110在T22接收到第二消息。
随后,中心设备110确定360与拍摄设备122之间的时间同步信息。时间同步信息可以为中心设备110的时钟与拍摄设备122的时钟时间的时间差,例如表示为diff,指示中心设备110的时钟比拍摄设备122的时钟快多少。
具体的,中心设备110可以基于第一本地时间、第二本地时间、第三本地时间和第四本地时间,确定该时间同步信息,即diff。可理解,第一本地时间T11和第四本地时间T22是以中心设备110的时钟为基准的,第二本地时间T12和第三本地时间T21是以拍摄设备122的时钟为基准的。
假设中心设备110与拍摄设备122之间的传输时延是固定的,例如表示为Δ。那么,diff=T11+Δ-T12=T22-T21-Δ,从而可以得到:diff=[(T22-T12)-(T21-T11)]/2。
如此,中心设备110可以通过过程300来确定与拍摄设备122之间的时间差。可理解,如果diff大于零,说明中心设备110处的时钟比拍摄设备122处的时钟快。相反,如果diff小于零,说明中心设备110处的时钟比拍摄设备122处的时钟慢。
类似地,拍摄设备122也可以确定与中心设备110之间的时间同步信息。在一些实施例中,可以通过与图3类似的过程来确定。在一些实施例中,中心设备110在350之后可以将第四本地时间告知拍摄设备122,从而拍摄设备122可以同样地基于第一本地时间、第二本地时间、第三本地时间和第四本地时间,确定中心设备110处的时钟比拍摄设备122处的时钟快diff。
这样,本公开实施例中,能够实现中心设备110与拍摄设备122之间的时间同步,由于中心设备110与拍摄设备122之间的消息传输的时延基本不变,因此该时间同步的精度较高,能够满足场景需求。例如,时间同步的精度可以被控制在正负1毫秒之内。
中心设备110执行对拍摄设备122的帧率控制220。图4示出了根据本公开的实施例的中心设备110对拍摄设备122执行帧率控制的过程400的信令交互图。
在过程400中,拍摄设备122将拍摄能力信息发送410到中心设备110。
本公开实施例中,在拍摄设备122与中心设备110建立通信连接之后,拍摄设备122可以将其拍摄能力信息发送到中心设备110,其中拍摄能力信息可以包括拍摄设备122所支持的帧率范围。
结合图1,拍摄设备122-1可以将其第一拍摄能力信息发送到中心设备110,拍摄设备122-2可以将其第二拍摄能力信息发送到中心设备110,等等。取决于实际情况,不同拍摄设备122的拍摄能力信息可以相同也可以不同。如此,中心设备110可以获取由分布式拍摄系统120中的各个拍摄设备122的拍摄能力信息所构成的能力集。
随后,中心设备110确定420针对所有拍摄设备122的目标帧率。
具体地,中心设备110可以综合分布式拍摄系统120中各个拍摄设备122的拍摄能力信息,确定各个拍摄设备122都支持的目标帧率。本公开实施例中,目标帧率的量纲可以为每秒帧数(frames per second,fps)。
进一步地,中心设备110将目标帧率发送430到拍摄设备122。
在一些实施例中,中心设备110可以将携带目标帧率的帧率信息发送到拍摄设备122。在一些实施例中,中心设备110可以将目标帧率的指示信息发送到拍摄设备122。举例来说,可以预先设定指示信息与目标帧率之间的对应关系,如指示信息00对应目标帧率30fps,如指示信息100对应目标帧率100fps等等。这样通过指示信息能够隐式地指示目标帧率,从而 减小信令开销,提高帧率控制的效率。
拍摄设备122设置440拍摄设备122的拍摄参数,以满足目标帧率。
可理解,由于不同的拍摄设备122的硬件等存在差异,因此不同的拍摄设备122的拍摄参数的设置方式也相应地会存在差异,其中拍摄参数也可以被称为图像采集参数等。在一些实施例中,拍摄设备122可以基于目标帧率确定拍摄参数,并将拍摄参数设置到拍摄设备122的驱动层。
在一些实施例中,拍摄参数可以包括但不限于:一帧图像曝光的行数、一帧图像填充的空白行等。可以将一帧图像曝光的行数表示为exposure_line,将一帧图像填充的空白行表示为dummy_line。那么相应地,帧率可以表示为1/(frame_length×line_time),其中,frame_length表示帧长,且frame_length=exposure_line+dummy_line;line_time表示曝光一行的时间,为定值。因此,拍摄设备122可以通过调整exposure_line和/或dummy_line来使得拍摄设备122的帧率等于目标帧率。
返回图2,中心设备110向拍摄设备122发送230第一拍摄指令,该第一拍摄指令包括第一拍摄开始时间。
具体的,中心设备110可以指定未来的某个时间点为第一拍摄开始时间(表示为T0),并且该第一拍摄开始时间是以中心设备110处的时钟为基准的。
在本公开的实施例中,中心设备110在确定第一拍摄开始时间时,可以使得第一拍摄开始时间与中心设备110的当前时间(例如发送第一拍摄指令的时间)之间的时长足够长,以确保各个拍摄设备有足够的时间在第一拍摄开始时间进行拍摄。在一些实施例中,该时长的量级可以为秒(s)甚至更长。
拍摄设备122基于时间同步信息,确定240与第一拍摄开始时间对应的第一本地启动时间,其中该第一本地时间是以拍摄设备122的时钟为基准的。
具体地,如上所述,假设中心设备110比拍摄设备122快diff,那么可以确定与第一拍摄开始时间(T0)对应的第一本地启动时间(表示为t1)为T0-diff。
拍摄设备122从第一本地启动时间开始,按照目标帧率拍摄250视频。
在一些实施例中,拍摄设备122可以调用其拍摄打开(Open)接口,在第一本地启动时间打开拍摄设备122的传感器,开始拍摄。
在一些实施例中,拍摄设备122可以基于拍摄打开耗时,调用拍摄Open接口,在第一本地启动时间之前打开拍摄设备122的传感器,以便从第一本地启动时间开始进行拍摄。举例来讲,假设拍摄打开耗时为t2,那么拍摄设备122可以在本地时间t1-t2时调用拍摄Open接口。
可理解,不同的拍摄设备122由于拍摄设备的驱动不同,因此拍摄打开耗时一般也不同。拍摄打开耗时可以是在拍摄设备122出厂前经测试所确定的,其量级一般为微秒(μs)级或毫秒(ms)级。
在一些实施例中,拍摄设备122所拍摄的视频的帧可以携带有时间戳,该时间戳表示对应的帧被拍摄时的时间信息。
本公开的实施例中,尽管不同的拍摄设备122与中心设备110之间的时间同步信息不同,进而不同的拍摄设备122(如拍摄设备122-1和拍摄设备122-2)所确定的各自的第一本地启动时间不同,但是以中心设备110的时钟而言,不同的拍摄设备122均在第一拍摄开始时间 启动并拍摄,也就是说,各个拍摄设备122都以第一拍摄开始时间为起点拍摄第一帧,如此实现了各个拍摄设备122拍摄时的首帧对齐。这样能够确保分布式拍摄系统中各个拍摄设备在同一时间点进行拍摄,保证了各个拍摄设备之间的同步,极大地减小了因不同拍摄设备间时间差异所造成的图像差异。
拍摄设备122将拍摄的视频发送260到中心设备110。在一些实施例中,拍摄设备122可以对拍摄的视频进行编码,该视频包括带有时间戳的帧,并将经编码的视频发送到中心设备110。
中心设备110针对接收到的视频执行270后处理。在一些实施例中,中心设备110可以获取来自拍摄设备122的经编码的视频,通过解码得到带有时间戳的帧,随后再针对带有时间戳的帧执行图像后处理。
具体地,针对来自不同拍摄设备122的视频,中心设备110可以基于时间戳,确定多个拍摄设备122在同一时间所拍摄的帧,并对多个拍摄设备122在同一时间分别拍摄的帧(即多帧)进行图像后处理。
在一些实施例中,图像后处理可以包括将多帧进行合成(如拼接),从而得到视野范围更广的合成图像。在一些实施例中,图像后处理可以包括基于多帧构建三维模型,从而实现三维构建。中心设备110还可以对接收到的视频执行其他后处理,本公开的实施例的范围在此方面不受限制。
根据本公开的实施例,中心设备通过向多个拍摄设备发送第一拍摄开始时间,能够使得各个拍摄设备在同一时间点开始拍摄,从而保证了各个拍摄设备拍摄时的首帧对齐,并且各个拍摄设备都按照目标帧率进行拍摄,能够确保各个拍摄设备所拍摄的后续帧也都是对齐的,这样极大地减小了因不同拍摄设备间时间差异所造成的图像差异。
另外,可理解,分布式拍摄系统120中的拍摄设备可能会随着时间而出现动态变化,例如可能会存在以下情形:(1)拍摄设备122之一(例如拍摄设备122-3)因电力不足或用户操作等原因被关闭,并在一段时间之后重新启动;(2)中心设备110发现其他的可用拍摄设备,中心设备110与可用拍摄设备建立通信连接,进一步地,该可用拍摄设备可以作为分布式拍摄系统120的新增拍摄设备之一,从而实现对分布式拍摄系统120中拍摄设备的扩充。在这样的情形下,中心设备110可以通过如图5所示的过程,以确保重新启动的拍摄设备或者新加入的拍摄设备能够与当前正在运行中的拍摄设备(例如拍摄设备122-1和拍摄设备122-2)同步。为了便于描述,在图5中将分布式拍摄系统120中重新启动的拍摄设备或者新加入的拍摄设备统称为拍摄设备124。
图5示出了根据本公开的实施例的拍摄设备同步的过程500的另一信令交互图。在过程500中,涉及中心设备110和拍摄设备124。
在过程500中,中心设备110确定510第二拍摄开始时间。
具体的,中心设备110可以基于第一拍摄开始时间(T0)以及目标帧率来确定第二拍摄开始时间(表示为T01)。在这里,第一拍摄开始时间(T0)指的是向分布式拍摄系统120中已有的拍摄设备122指示的拍摄开始时间,并且目标帧率指的是分布式拍摄系统120中已有的拍摄设备122在拍摄视频时统一使用的帧率。如上文所讨论的,该目标帧率可以由中心设备110确定并且通知给各个拍摄设备122。
举例来讲,假设目标帧率表示为f(其量纲为fps),那么拍摄设备122从T0开始,每秒 拍摄f张图像,即每1000/f毫秒拍摄一张图像。那么中心设备110可以确定第二拍摄开始时间为拍摄设备122未来执行拍摄的某个时间点。
可理解,中心设备110所确定的第二拍摄开始时间是以中心设备110处的时钟为基准的。
附加地或可选地,在510之前,中心设备110可以与拍摄设备124建立连接,例如有线或无线连接。关于建立连接的过程可以参照上文中的中心设备110与拍摄设备122建立连接的描述,这里不再重复。
附加地或可选地,如图5所示,在510之前,中心设备110可以与拍摄设备124之间进行时间同步502,以确定时间同步信息。在一些实施例中,若拍摄设备124为新加入的拍摄设备,那么可以执行502。在一些实施例中,若拍摄设备124为原拍摄设备122中关闭并重新启动的拍摄设备,且中心设备110与拍摄设备124的上一次时间同步已经经过预定时长(如2小时或其他值),那么可以执行502,以便重新进行时间同步。关于502的过程可以参照上面图2中结合210进行的描述,为了避免重复,这里不再赘述。
附加地或可选地,如图5所示,中心设备110可以对拍摄设备124执行帧率控制504。在一些实施例中,中心设备110可以将目标帧率发送到拍摄设备124,然后拍摄设备124可以基于目标帧率设置拍摄设备124的拍摄参数。可理解,目标帧率是中心设备110针对拍摄设备122所确定的,如上结合图4中420所述。
在过程500中,中心设备110向拍摄设备124发送520第二拍摄指令,该第二拍摄指令包括第二拍摄开始时间。
拍摄设备124确定530与第二拍摄开始时间对应的第二本地启动时间。第二拍摄开始时间以中心设备110的时钟为基准,第二本地启动时间以拍摄设备124的时钟为基准。在一些实施例中,拍摄设备124确定第二本地启动时间的过程类似于图2中拍摄设备122确定第一本地启动时间的过程240。
拍摄设备124从第二本地启动时间开始按照目标帧率拍摄540视频,并将拍摄的视频发送550到中心设备110。关于540和550可以类似地参照图2中的250和260,为了简洁,此处不再重复。
中心设备110可以对视频执行后处理560。具体的,中心设备110可以针对分布式拍摄系统120中各个拍摄设备(包括拍摄设备122和拍摄设备124)所拍摄的视频,执行后处理。举例而言,视频的帧可以带有时间戳,中心设备110可以基于视频的帧所携带的时间戳、和中心设备110与各个拍摄设备之间的时间同步信息,确定由多个拍摄设备在同一时间分别拍摄的多个帧,随后可以针对多个帧执行图像后处理。
例如,中心设备110可以确定拍摄设备122拍摄的视频的帧1与拍摄设备124拍摄的视频的帧2是同时拍摄的,进一步中心设备110可以针对帧1和帧2执行图像后处理,例如图像拼接等。
如此,本公开的实施例中,针对关闭再重新启动的拍摄设备或者新加入的拍摄设备,能够重新确定开始拍摄时间,从而确保分布式拍摄系统中各个拍摄设备的拍摄是同步的,实现了对于分布式拍摄系统中各个拍摄设备的同步过程的动态控制,便于针对分布式拍摄系统中各个拍摄设备所拍摄的视频的进一步处理,保证了图像处理效率,提升了用户体验。
图6示出了根据本公开的一些实施例的同步过程600的示意流程图。过程600可以由如图1所示的中心设备110执行。
在框610,中心设备110与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息。在框620,中心设备110向多个拍摄设备发送第一帧率信息,第一帧率信息用于指示目标帧率。在框630,中心设备110向多个拍摄设备发送第一拍摄指令,该第一拍摄指令包括第一拍摄开始时间,第一拍摄开始时间以中心设备110的时钟为基准。在框640,中心设备110从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率所拍摄的视频。
在一些实施例中,在框610可以通过时间同步,确定中心设备110与任一拍摄设备之间的时间同步信息,其中时间同步信息可以表示为中心设备的本地时钟与拍摄设备的本地时钟之间的时间差。
在一些实施例中,在框610之前还可以包括:中心设备110与多个拍摄设备分别建立连接。在一些实施例中,中心设备110与处于同一局域网环境中的多个拍摄设备中的每个拍摄设备分别建立无线连接,例如Wi-Fi连接。
可选地或附加地,在框650,中心设备110基于第一拍摄开始时间和目标帧率确定第二拍摄开始时间。进一步地,在框660,中心设备110向另一个拍摄设备发送第二拍摄指令,第二拍摄指令包括第二拍摄开始时间。在框670,中心设备110从另一个拍摄设备接收以第二拍摄开始时间为起点所拍摄的视频。第二拍摄开始时间位于第一拍摄开始时间之后且以中心设备110的本地时钟为基准。
在一些实施例中,多个拍摄设备可以构成分布式拍摄系统。另一个拍摄设备可以是在中心设备110发送第一拍摄指令之后再加入到分布式拍摄系统中的新的设备。
在一些实施例中,第二拍摄开始时间被确定为使多个拍摄设备和另一个拍摄设备进行同步拍摄。可选地,可以基于第一拍摄开始时间、目标帧率以及当前时刻确定多个拍摄设备进行拍摄的多个未来时刻,进而可以从多个未来时刻中选择其一作为第二拍摄开始时间,这样能够确保在第二拍摄开始时间,多个拍摄设备和另一个拍摄设备进行同步拍摄。
在一些实施例中,过程600还可以包括:中心设备110向另一个拍摄设备发送第二帧率信息,第二帧率信息用于指示目标帧率,以便另一个拍摄设备基于目标帧率来拍摄视频。该步骤可以在框670之前甚至在框660之前执行,本公开对此不限定。作为一例,发送第二帧率信息的步骤可以在640与650之间执行。
在一些实施例中,过程600还可以包括:中心设备110对从多个拍摄设备接收到的视频执行后处理。举例而言,中心设备110可以基于与多个拍摄设备之间的时间同步信息,确定多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及对多个帧执行图像后处理,例如执行拼接、三维建模等后处理。
图7示出了根据本公开的一些实施例的同步过程700的示意流程图。过程700可以由如图1所示的拍摄设备122执行。
在框710,拍摄设备122与中心设备进行时间同步,以确定时间同步信息。在框720,拍摄设备122从中心设备接收帧率信息,该帧率信息用于指示目标帧率。在框730,拍摄设备122从中心设备接收拍摄指令,该拍摄指令包括拍摄开始时间,该拍摄开始时间以中心设备的时钟为基准。在框740,拍摄设备122基于时间同步信息,确定与拍摄开始时间对应的本地启动时间,该本地启动时间以拍摄设备122的时钟为基准。在框750,拍摄设备122从本地启动时间开始按照目标帧率拍摄视频。在框760,拍摄设备122将所拍摄的视频发送至中 心设备。
在一些实施例中,在框710之前还可以包括:拍摄设备122与中心设备建立连接。在一些实施例中,拍摄设备122与处于同一局域网环境中的中心设备建立无线连接,例如Wi-Fi连接。
在一些实施例中,拍摄开始时间和本地启动时间指的是同一时刻。区别在于,两者的时钟基准是不一样的。
在一些实施例中,拍摄设备122可以基于目标帧率设置拍摄设备122的拍摄参数,进而拍摄设备122可以基于该拍摄参数来拍摄视频。示例性地,拍摄参数可以包括图像曝光时的像素的行数和/或图像曝光时填充的空白像素的行数。
图8示出了根据本公开的一些实施例的用于同步的装置800的示意框图。装置800可以被实现为或者被包括在图1的中心设备110中。
装置800可以包括多个模块,以用于执行如图6中所讨论的过程600中的对应步骤。如图8所示,装置800包括同步模块810、发送模块820和接收模块830,同步模块810被配置为与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息。发送模块820被配置为向多个拍摄设备发送第一帧率信息,第一帧率信息用于指示目标帧率。发送模块820还被配置为向多个拍摄设备发送第一拍摄指令,第一拍摄指令包括第一拍摄开始时间,第一拍摄开始时间以装置800的时钟为基准。接收模块830被配置为从多个拍摄设备分别接收以第一拍摄开始时间为起点且按照目标帧率所拍摄的视频。
在一些实施例中,装置800还可以包括连接模块,被配置为与多个拍摄设备中的每个拍摄设备分别建立连接。
在一些实施例中,装置800还可以包括确定模块840,被配置为基于第一拍摄开始时间和目标帧率确定第二拍摄开始时间。相应地,发送模块820还可以被配置为向另一个拍摄设备发送第二拍摄指令,第二拍摄指令包括第二拍摄开始时间,第二拍摄开始时间以该装置800的时钟为基准。接收模块830还可以被配置为从另一个拍摄设备接收以第二拍摄开始时间为起点所拍摄的视频。
在一些实施例中,第二拍摄开始时间被确定为使多个拍摄设备和另一个拍摄设备进行同步拍摄。
在一些实施例中,发送模块820还可以被配置为向另一个拍摄设备发送第二帧率信息,该第二帧率信息用于指示目标帧率,以便另一个拍摄设备基于目标帧率来拍摄视频。
在一些实施例中,装置800还可以包括处理模块850,被配置为基于与多个拍摄设备之间的时间同步信息,确定多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及对多个帧执行图像后处理。
在一些实施例中,接收模块830可以被配置为接收多个拍摄设备中每个拍摄设备的拍摄能力信息,确定模块840可以被配置为基于多个拍摄设备的拍摄能力信息确定目标帧率。
示例性地,图8中的装置800可以被实现为中心设备110,或者可以被实现为中心设备110中的芯片或芯片系统,本公开的实施例对此不限定。图8中的装置800能够用于实现上述结合图2至图7中中心设备110所述的各个过程,为了简洁,这里不再赘述。
图9示出了根据本公开的一些实施例的用于同步的装置900的另一示意框图。装置900可以被实现为或者被包括在图1的拍摄设备122中。
装置900可以包括多个模块,以用于执行如图7中所讨论的过程700中的对应步骤。如图9所示,装置900包括同步模块910、接收模块920、确定模块930、拍摄模块940和发送模块950。同步模块910被配置为与中心设备进行时间同步,以确定时间同步信息。接收模块920被配置为从中心设备接收帧率信息,帧率信息用于指示目标帧率。接收模块920还被配置为从中心设备接收拍摄指令,拍摄指令包括拍摄开始时间,拍摄开始时间以中心设备的时钟为基准。确定模块930被配置为基于该装置与中心设备之间的时间同步信息,确定与拍摄开始时间对应的本地启动时间,本地启动时间以该装置900的时钟为基准。拍摄模块940被配置为从本地启动时间开始按照目标帧率拍摄视频。发送模块950被配置为将所拍摄的视频发送至中心设备。
在一些实施例中,装置900还可以包括连接模块,被配置为与中心设备建立连接。
在一些实施例中,确定模块930还可以被配置为基于目标帧率设置装置900的拍摄参数,进而拍摄模块940可以基于该拍摄参数来拍摄视频。
在一些实施例中,拍摄参数包括以下至少一项:图像曝光时的像素的行数、图像曝光时填充的空白像素的行数。
示例性地,图9中的装置900可以被实现为拍摄设备122,或者可以被实现为拍摄设备122中的芯片或芯片系统,本公开的实施例对此不限定。图9中的装置900能够用于实现上述结合图2至图7中拍摄设备122所述的各个过程,为了简洁,这里不再赘述。
图10出了可以用来实施本公开的实施例的示例设备1000的示意性框图。设备1000可以被实现为或者被包括在图1的中心设备110中,或者设备1000可以被实现为或者被包括在图1的拍摄设备122中。
如图所示,设备1000包括中央处理单元(Central Processing Unit,CPU)1001、只读存储器(Read-Only Memory,ROM)1002以及随机存取存储器(Random Access Memory,RAM)1003。CPU 1001可以根据存储在RAM 1002和/或RAM 1003中的计算机程序指令或者从存储单元1008加载到ROM 1002和/或RAM 1003中的计算机程序指令,来执行各种适当的动作和处理。在ROM 1002和/或RAM 1003中,还可存储设备1000操作所需的各种程序和数据。CPU 1001和ROM 1002和/或RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
CPU 1001可以是各种具有处理和计算能力的通用和/或专用处理组件。可以被实现为的一些示例包括但不限于图形处理单元(Graphics Processing Unit,GPU)、各种专用的人工智能(Artificial Intelligence,AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(Digital Signal Processor,DSP)、以及任何适当的处理器、控制器、微控制器等,相应地可以被称为计算单元。CPU 1001执行上文所描述的各个方法和处理,例如过程600或700。例如,在一些实施例中,过程600或700可被实现为计算机软件程序,其被有形地包含于计算机可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或RAM 1003和/或通信单元1009而被载入和/或安装到设备1000上。当 计算机程序加载到ROM 1002和/或RAM 1003并由CPU 1001执行时,可以执行上文描述的过程600或700的一个或多个步骤。备选地,在其他实施例中,CPU 1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行过程600或700。
示例性地,图10中的设备1000可以被实现为电子设备(如中心设备110或拍摄设备122),或者可以被实现为电子设备中的芯片或芯片系统,本公开的实施例对此不限定。
本公开的实施例还提供了一种芯片,该芯片可以包括输入接口、输出接口和处理电路。在本公开的实施例中,可以由输入接口和输出接口完成上述信令或数据的交互,由处理电路完成信令或数据信息的生成以及处理。
本公开的实施例还提供了一种芯片系统,包括处理器,用于支持中心设备110或拍摄设备122以实现上述任一实施例中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,用于存储必要的程序指令和数据,当处理器运行该程序指令时,使得安装该芯片系统的设备实现上述任一实施例中所涉及的方法。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
本公开的实施例还提供了一种处理器,用于与存储器耦合,存储器存储有指令,当处理器运行所述指令时,使得处理器执行上述任一实施例中涉及中心设备110或拍摄设备122的方法和功能。
本公开的实施例还提供了一种包含指令的计算机程序产品,其在计算机上运行时,使得计算机执行上述各实施例中任一实施例中涉及中心设备110或拍摄设备122的方法和功能。
本公开的实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,当处理器运行所述指令时,使得处理器执行上述任一实施例中涉及中心设备110或拍摄设备122的方法和功能。
通常,本公开的各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。一些方面可以用硬件实现,而其他方面可以用固件或软件实现,其可以由控制器,微处理器或其他计算设备执行。虽然本公开的实施例的各个方面被示出并描述为框图,流程图或使用一些其他图示表示,但是应当理解,本文描述的框,装置、系统、技术或方法可以实现为,如非限制性示例,硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某种组合。
本公开还提供有形地存储在非暂时性计算机可读存储介质上的至少一个计算机程序产品。该计算机程序产品包括计算机可执行指令,例如包括在程序模块中的指令,其在目标的真实或虚拟处理器上的设备中执行,以执行如上参考附图的过程/方法。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。在各种实施例中,可以根据需要在程序模块之间组合或分割程序模块的功能。用于程序模块的机器可执行指令可以在本地或分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质中。
用于实现本公开的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本公开的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质、等等。信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。
计算机可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。计算机可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
此外,尽管在附图中以特定顺序描述了本公开的方法的操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤组合为一个步骤执行,和/或将一个步骤分解为多个步骤执行。还应当注意,根据本公开的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在很好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。

Claims (11)

  1. 一种同步方法,包括:
    中心设备与多个拍摄设备中的每个拍摄设备分别进行时间同步,以确定与每个拍摄设备的时间同步信息;
    所述中心设备向所述多个拍摄设备发送第一帧率信息,所述第一帧率信息用于指示目标帧率;
    所述中心设备向所述多个拍摄设备发送第一拍摄指令,所述第一拍摄指令包括第一拍摄开始时间,所述第一拍摄开始时间以所述中心设备的时钟为基准;以及
    所述中心设备从所述多个拍摄设备分别接收以所述第一拍摄开始时间为起点且按照所述目标帧率所拍摄的视频。
  2. 根据权利要求1所述的方法,还包括:
    所述中心设备基于所述第一拍摄开始时间和所述目标帧率确定第二拍摄开始时间;
    所述中心设备向另一个拍摄设备发送第二拍摄指令,所述第二拍摄指令包括所述第二拍摄开始时间;以及
    所述中心设备从所述另一个拍摄设备接收以所述第二拍摄开始时间为起点所拍摄的视频。
  3. 根据权利要求2所述的方法,其中所述第二拍摄开始时间被确定为使所述多个拍摄设备和所述另一个拍摄设备进行同步拍摄。
  4. 根据权利要求2或3所述的方法,还包括:
    所述中心设备向所述另一个拍摄设备发送第二帧率信息,所述第二帧率信息用于指示所述目标帧率。
  5. 根据权利要求1所述的方法,还包括:
    所述中心设备基于与所述多个拍摄设备之间的时间同步信息,确定所述多个拍摄设备拍摄的视频中在同一时刻被分别拍摄的多个帧;以及
    所述中心设备对所述多个帧执行图像后处理。
  6. 一种同步方法,包括:
    拍摄设备与中心设备进行时间同步,以确定时间同步信息;
    所述拍摄设备从所述中心设备接收帧率信息,所述帧率信息用于指示目标帧率;
    所述拍摄设备从所述中心设备接收拍摄指令,所述拍摄指令包括拍摄开始时间,所述拍摄开始时间以所述中心设备的时钟为基准;
    所述拍摄设备基于所述时间同步信息,确定与所述拍摄开始时间对应的本地启动时间,所述本地启动时间以所述拍摄设备的时钟为基准;
    所述拍摄设备从所述本地启动时间开始按照所述目标帧率拍摄视频;以及
    所述拍摄设备将所拍摄的视频发送至所述中心设备。
  7. 根据权利要求6所述的方法,其中按照所述目标帧率拍摄视频包括:
    所述拍摄设备基于所述目标帧率设置所述拍摄设备的拍摄参数;以及
    所述拍摄设备基于所述拍摄参数来拍摄所述视频。
  8. 根据权利要求7所述的方法,其中所述拍摄参数包括以下至少一项:图像曝光时的像素的行数、图像曝光时填充的空白像素的行数。
  9. 一种电子设备,包括处理器和存储器,所述存储器上存储有计算机指令,当所述计算 机指令被所述处理器执行时,使得所述电子设备执行权利要求1至5中任一项或者权利要求6至8中任一项所述的方法。
  10. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现根据权利要求1至5中任一项或者权利要求6至8中任一项所述的方法。
  11. 一种计算机程序产品,所述计算机程序产品上包含计算机可执行指令,所述计算机可执行指令在被执行时实现根据权利要求1至5中任一项或者权利要求6至8中任一项所述的方法。
PCT/CN2022/087849 2021-05-31 2022-04-20 同步方法、电子设备、计算机可读存储介质及程序产品 WO2022252854A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110600955.0 2021-05-31
CN202110600955 2021-05-31
CN202110838135.5 2021-07-23
CN202110838135.5A CN115484381A (zh) 2021-05-31 2021-07-23 同步方法、电子设备、计算机可读存储介质及程序产品

Publications (1)

Publication Number Publication Date
WO2022252854A1 true WO2022252854A1 (zh) 2022-12-08

Family

ID=84322750

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/087849 WO2022252854A1 (zh) 2021-05-31 2022-04-20 同步方法、电子设备、计算机可读存储介质及程序产品

Country Status (1)

Country Link
WO (1) WO2022252854A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491288A (zh) * 2015-12-08 2016-04-13 深圳市阿格斯科技有限公司 图像调整方法、装置及系统
CN107003666A (zh) * 2014-10-15 2017-08-01 本杰明·诺瓦克 多视点内容捕获和组合
CN111343401A (zh) * 2018-12-18 2020-06-26 华为技术有限公司 帧同步方法及其装置
CN112088527A (zh) * 2018-06-12 2020-12-15 罗姆股份有限公司 照相机系统、其控制器、汽车、解串器电路
CN112217985A (zh) * 2020-08-28 2021-01-12 新奥特(北京)视频技术有限公司 信息采集方法、装置及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003666A (zh) * 2014-10-15 2017-08-01 本杰明·诺瓦克 多视点内容捕获和组合
CN105491288A (zh) * 2015-12-08 2016-04-13 深圳市阿格斯科技有限公司 图像调整方法、装置及系统
CN112088527A (zh) * 2018-06-12 2020-12-15 罗姆股份有限公司 照相机系统、其控制器、汽车、解串器电路
CN111343401A (zh) * 2018-12-18 2020-06-26 华为技术有限公司 帧同步方法及其装置
CN112217985A (zh) * 2020-08-28 2021-01-12 新奥特(北京)视频技术有限公司 信息采集方法、装置及系统

Similar Documents

Publication Publication Date Title
CN109874021B (zh) 直播互动方法、装置及系统
TWI489293B (zh) 協同影像控制
JP6894976B2 (ja) 画像円滑性向上方法および装置
CN112004086B (zh) 视频数据处理方法及装置
US7978224B2 (en) Multicast control of motion capture sequences
WO2021114708A1 (zh) 多人视频直播业务实现方法、装置、计算机设备
CN111970524B (zh) 交互类直播连麦的控制方法、装置、系统、设备及介质
WO2018228352A1 (zh) 一种同步曝光方法、装置及终端设备
CN103985157A (zh) 一种结构光三维扫描方法及系统
JP2007060388A (ja) 映像処理装置、映像処理方法およびプログラム
WO2017193830A1 (zh) 视频切换方法、装置、系统及存储介质
WO2018129963A1 (zh) 一种显示方法和装置和计算机存储介质
WO2022252854A1 (zh) 同步方法、电子设备、计算机可读存储介质及程序产品
CN113676720A (zh) 多媒体资源的播放方法、装置、计算机设备及存储介质
CN114466145B (zh) 视频处理方法、装置、设备和存储介质
CN111064981B (zh) 一种视频串流的系统及方法
EP3688528B1 (en) Network-controlled 3d video capture
CN115484381A (zh) 同步方法、电子设备、计算机可读存储介质及程序产品
CN115767158A (zh) 同步播放方法、终端设备及存储介质
CN112887653B (zh) 一种信息处理方法和信息处理装置
CN114866829A (zh) 同步播放的控制方法及装置
CN113938617A (zh) 一种多路视频显示方法、设备、网络摄像机及存储介质
CN113099212A (zh) 3d显示方法、装置、计算机设备和存储介质
CN115174978B (zh) 一种3d数字人的音画同步方法及电子设备
CN114461165B (zh) 虚实相机画面同步方法、装置及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22814901

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22814901

Country of ref document: EP

Kind code of ref document: A1