Display control device, display control method, and program
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2025-10-31
- Publication Date
- 2026-06-22
AI Technical Summary
Existing imaging systems with multiple cameras require manual operation to check the subject being shot by each camera, lacking usability improvements for automatic imaging systems.
A control device that automatically controls the shooting direction and angle of view of sub-cameras based on the role set for the sub-camera and the target subject and angle of view of the main camera, generating a display image that presents information about both cameras' targets and angles of view.
Enhances the usability of automatic imaging systems by providing a display that improves the control and monitoring of multiple cameras, reducing the need for manual operation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an imaging control device and imaging control method, a display control device and display control method, and an imaging system, and more particularly to a technique for controlling a plurality of imaging devices. [Background technology]
[0002] Patent Document 1 describes an imaging system that divides multiple cameras into main cameras and sub-cameras and controls the sub-cameras to capture the same subject as the main camera. In addition, the imaging system described in Patent Document 1 allows the shooting direction and angle of view of each camera to be checked on a remote control screen. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-25248 Summary of the Invention [Problem to be solved by the invention]
[0004] The imaging system described in Patent Document 1 can automatically control the shooting of the sub-cameras, thereby realizing labor savings. However, in order to check the subject being shot by each camera, it was necessary to operate the remote control screen to display the video being shot by each camera.
[0005] Therefore, in one aspect, the present invention provides an imaging control device and imaging control method, and a display control device and display control method that are capable of presenting information that improves the usability of an automatic imaging system that uses multiple cameras. [Means for solving the problem]
[0006] In one aspect, the present invention provides a shooting control device comprising: a control means for controlling the shooting direction and angle of view of a sub-camera among a plurality of cameras including a main camera and a sub-camera based on the role set for the sub-camera and the target subject and angle of view of the main camera; a generation means for generating a display image presenting information about the main camera and the sub-camera; and an output means for outputting the display image, wherein the generation means generates a display image presenting at least one of information about the target subject of the main camera and the target subject of the sub-camera, and information about the angle of view of the main camera and the sub-camera. [Effects of the Invention]
[0007] According to the present invention, it is possible to provide an imaging control device and imaging control method, and a display control device and display control method that are capable of presenting information that improves the usability of an automatic imaging system that uses multiple cameras. [Brief explanation of the drawings]
[0008] [Figure 1] Schematic diagram of an imaging system according to a first embodiment. [Figure 2] FIG. 1 is a block diagram showing an example of the functional configuration of each device in an imaging system according to a first embodiment. [Figure 3] FIG. 1 is a diagram illustrating the imaging control device according to the first and second embodiments, focusing on the main operations and signal flows. [Figure 4] FIG. 10 shows examples of roles and control contents that can be set for a sub-camera in an embodiment. [Figure 5] Flowchart of role determination processing in the first embodiment [Figure 6] 1 is a flowchart showing the operation of each device in the imaging system according to the first and second embodiments. [Figure 7] FIG. 1 is a diagram for explaining coordinate transformation in an embodiment. [Figure 8] 1 is a diagram relating to subject detection and coordinate transformation in an embodiment; [Figure 9] Schematic diagram of the operation control of the sub-camera in the first embodiment [Figure 10] 10 is a schematic diagram of another operational control of the sub-camera in the first embodiment; [Figure 11] FIG. 10 is a diagram for explaining pan value calculation in an embodiment. [Figure 12] FIG. 10 is a diagram for explaining tilt value calculation in the embodiment. [Figure 13] FIG. 10 is a diagram showing an example of mapping of zoom values between the main camera and the sub camera in the first embodiment; [Figure 14] 10 is a flowchart showing a process for determining control contents according to the role of the sub-camera in the first embodiment; [Figure 15] Schematic diagram of control according to the role of the sub-camera in the first embodiment [Figure 16] Schematic diagram of control according to the role of the sub-camera in the first embodiment [Figure 17] Schematic diagram of a tracking operation of a plurality of subjects in a modified example of the first embodiment. [Figure 18] Schematic diagram of an imaging system according to a second embodiment. [Figure 19] FIG. 10 shows examples of roles and control contents that can be set in the second embodiment. [Figure 20] FIG. 11 is a schematic diagram illustrating an example of control related to a subject tracked by a sub-camera in the second embodiment. [Figure 21] Schematic diagram of an imaging system according to a third embodiment. [Figure 22] FIG. 11 is a block diagram showing an example of the functional configuration of each device in the imaging system according to the third embodiment. [Figure 23] FIG. 10 is a diagram illustrating the main operations and signal flows of an imaging control device according to a third embodiment. [Figure 24] 10 is a flowchart illustrating the operation of the imaging control device according to the third embodiment. [Figure 25] FIG. 10 is a diagram showing information associated with the subject's identification ID in the third and fourth embodiments. [Figure 26] FIG. 10 is a diagram showing an example of an overhead image in the third embodiment. [Figure 27] FIG. 10 is a diagram showing an example of an overhead image generated in the third embodiment; [Figure 28]FIG. 10 is a diagram showing an example of an overhead image generated in the third embodiment; [Figure 29] FIG. 10 is a diagram illustrating the main operations and signal flows of an imaging control device according to a fourth embodiment. [Figure 30] Flowchart regarding the operation of the imaging control device in the fourth embodiment [Figure 31] FIG. 13 is a diagram showing an example of an image generated in the fourth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0009] The present invention will be described in detail below based on exemplary embodiments with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the claimed invention. Furthermore, although multiple features are described in the embodiments, not all of them are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.
[0010] <First embodiment> (Overview of the multi-camera imaging system) 1 is a schematic diagram showing an example of the configuration of a multi-camera imaging system 10 (hereinafter simply referred to as an imaging system) according to this embodiment. The imaging system 10 has multiple cameras 300, 400, and 500, an imaging control device 100, and a role control device 600. The multiple cameras 300, 400, and 500, the imaging control device 100, and the role control device 600 are communicably connected via a communication network 700.
[0011] The communication network 700 complies with known wired or wireless communication standards such as the IEEE802.3 series, IEEE802.11 series, etc. Each of the multiple cameras 300, 400, 500, the shooting control device 100, and the role control device 600 has a communication interface that complies with the standard of the communication network 700.
[0012] Of the multiple cameras 300, 400, and 500, camera 300 captures the entirety of a predetermined capture range. The capture range is set as the range in a studio, for example, where the subject to be captured may be present. Therefore, the video captured by camera 300 captures all of the subjects within the capture range.
[0013] The purpose of camera 300 is to capture images for detecting subjects within the capture range. Therefore, the capture direction and angle of view of camera 300 are determined based on the position of camera 300 and the capture range, and are essentially fixed during capture. Furthermore, the focal distance may also be essentially fixed to obtain a pan-focus image of the capture range. It is preferable that camera 300 captures the entire capture range so that it is not obscured by objects outside the capture range. Therefore, camera 300 is installed in a position overlooking the entire capture range. To distinguish camera 300 from other cameras 400 and 500, whose capture direction and angle of view are essentially not fixed during capture, camera 300 will be referred to as a bird's-eye view camera hereinafter. However, the installation position of camera 300 is not limited to a position overlooking the capture range. The operation of bird's-eye view camera 300 can be controlled by the capture control device 100.
[0014] The cameras 400 and 500 are, for example, PTZ cameras, and their operations, including the shooting direction (pan and tilt angles) and angle of view (zoom), can be controlled from an external device. Here, it is assumed that the user of the imaging system controls the operation of the camera 500, and the shooting control device 100 controls the operation of the camera 400. Hereinafter, the camera 500 will be referred to as the main camera and the camera 400 as the sub-camera, because the shooting control device 100 controls the operation of the camera 400 based on the state of the camera 500. For ease of explanation and understanding, only one sub-camera 400 is shown, but there may be two or more sub-cameras. The main camera 500 may be directly operated by the user. The cameras 400 and 500 may be configured so that the shooting direction (pan and tilt angles) can be controlled by attaching the camera body to a camera platform. The cameras 400 and 500 may also be configured so that a zoomable interchangeable lens is attached to the camera body.
[0015] In this embodiment, it is assumed that the role control device 600 has an operator. The shooting control device 100 may also have an operator (user), but this is not required. The operator of the role control device 600 may also be the user of the shooting control device 100. Since the shooting control device 100 controls the shooting of the overhead camera 300 and the sub-camera 400, no photographer is required. It is assumed that the main camera 500 has an operator or photographer. In this way, a configuration that does not require operators or photographers for some devices can achieve labor savings.
[0016] 1 illustrates communication of all signals over the communication network 700, but video signals and control signals may be communicated by different methods. For example, each of the multiple cameras 300, 400, and 500 may directly supply a video signal to the shooting control device 100 via a cable. The cameras 300, 400, and 500 and the shooting control device 100 have communication circuits that comply with the video signal standard. Examples of video signal standards include, but are not limited to, the SDI (Serial Digital Interface) standard and HDMI (High-Definition Multimedia Interface) (registered trademark).
[0017] The photography control device 100 detects a subject from the video signal received from the overhead camera 300. The photography control device 100 determines the photography direction and angle of view of the sub-camera based on the subject detection result, the state of the main camera 500, and the role set for the sub-camera. The photography control device 100 transmits a control command including the determined photography direction and angle of view to the sub-camera 400. By changing the role setting, it is possible to change the method for determining the photography direction and angle of view of the sub-camera 400, thereby increasing the degree of freedom in controlling the operation of the sub-camera 400.
[0018] (Example of functional configuration of each device) 2 is a block diagram showing an example of the functional configuration of each device constituting the multi-camera imaging system 10 shown in FIG. The configurations expressed as functional blocks in the drawing can be realized by integrated circuits such as ASICs and FPGAs, by discrete circuits, or by a combination of memory and a processor that executes a program stored in the memory. Furthermore, one functional block may be realized by multiple integrated circuit packages, or multiple functional blocks may be realized by a single integrated circuit package. Furthermore, the same functional block may be implemented in different configurations depending on the operating environment, required capabilities, etc.
[0019] (imaging control device 100) First, we will explain an example of the functional configuration of the imaging control device 100. The imaging control device 100 may be a general-purpose computer device such as a personal computer or a workstation. The imaging control device 100 has a configuration in which a CPU 101, a RAM 102, a ROM 103, an inference unit 104, a network interface (I / F) 105, a user input unit 106, and a display unit 108 are interconnected via an internal bus 110.
[0020] The CPU 101 is a microprocessor capable of executing programmed instructions. The CPU 101, for example, loads a program stored in a ROM 103 into a RAM 102 and executes the program, thereby realizing the functions of the imaging control device 100, which will be described later. The CPU 101 can, for example, realize the functions of the imaging control device 100 by executing an imaging control application that runs on an operating system (OS).
[0021] The RAM 102 is used to load programs to be executed by the CPU 101 and to temporarily store data to be processed by the CPU 101, data currently being processed, etc. A part of the RAM 102 may be used as a video memory for the display unit 108.
[0022] The ROM 103 is a rewritable nonvolatile memory, and stores programs (OS and applications) executed by the CPU 101, user data, and the like.
[0023] The inference unit 104 executes a subject area detection process using a machine learning model on the image captured by the overhead camera 300. The inference unit 104 can be implemented using a hardware circuit capable of quickly executing calculations of the machine learning model, such as a GPU (Graphics Processing Unit) or an NPU (Neural Network Processing Unit). Alternatively, the inference unit 104 may be implemented using a reconfigurable logic circuit such as an FPGA (Field-Programmable Gate Array). The CPU 101 may execute a program to realize the functions of the inference unit 104.
[0024] The machine learning model may be a convolutional neural network (CNN) trained according to the type of object to be detected. Here, the inference unit 104 detects a human body region or a human face region as an object region from an input image. The inference unit 104 also outputs the position and size of a rectangular region inscribed in the object region and the detection reliability for each detected object region. It is also possible to use multiple types of machine learning models to perform detection processing of different types of object regions on the same input image. It is also possible for the inference unit 104 to perform detection processing of the object region using a known method that does not use a machine learning model. The inference unit 104 can detect the object region using, for example, a method using local features such as SIFT or SURF, or a method using pattern matching.
[0025] The network I / F 105 is an interface for connecting the photography control device 100 to the communication network 700. The photography control device 100 (CPU 101) can communicate with external devices on the communication network 700, such as the overhead camera 300, sub-camera 400, main camera 500, and role control device 600, via the network I / F 105. The photography control device 100 may also communicate with external devices via other communication interfaces (USB, Bluetooth (registered trademark), etc.) not shown.
[0026] To communicate with each device (overhead camera 300, sub camera 400, main camera 500, role control device 600) on communication network 700, CPU 101 acquires the network address of each device at any timing and stores it in RAM 102. CPU 101 also acquires information about each device (device type, model name, etc.) at any timing (for example, at the time of the first communication) and stores it in RAM 102. In this way, CPU 101 is assumed to know at least the identification information and device type of the overhead camera 300, sub camera 400, main camera 500, and role control device 600. Note that the user may be able to assign any name to each device.
[0027] The user input unit 106 is an input device such as a mouse, a keyboard, a touch panel, etc. The imaging control device 100 receives instructions from the user through the user input unit 106.
[0028] The display unit 108 is a display device such as a liquid crystal display (LCD), etc. The display unit 108 displays a GUI screen provided by the OS, a shooting control application, etc.
[0029] (Overhead camera 300) Next, an example of the functional configuration of the overhead camera 300 will be described. The CPU 301 is a microprocessor capable of executing programmed instructions. For example, the CPU 301 loads a program stored in the ROM 303 into the RAM 302 and executes it to control the operation of each functional block and realize the functions of the overhead camera 300, which will be described later.
[0030] The RAM 302 is used to load programs executed by the CPU 301 and to temporarily store data to be processed by the CPU 301, data currently being processed, etc. The RAM 302 may also be used as a buffer for video signals obtained by shooting.
[0031] The ROM 308 is a rewritable non-volatile memory. The ROM 308 stores programs executed by the CPU 301, setting values for the overhead camera 300, user data, etc. The ROM 308 can also be used as a recording destination for video signals. The ROM 308 may include an internal memory and a removable memory card.
[0032] The image sensor 307 has a photographing optical system and an image sensor. The image sensor may be, for example, a known CCD or CMOS color image sensor with a primary color Bayer array color filter. The image sensor has a pixel array in which multiple pixels are arranged two-dimensionally, and peripheral circuits for reading out signals from each pixel. Each pixel accumulates charge according to the amount of incident light through photoelectric conversion. By reading out from each pixel a signal having a voltage according to the amount of charge accumulated during the exposure period, a group of pixel signals (analog image signals) representing the subject image formed on the imaging surface can be obtained.
[0033] The image processing unit 306 applies predetermined signal processing and image processing to the analog image signal output by the image sensor 307, generating signals and image data according to the application, and acquiring and / or generating various types of information.
[0034] The processing applied by the image processing unit 306 can include, for example, pre-processing, color interpolation processing, correction processing, detection processing, data processing, evaluation value calculation processing, special effect processing, and the like. Pre-processing may include A / D conversion, signal amplification, reference level adjustment, defective pixel correction, and the like. Color interpolation is performed when a color filter is provided on the image sensor 307, and is a process of interpolating the values of color components that are not included in the individual pixel data that make up the image data. Color interpolation is also called demosaic processing. The correction processing can include white balance adjustment, tone correction, correction of image degradation caused by optical aberrations in the imaging optical system (image restoration), correction of the effects of vignetting in the imaging optical system, color correction, and the like. The data processing may include processes such as cutting out an area (trimming), compositing, scaling, encoding and decoding, generating header information (generating a data file), etc. The data processing also includes generating a video signal to be output externally and generating video data to be recorded in the ROM 308. The evaluation value calculation process may include processes such as generating signals and evaluation values used for autofocus (AF) and generating evaluation values used for automatic exposure (AE). AF and AE are executed by the CPU 301. Special effect processing can include adding a blur effect, changing color tones, relighting, and the like. Note that these are examples of processing that can be applied by the image processing unit 306, and do not limit the processing that can be applied by the image processing unit 306. The image processing unit 306 outputs the acquired or generated information and data to the CPU 301, RAM 302, etc. depending on the application.
[0035] The type and settings of the processing applied by the image processing unit 306 can be controlled by sending commands from the photography control device 100 to the overhead camera 300.
[0036] The network I / F 305 is an interface for connecting the overhead camera 300 to the communication network 700. The overhead camera 300 (CPU 301) can communicate with external devices on the communication network 700, such as the shooting control device 100, sub-camera 400, main camera 500, and role control device 600, via the network I / F 305. The overhead camera 300 may also communicate with external devices via other communication interfaces (USB, Bluetooth, etc.) not shown.
[0037] (Sub-camera 400) Next, a description will be given of an example of the functional configuration of the sub-camera 400. Functional blocks with the same names in the sub-camera 400 and the overhead camera 300 have the same functions, and their description will be omitted.
[0038] As described above, the sub-camera 400 is a PTZ camera, and the shooting direction and angle of view can be controlled externally. Therefore, the sub-camera 400 has a driving unit 409 that is capable of panning, tilting, and zooming, and a driving I / F 408. The driving I / F 408 is a communication interface between the driving unit 409 and the CPU 401.
[0039] The drive unit 409 has a pan / tilt mechanism that supports the sub-camera 400 so that it can pan and tilt, a zoom mechanism that changes the angle of view of the imaging optical system, and motors that drive these mechanisms. The zoom mechanism may use the image processing unit 406 to enlarge and reduce the image. The drive unit 409 drives the motor in accordance with instructions received from the CPU 401 via the drive I / F 408, and adjusts the optical axis direction and angle of view of the imaging optical system.
[0040] (Main camera 500) Next, an example of the functional configuration of the main camera 500 will be described. Functional blocks with the same name in the main camera 500 and the sub-camera 400 have the same function, and their description will be omitted. The main camera 500 is operated by the user. Here, it is assumed that the user remotely controls the main camera 500 by sending commands via the communication network 700. However, if the main camera 500 is not a PTZ camera, the user may directly operate the main camera 500.
[0041] The imaging control device 100 (CPU 101) can acquire information on the imaging direction and angle of view of the sub camera 400 and the main camera 500 from the sub camera 400 and the main camera 500 via the network I / F 505. The imaging direction may be the pan and tilt angles of the drive units 409 and 509, with a predetermined reference direction set to 0°. The reference direction may be the direction directly facing the imaging range.
[0042] (Role control device 600) Next, an example of the functional configuration of the role control device 600 will be described. The CPU 601 is a microprocessor capable of executing programmed instructions. For example, the CPU 601 loads a role setting program stored in the ROM 603 into the RAM 602 and executes it to control the operation of each functional block and realize the functions of the role control device 600.
[0043] The RAM 602 is used to load programs to be executed by the CPU 601 and to temporarily store data to be processed by the CPU 601, data currently being processed, etc. A part of the RAM 602 may be used as a video memory for the display unit 608.
[0044] The ROM 603 is a rewritable non-volatile memory, and stores the programs executed by the CPU 601, setting values for the role control device 600, user data, and the like.
[0045] The user input unit 611 is an input device such as a button, a dial, a joystick, a touch panel, etc. The role control device 600 receives instructions from the user regarding the setting of the role of the sub camera 400 through the user input unit 611.
[0046] The network I / F 605 is an interface for connecting the role control device 600 to the communication network 700. The role control device 600 (CPU 601) can communicate with external devices on the communication network 700, such as the overhead camera 300, sub-camera 400, main camera 500, and shooting control device 100, via the network I / F 605. The role control device 600 may also communicate with external devices via other communication interfaces (USB, Bluetooth, etc.) not shown.
[0047] The display unit 608 is a display device such as a liquid crystal display (LCD), etc. The display unit 608 displays a GUI screen provided by the OS, the role setting application, etc.
[0048] The role control device 600 stores role setting information in, for example, the ROM 603. The role setting information is information in which identification information of the sub camera 400 is associated with information indicating the role that has been set. The CPU 601 executes a role setting application to display a role setting screen on the display unit 608. The role setting screen displays, for example, identification information of the sub camera 400 (such as a network address or a name set by the user) and the name of the currently set role in association with each other. The initial value of the currently set role may be a default role that has been set in advance. The user can change the current role that is displayed in association with a desired sub camera 400 by operating the user input unit 611.
[0049] When a user operation indicating the end of the setting operation, such as an operation of an OK button included in the role setting screen, is detected, the CPU 601 updates the role setting information stored in the ROM 103 in accordance with the content of the role setting screen.
[0050] When the CPU 601 receives a role acquisition command via the network I / F 605, it reads out the role setting information stored in the ROM 103 and transmits it to the sender of the role acquisition command.
[0051] 1 and 2, the role control device 600 is depicted as an independent device, but for example, a shooting control application executed by the shooting control device 100 may provide the same function as the role control device 600. Alternatively, a role may be set directly to the sub-camera 400, and the shooting control device 100 may acquire the role assigned to the sub-camera 400 from the sub-camera 400.
[0052] The role that can be set for the sub camera 400 is a predetermined role that determines how information obtained from the main camera 500 is used to control the operation of the sub camera 400. Here, as an example, it is assumed that information from the main camera is used to control the tracking subject and zoom operation of the sub camera 400.
[0053] Fig. 4 shows an example of the types of roles that can be set for the sub-camera 400 and the control contents associated with the roles. The control contents for each role can be stored in the ROM 603 of the role control device 600 and the ROM 103 of the shooting control device 100 in the table format shown in Fig. 4, for example. Here, it is assumed that any of "main follow (MF)," "main counter (MC)," "assist follow (AF)," and "assist counter (AC)" can be set as the role ROLE. If there are multiple sub-cameras 400, a role can be set for each sub-camera.
[0054] For a sub-camera 400 whose ROLE is "main follow," the photography control device 100 (CPU 101) sets the same tracking subject as the main camera 500, and when the main camera 500 is zoomed, the photography control device 100 also performs zoom control of the sub-camera 400 in the same phase. Here, "in phase" means that the zoom direction (telephoto direction or wide-angle direction) is the same, i.e., the direction of the change in the angle of view is the same. On the other hand, "opposite phase" means that the zoom direction (telephoto direction or wide-angle direction) is opposite, i.e., the direction of the change in the angle of view is opposite. Note that even if the zoom direction is in the same phase, the angle of view does not have to be the same as that of the main camera 500, and whether in the same phase or opposite phase, the degree of change in zoom (such as the speed or rate of change) does not have to be the same as that of the main camera 500.
[0055] For the sub-camera 400 whose role is "main counter," the photography control device 100 (CPU 101) sets the same tracking subject as the main camera 500, and when the main camera 500 is zoomed, the photography control device 100 (CPU 101) controls the sub-camera 400 to zoom down in the opposite direction. Therefore, when the main camera 500 is zoomed up, the photography control device 100 (CPU 101) controls the sub-camera 400 with this role to zoom down. Note that zooming up refers to changing the zoom in the telephoto direction (toward the telephoto end), and zooming down refers to changing the zoom in the wide-angle direction (toward the wide-angle end). When zoom control is performed by the image processing unit 406, zooming up refers to reducing the area cut out from the image and increasing the magnification rate of the cut-out area compared to before the area was changed. On the other hand, zooming down refers to increasing the area cut out from the image and decreasing the magnification rate of the cut-out area compared to before the area was changed.
[0056] For the sub-camera 400 whose ROLE is "assist follow", the photography control device 100 (CPU 101) sets a tracking subject different from that of the main camera 500, and when the main camera 500 is zoomed, the photography control device 100 (CPU 101) performs zoom control of the sub-camera 400 in the same phase.
[0057] For the sub-camera 400 whose role is "assist counter," the photography control device 100 (CPU 101) sets a tracking subject that is different from that of the main camera 500. Furthermore, when the main camera 500 is zoomed, the photography control device 100 performs zoom control on the sub-camera 400 in the opposite phase.
[0058] Here, for sub-cameras 400 with roles of "assist follow" and "assist counter," a subject that is on the left side (left edge) of an image other than the target subject of main camera 500 is set as the tracking subject of sub-camera 400. Note that the tracking subject of sub-camera 400 may be set according to other conditions. For example, a subject that is on the right side (right edge), above (top edge), or below (bottom edge) of an image other than the target subject of main camera 500 may be set as the tracking subject of sub-camera 400. Alternatively, a subject that is on the front or back of an image other than the target subject of main camera 500 may be set as the tracking subject of sub-camera 400.
[0059] Also, only one of setting the subject to be tracked and zoom control may be performed, or another control item may be added.
[0060] In the role setting information stored in the ROM 603 by the role control device 600, information indicating the role ROLE (such as the above-mentioned type name or the number assigned to the type) is associated with identification information of the sub camera 400. The CPU 101 of the photography control device 100 acquires the role setting information from the role control device 600, and executes operation control of the sub camera 400 according to the type of role ROLE set for the sub camera 400.
[0061] The role control device 600 may notify an external device (for example, the shooting control device 100) when there is a change in the role setting for the sub-camera 400. This allows the change in the role setting to be immediately reflected in the operation control of the sub-camera 400.
[0062] <Explanation of the operation of each device> Next, the operation of each device in the multi-camera imaging system will be described. Here, the imaging control device 100 automatically controls the imaging operation of the sub-camera 400 based on the image from the overhead camera 300, information obtained from the main camera 500, and the role set for the sub-camera 400.
[0063] 3 is a diagram illustrating a series of processes performed by the shooting control device 100 when controlling the operation of the sub-camera 400, focusing on the main operations and signal flow. The functional blocks shown in the shooting control device 100 schematically illustrate the main operations and correspond to the main functions provided by the shooting control application. Each functional block in FIG. 3 is realized by a combination of the CPU 101 that executes the shooting control application and one or more of the functional blocks of the shooting control device 100 shown in FIG. 2.
[0064] Fig. 5 is a flowchart showing the operation of CPU 101 as role determination unit 120. Fig. 6(a) to Fig. 6(d) are flowcharts relating to the operations of the shooting control device 100, overhead camera 300, main camera 500, and sub-camera 400, respectively.
[0065] In the following description, it is assumed that the three-dimensional coordinate values of the viewpoint position and the shooting direction (optical axis direction) of the overhead camera 300 are known to the shooting control device 100. It is also assumed that known position information, such as the three-dimensional coordinate values of the viewpoint positions of the sub-camera 400 and main camera 500 and the coordinate values of markers placed in the shooting range, is stored in advance in ROM 103 as default position information REF_POSI. It is also assumed that the coordinate system of the position is predetermined depending on the type of position.
[0066] (Operation of the role determination unit 120) First, the operation of the CPU 101 as the role determination unit 120 in Fig. 3 will be described with reference to the flowchart shown in Fig. 5. The operation described below is realized by the CPU 101 executing a shooting control application.
[0067] 5, there is no particular limitation on the timing for starting the operations shown in the flowchart of Fig. 5, but they are executed at least before starting control of the shooting operation of the sub-camera 400. They are also executed when a notification is received from the role control device 600 via the network I / F 105 that the role setting for the sub-camera 400 has been changed.
[0068] In S101, the CPU 101 as the role determination unit 120 acquires the role ROLE (role setting information) corresponding to the sub-camera 400 from the role control device 600. The CPU 101 can acquire the above-mentioned role setting information from the role control device 600 by, for example, transmitting a role acquisition command to the role control device 600 via the network I / F 105. The CPU 101 stores the acquired role setting information in the RAM 102.
[0069] In S103, CPU 101 refers to the role setting information stored in RAM 102 based on the identification information of sub camera 400, and acquires operation control content for sub camera 400. Then, CPU 101 as role determination section 120 transmits the acquired operation control content (CAMERA_ROLE) to tracking subject determination section 123. In practice, CPU 101 stores the operation control content in a specific area of RAM 102, and refers to it when functioning as tracking subject determination section 123.
[0070] In S104, the CPU 101 as the role determination unit 120 transmits the acquired operation control content (CAMERA_ROLE) to the zoom value calculation unit 125. In practice, the CPU 101 stores the operation control content in a specific area of the RAM 102 and refers to it when functioning as the zoom value calculation unit 125.
[0071] (Operation of the imaging control device 100) Next, the operation of the shooting control device 100 to control shooting by the sub-camera 400 will be described with reference to Figures 3 and 6(a). The operation described below corresponds to the operation of the CPU 101 as the recognition unit 121, target subject determination unit 122, tracking subject determination unit 123, pan / tilt value calculation unit 124, and zoom value calculation unit 125 in Figure 3. Note that the operation described below is realized by the CPU 101 executing a shooting control application.
[0072] In S201, CPU 101 transmits a shooting instruction command to overhead camera 300 using a predetermined protocol via network I / F 105. In response to this command, overhead camera 300 starts supplying a video signal (video data) IMG to video input unit 107. CPU 101 starts storing the video signal received by video input unit 107 in RAM 102, and then executes S202.
[0073] In S202, CPU 101 acquires information ANGLE indicating the shooting direction from main camera 500. Specifically, CPU 101 sends a shooting direction acquisition command to main camera 500 via network I / F 105 using a predetermined protocol. In response to the shooting direction acquisition command, CPU 501 of main camera 500 transmits information ANGLE indicating the current shooting direction of main camera 500 to shooting control device 100. Information ANGLE may be, for example, the pan and tilt angles of drive unit 509. CPU 101 stores the acquired information ANGLE in RAM 102.
[0074] In S203, the recognition unit 121 executes the following process. (1) Apply subject area detection processing to the input frame image and store the detection results. (2) For each detected subject area, coordinate conversion is performed on the position information (image coordinates). (3) Apply identification processing to each detected subject area to identify the identification information (add information for identification processing in the case of a new subject). (4) For each detected subject area, the identification information ID[n] and the position information POSITION[n] are associated and stored.
[0075] The recognition unit 121 is mainly realized by the CPU 101 and the inference unit 104. The CPU 101 reads one frame of the video received from the overhead camera 300 from the RAM 102 and inputs it to the inference unit 104.
[0076] The operation of the recognition unit 121 will be explained below step by step. (1) First, the inference unit 104 inputs a frame image into a machine learning model to detect a subject region. The inference unit 104 stores in RAM 102 the position and size of each detected subject region, which are output by the machine learning model as detection results, and the detection reliability. The position and size of the subject region may be any information that can identify the position and size of a rectangular region inscribed with the subject region. Here, the center coordinate of the bottom side of the rectangular region, as well as the width and height, are used as the position and size of the subject region.
[0077] Furthermore, the inference unit 104 stores the detection result for the first frame image in RAM 102 in association with the subject identification information ID[n]. Here, n is the subject number and is an integer ranging from 1 to the total number of detected subject areas. Furthermore, the inference unit 104 stores the subject areas detected from the first frame image in RAM 102 in association with the subject identification information ID[n] as templates for identifying individual subjects. If template matching is not used to identify subjects, it is not necessary to store templates.
[0078] Fig. 8(a) shows an example of the result of subject detection processing by inference unit 104 for the image captured by overhead camera 300 shown in Fig. 7(a). Here, the areas of human subjects A to C present within shooting range 20 are detected, and the coordinates (foot coordinates) of the center of the bottom side of the rectangular area inscribed with the subject areas are output as positions.
[0079] For coordinate transformation, which will be described later, if a marker is placed at a known position within the shooting range 20 as shown in FIG. 7(b), the CPU 101 detects the image of the marker included in the frame image (FIG. 7(a)) and stores the position in the RAM 102. The detection of the marker image may also be performed by the inference unit 104. The detection of the marker image can be performed by any known method, such as pattern matching using a marker template. The marker image may also be detected using a pre-stored machine learning model for marker detection.
[0080] (2) Next, we will explain the coordinate transformation performed by the inference unit 104. Fig. 7(a) schematically shows the image from the overhead camera 300, and Fig. 7(b) schematically shows the state of the shooting range 20 as viewed from directly above its center. The inference unit 104 transforms the position of the subject area in the coordinate system of the overhead camera into values in a coordinate system (planar coordinate system) when the shooting range 20 is viewed from directly above its center.
[0081] The coordinate conversion into values in the planar coordinate system is convenient for calculating the pan value (movement angle in a horizontal plane) for photographing a specific subject with the sub-camera 400. Note that this is based on the premise that the sub-camera 400 is installed so that the drive unit 409 performs panning within a horizontal plane parallel to the floor of the photographing range 20.
[0082] Coordinate conversion can be performed in various ways, but here, markers are placed at multiple known positions on the floor of the shooting range 20, and coordinate conversion is performed from the overhead camera coordinate system to a planar coordinate system based on the marker positions in the image captured by the overhead camera 300. Note that coordinate conversion may also be performed without using markers, for example, by using the viewpoint position and shooting direction of the overhead camera 300.
[0083] The coordinate transformation can be performed using a homography transformation matrix H according to Equation 1 below.
number
[0084] The homography transformation matrix can be calculated by substituting the coordinates of the four markers detected from the video and the (known) coordinates of the four markers placed in the shooting range 20 into Equation 1 and solving the simultaneous equations. If the positional relationship between the shooting range 20 and the overhead camera 300 is fixed, the homography transformation matrix H can be calculated in advance during test shooting and stored in, for example, ROM 103.
[0085] CPU 101 sequentially reads out the positions of the subject areas from RAM 102 and converts the coordinates into values in a planar coordinate system. Fig. 8(b) schematically shows the state in which the foot coordinates (x, y) of each subject area detected in the image from overhead camera 300 shown in Fig. 8(a) are converted into coordinate values (X, Y) in a planar coordinate system using Equation 1 and the homography transformation matrix H stored in ROM 103. CPU 101 stores the converted foot coordinates in RAM 102 as POSITION[n].
[0086] (3) Next, the operation of the inference unit 104 to identify the identification information ID[n] of the subject will be described. Here, the subject is identified using template matching. The subject is identified for the processing results of the subject detection from the second onwards. For the first processing result, it is sufficient to newly assign identification information ID[n] to the subject region.
[0087] The inference unit 104 identifies the identification information ID[n] of the detected object region by template matching using the templates stored in RAM 102. This identifies the object within the shooting range. For example, the inference unit 104 calculates an evaluation value representing the correlation of each template for each detected object region. Then, the inference unit 104 identifies the identification information ID[n] corresponding to the template with a correlation above a certain level and with the highest correlation as the identification information ID[n] of the object region. The evaluation value can be a known value, such as the sum of absolute differences in pixel values.
[0088] For a subject region that does not have a certain level of correlation with all templates, the inference unit 104 assigns new identification information ID[n] and adds the image of the subject region to the template.
[0089] In addition, the inference unit 104 may update an existing template using a subject area detected in the most recent frame image, or delete a template in which a subject area having a certain level of correlation or higher has not existed for a certain period of time. Furthermore, the inference unit 104 may store in the ROM 103 templates corresponding to frequently appearing identification information ID[n].
[0090] Note that a subject may be identified using a method other than template matching. For example, the subject may be identified as having the same identification information ID[n] as the subject area that is closest in at least one of the most recent detection position and size. Alternatively, the position in the current frame image may be predicted using a Kalman filter or the like based on the positional transitions in multiple past detection results associated with the same identification information, and the same identification information ID may be identified as the subject area that is closest to the predicted position. These methods may also be combined. By not using template matching, the accuracy of identifying different subjects that look similar can be improved.
[0091] (4) The inference unit 104 associates the identified identification information ID[n] with the position (plane coordinate system) POSITION[n] of the corresponding subject area and stores them in the RAM 102.
[0092] Of the processes (1) to (4), the processes other than the subject detection may be executed by the CPU 101 instead of the inference unit 104.
[0093] Here, the image from the overhead camera 300 was used to determine the identification information ID[n] and position POSITION[n] of the subject within the shooting range 20. However, the image from the sub-camera 400 may also be used. When there are multiple sub-cameras 400, the CPU 101 executes the operation shown in the flowchart of FIG. 6(a) for each sub-camera 400. The position of the subject area is output as a value in the coordinate system for each sub-camera 400. Thus, although the overhead camera 300 is not essential, it is believed that using the overhead camera 300 will result in better subject detection accuracy.
[0094] Returning to the explanation of Fig. 6(a), in S204, CPU 101 serving as subject of interest determination unit 122 in Fig. 3 determines a subject of interest as a tracking subject of main camera 500. CPU 101 can determine a subject of interest of main camera 500 from among the subjects detected in S203, based on the shooting direction of main camera 500 acquired in S202. CPU 101 stores identification information ID[n] corresponding to the subject area determined as the subject of interest of main camera 500 in RAM 102 as identification information MAIN_SUBJECT of the subject of interest.
[0095] For example, CPU 101 can determine that the subject closest to the shooting direction of main camera 500 in the planar coordinate system is the subject of interest for main camera 500. Note that if there are multiple subjects whose distance from the shooting direction of main camera 500 is equal to or less than a threshold, the user may be allowed to select the subject of interest from among them.
[0096] When allowing the user to select a subject of interest, CPU 101 displays on display unit 108 or an external display device the frame image to which subject detection processing was applied in S202, along with an indicator indicating the shooting direction and an indicator indicating a subject area that is a candidate for the subject of interest. The indicator for the subject area may be, for example, a rectangular frame indicating the outer edge of the subject area as shown in FIG. 8(a), but may also be another indicator. CPU 101 may also display on display unit 108 a message prompting the user to select a subject of interest within the image.
[0097] The user can select a subject area corresponding to a desired subject of interest by operating the user input unit 106 (input device). There are no particular restrictions on the selection method, but the user may operate a mouse or keyboard to specify the desired subject area.
[0098] When the CPU 101 detects a user operation to designate a subject area, the CPU 101 stores the identification information ID[n] corresponding to the designated subject area in the RAM 102 as the identification information MAIN_SUBJECT of the subject of interest.
[0099] Next, in S205, CPU 101 as tracking subject determination unit 123 in Fig. 3 acquires control content CAMERA_ROLE according to the role set for sub-camera 400. Specifically, CPU 101 reads out control content CAMERA_ROLE acquired in the role determination process described with reference to Fig. 5 and stored in RAM 102. Note that if there are multiple sub-cameras 400, CPU 101 executes the processes of S205 to S207 for each sub-camera.
[0100] In S206, CPU 101 as tracking subject determination unit 123 determines a subject to be tracked and photographed by sub camera 400 in accordance with the control content CAMERA_ROLE. CPU 101 determines a tracking subject for sub camera 400 in accordance with the tracking subject rules (FIG. 4) included in the control content CAMERA_ROLE.
[0101] When the tracking subject of the sub camera 400 is to be the same as the target subject of the main camera 500, the CPU 101 sets the identification information MAIN_SUBJECT of the target subject determined in S203 as the identification information SUBJECT_ID of the tracking subject of the sub camera 400.
[0102] When the tracking subject of sub camera 400 is a subject located on the left side of the subject of interest of main camera 500, CPU 101 detects a subject area located on the left edge of the subject area other than the subject of interest from the subject areas detected in S203. Then, CPU 101 sets identification information ID[n] corresponding to the detected subject area as identification information SUBJECT_ID of the tracking subject of sub camera 400.
[0103] CPU 101 writes the identification information SUBJECT_ID of the determined tracking subject to RAM 102. If the tracking subject may differ depending on the sub-camera, CPU 101 stores the identification information SUBJECT_ID of the tracking subject in association with the identification information of the sub-camera. Note that if the tracking subject changes, CPU 101 does not delete the information of the previous tracking subject but keeps it in RAM 102.
[0104] Here, the operation when the role set for the sub camera 400 is "main follow" will be described with reference to Fig. 9. The photography control device 100 controls the sub camera 400 set to the role "main follow" so that it tracks the subject of interest of the main camera 500.
[0105] Therefore, when the subject of interest of main camera 500 is determined to be subject B as shown in Fig. 9(a), CPU 101 determines subject B as the subject to be tracked by sub camera 400. Thereafter, when the subject of interest of main camera 500 is determined to have changed to subject A as shown in Fig. 9(b), CPU 101 changes the subject to be tracked by sub camera 400 to subject A. Similarly, when the subject of interest of main camera 500 is determined to have changed to subject C as shown in Fig. 9(c), CPU 101 changes the subject to be tracked by sub camera 400 to subject C.
[0106] The operation when the role set for the sub camera 400 is "assist follow" will be described with reference to Fig. 10. For the sub camera 400 set to the role "assist follow", the photography control device 100 controls the sub camera 400 so that it tracks a subject located on the left side of the main camera 500, which is different from the subject of interest of the main camera 500.
[0107] 10(a), when the target subject of the main camera 500 is determined to be subject B, CPU 101 determines subject A, which is on the left of subjects A and C, as the target subject of the sub camera 400. Thereafter, when the target subject of the main camera 500 is determined to have changed to subject A, as shown in FIG. 10(b), CPU 101 changes the target subject of the sub camera 400 to subject B, which is on the left of subjects B and C. Also, when the target subject of the main camera 500 is determined to have changed to subject C, as shown in FIG. 10(c), CPU 101 changes the target subject of the sub camera 400 to subject A, which is on the left of subjects A and B.
[0108] By dynamically changing the role set for the sub-camera 400 using the role control device 600, it is possible to change the subject being tracked by the sub-camera 400, thereby enabling flexible automatic photography.
[0109] 6(a), in S207, CPU 101 as pan / tilt value calculation unit 124 calculates the amount of change in pan angle and tilt angle required for sub camera 400 to track and photograph the tracking subject determined in S206. CPU 101 as zoom value calculation unit 125 also calculates the zoom value of sub camera 400 according to the change in angle of view of main camera 500. The following describes the case where there is one sub camera 400, but if there are multiple sub cameras 400, the amount of change in pan angle and tilt angle and the zoom value are calculated for each sub camera.
[0110] First, the operation of the CPU 101 as the pan-tilt value calculation unit 124 will be described. Here, it is assumed that the following information is stored in advance in the ROM 103 as the default position information REF_POSI for each sub-camera 400. · 3D coordinates of the installation position (values in a planar coordinate system) · Shooting direction corresponding to the initial values of the pan angle and tilt angle of the drive unit · Controllable range of the pan and tilt angles
[0111] The CPU 101 reads out the position information POSITION_OH corresponding to the identification information SUBJECT_ID of the tracking subject of the sub-camera 400 from the RAM 102. Then, the CPU 101 first determines the pan angle from the position information POSITION_OH and the installation position of the sub-camera 400.
[0112] FIG. 11 is a diagram showing an example of the positional relationship between the sub-camera 400 and the tracking subject in a planar coordinate system. Here, it is assumed that the pan angle θ for directing the optical axis direction of the sub-camera 400 toward the subject position is determined. The CPU 101 calculates the pan angle θ using the following equation (2).
Equation
[0113] In Equation (2), px and py are the horizontal and vertical coordinates of the position information POSITION_OH corresponding to the identification information SUBJECT_ID of the tracking subject. Also, subx and suby are the horizontal and vertical coordinates of the installation position of the sub-camera. Here, it is assumed that the current pan angle is the initial value of 0° and the optical axis direction is the vertical direction (Y-axis direction). If the current optical axis direction is not the vertical direction, the angle difference between the current optical axis direction and the vertical direction may be reflected in the angle obtained by Equation (2). Also, the direction of the pan is counterclockwise if subx > px, and clockwise if subx < px.
[0114] Next, the method for determining the tilt angle will be described using FIG. 12. FIG. 12 shows a state in which the sub-camera and the tracked subject are viewed from the side. Assume that the current optical axis of the sub-camera 400 is in the horizontal direction and has a height of h1, and the height of the face of the tracked subject facing the optical axis is h2. Let ρ be the angle difference (tilt angle) in the height direction between the current optical axis direction and the target optical axis direction. The CPU 101 calculates the tilt angle ρ using the following equations 3 and 4.
Equation
[0115] The coordinate values used in Equation 4 are the same as those used in Equation 2. Assume that h1 and h2 are input in advance to the shooting control application and stored in the RAM 102. In this case, the identification number associated with h2 for each subject is made equal to the identification number assigned in the subject detection process. Alternatively, h2 may be a value measured in real time using a sensor not shown.
[0116] Here, assume that the current tilt angle is the initial value of 0°, and the optical axis direction is the horizontal direction (constant height). If the current optical axis direction is not the horizontal direction, the angle difference between the current optical axis direction and the horizontal direction may be reflected in the angle obtained by Equation 4. Also, the tilt direction is downward if h1 > h2, and upward if h1 < h2.
[0117] The CPU 101 communicates with the sub-camera 400 periodically through the communication network 700, acquires the current optical axis direction (the pan angle and tilt angle of the drive unit), and stores it in the RAM 102. The communication cycle can be, for example, less than or equal to the reciprocal of the frame rate. Alternatively, the CPU 101 may hold the total value of the pan angle and tilt angle controlled from the initial state for the sub-camera 400 in the RAM 102 and use it as the current optical axis direction.
[0118] In this way, the CPU 101 calculates the amount of change in the pan angle and tilt angle of the sub camera 400, and stores the amount of change in the RAM 102. If there are multiple sub cameras 400, the CPU 101 calculates the amount of change in the pan angle and tilt angle for each sub camera.
[0119] The change amounts of the pan angle and tilt angle may be the angular velocity at which the sub camera 400 rotates in the direction of the tracking subject. For example, the CPU 101 acquires the current pan angle and tilt angle from the sub camera 400 via the communication network 700. The CPU 101 then calculates a pan angular velocity proportional to the difference between the pan angle θ read from the RAM 102 and the current pan angle. The CPU 101 also calculates a tilt angular velocity proportional to the difference between the tilt angle ρ read from the RAM 102 and the current tilt angle. The CPU 101 stores the angular velocities calculated in this manner in the RAM 102.
[0120] Note that the amount of change in the pan angle and tilt angle may be calculated using the image from sub camera 400 instead of the image from overhead camera 300. In this case, CPU 101 may calculate the amount of change in the pan angle from the horizontal difference between the current optical axis direction and the direction of the subject to be tracked in the coordinate system of sub camera 400, and may calculate the amount of change in the tilt angle from the vertical difference. Also, the imaging system may change the shooting direction to track and shoot the subject to be tracked in only one of the pan direction and tilt direction, and in such an imaging system, the amount of change in only one of the pan angle and tilt angle may be calculated.
[0121] Next, we will explain the operation of CPU 101 as zoom value calculation unit 125. CPU 101 as zoom value calculation unit 125 periodically acquires information MAIN_ZOOM that indicates the angle of view of main camera 500 and stores it in RAM 102. When information MAIN_ZOOM changes, CPU 101 calculates zoom value Z_VALUE for sub camera 400 in accordance with control content CAMERA_ROLE that corresponds to the role set for sub camera 400.
[0122] CPU 101 can determine the zoom operation and its phase of main camera 500, for example, by detecting a change in the angle of view of the image of main camera 500. For example, the change in the angle of view may be detected from a change over time in the size or spacing of the subject area.
[0123] 13 shows an example of mapping of zoom values between the main camera and the sub camera. Here, it is assumed that the main camera 500 and the sub camera 400 optically change the angle of view (the photographing optical system has a zoom function). However, a similar function may be realized by digital zoom using the image processing units 406 and 506.
[0124] The zoom value is a parameter having a value corresponding to the angle of view. In this embodiment, the smaller (narrower) the angle of view, the smaller the zoom value, and the zoom value on the telephoto side is smaller than the zoom value on the wide-angle side. The sub-camera 400 and the main camera 500 can control the imaging optical system to the angle of view corresponding to the zoom value by transmitting a command specifying the zoom value. In other words, the zoom value is information related to the angle of view and represents the zoom state. The zoom value may be, for example, the focal length (mm) of the imaging optical system corresponding to a 35mm full-size image sensor, in which case the zoom value on the telephoto side is larger than the zoom value on the wide-angle side.
[0125] 13, the range of the zoom value MAIN_ZOOM of the main camera 500 is main_min to main_max. The zoom range of the sub camera 400 is sub_min to sub_max. main_min and sub_min are the zoom values corresponding to the telephoto ends of the main camera 500 and the sub camera 400, respectively, and main_max and sub_max are the zoom values corresponding to the wide-angle ends of the main camera 500 and the sub camera 400, respectively. FIG. 13 shows an example in which the range of the zoom value of the main camera 500 is wider than the range of the zoom value of the sub camera 400 at both the telephoto end and the wide-angle end.
[0126] When controlling the zoom value SUB_ZOOM of the sub camera 400 to be in phase with the zoom value MAIN_ZOOM of the main camera 500, the CPU 101 calculates SUB_ZOOM corresponding to the current MAIN_ZOOM using the following equation 5.
number
[0127] On the other hand, when controlling the zoom value SUB_ZOOM of the sub camera 400 to be in the opposite phase to the zoom value MAIN_ZOOM of the main camera 500, the SUB_ZOOM corresponding to the current MAIN_ZOOM is calculated using the following equation 6. Specifically, the CPU 101 calculates the SUB_ZOOM corresponding to the current MAIN_ZOOM by substituting the SUB_ZOOM calculated using equation 5 into the right side of the following equation 6. SUB_ZOOM=sub_max-(SUB_ZOOM-sub_min) (Formula 6)
[0128] When the main camera 500 performs digital zoom and controls the angle of view by cropping, the CPU 101 can determine the zoom value SUB_ZOOM of the sub camera 400 according to the size of the range to be cropped by the main camera 500. Specifically, the CPU 101 sets the zoom value SUB_ZOOM to a smaller value (higher magnification) as the size of the range to be cropped by the main camera 500 becomes smaller, and sets the zoom value SUB_ZOOM to a larger value (lower magnification) as the size becomes larger.
[0129] Furthermore, the zoom control content associated with the role of the sub-camera 400 is not limited to control in phase or opposite phase to that of the main camera 500. For example, a zoom operation independent of changes in the angle of view of the main camera 500 may be associated with the role. For example, an auto-zoom operation that maintains a constant size of a tracked subject may be associated with the role. The angle of view of the sub-camera 400 may also be fixed to a specific angle of view. By adding roles associated with these zoom controls to the control content for each role shown in FIG. 4 or by changing the zoom control content of the role shown in FIG. 4, various zoom controls for the sub-camera 400 become possible.
[0130] Returning to FIG. 6(a), in S207, CPU 101 reads from RAM 102 the change amounts of the pan and tilt angles and the zoom value calculated in S206. Then, CPU 101 generates a control command PT_VALUE that instructs sub camera 400 to change the pan angle and tilt angle corresponding to these change amounts. CPU 101 also generates a control command Z_VALUE that instructs sub camera 400 to change the angle of view corresponding to the zoom value. The format of the control command is assumed to be predetermined. CPU 101 stores the generated control commands PT_VALUE and Z_VALUE in RAM 102. Note that S207 may be skipped if there is no need to generate a control command, such as when the tracking subject is stationary or when the angle of view of main camera 500 does not change.
[0131] Then, the CPU 101 reads the control commands PT_VALUE and Z_VALUE from the RAM 102 and transmits them to the communication network 700 via the network I / F 105. The sub-camera 400 receives the control commands PT_VALUE and Z_VALUE via the network I / F 405.
[0132] The CPU 101 executes the process from S201 on the next frame image of the video from the overhead camera 300. Note that the process shown in Fig. 6(a) does not necessarily have to be executed for every frame.
[0133] (Operation of overhead camera 300) Next, the operation of the overhead camera 300 will be described with reference to Fig. 6(b). The operation described below is realized by the CPU 301 executing a program.
[0134] When the overhead camera 300 is powered on, each functional block is initialized by the CPU 301, and the camera enters a shooting standby state. In the shooting standby state, the CPU 301 may start a video shooting process for live view display, and output display image data generated by the image processing unit 306 to the shooting control device 100 via the network I / F 305.
[0135] In the shooting standby state, the CPU 301 waits for reception of a control command via the network I / F 305. When the CPU 301 receives a control command, it executes an operation according to the control command. Here, an operation when a shooting command is received as a control command from the shooting control device 100 will be described.
[0136] In step S301, the CPU 301 receives an imaging command from the imaging control device 100 via the network I / F 305.
[0137] The shooting command may specify shooting parameters such as frame rate, resolution, etc. The shooting command may also include settings related to the processing to be applied by the image processing unit 306.
[0138] In S302, in response to receiving the shooting command, the CPU 301 starts video shooting processing to supply the video to the shooting control device 100. In this video shooting processing, a video with higher image quality is shot than in video shooting processing for live view display. For example, at least one of the video resolution and shooting frame rate is higher than in video for live view display. The image processing unit 306 applies processing to the image based on the video settings to be supplied to the shooting control device 100. The image processing unit 306 sequentially stores the generated video data in the RAM 302.
[0139] In S303, the CPU 101 reads the video data from the RAM 302 and transmits it to the shooting control device 100 via the network I / F 305. After that, the process from shooting to supplying the video data continues until a control command to stop shooting is received.
[0140] (Main camera 500 operation) Next, the operation of the main 500 will be described with reference to Fig. 6(c). The operation described below is realized by the CPU 501 executing a program.
[0141] When the main camera 500 is powered on, the CPU 501 initializes each functional block and then starts video capture processing to supply the video to the imaging control device 100. The image processing unit 506 processes the analog image signal obtained from the image sensor 507 based on the video settings to be supplied to the imaging control device 100. The image processing unit 506 sequentially stores the generated video data in the RAM 502. The CPU 501 reads the video data from the RAM 502 and supplies it to the imaging control device 100 via the network I / F 505.
[0142] The CPU 501 supplies video data to the shooting control device 100 while waiting to receive a control command via the network I / F 305. When the CPU 501 receives a control command, it executes an operation according to the control command. Here, the operation when a shooting direction acquisition command is received will be described. When a pan / tilt control command PT_VALUE or a zoom control command Z_VALUE is received, the CPU 501 drives the drive unit 509 according to the command.
[0143] In S501, the CPU 501 receives an imaging direction acquisition command via the network I / F 505. The CPU 501 stores the received imaging direction acquisition command in the RAM 502.
[0144] In step S502 , in response to receiving the imaging direction acquisition command, the CPU 501 acquires the current pan angle and tilt angle from the driving unit 509 via the driving I / F 508 and stores them in the RAM 502 .
[0145] In S503, the CPU 501 reads the current pan angle and tilt angle from the RAM 502 and transmits them to the imaging control device 100 via the network I / F 305 as imaging direction information ANGLE.
[0146] (Operation of sub camera 400) Next, the operation of the sub-camera 400 will be described with reference to Fig. 6(d). The operation described below is realized by the CPU 401 executing a program.
[0147] When the sub-camera 400 is powered on, the CPU 401 initializes each functional block and then starts video capture processing to supply the video to the imaging control device 100. The image processing unit 406 processes the analog image signal obtained from the image sensor 407 based on the video settings to be supplied to the imaging control device 100. The image processing unit 406 sequentially stores the generated video data in the RAM 402. The CPU 401 reads the video data from the RAM 402 and supplies it to the imaging control device 100 via the network I / F 405.
[0148] The CPU 401 supplies video data to the shooting control device 100 while waiting for a control command to be received through the network I / F 305. Upon receiving a control command, the CPU 401 executes an operation according to the control command. Here, the operation when a pan / tilt control command PT_VALUE and a zoom control command Z_VALUE are received from the shooting control device 100 will be described.
[0149] In S401, the CPU 401 receives at least one of a pan / tilt control command PT_VALUE and a zoom control command Z_VALUE from the imaging control device 100 via the network I / F 405. The CPU 401 stores the received control command in the RAM 402.
[0150] In S402, the CPU 401 reads out the operation direction and the corresponding operation amount from the control command stored in the RAM 402, and stores them in the RAM 402. Here, in the case of a pan / tilt control command PT_VALUE, the operation direction is the pan and / or tilt direction, and the operation amount is the target angle. Also, in the case of a zoom control command Z_VALUE, the operation amount is the zoom value, and since the operation direction can be identified from the zoom value, there is no need to read out and store the operation direction.
[0151] In S403, the CPU 401 generates drive parameters for the drive unit 409 based on the operation direction and operation amount read out in S403. The CPU 401 may obtain drive parameters according to the combination of the operation direction and operation amount, for example, by using a table stored in advance in the ROM 403. Note that when the operation amount is given as a target value (target angle or zoom value), the CPU 410 obtains the drive parameters from the difference from the current value.
[0152] In S404, the CPU 401 controls the driver 409 through the driver I / F 408 based on the drive parameters acquired in S404. As a result, the driver 409 changes the shooting direction of the sub-camera 400 to the operation direction and angle specified by the pan / tilt control command PT_VALUE. The driver 409 also changes the angle of view of the shooting optical system to the zoom value specified by the zoom control command Z_VALUE.
[0153] Next, the operation of the imaging control device 100 to control the imaging direction (pan and tilt) and angle of view (zoom value) of the sub-camera in accordance with the role set for the sub-camera 400 will be described in more detail using the flowchart shown in Fig. 14. The operation shown in the flowchart in Fig. 14 is executed as part of the operation of S205 to S207 in Fig. 6(a).
[0154] S601 corresponds to S205, and the CPU 101 reads out the control content CAMERA_ROLE stored in the RAM 102 in S103 of FIG.
[0155] S602 to S607 are performed in S206, for example. In S602, CPU 101 determines whether the definition of the tracking subject of sub camera 400 included in the control content CAMERA_ROLE indicates the tracking subject (target subject) of main camera 500. For example, if the definition of the tracking subject of sub camera 400 has a value indicating "same as main", CPU 101 determines that the definition of the tracking subject of sub camera 400 indicates the tracking subject of main camera 500, and executes S603. On the other hand, if the definition of the tracking subject of sub camera 400 has a value indicating "different from main (left side)", CPU 101 determines that the definition of the tracking subject of sub camera 400 does not indicate the tracking subject of main camera 500, and executes S604.
[0156] In S603, CPU 101 determines to control the shooting direction of sub camera 400 so that main camera 500 tracks the tracking subject (target subject). In S604, CPU 101 determines to control the shooting direction of sub-camera 400 so as to track a subject other than the target subject of main camera 500, which is located on the left side.
[0157] In S605, CPU 101 determines whether the zoom control specification of sub camera 400 included in the control content CAMERA_ROLE indicates control in the same phase as main camera 500. For example, if the zoom control specification of sub camera 400 has a value indicating "same phase as main camera," CPU 101 determines that the zoom control specification of sub camera 400 indicates control in the same phase as main camera 500, and executes S606. On the other hand, if the zoom control specification of sub camera 400 has a value indicating "opposite phase to main camera," CPU 101 determines that the zoom control specification of sub camera 400 does not indicate control in the same phase as main camera 500, and executes S607.
[0158] In S606, the CPU 101 determines to control the zoom value (angle of view) of the sub camera 400 in the same phase as the change in the zoom value of the main camera 500. In S607, the CPU 101 determines to control the zoom value (angle of view) of the sub camera 400 in the opposite phase to the change in the zoom value of the main camera 500.
[0159] FIG. 15 illustrates an example of sub-camera control when the role assigned to the sub-camera 400 is "main follow." FIG. 15 shows a schematic diagram of how the shooting control device 100 controls the shooting direction and angle of view of the sub-camera 400 when the subject of interest and angle of view of the main camera 500 change over time during shooting. Time passes from left to right in the diagram. Note that FIG. 15 shows three zoom states: "telephoto end," "intermediate," and "wide-angle end." This is because, as shown in FIG. 13, the zoom value ranges of the sub-camera and the main camera may differ. "telephoto end" corresponds to zooming in to the telephoto end, "wide-angle end" corresponds to zooming down to the wide-angle end, and "intermediate" corresponds to a zoom state intermediate between the telephoto end and the wide-angle end. However, the actual zoom values of the sub-camera and the main camera may differ. For example, when the zoom state is "telephoto end," the main camera's zoom value is "main_min," and the sub camera's zoom value is "sub_min."
[0160] Initially, the target subject (tracking subject) of main camera 500 is subject B, and the zoom state is "medium." Therefore, CPU 101 determines that the tracking subject of sub camera 400 is subject B, and controls the shooting direction so that sub camera 400 tracks subject B. CPU 101 also controls the zoom state of sub camera 400 to "medium."
[0161] Thereafter, the subject of interest of main camera 500 is changed from subject B to subject A, and the zoom state is changed to the "telephoto end." In response to this, CPU 101 changes the subject being tracked by sub camera 400 from subject B to subject A, and controls the shooting direction so that sub camera 400 tracks subject A. CPU 101 also controls the zoom state of sub camera 400 to the "telephoto end."
[0162] Thereafter, the subject of interest of main camera 500 is changed from subject A to subject C, and the zoom state is changed to "wide-angle end." In response to this, CPU 101 changes the subject being tracked by sub-camera 400 from subject A to subject C, and controls the shooting direction so that sub-camera 400 tracks subject C. CPU 101 also controls the zoom state of sub-camera 400 to "wide-angle end."
[0163] In this way, when the role of sub camera 400 is "main follow," CPU 101 automatically changes the tracking subject and zoom value of sub camera 400 so as to follow changes in the subject of interest and angle of view (zoom value) of main camera 500. Note that in the example shown in FIG. 15, control is performed so that the degree of change in the zoom state of sub camera 400 is equivalent to the degree of change in the zoom state of main camera 500, but the actual zoom values may differ as long as the direction of change in the zoom value is in phase. For example, when the zoom state of main camera 500 is at the telephoto end, the zoom state of sub camera 400 does not have to be at the telephoto end. Whether the zoom value of sub camera 400 is matched to the zoom value of main camera 500 may be settable using role setting information.
[0164] Next, an example of control of the sub camera when the role set for the sub camera 400 is "assist counter" will be described with reference to FIG. 16, which is similar to FIG.
[0165] Initially, the subject of interest (subject to be tracked) of main camera 500 is subject B, and the zoom state is "telephoto end." Therefore, CPU 101 determines that the subject to be tracked by sub camera 400 is subject A on the left, of subjects A and C other than subject B, and controls the shooting direction so that sub camera 400 tracks subject A. CPU 101 also controls the zoom state of sub camera 400 to the "wide-angle end," which is in the opposite phase to that of main camera 500.
[0166] Thereafter, the target subject of main camera 500 is changed from subject B to subject A, and the zoom state is changed to "middle." In response to this, CPU 101 changes the tracking subject of sub camera 400 to subject B on the left of subjects B and C other than subject A, and controls the shooting direction so that sub camera 400 tracks subject B. Furthermore, because the zoom state of main camera 500 has changed from "telephoto end" to "middle," CPU 101 controls the zoom state of sub camera 400 from "wide-angle end" to "middle" (in the opposite phase).
[0167] Thereafter, the target subject of main camera 500 is changed from subject A to subject C, and the zoom state is changed to "wide-angle end." In response to this, CPU 101 changes the tracking subject of sub camera 400 to subject A on the left of subjects A and B other than subject C, and controls the shooting direction so that sub camera 400 tracks subject A. Furthermore, because the zoom state of main camera 500 has changed from "middle" to "wide-angle end," CPU 101 controls the zoom state of sub camera 400 from "middle" to "telephoto end" (in the opposite phase).
[0168] In this way, when the role of sub camera 400 is "assist counter," CPU 101 automatically changes the tracking subject of sub camera 400 to a subject other than the target subject of main camera 500 in accordance with a change in the target subject of main camera 500. CPU 101 also automatically changes the zoom value of sub camera 400 in the opposite direction to the change in the angle of view (zoom value) of main camera 500.
[0169] 16, the zoom state of the sub camera 400 is controlled at a rate equivalent to that of the main camera 500, but the amount of change in the zoom value may be different as long as the change direction of the zoom value is in the opposite phase. For example, when the zoom state of the sub camera 400 is at the telephoto end, the zoom state of the main camera 500 does not have to be at the wide-angle end. The rate of change in the zoom state of the sub camera 400 relative to the rate of change in the zoom state of the main camera 500 may be set using role setting information.
[0170] (Variation) So far, we have described an example in which the tracking subject and zoom value of the sub-camera 400 are automatically controlled based on the target subject and zoom value of the main camera 500. In the above example, the sub-camera is automatically controlled to track a single subject, but it can also be automatically controlled to track multiple subjects within the shooting range.
[0171] When the role set for the sub-camera 400 is "assist follow," examples of control when the sub-camera 400 is made to track a single subject and when it is made to track multiple subjects will be described using FIG. 17. For ease of understanding and explanation, a case will be described here in which the angle of view of the main camera 500 does not change and only control of the subject being tracked is performed. Also, it is assumed that the angle of view of the sub-camera 400 is capable of always capturing images of all subjects within the capturing range 20 regardless of the capturing direction. Note that the capturing direction of the sub-camera 400 shown in the top row of FIG. 17 indicates the capturing direction when a single subject is being tracked.
[0172] As in FIG. 16, initially, the subject of interest (tracking subject) of main camera 500 is subject B. Therefore, CPU 101 determines that the tracking subject of sub camera 400 is subject A on the left side of subjects A and C other than subject B, and controls the shooting direction so that sub camera 400 tracks subject A. If the shooting direction is controlled so that the tracking subject is located at the center of the screen, as shown in the second row from the bottom, the image captured by sub camera 400 will be unbalanced, with subjects A to C shifted to the right. Therefore, if the image captured by sub camera 400 contains multiple subjects, including the tracking subject, the shooting direction can be controlled to track these multiple subjects. For example, CPU 101 can control the shooting direction so that the shooting direction tracks the center of gravity of the positions of multiple subjects A to C included in the image captured by sub camera 400. As a result, the sub camera 400 captures an image as shown in the bottom row.
[0173] In the example shown in Figure 17, regardless of which of subjects A to C the sub-camera 400 tracks, all of the subjects A to C are photographed, so even if the subject of interest of the main camera 500 changes, the photographing direction of the sub-camera 400 remains approximately constant.
[0174] (Variation 2) Furthermore, after determining the subject to be tracked by the sub camera 400, the CPU 101 may control the sub camera 400 to focus on the subject to be tracked. Basically, the CPU 401 continuously controls the focusing distance so that the sub camera 400 focuses on the specified subject to be tracked, but the shooting control device 100 can set the AF frame of the sub camera 400 to the position of the subject to be tracked. This allows the sub camera 400 to quickly and reliably focus on the subject to be tracked. Note that if the AF frame is set when the pan speed slows down (below a threshold), the tracking target is likely to be located in the center of the screen, which may shorten the time required for focusing.
[0175] (Variation 3) Furthermore, it is possible to control the sub-camera 400 without using the overhead camera 300. In this case, the shooting direction of the sub-camera 400 can be determined from the installation positions of the main camera 500 and the sub-camera 400 and the shooting direction of the main camera 500 (the orientation of the main camera 500 with respect to the subject to be tracked). The main camera 500 executes a subject detection process, and the CPU 101 acquires and uses the result to control the sub-camera 400. For example, the CPU 101 acquires an image of the subject area from the main camera 500 as a result of the subject detection process. The CPU 101 can then control the sub-camera 400 to execute a subject tracking process using the acquired image as a template. Alternatively, the CPU 101 may use the acquired image as a template and control the sub-camera 400 to track a subject area with a low correlation with the template.
[0176] (Variation 4) Although the shooting control device 100, the role control device 600, and the main camera 500 have been described as independent devices, the functions of the shooting control device 100 and the role control device 600 can also be incorporated into the main camera 500. In this case, the image from the overhead camera 300 is supplied to the main camera 500. With this configuration, it is possible to reduce the amount of equipment required to realize a multi-camera shooting system.
[0177] As described above, according to this embodiment, when the operation of the sub-camera is automatically controlled based on the status and image of the main camera, automatic control is performed according to the role assigned to the sub-camera. Therefore, the photography control device of this embodiment can achieve more flexible automatic photography control while realizing labor savings.
[0178] <Second embodiment> Next, a second embodiment of the present invention will be described. In this embodiment, the tracking subject of the sub camera is determined taking into consideration the image of the sub camera in addition to information based on the state or image of the main camera and the role set for the sub camera.
[0179] Fig. 18 is a schematic diagram showing an example of the configuration of an imaging system 10' according to this embodiment. In Fig. 18, components similar to those in the imaging system 10 of the first embodiment are given the same reference numerals as in Fig. 1, and descriptions thereof will be omitted. The imaging system 10' according to this embodiment has two sub-cameras, A800 and B900. The functional configurations of the sub-camera A800 and sub-camera B900 are similar to those of the sub-camera 400 described in the first embodiment, and descriptions thereof will be omitted.
[0180] In this embodiment, a role is set in the imaging control device 100 from the role control device 600, and the role setting information includes different control contents for each sub-camera. The CPU 101 controls the operation of each sub-camera in accordance with the role set in the imaging control device 100.
[0181] 19 is a diagram showing an example of role setting information in this embodiment. Here, only the role "assist follow" and the corresponding control content for each sub-camera are shown as an example. However, the types of roles that can be set in the shooting control device 100 and the control content corresponding to the role types are not limited to the example shown in FIG. 19.
[0182] Here, it is specified that the sub-camera A800 is controlled to set the left subject of the subjects different from the subject being tracked by the main camera as the tracking subject and to focus on the tracking subject. Furthermore, it is specified that the sub-camera B900 is controlled to set the right subject of the subjects different from the subject being tracked by the main camera as the tracking subject and to focus on the tracking subject. Here, since it is known in advance that the total number of subjects is three, it is specified as the left or right of the two subjects, but it may also be simply specified as the left or right. Note that zoom control may be specified as in the first embodiment, but for simplicity of explanation, zoom control will be omitted.
[0183] 19 is stored in advance in the ROM 103 of the imaging control device 100. Alternatively, the role setting information may be supplied from the role control device 600 to the imaging control device 100, and the CPU 101 may store it in the RAM 102.
[0184] Using FIG. 20, how the shooting control device 100 controls the sub-camera A800 and the sub-camera B900 based on the role setting information will be described.
[0185] Fig. 20(a) shows the positional relationship between shooting range 20, main camera 500, sub-camera A 800, and sub-camera B 900 at the start of shooting, and subjects A to C within shooting range 20. Fig. 20(b) shows a state in which, after shooting starts, subject A moves from the left to the right of subject B, and subject C moves from the right to the left of subject B.
[0186] At the stage of Fig. 20(a), CPU 101 of imaging control device 100 controls the operations of sub-camera A800 and sub-camera B900 based on the role setting information shown in Fig. 19. That is, CPU 101 determines that of subjects A and C other than the target subject (subject B) of main camera 500, subject A on the left side is the subject to be tracked by sub-camera A800, and subject C on the right side is the subject to be tracked by sub-camera B900.
[0187] The CPU 101 controls the shooting directions of the sub-camera A800 and the sub-camera B900 so that they track the determined subject to be tracked. The CPU 101 also controls the sub-camera A800 and the sub-camera B900 so that they focus on the determined subject to be tracked.
[0188] In the state of FIG. 20(b), subject A being tracked by sub camera A800 does not satisfy the condition of "subject on the left side" (other than the subject of interest of main camera 500). Therefore, CPU 101 changes the subject being tracked by sub camera A800 to subject C on the left side of subjects A and C other than the subject of interest of main camera 500 (subject B). Similarly, subject C being tracked by sub camera B900 also does not satisfy the condition of "subject on the right side". Therefore, CPU 101 changes the subject being tracked by sub camera B900 to subject A on the right side of subjects A and C other than the subject of interest of main camera 500 (subject B). CPU 101 also controls sub camera A800 and sub camera B900 to focus on the determined subject being tracked.
[0189] When the subject moves significantly, as shown in Figure 20(b), there is a high possibility that another subject is present in front, making it easier for the subject to be tracked to be hidden. By setting the sub-camera positioned to the left of the shooting range 20 to track a subject on the left side, it is possible to specify that the tracking subject will be changed effectively when the tracking subject moves significantly to the right. The same applies to the sub-camera positioned to the right of the shooting range 20.
[0190] In this embodiment, it is possible to specify the control content so that each sub-camera with the same role tracks a different subject. Therefore, the shooting control device 100 of this embodiment makes it possible to automatically control the sub-cameras to shoot footage tracking various subjects based on the status of the main camera and information obtained from the footage.
[0191] (Variation) In this embodiment, the shooting direction of the sub-cameras for tracking a specific subject is estimated by performing coordinate transformation on the position of the subject area detected from the video of the overhead camera 300. However, a similar estimation may be performed based on the video of the sub-cameras A800 and B900. In this case, although the processing load on the shooting control device 100 increases, the accuracy of controlling the shooting direction of the sub-cameras can be improved because coordinate transformation is not required.
[0192] (Variation 2) In this embodiment, the pan and tilt values for controlling the sub-cameras A800 and B900 are calculated to automatically track the tracking target. However, automatic tracking is not essential. For example, the role setting information may specify that the pan values of the sub-cameras A800 and B900 are controlled according to the zoom value of the main camera 500.
[0193] As an example, when the zoom state of the main camera 500 is at the "wide-angle end," the sub-camera A800 can be controlled to face in a direction diagonally 45 degrees to the left, and the sub-camera B900 can be controlled to face in a direction diagonally 45 degrees to the right. On the other hand, when the zoom state of the main camera 500 is at the "telephoto end," the sub-camera A800 and the sub-camera B900 can both be controlled to face in the center (0 degrees) direction.
[0194] By performing such control, it becomes possible to synchronize and control the shooting directions of multiple sub-cameras with the zoom state of main camera 500, thereby enhancing the dramatic effect. For example, when main camera 500 zooms in on a specific subject, sub-cameras A800 and B900 can change their shooting directions while zooming in on the same subject in tandem. By performing such control, it becomes possible to simultaneously view multiple images captured by multiple cameras controlled synchronously in a performance in which multiple camera images are displayed on multiple monitors. Furthermore, by automatically controlling each camera with the same role, the variation in the angle of view between cameras over time is reduced compared to when each camera is manually operated, and the sense of unity in the angle of view change is strengthened, resulting in a dramatic effect that enhances the sense of realism.
[0195] (Variation 3) Furthermore, in the present embodiment, an example has been shown in which the main camera 500 is controlled as the master, and the sub-cameras A800 and B900 are controlled as slaves. However, the master-slave relationship between the main camera 500 and the sub-camera A800 may be dynamically changeable. For example, among the main camera 500, the sub-camera A800, and the sub-camera B900, the camera capturing the main line video may be controlled as the master, and the other cameras may be controlled as slaves. In this case, the shooting control device 100 may obtain information indicating which camera's video has been selected as the main line video from an external device such as a video selection switcher, or may determine the information based on a tally signal. Similar control may be performed not only when the main line video is selected, but also when video for recording, or other video related to viewer viewing or recording, is selected.
[0196] The master-slave relationship between the cameras may also be switched when sub-camera A 800 or sub-camera B 900 is manually operated. In this case, when the user manually operates one of the sub-cameras, control of the other cameras begins with that sub-camera as the master, which is convenient.
[0197] <Third embodiment> Next, a third embodiment of the present invention will be described. The imaging system according to this embodiment improves usability of the imaging system by providing the user with visualized information on the imaging conditions of the main camera and the sub camera.
[0198] FIG. 21 is a schematic diagram showing a configuration example of an imaging system 10″ according to a third embodiment of the present invention. Here, for ease of explanation and understanding, a configuration example based on the imaging system 10 according to the first embodiment is shown. The explanation of the first embodiment is applied to the configuration other than the display device 800.
[0199] The display device 800 presents information about the sub-camera 400 and the main camera 500, particularly information about the subject being photographed, to a user using the imaging system. In this embodiment, the display device 800 is described as being configured separately from the imaging control device 100 and the role control device 600, but the functions of the display device 800 may be implemented by at least one of the imaging control device 100 and the role control device 600.
[0200] The display device 800 displays the imaging information generated by the imaging control device 100. When the imaging control device 100 generates image data for display, the display device 800 may be a device that solely provides a display function, such as a liquid crystal display, or any electronic device that can function as an external display device for the imaging control device 100. The display device 800 may also be any electronic device with a display function (such as an information processing device, a smartphone, or a tablet terminal) that can communicate with the imaging control device 100. The display device 800 may generate and display image data for display based on the imaging information obtained from the imaging control device 100.
[0201] FIG. 22 is a block diagram showing an example of the functional configuration of each device constituting the imaging system 10'' shown in FIG. 21. For devices other than the display device 800, the description in the first embodiment regarding FIG. 2 is cited.
[0202] The display device 800 has a configuration in which a CPU 801, a RAM 802, a ROM 803, a user input unit 804, a network interface (I / F) 805, an image processing unit 806, and a display unit 811 are interconnected via an internal bus 810.
[0203] The CPU 801 is a microprocessor capable of executing programmed instructions. The CPU 801, for example, loads a program stored in a ROM 803 into a RAM 802 and executes the program, thereby realizing the functions of the display device 800, which will be described later. The CPU 801, for example, can realize the functions of the display device 800 by executing a display control application that runs on an operating system (OS).
[0204] The RAM 802 is used to load programs to be executed by the CPU 801 and to temporarily store data to be processed by the CPU 801, data currently being processed, etc. A part of the RAM 802 may be used as a video memory for the display unit 811.
[0205] The ROM 803 is a rewritable non-volatile memory, and stores programs (OS and applications) executed by the CPU 801, user data, and the like.
[0206] The user input unit 804 is an input device such as a mouse, a keyboard, a touch panel, etc. The display device 800 receives instructions from the user through the user input unit 804.
[0207] The network I / F 805 is an interface for connecting the display device 800 to the communication network 700. The display device 800 (CPU 801) can communicate with external devices on the communication network 700, such as the imaging control device 100, via the network I / F 805. Note that the display device 800 may also communicate with external devices via other communication interfaces (USB, Bluetooth (registered trademark), etc.) not shown.
[0208] The CPU 801 acquires information (for example, a network address) required for communication with devices on the communication network 700 at any timing, and stores the information in the RAM 802 .
[0209] The image processing unit 806 generates image data (display image data) to be displayed on the display unit 811 from image data acquired via the network I / F 805. The image processing unit 806 also generates display image data based on the shooting states of the main camera 500 and the sub-camera 400 received from the shooting control device 100. The image processing unit 806 stores the generated display image data in the RAM 802. The image processing unit 806 may apply compression processing to the display image data as necessary to reduce the amount of data. The image processing unit 806 may also apply image quality adjustments such as color correction, exposure control, and sharpness correction to the received image data.
[0210] Display unit 811 is a display device such as a liquid crystal display (LCD). Display unit 811 displays a GUI screen provided by an OS, a display control application, etc. Display unit 811 also displays an image showing the shooting status of main camera 500 and sub-camera 400.
[0211] The operation of the display device 800 is controlled by user instructions given through a user input unit 804 and instructions (commands) received through a network I / F 805 from the imaging control device 100 or the like.
[0212] 23, like FIG. 3, is a diagram illustrating a series of processes performed by the shooting control device 100 when controlling the operation of the sub-camera 400, focusing on the main operations and signal flow. The functional blocks shown in the shooting control device 100 schematically illustrate the main operations and correspond to the main functions provided by the shooting control application. Each functional block in FIG. 23 is realized by a combination of the CPU 101 that executes the shooting control application and one or more of the functional blocks of the shooting control device 100 shown in FIG. 22.
[0213] 23 and 3, the shooting control device 100 of this embodiment has the functions of a subject information superimposing unit 126 and a field of view information superimposing unit 127. The subject information superimposing unit 126 superimposes information indicating the subjects being tracked by the main camera 500 and the sub-camera 400 onto the image acquired from the overhead camera 300. The field of view information superimposing unit 127 superimposes information indicating the angles of view of the main camera 500 and the sub-camera 400 onto the image acquired from the overhead camera 300. The operations of the subject information superimposing unit 126 and the field of view information superimposing unit 127 can be individually and dynamically enabled and disabled. Note that the subject information superimposing unit 126 and the field of view information superimposing unit 127 may be included in a display control device different from the shooting control device 100, and the display control device may receive various information from the shooting control device 100 and output images generated by the display control device to the display device 800.
[0214] 24, a description will be given of the operation of generating an image on which the shooting information of the main camera 500 and the sub camera 400 is superimposed, among the operations performed by the shooting control device 100 in this embodiment. The shooting control device 100 can perform the operation described here in parallel with other operations such as automatic shooting control operations of the sub camera.
[0215] Fig. 24(a) is a flowchart relating to the operation of superimposing information about a tracking subject, which is one piece of shooting information, onto the video from overhead camera 300. Fig. 24(b) is a flowchart relating to the operation of superimposing information about the angle of view, which is one piece of shooting information, onto the video from overhead camera 300. Here, the information about the tracking subject is superimposed by subject information superimposition section 126, and then the information about the angle of view is superimposed by angle of view information superimposition section 127. However, the order of superimposition may be reversed, and whether or not to superimpose can be controlled individually.
[0216] 24(a) and 24(b) are executed every predetermined number of frames of the video from the overhead camera 300 (for example, every other frame, every other frame, etc.).
[0217] In S701, the CPU 101 starts acquiring the video signal (image data) IMG from the overhead camera 300 in the same manner as in S201.
[0218] In S702, CPU 101 acquires information ANGLE indicating the shooting direction from main camera 500 in the same manner as in S202.
[0219] In S703, CPU 101 (recognition unit 121) reads one frame of image data IMG from RAM 102 and executes the subject detection process described in S203. Then, CPU 101 determines the position at which to superimpose an index for each subject region based on the subject detection result. Here, it is assumed that a frame indicating a rectangular region inscribed in the subject region, as shown in FIG. 8(a), is superimposed as an index. Therefore, CPU 101 determines rectangle information DETECT_POSI for each subject region based on the output of inference unit 104 as information specifying the position of the rectangular region, and stores this in RAM 102.
[0220] Specifically, the rectangle information DETECT_POSI may be the image coordinates of the diagonal vertices of the rectangular area, which are the coordinates (xul, yul) of the upper left vertex and the coordinates (xdr, ydr) of the lower right vertex.
[0221] In S704, similarly to S204, CPU 101 as target subject determination unit 122 determines the target subject of main camera 500. CPU 101 stores identification information ID[n] corresponding to the subject area determined as the target subject of main camera 500 in RAM 102 as identification information MAIN_SUBJECT of the target subject.
[0222] In S705, similarly to S205, the CPU 101 as the tracking subject determination unit 123 acquires the control content CAMERA_ROLE according to the role set for the sub camera 400. Specifically, the CPU 101 reads out the control content CAMERA_ROLE from the RAM 102.
[0223] In S706, CPU 101 as tracking subject determination unit 123 determines a subject to be tracked and photographed by sub camera 400 in accordance with the control content CAMERA_ROLE, similar to S206. CPU 101 determines a tracking subject for sub camera 400 in accordance with the tracking subject rules (FIG. 4) included in the control content CAMERA_ROLE.
[0224] If an index indicating the shooting angle of view of the tracked subject is displayed without displaying an index for the subject area and an index for the tracked subject for each camera, CPU 101 executes S801 in FIG. 24(b) after completing the processing of S706.
[0225] In S707, CPU 101, functioning as subject information superimposition unit 126, reads from RAM 102 the same image data IMG as that read in S703. Then, CPU 101 reads from RAM 102 rectangular information DETECT_POSI for each subject region, and superimposes an index based on the rectangular information DETECT_POSI on the image data IMG. As described above, the index is a rectangular frame whose diagonal vertices are the coordinates indicated by the rectangular information DETECT_POSI. Also, here, the color of the rectangular frame is made different for each subject region. CPU 101 (subject information superimposition unit 126) stores the image data onto which the subject region indexes have been superimposed in RAM 102.
[0226] FIG. 25 is a diagram showing an example of the relationship between the identification ID of a subject detected from a frame image of the video captured by the overhead camera 300, the rectangle information DETECT_POSI, and the display color of the marker for each subject area. The position information (rectangle information DETECT_POSI) of the rectangular area circumscribing the area of the subject with the identification ID "ID1" is (xul1, yul1), (xdr1, ydr1), and the associated color of the marker is "red." This indicates that for a subject determined to have an identification ID of ID1, a red marker (here, a rectangular frame) is superimposed at the position indicated by the rectangle information in the image. The same applies to the other identification IDs, ID2 and ID3. The colors assigned to the identification IDs can be determined in advance.
[0227] 26 shows an example of an image represented by image data on which an index for a subject area is superimposed. Here, three subjects A to C are detected from the overhead image and are assigned IDs ID1 to ID3, respectively. The overhead image is one frame of the video from overhead camera 300.
[0228] When the colors of the indicators are defined as shown in FIG. 25, red, green, and blue rectangular frame-shaped indicators 261 to 263 are superimposed on the areas of the subjects A to C, respectively.
[0229] Note that the index for each subject is not limited to the rectangular frame-shaped index shown as an example. For example, the rectangular frame may include at least a portion of the subject area. Furthermore, the area of the rectangular frame other than the subject area may be filled with the same color as the frame. Furthermore, for example, the index may be semi-transparent. By making the index semi-transparent, the subject area can be visually recognized even if the index overlaps the subject area. The index for each subject may or may not be adjacent to the associated subject area as long as the correspondence relationship with the subject area is clear.
[0230] In S708, CPU 101 reads the image data generated in S707 from RAM 102. Then, CPU 101 generates image data SUBJECT_IMG in which, in the vicinity of the area of the subject being tracked by main camera 500 and sub camera 400, identification information of the camera that has that subject as the tracking subject is superimposed.
[0231] First, CPU 101 reads from RAM 102 MAIN_SUBJECT indicating the ID of the target subject (tracked subject) of main camera 500 and SUBJECT_ID indicating the ID of the tracked subject of sub camera 400. CPU 101 superimposes the identification information of main camera 500 (here, the text "Main Camera") near the subject area corresponding to the identification ID of MAIN_SUBJECT. Similarly, CPU 101 superimposes the identification information of sub camera 400 (here, the text "Sub Camera") near the subject area corresponding to SUBJECT_ID.
[0232] In addition to the identification information of the sub camera 400, it is also possible to superimpose identification information of the role set for the sub camera 400. For example, if the role "main follow" is set for the sub camera 400, the characters "sub camera (MF)" can be superimposed.
[0233] The position where the camera identification information is superimposed may be, for example, directly above a rectangular frame-shaped subject indicator. In this case, the CPU 101 can determine the position where the camera identification information is superimposed from the rectangular information. The CPU 101 may also determine the position where the camera identification information is superimposed from the position information of the subject area. The camera identification information may also be made semi-transparent.
[0234] The position at which the camera identification information is superimposed may be determined individually depending on the position of the corresponding subject area, etc. For example, if the subject area is close to the edge of the image, the display position may be changed. Specifically, the camera identification information may be superimposed below the subject area for a subject area close to the top edge of the image, or to the right of the subject area for a subject area close to the left edge. The position may also be dynamically changed taking into account the distance between subject areas, overlap, etc.
[0235] Furthermore, the camera identification information is not limited to the camera's role (main or sub). For example, any information that can identify the camera, such as the camera's IP address or model name, may be used. Furthermore, multiple types of identification information may be superimposed simultaneously or switchably.
[0236] Furthermore, the color of the camera identification information may be the color associated with the corresponding subject, i.e., the same color as the indicator for each subject area, or may be a fixed color that is predetermined for each main camera and sub camera.
[0237] CPU 101 writes image data in which an index of the subject area and information indicating the tracking subject for each camera are superimposed on the overhead image as SUBJECT_IMG to RAM 102. Note that if the angle of view information is not superimposed, CPU 101 may output image data SUBJECT_IMG to display device 800 as display image data OUT_IMAGE.
[0238] Figures 27(a) to 27(c) show examples where the main camera 500 and the sub camera 400 are tracking different subjects for human subjects A to C present within the shooting range. Specifically, this is the case where the sub camera 400 is automatically shooting according to the role "assist follow" or "assist counter." Also, Figures 27(d) to 27(f) show image data SUBJECT_IMG generated corresponding to Figures 27(a) to 27(c), respectively.
[0239] Regardless of the subjects being tracked by main camera 500 and sub camera 400, rectangular frame-shaped indicators having colors based on the relationship shown in FIG. 25 are superimposed on the areas of subjects A to C in the overhead image.
[0240] 27(a) shows a state in which main camera 500 is tracking subject B, and sub camera 400 is tracking subject A. Therefore, the characters 272 "main camera" are superimposed near the area of subject B, which is the subject being tracked by main camera 500. In addition, the characters 271 "sub camera" are superimposed near the area of subject A, which is the subject being tracked by sub camera 400.
[0241] 27(b) shows a state in which main camera 500 is tracking subject A and sub camera 400 is tracking subject B. Therefore, the characters 272 "main camera" are superimposed near the area of subject A, which is the subject being tracked by main camera 500. In addition, the characters 271 "sub camera" are superimposed near the area of subject B, which is the subject being tracked by sub camera 400.
[0242] 27(c) shows a state in which main camera 500 is tracking subject C and sub camera 400 is tracking subject A. Therefore, the characters 272 "main camera" are superimposed near the area of subject C, which is the subject being tracked by main camera 500. In addition, the characters 271 "sub camera" are superimposed near the area of subject A, which is the subject being tracked by sub camera 400.
[0243] Next, the process of adding an index indicating the photographing angle of view of the tracking subject to the overhead image will be described with reference to the flowchart shown in FIG.
[0244] In S801, CPU 101 as angle of view information superimposition unit 127 reads data SUBJECT_IMG of the overhead image generated in S708 and onto which the subject area index and the tracking subject index for each camera are superimposed, from RAM 102. Note that if the subject area index and the tracking subject index for each camera are not superimposed, CPU 101 reads image data IMG of the same frame as that read in S703 from RAM 102.
[0245] In S802, CPU 101 obtains the current zoom values of main camera 500 and sub camera 400. The zoom value MAIN_ZOOM of main camera 500 can be the value most recently obtained from main camera 500 by zoom value calculation unit 125 and stored in RAM 102. In addition, the zoom value of sub camera 400 can be the zoom value Z_VALUE most recently determined by zoom value calculation unit 125 in S207 and stored in RAM 102. Note that CPU 101 may obtain the zoom values from main camera 500 and sub camera 400 by transmitting a zoom value obtainment command via network I / F 105.
[0246] In S803, the CPU 101 reads image data to be used as an index representing the shooting angle of view, for example, from the ROM 103. Here, a specific image is scaled to a size according to the angle of view and used as an index representing the shooting angle of view. Note that the index representing the shooting angle of view may be in other forms, such as an index representing the zoom value as characters.
[0247] In S804, CPU 101 resizes the image acquired in S803 in accordance with the zoom value of main camera 500 acquired in S802, and generates an index indicating the angle of view for shooting the tracking subject of main camera 500. CPU 101 similarly generates an index for sub-camera 400 indicating the angle of view for shooting the tracking subject.
[0248] The correspondence between the resizing rate and the zoom value is stored in advance in ROM 103 so that the smaller the zoom value (narrower the angle of view), the larger the image resizing rate, and the larger the zoom value (wider the angle of view), the smaller the image resizing rate. In this embodiment, a position DRAW_POSI on the image at which an index indicating the shooting angle of view of the tracking subject is superimposed on the overhead image is stored in ROM 103 in advance. The position DRAW_POSI specifies the coordinates of the diagonal vertices of a rectangular area for displaying the index for each of the main camera 500 and the sub-camera 400. Individual positions DRAW_POSI may be stored according to the number of sub-cameras 400.
[0249] Here, as shown in Figures 28(d) and 28(e), an indicator indicating the shooting angle of view is displayed at the bottom of the overhead image. In this case, the position DRAW_POSI includes the coordinates (drawM_Xs, drawM_Ys) of the upper left vertex and the coordinates (drawM_Xe, drawM_Ye) of the lower right vertex of a rectangular area displaying the indicator of the shooting angle of view of main camera 500. The position DRAW_POSI also includes the coordinates (drawS_Xs, drawS_Ys) of the upper left vertex and the coordinates (drawS_Xe, drawS_Ye) of the lower right vertex of a rectangular area displaying the indicator of the shooting angle of view of sub camera 400.
[0250] The CPU 101 superimposes the scaled image within a rectangular area indicated by the position DRAW_POSI on the overhead image.
[0251] The operation of generating and superimposing an index indicating the shooting angle of view will be described in more detail using Figure 28. Figure 28(a) shows a state in which, of human subjects A to C present within the shooting range, the main camera 500 is tracking subject B and the sub camera 400 is tracking subject A. Specifically, this is the case when the sub camera 400 is automatically shooting in accordance with the role "assist follow." Figure 28(b) shows the image from the main camera 500, and Figure 28(c) shows the image from the sub camera 400.
[0252] Fig. 28(d) shows an example of the display of an indicator indicating the shooting angle of view when the shooting angles of view of main camera 500 and sub camera 400 are both wide-angle in the state of Fig. 28(a). Also, Fig. 28(e) shows an example of the display of an indicator indicating the shooting angle of view when the shooting angles of view of main camera 500 and sub camera 400 are both telephoto in the state of Fig. 28(a).
[0253] Here, images of simple shapes (human body model images) that mimic the torso and head of a human body are used to generate the indices. Also, for ease of understanding and explanation, it is assumed that the zoom value ranges of the main camera 500 and the sub-camera 400 are the same, and the sub-camera 400 is controlled to have the same zoom value as the main camera 500 due to its role of "assist follow." As shown in Figures 28(d) and 28(e), when the shooting angle of view is wide, a small indices are displayed, and when the shooting angle of view is telephoto, a large indices are displayed.
[0254] In S805, CPU 101 executes processing to clarify which camera the shooting angle of view indicator corresponds to. Specifically, CPU 101 sets the outline of the rectangular area displaying the indicator to a color according to the relationship between the identification ID and the indicator color shown in FIG. 25. Specifically, CPU 101 displays at least a portion of the outline of the rectangular area displaying the indicator in a color corresponding to the identification ID of the subject indicated by the indicator. Alternatively, CPU 101 superimposes an image in a color corresponding to the identification ID of the subject indicated by the indicator on at least a portion of the outline of the rectangular area displaying the indicator.
[0255] In the example shown in FIG. 28(a), the subject being tracked by main camera 500 is subject B. Also, as shown in FIG. 25, the color of the indicator for subject B (identification ID 2) is green. Therefore, CPU 101 sets the outline of the rectangular area displaying the indicator representing the imaging angle of view of subject B to green. Similarly, CPU 101 sets the outline of the rectangular area displaying the indicator representing the imaging angle of view of subject A (identification ID 1) to red.
[0256] The area displaying the indicator representing the shooting angle of view may also include identification information of the camera that tracks the subject corresponding to the indicator. By including the camera identification information, it is possible to more directly grasp which camera's shooting angle of view it is.
[0257] The CPU 101 generates image data for display OUT_IMAGE, including indices indicating the imaging angle of view and identification information of the subject corresponding to the indices, as shown in FIG. 28(d) and FIG. 28(e). The CPU 101 then transmits the display image data OUT_IMAGE to the display device 800. The display image data OUT_IMAGE includes at least one of (1) the indices of the subject area shown in FIG. 27 and information indicating the tracking subject for each camera, and (2) the indices indicating the imaging angle of view and identification information of the subject corresponding to the indices. The CPU 101 may display the display image data OUT_IMAGE on the display unit 108.
[0258] When the CPU 801 of the display device 800 receives the display image data OUT_IMAGE via the network I / F 805, it stores the data in the RAM 802. Then, the CPU 801 displays the display image data OUT_IMAGE on the display unit 811. The CPU 801 may convert the display image data OUT_IMAGE into data suitable for display on the display unit 811 as necessary. For example, the CPU 801 can scale the display image data OUT_IMAGE to match the resolution of the display unit 811.
[0259] An index representing the angle of view by size is generated by scaling an image in which the torso and head are deformed according to the zoom value. However, an index representing the angle of view by something other than size may also be generated. For example, the size of the range used as the index in a predetermined image (e.g., an image in which the entire body of a human body is deformed) may be varied according to the zoom value. Specifically, the narrower the angle of view, the narrower the range used as the index. For example, if the shooting angle of view is wide, the entire image (the entire body) is used as the index, and if the shooting angle of view is telephoto, only the upper body of the image is used as the index.
[0260] Furthermore, an image that resembles the subject does not have to be used as an index. For example, instead of an image with a deformed shape of the torso and head, an image of a fruit (e.g., an apple) or a musical instrument (e.g., a guitar) may be scaled and used as an index for the shooting angle of view. Alternatively, an image of the subject cut out from an overhead image may be used. Instead of scaling, one of a plurality of images of different sizes prepared in advance may be selected based on the zoom value. An index whose size varies depending on the zoom value can be generated using any known method.
[0261] If there are multiple sub-cameras 400, an indicator can be displayed for each sub-camera 400. The indicators indicating the imaging field of view can be displayed in the order of main camera / sub-camera 1 / sub-camera 2... from the leftmost rectangular area. Alternatively, an indicator indicating the imaging field of view of the main camera can be displayed in a rectangular area located in the horizontal center, and indicators for the imaging field of view of each sub-camera can be displayed in a predetermined order in the rectangular areas on the left and right.
[0262] Furthermore, in this embodiment, each camera is assumed to track one subject. However, the tracking subject may be multiple subjects. An index indicating the shooting angle of view of a camera tracking multiple subjects can be generated using an image according to the number of subjects. For example, for a camera tracking three subjects (subjects A to C) shown in FIG. 26, an image of the three subjects lined up can be scaled to generate an index indicating the shooting angle of view. The same applies to other numbers of subjects.
[0263] Alternatively, when multiple subjects are divided into groups and tracked on a group basis, an index may be generated by scaling an image of one person and then superimposing group identification information (e.g., the group name). In this case, a different index color may be assigned to the group of subjects than to each individual subject. Alternatively, subjects belonging to the same group may be represented using an index that includes all the colors assigned to each individual subject. For example, in the example shown in FIG. 25, if subjects A to C belong to the same group, an index (e.g., a rectangular frame) made up of three colors, red, green, and blue, may be superimposed on each of the regions of subjects A to C.
[0264] In addition, in this embodiment, a rectangular frame of a color associated with the subject is used to visually associate the tracking subject and the shooting angle of view for the same camera, but other methods may be used. For example, an image such as a solid line, dotted line, dashed line, or double line may be used to connect the area of the tracking subject for the same camera to the display area of the indicator representing the shooting angle of view. In addition to a rectangular frame, an arrow indicating the subject area, or a graphic frame such as a circle or trapezoid surrounding the subject area may also be used.
[0265] Furthermore, a corresponding camera icon may be displayed in association with an indicator indicating the shooting angle of view. For example, if the cameras have different external shapes, it is possible to more clearly indicate which camera's shooting angle of view. For example, if the main camera 500 is a horizontally long video camera and the sub-camera 400 is a round PTZ camera, by displaying an icon that resembles the camera's external appearance in association with the indicator indicating the shooting angle of view, it becomes possible to recognize at a glance which camera's shooting angle of view. Furthermore, the type of camera can also be ascertained from the icon.
[0266] The shooting angle of view may also be indicated by text information. For example, a number indicating a zoom value or an image showing text such as "pull back" (wide angle) or "close up" (telephoto) may be used as an indicator of the shooting angle of view. Any other expression capable of indicating the shooting angle of view may also be used.
[0267] Furthermore, in the present embodiment, an index visualizing the tracking subject and shooting angle of view for each camera has been exemplified as the shooting information. However, the shooting information is not limited to this. For example, the tally status of each camera may be visualized. Specifically, the indicators of the tracking subject and shooting angle of view of a camera whose tally status is currently broadcasting or streaming may be displayed in association with a mark of the same color as the tally lamp or text information such as "currently broadcasting" or "streaming." When using a switcher to select video to output from the imaging system, displaying the tally status superimposed on the overhead image makes it possible to easily grasp the subject and angle of view of the video currently being output, in addition to the subject and angle of view of each camera.
[0268] As described above, according to this embodiment, in an imaging system having sub-cameras that automatically capture images in cooperation with a main camera, it is possible to grasp in real time the imaging information, such as the subject being captured by each camera and the imaging angle of view, etc. This makes it possible to easily perform remote operations such as switching the main camera or appropriately changing the angle of view of each camera.
[0269] <Fourth embodiment> Next, a fourth embodiment of the present invention will be described. In the third embodiment, an example was described in which shooting information from each camera was superimposed on an overhead image and presented to a user. In the fourth embodiment, shooting information from each camera is presented to a user in a method different from the method of superimposing the shooting information on an overhead image.
[0270] 3 and 23, Fig. 29 is a diagram illustrating a series of processes performed by the shooting control device 100 when controlling the operation of the sub-camera 400, focusing on the main operations and signal flow. The functional blocks shown in the shooting control device 100 schematically illustrate the main operations and correspond to the main functions provided by the shooting control application. Each functional block in Fig. 29 is realized by a combination of the CPU 101 that executes the shooting control application and one or more of the functional blocks of the shooting control device 100 shown in Fig. 22.
[0271] As can be seen from comparing FIG. 29 with FIG. 23, the shooting control device 100 of this embodiment has the functions of a GUI generation unit 129 in addition to the configuration of the third embodiment. The GUI generation unit 129 generates a GUI (Graphical User Interface) as a second display image for presenting the shooting information of each camera to the user. By generating a GUI for presenting the shooting information to the user, it becomes possible to use an expression different from the first display image in which the shooting information is superimposed on an overhead image. This makes it possible to provide another means for the user to grasp the shooting information of each camera.
[0272] 30, a description will be given of the operation of generating a GUI image for presenting shooting information of the main camera 500 and the sub camera 400, among the operations performed by the shooting control device 100 in this embodiment. The shooting control device 100 can perform the operation described here in parallel with the automatic shooting control operation of the sub camera and the operation described in the third embodiment.
[0273] As an example, a GUI image is generated that presents the tracking subject and shooting angle of each camera, as well as the linkage details of the sub-cameras according to their set roles as shooting information. Any type of GUI can be generated, but as an example, a window that presents shooting information is generated here.
[0274] In S901, CPU 101 generates data of an overhead image in which an image of a rectangular frame in a color corresponding to the identification ID of the subject is superimposed around the subject region, in the same manner as in S707 of Fig. 24. CPU 101 stores the generated image data in RAM 102.
[0275] In S902, CPU 101 adds, to the image data generated in S901, an image of the camera's identification information to be superimposed near the subject area corresponding to the subject being tracked by main camera 500 and sub camera 400, in the same manner as in S708. Here, images of the characters "main camera" and "sub camera" are added as the image of the camera's identification information. CPU 101 stores in RAM 102 the data of the overhead image (first display image) on which the shooting information is superimposed, obtained by the steps of S901 and S902.
[0276] In S903, the CPU 101 acquires the role CAMERA_ROLE set for the sub camera 400 in the same manner as in S705.
[0277] In S904, the CPU 101 acquires the zoom value of each camera in the same manner as in S802.
[0278] In S905, CPU 101 as GUI generation unit 129 starts generating a GUI image for presenting shooting information. First, CPU 101 draws an area for each camera in a window image of a predetermined size. Here, as an example, CPU 101 draws a rectangle corresponding to each camera in a color associated with the identification ID of the tracking subject of each camera. FIG. 31(e) shows an example of window 310 and rectangular frames 311 and 312 corresponding to each camera. In FIG. 31(e), as shown in FIG. 31(a), the tracking subjects of main camera 500 and sub-camera 400 are both subject B. Therefore, CPU 101 draws rectangular frame 311 corresponding to main camera 500 and rectangular frame 312 corresponding to sub-camera 400 in green.
[0279] Furthermore, to indicate which camera the area corresponds to, CPU 101 draws camera identification information 313, 314 above rectangular frames 311, 312. In Fig. 31(e), as an example, text information such as "main camera" and "sub camera" is drawn, but as described above, other types of images such as icons of the external shapes of the cameras may also be drawn.
[0280] Furthermore, CPU 101 renders, in the area corresponding to sub camera 400, information indicating the control content of the tracking subject, among the control content according to the role CAMERA_ROLE set for sub camera 400.
[0281] In the example shown in Fig. 31(e), the area (area within the rectangle) corresponding to each camera is divided into upper and lower halves. The control details of the tracking subject are drawn in the upper part, and information on the shooting angle of view is drawn in the lower part. How the area is divided and what shooting information is presented in each divided area can be determined appropriately depending on the type and number of shooting information to be presented.
[0282] In the example shown in Fig. 31(e), the role "main follow" is set for the sub camera. Therefore, CPU 101 draws information 317 indicating that the subject being tracked by sub camera 400 is the same as the subject being tracked by the main camera, at the top of the area corresponding to sub camera 400. In Fig. 31(e), as an example, text information "Subject being tracked: same as main" is drawn.
[0283] In S906, the CPU 101 generates an index indicating the shooting angle of view of each camera in the same manner as in S804. Here, the index is generated using the same image as in the third embodiment, but as described above, the index may be generated using other types of images or text information.
[0284] In S907, CPU 101 draws the indices generated in S906 in the areas corresponding to the cameras. In the example shown in Fig. 31(e), the indices are drawn at the bottom of the areas. Then, CPU 101 stores data of the GUI image (second display image) obtained through the steps of S905 to S907 in RAM 102.
[0285] The CPU 101 transmits the data of the overhead image (first display image) stored in the RAM 102 in S902 and the data of the GUI image (second display image) stored in the RAM 102 in S907 as display image data OUT_IMAGE to the display device 800. In this embodiment as well, the display image data OUT_IMAGE can be displayed on the display unit 108.
[0286] When the CPU 801 of the display device 800 receives the display image data OUT_IMAGE via the network I / F 805, it stores the data in the RAM 802. Then, the CPU 801 displays the display image data OUT_IMAGE on the display unit 811. The CPU 801 may convert the display image data OUT_IMAGE into data suitable for display on the display unit 811 as necessary. For example, the CPU 801 can scale the overhead image and the GUI image so that the overhead image and the GUI image are displayed as separate windows on the display unit 811.
[0287] An example of the display image data OUT_IMAGE generated by the CPU 101 in this embodiment will be described with reference to FIG.
[0288] 31(a) and 31(b) show a state in which the same scene as in FIG. 28(a) is automatically captured by the main camera 500 and the sub-camera 400 linked to the main camera 500. In FIG. 31(a), the sub-camera 400 is automatically capturing images in accordance with the role "main follow." In FIG. 31(b), the sub-camera 400 is automatically capturing images in accordance with the role "assist counter." In this case, the role "assist counter" is set to set a subject on the right side of the main camera 500, which is different from the subject of interest, as the subject to be tracked by the sub-camera 400.
[0289] Also, in Figure 31(a), the shooting angles of view of the main camera 500 and the sub-camera 400 are assumed to be equal. On the other hand, in Figure 31(b), the angle of view of the main camera 500 is assumed to be narrower (telephoto side) than in the state of Figure 31(a). Therefore, the shooting angle of view of the sub-camera 400 is controlled to be wider (wide-angle side) than in the state of Figure 31(a) in accordance with its role as an "assist counter."
[0290] 31(a), both the main camera 500 and the sub-camera 400 are tracking subject B. In FIG. 31(b), the main camera 500 is tracking subject A, and the sub-camera 400 is tracking subject C.
[0291] Figure 31(c) shows an image corresponding to the overhead image data generated in S902 in the shooting state of Figure 31(a). A rectangular frame of a color associated with the identification ID of the subject is superimposed on the area of each subject. In addition, an image showing the identification information of main camera 500 and sub camera 400 (the characters "main camera" and "sub camera") is superimposed on the top of the rectangular frame of subject B, which is the subject being tracked by main camera 500 and sub camera 400.
[0292] Figure 31(d) shows an image corresponding to the overhead image data generated in S902 in the shooting state of Figure 31(b). A rectangular frame of a color associated with the identification ID of the subject is superimposed on the area of each subject. Furthermore, an image indicating the identification information of main camera 500 (the characters "main camera") is superimposed on the top of the rectangular frame of subject B, which is the subject being tracked by main camera 500. Furthermore, an image indicating the identification information of sub camera 400 (the characters "sub camera") is superimposed on the top of the rectangular frame of subject C, which is the subject being tracked by sub camera 400.
[0293] FIG. 31(e) shows an image corresponding to the GUI image data generated in S907 in the shooting state of FIG. 31(a). In window 310, rectangular frame 311 indicating the area corresponding to main camera 500 and rectangular frame 312 indicating the area corresponding to sub-camera 400 are drawn. Rectangular frames 311 and 312 are drawn in a color associated with the identification ID of the tracking subject of the corresponding camera. Furthermore, identification information 313 and 314 of the corresponding camera are drawn at the top of rectangular frames 311 and 312. Information 317 indicating the details of tracking subject control for the role currently set for sub-camera 400 is drawn at the top of rectangular frame 312 corresponding to sub-camera 400. Furthermore, indices 315 and 316 indicating the shooting angles of view of main camera 500 and sub-camera 400 are drawn at the bottom of rectangular frames 311 and 312. The indices 315 and 316 are the same size.
[0294] Figure 31(f) shows an image corresponding to the GUI image data generated in S907 in the shooting state of Figure 31(b). Compared to Figure 31(e), the colors of rectangular frames 311 and 312 are different because the tracking subject is different. Also, the shooting angle of view of main camera 500 is narrow and the shooting angle of view of sub-camera 400 is wide, so the sizes of indicators 315 and 316 are different. Also, the content of information 317 indicating the tracking subject control content is different because the role of sub-camera 400 is different.
[0295] The color associated with the ID of the subject being tracked by the camera may be applied to something other than the rectangle representing the area corresponding to the camera. For example, it may be applied to the background within the area. Furthermore, the two images may be displayed in the same window, for example, by superimposing a GUI image on an overhead image with shooting information superimposed.
[0296] In this embodiment, the control content of the tracking subject is shown as information about the role of the sub camera 400. However, the name of the role of the sub camera 400 (such as "assist counter") or identification information of the tracking subject (such as the subject name) may be shown instead of or in addition to the information.
[0297] According to this embodiment, by generating an image that presents shooting information separately from the overhead image, in addition to the effects of the third embodiment, it becomes possible to check the shooting information without being affected by the overhead image, making it even easier to understand the shooting information.
[0298] In the third and fourth embodiments, examples have been described in which visualized information on the shooting status of the main camera and the sub camera is provided to the user. However, when the photographer operates the main camera, changes to the subject and shooting angle of view of the main camera may be predetermined. In such cases, since the subject and shooting angle of view of the main camera can be known to some extent, it is also possible to provide the user with visualized information on the shooting status of the sub camera without visualizing the shooting status of the main camera. Alternatively, the user may be able to select whether or not to visualize the shooting status of the main camera.
[0299] Furthermore, in a multi-camera imaging system with a large number of sub-cameras, providing the user with visualized information on the shooting status of all cameras may result in too much information for the user to accurately recognize. Therefore, it may be possible to allow the user to select the camera in the multi-camera imaging system for which the shooting status is to be visualized. However, providing the user with visualized information on the shooting status of the main camera without visualizing the shooting status of the sub-cameras has little effect on improving the usability of the automatic imaging system, so it is preferable to provide the user with visualized information on the shooting status of at least one sub-camera. These selection operations can be performed using user input 804.
[0300] (Other embodiments) The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0301] The disclosure of the present embodiment includes the following imaging control device, imaging control method, display control device, display control method, imaging system, and program. (Item 1) a control means for controlling the shooting direction and angle of view of the sub-camera among a plurality of cameras including a main camera and a sub-camera, based on a role set for the sub-camera and a target subject and angle of view of the main camera; a generation means for generating a display image that presents information about the main camera and the sub camera; an output means for outputting the display image; and The generation means generates a display image that presents at least one of information regarding the subject of interest of the main camera and the subject being tracked by the sub camera, and information regarding the angles of view of the main camera and the sub camera. (Item 2) The image capture control device described in item 1 is characterized in that the generation means generates the display image by superimposing information from the main camera and the sub-camera on video captured by a camera other than the multiple cameras that captures the entire shooting range of the multiple cameras. (Item 3) The image capture control device described in item 2 is characterized in that the generation means presents information about the target subject and the tracking subject by superimposing indices associated with the area of the target subject and the area of the tracking subject in the video captured by the other camera. (Item 4) 4. The imaging control device according to item 3, wherein the indices include a rectangular frame-shaped indice that includes the area of the target subject, and a rectangular frame-shaped indice that includes the area of the tracking subject. (Item 5) 5. The photographing control device according to item 4, wherein the color of the rectangular frame-shaped indicator is a color that is predetermined for each subject. (Item 6) 6. The imaging control device according to item 4 or 5, wherein the indicator further includes identification information of the main camera and the sub camera. (Item 7) The shooting control device described in any one of items 2 to 6, characterized in that the generation means presents information regarding the angles of view of the main camera and the sub-camera by superimposing an indicator indicating the angle of view of the main camera and an indicator indicating the angle of view of the sub-camera on the image shot by the other camera. (Item 8) 8. The imaging control device according to item 7, wherein the index indicating the angle of view indicates the size of the angle of view by its size. (Item 9) 8. The imaging control device according to item 7, wherein the index indicating the angle of view indicates the size of the angle of view by the size of a range in a predetermined image used as the index. (Item 10) 10. The shooting control device according to any one of items 7 to 9, characterized in that at least a part of the outline of an area on which an index indicating the angle of view of the main camera is superimposed is presented in a predetermined color with respect to the target subject of the main camera. (Item 11) The image capturing control device described in item 1 is characterized in that the generation means generates, as the display images, a first display image based on video captured by a camera other than the multiple cameras that captures the entire shooting range of the multiple cameras, and a second display image that is not based on video captured by the other camera. (Item 12) Indicators associated with the area of the target subject and the area of the tracking subject are superimposed on the first display image; the second display image includes an indicator indicating the angle of view of the main camera and an indicator indicating the angle of view of the sub camera; Item 12. An imaging control device according to item 11. (Item 13) 13. The photographing control device according to item 11 or 12, wherein the second display image further includes information regarding a role set for the sub-camera. (Item 14) Item 14. The photography control device according to item 13, wherein the information about the role includes one or more of the name of the role and the control content of the sub-camera according to the role. (Item 15) The second display image includes an area for presenting information about the main camera, which is indicated by a rectangular frame of a predetermined color for the target subject of the main camera, and an area for presenting information about the sub camera, which is indicated by a rectangular frame of a predetermined color for the tracking subject of the sub camera. (Item 16) the plurality of cameras; The imaging control device according to any one of items 1 to 15, An imaging system having: (Item 17) Item 17. The imaging system according to item 16, further comprising a display device that displays the display image output by the imaging control device. (Item 18) A display control device used in an imaging system in which, among a plurality of cameras including a main camera and a sub camera, the shooting direction and angle of view of the sub camera are controlled based on a role set for the sub camera and a target subject and angle of view of the main camera, a generating means for generating a display image that presents information about the sub-camera; an output means for outputting the display image; and The display control device, wherein the generating means generates a display image that presents at least one of information about a subject being tracked by the sub-camera and information about an angle of view of the sub-camera. (Item 19) A photography control method executed by a photography control device, Among a plurality of cameras including a main camera and a sub camera, a shooting direction and a field of view of the sub camera are controlled based on a role set for the sub camera and a target object and a field of view of the main camera; generating a display image that presents information about the main camera and the sub camera; outputting the display image; A photography control method characterized in that the generating step includes generating a display image that presents at least one of information regarding the subject of interest of the main camera and the subject being tracked by the sub-camera, and information regarding the angles of view of the main camera and the sub-camera. (Item 20) A display control method executed by a display control device used in an imaging system in which, among a plurality of cameras including a main camera and a sub camera, the shooting direction and angle of view of the sub camera are controlled based on a role set for the sub camera and a target subject and angle of view of the main camera, generating a display image that presents information about the sub-camera; outputting the display image; A display control method characterized in that the generating includes generating a display image that presents at least one of information regarding the subject being tracked by the sub-camera and information regarding the angle of view of the sub-camera. (Item 21) A program for causing a computer to function as each of the means possessed by the imaging control device according to any one of items 1 to 15. (Item 22) A program for causing a computer to function as each of the means possessed by the display control device described in item 18.
[0302] The present invention is not limited to the above-described embodiments, and various modifications and variations are possible without departing from the spirit and scope of the invention. Therefore, the following claims are appended to clarify the scope of the invention. [Explanation of symbols]
[0303] 100... Shooting control device, 300... Bird's-eye view camera, 400... Sub-camera, 500... Main camera, 600... Role control device, 101... CPU, 102... RAM, 103... ROM, 104... Inference unit, 105... Network I / F, 106... User input unit
Claims
1. Acquisition means for acquiring information on a subject to be tracked by another imaging device different from the said imaging device, which is determined based on an image captured by the said imaging device, A generation means for generating a display image by superimposing identification information of another imaging device that is imaging a subject identified by the subject information acquired by the acquisition means as the tracking target onto an image captured by the imaging device, Output means for outputting the display image, A display control device characterized by having the following features.
2. The generating means generates a display image by superimposing a rectangular frame-shaped index indicating the region of a subject detected from the image captured by the imaging device and the identification information of the other imaging device onto the image captured by the imaging device. The display control device according to feature 1.
3. The generation means generates a display image by superimposing subject identification information for identifying a subject detected from an image captured by the imaging device onto an image captured by the imaging device, and the identification information of the other imaging device. The display control device according to feature 1.
4. The generating means generates a display image by superimposing, in correspondence with each other, a rectangular frame-shaped index indicating the region of a subject detected from the image captured by the imaging device, subject identification information for identifying the subject, and the identification information of the other imaging device that is capturing the subject acquired by the acquisition means as the tracking target. The display control device according to feature 1.
5. The generating means superimposes the identification information of the other imaging device onto the region of the subject acquired by the acquisition means or the vicinity of the region in the image captured by the imaging device. The display control device according to feature 1.
6. The identification information of the other imaging device includes at least one of the name, model name, network address, and name set by the user of the other imaging device. The display control device according to feature 1.
7. The image captured by the imaging device is an image that includes at least a portion of the shooting range that the other imaging device can capture. The display control device according to feature 1.
8. Including a plurality of the other imaging devices, The acquisition means acquires information on the subject determined to be the subject to be tracked by each of the multiple other imaging devices, The generation means generates a display image by superimposing the identification information of each of the multiple other imaging devices onto the image captured by the imaging device. The display control device according to feature 1.
9. The generation means generates a display image in which the identification information of each of the different imaging devices is superimposed on the region of the same subject or in the vicinity of the region when different imaging devices among the plurality of other imaging devices are tracking the same subject. The display control device according to claim 8.
10. The generating means displays the identification information of the other imaging device at a position below the subject acquired by the acquisition means on the image captured by the imaging device. The display control device according to feature 1.
11. The generating means displays the identification information of the other imaging device at a position outside the rectangular frame-shaped indicator that indicates the region of a subject detected from the image captured by the imaging device. The display control device according to claim 2.
12. The generating means determines the position on which to superimpose the identification information of the other imaging device based on the position of the subject detected from the image captured by the imaging device. The display control device according to feature 1.
13. The generating means generates a display image by further superimposing an index indicating the correspondence between the identification information of the other imaging device and the subject acquired by the acquisition means onto the image captured by the imaging device. The display control device according to feature 1.
14. The indicator showing the correspondence relationship indicates the correspondence relationship between the identification information of the other imaging device and the subject acquired by the acquisition means by at least one of a line, leader line, arrow, frame, hatching, shading, character, icon, and display position. The display control device according to claim 13.
15. The generation means further generates a GUI image different from the display image, The GUI image includes the identification information of the other imaging device and the information indicating the subject acquired by the acquisition means. The display control device according to feature 1.
16. The GUI image includes a display area provided for each of the other imaging devices, The display area displays the identification information of the corresponding other imaging device and information indicating the subject acquired by the corresponding acquisition means. The display control device according to claim 15.
17. The generating means generates the display image which further includes an angle of view index indicating the angle of view of the other imaging device. The display control device according to feature 1.
18. The field of view indicator indicates the field of view of the other imaging device by at least one of the size, shape, frame, characters, icon, and image cropping range. The display control device according to feature 17.
19. An acquisition step of acquiring information on a subject to be tracked by another imaging device different from the said imaging device, which is determined based on an image captured by the said imaging device, A generation step to generate a display image by superimposing identification information of another imaging device that is imaging a subject identified by the subject information acquired in the acquisition step as the tracking target onto the image captured by the imaging device, An output step for outputting the aforementioned display image, A display control method characterized by having the following features.
20. A program for causing a computer to execute the display control method described in Claim 19.