Imaging device, control method for imaging device, and program
The imaging device uses motion prediction to synchronize imaging devices only when necessary, addressing network load issues while maintaining high synchronization accuracy by predicting subject movement and adjusting synchronization accordingly.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2024-10-29
- Publication Date
- 2026-05-15
AI Technical Summary
Existing technologies face challenges in reducing network load while maintaining high synchronization accuracy among multiple imaging devices, particularly in networks with many devices requiring precise timing synchronization.
The imaging device incorporates motion prediction to synchronize imaging timing with other devices only when subject movement exceeds a predetermined threshold, using a neural network to predict subject movement and adjust synchronization as needed, thereby reducing frequent network synchronization demands.
This approach achieves high-precision synchronization without overburdening the network by selectively performing synchronization based on subject movement, thus optimizing network load and image quality.
Smart Images

Figure 2026078813000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an imaging device that performs synchronous shooting, a control method for the imaging device, and a program.
Background Art
[0002] Conventionally, a synchronous shooting system that synchronizes the shooting timing by synchronizing the times of a plurality of imaging devices with each other is known. In such a synchronous shooting system, synchronous shooting is achieved by performing shooting processes simultaneously on a plurality of imaging devices at a predetermined time while synchronizing the times between the imaging devices with each other.
[0003] In addition, there is also an application that generates a three-dimensional image by performing synchronous shooting with a plurality of imaging devices and collecting the captured images from each imaging device to perform processing such as image synthesis. When using this application, if the synchronization accuracy is low, there will be a deviation in the shooting timing between each imaging device, and the image quality will be reduced when generating a three-dimensional image based on the captured images of each imaging device. Therefore, when using an application that generates a three-dimensional image, it is conceivable to perform synchronization processing frequently in order to improve the synchronization accuracy. However, performing synchronization processing frequently increases the load on the network.
[0004] Therefore, in order to reduce the load on the network due to synchronization processing, Patent Document 1 discloses a method of reducing the load on the network by disconnecting the network for devices that do not require frequent synchronization based on the synchronization accuracy required by each device.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] However, in the technology disclosed in Patent Document 1, it is difficult to reduce the network load in a network equipped with many imaging devices that require high synchronization accuracy.
[0007] In view of the aforementioned problems, the present invention aims to enable high-precision synchronization of imaging timing with other imaging devices without placing a heavy load on the network. [Means for solving the problem]
[0008] The imaging device according to the present invention is an imaging device that performs imaging in synchronization with another imaging device, and is characterized by comprising: imaging means; identification means for identifying a subject from an image captured by the imaging means; motion prediction means for predicting the movement of the subject identified by the identification means; and synchronization processing means for synchronizing the time with the other imaging device when the movement of the subject predicted by the motion prediction means satisfies predetermined conditions. [Effects of the Invention]
[0009] According to the present invention, it is possible to synchronize the timing of image capture with other imaging devices with high precision without placing a heavy load on the network. [Brief explanation of the drawing]
[0010] [Figure 1] This figure shows an example of the overall configuration of the synchronized imaging system in the embodiment. [Figure 2] This block diagram shows an example of the hardware configuration of a server and imaging device. [Figure 3] This flowchart shows an example of a processing procedure for synchronized imaging using a single imaging device. [Figure 4] This is a flowchart illustrating the overview of the time synchronization process. [Figure 5] This flowchart shows an example of a detailed processing procedure for time synchronization. [Figure 6]This diagram illustrates the overview of packet transmission and reception during time synchronization processing. [Modes for carrying out the invention]
[0011] Embodiments of the present invention will be described below with reference to the drawings. However, the present invention is not limited to the embodiments described below, and various forms that do not depart from the spirit of the invention are also included. Furthermore, each embodiment described below is merely one embodiment of the present invention, and it is possible to combine each embodiment as appropriate.
[0012] (First embodiment) Figure 1 shows an example of the overall configuration of the synchronized imaging system 100 in this embodiment. As shown in Figure 1, the synchronized imaging system 100 in this embodiment consists of imaging devices 101a to 101d and a server 103, and the imaging devices 101a to 101d and the server 103 are connected via a communication network 102 such as the Internet.
[0013] In this embodiment, the imaging devices 101a to 101d are described using cameras such as digital cameras as an example, but the imaging devices 101a to 101d may also be mobile phones or tablet terminals equipped with a shooting function. Furthermore, although the synchronized shooting system 100 in this embodiment is composed of four imaging devices, there may be any number of imaging devices. In the synchronized shooting system 100 of this embodiment, images captured by each of the imaging devices 101a to 101d are transmitted to the server 103, and the server 103 combines the received multiple images to generate a three-dimensional image.
[0014] Figure 2 is a block diagram showing an example of the hardware configuration of the server 103 and the imaging device 101a in this embodiment. The hardware configuration of imaging devices 101b to 101d is the same as that of imaging device 101a, and the configuration of imaging device 101a will be described below as a representative example. In Figure 2, imaging device 101a includes a CPU 207, ROM 208, memory 209, NPU 215, network processing unit 210, input unit 211, display unit 212, imaging unit 213, and synchronization control unit 214, which are connected via a system bus 206.
[0015] ROM208 stores various programs necessary for the CPU207 to operate. Note that these programs are not limited to ROM208; they could also be stored on a hard disk (not shown), for example. Memory 209 is composed of, for example, RAM. The CPU 207 uses memory 209 as work memory according to the program stored in ROM 208.
[0016] The input unit 211 receives user input, generates control signals corresponding to the input, and supplies them to the CPU 207. For example, the input unit 211 may have physical operation buttons or a touch panel as input devices that receive user input. The touch panel, for example, is an input device that outputs coordinate information corresponding to the position of contact with a planarly configured input unit.
[0017] The CPU 207 performs various processes based on control signals supplied in response to user operations from the input unit 211. Specifically, the CPU 207 controls the display unit 212, imaging unit 213, network processing unit 210, synchronization control unit 214, and NPU 215 according to the program stored in the memory 209. This allows the display unit 212, imaging unit 213, network processing unit 210, synchronization control unit 214, and NPU 215 to perform processing in response to user operations.
[0018] The display unit 212 is, for example, a display and includes a mechanism for outputting a display signal for displaying an image on the display. When a touch panel is used as the input unit 211, the input unit 211 and the display are integrally configured. For example, the touch panel is configured so that the light transmittance does not interfere with the display of the display and is attached to the upper layer of the display surface of the display. Then, it can be configured by associating the input coordinates on the touch panel with the display coordinates on the display.
[0019] The imaging unit 213 includes an imaging mechanism composed of a lens, a shutter having an aperture function, a CCD, a CMOS element, etc. that convert an optical image into an electrical signal, and an image processing unit that performs various image processes such as exposure control and distance measurement control from the electrical signal converted by the imaging mechanism. When a shooting operation is performed by the user from the input unit 211, shooting by the imaging unit 213 is started. In addition, the imaging unit 213 performs shooting in synchronization with an external imaging device based on information regarding the shooting timing from the synchronization control unit 214.
[0020] The network processing unit 210 communicates with the server 103 via the communication network 102 under the control of the CPU 207. The synchronization control unit 214 is composed of a clock circuit for synchronizing the time with other imaging devices via the network processing unit 210, and a synchronization signal output circuit that outputs a synchronization signal from the clock circuit to the imaging unit 213 to match the imaging timing. The clock circuit is a hardware counter that counts up at a predetermined timing to manage the time. In addition, the clock circuit has a function of correcting the counter value in order to synchronize the time with other imaging devices via the network processing unit 210. The synchronization signal output circuit outputs a synchronization signal to the imaging unit 213 when the shooting start time is reached by the clock circuit, and the imaging unit 213 controls the shooting timing by performing shooting using this synchronization signal as a trigger.
[0021] The NPU (Neural Processing Unit) 215 is a arithmetic unit specialized in inference processing using neural networks. The NPU 215 performs inference processing using a trained model consisting of a neural network deployed from ROM 208 to memory 209 under the control of the CPU 207.
[0022] Next, the hardware configuration of server 103 will be described. As shown in Figure 2, server 103 is equipped with a CPU 202, memory 203, GPU 204, server communication unit 205, and ROM 216, which are connected via a system bus 201. Server 103 receives captured images from imaging devices 101a to 101d and generates a 3D image by combining these captured images based on the time information of the captured images.
[0023] ROM216 stores various programs necessary for the CPU202 to operate. Memory 203 is composed of, for example, RAM and is used as work memory for CPU 202 and GPU 204. The program for CPU 202 to operate is assumed to be stored in ROM 216 or a hard disk (not shown). The CPU 202 performs various controls according to the program loaded into memory 203.
[0024] The server communication unit 205 communicates with imaging devices 101a to 101d via the communication network 102, based on the control of the CPU 202. In this embodiment, when the CPU 202 receives a communication request from imaging devices 101a to 101d, it generates a control signal corresponding to the communication request and operates the GPU 204.
[0025] The GPU (Graphics Processing Unit) 204 is a processing unit capable of performing calculations specifically for computer graphics. Generally, the GPU 204 can process calculations required for neural networks, such as matrix operations, in a shorter time than the CPU 202.
[0026] Next, we will explain the sequence of processes from establishing a communication network for time synchronization between imaging devices to performing synchronized imaging. In this embodiment, the time of all imaging devices is synchronized by having one or more secondary devices adjust to the time managed by one primary device. Here, the primary device refers to the device that manages the time that serves as the reference time for time synchronization, and the secondary device refers to a device that synchronizes to the time managed by the primary device. Whether a device is a primary or secondary device is predetermined by the user via the input unit 211. Furthermore, information on which imaging device is a primary or secondary device is shared among imaging devices 101a to 101d, and this information is pre-stored in the ROM 208.
[0027] Figure 3 is a flowchart showing an example of a processing procedure for synchronized imaging using a single imaging device. Each process shown in Figure 3 is performed by loading a program stored in ROM 208 into memory 209, and then executing that program in CPU 207. The series of processes described below are started when a user operates one of the multiple imaging devices 101a to 101d. In this embodiment, an example is described in which the user operates imaging device 101a to start the process, but the process may also be started remotely from, for example, a tablet PC located remotely.
[0028] First, when the input unit 211 receives an instruction from the user to start synchronized imaging, it begins processing. In step S301, the CPU 207 starts communication processing between imaging devices 101a to 101d in order to perform synchronized imaging. In this process, the CPU 207 controls the network processing unit 210 and exchanges network communications with other imaging devices connected to the communication network 102. Specifically, in the case of imaging device 101a operated by the user, the CPU 207 controls the network processing unit 210 and sends a packet to the other imaging devices 101b to 101d to inquire about the existence of devices capable of synchronized imaging. It then waits until it receives a reply packet from the external imaging devices 101b to 101d. Upon receiving a reply packet from an imaging device participating in synchronized imaging, it exchanges data with the imaging device that sent the reply packet in order to establish a synchronized imaging system.
[0029] On the other hand, in the case of imaging devices 101b to 101d that are not directly operated by the user, the CPU 207 waits until it receives a packet from imaging device 101a, which is operated by the user, to inquire about the existence of a device capable of synchronized imaging. Upon receiving this packet, the CPU 207 controls the network processing unit 210 and sends a reply packet to imaging device 101a. This enables data exchange with imaging device 101a to establish a synchronized imaging system.
[0030] Next, in step S302, the CPU 207 controls the imaging unit 213 to perform live view shooting and displays the image captured by live view shooting on the display unit 212 in live view mode.
[0031] Next, in step S303, the CPU 207 identifies the main subject from the image displayed in live view. Specifically, in the case of imaging device 101a, when the user specifies the main subject from the image displayed in live view via the input unit 211, the CPU 207 identifies that subject. The CPU 207 then shares the subject information among the imaging devices by notifying the other imaging devices participating in the synchronized shooting system of that subject information. On the other hand, in the case of imaging devices 101b to 101d that are not directly operated by the user, the CPU 207 receives subject information from imaging device 101a and identifies the main subject based on the received subject information.
[0032] Next, in step S304, the CPU 207 uses the NPU 215 to perform motion prediction calculations for the subject. In motion prediction calculations, the motion information of the subject up to that point is input into a trained model composed of a neural network, and the position of the subject 500 milliseconds ahead is output. In this embodiment, the process of calculating the position of the subject 500 milliseconds ahead is performed, but this is not limited to a time of 500 milliseconds ahead. This time may be set according to the time required for the time synchronization process in step S306, which will be described later, as well as the performance of the neural network and the computational performance of the NPU 215.
[0033] Next, in step S305, the CPU 207 performs time synchronization processing based on the position of the subject calculated in step S304. The detailed processing in step S305 will be described later.
[0034] Next, in step S306, the CPU 207 captures an image including the subject. Specifically, in the case of imaging device 101a, when it receives a shooting start instruction from the input unit 211 via user operation, the CPU 207 controls the synchronization control unit 214 to set the shooting start time and performs preparation processing for shooting. Then, the CPU 207 notifies the other imaging devices 101b to 101d of information regarding the shooting timing via the network processing unit 210. When the set shooting start time arrives, the CPU 207 outputs an imaging synchronization signal to the imaging unit 213 and starts shooting. Subsequently, when it receives a shooting end instruction from the input unit 211 via user operation, the CPU 207 controls the imaging unit 213 and the synchronization control unit 214 to end shooting and stores the captured image in the memory 209. Furthermore, the CPU 207 notifies the other imaging devices 101b to 101d of the shooting end instruction via the network processing unit 210 and ends the shooting.
[0035] On the other hand, in the case of imaging devices 101b to 101d that are not directly operated by the user, when the CPU 207 receives information regarding the shooting timing from imaging device 101a, it controls the synchronization control unit 214 to set the shooting start time and performs preparation processing for shooting. When the set shooting start time arrives, the CPU 207 outputs an imaging synchronization signal to the imaging unit 213 and starts shooting. Subsequently, when the CPU 207 receives an instruction to end shooting from imaging device 101a, it controls the imaging unit 213 and the synchronization control unit 214 to end shooting and stores the captured image in the memory 209.
[0036] Next, in step S307, the CPU 207 transmits the captured image stored in memory 209 to the server 103 via the network processing unit 210. At this time, in the case of imaging device 101a, the CPU 207 also instructs the other imaging devices 101b to 101d to transmit the captured image to the server 103. Then, upon receiving the instruction from imaging device 101a to transmit the captured image, the CPU 207 transmits the captured image stored in memory 209 to the server 103 via the network processing unit 210. With the above processing, the series of processes is completed.
[0037] Meanwhile, the server 103 executes an application that performs 3D synthesis and other operations on the captured images received from the imaging devices 101a to 101d. This allows the server 103 to perform processing such as generating a 3D image using images captured synchronously by multiple imaging devices 101a to 101d. In this embodiment, an example of generating a 3D image by sending captured images to the server 103 has been described; however, for example, the captured images could be collected by the imaging device 101a operated by the user and then a 3D image could be generated.
[0038] Figure 4 is a flowchart showing an example of a detailed processing procedure for step S305 in Figure 3. In step S401, the CPU 207 compares the position of the subject 500 milliseconds ahead, calculated in step S304, with its current position and calculates the amount of movement of the subject. The amount of movement may be the distance the subject has moved, or it may be the number of pixels in the imaging mechanism, which is composed of a CCD or CMOS element, etc., that makes up the imaging unit 213.
[0039] In step S402, the CPU 207 determines whether the amount of movement of the subject calculated in step S401 is greater than or equal to a predetermined threshold. For example, if the subject is moving at high speed, the amount of movement of the subject is large. In this case, the difference in the shooting timing of each imaging device has a significant impact, and the position of the subject captured by each imaging device may differ significantly on a pixel-by-pixel basis. If images of the subject with such different positions are combined to generate a 3D image, a blurry 3D image with a shifted subject position may be generated. Therefore, in this embodiment, in order to prevent the generation of such a blurry 3D image, a threshold is set for the amount of movement of the subject as a condition for performing time synchronization processing. The threshold is predetermined based on, for example, the synchronization accuracy maintained between imaging devices 101a to 101d by periodically performed time synchronization and the required accuracy of the 3D image. If the CPU 207 determines that the amount of movement of the subject is greater than or equal to the threshold, it is necessary to perform time synchronization processing at a timing different from the periodically performed time synchronization, and the process proceeds to step S404. On the other hand, if the CPU 207 determines that the amount of movement of the subject is less than the threshold, the process proceeds to step S403.
[0040] In step S403, the CPU 207 determines whether its device is a primary device. If the CPU 207 determines that its device is a primary device, the process proceeds to step S408. On the other hand, if the CPU 207 determines that its device is a secondary device, the process proceeds to step S404.
[0041] In step S404, the CPU 207 sends a packet to the primary device, which is the imaging device, via the network processing unit 210, indicating a synchronization request to the primary device to perform time synchronization processing. By sending a packet indicating a synchronization request in this way, time synchronization processing can be performed between imaging devices even if the primary device determines that the amount of movement of the subject is less than a threshold due to the shooting angle.
[0042] In step S405, the CPU 207 determines whether its device is a primary device. If the CPU 207 determines that its device is a primary device, the process proceeds to step S406. On the other hand, if the CPU 207 determines that its device is a secondary device, the process proceeds to step S408.
[0043] In step S406, the CPU 207 determines whether it has received a packet indicating a synchronization request from the secondary device via the network processing unit 210. If the CPU 207 determines that it has received a synchronization request from the secondary device, the process proceeds to step S408. Due to the shooting angle, even if the primary device determines that the amount of subject movement is below a threshold, receiving a packet indicating a synchronization request allows other imaging devices to recognize that the amount of subject movement is above the threshold. This enables time synchronization processing between imaging devices at the appropriate timing. On the other hand, if the CPU 207 determines that it has not received a synchronization request from any of the secondary devices, the process proceeds to step S407.
[0044] In step S407, the CPU 207 determines whether a certain amount of time has elapsed since the last time synchronization for the periodically performed time synchronization. In this embodiment, periodic time synchronization is also performed at predetermined time intervals regardless of the movement of the subject, but the periodic time synchronization is set to a frequency that does not place a heavy load on the network. If the CPU 207 determines that a certain amount of time has elapsed since the last time synchronization, it is time to perform the periodically performed time synchronization, and the process proceeds to step S408. On the other hand, if the CPU 207 determines that a certain amount of time has not elapsed since the last time synchronization, the process in step S305 in Figure 3 is terminated.
[0045] In step S408, the CPU 207 exchanges data with other imaging devices via the network processing unit 210 to synchronize the time, and adjusts the clock in the synchronization control unit 214 to synchronize the time. The detailed procedure for the time synchronization process will be explained below with reference to Figure 5.
[0046] Figure 5 is a flowchart showing an example of a detailed processing procedure for the time synchronization process in step S408 of Figure 4. In step S501, the CPU 207 determines whether its device is a primary device. If the CPU 207 determines that its device is a primary device, the process proceeds to step S502. On the other hand, if the CPU 207 determines that its device is a secondary device, the process proceeds to step S506.
[0047] In step S502, the CPU 207 sends and receives time synchronization packets to and from an external imaging device via the network processing unit 210. Details of the packet exchange in the time synchronization process will be described later with reference to Figure 6.
[0048] Next, in step S503, the CPU 207 waits until it receives notification from all secondary devices that time synchronization is complete. Once the CPU 207 receives notification from all secondary devices that time synchronization is complete, it proceeds to step S504. In step S504, the CPU 207 sends a notification to all secondary devices indicating the completion of the time synchronization process, and terminates the process shown in step S305 of Figure 3.
[0049] On the other hand, in step S505, the CPU 207 determines whether or not it has received a time synchronization packet from the primary device within a predetermined time. If the CPU 207 determines that it has received a time synchronization packet from the primary device, the process proceeds to step S506. On the other hand, if the CPU 207 determines that it has not received a time synchronization packet from the primary device within a predetermined time, the time synchronization process is considered not to be performed, and the process in step S305 of Figure 3 is terminated.
[0050] In step S506, the CPU 207 controls the synchronization control unit 214 based on the received time synchronization packet and corrects the time information of the clock circuit. Then, in step S507, the CPU 207 notifies the primary device that the time synchronization is complete, and terminates the process in step S305 of Figure 3.
[0051] Next, with reference to Figure 6, the exchange of time synchronization packets between the primary and secondary devices will be described in detail. In this embodiment, the amount of network path delay is estimated by the packet exchange described below, and the secondary device adjusts its time to match that of the primary device, taking this delay into consideration. In this embodiment, a synchronization method called the TWO-STEP method is adopted, but other synchronization methods such as the ONE-STEP method may also be used. In Figure 6, an example is shown in which imaging device 101a is the primary device and packets are exchanged with imaging device 101b, which is the secondary device.
[0052] First, in T601, the primary device sends a SYNC packet to the secondary device. The SYNC packet contains information indicating that the synchronization method used is the TWO-STEP method. When the secondary device receives the SYNC packet, it stores the time of receipt in memory 209.
[0053] Next, in T602, the primary device sends a FOLLOW-UP packet to the secondary device. The FOLLOW-UP packet contains information about the transmission time of the SYNC packet sent immediately before it. When the secondary device receives the FOLLOW-UP packet, it reads the transmission time information of the SYNC packet contained in the FOLLOW-UP packet. Then, it calculates the delay time in the communication path from the primary device to the secondary device from the difference between the transmission time and the reception time of the SYNC packet.
[0054] Next, in T603, the secondary device sends a Delay-req packet to the primary device and stores the transmission time information of the Delay-req packet in memory 209. When the primary device receives the Delay-req packet, it stores the time the Delay-req packet was received in memory 209.
[0055] In T604, the primary device sends a Delay-resp packet to the secondary device. The Delay-resp packet contains information about the reception time of the Delay-req packet at the primary device. When the secondary device receives the Delay-resp packet, it reads the reception time information of the Delay-req packet contained within the Delay-resp packet. Then, it calculates the delay time in the communication path from the secondary device to the primary device from the difference between the transmission time and the reception time of the Delay-req packet.
[0056] By exchanging the packets described above, the secondary device can correct its time to match that of the primary device, thereby synchronizing the time.
[0057] As described above, according to this embodiment, the imaging device predicts the movement of the subject and calculates the amount of movement, thereby detecting in advance the timing when high synchronization accuracy is required and performing time synchronization processing. This eliminates the need to perform time synchronization processing at high frequency, reducing the network load while obtaining the required synchronization accuracy.
[0058] (Other embodiments) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.
[0059] This embodiment includes the following configurations, methods, and programs.
[0060] (Composition 1) An imaging device that performs imaging in synchronization with the timing of other imaging devices, Imaging means, A means for identifying a subject from an image captured by the aforementioned imaging means, A motion prediction means for predicting the movement of a subject identified by the aforementioned identification means, A synchronization processing means that synchronizes the time with the other imaging device when the motion of the subject predicted by the motion prediction means satisfies predetermined conditions, An imaging device characterized by having the following features.
[0061] (Configuration 2) The imaging device according to Configuration 1, characterized in that the synchronization processing means synchronizes the time with the other imaging device when the amount of movement of the subject is predicted by the motion prediction means to be greater than or equal to a threshold as a predetermined condition. (Composition 3) The imaging device according to configuration 1 or 2, characterized in that the synchronization processing means transmits a synchronization request to the other imaging device and synchronizes it to the time managed by the other imaging device. (Composition 4) The imaging device according to configuration 1 or 2, characterized in that the synchronization processing means communicates with the other imaging device to synchronize with the time managed by its own device. (Composition 5) The imaging device according to configuration 1 or 2, characterized in that the synchronization processing means, upon receiving a synchronization request from the other imaging device, communicates with the other imaging device to synchronize with the time managed by its own device. (Composition 6) The imaging apparatus according to any one of configurations 1 to 5, characterized in that the motion prediction means predicts the movement of the subject using a trained model composed of a neural network.
[0062] (method) A control method for an imaging device that performs imaging in synchronization with the timing of other imaging devices, The process of identifying the subject from the image captured by the imaging device, A motion prediction step that predicts the movement of the subject identified in the aforementioned specific step, A synchronization process is performed to synchronize the time with the other imaging device when the motion of the subject predicted in the motion prediction process satisfies predetermined conditions, A control method for an imaging device, characterized by having the following features.
[0063] (program) A program for causing a computer to function as one of the means of the imaging device described in any of configurations 1 to 6. [Explanation of Symbols]
[0064] 207: CPU, 213: Imaging unit, 214: Synchronization control unit, 215: NPU
Claims
1. An imaging device that performs imaging in synchronization with the timing of other imaging devices, Imaging means, A means for identifying a subject from an image captured by the aforementioned imaging means, A motion prediction means for predicting the movement of a subject identified by the aforementioned identification means, A synchronization processing means that synchronizes the time with the other imaging device when the motion of the subject predicted by the motion prediction means satisfies predetermined conditions, An imaging device characterized by having the following features.
2. The imaging device according to claim 1, wherein the synchronization processing means synchronizes the time with the other imaging device when the amount of movement of the subject is predicted by the motion prediction means to be greater than or equal to a threshold as a predetermined condition.
3. The imaging device according to claim 1, characterized in that the synchronization processing means transmits a synchronization request to the other imaging device and synchronizes it to the time managed by the other imaging device.
4. The imaging device according to claim 1, characterized in that the synchronization processing means communicates with the other imaging device to synchronize with the time managed by its own device.
5. The imaging device according to claim 1, characterized in that the synchronization processing means, upon receiving a synchronization request from the other imaging device, communicates with the other imaging device to synchronize with the time managed by its own device.
6. The imaging device according to claim 1, characterized in that the motion prediction means predicts the movement of the subject using a trained model composed of a neural network.
7. A control method for an imaging device that performs imaging in synchronization with the timing of other imaging devices, The process of identifying the subject from the image captured by the imaging device, A motion prediction step that predicts the movement of the subject identified in the aforementioned specific step, A synchronization process is performed to synchronize the time with the other imaging device when the motion of the subject predicted in the motion prediction process satisfies predetermined conditions, A control method for an imaging device, characterized by having the following features.
8. A program for causing a computer to function as each means of the imaging apparatus described in claim 1.