US12470820B2 - Image capturing system, control method, and storage medium storing control program therefor - Google Patents
Image capturing system, control method, and storage medium storing control program thereforInfo
- Publication number
- US12470820B2 US12470820B2 US18/736,982 US202418736982A US12470820B2 US 12470820 B2 US12470820 B2 US 12470820B2 US 202418736982 A US202418736982 A US 202418736982A US 12470820 B2 US12470820 B2 US 12470820B2
- Authority
- US
- United States
- Prior art keywords
- image capturing
- image
- apparatuses
- synchronous
- time
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/683—Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
Definitions
- the present invention relates to an image capturing system, a control method therefor, and a storage medium storing a control program therefor.
- the image capturing system includes a plurality of image capturing apparatuses capable of image capturing and enables mutual communications between the image capturing apparatuses.
- the image capturing system simultaneously performs image capturing by the respective image capturing apparatuses at a predetermined time while synchronizing the times of the image capturing apparatuses. Then, the image capturing system generates a three dimensional image by performing a synthesis process or the like of synthesizing images captured by the respective image capturing apparatuses.
- an error occurs in the times synchronized between the image capturing apparatuses due to a variation in a processing time in the respective image capturing apparatuses, a variation in a communication time between the image capturing apparatuses.
- Japanese Patent Laid-Open Publication No. 2009-296323 discloses an image capturing system in which a main image capturing apparatus measures a delay time of an auxiliary image capturing apparatus during communications in advance and image capturing timings of both the apparatuses are adjusted based on the measured delay time.
- the image capturing system described in the above-mentioned publication cannot accurately synchronize the times of the image capturing apparatuses, for example, in a case where the processing time is not constant due to an individual difference of the image capturing apparatuses, or in a case where the delay time is not constant as in communication via a network.
- the image capturing timings may not be matched, and the image quality of the three dimensional image obtained by synthesizing the images captured by the image capturing apparatuses may be degraded. It is preferable to prevent the image quality deterioration.
- the prevention causes a problem that processing load in the image synthesis process increases.
- the present invention provides an image capturing system, a control method therefor, and a storage medium storing a control program therefor, which are capable of reducing processing load in an image process.
- an aspect of the present invention provides an image capturing system including image capturing apparatuses capable of image capturing and communicable mutually, a time synchronous unit configured to synchronize times of the image capturing apparatuses, a controller configured to control image capturing timings of the image capturing apparatuses based on the times synchronized by the time synchronous unit, an image processing unit configured to apply an image process to images captured by the image capturing apparatuses at the image capturing timings controlled by the controller with using a learned model, and a decision unit configured to decide the learned model used in the image processing unit based on synchronous accuracies of times synchronized by the time synchronous unit.
- the processing load in the image process is reduced.
- FIG. 1 is a view showing an example of an entire configuration of an image capturing system according to a first embodiment.
- FIG. 2 is a block diagram showing an example of a hardware configuration of the image capturing system shown in FIG. 1 .
- FIG. 3 is a flowchart showing a series of processes until image capturing apparatuses capture images in synchronization with each other.
- FIG. 4 A is a flowchart showing a series of processes until a server synthesizes images from the respective image capturing apparatuses.
- FIG. 4 B is a view showing an example of a neural network.
- FIG. 5 is a flowchart showing a time synchronous process in a step S 304 (subroutine) of the flowchart shown in FIG. 3 .
- FIG. 6 is a sequence diagram showing a time synchronous packet transmission and reception process executed in a step S 502 of the flowchart shown in FIG. 5 .
- FIG. 7 is a flowchart showing a synchronous accuracy calculation process in a step S 305 (subroutine) of the flowchart shown in FIG. 3 .
- FIG. 8 is a flowchart showing a series of processes until a server of an image capturing system according to a second embodiment synthesizes images from respective image capturing apparatuses.
- FIG. 9 A and FIG. 9 B are views for describing how neural network is selected depending on the number of image capturing apparatuses with a relatively low synchronous accuracy.
- FIG. 10 is a flowchart showing a series of processes until the server of the image capturing system according to a third embodiment synthesizes images from the respective image capturing apparatuses.
- FIG. 1 is a view showing an example of an entire configuration of an image capturing system 1000 according to the first embodiment.
- the image capturing system 1000 includes four image capturing apparatuses 101 a , 101 b , 101 c , and 101 d that can capture images, and a server 103 .
- the image capturing apparatuses 101 a to 101 d are communicably connected to each other via a communication network 102 , such as a LAN or the Internet.
- a communication network 102 such as a LAN or the Internet.
- Each of the image capturing apparatuses 101 a to 101 d and the server 103 are also communicably connected to each other via the communication network 102 .
- the images captured by the respective image capturing apparatuses 101 a to 101 d are transmitted to the server 103 . Accordingly, the server 103 can receive the images from the respective image capturing apparatuses 101 a to 101 d . The server 103 can create a three dimensional image by synthesizing the images.
- the server 103 has a function as an image processing unit to perform a process of creating a three dimensional image.
- the image capturing apparatuses 101 a to 101 d are digital cameras in the configuration shown in FIG. 1 , but are not limited thereto, and may be, for example, tablet terminals, smartphones, or the like having an image capturing function.
- the image capturing system 1000 shown in FIG. 1 includes the four image capturing apparatuses, the number of image capturing apparatuses arranged in the image capturing system 1000 is not limited thereto and may be, for example, two, three, five or more.
- FIG. 2 is a block diagram showing an example of a hardware configuration of the image capturing system shown in FIG. 1 .
- FIG. 2 shows the image capturing apparatus 101 a as a representative of the image capturing apparatuses 101 a to 101 d
- the other image capturing apparatuses 101 b to 101 d have the same configuration.
- the image capturing apparatus 101 a includes a CPU (controller) 207 , a ROM 208 , a memory 209 , a network processor 210 , an input unit 211 , a display unit 212 , an image capturing unit 213 , and a synchronous controller (time synchronous unit) 214 .
- These components are communicably connected to each other via a system bus 206 .
- the CPU 207 controls operations of the ROM 208 , memory 209 , network processor 210 , input unit 211 , display unit 212 , image capturing unit 213 and synchronous controller 214 .
- Various programs and the like are stored in the ROM 208 .
- the programs are not particularly limited and include a program for causing the CPU 207 (a computer) to execute each unit or each means (a control method of the image capturing system) of the image capturing system 1000 , for example.
- Storage storing the various programs is not limited to the ROM 208 and a hard disk or the like may be employed, for example.
- the memory 209 is constituted by a RAM, for example.
- the CPU 207 uses the memory 209 as a work memory in executing a program stored in the ROM 208 .
- the input unit 211 can receive an input operation from a user who uses the image capturing apparatus 101 a .
- the input unit 211 is not particularly limited, and is constituted by, for example, mechanical operation buttons, a touch panel, or the like.
- the input unit 211 can also generate and transmit control signals to the CPU 207 in response to input operations.
- the CPU 207 can control the network processor 210 , display unit 212 , image capturing unit 213 , and synchronous controller 214 in accordance with a program activated by a control signal from the input unit 211 .
- the display unit 212 is constituted by, for example, a display panel, and displays various images, such as images captured by the image capturing unit 213 , in accordance with display signals input.
- the input unit 211 can be integral with the display unit 212 .
- a touch panel having a light transmittance that allow a user to sufficiently visually recognize an image displayed on the display panel is attached to the surface of the display panel. Then, the input unit 211 and the display unit 212 can be integrally configured by associating the input coordinate on the touch panel with the display coordinates on the display panel.
- the image capturing unit 213 captures an image, and includes, for example, a lens, a shutter having a diaphragm function, an image sensor that converts an optical image into an electric signal, and an image processor that performs various image processes, such as exposure control and ranging control, using the electric signal from the image sensor.
- the image sensor is not particularly limited, and examples thereof include a CCD sensor and a CMOS sensor.
- the user can instruct the image capturing unit 213 to capture an image through the input unit 211 .
- the network processor 210 communicates with the server 103 via the communication network 102 .
- one of the image capturing apparatuses 101 a to 101 d is set as a primary apparatus, that is, a main image capturing apparatus, and the remaining image capturing apparatuses are set as secondary apparatuses, that is, auxiliary image capturing apparatuses.
- the primary apparatus manages a time serving as a reference in synchronizing the times of the image capturing apparatuses 101 a to 101 d .
- the secondary apparatus synchronizes its time in accordance with the time of the primary apparatus. Then, the times of the image capturing apparatuses 101 a to 101 d can be synchronized by adjusting the times of the secondary apparatuses to the time of the primary apparatus.
- the image capturing apparatus 101 a is used as the primary apparatus, and the image capturing apparatuses 101 b to 101 d are used as the secondary apparatuses.
- another image capturing apparatus may be arranged as the primary apparatus separately from the image capturing apparatuses 101 a to 101 d , and the image capturing apparatus 101 a to 101 d may be used as the secondary apparatuses.
- the synchronous controller 214 synchronizes the times of the image capturing apparatuses 101 a to 101 d by matching the times of the image capturing apparatuses (secondary apparatuses) 101 b to 101 d to the time of the image capturing apparatus (primary apparatus) 101 a (a time synchronous step).
- the CPU 207 can control the image capturing timings in the respective image capturing apparatuses 101 a to 101 d on the basis of the time synchronized by the synchronous controller 214 (a control step).
- the synchronous controller 214 is constituted by a clock circuit 214 a and a synchronous signal output circuit 214 b.
- the clock circuit 214 a is used for synchronizing the own time with the times of the other image capturing apparatuses via the network processor 210 .
- the synchronous signal output circuit 214 b outputs a pulse signal for synchronization (a synchronous signal) from the clock circuit 214 a to the image capturing unit 213 to adjust the image capturing timing.
- the clock circuit 214 a is a hardware counter and counts up at a predetermined timing to manage the time.
- the clock circuit 214 a also has a function of correcting a counter value in order to synchronize the own time with the times of the other image capturing apparatuses via the network processor 210 .
- the synchronous signal output circuit 214 b outputs the pulse signal for synchronization from the clock circuit 214 a to the image capturing unit 213 .
- the image capturing unit 213 controls the image capturing timing in response to the synchronous signal as a trigger.
- the server 103 includes a CPU 202 , a memory 203 , a GPU (a Graphics Processing Unit) 204 , a server communication unit 205 , and a ROM (storage unit) 215 . These components are communicably connected to each other via a system bus 201 .
- the CPU 202 controls operations of the memory 203 , GPU 204 , server communication unit 205 , and ROM 215 .
- Various programs and the like are stored in the ROM 215 .
- the programs are not particularly limited and include a program for causing the CPU 202 (a computer) to execute each unit or each means (a control method of the image capturing system) of the image capturing system 1000 , for example.
- Storage storing the various programs is not limited to the ROM 215 and a hard disk or the like may store the various programs, for example.
- the server 103 receives the images captured by the respective image capturing apparatuses 101 a to 101 d in the image capturing timing described above. Then, the server 103 applies an image process to the images from the respective image capturing apparatuses 101 a to 101 d (an image processing step).
- the image process in this embodiment generates a three dimensional image by applying a synthesis process for synthesizing the images, but this is not limiting.
- the memory 203 is constituted by, for example, a RAM, and is used as a work memory when the CPU 202 and the GPU 204 operate.
- the server communication unit 205 communicates with the image capturing apparatuses 101 a to 101 d via the communication network 102 .
- the CPU 202 receives communication requests from the image capturing apparatuses 101 a to 101 d , and generates control signals corresponding to the communication requests.
- the CPU 202 also operates the GPU 204 .
- the GPU 204 is a calculator capable of performing a process specialized for computer graphics computation.
- the GPU 204 is able to process calculations required for a neural network 410 (see FIG. 4 B ), such as matrix operations, more quickly than the CPU 202 .
- the GPU 204 can be in charge of a calculation process together with the CPU 202 .
- the server 103 may include, for example, a TPU (Tensor Processing Unit) instead of the GPU 204 .
- the server 103 may include a NPU (a neural network processing unit) that performs the calculation process together with the CPU 202 .
- FIG. 3 is a flowchart showing a series of processes until the image capturing apparatuses capture images in synchronization with each other.
- the program based on the flowchart shown in FIG. 3 is started by the user operating one image capturing apparatus from among the image capturing apparatuses 101 a to 101 d in this embodiment, this is not limiting.
- the start of the program may be instructed by remote control.
- the CPU 207 accepts settings of the primary apparatus and the secondary apparatuses.
- the image capturing apparatus 101 a is set as the primary apparatus and the remaining image capturing apparatuses 101 b to 101 d are set as the secondary apparatuses among the image capturing apparatuses 101 a to 101 d that are communicably connected to each other in this embodiment.
- These settings can be accepted from operations to the touch panel (a set unit) of the input unit 211 integrally configured with the display panel of the display unit 212 on which a setting screen is displayed in the image capturing apparatus 101 a .
- the CPU 207 can receive the setting information on the setting screen, that is, the information that the image capturing apparatus 101 a is set to the primary apparatus and the image capturing apparatuses 101 b to 101 d are set to the secondary apparatuses. This information is shared among the image capturing apparatuses 101 a to 101 d.
- a step S 301 when the CPU 207 of the image capturing apparatus 101 a , which is the primary apparatus, determines that the input unit 211 has received the instruction to start synchronous image capturing of the image capturing apparatuses 101 a to 101 d , the CPU 207 constructs a network among the image capturing apparatuses 101 a to 101 d .
- the “network construction” is to enable a communication process among the image capturing apparatuses 101 a to 101 d for the synchronous image capturing.
- the CPU 207 of the image capturing apparatus 101 a controls the network processor 210 to communicate with the image capturing apparatuses 101 b to 101 d connected to the communication network 102 .
- the CPU 207 of the image capturing apparatus 101 a transmits a packet for inquiring presence of an image capturing apparatus capable of the synchronous image capturing to the communication network 102 and waits for a reply packet.
- the CPU 207 of the image capturing apparatus 101 a specifies the image capturing apparatus participating in the synchronized image capturing on the basis of the reply packet.
- the image capturing apparatuses 101 b to 101 d which are the secondary apparatuses, are specified.
- a step S 302 the CPU 207 of the image capturing apparatus 101 a performs live view image capturing by the image capturing unit 213 and performs live view display of an image obtained by the live view image capturing on the display unit 212 .
- the live view display is performed in the image capturing apparatuses 101 b to 101 d by following the image capturing apparatus 101 a.
- the CPU 207 of the image capturing apparatus 101 a specifies a main object in the image being live view displayed.
- the main object is a moving object in this embodiment.
- the main object is specified, for example, by the user operating the input unit 211 to designate the object to be the main object in the image being live view displayed and the CPU 207 receiving the designation.
- the CPU 207 of the image capturing apparatus 101 a notifies the image capturing apparatuses 101 b to 101 d of the object information related to the specified object.
- the object information can be shared among the image capturing apparatuses 101 a to 101 d.
- a step S 304 the CPU 207 of the image capturing apparatus 101 a executes the time synchronous process for synchronizing the times among the image capturing apparatuses 101 a to 101 d .
- the time synchronous process in the step S 304 will be described in detail later with reference to FIG. 5 .
- a step S 305 the CPU 207 of the image capturing apparatus 101 a performs a synchronous accuracy calculation process to calculate a synchronous accuracy of the time synchronized in the step S 304 .
- the synchronous accuracy is related to a time deviation amount.
- the CPU 207 has a function as an accuracy detection unit that calculates (detects) the synchronous accuracy in this embodiment.
- the CPU 207 of the image capturing apparatus 101 a controls the network processor 210 to transmit the synchronous accuracy, which is the result of the synchronous accuracy calculation process, to the server 103 .
- the details of the synchronous accuracy calculation process in step S 305 will be described later with reference to FIG. 7 .
- a step S 306 when determining that the input unit 211 has received the image capturing instruction from the user, the CPU 207 of the image capturing apparatus 101 a controls the synchronous controller 214 to prepare for the image capturing in which the image capturing start time is set. In addition, along with the preparation for the image capturing, the CPU 207 of the image capturing apparatus 101 a controls the network processor 210 to notify the image capturing apparatuses 101 b to 101 d of information about the image capturing timing. Then, when the image capturing start time comes, the CPU 207 of the image capturing apparatus 101 a outputs the image capturing synchronous signal to the image capturing unit 213 and starts the image capturing by the image capturing unit 213 .
- the image capturing apparatuses 101 b to 101 d also start the image capturing by following the image capturing apparatus 101 a on the basis of the information about the image capturing timing. After starting the image capturing, when determining that the input unit 211 has received an image capturing end instruction from the user, the CPU 207 of the image capturing apparatus 101 a ends the image capturing by controlling the image capturing unit 213 and the synchronous controller 214 . In addition, the image capturing apparatuses 101 b to 101 d end the image capturing by following the image capturing apparatus 101 a.
- a step S 307 the CPU 207 of the image capturing apparatus 101 a calculates a moving speed of the main object specified in the step S 306 in the image captured in the step S 303 . Specifically, the CPU 207 of the image capturing apparatus 101 a determines that a part on which the image capturing unit 213 is focused is the main object in the image captured in the step S 306 . Then, the CPU 207 calculates the moving speed of the object based on difference information between frames of the captured images. In this way, the CPU 207 functions as a speed detection unit that calculates (detects) the moving speed of the main object in this embodiment.
- a step S 308 the CPU 207 of the image capturing apparatus 101 a adds moving speed information regarding the moving speed of the main object calculated in the step S 307 to the captured image stored in the memory 209 . Then, the CPU 207 of the image capturing apparatus 101 a transmits the captured image to which the moving speed information is added to the server 103 by controlling the network processor 210 . In addition, the image capturing apparatuses 101 b to 101 d transmit the captured images to the server 103 by following the image capturing apparatus 101 a .
- the steps S 301 to S 308 are preferably repeated.
- the server 103 receives the captured images (synchronized captured images) from the image capturing apparatuses 101 a to 101 d .
- the server 103 applies the image process for generating a three dimensional image to these captured images.
- the server 103 executes the image process applied to the captured image in this embodiment, this is not limiting.
- One of the image capturing apparatuses 101 a to 101 d may executes the image process. For example, when the image capturing apparatus 101 a executes the image process, the images captured by the image capturing apparatuses 101 b to the 101 d are transmitted to the image capturing apparatus 101 a.
- FIG. 4 A is a flowchart showing a series of processes until a server synthesizes images from the respective image capturing apparatuses.
- FIG. 4 B is a view showing an example of a neural network. As shown in FIG. 4 A , the CPU 202 of the server 103 determines in a step S 401 whether the server communication unit 205 has received the synchronous accuracies transmitted in the step S 305 .
- step S 401 when the CPU 202 determines that the synchronous accuracies are received, the process proceeds to a step S 402 . In the meantime, as a result of the determination in the step S 401 , when the CPU 202 determines that the synchronous accuracies are not received, the process waits in the step S 401 .
- the CPU 202 decides a learned model to be used in a step S 404 (an image synthesis process) on the basis of the synchronous accuracies received in the step S 401 .
- the CPU 202 has a function as a decision unit that decides a learned model in this embodiment. This omits providing a section having the function as the decision unit separately from the CPU 202 , and thus the configuration of the server 103 is simplified.
- the server 103 may be provided with a section having the function as the decision unit separately from the CPU 202 .
- the learned model includes, for example, a neural network 410 shown in FIG. 4 B .
- the neural network 410 has an input layer 411 , intermediate layers 412 , and an output layer 413 .
- a state in which the synchronous accuracy is relatively low appears when the image capturing timings of the image capturing apparatuses 101 a to 101 d are deviated.
- the positions of the object in the captured images are deviated mutually.
- the three dimensional image may be a blurred image. Therefore, in order to prevent or suppress the blur in the three dimensional image, when the image synthesis process is performed in the step S 404 , image correction using the neural network 410 , that is, blur correction is performed.
- the ROM 215 of the server 103 stores a plurality of neural networks. These neural networks are different from each other in at least one of quantities including the number of layers constituting the input, intermediate, and output layers and the total number of nodes included in all the layers.
- the CPU 202 selects one neural network from among the stored neural networks corresponding to a blur correction amount.
- the CPU 202 selects a neural network with more the at least one of quantities including the number of layers and the total number of nodes and longer processing time as the blur correction amount is larger.
- the CPU 202 selects a neural network with the less the at least one of the quantities including the number of layers and the total number of nodes and shorter processing time as the blur correction amount is smaller. Further, the CPU 202 may select a neural network used in the step S 404 on the basis of the synchronous accuracies and the moving speed of the object.
- a step S 403 the CPU 202 determines whether the captured images from all the image capturing apparatuses 101 a to 101 d transmitted in the step S 308 are received by the server communication unit 205 .
- the process proceeds to the step S 404 .
- the process waits in the step S 403 .
- the GPU (an image process unit) 204 applies the image process to all the captured images received in the step S 403 using the neural network 410 decided in the step S 402 , i.e., synthesizes all the captured images to generate a three dimensional image. As a result, the three dimensional image becomes an image in which the blur is corrected.
- all the captured images received in the step S 403 are input to the input layer 411 of the neural network 410 .
- the image processes such as the synthesis process and the blur correction process, are applied to all the captured images by the intermediate layers 412 , and the three dimensional image in which a blur is corrected is output from the output layer 413 .
- the steps S 401 to S 404 are preferably repeated.
- one neural network 410 suitable for the blur correction can be selected corresponding to the blur correction amount. This can reduce the processing load in the image processes in the neural network 410 . In addition, the image quality deterioration due to a blur in the three dimensional image (synthetic image) generated from the synchronous image capturing is reduced.
- learning in the learned model is supervised learning.
- teacher data in the supervised learning input images used when the learned model is trained and an output image obtained by processing the input images and in which a blur is prevented are prepared.
- the learned model a large number of learning operations for outputting a target output image on the basis of various input images are performed.
- machine learning algorithm deep learning is preferable in this embodiment, but the machine learning algorithm is not limited thereto, and for example, a support vector machine, logistic regression, a decision tree, or the like may be used.
- FIG. 5 is a flowchart showing the time synchronous process in the step S 304 (subroutine) of the flowchart shown in FIG. 3 .
- the time synchronous process in FIG. 5 is executed by each of the image capturing apparatuses 101 a to 101 d .
- the CPU 207 of each of the image capturing apparatuses 101 a to 101 d determines whether the image capturing apparatus itself is the primary apparatus.
- the process proceeds to a step S 502 .
- the process proceeds to a step S 506 .
- the image capturing apparatus 101 a serves as the primary apparatus
- the image capturing apparatuses 101 b to 101 d serve as the secondary apparatuses.
- the CPU 207 of the image capturing apparatus 101 a as the primary apparatus determines that the image capturing apparatus 101 a itself is the primary apparatus in the step S 501 , and the process proceeds to the step S 502 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d as the secondary apparatuses determines that the image capturing apparatus itself is not the primary apparatus in the step S 501 , and the process proceeds to the step S 506 .
- the CPU 207 of the image capturing apparatus 101 a transmits and receives a time synchronous packet as information about time synchronization to and from the image capturing apparatuses 101 b to 101 d via the network processor 210 .
- the details of the transmission and reception of the time synchronous packet will be described later with reference to FIG. 6 .
- a step S 503 the CPU 207 of the image capturing apparatus 101 a determines whether time synchronization completion notifications are received from the image capturing apparatuses 101 b to 101 d via the network processor 210 .
- the process proceeds to a step S 504 .
- the process waits in the step S 503 .
- the CPU 207 of the image capturing apparatus 101 a transmits notifications indicating the time synchronization completion in the image capturing system 1000 including the image capturing apparatuses 101 a to 101 d to the image capturing apparatuses 101 b to the 101 d via the network processor 210 .
- a step S 505 the CPU 207 of the image capturing apparatus 101 a continues to periodically perform the process to communicate with the image capturing apparatuses 101 b to 101 d for the time synchronization.
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d as the secondary apparatuses determines whether the time synchronous packet from the image capturing apparatus 101 a is received via the network processor 210 .
- the process proceeds to a step S 507 .
- the process waits in the step S 506 .
- step S 507 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d controls the synchronous controller 214 on the basis of the time synchronous packet received in the step S 506 to correct the time of the clock circuit 214 a.
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d continues the time correction of the clock circuit 214 a on the based on the communication for time synchronization periodically transmitted from the image capturing apparatus 101 a . Then, the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines in a step S 508 whether the synchronization is completed. This determination is made on the basis of whether a width of the correction values in a predetermined time period falls within a certain range.
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the synchronization is completed and the process proceeds to a step S 509 .
- the width of the correction values in the predetermined time period does not fall within the certain range, it is not determined that the synchronization is completed, and the process returns to the step S 506 .
- step S 509 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d transmits a synchronous completion notification to image capturing apparatus 101 a via the network processor 210 .
- the steps S 501 to S 509 are preferably repeated.
- FIG. 6 is a sequence diagram showing the time synchronous packet transmission and reception process executed in the step S 502 of the flowchart shown in FIG. 5 .
- a delay time of the network path in the image capturing system 1000 is estimated by the time synchronous packet transmission and reception process, and the times of the image capturing apparatuses 101 b to 101 d are matched with the time of the image capturing apparatus 101 a on the basis of the delay time.
- the time synchronization packet transmission and reception process employs a two-step method in this embodiment, this is not limiting.
- a one-step method may be employed.
- the CPU 207 of the image capturing apparatus 101 a as the primary apparatus transmits a Sync packet to each of the image capturing apparatuses 101 b to 101 d as the secondary apparatuses via the network processor 210 .
- the Sync packet includes information indicating that the synchronous method is the two-step method.
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d receives the Sync packet from the image capturing apparatus 101 a via the network processor 210 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d stores reception time of the Sync packet.
- a step S 602 the CPU 207 of the image capturing apparatus 101 a transmits a Follow Up packet to each of the image capturing apparatuses 101 b to 101 d via the network processor 210 .
- the Follow Up packet includes transmission time of the SYNC packet transmitted in the step S 601 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d receives the Follow Up packet from the image capturing apparatus 101 a via the network processor 210 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the delay time in the communication path in the direction from the primary apparatus to the secondary apparatus on the basis of the difference between the SYNC packet transmission time included in the Follow Up packet and the reception time of the Sync packet.
- a step S 603 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d transmits a Delay_req packet (a delay-detection request packet) to the image capturing apparatus 101 a via the network processor 210 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d stores the transmission time of the Delay_req packet.
- the CPU 207 of the image capturing apparatus 101 a receives the Delay_req packet from each of the image capturing apparatuses 101 b to 101 d via the network processor 210 . Then, the CPU 207 of the image capturing apparatus 101 a stores reception time in receiving the Delay_req packet.
- a step S 604 the CPU 207 of the image capturing apparatus 101 a transmits a Delay_resp packet (a delay-detection response packet) to each of the image capturing apparatuses 101 b to 101 d via the network processor 210 .
- the Delay_resp packet includes information about the reception time at which the image capturing apparatus 101 a received the Delay_req packet.
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d receives the Delay_resp packet from the image capturing apparatus 101 a via the network processor 210 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the delay time in the communication path in the direction from the secondary apparatus to the primary apparatus on the basis on the difference between the transmission time of the Delay_req packet and the reception time of the Delay_req packet.
- the image capturing apparatuses 101 b to 101 d as the secondary apparatuses can periodically correct the times so as to match the time of the image capturing apparatus 101 a as the primary apparatus. This enables periodic time synchronization.
- FIG. 7 is a flowchart showing the synchronous accuracy calculation process in the step S 305 (subroutine) of the flowchart shown in FIG. 3 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d as the secondary apparatuses determines whether the time synchronous packets are received from the image capturing apparatus 101 a as the primary apparatus via the network processor 210 .
- the time synchronous packets include two packets that are the Sync packet (see the step S 601 in FIG. 6 ) and the Follow-Up packet (see the step S 602 in FIG. 6 ).
- the process proceeds to a step S 702 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the time synchronous packets are not received, the process waits in the step S 701 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the delay time via the reception path on the basis of the Sync packet and the Follow Up packet received in the step S 701 . The delay time is calculated by comparing the reception time at which the Sync packet is received with the transmission time included in the Follow Up packet, and is the difference from the time of the image capturing apparatus 101 a.
- a step S 703 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d transmits the Delay_req packet (delay-detection request packet, see the step S 603 in FIG. 6 ) to the image capturing apparatus 101 a via the network processor 210 .
- the Delay_req packet includes time information of each of the image capturing apparatuses 101 b to 101 d at the time of transmission of the packet concerned.
- a step S 704 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines whether the Delay_resp packet (delay-detection response packet, see the step S 604 in FIG. 6 ) is received from the image capturing apparatus 101 a via the network processor 210 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the Delay_resp packet is received, the process proceeds to a step S 705 .
- step S 704 when the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the Delay_resp packet is not received, the process waits in the step S 704 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the delay time via the transmission path on the basis of the transmission time of the Delay_req packet in the step S 703 and the Delay_resp packet received in the step S 704 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates a total delay time of the transmission and reception paths based on the delay time via the transmission path and the delay time via the reception path calculated in the step S 702 . Then, the CPU 207 of each of the image capturing apparatuses 101 b to 101 d correct the time of each of the image capturing apparatuses 101 b to 101 d so as to match the time of image capturing apparatus 101 a on the basis of the calculation result value and records it. The CPU 207 of the each of the image capturing apparatuses 101 b to 101 d counts the number of hops via the network path of the time synchronous packet.
- a step S 706 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines whether the mode for calculating a time error that is a difference from the time of the image capturing apparatus 101 a is a first mode or a second mode.
- the first mode is a mode in which the time error is calculated on the basis of the correction amount in performing the time correction.
- the second mode is a mode in which the time error is calculated on the basis of the number of hops via the network path of transmission and reception of the time synchronous packet.
- step S 706 when the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the mode is the first mode, the process proceeds to a step S 707 . In the meantime, as a result of the determination in the step S 706 , when the CPU 207 of each of the image capturing apparatuses 101 b to 101 d determines that the mode is the second mode, the process proceeds to a step S 708 .
- the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the time error, which is a difference from the time of the image capturing apparatus 101 a , on the basis of history of time correction information obtained by receiving the time synchronous packets. Specifically, the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the time error using the maximum value of correction amount for time adjustment with the image capturing apparatus 101 a . This enables calculation of a quantitative value indicating the degree of the time error between the time of the secondary apparatus and the time of the primary apparatus (the image capturing apparatus 101 a ). Then, the server 103 decides a neural network to be used for the image correction on the basis of the calculated value. After the execution of the step S 707 , the process proceeds to a step S 709 .
- step S 708 the CPU 207 of each of the image capturing apparatuses 101 b to 101 d calculates the time error on the basis of the number of hops via the network path obtained by the reception of the time synchronous packet. Thus, the delay time of the network path can be calculated. Then, the neural network can be decided on the basis of the calculated value.
- the process proceeds to the step S 709 .
- the CPU 207 of the image capturing apparatus 101 a calculates the synchronous accuracies on the basis of the time errors calculated in the step S 707 or S 708 .
- the CPU 207 of the image capturing apparatus 101 a then transmits the synchronous accuracies to the server 103 via the network processor 210 .
- the server 103 can decide the neural network 410 on the basis of the synchronous accuracies.
- the steps S 701 to S 709 are preferably repeated.
- the CPU 207 of the image capturing apparatus 101 a can calculate the synchronous accuracies on the basis of the communication speeds at the time when the image capturing apparatuses 101 a to 101 d communicate with each other.
- FIGS. 8 , 9 A, and 9 B a second embodiment will be described with reference to FIGS. 8 , 9 A, and 9 B .
- the description will be made focusing on differences from the above-described embodiment, and the description of the same matters will be omitted.
- this embodiment a configuration in which three dimensional synthesis is performed according to the number of image capturing apparatuses of which the synchronous accuracies are out of an allowable range will be described.
- FIG. 8 is a flowchart showing a series of processes until a server of an image capturing system according to the second embodiment synthesizes images from respective image capturing apparatuses.
- the CPU 202 of the server 103 determines, as with the step S 401 , whether the server communication unit 205 receives the synchronous accuracies transmitted in the step S 305 .
- step S 801 when the CPU 202 determines that the synchronous accuracies are received, the process proceeds to a step S 802 . In the meantime, as a result of the determination in the step S 801 , when the CPU 202 determines that the synchronous accuracies are not received, the process waits in the step S 801 .
- the CPU 202 determines whether the synchronous accuracies included in the synchronous accuracies received in the step S 801 fall within an allowable range.
- the CPU 202 has a function of a determination unit that determines whether the synchronous accuracies fall within the allowable range.
- a neural network with less the number of layers and/or total number of nodes and a shorter processing time is decided as the neural network 410 to be used.
- a neural network with more the number of layers and/or total number of nodes and a longer processing time is decided as the neural network 410 to be used.
- a neural network with less the number of layers and/or total number of nodes is referred to as a “neural network A” and a neural network with more the number of layers and/or total number of nodes is referred to as a “neural network B”.
- the process proceeds to a step S 803 .
- the process proceeds to a step S 804 .
- the CPU 202 decides the model with less the number of layers and/or total number of nodes (the neural network A) as the neural network 410 used in a step S 810 .
- step S 804 the CPU 202 obtains the number of image capturing apparatuses of which the synchronous accuracies are determined to be out of the allowable range in the step S 802 . And then, the process proceeds to a step S 805 .
- the CPU 202 determines whether the number of image capturing apparatuses obtained in the step S 804 is equal to or less than a threshold N. A method of deciding the threshold N will be described.
- the neural network 410 may be the neural network A or the neural network B. The difference in a computation amount between the neural network A and the neural network B is large.
- the calculation time may be short.
- the calculation time by the neural network A is X1
- the calculation time by the neural network B is X2.
- the time required for the time correction process corresponding to the time deviation amount for one image is X3.
- the calculation time X1, the calculation time X2, the required time X3, and the threshold N satisfy the following expression (1).
- the threshold value N can be derived from the expression (1).
- step S 805 when the CPU 202 determines that the number of image capturing apparatuses is equal to or less than the threshold N, the process proceeds to a step S 806 .
- step S 807 when the CPU 202 determines that the number of image capturing apparatuses is more than the threshold N, the process proceeds to a step S 807 .
- the CPU 202 decides to apply the time correction process corresponding to the time deviation amount to an image obtained from an image capturing apparatus of which a synchronous accuracy is determined not to fall within the allowable range in the step S 802 , and the process proceeds to the step S 803 .
- the time correction process is enabled by generating a pseudo image corresponding to an interframe image on the basis of vector information. This process may employ another neural network.
- a step S 807 the CPU 202 decides to use the model with more the number of layers and/or total number of nodes (the neural network B) as the neural network 410 , and the process proceeds to a step S 808 .
- the CPU 202 determines whether the server communication unit 205 has received the captured images from the image capturing apparatuses 101 a to 101 d transmitted in the step S 308 . As a result of the determination in the step S 808 , when the CPU 202 determines that all the captured images have been received, the process proceeds to a step S 809 . In the meantime, as a result of the determination in the step S 808 , when the CPU 202 determines that not all the captured images have been received, the process waits in the step S 808 .
- step S 809 the CPU 202 executes the time correction process and proceeds with the process to a step S 810 .
- the process in the step S 809 is executed on an image from an image capturing apparatus of which a synchronous accuracy is decided not to fall within the allowable range in the step S 806 in accordance with the time deviation amount.
- the GPU 204 applies the image process to all the captured images received in the step S 803 using the neural network 410 decided in the step S 807 or S 808 . That is, all the captured images are synthesized to generate a three dimensional image. Thus, the three dimensional image in which all the captured images are synthesized is generated. The three dimensional image is an image in which the blur is corrected.
- the steps S 801 to S 810 are preferably repeated.
- FIG. 9 A and FIG. 9 B are views for describing how neural network is selected depending on the number of image capturing apparatuses with relatively large synchronous accuracy errors.
- the threshold N of the number of image capturing apparatuses determined that the synchronous accuracies do not fall within the allowable range shall be “3”.
- FIG. 9 A is a view showing a case where the actual number of image capturing apparatuses determined that the synchronous accuracies do not fall within the allowable range is “2”. In the case shown in FIG. 9 A , the actual number of image capturing apparatuses is smaller than the threshold N.
- 9 B is a view showing a case where the actual number of image capturing apparatuses determined that the synchronous accuracies do not fall within the allowable range is “3”. In the case shown in FIG. 9 B , the actual number of image capturing apparatuses is equal to the threshold N (the actual number ⁇ N).
- the image capturing apparatuses 101 a and 101 c shall have relatively large synchronous accuracy errors.
- the time correction process is applied to the image captured by the image capturing apparatus 101 a to create a pseudo image A
- the time correction process is applied to the image captured by the image capturing apparatus 101 c to create a pseudo image B.
- the neural network A is used as the neural network 410 corresponding to the pseudo image A of the image capturing apparatus 101 a , the image of the image capturing apparatus 101 b , the pseudo image B of the image capturing apparatus 101 c , and the image of the image capturing apparatus 101 d .
- a three dimensional image Y in which image quality deterioration due to a blur is reduced is obtained.
- the neural network B is used as the neural network 410 corresponding to the images of the image capturing apparatuses 101 a to 101 d .
- the three dimensional image Y in which image quality deterioration due to a blur is reduced is obtained.
- the neural network can be appropriately selected according to the number of image capturing apparatuses having relatively large errors in the synchronous accuracy. This can reduce processing load in the image process.
- the three dimensional image is an image in which image quality deterioration due to a blur is reduced.
- a third embodiment will be described with reference to FIG. 10 .
- the description will be made focusing on differences from the above-described embodiments, and the description of the same matters will be omitted.
- a processing time period for creating a three dimensional image in the server 103 it is preferable to use the process described in the first embodiment or the second embodiment.
- the processing time period for creating a three dimensional image is limited and the three dimensional image is created in the processing time period.
- the neural network B tends to be selected as the neural network 410 .
- the neural network B may be difficult to use according to the number of the image capturing apparatuses. Therefore, a configuration in which the neural network 410 is selected according to a processing time period allowable to the CPU 202 of the server 103 will be described in this embodiment.
- FIG. 10 is a flowchart showing a series of processes until the server of the image capturing system according to the third embodiment synthesizes images from the respective image capturing apparatuses.
- the CPU 202 of the server 103 issues a synchronous process instruction 1021 to the image capturing apparatuses 101 a to 101 d in a step S 1001 , and the process proceeds to a step S 1002 .
- the CPU 202 determines whether the server communication unit 205 receives the synchronous accuracies 1022 transmitted in the step S 305 .
- the process proceeds to a step S 1004 .
- the process waits in the step S 1002 .
- the CPU 202 obtains an allowable processing time period that is allowed to be spent in the creation of a three dimensional image (image synthesis), and the process proceeds to a step S 1005 .
- the allowable processing time period may be input by the user or may be obtained from the ROM 215 that stores it in advance.
- the CPU 202 decides the neural network 410 (a learned model) to be used in a step S 1008 on the basis of the total number of the image capturing apparatuses in the image capturing system 1000 and the allowable processing time period obtained in the step S 1004 .
- a plurality of models of neural networks are stored in the ROM 215 in advance, and one neural network suitable for the process within the allowable processing time period is selected from among these.
- step S 1006 the CPU 202 notifies the image capturing apparatuses 101 a to 101 d of an allowable range 1023 for the synchronous accuracy corresponding to the neural network decided in the step S 1005 , and the process proceeds to a step S 1007 .
- the CPU 202 determines whether the server communication unit 205 has received the captured images 1024 from the image capturing apparatuses 101 a to 101 d . As a result of the determination in the step S 1007 , when the CPU 202 determined that all the captured images have been received, the process proceeds to the step S 1008 . In the meantime, as a result of the determination in the step S 1007 , the CPU 202 determines that not all the captured images have been received, the process waits in the step S 1007 .
- the GPU 204 synthesizes the all the captured images received in the step S 1007 to generate a three dimensional image using the neural network 410 decided in the step S 1005 .
- the three dimensional image becomes an image in which the blur is corrected.
- a step S 1011 the CPU 207 of each of the image capturing apparatuses 101 a to 101 d determines whether the synchronous process instruction 1021 issued in the step S 1001 is received. As a result of the determination in the step S 1011 , when the CPU 207 determines that the synchronous process instruction 1021 is received, the process proceeds to a step S 1012 . In the meantime, as a result of the determination in the step S 1011 , when the CPU 207 determines that the synchronous process instruction 1021 is not received, the process waits in the step S 1011 .
- step S 1012 the CPU 207 performs the synchronous process and the process proceeds to a step S 1016 . Since the synchronous process has been described with reference to FIG. 6 , the description thereof is omitted.
- step S 1016 the CPU 207 determines whether the allowable range 1023 notified in the step S 1006 is received. As a result of the determination in the step S 1016 , when the CPU 207 determines that the allowable range 1023 is received, the process proceeds to a step S 1017 . In the meantime, as a result of the determination in the step S 1016 , when the CPU 207 determines that the allowable range 1023 is not received, the process waits in the step S 1016 .
- step S 1017 the CPU 207 determines whether the synchronous accuracy of the synchronized captured image falls within the allowable range 1023 received in the step S 1016 .
- the process proceeds to a step S 1019 .
- the process proceeds to a step S 1018 .
- step S 1018 a CPU 207 of an image capturing apparatus of which the synchronous accuracy is out of the allowable range applies the time correction process corresponding to the time deviation amount to a captured image. After the execution of the step S 1018 , the process proceeds to the step S 1019 .
- the CPU 207 transmits the captured image 1024 from the network processor 210 to the server 103 .
- the time correction process may be executed in the image capturing apparatuses 101 a to 101 d or may not be executed in some image capturing apparatuses. Further, the CPU 207 also functions as a switching unit that switches the image capturing apparatus set to the primary apparatus to the secondary apparatus and switches the image capturing apparatus set to the secondary apparatus to the primary apparatus. In this case, the primary apparatus can be selected from image capturing apparatuses that do not execute the time correction process and can be switched thereto. This allows the omission of the time correction process in the primary apparatus.
- Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s).
- computer executable instructions e.g., one or more programs
- a storage medium which may also be referred to more fully as a
- the computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions.
- the computer executable instructions may be provided to the computer, for example, from a network or the storage medium.
- the storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)TM), a flash memory device, a memory card, and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
Description
Claims (18)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023-100020 | 2023-06-19 | ||
| JP2023100020A JP2025000260A (en) | 2023-06-19 | 2023-06-19 | Imaging system, method for controlling imaging system, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20240422436A1 US20240422436A1 (en) | 2024-12-19 |
| US12470820B2 true US12470820B2 (en) | 2025-11-11 |
Family
ID=93844041
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/736,982 Active 2044-08-07 US12470820B2 (en) | 2023-06-19 | 2024-06-07 | Image capturing system, control method, and storage medium storing control program therefor |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US12470820B2 (en) |
| JP (1) | JP2025000260A (en) |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009296323A (en) | 2008-06-05 | 2009-12-17 | Shimadzu Corp | Photographing apparatus |
| US20170223252A1 (en) * | 2014-09-24 | 2017-08-03 | Casio Computer Co., Ltd. | Synchronous photographing system that controls synchronous photographing by plurality of image capture apparatus |
| US20200213525A1 (en) * | 2018-12-27 | 2020-07-02 | Canon Kabushiki Kaisha | Image capture apparatus and control method thereof |
| US20220237920A1 (en) * | 2019-06-14 | 2022-07-28 | Mazda Motor Corporation | Outside environment recognition device |
| US20230343064A1 (en) * | 2022-04-20 | 2023-10-26 | Canon Kabushiki Kaisha | Control apparatus and control method executed by image capture system |
| US20240414675A1 (en) * | 2023-06-06 | 2024-12-12 | Cumucore Oy | Method and tsn bridge for optimizing performance of an indoor industrial network and an industrial network |
| US20250061340A1 (en) * | 2023-08-17 | 2025-02-20 | Nvidia Corporation | Training neural networks independently |
-
2023
- 2023-06-19 JP JP2023100020A patent/JP2025000260A/en active Pending
-
2024
- 2024-06-07 US US18/736,982 patent/US12470820B2/en active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009296323A (en) | 2008-06-05 | 2009-12-17 | Shimadzu Corp | Photographing apparatus |
| US20170223252A1 (en) * | 2014-09-24 | 2017-08-03 | Casio Computer Co., Ltd. | Synchronous photographing system that controls synchronous photographing by plurality of image capture apparatus |
| US20200213525A1 (en) * | 2018-12-27 | 2020-07-02 | Canon Kabushiki Kaisha | Image capture apparatus and control method thereof |
| US20220237920A1 (en) * | 2019-06-14 | 2022-07-28 | Mazda Motor Corporation | Outside environment recognition device |
| US20230343064A1 (en) * | 2022-04-20 | 2023-10-26 | Canon Kabushiki Kaisha | Control apparatus and control method executed by image capture system |
| US20240414675A1 (en) * | 2023-06-06 | 2024-12-12 | Cumucore Oy | Method and tsn bridge for optimizing performance of an indoor industrial network and an industrial network |
| US20250061340A1 (en) * | 2023-08-17 | 2025-02-20 | Nvidia Corporation | Training neural networks independently |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2025000260A (en) | 2025-01-07 |
| US20240422436A1 (en) | 2024-12-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9154696B2 (en) | Imaging device for synchronized imaging | |
| US20170223252A1 (en) | Synchronous photographing system that controls synchronous photographing by plurality of image capture apparatus | |
| WO2018228352A1 (en) | Synchronous exposure method and apparatus and terminal device | |
| US9661191B2 (en) | Image capture apparatus having function of generating frame synchronization signal at constant cycle | |
| US10257437B2 (en) | Imaging apparatus and control method for positioning a plurality of images continuously captured by an image sensor | |
| US10110842B2 (en) | Image capturing apparatus, control method thereof and storage medium | |
| US11172117B2 (en) | Image capture apparatus and system that determines a common delay time with at least one other image capture apparatus based on exposure delay times and communication delay times | |
| US20160088210A1 (en) | Photographing control apparatus that controls synchronous photographing by plurality of image capture apparatus | |
| JP2017032908A (en) | Image shake correction apparatus, control method therefor, and imaging apparatus | |
| US12470820B2 (en) | Image capturing system, control method, and storage medium storing control program therefor | |
| JP2017225072A (en) | Imaging device, control method thereof, and program | |
| CN108737698A (en) | Device for image stabilization and method, picture pick-up device, camera system and storage medium | |
| US20200358949A1 (en) | Image capturing apparatus and control method therefor | |
| US10805541B2 (en) | Image capture apparatus and control method thereof | |
| US20200267372A1 (en) | Apparatus, apparatus control method, and recording medium, for synchronizing a plurality of imaging devices | |
| US11800071B2 (en) | Control device, projection apparatus, control method, and control program | |
| JP2020188452A (en) | Imaging device and its control method | |
| JP6327892B2 (en) | Imaging apparatus and control method thereof | |
| US12464232B2 (en) | Control apparatus, image capturing system and control method thereof, and storage medium | |
| US12020410B2 (en) | Image processing apparatus that aligns images, image pickup apparatus including image processing apparatus, and control method for image processing apparatus | |
| US11190683B2 (en) | Image capture apparatus and control method therefor | |
| JP2020187259A (en) | Error prediction device and method, anti-vibration control device and method, and imaging device | |
| US12177562B2 (en) | Image-capturing apparatus, control method, and storage medium | |
| US20200021735A1 (en) | Imaging apparatus, image-capturing control method, and program | |
| US12499648B2 (en) | Image processing apparatus, image capturing apparatus, control method, and storage medium for detecting subject in captured image |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| AS | Assignment |
Owner name: CANON KABUSHIKI KAISHA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HORIE, NOBUYUKI;NAKANO, KATSUYA;SIGNING DATES FROM 20240529 TO 20240531;REEL/FRAME:067791/0321 |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: ALLOWED -- NOTICE OF ALLOWANCE NOT YET MAILED Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |