WO2021251298A1 - 画像処理装置およびその制御方法 - Google Patents
画像処理装置およびその制御方法 Download PDFInfo
- Publication number
- WO2021251298A1 WO2021251298A1 PCT/JP2021/021400 JP2021021400W WO2021251298A1 WO 2021251298 A1 WO2021251298 A1 WO 2021251298A1 JP 2021021400 W JP2021021400 W JP 2021021400W WO 2021251298 A1 WO2021251298 A1 WO 2021251298A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tracking
- unit
- frame
- subject
- determination
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B7/00—Mountings, adjusting means, or light-tight connections, for optical elements
- G02B7/28—Systems for automatic generation of focusing signals
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B13/00—Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
- G03B13/32—Means for focusing
- G03B13/34—Power focusing
- G03B13/36—Autofocus systems
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B15/00—Special procedures for taking photographs; Apparatus therefor
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B7/00—Control of exposure by setting shutters, diaphragms or filters, separately or conjointly
- G03B7/08—Control effected solely on the basis of the response, to the intensity of the light received by the camera, of a built-in light-sensitive device
- G03B7/091—Digital circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
Definitions
- the present invention relates to an image processing apparatus and a control method thereof, and particularly to a subject tracking technique.
- Some image processing devices such as digital cameras have a function of tracking a feature area (subject tracking function) by applying detection of a feature area such as a face area over time. Further, a device for tracking a subject using a trained neural network is also known (Patent Document 1).
- processing using a neural network requires a large amount of calculation, a high-speed processor and a large-scale circuit, and therefore has a problem of high power consumption.
- subject tracking using a neural network is applied to a moving image for live view display, battery consumption due to live view display becomes a problem.
- An object of the present invention is to provide an image processing apparatus having a subject tracking function that realizes good performance while suppressing power consumption, and a control method thereof.
- a detection means for detecting a predetermined subject area as a candidate area from a frame to be processed, and a determination means for determining a subject area to be tracked from the candidate area are determined.
- the calculation means for calculating the evaluation value regarding the difficulty of tracking and the position of the area corresponding to the subject area of the tracking target in the frame before the frame to be processed in the frame to be processed are estimated.
- the image processing apparatus is characterized by enabling both the first tracking means and the second tracking means, or disabling at least one of the first tracking means and the second tracking means. Will be done.
- a detection means for detecting a predetermined subject area as a candidate area from the frame to be processed, and a determination means for determining a subject area to be tracked from the candidate area. It is a tracking means for executing a tracking process for estimating the position of a region corresponding to a subject area to be tracked in a frame before the frame to be processed in the frame to be processed, and is a first tracking means and a second tracking means.
- a tracking means having means, and a control means for determining the operation of the first tracking means and the second tracking means for a frame after the frame to be processed based on the type of the subject detected by the detection means.
- the second tracking means has higher processing accuracy than the first tracking means, but has a larger calculation load
- the control means has the first tracking means and the first tracking means based on the type of the subject detected by the detection means.
- An image processing apparatus is provided comprising enabling both of the two tracking means or disabling at least one of the first tracking means and the second tracking means.
- the detection means for detecting a predetermined subject area as a candidate area from the frame to be processed, and the target of tracking processing from the candidate area based on the detection result of the candidate area. It has a calculation means for calculating an evaluation value regarding the difficulty of the determination process for determining a region to be, a first determination means and a second determination means, and performs determination processing on the candidate region detected by the detection means. It has a target determination means and a control means for controlling the operation of the first determination means and the second determination means based on the evaluation value, and the second determination means processes more than the first determination means.
- the accuracy is high, but the calculation load is heavy, and the control means enables both the first determination means and the second determination means, disables one of them, or disables both of them based on the evaluation value.
- the accuracy is higher than that of the detection means for detecting a predetermined subject area as a candidate area from the frame to be processed, the first determination means, and the first determination means.
- the target determination means which has a second determination means which is high but has a large calculation load and performs the determination process of determining the area to be the target of the tracking process from the candidate areas detected by the detection means, and the detection result of the candidate area. It has a first determination means and a control means for controlling the operation of the second determination means, and the control means has a first determination means and a first determination means based on the type and number of detected candidate regions.
- An image processing apparatus is provided characterized in that both of the two determination means are enabled, one is disabled, or both are disabled.
- a non-transitory machine-readable medium containing a program for making a computer function as a control means possessed by the electronic device according to the present invention.
- an image processing device having a subject tracking function and a control method thereof that realizes good performance while suppressing power consumption.
- FIG. 1 A block diagram showing a functional configuration example of the image pickup apparatus according to the first embodiment.
- the figure which shows the display example of the subject tracking result in the image pickup apparatus which concerns on 1st Embodiment The figure which shows the display example of the subject tracking result in the image pickup apparatus which concerns on 1st Embodiment Flow chart regarding calculation process of difficulty score in the first embodiment Flow chart regarding control operation based on difficulty score in the first embodiment
- Timing chart regarding the use of tracking processing results in the first embodiment Flowchart for basic live view display operation in the first embodiment Flowchart regarding live view display operation at the time of subject tracking in the first embodiment Flowchart regarding live view display operation at the time of subject tracking in the first embodiment
- the figure which shows the live view display example at the time of subject tracking in 2nd Embodiment Flow chart regarding calculation process of difficulty score in the second embodiment
- Flow chart regarding calculation process of difficulty score in the second embodiment Flow chart regarding control operation based on difficulty score in the second embodiment
- Flow chart for control operation without using difficulty score in the second embodiment An exemplary timing chart relating to the processing of the image pickup apparatus according to the second embodiment.
- FIG. 1 A block diagram showing a functional configuration example of the image pickup apparatus according to the third to eighth embodiments. The figure which shows the structure of the line-of-sight information acquisition part arrangement which concerns on embodiment.
- the image pickup apparatus is merely an example of an image processing apparatus to which the present invention can be applied, and the present invention can be implemented by any electronic device capable of image processing.
- electronic devices include computer devices (personal computers, tablet computers, media players, PDAs, etc.), mobile phones, smartphones, game consoles, robots, drones, and drive recorders. These are examples, and the present invention can be implemented in other electronic devices.
- FIG. 1 is a block diagram showing a functional configuration example of an image pickup apparatus 100 as an example of the image processing apparatus according to the first embodiment.
- the optical system 101 has a plurality of lenses including a movable lens such as a focus lens, and forms an optical image of a photographing range on the image plane of the image pickup element 103.
- the control unit 102 has a CPU, for example, reads a program stored in the ROM 123 into the RAM 122 and executes the program.
- the control unit 102 realizes the function of the image pickup apparatus 100 by controlling the operation of each functional block.
- the ROM 123 is, for example, a rewritable non-volatile memory, and stores programs, setting values, GUI data, and the like that can be executed by the CPU of the control unit 102.
- the RAM 122 is a system memory used for reading a program executed by the CPU of the control unit 102 and storing a value required during the execution of the program. Although omitted in FIG. 1, the control unit 102 is communicably connected to each functional block.
- the image pickup device 103 may be, for example, a CMOS image sensor having a color filter having a primary color Bayer array. A plurality of pixels having a photoelectric conversion region are two-dimensionally arranged on the image pickup device 103.
- the image pickup device 103 converts the optical image formed by the optical system 101 into an electric signal group (analog image signal) by a plurality of pixels.
- the analog image signal is converted into a digital image signal (image data) by the A / D converter of the image pickup element 103 and output.
- the A / D converter may be provided outside the image pickup device 103.
- the evaluation value generation unit 124 generates a signal and an evaluation value used for automatic focus detection (AF) from the image data obtained from the image sensor 103, and calculates an evaluation value used for automatic exposure control (AE).
- the evaluation value generation unit 124 outputs the generated signal and the evaluation value to the control unit 102.
- the control unit 102 controls the focus lens position of the optical system 101 based on the signal and the evaluation value obtained from the evaluation value generation unit 124, and determines the shooting conditions (exposure time, aperture value, ISO sensitivity, etc.). do.
- the evaluation value generation unit 124 may generate a signal or an evaluation value from the display image data generated by the post-processing unit 114, which will be described later.
- the first preprocessing unit 104 applies color interpolation processing to the image data obtained from the image sensor 103.
- the color interpolation process is also called a demosaic process, and is a process for making each of the pixel data constituting the image data have the values of the R component, the G component, and the B component. Further, the first preprocessing unit 104 may apply a reduction process for reducing the number of pixels, if necessary.
- the first preprocessing unit 104 stores the image data to which the processing is applied in the display memory 107.
- the first image correction unit 109 applies correction processing such as white balance correction processing and shading correction processing, conversion processing from RGB format to YUV format, and the like to the image data stored in the display memory 107.
- correction processing such as white balance correction processing and shading correction processing, conversion processing from RGB format to YUV format, and the like
- the first image correction unit 109 may use one or more image data stored in the display memory 107, which is different from the image data to be processed.
- the first image correction unit 109 can use, for example, image data of frames before and / or after the frame to be processed in time series for correction processing.
- the first image correction unit 109 outputs the processed image data to the post-processing unit 114.
- the post-processing unit 114 generates recording image data and display image data from the image data supplied from the first image correction unit 109.
- the post-processing unit 114 applies a coding process to the image data, for example, and generates a data file for storing the coded image data as recording image data.
- the post-processing unit 114 supplies recording image data to the recording unit 118.
- the post-processing unit 114 generates display image data for display on the display unit 121 from the image data supplied from the first image correction unit 109.
- the display image data has a size corresponding to the display size on the display unit 121.
- the post-processing unit 114 supplies display image data to the information superimposing unit 120.
- the recording unit 118 records the recording image data converted by the post-processing unit 114 on the recording medium 119.
- the recording medium 119 may be, for example, a semiconductor memory card, a built-in non-volatile memory, or the like.
- the second preprocessing unit 105 applies color interpolation processing to the image data output by the image sensor 103.
- the second preprocessing unit 105 stores the image data to which the processing is applied in the tracking memory 108.
- the tracking memory 108 and the display memory 107 may be implemented as different address spaces in the same memory space. Further, the second preprocessing unit 105 may apply a reduction process for reducing the number of pixels as necessary in order to reduce the processing load.
- the first pretreatment section 104 and the second pretreatment section 105 are described here as separate functional blocks, a common pretreatment section may be used.
- the second image correction unit 106 applies correction processing such as white balance correction processing and shading correction processing to the image data stored in the tracking memory 108, and conversion processing from the RGB format to the YUV format. Further, the second image correction unit 106 may apply image processing suitable for subject detection processing to the image data. For example, if the representative luminance of the image data (for example, the average luminance of all pixels) is equal to or less than a predetermined threshold value, the second image correction unit 106 has a constant coefficient over the entire image data so that the representative luminance is equal to or more than the threshold value. You may multiply by (gain).
- the second image correction unit 106 may use one or more image data stored in the tracking memory 108, which is different from the image data to be processed.
- the second image correction unit 106 can use, for example, image data of frames before and / or after the frame to be processed in time series for correction processing.
- the second image correction unit 106 stores the processed image data in the tracking memory 108.
- the image data to which the subject tracking function is applied is moving image data taken for live view display or recording.
- the moving image data has a predetermined frame rate such as 30 fps, 60 fps, and 120 fps.
- the detection unit 110 detects one or more predetermined candidate subject areas (candidate areas) from the image data for one frame. Further, the detection unit 110 is an object class indicating a position and size in the frame and a type of candidate subject (automobile, airplane, bird, insect, human body, head, pupil, cat, dog, etc.) for each detected area. And its reliability. In addition, the number of detected areas is counted for each object class.
- the detection unit 110 can detect a candidate region by using a known technique for detecting a feature region such as a face region of a person or an animal.
- the detection unit 110 may be configured as a class classifier that has been trained using the training data. There are no particular restrictions on the identification (classification) algorithm.
- the detection unit 110 can be realized by learning a classifier that implements a multi-class logistic regression, a support vector machine, a random forest, a neural network, and the like.
- the detection unit 110 stores the detection result in the tracking memory 108.
- the target determination unit 111 determines a subject area (main subject area) to be tracked from the candidate areas detected by the detection unit 110.
- the subject area to be tracked can be determined based on the priority assigned in advance for each item included in the detection result, such as the object class and the size of the area. Specifically, the total priority may be calculated for each candidate area, and the candidate area having the smallest total may be determined as the subject area to be tracked. Alternatively, among the candidate areas belonging to a specific object class, the candidate area closest to the center of the image or the focus detection area or the largest candidate area may be determined as the subject area to be tracked.
- the target determination unit 111 stores information for identifying the determined subject area in the tracking memory 108.
- the difficulty level determination unit 112 calculates a difficulty score, which is an evaluation value indicating the difficulty level of tracking, for the subject area of the tracking target determined by the target determination unit 111.
- the difficulty determination unit 112 can calculate the difficulty score in consideration of one or more factors that affect the difficulty of tracking. Examples of factors that affect the difficulty of tracking include, but are not limited to, the size of the subject area, the object class (type) of the subject, the total number of areas belonging to the same object class, and the position in the image. A specific example of the calculation method of the difficulty score will be described later.
- the difficulty determination unit 112 outputs the calculated difficulty score to the tracking control unit 113.
- the tracking control unit 113 determines whether to enable or disable each of the plurality of tracking units of the tracking unit 115 based on the difficulty score calculated by the difficulty determination unit 112.
- the tracking unit 115 has a plurality of tracking units having different calculation loads and tracking accuracy.
- the tracking unit 115 has a DL tracking unit 116 that tracks a subject using deep learning (DL), and a non-DL tracking unit 117 that tracks a subject without using DL.
- the DL tracking unit 116 has higher processing accuracy than the non-DL tracking unit 117, but the calculation load is larger than that of the non-DL tracking unit 117.
- the tracking control unit 113 determines whether to enable or disable each of the DL tracking unit 116 and the non-DL tracking unit 117. In addition, the tracking control unit 113 also determines the operation frequency of the tracking unit to be effective. The operation frequency is the frequency (fps) at which the tracking process is applied.
- the tracking unit 115 estimates the subject area to be tracked from the image data of the frame (current frame) to be processed stored in the tracking memory 108, and the tracking result is the position and size of the estimated subject area in the frame.
- the tracking unit 115 uses the image data of the current frame and the image data of the past frame (for example, the previous frame) taken before the current frame to capture the subject area to be tracked in the current frame.
- the tracking unit 115 outputs the tracking result to the information superimposing unit 120.
- the tracking unit 115 estimates the area in the frame to be processed, which corresponds to the subject area to be tracked in the past frame. That is, the subject area of the tracking target determined by the target determination unit 111 for the frame to be processed is not the subject area of the tracking target in the tracking process for the frame to be processed.
- the subject area to be tracked in the tracking process for the frame to be processed is the subject area to be tracked in the past frame.
- the subject area to be tracked determined by the target determination unit 111 for the frame to be processed is used for the tracking process of the next frame when the subject to be tracked is switched to another subject.
- the tracking unit 115 has a DL tracking unit 116 that tracks a subject using deep learning (DL), and a non-DL tracking unit 117 that tracks a subject without using DL. Then, the tracking unit enabled by the tracking control unit 113 outputs the tracking result at the operation frequency set by the tracking control unit 113.
- DL deep learning
- the DL tracking unit 116 estimates the position and size of the subject area to be tracked by using a learned multi-layer neural network including a convolution layer. More specifically, the DL tracking unit 116 has a function of extracting feature points of a subject area for each object class that can be a target and a feature amount included in the feature points, and a function of associating the extracted feature points between frames. And have. Therefore, the DL tracking unit 116 can estimate the position and size of the subject area to be tracked in the current frame from the feature points of the current frame associated with the feature points of the subject area to be tracked in the past frame. ..
- the DL tracking unit 116 outputs the position, size, and reliability score of the subject area to be tracked estimated for the current frame.
- the reliability score indicates the reliability of associating feature points between frames, that is, the reliability of the estimation result of the subject area to be tracked.
- the subject area estimated in the current frame may be a region related to a subject different from the subject area to be tracked in the past frame. Indicates that there is sex.
- the non-DL tracking unit 117 estimates the subject area to be tracked in the current frame by a method that does not use deep learning.
- the non-DL tracking unit 117 estimates the subject area to be tracked based on the similarity of the color configurations.
- other methods such as pattern matching using the subject area to be tracked in the past frame as a template may be used.
- the non-DL tracking unit 117 outputs the position, size, and reliability score of the subject area to be tracked estimated for the current frame.
- the similarity of the color composition will be explained.
- the shape and size of the subject area to be tracked are the same in the past frame and the current frame.
- the image data has a depth of 8 bits (value 0 to 255) for each color component of RGB.
- the non-DL tracking unit 117 divides a range of possible values (0 to 255) for a certain color component (for example, R component) into a plurality of regions. Then, the non-DL tracking unit 117 classifies the pixels included in the subject area to be tracked according to the area to which the value of the R component belongs (frequency for each range of values), and sets the color composition of the subject area to be tracked. do.
- a certain color component for example, R component
- the range of possible values of the R component (0 to 255) is divided into Red1 of 0 to 127 and Red2 of 128 to 255.
- the color composition of the subject area to be tracked in the past frame is 50 pixels for Red1 and 70 pixels for Red2.
- the color configuration of the subject area to be tracked in the current frame is 45 pixels for Red1 and 75 pixels for Red2.
- 10
- 80 Will be.
- the lower the similarity of the color composition the higher the similarity score.
- the smaller the similarity score the higher the similarity of the color composition.
- the selection unit 125 adopts one of the tracking results of the DL tracking unit 116 and the non-DL tracking unit 117 based on the reliability score output by the DL tracking unit 116 and the similarity score output by the non-DL tracking unit 117. .. For example, when the reliability score is equal to or less than the predetermined reliability score threshold value and the similarity score is equal to or less than the predetermined similarity score threshold value, the selection unit 125 adopts the tracking result of the non-DL tracking unit 117. In other cases, the tracking result of the DL tracking unit 116 is adopted. The selection unit 125 outputs the adopted tracking result to the information superimposition unit 120 and the control unit 102.
- the tracking result of the DL tracking unit 116 may be preferentially adopted. Specifically, if the tracking result of the DL tracking unit 116 is obtained, the tracking result of the DL tracking unit 116 may be adopted, and if not, the tracking result of the non-DL tracking unit 117 may be adopted.
- the information superimposing unit 120 generates an image of the tracking frame based on the size of the subject area included in the tracking result output by the tracking unit 115.
- the image of the tracking frame may be a frame-shaped image representing the outline of a rectangle circumscribing the subject area.
- the information superimposing unit 120 superimposes the image of the tracking frame on the display image data output by the post-processing unit 114 so that the tracking frame is displayed at the position of the subject area included in the tracking result, and synthesizes the image. Generate image data.
- the information superimposing unit 120 also generates images representing the current set values and states of the image pickup apparatus 100, and is for display output by the post-processing unit 114 so that these images are displayed at predetermined positions. It may be superimposed on the image data.
- the information superimposing unit 120 outputs the composite image data to the display unit 121.
- the display unit 121 may be, for example, a liquid crystal display or an organic EL display.
- the display unit 121 displays an image based on the composite image data output by the information superimposing unit 120. As described above, the live view display for one frame is performed.
- FIG. 2A and 2B are diagrams showing an example of a live view display.
- FIG. 2A shows an image 800 represented by display image data output by the post-processing unit 114.
- FIG. 2B shows an image 802 represented by the composite image data in which the image of the tracking frame 803 is superimposed on the display image data.
- the candidate subject 801 since there is only one candidate subject 801 in the shooting range, the candidate subject 801 is selected as the subject to be tracked. Then, the tracking frame 803 is superimposed so as to surround the candidate subject 801.
- the tracking frame 803 is composed of a combination of four hollow key shapes, but other forms such as a combination of non-hollow key shapes, a continuous frame, a combination of rectangles, and a combination of triangles.
- the tracking frame 803 may be used. Further, the form of the tracking frame 803 may be selectable by the user.
- the operation of calculating the difficulty score for the subject area to be tracked which is executed by the difficulty determination unit 112, will be further described.
- the object classes are classified into the following groups A to D.
- Groups A to C are defined so that object classes with similar characteristics regarding tracking difficulty belong to the same group.
- object classes having less importance than the object classes belonging to the groups A to C are classified.
- Group A mainly includes object classes of rigid subjects such as car object class, train object class, jet machine object class, bicycle object class, motorcycle object class, and helicopter object class.
- Group B mainly includes object classes such as bird object classes and insect object classes, which move quickly and the shape of the subject area changes significantly.
- Group C (animal / human) mainly includes object classes of subjects including face and body, such as dog object class, cat object class, and human body object class. It is assumed that the group D is another object class, and the object classes belonging to the group D have low importance.
- the classification of groups A to D is merely an example, and the difficulty of tracking may be classified from another viewpoint.
- the difficulty determination unit 112 initializes the difficulty score to 0. In S402, the difficulty determination unit 112 determines whether or not the object class of the subject area to be tracked belongs to group A, S406 if it is determined to belong to group A, and S403 if it is not determined to belong to group A. To execute.
- the difficulty determination unit 112 maintains the difficulty score.
- the object class belonging to the group A is an object class of a subject that is relatively easy to track. Therefore, the difficulty determination unit 112 determines that the subject area to be tracked is easy to track, and does not add points to the difficulty score (does not increase the difficulty).
- the difficulty determination unit 112 determines whether or not the object class of the subject area to be tracked belongs to group B, S407 if it is determined to belong to group B, and S404 if it is not determined to belong to group B. To execute.
- the difficulty determination unit 112 adds 1 point (+1) to the difficulty score.
- Group B classifies object classes of subjects that move quickly and change shape significantly. Therefore, when the object class of the subject area to be tracked belongs to the group B, the difficulty determination unit 112 determines that the subject area to be tracked is difficult to track, and adds points to the difficulty score (increases the difficulty).
- the difficulty determination unit 112 determines whether or not the object class of the subject area to be tracked belongs to group C, S405 if it is determined to belong to group C, and S410 if it is not determined to belong to group C. To execute.
- the difficulty determination unit 112 determines whether or not the subject area having the head object class and the subject area having the pupil object class are detected in the subject area to be tracked.
- the difficulty determination unit 112 determines S408 if it is determined that the subject area having the head object class and the subject area having the pupil object class are detected in the subject area to be tracked, and S409 if it is not determined. Run.
- the difficulty determination unit 112 maintains the difficulty score.
- Group C is an object class of subjects having faces, such as dogs, cats, and human bodies. Since it is determined that both the head and the pupil having a hierarchical relationship are detected, the difficulty determination unit 112 determines that the subject area to be tracked is easy to track, and does not add points to the difficulty score.
- the difficulty determination unit 112 adds 1 point to the difficulty score.
- Group C is an object class of subjects having faces, such as dogs, cats, and human bodies. Since it is determined that at least one of the head and the pupil having a hierarchical relationship is not detected, the difficulty determination unit 112 determines that the subject area to be tracked is difficult to track, and adds points to the difficulty score.
- the difficulty determination unit 112 maintains the difficulty score. Since the subject area to be tracked belongs to group D and is not an object class of any of group A, group B, and group C, the difficulty determination unit 112 does not indicate that the subject area to be tracked is not the area related to the main subject. Judge and do not add points to the difficulty score.
- the difficulty determination unit 112 determines whether or not the number of candidate regions having the same object class as the object class of the subject region to be tracked is equal to or greater than a predetermined threshold value N (N ⁇ 2).
- the difficulty determination unit 112 executes S412 if it is determined that the number of candidate regions having the same object class as the object class of the subject area to be tracked is equal to or greater than a predetermined threshold value N, and S413 if it is not determined. ..
- the difficulty determination unit 112 adds 1 point to the difficulty score.
- the difficulty determination unit 112 determines that the subject area to be tracked is difficult to track and adds points to the difficulty score.
- the difficulty determination unit 112 maintains the difficulty score.
- the difficulty determination unit 112 determines that the subject area to be tracked is easy to track and maintains the difficulty score.
- the difficulty determination unit 112 determines whether or not the number of types of object classes possessed by the candidate area detected by the detection unit 110 is equal to or greater than a predetermined threshold value O (O ⁇ 2). The difficulty determination unit 112 executes S415 if it is determined that the number of types of object classes possessed by the candidate area detected by the detection unit 110 is equal to or greater than the threshold value O, and S416 if it is not determined.
- the difficulty determination unit 112 adds 1 point to the difficulty score.
- the threshold value O it is determined that the subject area to be tracked is difficult to track because the candidate areas of various object classes are mixed in the shooting range, and points are added to the difficulty score. ..
- the difficulty determination unit 112 maintains the difficulty score.
- the difficulty determination unit 112 determines that the subject area to be tracked is in a state where the tracking unit 115 can easily track, and maintains the difficulty score.
- the difficulty determination unit 112 outputs the calculated difficulty score to the tracking control unit 113.
- the difficulty score calculated by the operation described here takes any value of 0, 1, 2, or 3. However, in reality, it may have finer notches. In fact, more object classes than those illustrated here can be categorized into more groups. Further, the difficulty score does not need to determine all the elements of S402 to S404, S411, and S414, and may be calculated based on at least one of these elements. Also, with the difficulty score as two values (0 or 1), the DL tracking unit 116 is valid with a difficulty score of 1 (non-DL tracking section 117 is valid or invalid), and the DL tracking section 116 is invalid with a difficulty score of 0 (non-DL). The tracking unit 117 may be controlled as effective).
- the difficulty determination unit 112 can calculate the difficulty score with higher accuracy.
- the movement speed on the image can be estimated from the size and speed information in addition to the object class of the subject area to be tracked and reflected in the difficulty score. good. For example, if the estimated movement speed is equal to or higher than the threshold value, points are added to the difficulty score. Further, the reliability score and the similarity score calculated in the past frame (for example, the previous frame) may be included in the difficulty score calculation process.
- the difficulty determination unit 112 calculates the difficulty score by the operation described with reference to FIG. Therefore, the difficulty score has a value of 0 to 3.
- the tracking control unit 113 determines whether or not the difficulty score is 3, and if it is determined that the difficulty score is 3, S504 is executed, and if it is not determined, S502 is executed. In S502, the tracking control unit 113 determines whether or not the difficulty score is 2, and if it is determined that the difficulty score is 2, S505 is executed, and if it is not determined, S503 is executed. In S503, the tracking control unit 113 determines whether or not the difficulty score is 1, and if it is determined that the difficulty score is 1, S506 is executed, and if it is not determined, S507 is executed.
- the tracking control unit 113 determines to enable the DL tracking unit 116 and disable the non-DL tracking unit 117. Further, the tracking control unit 113 sets the operation frequency of the DL tracking unit 116 to 60 fps (every frame).
- the difficulty score 3 is the state in which the difficulty of tracking is the highest among the calculated difficulty scores. Therefore, the tracking control unit 113 decides to use the DL tracking unit 116 having better performance than the non-DL tracking unit 117. On the other hand, the tracking control unit 113 determines that it is unlikely that a good result can be obtained even if the non-DL tracking unit 117 is used, and determines that the non-DL tracking unit 117 is not used.
- the tracking control unit 113 determines to enable both the DL tracking unit 116 and the non-DL tracking unit 117. Further, the tracking control unit 113 sets the operation frequency of the DL tracking unit 116 to 30 fps (every other frame) and the operation frequency of the non-DL tracking unit 117 to 60 fps. Difficulty score 2 is a state in which the difficulty of tracking is rather high. Therefore, the tracking control unit 113 decides to use both the DL tracking unit 116 and the non-DL tracking unit 117. On the other hand, the tracking control unit 113 reduces the power consumption of the DL tracking unit 116 by reducing the operation frequency of the DL tracking unit 116 as compared with that of the non-DL tracking unit 117. Further, the tracking control unit 113 maintains the tracking followability by setting the operation frequency of the non-DL tracking unit 117 for each frame.
- the tracking control unit 113 determines to enable both the DL tracking unit 116 and the non-DL tracking unit 117. Further, the tracking control unit 113 sets the operation frequency of the DL tracking unit 116 to 15 fps (every two frames) and the operation frequency of the non-DL tracking unit 117 to 60 fps. Difficulty score 1 is a state in which the difficulty level of tracking is rather low. Therefore, the tracking control unit 113 decides to use both the DL tracking unit 116 and the non-DL tracking unit 117. On the other hand, the tracking control unit 113 further reduces the power consumption of the DL tracking unit 116 by further reducing the operation frequency of the DL tracking unit 116 as compared with the case of the difficulty score 2. On the other hand, the tracking control unit 113 maintains the tracking followability by setting the operation frequency of the non-DL tracking unit 117 for each frame.
- the tracking control unit 113 determines to invalidate the DL tracking unit 116 and enable the non-DL tracking unit 117. Further, the tracking control unit 113 sets the operation frequency of the non-DL tracking unit 117 to 30 fps (every other frame). S507 is executed when the difficulty score is 0, and the tracking difficulty is the lowest. Therefore, the tracking control unit 113 determines that there is a high possibility that a sufficiently accurate result can be obtained with the non-DL tracking unit 117, and decides to use only the non-DL tracking unit 117. Further, the tracking control unit 113 further reduces the power consumption by setting the operation frequency of the non-DL tracking unit 117 every other frame.
- the difficulty score can change according to the range of possible values and the step of the value.
- the frame rate of the moving image is assumed to be 60 fps here, it may be 120 fps.
- the operation frequency of the non-DL tracking unit 117 is set to 120 fps, the operation frequency of the DL tracking unit 116 may be less than 15 fps, for example, 5 fps.
- the DL tracking unit 116 is enabled, the non-DL tracking unit 117 is disabled, or if the difficulty score is lower than the second threshold value, the DL tracking unit 116 is disabled.
- the DL tracking unit 117 may be enabled.
- FIG. 5 is a timing chart showing an example of the operation timing of each of the above-mentioned parts when the subject tracking function is performed by the image pickup apparatus 100.
- t600, t601, t602, t603, t604, t605, and t606 are timings at which the detection unit 110 starts the detection process in each frame.
- the detection unit 110 starts the detection process 610 for the first frame (0th frame).
- the target determination unit 111 starts the determination process 611 for determining the subject area to be tracked.
- the difficulty level determination unit 112 starts the difficulty level determination process 612 of the subject area to be tracked.
- the tracking control unit 113 sets the DL tracking unit 116. And review the control of the non-DL tracking unit 117. Specifically, the validity or invalidity of the DL tracking unit 116 and the non-DL tracking unit 117 and the operation frequency are updated according to the difficulty score of the subject area to be tracked determined for the image data in the 0th frame. Further, the tracking unit 115 updates the subject area to be tracked with the subject area to be tracked determined for the image data of the 0th frame. Therefore, the updated subject area is tracked for the image data in the first frame.
- the tracking control unit 113 does not review the control of the DL tracking unit 116 and the non-DL tracking unit 117. Further, the tracking unit 115 does not update the subject area to be tracked.
- the 0th frame, the 2nd frame in which the detection process 624 is started from t602, the 4th frame in which the detection process 633 is started from t604, and the 6th frame in which the detection process 643 is started from t606 are the tracking targets.
- the tracking control unit 113 reviews the valid / invalid control of the DL tracking unit 116 and the non-DL tracking unit 117 using the result of the difficulty determination process 618.
- the non-DL tracking unit 117 is invalidated, the DL tracking unit 116 is enabled, and the operation frequency of the DL tracking unit 116 is switched to double the operation frequency in the 0th frame and the 1st frame.
- the subject to be tracked changes in the third frame when the detection process 629 is started from t603, and the tracking control unit 113 reviews the valid / invalid control of the DL tracking unit 116 and the non-DL tracking unit 117.
- the DL tracking unit 116 is invalidated and the non-DL tracking unit 117 is enabled for the fourth frame in which the detection process 633 is started from t604.
- the operation frequency of the non-DL tracking unit 117 is set to half the frequency of the operation frequency settings of the 0th frame and the 1st frame.
- the tracking unit 115 starts the DL tracking process 613 and the non-DL tracking process 614 at the 0th frame.
- the DL tracking unit 116 and the non-DL tracking unit 117 are both effective by the tracking control unit 113, and the operation frequency of the non-DL tracking unit 117 is set to twice the operation frequency of the DL tracking unit 116. It is assumed that it has been done.
- FIG. 5 it is shown that the DL tracking process and the non-DL tracking process shown by the broken line rectangle are not executed because the operation frequency of the DL tracking unit 116 and the non-DL tracking unit 117 is set to be lower than each frame. ..
- the DL tracking unit 116 performs the DL tracking process 613, and the non-DL tracking unit 117 performs the non-DL tracking process 614, and outputs the tracking process result.
- the DL tracking process 613 can output a tracking result with higher accuracy than the non-DL tracking process 614. Therefore, the tracking unit 115 adopts the tracking result of the DL tracking process 613 by the selection unit 125. Then, the information superimposing unit 120 generates the composite image data in which the tracking frame based on the tracking result of the DL tracking process 613 is superimposed in the superimposing process 615.
- the display unit 121 executes the display process 623 of the composite image data of the 0th frame.
- the non-DL tracking unit 117 starts the non-DL tracking process 620 of the first frame.
- the DL tracking unit 116 does not perform tracking processing for the first frame according to the setting of the operation frequency. Since only the tracking result of the non-DL tracking unit 117 is obtained in the first frame, the information superimposing unit 120 in the superimposing process 622 generates composite image data on which the tracking frame based on the tracking result of the non-DL tracking unit 117 is superimposed. ..
- the tracking unit 115 executes the wait process 621 after the non-DL tracking unit process.
- the display unit 121 executes the display process 628 of the composite image data of the first frame.
- the DL tracking unit 116 starts the DL tracking process 625 of the second frame. Since the non-DL tracking unit 117 is disabled for the second frame, the non-DL tracking process is not executed. Since only the tracking result of the DL tracking unit 116 is obtained in the second frame, the information superimposing unit 120 in the superimposing process 627 generates composite image data on which the tracking frame based on the tracking result of the DL tracking unit 116 is superimposed. At t603, the display unit 121 executes the display process 632 of the composite image data of the first frame.
- the DL tracking unit 116 starts the DL tracking process 630 of the third frame.
- the operation frequency of the DL tracking unit 116 is changed to twice the operation frequency in the 0th frame, so that the DL tracking process is performed in the third frame following the second frame. Will be executed.
- the superimposition processing 631 and the display processing 638 are the same as those of the second frame.
- the non-DL tracking unit 117 starts the non-DL tracking process 635 of the fourth frame. Since the DL tracking unit 116 is invalid for the fourth frame, the DL tracking process is not executed. Since the operation frequency of the non-DL tracking unit 117 is set to half the operation frequency of the 0th frame and the 1st frame, the non-DL tracking process 635 of the 4th frame is executed, but the non-DL tracking process of the 5th frame is performed. Process 640 is not performed. The wait process 636, the superimposition process 637, and the display process 642 are the same as those of the first frame.
- the tracking unit 115 does not execute the DL tracking process 639 and the non-DL tracking process 640. Therefore, in the superimposition process 641 for the fifth frame, the information superimposition unit 120 generates synthetic image data in which the tracking frame based on the tracking result of the non-DL tracking process 635 obtained in the fourth frame is superposed.
- the information superimposing unit 120 may generate composite image data in which the tracking frame is not superposed in the superimposing process for a frame in which neither the DL tracking process nor the non-DL tracking process is executed, such as the fifth frame.
- the non-DL tracking unit 117 starts the non-DL tracking process 644 in the sixth frame. Since the DL tracking unit 116 is invalid, the DL tracking process is not executed.
- the non-DL tracking process 644, the wait process 645, the superimposition process 646, and the display process 647 in the 6th frame are the same as those in the 4th frame.
- the tracking result for the frame before the frame to be processed can be used.
- the timing chart shown in FIG. 6 a tracking process using past tracking results will be described.
- T700 is the tracking processing start timing of the 0th frame.
- t702 and t704 the subject to be tracked is switched, and the control of the DL tracking unit 116 and the non-DL tracking unit 117 by the tracking control unit 113 is reviewed.
- the DL tracking unit 116 and the non-DL tracking unit 117 execute the tracking process for the frame according to the operation frequency. Further, the DL tracking unit 116 and the non-DL tracking unit 117 use the tracking result obtained for the previous frame for the tracking process of the frame to be processed.
- the processing accuracy of the DL tracking unit 116 tends to be higher than the processing accuracy of the non-DL tracking unit 117 based on the degree of similarity or the like. Therefore, for the DL tracking process and / or the non-DL tracking process of the frame to be processed, the tracking result of the DL tracking process for the frame immediately before the frame to be processed is used if available. If the subject to be tracked differs between the frame to be processed and the previous frame, the tracking result for the previous frame is not used.
- the non-DL tracking process 711 in the first frame uses the tracking result of the DL tracking process 710 in the 0th frame. Since the subject to be tracked differs between the first frame and the second frame, the tracking result of the first frame is not used in the DL tracking process 712 of the second frame.
- the DL tracking process 713 in the third frame uses the tracking result of the DL tracking process 712 in the second frame. Since the subject to be tracked differs between the 3rd frame and the 4th frame, the tracking result of the 3rd frame is not used in the non-DL tracking process 715 of the 4th frame. Since the DL tracking process 714 is not executed in the 4th frame, the non-DL tracking process 716 in the 5th frame uses the tracking result of the non-DL tracking process 715 in the 4th frame.
- FIG. 7 is a flowchart of the live view display operation of the image pickup apparatus 100 when the subject tracking function is enabled.
- the control unit 102 controls the image sensor 103 to take a picture of one frame and read out the image data.
- the first preprocessing unit 104 applies preprocessing to the image data read from the image sensor 103.
- the first preprocessing unit 104 stores the image data to which the preprocessing is applied in the display memory 107.
- the first image correction unit 109 starts applying a predetermined image correction process to the image data read from the display memory 107.
- the first image correction unit 109 determines whether or not all the image correction processing to be applied has been completed, and if it is determined that all the image correction processing to be applied has been completed, the image data to which the image correction processing has been applied is sent to the post-processing unit 114. Output. Further, if it is not determined that all the image correction processing is completed, the first image correction unit 109 continues the image correction processing.
- the post-processing unit 114 generates image data for display from the image data to which the image correction processing is applied by the first image correction unit 109, and outputs the image data to the information superimposition unit 120.
- the information superimposing unit 120 uses the image data for display generated by the post-processing unit 114, the image data of the tracking frame, and the image data indicating other information, and uses the tracking frame and other information in the captured image. Generates the data of the composite image on which the images of are superimposed. The information superimposing unit 120 outputs the composite image data to the display unit 121.
- the display unit 121 displays the composite image data generated by the information superimposing unit 120. This completes the live view display for one frame.
- FIG. 8A and 8B are flowcharts relating to the operation of the subject tracking function of the image pickup apparatus 100.
- the processing of S300 to S304 is the same as the processing of S200 to S204 of FIG. 7, except that the tracking memory 108 is used instead of the display memory 107 and the image correction processing is the image correction processing for tracking. Is.
- the detection unit 110 executes the detection process of the subject area for the image data for which all the image correction processes have been completed.
- the detection unit 110 stores the position and size, the object class, the number of subject areas belonging to the same object class, the reliability score, and the like for each of the detected subject areas (candidate areas) in the tracking memory 108 as a detection result. do.
- the target determination unit 111 determines one subject area to be tracked from the information of the candidate area stored in the tracking memory 108.
- the target determination unit 111 stores the determined subject area information of the tracking target in the tracking memory 108.
- the difficulty determination unit 112 calculates the difficulty score based on the information of the subject area to be tracked and the information of the candidate area, and based on the tracking candidate subject information read from the tracking memory 108. Further, the tracking control unit 113 determines the validity / invalidity of the DL tracking unit 116 and the non-DL tracking unit 117, and the operation frequency of the effective tracking unit based on the difficulty score.
- the tracking unit 115 determines whether or not the DL tracking unit 116 has executed the tracking process for the frame to be processed, and if it is determined to be executed, S309 is executed, and if it is not determined to be executed, S310 is executed. ..
- the tracking unit 115 adopts the tracking result of the DL tracking unit 116 by the selection unit 125 and outputs it to the information superimposing unit 120.
- the tracking unit 115 adopts the tracking result of the non-DL tracking unit 117 by the selection unit 125 and outputs it to the information superimposing unit 120. If the non-DL tracking unit 117 also does not execute the tracking process, the tracking result is not output or the tracking result of the previous frame is output.
- the tracking control unit 113 in S311 determines whether or not the subject area used for the tracking process of the processing target frame is an area related to the same subject as the subject area of the tracking target determined in S306. This determination can also be said to be a determination as to whether or not the subject to be tracked has been switched. For example, if the reliability score included in the tracking result in the frame to be processed is equal to or less than the threshold value, the tracking control unit 113 can determine that the subject to be tracked has been switched. It should be noted that this is an example, and the determination may be made by another method.
- the tracking control unit 113 executes S312 if it is determined that the subject to be tracked has been switched, and S313 if it is not determined that the subject to be tracked has been switched.
- the tracking control unit 113 Based on the difficulty score of the subject area to be tracked determined in S306 for the frame to be processed, the tracking control unit 113 enables / invalidates the DL tracking unit 116 and the non-DL tracking unit 117 with respect to the next frame, and operates the operation frequency. And decide.
- the information superimposing unit 120 generates data of a composite image on which the image of the tracking frame is superimposed based on the display image data and the tracking result adopted in S309 or S310.
- the processing of S314 and S315 is the same as the processing of S206 and S207.
- tracking is performed in an image pickup apparatus using a first tracking unit and a second tracking unit that has higher processing accuracy than the first tracking unit but has a large amount of calculation.
- the validity / invalidity of the first and / or the second tracking part is controlled based on the difficulty level of. Therefore, invalidate the tracking part where it is unlikely that good tracking results will be obtained, or invalidate the other tracking part when there is a high possibility that good tracking results will be obtained only with one processing unit. Therefore, it is possible to suppress power consumption while suppressing a decrease in tracking accuracy.
- the effect of suppressing power consumption is particularly large when a tracking unit that uses machine learning with a large amount of calculation such as deep learning is used as the second tracking unit.
- FIG. 9 is a block diagram showing a functional configuration example of the image pickup apparatus 100'which is an example of the image processing apparatus according to the second embodiment, and the same reference figures are used for the same configuration as the image pickup apparatus 100 described in the first embodiment. It is attached.
- the operation of the target determination unit, not the tracking unit is controlled by the difficulty score.
- the difficulty level determination unit 112 of the present embodiment is a process (target determination process) of determining a subject area to be tracked from the detected candidate areas based on the detection result of the detection unit 110 stored in the tracking memory 108. Calculate the difficulty score, which is an evaluation value indicating the difficulty level.
- the difficulty determination unit 112 can calculate the difficulty score in consideration of one or more factors that affect the difficulty of the target determination process.
- Factors that affect the difficulty of the target determination process include the size of the candidate area, the object class (type) of the candidate area, the number of candidate areas belonging to the same object class, the position of the candidate area in the image, and the like. However, it is not limited to these. A specific example of the calculation method of the difficulty score will be described later.
- the difficulty determination unit 112 outputs the calculated difficulty score to the target determination control unit 135.
- the target determination control unit 135 determines whether to enable or invalidate each of the plurality of target determination units of the target determination unit 130 based on the difficulty score calculated by the difficulty determination unit 112.
- the target determination unit 130 has a plurality of target determination units having different calculation loads and target determination accuracy.
- the target determination unit 130 has a DL target determination unit 131 that performs target determination processing using deep learning (DL), and a non-DL target determination unit 132 that performs target determination processing without using DL. ..
- the DL target determination unit 131 has higher processing accuracy than the non-DL target determination unit 132, but has a larger calculation load than the non-DL target determination unit 132.
- the target determination control unit 135 determines whether to enable or invalidate each of the DL target determination unit 131 and the non-DL target determination unit 132. When one candidate area is detected and when the candidate area is not detected, the target determination control unit 135 invalidates both the DL target determination unit 131 and the non-DL target determination unit 132.
- the target determination unit 130 determines a subject area (main subject area) to be tracked from the candidate areas detected by the detection unit 110.
- the target determination unit 130 stores information for identifying the determined subject area in the tracking memory 108.
- the target determination unit 130 has a DL target determination unit 131 that performs target determination processing using deep learning (DL), and a non-DL target determination unit 132 that performs target determination processing without using DL. Then, of the DL target determination unit 131 and the non-DL target determination unit 132, the target determination unit enabled by the target determination control unit 135 outputs information for specifying the determined subject area.
- DL target determination unit 131 that performs target determination processing using deep learning (DL)
- a non-DL target determination unit 132 that performs target determination processing without using DL.
- the DL target determination unit 131 determines a subject area to be tracked from a plurality of candidate areas using a learned multi-layer neural network.
- the multi-layer neural network may be, for example, a convolutional neural network (CNN).
- the learning of the multi-layer neural network is for learning, for example, for each candidate area, the size information, the position information in the screen, the object class information, and the reliability are used as input data, and the main subject area which is the correct answer is used as the teacher data. It can be carried out using data.
- the teacher data can be prepared, for example, by looking at the frame to be processed and determining the main subject area that is the correct answer.
- the learning of the multi-layer neural network may be performed by another device or may be performed by the image pickup device 100'.
- the DL target determination unit 131 is set to the learning mode, and the learning data (set of input data and teacher data) is supplied from the recording medium 119 to the DL target determination unit 131, for example. You can learn the network.
- the learning may be performed using a known optimization algorithm until the value of the loss function becomes less than a predetermined value.
- the parameters of the multi-layer neural network whose learning is completed by another device may be supplied to the DL target determination unit 131 through, for example, the recording medium 119.
- the multi-layer neural network to be learned by another device has the same configuration as the multi-layer neural network mounted on the DL target determination unit 131. Further, the learning method may be the same as in the case of learning with the image pickup apparatus 100'.
- the DL target determination unit 131 gives the size information, the position information in the screen, the object class information, and the reliability of each of the candidate areas detected by the detection unit 110 to the trained multi-layer neural network as test data.
- the trained multi-layer neural network outputs, for example, the probability of being the main subject area for each candidate area.
- the DL target determination unit 131 determines the candidate area having the highest output of the multilayer neural network as the subject area (main subject area) to be tracked among the plurality of candidate areas detected by the detection unit 110. Then, the DL target determination unit 131 outputs the determined size information of the main subject area, the position information in the screen, and the object class information.
- the non-DL target determination unit 132 determines the subject area to be tracked from a plurality of candidate areas by a method that does not use deep learning.
- the non-DL target determination unit can determine the subject area to be tracked in the same manner as the target determination unit 111 of the first embodiment.
- the non-DL target determination unit 132 stores information for identifying the determined subject area in the tracking memory 108.
- the selection unit 133 adopts one of the information of the main subject area output by the DL target determination unit 131 and the information of the main subject area output by the non-DL target determination unit 132.
- the selection unit 133 determines, for example, which main subject area information is to be adopted based on the position information of the main subject area output by the DL target determination unit 131 and the non-DL target determination unit 132.
- the selection unit 133 can adopt, for example, the information of the main subject area having a shorter distance from the focus detection area currently set by the image pickup apparatus 100'(the one closer to the focus detection area).
- the selection unit 133 stores the information of the adopted main subject area in the tracking memory 108.
- the target determination unit 130 determines that one candidate area or no candidate area has been detected. Then, if there is only one candidate area, the target determination unit 130 determines the candidate area as the main subject area. Further, when no candidate area is detected, the target determination unit 130 notifies the tracking unit 134 of the absence of the main subject and stops the tracking process.
- the tracking unit 134 estimates the subject area to be tracked from the image data of the frame (current frame) to be processed stored in the tracking memory 108, and the tracking result is the position and size of the estimated subject area in the frame. Ask as.
- the tracking unit 134 can estimate the subject area to be tracked based on the similarity of the color configurations, for example, as in the non-DL tracking unit 117 in the first embodiment.
- the color composition information of the subject area to be tracked may be updated according to the subject area to be tracked in the past frame, and the tracking process of the next frame may be executed.
- the tracking unit 134 may estimate the subject area of the tracking target in the current frame by using pattern matching using the subject area of the tracking target in the past frame as a template.
- the template used for pattern matching may be updated every frame in the subject area of the tracking target determined by the target determination unit 130.
- the tracking unit 134 may estimate the position and size of the subject area to be tracked in the current frame by using the learned multi-layer neural network. The tracking unit 134 outputs a position, a size, and a reliability score for the subject area to be tracked estimated for the current frame.
- the information superimposing unit 120 generates an image of the tracking frame based on the size of the main subject area included in the tracking result output by the tracking unit 134. Then, the information superimposing unit 120 outputs the composite image data generated in the same manner as in the first embodiment to the display unit 121.
- FIG. 10 is a diagram showing an example of live view display in the display unit 121 using the display image data output by the post-processing unit 114.
- the broken line 1004 indicates the central region of the image and is not included in the actual display image data.
- the images 1010 and 1020 show display examples of composite image data in which the image of the tracking frame 1015 is superimposed on the display image data.
- the image 1010 is an image one frame after the image 1000, and the image 1020 is an image after a plurality of frames from the image 1010.
- the target determination unit 130 determines the region of the automobile 1003 closest to the central region indicated by the broken line 1004 as the subject region to be tracked.
- the region of the automobile 1003 is tracked in the image 1010 one frame later, and the tracking frame 1015 is superimposed and displayed so as to surround the region of the automobile 1003. Further, in the image 1020 after a plurality of frames, the tracking frame 1015 is superimposed and displayed on the area of the automobile 1003.
- Images 1030 and 1040 show an example of live view display when there is only one candidate area.
- Image 1040 is an image one frame after image 1030.
- image 1030 automobile 1031 is detected as the only candidate region.
- the target determination control unit 135 invalidates both the DL target determination unit 131 and the non-DL target determination unit 132 of the target determination unit 130.
- the target determination unit 130 determines the region of the automobile 1031 as the subject region to be tracked.
- the tracking frame 1015 is superimposed and displayed so as to surround the area of the automobile 1031 to be tracked.
- the shape of the tracking frame 1015 is not limited to the combination of the four hollow hook shapes.
- the difficulty determination unit 112 initializes the difficulty score to 0.
- the difficulty determination unit 112 determines whether or not the candidate region exists in the center of the image. For example, if the difficulty determination unit 112 has a candidate region including a part or all of the region in the center of the screen shown by the broken line 1004 in FIG. 10, the difficulty determination unit 112 determines that the candidate region exists in the center of the image. Further, the difficulty determination unit 112 determines that the candidate region does not exist in the center of the image, for example, if the candidate region including a part or all of the region in the center of the screen shown by the broken line 1004 does not exist. Then, the difficulty determination unit 112 executes S1103 if it is determined that the candidate region exists in the center of the image, and executes S1104 if it is determined that the candidate region exists in the center of the image.
- the difficulty determination unit 112 makes the same determination for the focus detection area instead of the area in the center of the screen. Then, the difficulty determination unit 112 executes S1103 if it is determined that the candidate region exists in the focus detection region, and executes S1104 if it is determined that the candidate region exists in the focus detection region.
- the difficulty determination unit 112 adds 1 point (+1) to the difficulty score.
- the difficulty determination unit 112 determines that it is difficult to determine the subject area to be tracked, and adds points to the difficulty score (increases the difficulty). Then, the difficulty determination unit 112 executes S1105.
- the difficulty determination unit 112 maintains the difficulty score.
- the difficulty determination unit 112 determines that it is easy to determine the subject area to be tracked, and does not add points to the difficulty score (does not increase the difficulty). Then, the difficulty determination unit 112 executes S1105.
- the difficulty determination unit 112 determines whether or not the number of types of candidate regions (types of object classes) is equal to or greater than a preset threshold value N (whether or not N or more types of candidate regions are detected). .. For example, when a candidate area associated with a human object class, a dog object class, a cat object class, and a car object class is detected, there are four types of candidate areas. When the threshold value N is 3, the difficulty determination unit 112 determines that the type of the candidate region is the threshold value N or more, and executes S1106. On the other hand, when the candidate area associated with the dog object class and the cat object class is detected, there are two types of candidate areas. When the threshold value N is 3, the difficulty determination unit 112 determines that the type of the candidate region is not the threshold value N or more, and executes S1107.
- the difficulty determination unit 112 adds points to the difficulty score (number of types of candidate regions-N + 1). When N or more types of candidate areas are detected, the difficulty determination unit 112 determines that it is difficult to determine the subject area to be tracked, and the more types there are, the more points are added to the difficulty score (increasing the difficulty). Then, the difficulty determination unit 112 executes S1108.
- the difficulty determination unit 112 maintains the difficulty score.
- the difficulty determination unit 112 determines that it is easy to determine the subject area to be tracked, and does not add points to the difficulty score (does not increase the difficulty). Then, the difficulty determination unit 112 executes S1108.
- S1108 and S1115 indicate that the processing in between is repeatedly executed. Specifically, the processes of S1109 to S1114 are repeatedly executed as many times as the number of detected candidate region types. For example, if four types of candidate regions are detected, the processes S1109 to S1114 are repeated four times for each type of candidate region.
- the difficulty determination unit 112 determines whether or not the number of candidate regions associated with the same type (object class) is equal to or greater than the preset threshold value M. For example, it is assumed that four candidate areas of the dog object class and two candidate areas of the cat object class are detected by the detection unit 110, and the threshold value M is 3. In this case, the processes S1109 to S1114 are executed once for the dog object class and once for the cat object class.
- the difficulty determination unit 112 determines in S1109 that the number of candidate areas of the dog object class is 4 or more, and executes S1110.
- the difficulty determination unit 112 determines that the number of candidate regions of the cat object class is not equal to or greater than the threshold value M, and executes S1111.
- the difficulty determination unit 112 adds points to the difficulty score (number of candidate areas of the object class to be processed-M + 1). When the number of candidate areas of the same object class is the threshold value M or more, it is determined that it is difficult to determine the subject area to be tracked, and points are added to the difficulty score (increasing the difficulty). Then, the difficulty determination unit 112 executes S1112.
- the difficulty determination unit 112 maintains the difficulty score. When the number of candidate areas of the same object class is less than the threshold value M, it is determined that the subject area to be tracked is easy to determine, and no points are added to the difficulty score (the difficulty is not increased). Then, the difficulty determination unit 112 executes S1112.
- the difficulty determination unit 112 determines whether or not the variance of the size of the candidate area of the same object class is less than the preset threshold value L.
- the size of the candidate area may be, for example, the product of the number of horizontal pixels and the number of vertical pixels of the candidate area.
- the size of the candidate area is a value ( ⁇ 1) normalized by the size of the largest candidate area in the candidate area of the same object class. Using the normalized magnitude, the variance can be calculated as the mean of the squares of the difference between the size of each candidate region and the mean of the size.
- the preset threshold value L is 0.1.
- the difficulty determination unit 112 has to say that the variance of the size of the candidate area of the same object class is not less than L. The determination is made and S1114 is executed.
- the difficulty determination unit 112 has the variance of the size of the candidate area of the same object class less than L. Is determined, and S1113 is executed.
- the difficulty determination unit 112 adds 1 point to the difficulty score. If the variance of the size of the candidate areas of the same object class is less than L, it is considered that the candidate areas for the same type of subject have similar sizes. Therefore, the difficulty determination unit 112 determines that it is difficult to determine the subject area to be tracked for the object class to be processed, and adds points to the difficulty score (increases the difficulty). Then, the difficulty determination unit 112 executes S1115.
- the difficulty determination unit 112 maintains the difficulty score. If the variance of the size of the candidate area of the same object class is not less than L, it is considered that the size of the candidate area for the same type of subject varies. Therefore, the difficulty determination unit 112 determines that it is easy to determine the subject area to be tracked for the object class to be processed, and does not add points to the difficulty score (does not increase the difficulty). Then, the difficulty determination unit 112 executes S1115.
- the difficulty determination unit 112 executes S1116.
- the difficulty determination unit 112 in S1116 outputs the calculated difficulty score to the target determination control unit 135.
- the difficulty score calculation method described here is only an example, and the difficulty score can be calculated by various other methods. For example, instead of adding 1 point to the difficulty score in S1103, a value obtained by multiplying a preset gain coefficient may be added. Further, the difficulty score may be calculated using only the number of types of candidate areas and the number of candidate areas (belonging to the same object class) for the same type of subject. Alternatively, the difficulty score may be calculated based on only one item. Further, the difficulty score may be set to two values (0 or 1), and the DL target determination unit 131 may be enabled with a difficulty score of 1, and the DL target determination unit 131 may be invalidated with a difficulty score of 0.
- the difficulty determination unit 112 calculates the difficulty score by the operation described with reference to FIGS. 11A and 11B.
- the target determination control unit 135 determines whether or not the difficulty score is larger than the preset threshold value A, and if it is determined to be large, S1203 is executed, and if it is not determined, S1202 is executed.
- the target determination control unit 135 determines whether or not the difficulty score is larger than the preset threshold value B ( ⁇ A), and if it is determined to be large, S1204 is executed, and if it is not determined, S1205 is executed.
- the target determination control unit 135 determines that the DL target determination unit 131 is valid and the non-DL target determination unit 132 is invalid.
- the difficulty score is larger than A, the difficulty of target determination is high. Therefore, the target determination control unit 135 determines to use the DL target determination unit 131 having better performance than the non-DL target determination unit 132. Further, the target determination control unit 135 determines that it is unlikely that a good result can be obtained even if the non-DL target determination unit 132 is used, and determines that the non-DL target determination unit 132 is not used.
- the target determination control unit 135 determines to invalidate the DL target determination unit 131 and enable the non-DL target determination unit 132. If the difficulty score is A or less and greater than B, the difficulty of target determination is medium. Therefore, the target determination control unit 135 determines that there is a high possibility that a sufficiently accurate result can be obtained by the non-DL target determination unit 132, and decides to use only the non-DL target determination unit 132. Power consumption can be reduced by disabling the DL target determination unit 131, which consumes more power than the non-DL target determination unit 132.
- the target determination control unit 135 determines to invalidate the DL target determination unit 131 and invalidate the non-DL target determination unit 132.
- the difficulty score is B or less, the difficulty of target determination is low. Therefore, the target determination control unit 135 determines that the target can be determined without using the DL target determination unit 131 and the non-DL target determination unit 132, and invalidates both the DL target determination unit 131 and the non-DL target determination unit 132. .. Thereby, the power consumption can be further reduced.
- the subject area to be tracked can be determined without using the DL target determination unit 131 and the non-DL target determination unit 132, for example, when one of the detected candidate areas is not detected. .. It also applies when one of the plurality of detected candidate areas is very large and exists in the center of the screen or the focus detection area.
- the operation of the target determination control unit 135 described here is merely an example.
- the control does not have to be different for each difficulty score.
- the non-DL target determination unit may be enabled as in S1204.
- S1204 may be executed immediately.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid without using the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid by using the detected object class and the number of candidate regions belonging to the same object class. It shall be.
- the DL target determination unit 131 has a multi-layer neural network trained by learning data regarding a specific scene, for example, a sports scene using a ball.
- the training data is a set of input data and corresponding teacher data.
- the input data the size information of each of the plurality of candidate areas extracted from the image data of the sport using the ball, the position information in the screen, the object class information, and the reliability can be used.
- the teacher data whose correct answer is the candidate area belonging to the human object class can be used.
- the DL target determination unit 131 having a multi-layer neural network that has undergone such learning can perform highly accurate target determination processing when a sports scene using a ball is imaged by the image pickup device 100'. Further, the image data used for generating the input data can be limited to the image data in which the number of candidate areas of the human object class is 4 or more. As a result, the DL target determination unit 131 can perform more accurate target determination processing on an image of a scene including four or more "people" in a sport using a ball.
- the target determination control unit when the DL target determination unit 131 can perform more accurate target determination processing on an image of a scene containing four or more "people" in a sport using a ball.
- the operation of 135 will be described.
- the target determination control unit 135 determines whether or not the detection unit 110 has detected four or more candidate areas of the human object class and one or more candidate areas of the ball object class.
- the target determination control unit 135 executes S1304 if it is determined that four or more candidate areas of the human object class and one or more candidate areas of the ball object class are detected, and S1302 if it is not determined.
- the target determination control unit 135 determines whether or not the detection unit 110 has detected three candidate areas of the human object class and one or more candidate areas of the ball object class.
- the target determination control unit 135 executes S1305 if it is determined that three or more candidate areas of the human object class and one or more candidate areas of the ball object class are detected, and S1303 if it is not determined.
- the target determination control unit 135 determines whether or not two candidate areas of the human object class are detected by the detection unit 110.
- the target determination control unit 135 executes S1306 if it is determined that two or more candidate regions of the human object class are detected, and S1307 if it is not determined.
- the target determination control unit 135 determines that the DL target determination unit 131 is valid and the non-DL target determination unit 132 is invalid.
- the scene is similar to the scene used for learning the multi-layer neural network of the DL target determination unit 131. Therefore, the target determination control unit 135 determines to use only the DL target determination unit 131 as the DL target determination unit 131 can optimally determine the target.
- the target determination control unit 135 determines to enable the DL target determination unit 131 and to enable the non-DL target determination unit 132.
- the scene is similar to the scene used for learning the multi-layer neural network of the DL target determination unit 131. Not a similar scene.
- the target determination control unit 135 decides to use both the DL target determination unit 131 and the non-DL target determination unit 132 in order to realize a highly accurate target determination process.
- the target determination control unit 135 determines to invalidate the DL target determination unit 131 and enable the non-DL target determination unit 132.
- the target determination control unit 135 determines that the non-DL target determination unit 132 is likely to obtain a sufficiently accurate result, and decides to use only the non-DL target determination unit 132. Power consumption can be reduced by disabling the DL target determination unit 131, which consumes more power than the non-DL target determination unit 132.
- the target determination control unit 135 determines to invalidate both the DL target determination unit 131 and the non-DL target determination unit 132. If no or no candidate area of the human object class is detected, the difficulty level of target determination is the lowest. Therefore, the target determination control unit 135 determines that the subject area to be tracked can be determined without using the DL target determination unit 131 and the non-DL target determination unit 132, and determines the DL target determination unit 131 and the non-DL target determination unit 131. Disable both parts 132. Thereby, the power consumption can be further reduced.
- the target determination unit 130 does not use the DL target determination unit 131 and the non-DL target determination unit 132, determines the only detected candidate area as the subject area to be tracked, and outputs information. If the candidate area is not detected, the target determination unit 130 outputs, for example, the determination result one frame before again.
- the target determination control unit 135 considers whether or not the target image is an image of a scene capable of accurate target determination by the DL target determination unit 131 and the non-DL target determination unit 132, and enables the target determination. The part can be decided.
- the DL target determination unit 131 can switch the scenes that can accurately determine the target. It may be configured as.
- the learned parameters corresponding to the scene captured by the image pickup apparatus 100' can be set and used in the multi-layer neural network.
- the non-DL target determination unit 132 may perform target determination based on the user's line of sight. For example, the non-DL target determination unit 132 can determine a candidate area including the image coordinates of interest of the user as a subject area to be tracked.
- the target determination control unit 135 determines to enable the DL target determination unit 131 while the non-DL target determination unit 132 is set to perform target determination based on the user's line of sight, the target determination unit 132 determines the target.
- the control unit 135 can invalidate the non-DL target determination unit 132. This is because it is considered unlikely that the user's line of sight will be fixed in the main subject area in a scene where the target determination unit 131 is enabled and the target determination difficulty is high.
- FIG. 14 is a timing chart showing an example of the operation timing of each of the above-mentioned parts when the subject tracking function including the target determination process is performed by the image pickup apparatus 100'.
- t1400, t1401, t1402, t1403, and t1404 are timings at which the detection unit 110 starts the detection process in each frame.
- the detection unit 110 starts the detection process 1410 for the first frame (0th frame).
- the detection unit 110 detects one or more candidate areas and their object classes for the image data in the 0th frame.
- the difficulty determination unit 112 executes the difficulty determination process 1411 as described with reference to FIGS. 11A and 11B based on the information of the candidate region detected in the image data of the 0th frame, and calculates the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid for the image data in the 0th frame based on the difficulty score calculated by the difficulty determination process 1411.
- the target determination unit (DL target determination unit 131) that executes the target determination process is invalidated by the target determination control unit 135. Shown.
- the target determination unit (non-DL target determination unit 132) that executes the target determination process is enabled by the target determination control unit 135. Is shown.
- the tracking unit 134 executes the tracking process 1414 targeting the subject area of the tracking target output from the target determination unit 130.
- the tracking unit 134 estimates the position of the subject area to be tracked in the image data to be processed. Then, the tracking unit 134 outputs the information (position, size, etc.) of the subject area to be tracked in the estimated image data of the 0th frame to the information superimposing unit 120 as the tracking result.
- the tracking process 1414 is shown by a broken line because the subject area to be tracked is not determined at the 0th frame and the tracking process is not actually performed.
- the information superimposition unit 120 By the tracking frame superimposition process 1415, the information superimposition unit 120 generates composite image data in which the tracking frame based on the result of the tracking process 1414 is superimposed on the display image data of the 0th frame.
- the information superimposing unit 120 is shown by a broken line because the subject area to be tracked is not determined in the 0th frame and the tracking frame is not actually superposed.
- the display unit 121 displays the composite image data of the 0th frame by the display process 1416. As described above, since the tracking frame superimposition process 1415 is not actually performed, the display unit 121 displays the display image data on which the tracking frame is not superposed.
- the detection unit 110 detects one or more candidate areas and their object classes for the image data in the first frame.
- the difficulty determination unit 112 executes the difficulty determination process 1421 based on the information of the candidate area detected in the image data of the first frame, and calculates the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid for the image data in the first frame based on the difficulty score calculated by the difficulty determination process 1421. Here, it is assumed that the target determination control unit 135 has decided to enable the DL target determination unit 131 and invalidate the non-DL target determination unit 132.
- the DL target determination process 1422 is executed by the DL target determination unit 131.
- the target determination unit 130 outputs information on the subject area of the tracking target determined by the DL target determination unit 131.
- the tracking unit 134 estimates the position where the subject area of the tracking target determined by the non-DL target determination process 1413 for the image in the 0th frame exists in the image data in the 1st frame. Then, the tracking unit 134 outputs the information (position, size, etc.) of the subject area to be tracked in the estimated image data of the first frame to the information superimposing unit 120 as the tracking result.
- the information superimposing unit 120 In the tracking frame superimposing process 1425, the information superimposing unit 120 generates composite image data in which the tracking frame based on the result of the tracking process 1424 is superimposed on the display image data of the first frame.
- the display unit 121 displays the composite image data of the first frame by the display process 1426.
- the detection unit 110 detects one or more candidate areas and their object classes for the image data in the second frame.
- the difficulty determination unit 112 executes the difficulty determination process 1431 based on the information of the candidate region detected in the image data of the second frame, and calculates the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid for the image data in the second frame based on the difficulty score calculated by the difficulty determination process 1431. Here, it is assumed that only one candidate region is detected in the detection process 1430, and the target determination control unit 135 determines to invalidate both the DL target determination unit 131 and the non-DL target determination unit 132.
- the DL target determination process 1432 and the non-DL target determination process 1433 are not performed and are shown by broken lines.
- the target determination unit 130 determines the only detected candidate area as the subject area to be tracked.
- the tracking unit 134 estimates the position where the subject area of the tracking target determined by the DL target determination process 1422 for the image in the first frame exists in the image data in the second frame. Then, the tracking unit 134 outputs the information (position, size, etc.) of the subject area to be tracked in the estimated second frame image data to the information superimposing unit 120 as the tracking result.
- the information superimposing unit 120 In the tracking frame superimposing process 1435, the information superimposing unit 120 generates composite image data in which the tracking frame based on the result of the tracking process 1434 is superimposed on the display image data of the second frame.
- the display unit 121 displays the composite image data of the second frame by the display process 1436.
- the detection unit 110 detects one or more candidate areas and their object classes for the image data in the third frame.
- the difficulty determination unit 112 executes the difficulty determination process 1441 based on the information of the candidate area detected in the image data of the third frame, and calculates the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid for the image data in the third frame based on the difficulty score calculated by the difficulty determination process 1441. Here, it is assumed that the target determination control unit 135 determines to enable both the DL target determination unit 131 and the non-DL target determination unit 132.
- the DL target determination unit 131 executes the DL target determination process 1442, and the non-DL target determination unit 132 executes the non-DL target determination process 1443. Then, one of the results of the DL target determination process 1442 and the non-DL target determination process 1443 is selected by the selection unit 133, and is output as information on the subject area of the tracking target determined for the third frame. For example, if the two subject areas determined by the respective target determination processes are the same, the selection unit 133 selects one of the predetermined areas. On the other hand, when the two subject areas determined by the respective target determination processes are different, the selection unit 133 selects one of the determination results according to predetermined conditions. The selection unit 133 can select, for example, a determination result indicating a larger subject area, a subject area whose center of gravity position is closer to the center of the image, or a subject area whose center of gravity position is closer to the focus detection area.
- the tracking unit 134 in the tracking process 1444 estimates the position where the subject area to be tracked determined for the image in the second frame exists in the image data in the third frame. Then, the tracking unit 134 outputs the information (position, size, etc.) of the subject area to be tracked in the estimated image data of the third frame to the information superimposing unit 120 as the tracking result.
- the information superimposing unit 120 In the tracking frame superimposing process 1445, the information superimposing unit 120 generates composite image data in which the tracking frame based on the result of the tracking process 1444 is superimposed on the display image data of the third frame.
- the display unit 121 displays the composite image data of the third frame by the display process 1446.
- the detection unit 110 detects one or more candidate areas and their object classes for the image data in the fourth frame.
- the difficulty determination unit 112 executes the difficulty determination process 1451 based on the information of the candidate area detected in the image data of the fourth frame, and calculates the difficulty score.
- the target determination control unit 135 determines whether the DL target determination unit 131 and the non-DL target determination unit 132 are valid or invalid for the image data in the fourth frame based on the difficulty score calculated by the difficulty determination process 1451. Here, it is assumed that the target determination control unit 135 determines to enable both the DL target determination unit 131 and the non-DL target determination unit 132.
- the DL target determination unit 131 executes the DL target determination process 1452
- the non-DL target determination unit 132 executes the non-DL target determination process 1453.
- the selection unit 133 selects and outputs one of the determination results as described with respect to the processing of the third frame.
- the tracking unit 134 in the tracking process 1454 estimates the position where the subject area to be tracked determined for the image in the third frame exists in the image data in the fourth frame. Then, the tracking unit 134 outputs the information (position, size, etc.) of the subject area to be tracked in the estimated image data of the fourth frame to the information superimposing unit 120 as the tracking result.
- the information superimposition unit 120 In the tracking frame superimposition process 1455, the information superimposition unit 120 generates composite image data in which the tracking frame based on the result of the tracking process 1454 is superimposed on the display image data of the fourth frame.
- the display unit 121 displays the composite image data of the fourth frame by the display process 1456.
- the timing chart in FIG. 14 is only an example, and various changes can be made.
- the detection process and the difficulty determination process are executed for each frame, but the execution frequency may be reduced. Power consumption can be reduced by executing once for each of a plurality of frames.
- the subject area to be tracked is updated with the result of the target determination process for the frame in which the detection process and the difficulty determination process are executed, and the result of the target determination process for the frame in which the detection process and the difficulty determination process are not executed is updated. It does not have to be used for.
- 15A and 15B are flowcharts relating to the operation control of the target determination unit used for determining the subject area to be tracked. Since the processes of S300 to S305 are the same as the processes described in the first embodiment with reference to FIG. 8A, the description thereof will be omitted.
- the image correction process is a correction process for tracking and detection.
- the difficulty determination unit 112 calculates a difficulty score indicating the difficulty of target determination based on the detection result of the candidate region in S305, for example, as described with reference to FIGS. 11A and 11B.
- the difficulty determination unit 112 outputs the calculated difficulty score to the target determination control unit 135.
- the target determination control unit 135 determines whether or not the difficulty score is equal to or higher than the preset first threshold value.
- the target determination control unit 135 executes S1503 if it is determined that the difficulty score is equal to or higher than the first threshold value, and executes S1504 if it is not determined that the difficulty score is equal to or higher than the first threshold value.
- the target determination control unit 135 determines to enable the DL target determination unit 131, and executes control to enable the DL target determination unit 131. In S1504, the target determination control unit 135 determines to invalidate the DL target determination unit 131, and executes control to invalidate the DL target determination unit 131. Further, the target determination control unit 135 executes S1505.
- the target determination control unit 135 determines whether or not the difficulty score is less than the preset second threshold value.
- the second threshold value is smaller than the first threshold value (less difficult).
- the target determination control unit 135 executes S1506 if it is determined that the difficulty score is less than the second threshold value, and executes S1507 if it is not determined that the difficulty score is less than the second threshold value.
- the target determination control unit 135 determines to invalidate the non-DL target determination unit 132, and executes control to invalidate the non-DL target determination unit 132. In S1507, the target determination control unit 135 determines to enable the non-DL target determination unit 132, and executes control to enable the non-DL target determination unit 132.
- the target determination unit 130 selects a valid target determination unit determination result in the selection unit 133.
- the target determination unit 130 selects any one determination result in the selection unit 133 if the respective determination results are the same subject area. .. When the determination results are different, the target determination unit 130 selects one of the determination results in the selection unit 133 based on a predetermined condition as described above. The target determination unit 130 selects, for example, a determination result indicating a subject area having a center position closer to the center of the screen by the selection unit 133. The target determination unit 130 stores the determination result selected by the selection unit 133 in the tracking memory 108 as information on the subject area to be tracked.
- the target determination unit 130 confirms the number of candidate regions detected in S305.
- the target determination unit 130 determines the detected candidate area as the subject area to be tracked, and stores the information in the tracking memory 108.
- the target determination unit 130 may store the information of the subject area of the tracking target output immediately before in the tracking memory 108, or may disable the tracking process of the next frame.
- FIG. 16 is a flowchart relating to the operation of the subject tracking function of the image pickup apparatus 100', and the same reference numbers are attached to the same processing as in FIGS. 15A and 15B. The description of the processing of S300 to S304 will be omitted.
- the tracking unit 134 determines whether or not the subject area to be tracked is determined in the processing of S1508 for the frame immediately before the frame to be processed. The tracking unit 134 executes S1602 if it is determined that the subject area to be tracked is determined in the previous frame, and executes S1603 if it is not determined that the subject area to be tracked is determined.
- the tracking unit 134 updates the information of the subject area to be tracked with the information determined for the previous frame. Further, when the tracking process is invalidated in the previous frame, the tracking unit 134 executes the control to start the tracking process. This is because, as described above, if no candidate region is detected, the tracking process for the next frame can be invalidated.
- the tracking unit 134 determines whether or not the tracking continuation state is in effect.
- the tracking continuation state is a state in which the tracking process is effective and the subject area to be tracked is determined in the previous frame.
- the tracking unit 134 executes S1604 if it is determined to be in the tracking continuation state, and executes S314 if it is not determined to be in the tracking continuation state.
- the tracking unit 134 executes the tracking process of the determined subject area. As a tracking result, the tracking unit 134 outputs the estimated size of the subject area and the position in the image to the information superimposing unit 120.
- the target determination unit which is unlikely to be able to determine the target accurately, is invalidated, or the other target determination unit is invalidated when it is highly possible that only one target determination unit can accurately determine the target. As a result, it is possible to suppress power consumption while suppressing a decrease in target determination accuracy.
- the target determination process is generally executed for each consecutive frame, when a target determination unit that uses machine learning with a large amount of calculation such as deep learning is used as the second target determination unit, the effect of suppressing power consumption is achieved. Is particularly large.
- FIG. 17 is a block diagram showing a functional configuration example of the image pickup apparatus 1700 as an example of the image processing apparatus according to the third embodiment. Since the optical system 1701 and the image pickup element 1704 may have the same configuration as the optical system 101 and the image pickup element 103 of the image pickup apparatus 100, the description thereof will be omitted.
- a mechanical shutter 1703 (hereinafter, simply referred to as a shutter) is provided between the optical system 1701 and the image sensor 1704, but the shutter 1703 is not essential. The operation of the shutter 1703 is controlled by the system control unit 1740. The shutter speed corresponds to the exposure time of the image sensor 1704.
- the optical control unit 1702 calculates the defocus amount for each of the plurality of focus detection regions by capturing the optical image formed by the optical system 1701 with, for example, a phase difference AF sensor.
- the focal point detection region may be, for example, a rectangular region predetermined in the imaging surface.
- the optical control unit 1702 determines a focus detection region for focusing the optical system 1701 based on the calculated defocus amount and the tracking result by the tracking unit 1718. Then, the optical control unit 1702 drives the focus lens of the optical system 1701 based on the defocus amount calculated for the determined focus detection region. As a result, the optical system 1701 is in focus on the subject in the determined focus detection region.
- the image sensor 1704 outputs the image data obtained by the image pickup to the first preprocessing unit 1711 and the second preprocessing unit 1712 of the image processing unit 1710.
- the first preprocessing unit 1711 processes the image data in the same manner as the first preprocessing unit 104, and stores the image data in the display memory 1714.
- the first image correction unit 1716 applies the same processing as the first image correction unit 109 to the image data, and outputs the image data to which the processing is applied to the first post-processing unit 1719.
- the first post-processing unit 1719 generates image data for recording and image data for display in the same manner as the post-processing unit 114.
- the first post-processing unit 1719 supplies recording image data to the recording unit 1720. Further, the first post-processing unit 1719 supplies display image data to the information superimposing unit 1721.
- the recording unit 1720 records the recording image data generated by the first post-processing unit 1719 on the recording medium 1730.
- the recording medium 1730 may be, for example, a semiconductor memory card, a built-in non-volatile memory, or the like.
- the second preprocessing unit 1712 applies color interpolation processing to the image data and stores it in the tracking memory 1715. Also in this embodiment, the tracking memory 1708 and the display memory 107 may be implemented as different address spaces in the same memory space. Further, the second preprocessing unit 1712 may apply a reduction process for reducing the number of pixels as necessary in order to reduce the processing load. Although the first pretreatment unit 1711 and the second pretreatment unit 1712 are described here as separate functional blocks, a common pretreatment unit may be used.
- the second image correction unit 1713 applies processing to the image data stored in the tracking memory 1708 in the same manner as the second image correction unit 106.
- the second image correction unit 1713 stores the image data to which the processing is applied in the tracking memory 1708.
- the functional blocks related to the subject tracking function such as the second preprocessing unit 1712 and the second image correction unit 1713 do not have to operate when the subject tracking function is not implemented.
- the image data to which the subject tracking function is applied is moving image data taken for live view display or recording.
- the moving image data has a predetermined frame rate such as 30 fps, 60 fps, and 120 fps.
- the detection unit 1717 detects one or more predetermined candidate subject areas (candidate areas) from the image data for one frame.
- the detection unit 1717 is an object class that indicates the position and size in the frame and the type of candidate subject (car, airplane, bird, insect, human body, head, pupil, cat, dog, etc.) for each detected area. And its reliability. Also, the number of detected candidate areas is calculated for each object class.
- the detection unit 1717 has a plurality of detection units having different calculation loads and target determination accuracy. Specifically, the detection unit 1717 has a DL detection unit 1722 that performs target determination processing using deep learning (DL), and a non-DL detection unit 1723 that performs target determination processing without using DL.
- the DL detection unit 1722 has higher processing accuracy than the non-DL detection unit 1723, but has a larger calculation load than the non-DL detection unit 1723.
- the DL detection unit 1722 and the non-DL detection unit 1723 respectively detect the candidate area, associate the object class with the type of the candidate area and its reliability, and count the candidate area for each object class. Further, the DL detection unit 1722 and the non-DL detection unit 1723 obtain information on the size and position of the detected candidate area.
- the DL detection unit 1722 can be realized by a multi-class classifier using machine learning.
- the DL detection unit 1722 can be implemented by using a multi-class logistic regression, a support vector machine, a random forest, a neural network, or the like.
- the non-DL detection unit 1723 detects a candidate region by a known method that does not use machine learning.
- the non-DL detection unit 1723 detects a candidate area by using, for example, pattern matching using a template prepared in advance for each object class, feature detection using feature information prepared in advance for each object class, detection based on distance information, and the like. can do.
- the information superimposing unit 1721 Similar to the information superimposing unit 120, the information superimposing unit 1721 generates an image of the tracking frame based on the center position and size of the subject area to be tracked, which is output by the detecting unit 1717 or the tracking unit 1718. Then, the information superimposing unit 1721 generates composite image data in which the image of the tracking frame is superimposed on the display image data output by the first post-processing unit 1719. The information superimposing unit 1721 outputs the composite image data to the display unit 1731.
- the non-volatile memory 1753 is, for example, a rewritable non-volatile memory such as EEPROM, and stores programs, setting values, GUI data, etc. that can be executed by the CPU of the system control unit 1740.
- the system memory 1754 is, for example, a RAM, which is used to read a program executed by the CPU of the system control unit 1740 and to store a value required during the execution of the program.
- the system control unit 1740 has a CPU, and for example, reads a program stored in the non-volatile memory 1753 into the system memory 1754 and executes it.
- the system control unit 1740 realizes the functions of the image pickup apparatus 1700 by controlling the operation of each functional block.
- the release button 1750, the mode changeover switch 1751, and the operation unit 1725 are input devices for inputting instructions to the system control unit 1740.
- the release button 1750 has a switch SW1 that is turned on by half-pressing and a switch SW2 that is turned on by full-pressing.
- the system control unit 1740 recognizes that the ON of SW1 is an instruction to prepare for shooting a still image and the ON of SW2 is an instruction to start shooting a still image, and executes an operation according to each instruction.
- the system control unit 1740 executes AF (autofocus) processing, AE (autoexposure) processing, AWB (auto white balance) processing, EF (flash pre-flash) processing, etc. in response to a shooting preparation instruction.
- AF autofocus
- AE autoexposure
- AWB auto white balance
- EF flash pre-flash
- the system control unit 1740 executes the still image shooting process using the result of the AF process and the AE process executed in response to the shooting preparation instruction in response to the shooting instruction.
- the still image photographing process includes opening / closing control of the shutter 1703, operation control of the image pickup element 1704, generation operation of image data for recording in the image processing unit 1710, recording operation on the recording medium 1730, and the like.
- the system control unit 1740 controls each functional block with respect to these series of still image shooting processes.
- the motion sensor 1760 outputs a signal corresponding to the motion of the image pickup apparatus 1700 and outputs the signal to the system control unit 1740.
- the motion sensor 1760 may be, for example, an acceleration sensor or an angular velocity sensor. Further, when the optical system 101 has a motion sensor for camera shake correction, even if the motion sensor for camera shake correction is used to detect the motion of the image pickup apparatus 1700 without providing the motion sensor 1760. good.
- the mode changeover switch 1751 switches the operation mode of the system control unit 1740 to any one of a still image shooting mode, a moving image shooting mode, a playback mode, and the like.
- the modes included in the still image shooting mode include an auto shooting mode, an auto scene discrimination mode, a manual mode, an aperture priority mode (Av mode), and a shutter speed priority mode (Tv mode).
- the mode selector switch 1751 directly switches to one of these modes included in the menu button. Alternatively, after switching to the menu button once with the mode changeover switch 1751, the mode may be switched to any of these modes included in the menu button by using another operating member.
- the moving image shooting mode may include a plurality of modes.
- the operation unit 1725 is a general term for input devices other than the release button 1750 and the mode changeover switch 1751. Functions are assigned to the input device included in the operation unit 1752 according to the operating state of the image pickup apparatus 1700, for example, through a selection operation of a function icon displayed on the display unit 1731.
- the input device has a name according to the assigned function.
- the operation unit 1752 includes a direction button, a decision (SET) button, an end button, a back button, an image feed button, a jump button, a narrowing button, an attribute change button, a menu button, and the like.
- a direction button a decision (SET) button
- an end button a button
- a back button an image feed button
- a jump button a narrowing button
- an attribute change button a menu button, and the like.
- various configurable menu screens are displayed on the display unit 1731. The user can make various settings by operating the menu screen displayed on the display unit 1731 by using the direction button and the SET button.
- a line-of-sight information acquisition unit (line-of-sight detection means) is provided as an input device included in the operation unit 1752.
- the line-of-sight information acquisition unit detects the user's line of sight or the user's gaze position in the display unit 1731.
- FIG. 18 is a diagram showing a configuration example of the line-of-sight information acquisition unit 1800.
- the display unit 1731 is provided in the peep-type finder, and by detecting the line-of-sight direction from the rotation angle of the user's eyeball 1802 looking into the finder, the position in the display unit 1731 that the user is gazing at. Shall be detected.
- the line-of-sight information acquisition unit 1800 includes an image pickup element 1801a, a light receiving lens 1801b, a dichroic mirror 1801c, and an illumination light source 1801e.
- the eyepiece 1801d is a finder optical system and is not directly related to the acquisition of line-of-sight information.
- the user can observe the display of the display unit 1731 through the eyepiece 1801d and the dichroic mirror 1801c.
- the illumination light source 1801e projects infrared light toward the outside of the finder.
- the infrared light is reflected by the eyeball 1802 and the reflected light is incident on the finder.
- the reflected light is reflected upward by the dichroic mirror 1801c, and the eyeball image formed by the light receiving lens 1801b is imaged by the image pickup device 1801a.
- the image data of the eyeball image is transmitted from the image pickup device 1801a to the system control unit 1740.
- the system control unit 1740 extracts, for example, a pupil region from the eyeball image, and detects the rotation angle of the eyeball from the position of the pupil region. Then, the system control unit 1740 obtains the user's line-of-sight direction from the rotation angle of the eyeball.
- the line-of-sight direction may be calculated and obtained, or may be obtained by referring to a table that stores the relationship between the rotation angle and the line-of-sight direction.
- the system control unit 1740 detects a position (coordinates) in the display unit 1731 that the user is gazing at based on the line-of-sight direction.
- the gaze position may be obtained from the rotation angle of the eyeball.
- the line-of-sight information such as the direction of both lines of sight and the position of gaze is obtained for one eyeball.
- the line-of-sight information may be obtained for each eyeball.
- the accuracy of the line-of-sight information can be improved by using, for example, one line-of-sight information considered to have high detection accuracy.
- the line-of-sight information acquisition unit 1800 can use any other configuration as long as the position in the display unit 1731 that the user is gazing at can be specified.
- the display unit 1731 does not necessarily have to be arranged inside the image pickup apparatus 1700.
- the display unit 1731, the illumination light source 1801e, and the light receiving lens 1801b may be provided on the back surface of the image pickup apparatus 1700.
- FIG. 19 is a diagram showing a functional block related to an operation of controlling the validity / invalidity of the subject detection unit based on the line of sight or the gaze position.
- the system control unit 1740 is shown as three functional blocks in FIG. 19 for convenience, the functions of these functional blocks are actually realized by the CPU of the system control unit 1740 executing the program.
- S2000 is an image acquisition process. The details of the image acquisition process will be described with reference to the flowchart of FIG. In S2100, the system control unit 1740 controls the image pickup element 1704 to execute the image pickup operation for one frame. As a result, the subject optical image formed by the optical system 1701 is converted into RAW image data composed of a plurality of pixel data.
- the first preprocessing unit 1711 of the image processing unit 1710 applies demosaic processing to the RAW image data to generate image data in which each pixel has an RGB component.
- the first preprocessing unit 1711 stores the generated image data in the display memory 1714.
- the first preprocessing unit 1711 may convert the image data from the RGB format to the YUV format and then store the image data in the display memory 1714.
- the first image correction unit 1716 applies a predetermined image correction process to the image data stored in the display memory 1714.
- the image correction process also includes an evaluation value calculation process.
- the first image correction unit 1716 may change the reading range of the image data according to the processing to be applied.
- the first image correction unit 1716 executes image correction processing while appropriately storing the image processing results in the display memory 1714.
- the first image correction unit 1716 determines whether or not all the image correction processes to be applied to the image data for one frame have been completed. When it is determined that all the image correction processing to be applied has been completed, the first image correction unit 1716 outputs the image data after the image correction processing to the first post-processing unit 1719, and outputs the evaluation value to the system control unit 1740. Output to. This completes the image acquisition process for one frame. On the other hand, when it is determined that the image correction process to be applied still remains, the first image correction unit 1716 repeatedly executes S2103.
- the second preprocessing unit 1712, the tracking memory 1715, and the second image data are stored in the tracking memory 1715, except that the second image correction unit 1713 applies the image processing for tracking.
- the image correction unit 1713 also executes the same processing.
- the tracking unit 1718 is acquired in S2000 in S2001, and the tracking process is applied to the image data stored in the tracking memory 1715.
- the tracking unit 1718 shall apply the non-DL tracking process applied to the non-DL tracking unit 117 in the first embodiment.
- the tracking unit 1718 outputs the position and size of the subject area to be tracked as the tracking result.
- the system control unit 1740 executes the subject loss determination process.
- the details of the subject loss determination process will be described with reference to the flowchart of FIG.
- the system control unit 1740 acquires the user's line-of-sight information through the line-of-sight information acquisition unit 1800.
- the line-of-sight information acquired here may be the line-of-sight direction or the gaze position.
- the line-of-sight analysis unit 1900 calculates the degree of irregularity of the line-of-sight information.
- the irregularity of the line-of-sight information is an evaluation value of the stability of the gaze position of the user.
- the degree of irregularity When the degree of irregularity is large, it corresponds to a state in which the gaze position of the user is not stable and the user moves irregularly in the screen of the display unit 1731. Therefore, when the degree of irregularity of the line-of-sight information is large, it is considered that the user has lost sight of the main subject and is looking for it on the screen.
- the irregularity determination unit 1901 in S2003 determines whether or not the user has lost sight of the subject.
- the irregularity of the line-of-sight information in S2201 may be calculated by any method. Further, the determination in S2003 can be executed using a threshold value according to the degree of irregularity.
- the following is an example of a method for calculating and determining the degree of irregularity. -Calculate a frequency spectrum that uses frequency information in the time axis direction of the gaze position or the locus of the line of sight, and obtain the magnitude of the spectrum above a certain frequency as the irregularity. If the degree of irregularity exceeds the threshold value, it is determined that the subject has been lost. -Calculate the absolute value of the autocorrelation of the gaze position or the trajectory of the line of sight as an irregularity.
- the autocorrelation approaches 1 in the adjacent time width, and if the movement of the line of sight is random. The autocorrelation is close to zero. If the degree of irregularity is less than the threshold value, it is determined that the subject has been lost. -Absolute value of the mutual correlation between the average value of the velocity vector or acceleration vector of the gaze position or line of sight and the average value of the velocity vector or acceleration vector of the locus of each subject area in a certain time width T. Is calculated as an irregularity. If the degree of irregularity is less than the threshold value for all the subject areas, it is determined that the subject has been lost.
- the processing determination unit 1902 executes S2004. If it is not determined by the irregularity determination unit 1901 in S2003 that the subject has been lost, the processing determination unit 1902 executes S2005.
- the processing determination unit 1902 determines that the DL detection unit 1722 is enabled.
- the non-DL detection unit 1723 may be disabled or enabled.
- the DL detection unit 1722 in the image processing unit 1710 executes the detection process of the candidate region using machine learning (here, DL) as described above.
- machine learning here, DL
- the system control unit 1740 determines the detected candidate area as the subject area to be tracked.
- the system control unit 1740 determines the subject area to be tracked from the plurality of candidate areas.
- the system control unit 1740 can determine the subject area to be tracked based on the size and position of the candidate area as described in the previous embodiment, or by another method.
- the other method is not particularly limited, and for example, the user may be allowed to select a subject area to be tracked from the detected candidate areas.
- an index similar to that of the tracking frame can be superimposed and displayed on each of the detected candidate areas, and the user can select the subject area to be tracked through the operation unit 1752.
- the user can select the subject area to be tracked through the operation of the direction button and the SET button, or by detecting the gaze position using the line-of-sight information acquisition unit 1800.
- the processing determination unit 1902 determines that the DL detection unit 1722 is invalid and the non-DL detection unit 1723 is enabled.
- the non-DL detection unit 1723 in the image processing unit 1710 detects the candidate region by a method that does not use machine learning.
- the system control unit 1740 can determine the subject area to be tracked from the candidate areas based on the line-of-sight information.
- the image processing unit 1710 may be provided with a target determination unit, and the target determination unit may determine the subject area to be tracked from the candidate area.
- the system control unit 1740 outputs information on the subject area to be tracked to the tracking unit 1718 and the information superimposing unit 1721. As a result, the information of the subject area to be tracked is updated.
- the system control unit 1740 disables both the DL detection unit 1722 and the non-DL detection unit 1723 to suppress power consumption.
- the information superimposition unit 1721 generates composite image data in which the display image data from the first post-processing unit 1719 is superimposed on the tracking frame indicating the subject area to be tracked updated in S2006, and outputs the composite image data to the display unit 1731. do.
- the user uses a first subject detection unit that detects a candidate area of the subject area to be tracked and a second subject detection unit that has higher accuracy than the first subject detection unit but requires a large amount of calculation. I tried to use it properly depending on whether or not I lost sight of the subject.
- the second subject detection unit is used when the user has lost sight of the subject, and is not used when the user has not lost sight of the subject. If the user has not lost sight of the subject, the candidate area can be detected with sufficient accuracy by the first subject detection unit. Therefore, by disabling the second subject detection unit, deterioration of the detection accuracy is suppressed. At the same time, power consumption can be suppressed.
- a fourth embodiment of the present invention will be described.
- the validity and invalidity of the DL detection unit and the non-DL detection unit are controlled according to the autofocus (AF) mode of the image pickup apparatus. Since this embodiment can be implemented by the same image pickup apparatus 1700 as that of the third embodiment, the components shown in FIG. 17 will be described.
- the image pickup apparatus 1700 has a single AF mode for maintaining the focus detection result and a continuous AF mode for continuously performing the focus detection operation as the AF mode.
- the single AF mode is likely to be used for shooting still or less moving subjects such as landscapes and portraits.
- the continuous AF mode is likely to be used for shooting moving subjects such as vehicles and sports scenes.
- the AF mode may be explicitly specified by the user, or may be automatically set according to the shooting mode of the image pickup apparatus 1700 such as a sports mode and a landscape mode. Further, the system control unit 1740 may be set based on other conditions.
- the AF mode is a setting related to the focus detection operation when shooting a still image.
- subject tracking in the still image shooting mode is applied to a moving image shot for live view display in the shooting standby state.
- the DL detection unit 1722 in the single AF mode, the subject is stationary or the movement of the subject is small, and there is a high possibility that the subject detection is relatively easy. Therefore, the DL detection unit 1722 is disabled and the non-DL detection unit 1723 is disabled. Is enabled. On the other hand, in the continuous AF mode, the subject is moving or the subject is moving a lot, and there is a high possibility that the subject detection is relatively difficult. Therefore, the DL detection unit 1722 is enabled and the non-DL detection unit 1723 is disabled. .. By such control, it is possible to suppress the power consumption while suppressing the deterioration of the accuracy of subject detection.
- FIG. 23 the same reference number as in FIG. 20 is assigned to the step of performing the same processing as in the third embodiment, and the description thereof will be omitted.
- the processing of S2000 and S2001 is as described in the third embodiment.
- the system control unit 1740 determines whether or not the current AF mode of the image pickup apparatus 1700 is the continuous AF mode.
- the system control unit 1740 enables the DL detection unit 1722 in S2004 if the current AF mode of the image pickup apparatus 1700 is determined to be the continuous AF mode. Power consumption can be suppressed by disabling the non-DL detection unit 1723, but it may be effective.
- the system control unit 1740 enables the non-DL detection unit 1723 in S2005 and disables the DL detection unit 1722 unless the current AF mode of the image pickup apparatus 1700 is determined to be the continuous AF mode.
- the system control unit 1740 executes S2005 if it is not determined. Since the subsequent processing is the same as that of the third embodiment, the description thereof will be omitted.
- a first subject detection unit that detects a candidate region of the subject region to be tracked and a second subject detection unit that has higher accuracy than the first subject detection unit but requires a large amount of calculation are captured. It is used properly according to the autofocus mode of the device. Specifically, the second subject detection unit is used when an autofocus mode that is likely to be used for shooting a moving subject is set, and an autofocus mode that is likely to be used for shooting a still subject. Was not used when is set. When the movement of the subject is small, the candidate area can be detected with high accuracy by the first subject detection unit. Therefore, by disabling the second subject detection unit, the deterioration of the detection accuracy can be suppressed while suppressing the deterioration of the detection accuracy. Power consumption can be suppressed.
- a fifth embodiment of the present invention will be described.
- the validity and invalidity of the DL detection unit 1722 and the non-DL detection unit 1723 are controlled according to the frame rate of the moving image to which the tracking process is applied. Since this embodiment can be implemented by the same image pickup apparatus 1700 as that of the third embodiment, the components shown in FIG. 17 will be described.
- the amount of movement of the subject area between frames decreases as the frame rate increases. Therefore, when the frame rate is high, the amount of movement of the subject area to be tracked is small, and the possibility of subject blurring is low. Therefore, it is highly possible that the non-DL detection unit 1723 can obtain sufficient accuracy. Therefore, it is less necessary for the DL detection unit 1722 to detect each frame.
- the DL detection unit 1722 is more effective than when the frame rate is equal to or lower than the first threshold value. Reduce the frequency. As a result, power consumption can be reduced while suppressing a decrease in detection accuracy.
- the first threshold value can be determined experimentally, for example. It should be noted that a plurality of threshold values may be provided to control the frequency with which the DL detection unit 1722 is effective in three or more steps.
- the system control unit 1740 determines whether or not the value of the variable COUNT used as the counter for the number of frames is a predetermined N (integer of 2 or more).
- the value of N is set so as to satisfy the relationship N> M, assuming that the DL detection unit 1722 becomes effective for each M frame when the frame rate of the moving image to which the tracking process is applied is equal to or less than the first threshold value (fps).
- the system control unit 1740 executes S2403 if it is determined that the value of the variable COUNT is N, and executes S2404 if it is not determined.
- S2403 is executed once every 10 frames.
- the system control unit 1740 initializes the value of the variable COUNT to 1. After that, the system control unit 1740 enables the DL detection unit 1722 in S2004. Power consumption can be suppressed by disabling the non-DL detection unit 1723, but it may be effective.
- the system control unit 1740 increments the value of the variable COUNT by 1. After that, the system control unit 1740 enables the non-DL detection unit 1723 in S2005 and disables the DL detection unit 1722. Since the subsequent processing is the same as that of the third embodiment, the description thereof will be omitted.
- the DL detection unit 1722 is valid for 1 frame per 10 frames and is invalid for the remaining 9 frames.
- the non-DL detection unit 1723 is enabled in the frame in which the DL detection unit 1722 is invalid.
- the frequency of using the second subject detection unit which is the subject detection unit that detects the candidate area of the subject area to be tracked and has higher accuracy than the first subject detection unit but has a large amount of calculation, is determined. Changed to control according to the frame rate of the moving image to which the tracking process is applied. Specifically, when the frame rate of the moving image to which the tracking process is applied is high, the frequency of enabling the second subject detection unit is made lower than when the frame rate is not high. When the movement of the subject is small, the candidate region can be detected with high accuracy by the first subject detection unit. Therefore, by suppressing the frequency of using the second subject detection unit, the deterioration of the detection accuracy is suppressed. At the same time, power consumption can be suppressed.
- the non-DL detection unit 1723 can obtain sufficient accuracy. Therefore, when the shutter speed is high, the DL detection unit 1722 is invalidated.
- FIG. 25 the same reference number as in FIG. 20 is assigned to the step of performing the same processing as in the third embodiment, and the description thereof will be omitted.
- the processing of S2000 and S2001 is as described in the third embodiment.
- the system control unit 1740 determines whether or not the currently set shutter speed is faster than the threshold value.
- the threshold value used here can be determined experimentally, for example, according to the performance of the non-DL detection unit 1723 and the like.
- the system control unit 1740 enables the DL detection unit 1722 in S2004 if it is determined that the shutter speed is faster than the threshold value. Power consumption can be suppressed by disabling the non-DL detection unit 1723, but it may be effective. On the other hand, if it is not determined that the shutter speed is faster than the threshold value, the system control unit 1740 enables the non-DL detection unit 1723 in S2005 and disables the DL detection unit 1722. Since the subsequent processing is the same as that of the third embodiment, the description thereof will be omitted.
- a first subject detection unit that detects a candidate region of the subject region to be tracked and a second subject detection unit that has higher accuracy than the first subject detection unit but requires a large amount of calculation are captured.
- the second subject detection unit was used when the shutter speed was not fast (slow), and was not used when the shutter speed was fast.
- the shutter speed is high, the possibility of subject blurring is low, and the candidate area can be detected with high accuracy by the first subject detection unit. Therefore, by disabling the second subject detection unit, detection is possible. It is possible to suppress power consumption while suppressing a decrease in accuracy.
- a seventh embodiment of the present invention will be described.
- the validity and invalidity of the DL detection unit and the non-DL detection unit are controlled according to the instruction of the user. Since this embodiment can be implemented by the same image pickup apparatus 1700 as that of the third embodiment, the components shown in FIG. 17 will be described.
- the DL detection unit 1722 is enabled only when the user enables the DL subject detection process. Any user instruction may be used to enable the DL subject detection process. It is not necessary for the user to be aware of the DL subject detection process, and the instruction may be such that the DL subject detection process becomes effective as a result.
- the operation unit 1752 has an input device (DL subject detection button) to which a function for switching the enable / disable of the DL subject detection process is assigned.
- the system control unit 1740 switches between enabling and disabling the DL subject detection process each time the DL subject detection button is pressed.
- the system control unit 1740 may enable the DL subject detection process only while the DL subject detection button is pressed.
- the DL subject detection button may be a software key using the display unit 1731.
- FIG. 26 the same reference number as in FIG. 20 is assigned to the step of performing the same processing as in the third embodiment, and the description thereof will be omitted.
- the processing of S2000 and S2001 is as described in the third embodiment.
- the system control unit 1740 determines whether or not the DL subject detection button is ON. Here, it is determined to be ON when the DL subject detection button is pressed. If the DL subject detection button is determined to be ON, the system control unit 1740 enables the DL detection unit 1722 in S2004. Power consumption can be suppressed by disabling the non-DL detection unit 1723, but it may be effective. On the other hand, if the DL subject detection button is not determined to be ON, the system control unit 1740 enables the non-DL detection unit 1723 in S2005 and disables the DL detection unit 1722. Since the subsequent processing is the same as that of the third embodiment, the description thereof will be omitted.
- the validity and invalidity of the second subject detection unit which has higher accuracy than the first subject detection unit but requires a large amount of calculation, is determined. It is controlled according to the user's instruction. Specifically, the second subject detection unit is enabled only when the user instruction to enable the second subject detection unit is detected. As a result, the second subject detection unit becomes invalid when the user does not need it, so that power consumption can be suppressed.
- the DL detection unit 1722 is invalidated. This is because when these operations are performed, the user may have adjusted the main subject so that it falls within the shooting range. Therefore, even if the DL detection unit 1722 is enabled during these operations, a meaningful detection result may not be obtained.
- the DL detection unit 1722 can be enabled only when it is determined that the pan, tilt, or zoom operation of the image pickup apparatus 1700 is not performed.
- FIG. 27 the same reference number as in FIG. 20 is assigned to the step of performing the same processing as in the third embodiment, and the description thereof will be omitted.
- the processing of S2000 and S2001 is as described in the third embodiment.
- the system control unit 1740 determines whether or not the pan, tilt, or zoom operation is performed by the image pickup apparatus 1700.
- the system control unit 1740 performs pan, tilt, and zoom operations, for example, by detecting a movement vector between frames of a moving image shot for live view display or a size change of a feature area, or by outputting a motion sensor 1760. Can be detected.
- the zoom operation can also be detected by operating the zoom button on the operation unit 1752.
- the system control unit 1740 executes S2008 if it is determined that the pan, tilt, or zoom operation is being performed. On the other hand, the system control unit 1740 executes S2702 if it is not determined that the pan, tilt, or zoom operation is being performed.
- the system control unit 1740 enables the DL detection unit 1722 or the non-DL detection unit 1723.
- the non-DL detection unit 1723 can be disabled to suppress power consumption, but it may be valid.
- the condition for enabling the DL detection unit 1722 for example, one or more of the conditions described in the third to seventh embodiments can be used. If the condition for enabling the DL detection unit 1722 is not satisfied, the system control unit 1740 invalidates the DL detection unit 1722 and enables the non-DL detection unit 1723. Since the processing after S2006 is the same as that of the third embodiment, the description thereof will be omitted.
- the shooting range of the second subject detection unit which has higher accuracy than the first subject detection unit but requires a large amount of calculation, is changed. Enabled to enable only when the operation to do is not performed. By not enabling the second subject detection unit when the shooting range is not fixed, the power consumption can be efficiently suppressed. Further, if the first subject detection unit is not enabled when the shooting range is not fixed, the power consumption can be further suppressed.
- DL subject detection may be controlled based on conditions different from the conditions described in the above-mentioned third to eighth embodiments.
- DL subject detection depending on the shooting mode (still image shooting mode or movie shooting mode), the release button pressed state (no pressing, half pressing, full pressing), the tracking mode state, or the type of tracking object. It is possible to control whether non-DL subject detection is enabled or disabled.
- FIG. 28 is a block diagram showing a functional configuration example of the image pickup apparatus 1700'as an example of the image processing apparatus according to the ninth embodiment.
- the same reference numerals will be given to the same configurations as those of the image pickup apparatus 1700 described with reference to FIG. 17, and duplicate description will be omitted.
- the detection unit 1717 of the present embodiment may be either the DL detection unit 1722 or the non-DL detection unit 1723. Here, it is the same as the non-DL detection unit 1723.
- the image pickup apparatus 1700'of the present embodiment has a target determination unit 2801 as a new configuration, and the tracking unit 1718 has a DL tracking unit 2802 and a non-DL tracking unit 2803 as in the first embodiment.
- the target determination unit 2801 determines a subject area (main subject area) to be tracked from the candidate area detected by the detection unit 1717. If there is only one detected candidate area, the target determination unit 2801 determines the detected candidate area as the main subject area. Further, when a plurality of candidate regions are detected, the target determination unit 2801 can determine the main subject region based on a predetermined priority.
- the target determination unit 2801 can determine the main subject area based on, for example, the priority based on the size of the candidate area or the priority based on the distance from the focus detection area. Specifically, the candidate area having the largest size may be used as the main subject area, or the candidate area closest to the focus detection area may be used as the main subject area. Further, the main subject area may be determined in consideration of a plurality of priorities, such as setting the candidate area having the largest size as the main subject area among the candidate areas whose distance from the focus detection area is less than the threshold value. Priority other than those exemplified here may be considered.
- the tracking unit 1718 estimates the subject area to be tracked from the image data of the frame (current frame) to be processed stored in the tracking memory 1715, and the tracking result is the position and size of the estimated subject area in the frame.
- the tracking unit 115 estimates the position and size of the main subject area determined by the target determination unit 2801 for the past frame (for example, the previous frame) shot before the current frame.
- the tracking unit 115 outputs the tracking result to the information superimposing unit 1721.
- the tracking unit 1718 has a DL tracking unit 2802 that tracks a subject using deep learning (DL), and a non-DL tracking unit 2803 that tracks a subject without using DL. Since the configurations of the DL tracking unit 2802 and the non-DL tracking unit 2803 may be the same as those of the DL tracking unit 116 and the non-DL tracking unit 117 described in the first embodiment, detailed description thereof will be omitted.
- the system control unit 1740 controls the valid and invalid of the DL tracking unit 2802 and the non-DL tracking unit 2803, and the operation frequency when the DL tracking unit 2803 is enabled.
- the DL tracking unit 2802 outputs the estimated position and size of the main subject area and the reliability score as the tracking result. Further, the non-DL tracking unit 2803 outputs the estimated position and size of the main subject area and the similarity score as the tracking result.
- the tracking unit 1718 adopts one of the tracking results of the DL tracking unit 2802 and the non-DL tracking unit 2803 based on the reliability score output by the DL tracking unit 2802 and the similarity score output by the non-DL tracking unit 2803. .
- the tracking unit 1718 adopts the tracking result of the non-DL tracking unit 2803. do.
- the tracking unit 1718 adopts the tracking result of the DL tracking unit 2802.
- the tracking unit 1718 outputs the adopted tracking result to the information superimposing unit 1721 and the system control unit 1740.
- the tracking result of the DL tracking unit 2802 may be preferentially adopted. Specifically, if the tracking result of the DL tracking unit 2802 is obtained, the tracking result of the DL tracking unit 2802 may be adopted, and if not, the tracking result of the non-DL tracking unit 2803 may be adopted.
- the system control unit 1740 controls whether to enable the DL tracking unit 2802 or the non-DL tracking unit 2803 according to the AF mode set in the image pickup apparatus 1700'.
- the image pickup apparatus 1700' has a single AF mode and a continuous AF mode as in the fourth embodiment.
- the single AF mode is likely to be used for shooting still or less moving subjects such as landscapes and portraits.
- the continuous AF mode is likely to be used for shooting moving subjects such as vehicles and sports scenes.
- the non-DL tracking part is effective instead of the DL tracking part.
- the DL tracking part is effective instead of the non-DL tracking part.
- FIG. 29 is a flowchart relating to the operation of the system control unit 1740 in the present embodiment.
- S2900 is an image acquisition process similar to the process described with reference to FIG. 21 in the third embodiment.
- the system control unit 1740 instructs the detection unit 1717 to execute the detection of the candidate area.
- the detection unit 1717 applies the detection process of the subject area to the image for one frame, and stores the detection result in the tracking memory 1715.
- the detection result includes the total number of detected candidate regions, the position and size of each candidate region in the image.
- the system control unit 1740 instructs the target determination unit 2801 to determine the subject area (main subject area) to be tracked from the candidate areas.
- the target determination unit 2801 reads out the information of the candidate area stored in the tracking memory 1715, and if a plurality of candidate areas are detected, determines the main subject area based on the priority as described above.
- the target determination unit 2801 stores information for identifying the main subject area in the tracking memory 1715.
- the system control unit 1740 determines whether or not the AF mode currently set in the image pickup apparatus 1700'is the continuous AF mode.
- the system control unit 1740 executes S2904 when it is determined that the currently set AF mode is the continuous AF mode, and determines that the currently set AF mode is the continuous AF mode. If not, S2905 is executed.
- the system control unit 1740 enables the DL tracking unit 2802 and disables the non-DL tracking unit 2803. As a result, the DL tracking unit 2802 executes the tracking process for the current frame. Further, in S2905, the system control unit 1740 enables the non-DL tracking unit 2803 and invalidates the DL tracking unit 2802. As a result, the non-DL tracking unit 2803 executes the tracking process for the current frame.
- the main subject area used for the tracking process in S2904 and S2905 is the main subject area determined most recently for the frames past the current frame.
- the system control unit 1740 updates the information of the main subject area stored in the tracking memory 1715 according to the result of the tracking process in S2904 or S2905.
- the result of the tracking process is also output to the information superimposing unit 1721.
- the system control unit 1740 disables the DL tracking unit 2802 and the non-DL tracking unit 2803.
- the system control unit 1740 instructs the information superimposition unit 1721 to superimpose and display the tracking frame based on the tracking result on the display image of the current frame.
- the information superimposing unit 1721 generates an image of the tracking frame having a position and size based on the tracking result, and generates synthetic image data synthesized with the display image data of the current frame.
- the information superimposing unit 1721 outputs the composite image data to the display unit 1731.
- the first and / / Or the validity / invalidity of the second tracking part is controlled. Therefore, invalidate the tracking part where it is unlikely that good tracking results will be obtained, or invalidate the other tracking part when there is a high possibility that good tracking results will be obtained only with one processing unit. Therefore, it is possible to suppress power consumption while suppressing a decrease in tracking accuracy.
- ⁇ ⁇ 10th embodiment> Next, a tenth embodiment of the present invention will be described.
- the validity and invalidity of the DL tracking unit 2802 and the non-DL tracking unit 2803 are controlled according to the frame rate of the moving image to which the tracking process is applied. Since this embodiment can be implemented by the same image pickup apparatus 1700'as in the ninth embodiment, the components shown in FIG. 28 will be described.
- the DL tracking unit 2802 when the frame rate of the moving image to which the tracking process is applied is higher than the predetermined first threshold value (fps), the DL tracking unit 2802 is more effective than when the frame rate is equal to or lower than the first threshold value. Reduce the frequency. As a result, power consumption can be reduced while suppressing a decrease in detection accuracy.
- the first threshold value can be determined experimentally, for example. It should be noted that a plurality of threshold values may be provided to control the frequency with which the DL tracking unit 2802 is effective in three or more stages.
- the system control unit 1740 determines whether or not the value of the variable COUNT used as the counter for the number of frames is a predetermined N (integer of 2 or more).
- the value of N is set so as to satisfy the relationship of N> M, assuming that the DL tracking unit 2802 is valid for each M frame when the frame rate of the moving image to which the tracking process is applied is equal to or less than the first threshold value (fps).
- the system control unit 1740 executes S3002 if it is determined that the value of the variable COUNT is N, and executes S3003 if it is not determined.
- the system control unit 1740 increments the value of the variable COUNT by 1. After that, the system control unit 1740 enables the non-DL tracking unit 2803 in S2905 and disables the DL tracking unit 2802. Since the subsequent processing is the same as that of the ninth embodiment, the description thereof will be omitted.
- the DL tracking unit 2802 is valid for 1 frame per 10 frames and invalid for the remaining 9 frames. In a frame in which the DL tracking unit 2802 is invalid, the non-DL tracking unit 2803 is enabled.
- the frequency of using the second tracking unit which has higher accuracy than the first tracking unit but has a large amount of calculation, is controlled according to the frame rate of the moving image to which the tracking process is applied. Specifically, when the frame rate of the moving image to which the tracking process is applied is high, the frequency of enabling the second tracking portion is made lower than when the frame rate is not high.
- the first tracking unit can perform accurate tracking processing. Therefore, by suppressing the frequency of using the second tracking unit, it is consumed while suppressing the deterioration of the detection accuracy. Power can be suppressed.
- the validity and invalidity of the DL tracking unit and the non-DL tracking unit are controlled according to the shutter speed of the image pickup apparatus. Since this embodiment can be implemented by the same image pickup apparatus 1700'as in the ninth embodiment, the components shown in FIG. 28 will be described.
- the system control unit 1740 determines whether or not the currently set shutter speed is faster than the threshold value.
- the threshold value used here can be determined experimentally, for example, depending on the performance of the non-DL tracking unit 2803 and the like.
- the system control unit 1740 enables the DL tracking unit 2802 in S2904. Power consumption can be suppressed by disabling the non-DL tracking unit 2803, but it may be effective.
- the system control unit 1740 enables the non-DL tracking unit 2803 in S2905 and disables the DL tracking unit 2802 if it is not determined that the shutter speed is faster than the threshold value. Since the subsequent processing is the same as that of the third embodiment, the description thereof will be omitted.
- the first tracking unit and the second tracking unit which has higher processing accuracy than the first tracking unit but has a large amount of calculation, are used properly according to the shutter speed of the image pickup device.
- the second tracking portion was used when the shutter speed was not fast (slow), and was not used when the shutter speed was high.
- the shutter speed is high, the change in the position and size of the subject area between frames is small, and the first tracking unit can perform accurate tracking processing, so that the second tracking unit is invalidated. As a result, it is possible to suppress power consumption while suppressing a decrease in tracking accuracy.
- the DL tracking unit 2802 is enabled only when the user enables the DL tracking process. Any user instruction may be used to enable the DL tracking process. It is not necessary for the user to be aware of the DL tracking process, and the instruction may be such that the DL tracking process becomes effective as a result.
- FIG. 39 is a diagram showing an example of the rear appearance of the image pickup apparatus 1700'.
- the display unit 1731 is provided on the back surface of the image pickup apparatus 1700'.
- a part of the input devices 3901 to 3903 constituting the operation unit 1752 is provided on the back surface of the image pickup apparatus 1700'.
- the input device 3903 capable of direction input and decision input functions as a direction key and a decision button.
- the input device 3901 or 3902 can be used as a DL tracking button.
- the system control unit 1740 switches between enabling and disabling DL tracking each time the DL tracking button is pressed.
- the system control unit 1740 may enable DL tracking only while the DL tracking button is pressed.
- the DL tracking button may be a software key using the display unit 1731.
- the system control unit 1740 determines whether or not the DL tracking button is ON. Here, it is determined to be ON when the DL tracking button is pressed. If the DL tracking button is determined to be ON, the system control unit 1740 enables the DL tracking unit 2802 in S2904. Power consumption can be suppressed by disabling the non-DL tracking unit 2803, but it may be effective. On the other hand, if the DL tracking button is not determined to be ON, the system control unit 1740 enables the non-DL tracking unit 2803 and disables the DL tracking unit 2802 in S2905. Since the subsequent processing is the same as that of the ninth embodiment, the description thereof will be omitted.
- the validity / invalidity of the second subject tracking unit which has higher accuracy than the first tracking unit but has a large amount of calculation, is determined according to the user's instruction. I tried to control it. Specifically, the second tracking unit is enabled only when the user instruction to enable the second tracking unit is detected. As a result, the second tracking unit becomes invalid when the user does not need it, so that power consumption can be suppressed.
- the DL tracking unit 2802 is invalidated. This is because when these operations are performed, the user may have adjusted the main subject so that it falls within the shooting range. Therefore, even if the DL tracking unit 2802 is enabled during these operations, a meaningful detection result may not be obtained.
- the DL tracking unit 2802 can be enabled only when it is determined that the pan, tilt, or zoom operation of the image pickup apparatus 1700'is not performed.
- the system control unit 1740 determines whether or not the pan, tilt, or zoom operation is performed by the image pickup apparatus 1700'.
- the system control unit 1740 performs pan, tilt, and zoom operations, for example, by detecting a movement vector between frames of a moving image shot for live view display or a size change of a feature area, or by outputting a motion sensor 1760. Can be detected.
- the zoom operation can also be detected by operating the zoom button on the operation unit 1752.
- the system control unit 1740 executes S2908 if it is determined that the pan, tilt, or zoom operation is being performed. On the other hand, the system control unit 1740 executes S3302 if it is not determined that the pan, tilt, or zoom operation is being performed.
- the system control unit 1740 enables the DL tracking unit 2802 or the non-DL tracking unit 2803.
- the non-DL detection unit 1723 can be disabled to suppress power consumption, but it may be valid.
- the condition for validating the DL tracking unit 2802 for example, one or more of the conditions described in the ninth to twelfth embodiments can be used. If the condition for enabling the DL tracking unit 2802 is not satisfied, the system control unit 1740 invalidates the DL tracking unit 2802 and enables the non-DL tracking unit 2803. Since the processing after S2906 is the same as that of the ninth embodiment, the description thereof will be omitted.
- the operation for changing the shooting range of the second tracking unit which has higher accuracy than the first tracking unit but requires a large amount of calculation, is performed. Enabled so that it can be enabled only when it is not. By not enabling the second tracking unit when the shooting range is not fixed, the power consumption can be efficiently suppressed.
- the image pickup apparatus 1700' has a plurality of shooting modes including a still image shooting mode and a moving image shooting mode.
- the shooting mode may be provided depending on the shooting scene, the special effect to be applied, etc., such as the night view mode, the sports mode, and the filter mode.
- it is a shooting mode for finally shooting a still image, it is treated as a still image shooting mode, and if it is a shooting mode for shooting a moving image, it is treated as a moving image shooting mode.
- the system control unit 1740 determines whether or not the shooting mode of the image pickup apparatus 1700'is the still image shooting mode, for example, based on the state of the mode changeover switch 1751.
- the system control unit 1740 executes S3402 if it is determined that the shooting mode of the image pickup apparatus 1700'is the still image shooting mode.
- the system control unit 1740 executes S3403 if it is not determined that the shooting mode of the image pickup apparatus 1700'is the still image shooting mode.
- the system control unit 1740 executes S3405 with the count set value as the first value (N1).
- N1 is an integer of 1 or more.
- the system control unit 1740 executes S3405 with the count set value as the second value (N2).
- N2 is an integer of 1 or more.
- the system control unit 1740 determines whether or not the value of the variable COUNT used as the counter for the number of frames is the count set value (N1 or N2). The system control unit 1740 executes S3406 if it is determined that the value of the variable COUNT is a count set value, and executes S3407 if it is not determined.
- the system control unit 1740 initializes the value of the variable COUNT to 1. After that, the system control unit 1740 enables the DL tracking unit 2802 in S2904. Power consumption can be suppressed by disabling the non-DL tracking unit 2803, but it may be effective.
- the system control unit 1740 increments the value of the variable COUNT by 1. After that, the system control unit 1740 enables the non-DL tracking unit 2803 in S2905 and disables the DL tracking unit 2802.
- S2904 is executed every time the variable COUNT becomes N1 or N2. That is, the DL tracking unit 2802 is enabled once for each N1 frame in the still image shooting mode and once for each N2 frame in the moving image shooting mode, and the DL tracking section 2802 is disabled for the remaining frames.
- the first value and the second value control the frequency with which the DL tracking unit 2802 is enabled according to the shooting mode.
- the first value and the second value are stored in advance in, for example, the non-volatile memory 1753.
- the first value and the second value can be determined in consideration of the shutter speed, frame rate, and the like.
- the frame rate of the moving image to which the tracking process is applied is higher in the moving image shooting mode than in the still image shooting mode.
- the frequency of enabling the DL tracking unit 2802 is lower than that in the still image shooting mode, so that the power consumption can be suppressed while suppressing the deterioration of the tracking accuracy. Note that this is an example, and by independently controlling the frequency at which the DL tracking unit 2802 is enabled for each shooting mode, the DL tracking unit 2802 can be enabled at a frequency suitable for the shooting mode.
- the frequency of enabling the second tracking unit which has higher accuracy than the first tracking unit but has a large amount of calculation, among the tracking units that track the subject area to be tracked, depends on the shooting mode. I tried to control it. By setting an appropriate count setting value according to the shooting mode, it is possible to reduce the power consumption while suppressing the deterioration of the tracking performance.
- the release button 1750 Since the release button 1750 has a switch SW1 that is turned on by half-pressing and a switch SW2 that is turned on by pressing it fully, both switches are in the OFF state, only the switch SW1 is in the ON state, and the switches SW1 and SW2 are in the ON state. Has a state. Further, the system control unit 1740 recognizes that the ON of SW1 is an instruction to prepare for shooting a still image, and the ON of SW2 is an instruction to start shooting a still image.
- the DL tracking unit 2802 can be enabled only when the image pickup apparatus 1700'is input with a shooting preparation instruction or a shooting start instruction.
- the system control unit 1740 determines whether or not the release button 1750 is in the half-pressed or fully-pressed state. For example, if the switch SW1 is ON, the system control unit 1740 can determine that the release button 1750 is in a half-pressed or fully-pressed state. Since the switch SW1 is ON when the switch SW2 is ON, it is not necessary to detect the state of the switch SW2.
- the system control unit 1740 executes S3502. On the other hand, the system control unit 1740 executes S2908 if it is not determined that the release button 1750 is in the half-pressed or fully-pressed state. In this case, since it is in the shooting standby state, the tracking process is not performed on the frame to be processed (may be performed by the non-DL tracking unit 2803).
- the system control unit 1740 enables the DL tracking unit 2802 or the non-DL tracking unit 2803.
- the DL tracking unit 2802 is valid, the non-DL tracking unit 2803 can be disabled to suppress power consumption, but it may be valid.
- the condition for validating the DL tracking unit 2802 for example, one or more of the conditions described in the 9th to 14th embodiments can be used. If the condition for enabling the DL tracking unit 2802 is not satisfied, the system control unit 1740 invalidates the DL tracking unit 2802 and enables the non-DL tracking unit 2803.
- the conditions for enabling the DL tracking unit 2802 may differ between the half-pressed state and the fully-pressed state of the release button. Since the processing after S2906 is the same as that of the ninth embodiment, the description thereof will be omitted.
- a shooting preparation instruction or a shooting start instruction is input to the second tracking unit, which has higher accuracy than the first tracking unit but requires a large amount of calculation. It can be enabled only when it is.
- the second tracking unit is not effective in the shooting standby state in which the shooting preparation instruction and the shooting start instruction are not input, and the power consumption can be efficiently suppressed. Further, if the first tracking portion is not enabled in the shooting standby state, the power consumption can be further suppressed.
- the tracking mode is a mode in which focusing is continuously controlled so that the main subject is in focus even if the main subject moves from the center of the shooting range. It is suitable for shooting subjects whose movement is difficult to predict.
- the tracking mode may be set by the mode changeover switch 1751, or may be set by one operation of the input device included in the operation unit 1752.
- the subject to be focused in the tracking mode may be a subject corresponding to the main subject area determined by the target determination unit 2801.
- the tracking mode may be indirectly set according to the setting of a specific function.
- the DL tracking unit 2802 When the tracking mode is set, it is highly likely that the subject to be focused will move, so the DL tracking unit 2802 is enabled. On the other hand, when the tracking mode is not set, it is considered unlikely that the subject to be focused moves, so the DL tracking unit 2802 is invalidated and the non-DL tracking unit 2803 is enabled.
- the system control unit 1740 determines whether or not the tracking mode is set in the image pickup apparatus 1700'.
- the system control unit 1740 can determine whether or not the tracking mode is set from the state of the mode changeover switch 1751, for example.
- the system control unit 1740 executes S2904 if it is determined that the tracking mode is set, and S2905 if it is not determined that the tracking mode is set.
- the system control unit 1740 enables the DL tracking unit 2802 and disables the non-DL tracking unit 2803. As a result, the DL tracking unit 2802 executes the tracking process for the current frame.
- the system control unit 1740 enables the non-DL tracking unit 2803 and invalidates the DL tracking unit 2802. As a result, the non-DL tracking unit 2803 executes the tracking process for the current frame. Since the processing after S2906 is the same as that of the ninth embodiment, the description thereof will be omitted.
- the second tracking unit which has higher accuracy than the first tracking unit but has a large amount of calculation, is effective when the tracking mode is set. If the tracking mode is not set, it will be invalid. By disabling the second tracking unit when it is considered that the need for the second tracking unit is low, it is possible to suppress power consumption while suppressing a decrease in tracking accuracy.
- the detection unit 1717 of the present embodiment associates the detected candidate area with the object class indicating the type of the subject and its reliability. If the main subject area to be tracked is a subject that can be easily tracked, there is a high possibility that sufficient accuracy can be obtained by the non-DL tracking section 2803, so the DL tracking section 2802 is invalidated.
- the system control unit 1740 determines whether or not the type of subject related to the main subject area is a subject that can be easily tracked from the object class associated with the main subject area determined by the target determination unit 2801.
- the system control unit 1740 refers to, for example, the object class and the difficulty level of tracking, which are stored in advance in the non-volatile memory 1753, to determine whether or not the type of subject related to the main subject area is a subject that can be easily tracked. Can be determined.
- the difficulty level of tracking here is the difficulty level of non-DL tracking.
- non-DL tracking For subjects such as birds and insects whose shape and / or color change significantly depending on the angle and state (for example, whether they are flying or not), non-DL tracking is difficult. It should be noted that the subject for which non-DL tracking is difficult is not limited to the subject having a large change in shape and / or color because it also depends on the non-DL tracking algorithm. It should be noted that the object class can be associated with the tracking difficulty in advance according to the object class that can be detected by the detection unit 1717, the performance of the non-DL tracking unit, and the like.
- the system control unit 1740 executes S2905 if it is determined that the type of subject related to the main subject area is a subject that can be easily tracked, and S2904 if it is not determined. In S2904, the system control unit 1740 enables the DL tracking unit 2802 and disables the non-DL tracking unit 2803. As a result, the DL tracking unit 2802 executes the tracking process for the current frame.
- the system control unit 1740 enables the non-DL tracking unit 2803 and invalidates the DL tracking unit 2802. As a result, the non-DL tracking unit 2803 executes the tracking process for the current frame. Since the processing after S2906 is the same as that of the ninth embodiment, the description thereof will be omitted.
- the second tracking unit which has higher accuracy than the first tracking unit but has a large amount of calculation, is the subject related to the subject area to be tracked. If the subject can be easily tracked by the tracking section of 1, it is invalid. By disabling the second tracking unit when it is considered that the need for the second tracking unit is low, it is possible to suppress power consumption while suppressing a decrease in tracking accuracy.
- the eighteenth embodiment of the present invention will be described.
- the validity and invalidity of the DL tracking unit and the non-DL tracking unit are controlled according to whether or not the user has lost sight of the subject. Since this embodiment can be implemented by the same image pickup apparatus 1700'as in the ninth embodiment, the components shown in FIG. 28 will be described. However, it is assumed that the image pickup apparatus 1700'is provided with the line-of-sight information acquisition unit 1800 shown in FIG. 18 as an input device included in the operation unit 1725, similarly to the image pickup apparatus 1700 according to the third embodiment. Further, the system control unit 1740 also has a functional block as shown in FIG.
- the system control unit 1740 executes the subject loss determination process described with reference to FIGS. 19 and 22.
- the system control unit 1740 (irregularity determination unit 1901) determines whether or not the user has lost sight of the subject based on the irregularity calculated by the loss of sight determination process.
- the processing determination unit 1902 executes S2904. If it is not determined by the irregularity determination unit 1901 in S2003 that the subject has been lost, the processing determination unit 1902 executes S2905.
- the system control unit 1740 (processing determination unit 1902) enables the DL tracking unit 2802 and invalidates the non-DL tracking unit 2803. As a result, the DL tracking unit 2802 executes the tracking process for the current frame. Further, in S2905, the system control unit 1740 (processing determination unit 1902) enables the non-DL tracking unit 2803 and invalidates the DL tracking unit 2802. As a result, the non-DL tracking unit 2803 executes the tracking process for the current frame. Since the processing after S2906 is the same as that of the ninth embodiment, the description thereof will be omitted.
- the user uses the first tracking unit and the second tracking unit, which has higher accuracy than the first tracking unit but requires a large amount of calculation, as the subject. I tried to use it properly depending on whether I lost sight of it.
- the second tracking unit is used when the user has lost sight of the subject, and is not used when the user has not lost sight of the subject. If the user has not lost sight of the subject, the first tracking unit can perform tracking processing with sufficient accuracy. Therefore, by disabling the second tracking unit, the reduction in tracking accuracy can be suppressed while suppressing the deterioration of the tracking accuracy. Power consumption can be suppressed.
- the frame periods in which DL tracking and non-DL tracking are effective may be different, and both DL tracking and non-DL tracking may be effective in a cycle having the least common multiple of each cycle.
- the present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Optics & Photonics (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
消費電力を抑制しながら良好な性能を実現する被写体追尾機能を備えた画像処理装置およびその制御方法が開示される。画像処理装置は、第1の追尾手段と、第1の追尾手段よりも処理精度が高いが演算負荷が大きい第2の追尾手段を有する。画像処理装置は、追尾処理を適用する処理対象のフレームに基づいて決定した、追尾対象とする被写体領域について、追尾の難度に関する評価値を算出する。画像処理装置は、評価値に基づいて、処理対象のフレームの後のフレームについて、第1の追尾手段および第2の追尾手段の両方を有効にするか、第1の追尾手段および第2の追尾手段の少なくとも一方を無効にする。
Description
本発明は画像処理装置およびその制御方法に関し、特に、被写体の追尾技術に関する。
デジタルカメラなどの画像処理装置には、顔領域などの特徴領域の検出を経時的に適用することにより、特徴領域を追尾する機能(被写体追尾機能)を有するものがある。また、学習済みのニューラルネットワークを用いて被写体を追尾する装置も知られている(特許文献1)。
ニューラルネットワークを用いることにより、画像領域間の相関や類似性などを用いる場合よりも被写体追尾の精度を向上させることができる場合がある。しかしながら、ニューラルネットワークを用いた処理は演算量が多く、高速なプロセッサや大規模な回路が必要となるため、消費電力が大きいという問題がある。例えば、ライブビュー表示用の動画像に対してニューラルネットワークを用いた被写体追尾を適用した場合、ライブビュー表示による電池の消耗が問題となる。
本発明はこのような従来技術の課題に鑑みなされたものである。本発明は、消費電力を抑制しながら良好な性能を実現する被写体追尾機能を備えた画像処理装置およびその制御方法の提供を目的とする。
本発明の一観点によれば、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、候補領域から、追尾対象とする被写体領域を決定する決定手段と、決定手段が決定した被写体領域について、追尾の難度に関する評価値を算出する算出手段と、処理対象のフレームにおける、処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段であって、第1の追尾手段と第2の追尾手段とを有する追尾手段と、評価値に基づいて、処理対象のフレームより後のフレームに対する第1の追尾手段と第2の追尾手段の動作を決定する制御手段と、を有し、第2の追尾手段は、第1の追尾手段よりも処理精度が高いが演算負荷が大きく、制御手段は、評価値に基づいて、第1の追尾手段および第2の追尾手段の両方を有効にするか、第1の追尾手段および第2の追尾手段の少なくとも一方を無効にする、ことを特徴とする画像処理装置が提供される。
本発明の別の観点によれば、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、候補領域から、追尾対象とする被写体領域を決定する決定手段と、処理対象のフレームにおける、処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段であって、第1の追尾手段と第2の追尾手段とを有する追尾手段と、検出手段により検出した被写体の種類に基づいて、処理対象のフレームより後のフレームに対する第1の追尾手段と第2の追尾手段の動作を決定する制御手段と、を有し、第2の追尾手段は、第1の追尾手段よりも処理精度が高いが演算負荷が大きく、制御手段は、検出手段により検出した被写体の種類に基づいて、第1の追尾手段および第2の追尾手段の両方を有効にするか、第1の追尾手段および第2の追尾手段の少なくとも一方を無効にする、ことを特徴とする画像処理装置が提供される。
本発明のさらに別の観点によれば、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、候補領域の検出結果に基づいて、候補領域から追尾処理の対象となる領域を決定する決定処理の難度に関する評価値を算出する算出手段と、第1の決定手段と第2の決定手段とを有し、検出手段が検出した候補領域に対して決定処理を行う対象決定手段と、評価値に基づいて、第1の決定手段と第2の決定手段の動作を制御する制御手段と、を有し、第2の決定手段は、第1の決定手段よりも処理精度が高いが演算負荷が大きく、制御手段は、評価値に基づいて、第1の決定手段と第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、ことを特徴とする画像処理装置が提供される。
本発明のさらに別の観点によれば、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、第1の決定手段と、第1の決定手段よりも精度が高いが演算負荷が大きい第2の決定手段とを有し、検出手段が検出した候補領域から追尾処理の対象となる領域を決定する決定処理を行う対象決定手段と、候補領域の検出結果に基づいて、第1の決定手段と第2の決定手段の動作を制御する制御手段と、を有し、制御手段は、検出された候補領域の種類および数に基づいて、第1の決定手段と第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、ことを特徴とする画像処理装置が提供される。
本発明のさらに別の観点によれば、コンピュータを、本発明に係る電子機器が有する制御手段として機能させるためのプログラムを格納したnon-transitoryな機械可読媒体が提供される。
本発明によれば、消費電力を抑制しながら良好な性能を実現する被写体追尾機能を備えた画像処理装置およびその制御方法を提供することができる。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
第1実施形態に係る撮像装置の機能構成例を示すブロック図
第1実施形態に係る撮像装置における被写体追尾結果の表示例を示す図
第1実施形態に係る撮像装置における被写体追尾結果の表示例を示す図
第1実施形態における難度スコアの算出処理に関するフローチャート
第1実施形態における難度スコアに基づく制御動作に関するフローチャート
第1実施形態に係る撮像装置の処理に関する例示的なタイミングチャート
第1実施形態における追尾処理結果の利用に関するタイミングチャート
第1実施形態における基本的なライブビュー表示動作に関するフローチャート
第1実施形態における被写体追尾時のライブビュー表示動作に関するフローチャート
第1実施形態における被写体追尾時のライブビュー表示動作に関するフローチャート
第2実施形態に係る撮像装置の機能構成例を示すブロック図
第2実施形態における被写体追尾時のライブビュー表示例を示す図
第2実施形態における難度スコアの算出処理に関するフローチャート
第2実施形態における難度スコアの算出処理に関するフローチャート
第2実施形態における難度スコアに基づく制御動作に関するフローチャート
第2実施形態における難度スコアを用いない制御動作に関するフローチャート
第2実施形態に係る撮像装置の処理に関する例示的なタイミングチャート
第2実施形態における追尾対象の被写体領域の決定方法に関するフローチャート
第2実施形態における追尾対象の被写体領域の決定方法に関するフローチャート
第2実施形態における被写体追尾時のライブビュー表示動作に関するフローチャート
第3~第8実施形態に係る撮像装置の機能構成例を示すブロック図
実施形態に係る視線情報取得部置の構成を示す図
第3実施形態における被写体検出部の有効無効制御に関する機能ブロックを示す図
第3実施形態におけるシステム制御部の動作に関するフローチャート
第3実施形態におけるシステム制御部の動作に関するフローチャート
第3実施形態におけるシステム制御部の動作に関するフローチャート
第4実施形態におけるシステム制御部の動作に関するフローチャート
第5実施形態におけるシステム制御部の動作に関するフローチャート
第6実施形態におけるシステム制御部の動作に関するフローチャート
第7実施形態におけるシステム制御部の動作に関するフローチャート
第8実施形態におけるシステム制御部の動作に関するフローチャート
第9~第18実施形態に係る撮像装置の機能構成例を示すブロック図
第9実施形態におけるシステム制御部の動作に関するフローチャート
第10実施形態におけるシステム制御部の動作に関するフローチャート
第11実施形態におけるシステム制御部の動作に関するフローチャート
第12実施形態におけるシステム制御部の動作に関するフローチャート
第13実施形態におけるシステム制御部の動作に関するフローチャート
第14実施形態におけるシステム制御部の動作に関するフローチャート
第15実施形態におけるシステム制御部の動作に関するフローチャート
第16実施形態におけるシステム制御部の動作に関するフローチャート
第17実施形態におけるシステム制御部の動作に関するフローチャート
第18実施形態におけるシステム制御部の動作に関するフローチャート
第12実施形態における撮像装置の背面外観例を示す図
以下、添付図面を参照して本発明をその例示的な実施形態に基づいて詳細に説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定しない。また、実施形態には複数の特徴が記載されているが、その全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
なお、以下の実施形態では、本発明をデジタルカメラなどの撮像装置で実施する場合に関して説明する。しかし、撮像装置は本発明を適用可能な画像処理装置の単なる一例であり、本発明は画像処理が可能な任意の電子機器で実施可能である。このような電子機器には、コンピュータ機器(パーソナルコンピュータ、タブレットコンピュータ、メディアプレーヤ、PDAなど)、携帯電話機、スマートフォン、ゲーム機、ロボット、ドローン、ドライブレコーダが含まれる。これらは例示であり、本発明は他の電子機器でも実施可能である。
●<第1実施形態>
図1は第1実施形態に係る画像処理装置の一例としての撮像装置100の機能構成例を示すブロック図である。
光学系101はフォーカスレンズなどの可動レンズを含む複数枚のレンズを有し、撮影範囲の光学像を撮像素子103の結像面に形成する。
図1は第1実施形態に係る画像処理装置の一例としての撮像装置100の機能構成例を示すブロック図である。
光学系101はフォーカスレンズなどの可動レンズを含む複数枚のレンズを有し、撮影範囲の光学像を撮像素子103の結像面に形成する。
制御部102は、CPUを有し、例えばROM123に記憶されたプログラムをRAM122に読み込んで実行する。制御部102は、各機能ブロックの動作を制御することにより、撮像装置100の機能を実現する。ROM123は例えば書き換え可能な不揮発性メモリであり、制御部102のCPUが実行可能なプログラム、設定値、GUIデータなどを記憶する。RAM122は、制御部102のCPUが実行するプログラムを読み込んだり、プログラムの実行中に必要な値を保存したりするために用いられるシステムメモリである。なお、図1では省略しているが、制御部102は各機能ブロックと通信可能に接続されている。
撮像素子103は、例えば原色ベイヤ配列のカラーフィルタを有するCMOSイメージセンサであってよい。撮像素子103には光電変換領域を有する複数の画素が2次元配置されている。撮像素子103は、光学系101が形成する光学像を複数の画素によって電気信号群(アナログ画像信号)に変換する。アナログ画像信号は撮像素子103が有するA/D変換器によってデジタル画像信号(画像データ)に変換されて出力される。A/D変換器は撮像素子103の外部に設けられてもよい。
評価値生成部124は、撮像素子103から得られる画像データから、自動焦点検出(AF)に用いる信号や評価値を生成したり、自動露出制御(AE)に用いる評価値を算出したりする。評価値生成部124は、生成した信号および評価値を制御部102に出力する。制御部102は、評価値生成部124から得られる信号や評価値に基づいて、光学系101のフォーカスレンズ位置を制御したり、撮影条件(露光時間、絞り値、ISO感度など)を決定したりする。評価値生成部124は、後述する後処理部114が生成する表示用画像データから信号や評価値を生成してもよい。
第1前処理部104は、撮像素子103から得られる画像データに対して色補間処理を適用する。色補間処理は、デモザイク処理などとも呼ばれ、画像データを構成する画素データのそれぞれが、R成分、G成分、B成分の値を有するようにする処理である。また、第1前処理部104は、必要に応じて画素数を削減する縮小処理を適用してもよい。第1前処理部104は、処理を適用した画像データを表示用メモリ107に格納する。
第1画像補正部109は、表示用メモリ107に格納された画像データに対してホワイトバランス補正処理およびシェーディング補正処理といった補正処理や、RGB形式からYUV形式への変換処理などを適用する。なお、第1画像補正部109は、補正処理を適用する際、表示用メモリ107に格納されている画像データのうち、処理対象フレームとは異なる1フレーム以上の画像データを用いてもよい。第1画像補正部109は、例えば、処理対象のフレームより時系列で前および/または後のフレームの画像データを補正処理に用いることができる。第1画像補正部109は、処理を適用した画像データを、後処理部114に出力する。
後処理部114は、第1画像補正部109から供給される画像データから、記録用画像データや表示用画像データを生成する。後処理部114は、例えば画像データに符号化処理を適用し、符号化した画像データを格納するデータファイルを記録用画像データとして生成する。後処理部114は、記録用画像データを記録部118に供給する。
また、後処理部114は、第1画像補正部109から供給される画像データから、表示部121に表示するための表示用画像データを生成する。表示用画像データは、表示部121での表示サイズに応じたサイズを有する。後処理部114は表示用画像データを情報重畳部120に供給する。
記録部118は、後処理部114で変換された記録用画像データを記録媒体119に記録する。記録媒体119は、例えば半導体メモリカード、内蔵不揮発性メモリなどであってよい。
第2前処理部105は、撮像素子103が出力する画像データに対して色補間処理を適用する。第2前処理部105は、処理を適用した画像データを追尾用メモリ108に格納する。追尾用メモリ108と表示用メモリ107とは同一メモリ空間内の別アドレス空間として実装されてもよい。また、第2前処理部105は、処理負荷を軽減するために必要に応じて画素数を削減する縮小処理を適用してもよい。なお、ここでは第1前処理部104と第2前処理部105とを別個の機能ブロックとして記載したが、共通の前処理部を用いる構成としてもよい。
第2画像補正部106は、追尾用メモリ108に格納された画像データに対してホワイトバランス補正処理およびシェーディング補正処理といった補正処理や、RGB形式からYUV形式への変換処理などを適用する。また、第2画像補正部106は、被写体検出処理に適した画像処理を画像データに適用してもよい。第2画像補正部106は、例えば、画像データの代表輝度(例えば全画素の平均輝度)が予め定められた閾値以下であれば、代表輝度が閾値以上になるよう、画像データ全体に一定の係数(ゲイン)を乗じてもよい。
なお、第2画像補正部106は、補正処理を適用する際、追尾用メモリ108に格納されている画像データのうち、処理対象フレームとは異なる1フレーム以上の画像データを用いてもよい。第2画像補正部106は、例えば、処理対象のフレームより時系列で前および/または後のフレームの画像データを補正処理に用いることができる。第2画像補正部106は、処理を適用した画像データを、追尾用メモリ108に格納する。
なお、第2前処理部105、第2画像補正部106など、被写体追尾機能に関する機能ブロックは、被写体追尾機能を実施しない場合には動作しなくてよい。また、被写体追尾機能を適用する画像データは、ライブビュー表示用もしくは記録用に撮影される動画データである。動画データは例えば30fps、60fps、120fpsといった所定のフレームレートを有する。
検出部110は、1フレーム分の画像データから、予め定められた候補被写体の領域(候補領域)を1つ以上検出する。また、検出部110は、検出した領域ごとに、フレーム内の位置および大きさ、候補被写体の種類(自動車、飛行機、鳥、昆虫、人体、頭部、瞳、猫、犬など)を示すオブジェクトクラスとその信頼度を関連付ける。また、オブジェクトクラスごとに、検出した領域数を計数する。
検出部110は、人物や動物の顔領域のような特徴領域を検出するための公知技術を用いて候補領域を検出することができる。例えば、学習データを用いて学習済みのクラス識別器として検出部110を構成してもよい。識別(分類)のアルゴリズムに特に制限はない。多クラス化したロジスティック回帰、サポートベクターマシン、ランダムフォレスト、ニューラルネットワークなどを実装した識別器を学習させることで、検出部110を実現できる。検出部110は、検出結果を追尾用メモリ108に格納する。
対象決定部111は、検出部110が検出した候補領域から、追尾対象とする被写体領域(主被写体領域)を決定する。追尾対象の被写体領域は、例えば、オブジェクトクラス、領域の大きさなど、検出結果に含まれる項目ごとに予め付与された優先順位に基づいて決定することができる。具体的には、候補領域ごとに優先順位の合計を算出し、合計が最も小さい候補領域を追尾対象の被写体領域として決定してもよい。あるいは、特定のオブジェクトクラスに属する候補領域のうち、画像の中央もしくは焦点検出領域に最も近い候補領域や、最も大きい候補領域を追尾対象の被写体領域として決定してもよい。対象決定部111は、決定した被写体領域を特定する情報を追尾用メモリ108に格納する。
難度判定部112は、対象決定部111が決定した追尾対象の被写体領域について、追尾の難度を示す評価値である難度スコアを算出する。例えば、難度判定部112は、追尾の難度に影響を与える1つ以上の要素を考慮して難度スコアを算出することができる。追尾の難度に影響を与える要素としては、被写体領域の大きさ、被写体のオブジェクトクラス(種類)、同じオブジェクトクラスに属する領域の総数、画像内の位置などが例示されるが、これらに限定されない。難度スコアの算出方法の具体例については後述する。難度判定部112は、算出した難度スコアを追尾制御部113に出力する。
追尾制御部113は、難度判定部112が算出した難度スコアに基づいて、追尾部115が有する複数の追尾部のそれぞれについて、有効とするか無効とするかを決定する。本実施形態では、追尾部115が、演算負荷と追尾精度が異なる複数の追尾部を有する。具体的には、追尾部115は、深層学習(DL)を用いて被写体追尾を行うDL追尾部116と、DLを用いずに被写体追尾を行う非DL追尾部117とを有する。DL追尾部116は、非DL追尾部117よりも処理精度が高い反面、演算負荷が非DL追尾部117よりも大きいものとする。
この場合、追尾制御部113は、DL追尾部116と非DL追尾部117のそれぞれについて、有効とするか無効とするかを決定する。また、追尾制御部113は、有効とする追尾部についての動作頻度についても併せて決定する。動作頻度とは、追尾処理を適用する頻度(fps)である。
追尾部115は、追尾用メモリ108に格納された、処理対象のフレーム(現フレーム)の画像データから追尾対象の被写体領域を推定し、推定した被写体領域のフレーム内の位置と大きさを追尾結果として求める。追尾部115は例えば、現フレームの画像データと、現フレームより前に撮影された過去フレーム(例えば1つ前のフレーム)との画像データとを用いて、現フレーム内の追尾対象の被写体領域を推定する。追尾部115は、追尾結果を情報重畳部120に出力する。
ここで、追尾部115は、過去フレームにおける追尾対象の被写体領域に対応する、処理対象のフレーム内の領域を推定するものである。つまり、処理対象のフレームについて対象決定部111が決定した追尾対象の被写体領域は、処理対象のフレームに対する追尾処理における追尾対象の被写体領域ではない。処理対象のフレームに対する追尾処理における追尾対象の被写体領域は、過去フレームにおける追尾対象の被写体領域である。処理対象のフレームについて対象決定部111が決定した追尾対象の被写体領域は、追尾対象の被写体が別の被写体に切り替わった場合に、次のフレームの追尾処理に用いられる。
追尾部115は深層学習(DL)を用いて被写体追尾を行うDL追尾部116と、DLを用いずに被写体追尾を行う非DL追尾部117とを有する。そして、追尾制御部113によって有効とされた追尾部が、追尾制御部113によって設定された動作頻度で追尾結果を出力する。
DL追尾部116は、学習済みの、畳み込み層を含む多層ニューラルネットワークを用いて、追尾対象の被写体領域の位置および大きさを推定する。より具体的には、DL追尾部116は、対象となりうるオブジェクトクラスごとの被写体領域についての特徴点と、特徴点が含む特徴量とを抽出する機能と、抽出した特徴点をフレーム間で対応付ける機能とを有する。したがって、DL追尾部116は、過去フレームの追尾対象の被写体領域についての特徴点に対応付けられる現フレームの特徴点から、現フレームにおける追尾対象の被写体領域の位置と大きさを推定することができる。
DL追尾部116は、現フレームについて推定した追尾対象の被写体領域について、位置、大きさ、および信頼度スコアを出力する。信頼度スコアは、フレーム間における特徴点の対応付けの信頼度、すなわち、追尾対象の被写体領域の推定結果の信頼度を示す。信頼度スコアが、フレーム間の特徴点の対応付けの信頼度が低いことを示す場合、現フレームにおいて推定された被写体領域が、過去フレームにおける追尾対象の被写体領域とは異なる被写体に関する領域である可能性があることを示す。
一方、非DL追尾部117は、深層学習を用いない手法によって、現フレームにおける追尾対象の被写体領域を推定する。ここでは、非DL追尾部117が、色構成の類似度に基づいて追尾対象の被写体領域を推定するものとする。しかし、過去フレームにおける追尾対象の被写体領域をテンプレートとしたパターンマッチングなど、他の方法を用いてもよい。非DL追尾部117は、現フレームについて推定した追尾対象の被写体領域について、位置、大きさ、および信頼度スコアを出力する。
ここで、色構成の類似度について説明する。ここでは、説明および理解を容易にするため、過去フレームと現フレームとで追尾対象の被写体領域の形状および大きさが同一であるものとする。また、画像データがRGBの色成分ごとに8ビット(値0~255)の深度を有するものとする。
非DL追尾部117は、ある色成分(例えばR成分とする)について、取り得る値の範囲(0~255)を複数の領域に分割する。そして、非DL追尾部117は、追尾対象の被写体領域に含まれる画素について、R成分の値が属する領域によって分類した結果(値の範囲ごとの頻度)を、追尾対象の被写体領域の色構成とする。
最も単純な例として、R成分の取り得る値の範囲(0~255)を、0~127のRed1と、128~255のRed2とに分割したものとする。そして、過去フレームにおける追尾対象の被写体領域の色構成が、Red1が50画素、Red2が70画素であったとする。また、現フレームにおける追尾対象の被写体領域の色構成が、Red1が45画素、Red2が75画素であったとする。
この場合、非DL追尾部117は色構成の類似度を表すスコア(類似度スコア)を、同じ値の範囲に分類された画素数の差に基づいて、以下の様に算出することができる。
類似度スコア=|50-45|+|70-75|=10
類似度スコア=|50-45|+|70-75|=10
仮に、現フレームにおける追尾対象の被写体領域の色構成が、Red1が10画素、Red2が110画素であったとすると、類似度スコアは、
類似度スコア=|50-10|+|70-110|=80
となる。このように、色構成の類似度が低いほど類似度スコアは大きくなる。あるいは、類似度スコアが小さいほど、色構成の類似度が高いことを表す。
類似度スコア=|50-10|+|70-110|=80
となる。このように、色構成の類似度が低いほど類似度スコアは大きくなる。あるいは、類似度スコアが小さいほど、色構成の類似度が高いことを表す。
選択部125は、DL追尾部116が出力する信頼度スコア、および非DL追尾部117が出力する類似度スコアに基づいて、DL追尾部116および非DL追尾部117の追尾結果の一方を採用する。選択部125は例えば信頼度スコアが予め定められた信頼度スコア閾値以下、かつ類似度スコアが予め定められた類似度スコア閾値以下であった場合には、非DL追尾部117の追尾結果を採用し、それ以外の場合には、DL追尾部116の追尾結果を採用する。選択部125は、採用した追尾結果を、情報重畳部120および制御部102に出力する。
なお、ここではDL追尾部116および非DL追尾部117の追尾結果のいずれを採用するかを信頼度スコアおよび類似度スコアに基づいて決定した。しかし、他の方法で決定してもよい。例えば、DL追尾部116の精度は、非DL追尾部117の精度より高い傾向にあることを利用して、DL追尾部116の追尾結果を優先して採用してもよい。具体的には、DL追尾部116の追尾結果が得られていればDL追尾部116の追尾結果を採用し、得られていなければ非DL追尾部117の追尾結果を採用してもよい。
情報重畳部120は、追尾部115が出力する追尾結果に含まれる、被写体領域の大きさに基づいて、追尾枠の画像を生成する。例えば、追尾枠の画像は、被写体領域に外接する矩形の輪郭を表す枠状の画像であってよい。そして、情報重畳部120は、追尾結果に含まれる被写体領域の位置に追尾枠が表示されるように、後処理部114が出力する表示用画像データに対して追尾枠の画像を重畳させて合成画像データを生成する。情報重畳部120はまた、撮像装置100の現在の設定値や状態などを表す画像を生成し、これらの画像が予め定められた位置に表示されるように、後処理部114が出力する表示用画像データに重畳させてもよい。情報重畳部120は、合成画像データを表示部121に出力する。
表示部121は例えば液晶ディスプレイや有機ELディスプレイであってよい。表示部121は、情報重畳部120が出力する合成画像データに基づく画像を表示する。以上のようにして1フレーム分のライブビュー表示が行われる。
図2Aおよび図2Bは、ライブビュー表示の例を示す図である。図2Aは、後処理部114が出力する表示用画像データが表す画像800を示す。また、図2Bは、表示用画像データに対して追尾枠803の画像を重畳した合成画像データが表す画像802を示す。ここでは撮影範囲に候補被写体801が1つだけ存在するため、候補被写体801が追尾対象の被写体として選択される。そして、候補被写体801を囲むように追尾枠803が重畳されている。なお、図2Bの例では、追尾枠803が4つの中空かぎ形状の組み合わせから構成されているが、中空でないかぎ形状の組み合わせ、切れ目のない枠、矩形の組み合わせ、三角形の組み合わせなど、他の形態の追尾枠803としてもよい。また、追尾枠803の形態はユーザが選択可能であってもよい。
次に、図3のフローチャートを用いて、難度判定部112が実行する、追尾対象の被写体領域に関する難度スコアの算出動作についてさらに説明する。ここではオブジェクトクラスが以下のグループA~Dに分類されているものとする。グループA~Cは、追尾の難度に関して類似した特性を有するオブジェクトクラスが同じグループに属するように定められている。また、グループDは、グループA~Cに属するオブジェクトクラスに対して重要性が低いオブジェクトクラスが分類される。
グループAは車オブジェクトクラス、電車オブジェクトクラス、ジェット機オブジェクトクラス、自転車オブジェクトクラス、オートバイオブジェクトクラス、ヘリコプターオブジェクトクラスなど、剛体の被写体のオブジェクトクラスを主に含む。グループBは鳥オブジェクトクラス、昆虫オブジェクトクラスなど、動きが速く、また被写体領域の形状が大きく変化する被写体のオブジェクトクラスを主に含む。グループC(動物・人間)は犬オブジェクトクラス、猫オブジェクトクラス、人体オブジェクトクラスなど、顔と身体を含む被写体のオブジェクトクラスを主に含む。グループDは他のオブジェクトクラスであり、グループDに属するオブジェクトクラスは重要度が低いものとする。なお、グループA~Dの分類については単なる例示であり、他の観点から追尾の難度に関して分類してもよい。
S401において難度判定部112は、難度スコアを0に初期化する。
S402において難度判定部112は、追尾対象の被写体領域のオブジェクトクラスがグループAに属するか否かを判定し、グループAに属すると判定されればS406を、グループAに属すると判定されなければS403を実行する。
S402において難度判定部112は、追尾対象の被写体領域のオブジェクトクラスがグループAに属するか否かを判定し、グループAに属すると判定されればS406を、グループAに属すると判定されなければS403を実行する。
S406において難度判定部112は、難度スコアを維持する。グループAに属するオブジェクトクラスは、比較的追尾が容易な被写体のオブジェクトクラスである。そのため、難度判定部112は追尾対象の被写体領域は追尾しやすいと判定し、難度スコアに加点しない(難度を高くしない)。
S403において難度判定部112は、追尾対象の被写体領域のオブジェクトクラスがグループBに属するか否かを判定し、グループBに属すると判定されればS407を、グループBに属すると判定されなければS404を実行する。
S407において難度判定部112は、難度スコアを1加点(+1)する。グループBは動きが速く、形状変化も大きな被写体のオブジェクトクラスが分類されている。そのため、追尾対象の被写体領域のオブジェクトクラスがグループBに属する場合、難度判定部112は追尾対象の被写体領域は追尾しづらいと判定し、難度スコアに加点する(難度を上げる)。
S404において難度判定部112は、追尾対象の被写体領域のオブジェクトクラスがグループCに属するか否かを判定し、グループCに属すると判定されればS405を、グループCに属すると判定されなければS410を実行する。
S405において難度判定部112は、追尾対象の被写体領域内で、頭部オブジェクトクラスを有する被写体領域および、瞳オブジェクトクラスを有する被写体領域が検出されているか否かを判定する。難度判定部112は、追尾対象の被写体領域内で、頭部オブジェクトクラスを有する被写体領域および、瞳オブジェクトクラスを有する被写体領域が検出されていると判定されればS408を、判定されなければS409を実行する。
S408において難度判定部112は、難度スコアを維持する。グループCは主に犬、猫、人体のように、顔を有する被写体のオブジェクトクラスである。そして、階層関係にある頭部と瞳の両方が検出されていると判定されていることから、難度判定部112は追尾対象の被写体領域は追尾しやすいと判定し、難度スコアに加点しない。
S409において難度判定部112は、難度スコアを1加点する。グループCは主に犬、猫、人体のように、顔を有する被写体のオブジェクトクラスである。そして、階層関係にある頭部と瞳の少なくとも一方が検出されていないと判定されていることから、難度判定部112は追尾対象の被写体領域は追尾しづらいと判定し、難度スコアに加点する。
S410において難度判定部112は、難度スコアを維持する。追尾対象の被写体領域はグループDに属しており、グループA、グループB、グループCのいずれのオブジェクトクラスでもないことから、難度判定部112は追尾対象の被写体領域が主要な被写体に関する領域ではないと判定し、難度スコアに加点しない。
S411において難度判定部112は、追尾対象の被写体領域のオブジェクトクラスと同じオブジェクトクラスを有する候補領域の数が予め定められた閾値N(N≧2)以上であるか否かを判定する。難度判定部112は、追尾対象の被写体領域のオブジェクトクラスと同じオブジェクトクラスを有する候補領域の数が予め定められた閾値N以上であると判定されればS412を、判定されなければS413を実行する。
S412において難度判定部112は、難度スコアを1加点する。追尾対象の被写体領域と同じオブジェクトクラスを有する候補領域の数が閾値N以上である場合、難度判定部112は追尾対象の被写体領域は追尾しづらいと判定し、難度スコアに加点する。
S413において難度判定部112は、難度スコアを維持する。追尾対象の被写体領域と同じオブジェクトクラスを有する候補領域の数が閾値N未満である場合、難度判定部112は追尾対象の被写体領域は追尾しやすいと判定し、難度スコアを維持する。
S414において難度判定部112は、検出部110が検出した候補領域が有するオブジェクトクラスの種別数が予め定められた閾値O(O≧2)以上であるか否かを判定する。難度判定部112は、検出部110が検出した候補領域が有するオブジェクトクラスの種別数が閾値O以上であると判定されればS415を、判定されなければS416を実行する。
S415において難度判定部112は、難度スコアを1加点する。候補領域のオブジェクトクラス種別数が閾値O以上である場合、様々なオブジェクトクラスの候補領域が撮影範囲に混在しているため、追尾対象の被写体領域は追尾しづらいと判定し、難度スコアに加点する。
S416において難度判定部112は、難度スコアを維持する。追尾対象の被写体領域のオブジェクトクラス種別数が閾値O未満である場合、難度判定部112は追尾対象の被写体領域が追尾部115にて追尾しやすい状態であると判定し、難度スコアを維持する。
S417において難度判定部112は、算出した難度スコアを追尾制御部113に出力する。
ここで説明した動作によって算出される難度スコアは0,1,2,3のいずれかの値を取る。しかし、実際にはより細かな刻みを有してもよい。実際にはここで例示したものより多くのオブジェクトクラスを、またより多くのグループに分類することができる。また、難度スコアはS402~S404、S411、S414の要素全てを判定する必要はなく、これらの要素のうちの少なくとも1つに基づき算出してもよい。また、難度スコアとを2値(0または1)として、難度スコア1でDL追尾部116を有効(非DL追尾部117は有効または無効)、難度スコア0でDL追尾部116を無効(非DL追尾部117は有効)、のように制御してもよい。
あらかじめグルーピングし、難度スコアが取りうるレンジを広くすることで、難度判定部112はより精度の高い難度スコアを算出できる。また、オブジェクトクラスに対して速度情報を関連付けておくことにより、追尾対象の被写体領域のオブジェクトクラスに加え、大きさと速度情報とから画像上の移動速度を推定して、難度スコアに反映させてもよい。例えば、推定される移動速度が閾値以上であれば難度スコアに加点するようにする。また、過去のフレーム(例えば1つ前のフレーム)において算出した信頼度スコアおよび類似度スコアを難度スコアの算出処理に含めてもよい。
次に、追尾制御部113の動作について、図4のフローチャートを用いてさらに説明する。ここでは、難度判定部112が、図3を用いて説明した動作によって難度スコアを算出しているものとする。したがって、難度スコアは0から3のいずれかの値を有する。
S501において追尾制御部113は、難度スコアが3であるか否かを判定し、難度スコアが3であると判定されればS504を、判定されなければS502を実行する。
S502において追尾制御部113は、難度スコアが2であるか否かを判定し、難度スコアが2であると判定されればS505を、判定されなければS503を実行する。
S503において追尾制御部113は、難度スコアが1であるか否かを判定し、難度スコアが1であると判定されればS506を、判定されなければS507を実行する。
S502において追尾制御部113は、難度スコアが2であるか否かを判定し、難度スコアが2であると判定されればS505を、判定されなければS503を実行する。
S503において追尾制御部113は、難度スコアが1であるか否かを判定し、難度スコアが1であると判定されればS506を、判定されなければS507を実行する。
S504において追尾制御部113は、DL追尾部116を有効に、非DL追尾部117を無効にすることを決定する。また、追尾制御部113は、DL追尾部116の動作頻度を60fps(毎フレーム)に設定する。難度スコア3は算出される難度スコアのうち、追尾の難度が最も高い状態である。そのため、追尾制御部113は、非DL追尾部117よりも性能の良いDL追尾部116を用いることを決定する。一方、追尾制御部113は、非DL追尾部117を用いても良い結果が得られる可能性が低いと判定し、非DL追尾部117は用いないことを決定する。
S505において追尾制御部113は、DL追尾部116と非DL追尾部117との両方を有効にすることを決定する。また、追尾制御部113は、DL追尾部116の動作頻度を30fps(1フレームおき)に、非DL追尾部117の動作頻度を60fpsに設定する。難度スコア2は追尾の難度がやや高い状態である。そのため、追尾制御部113は、DL追尾部116と非DL追尾部117との両方を用いることを決定する。一方で、追尾制御部113は、DL追尾部116については非DL追尾部117についてよりも動作頻度を低減することにより、消費電力を低減する。また、追尾制御部113は、非DL追尾部117の動作頻度を毎フレームに設定することで、追尾の追従性を維持する。
S506において追尾制御部113は、DL追尾部116と非DL追尾部117との両方を有効にすることを決定する。また、追尾制御部113は、DL追尾部116の動作頻度を15fps(2フレームおき)に、非DL追尾部117の動作頻度を60fpsに設定する。難度スコア1は追尾の難度がやや低い状態である。そのため、追尾制御部113は、DL追尾部116と非DL追尾部117との両方を用いることを決定する。一方で、追尾制御部113は、DL追尾部116については難度スコア2の場合よりもさらに動作頻度を低減することにより、消費電力を一層低減する。一方で、追尾制御部113は、非DL追尾部117の動作頻度を毎フレームに設定することで、追尾の追従性を維持する。
S507において追尾制御部113は、DL追尾部116を無効に、非DL追尾部117を有効にすることを決定する。また、追尾制御部113は、非DL追尾部117の動作頻度を30fps(1フレームおき)に設定する。S507が実行されるのは難度スコア0の場合であり、追尾の難度が最も低い状態である。そのため、追尾制御部113は、非DL追尾部117で十分精度の良い結果が得られる可能性が高いと判定し、非DL追尾部117だけを用いることを決定する。さらに、追尾制御部113は、非DL追尾部117の動作頻度を1フレームおきとすることにより、消費電力をさらに低減させる。
ここで説明した制御動作は単なる例示であり、難度スコアが取り得る値の範囲や値の刻みに応じて変化しうる。また、ここでは動画のフレームレートが60fpsであるものとしたが、120fpsとしてもよい。この場合、非DL追尾部117の動作頻度を120fpsに設定するときには、DL追尾部116の動作頻度を15fps未満、例えば5fpsとしてもよい。
また、必ずしも難度スコアごとに制御を異ならせなくてもよい。例えば、難度スコアが第1の閾値以上であればDL追尾部116を有効に、非DL追尾部117を無効にしたり難度スコアが第2の閾値未満であればDL追尾部116を無効に、非DL追尾部117を有効にしたりしてもよい。
図5は、撮像装置100で被写体追尾機能を実施する際の、上述した各部の動作タイミングの例を示すタイミングチャートである。t600、t601、t602、t603、t604、t605、t606は各フレームにおいて検出部110が検出処理を開始するタイミングである。t600において、検出部110は最初のフレーム(0フレーム目)に対する検出処理610を開始する。
検出処理610により検出部110が0フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出すると、対象決定部111は追尾対象の被写体領域を決定する決定処理611を開始する。決定処理611によって0フレーム目の画像データについて追尾対象の被写体領域を決定すると、難度判定部112が追尾対象の被写体領域の難度判定処理612を開始する。
難度判定処理612によって難度スコアが算出され、かつ、決定処理611で決定した被写体領域が、直近に決定された被写体領域とは異なる被写体に関する領域である場合、追尾制御部113は、DL追尾部116および非DL追尾部117の制御を見直す。具体的には、0フレーム目の画像データについて決定された追尾対象の被写体領域の難度スコアに応じて、DL追尾部116および非DL追尾部117の有効または無効と、動作頻度とを更新する。また、追尾部115は、追尾対象とする被写体領域を、0フレーム目の画像データについて決定された追尾対象の被写体領域で更新する。したがって、1フレーム目の画像データについては、更新された被写体領域を追尾する。
一方、決定処理611で決定した被写体領域と直近に決定された被写体領域とが同一被写体に関する領域である場合、追尾制御部113は、DL追尾部116および非DL追尾部117の制御を見直さない。また、追尾部115は、追尾対象とする被写体領域を更新しない。
図5において、0フレーム目、t602より検出処理624が開始される2フレーム目、t604より検出処理633が開始される4フレーム目、t606より検出処理643が開始される6フレーム目は、追尾対象の被写体に変更がない場合である。
一方、t601より検出処理616を開始する1フレーム目の画像データについては、決定処理617で決定された追尾対象の被写体領域と直近に決定された被写体領域とが互いに異なる被写体に関する領域である例を示す。
この場合、次フレームで追尾対象とする被写体を変更するため、追尾制御部113は難度判定処理618の結果を用いて、DL追尾部116および非DL追尾部117の有効・無効制御を見直す。ここでは、次フレームに対して、非DL追尾部117を無効、DL追尾部116を有効、DL追尾部116の動作頻度を、0フレーム目および1フレーム目における動作頻度の倍に切り替える。
t603より検出処理629を開始する3フレーム目においても同様に追尾対象の被写体が変化し、追尾制御部113はDL追尾部116および非DL追尾部117の有効・無効制御を見直す。ここでは、t604より検出処理633を開始する4フレーム目について、DL追尾部116を無効、非DL追尾部117を有効とする。また、非DL追尾部117の動作頻度を0フレーム目および1フレーム目の動作頻度設定の半分の頻度とする。
t600において、追尾部115は0フレーム目のDL追尾処理613および非DL追尾処理614を開始する。ここでは0フレーム目の時点で追尾制御部113によりDL追尾部116および非DL追尾部117がいずれも有効で、非DL追尾部117の動作頻度がDL追尾部116の動作頻度の2倍に設定されているものとする。
図5において、破線矩形で示されるDL追尾処理および非DL追尾処理は、DL追尾部116および非DL追尾部117の動作頻度が毎フレームよりも低く設定されたことによって実行されないことを示している。
0フレーム目において、DL追尾部116はDL追尾処理613を、非DL追尾部117は非DL追尾処理614を実施し、追尾処理結果を出力する。ここでDL追尾処理613は非DL追尾処理614よりも精度の高い追尾結果を出力できる。そのため、追尾部115は選択部125によってDL追尾処理613の追尾結果を採用する。そして、情報重畳部120は、重畳処理615において、DL追尾処理613の追尾結果に基づく追尾枠が重畳された合成画像データを生成する。t601において、表示部121は0フレーム目の合成画像データの表示処理623を実行する。
t601において、非DL追尾部117は1フレーム目の非DL追尾処理620を開始する。DL追尾部116は動作頻度の設定にしたがい、1フレーム目については追尾処理を行わない。1フレーム目では非DL追尾部117の追尾結果のみが得られるため、重畳処理622において情報重畳部120は、非DL追尾部117の追尾結果に基づく追尾枠が重畳された合成画像データを生成する。
なお、非DL追尾処理はDL追尾処理よりも処理負荷が低いため、DL追尾処理よりも早く終了する。DL追尾処理が行われる場合と同様のタイミングで追尾結果を出力するため、追尾部115は、非DL追尾部処理に続いて待ち処理621を実施する。t602において、表示部121は1フレーム目の合成画像データの表示処理628を実行する。
t602において、DL追尾部116は2フレーム目のDL追尾処理625を開始する。2フレーム目については非DL追尾部117が無効にされているため、非DL追尾処理は実行されない。2フレーム目ではDL追尾部116の追尾結果のみが得られるため、重畳処理627において情報重畳部120は、DL追尾部116の追尾結果に基づく追尾枠が重畳された合成画像データを生成する。t603において、表示部121は1フレーム目の合成画像データの表示処理632を実行する。
t603において、DL追尾部116は3フレーム目のDL追尾処理630を開始する。2フレーム目のDL追尾処理625開始前に、DL追尾部116の動作頻度は0フレーム目における動作頻度の倍に変更されているため、2フレーム目に続いて3フレーム目においてもDL追尾処理が実行される。重畳処理631および表示処理638については2フレーム目と同様である。
t604において、非DL追尾部117は4フレーム目の非DL追尾処理635を開始する。4フレーム目についてはDL追尾部116が無効であるため、DL追尾処理は実行されない。非DL追尾部117の動作頻度は0フレーム目、1フレーム目の動作頻度の半分に設定されているため、4フレーム目の非DL追尾処理635は実施されるが、5フレーム目の非DL追尾処理640は実施されない。待ち処理636、重畳処理637、表示処理642については1フレーム目と同様である。
t605において、追尾部115はDL追尾処理639および非DL追尾処理640をいずれも実行しない。そのため、5フレーム目に対する重畳処理641において情報重畳部120は、4フレーム目で得られた非DL追尾処理635の追尾結果に基づく追尾枠を重畳した合成画像データを生成する。なお、情報重畳部120は、5フレーム目のようにDL追尾処理および非DL追尾処理のいずれも実行されないフレームについては重畳処理において追尾枠を重畳しない合成画像データを生成してもよい。
t606において、非DL追尾部117は6フレーム目の非DL追尾処理644を開始する。DL追尾部116は無効であるため、DL追尾処理は実行されない。6フレーム目の非DL追尾処理644、待ち処理645、重畳処理646、表示処理647は4フレーム目と同様である。
このように、追尾対象の被写体が別の被写体に切り替わった場合には、次のフレームで用いる新たな追尾対象の被写体領域について算出される難度スコアに基づいてDL追尾処理、非DL追尾処理の実行の有無および動作頻度を見直す。そのため、難度スコアに応じて動的に適切な追尾処理を実行することができ、消費電力を抑えることができる。
本実施形態における追尾処理は、処理対象のフレームより前のフレームに対する追尾結果を利用することができる。図6に示すタイミングチャートを用いて、過去の追尾結果を利用した追尾処理に関して説明する。
t700は0フレーム目の追尾処理開始タイミングである。以降、t70n(n=1,2,...)はnフレーム目の追尾処理開始タイミングを示す。t702、t704においてそれぞれ追尾対象の被写体の切り替え、追尾制御部113によるDL追尾部116、非DL追尾部117の制御の見直しを行う。
DL追尾部116および非DL追尾部117は、有効に設定されている場合に、動作頻度に応じたフレームに対して追尾処理を実行する。また、DL追尾部116および非DL追尾部117は、処理対象フレームの追尾処理に、1つ前のフレームに対して得られた追尾結果を用いる。
DL追尾部116の処理精度は、類似度などに基づく非DL追尾部117の処理精度よりも高い傾向にある。そのため、処理対象フレームのDL追尾処理および/または非DL追尾処理には、利用可能であれば処理対象フレームの1つ前のフレームに対するDL追尾処理の追尾結果を用いる。なお、処理対象フレームと1つ前のフレームとで追尾対象の被写体が異なる場合には、1つ前のフレームに対する追尾結果を用いない。
したがって、1フレーム目の非DL追尾処理711は0フレーム目のDL追尾処理710の追尾結果を用いる。1フレーム目と2フレーム目とでは追尾対象の被写体が異なるため、2フレーム目のDL追尾処理712では、1フレーム目の追尾結果を用いない。3フレーム目のDL追尾処理713は2フレーム目のDL追尾処理712の追尾結果を用いる。3フレーム目と4フレーム目とでは追尾対象の被写体が異なるため、4フレーム目の非DL追尾処理715では、3フレーム目の追尾結果を用いない。4フレーム目ではDL追尾処理714が実行されていないため、5フレーム目の非DL追尾処理716は、4フレーム目の非DL追尾処理715の追尾結果を用いる。
図7は、撮像装置100の、被写体追尾機能が有効な際のライブビュー表示動作に関するフローチャートである。
S200で制御部102は、撮像素子103を制御して、1フレームの撮影を行い、画像データを読み出す。
S201で第1前処理部104は、撮像素子103から読み出された画像データに対して前処理を適用する。
S202で第1前処理部104は、前処理を適用した画像データを表示用メモリ107に格納する。
S200で制御部102は、撮像素子103を制御して、1フレームの撮影を行い、画像データを読み出す。
S201で第1前処理部104は、撮像素子103から読み出された画像データに対して前処理を適用する。
S202で第1前処理部104は、前処理を適用した画像データを表示用メモリ107に格納する。
S203で第1画像補正部109は、表示用メモリ107から読み出した画像データに対し、所定の画像補正処理の適用を開始する。S204で第1画像補正部109は、適用すべき画像補正処理をすべて完了したか否かを判定し、すべて完了したと判定されれば、画像補正処理を適用した画像データを後処理部114に出力する。また、第1画像補正部109は、画像補正処理がすべて完了したと判定されなければ、画像補正処理を継続する。
S205で後処理部114は、第1画像補正部109によって画像補正処理が適用された画像データから、表示用の画像データを生成し、情報重畳部120に出力する。
S206で情報重畳部120は、後処理部114が生成した表示用の画像データと、追尾枠の画像データと、他の情報を示す画像データとを用いて、撮影画像に追尾枠や他の情報の画像が重畳した合成画像のデータを生成する。情報重畳部120は、合成画像データを表示部121に出力する。
S207で表示部121は、情報重畳部120が生成した合成画像データを表示する。これにより、1フレーム分のライブビュー表示が完了する。
図8Aおよび図8Bは、撮像装置100の被写体追尾機能の動作に関するフローチャートである。
S300~S304の処理は、表示用メモリ107の代わりに追尾用メモリ108を用いることと、画像補正処理が追尾用の画像補正処理であることとを除き、図7のS200~S204の処理と同様である。
S300~S304の処理は、表示用メモリ107の代わりに追尾用メモリ108を用いることと、画像補正処理が追尾用の画像補正処理であることとを除き、図7のS200~S204の処理と同様である。
S305で検出部110は、すべての画像補正処理が完了した画像データに対して、被写体領域の検出処理を実行する。検出部110は、検出した被写体領域(候補領域)のそれぞれについて、位置および大きさ、オブジェクトクラス、同一オブジェクトクラスに属する被写体領域の数、信頼度スコアなどを、検出結果として追尾用メモリ108に格納する。
S306で対象決定部111は、追尾用メモリ108に格納された候補領域の情報から、追尾対象の被写体領域を1つ決定する。対象決定部111は、決定した追尾対象の被写体領域の情報を追尾用メモリ108に格納する。
S307で難度判定部112は、追尾対象の被写体領域の情報および候補領域の情報に基づいて、及び、追尾用メモリ108より読み出す追尾候補被写体情報に基づいて難度スコアを算出する。また、追尾制御部113は、難度スコアに基づいて、DL追尾部116と非DL追尾部117の有効・無効および、有効な追尾部の動作頻度を決定する。
S308で追尾部115は、処理対象フレームについて、DL追尾部116が追尾処理を実行したか否かを判定し、実行したと判定されればS309を、実行したと判定されなければS310を実行する。
S309で追尾部115は、選択部125によってDL追尾部116の追尾結果を採用して情報重畳部120に出力する。
S310で追尾部115は、選択部125によって非DL追尾部117の追尾結果を採用して情報重畳部120に出力する。なお、非DL追尾部117も追尾処理を実行していない場合には、追尾結果を出力しないか、1つ前のフレームの追尾結果を出力する。
S310で追尾部115は、選択部125によって非DL追尾部117の追尾結果を採用して情報重畳部120に出力する。なお、非DL追尾部117も追尾処理を実行していない場合には、追尾結果を出力しないか、1つ前のフレームの追尾結果を出力する。
S311で追尾制御部113は、処理対象フレームの追尾処理に用いられた被写体領域が、S306で決定した追尾対象の被写体領域と同一被写体に係る領域であるか否かを判定する。この判定は、追尾対象の被写体が切り替わったか否かの判定とも言える。追尾制御部113は、例えば、処理対象のフレームにおける追尾結果に含まれる信頼度スコアが閾値以下であれば、追尾対象の被写体が切り替わったと判定することができる。なお、これは一例であり、他の方法で判定を行ってもよい。
追尾制御部113は、追尾対象の被写体が切り替わったと判定されればS312を、追尾対象の被写体が切り替わったと判定されなければS313を、実行する。
S312で追尾制御部113は、S306で処理対象のフレームについて決定した追尾対象の被写体領域の難度スコアに基づいて、次フレームに対するDL追尾部116および非DL追尾部117の有効・無効と、動作頻度とを決定する。
S313で情報重畳部120は、表示用画像データと、S309もしくはS310で採用した追尾結果とに基づいて、追尾枠の画像が重畳された合成画像のデータを生成する。
S314およびS315の処理はS206およびS207の処理と同様である。
S314およびS315の処理はS206およびS207の処理と同様である。
以上説明したように、本実施形態によれば、第1の追尾部と、第1の追尾部よりも処理精度が高いが、演算量が多い第2の追尾部とを用いる撮像装置において、追尾の難度に基づいて第1および/または第2追尾部の有効・無効を制御するようにした。そのため、良好な追尾結果が得られる可能性が低い追尾部を無効としたり、一方の処理部だけで良好な追尾結果が得られる可能性が高い場合には他方の追尾部を無効としたりすることで、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。
追尾処理は一般に動画に対して実行されるため、第2の追尾部として、深層学習のような演算量の多い機械学習を利用する追尾部を用いる場合、消費電力の抑制効果は特に大きい。
●<第2実施形態>
次に、本発明の第2実施形態について説明する。
図9は第2実施形態に係る画像処理装置の一例である撮像装置100'の機能構成例を示すブロック図であり、第1実施形態で説明した撮像装置100と同じ構成には同じ参照数字を付してある。本実施形態は、追尾部ではなく対象決定部の動作を難度スコアによって制御する。
次に、本発明の第2実施形態について説明する。
図9は第2実施形態に係る画像処理装置の一例である撮像装置100'の機能構成例を示すブロック図であり、第1実施形態で説明した撮像装置100と同じ構成には同じ参照数字を付してある。本実施形態は、追尾部ではなく対象決定部の動作を難度スコアによって制御する。
以下、第1実施形態と異なる部分について説明する。
本実施形態の難度判定部112は、追尾用メモリ108に格納された、検出部110の検出結果に基づいて、検出された候補領域から追尾対象の被写体領域を決定する処理(対象決定処理)の難度を示す評価値である難度スコアを算出する。
本実施形態の難度判定部112は、追尾用メモリ108に格納された、検出部110の検出結果に基づいて、検出された候補領域から追尾対象の被写体領域を決定する処理(対象決定処理)の難度を示す評価値である難度スコアを算出する。
例えば、難度判定部112は、対象決定処理の難度に影響を与える1つ以上の要素を考慮して難度スコアを算出することができる。対象決定処理の難度に影響を与える要素としては、候補領域の大きさ、候補領域のオブジェクトクラス(種類)、同じオブジェクトクラスに属する候補領域の数、画像内における候補領域の位置などが例示されるが、これらに限定されない。難度スコアの算出方法の具体例については後述する。難度判定部112は、算出した難度スコアを対象決定制御部135に出力する。
対象決定制御部135は、難度判定部112が算出した難度スコアに基づいて、対象決定部130が有する複数の対象決定部のそれぞれについて、有効とするか無効とするかを決定する。本実施形態では、対象決定部130が演算負荷と対象決定精度が異なる複数の対象決定部を有する。具体的には、対象決定部130は、深層学習(DL)を用いて対象決定処理を行うDL対象決定部131と、DLを用いずに対象決定処理を行う非DL対象決定部132とを有する。DL対象決定部131は、非DL対象決定部132よりも処理精度が高い反面、演算負荷が非DL対象決定部132よりも大きいものとする。
この場合、対象決定制御部135は、DL対象決定部131と非DL対象決定部132のそれぞれについて、有効とするか無効とするかを決定する。なお、検出された候補領域が1つの場合と、候補領域が検出されなかった場合、対象決定制御部135は、DL対象決定部131と非DL対象決定部132の両方を無効にする。
対象決定部130は、検出部110が検出した候補領域から、追尾対象とする被写体領域(主被写体領域)を決定する。対象決定部130は、決定した被写体領域を特定する情報を追尾用メモリ108に格納する。
対象決定部130は深層学習(DL)を用いて対象決定処理を行うDL対象決定部131と、DLを用いずに対象決定処理を行う非DL対象決定部132とを有する。そして、DL対象決定部131と非DL対象決定部132のうち、対象決定制御部135によって有効にされた対象決定部が、決定した被写体領域を特定する情報を出力する。
DL対象決定部131は、学習済みの多層ニューラルネットワークを用いて、複数の候補領域から追尾対象の被写体領域を決定する。多層ニューラルネットワークは、例えば畳み込みニューラルネットワーク(CNN)であってよい。多層ニューラルネットワークの学習は、例えば、候補領域のそれぞれについての、大きさ情報、画面内の位置情報、オブジェクトクラス情報、信頼度を入力データとし、正解となる主被写体領域を教師データとした学習用データを用いて実施することができる。なお、教師データは、例えば処理対象のフレームを人間が見て正解となる主被写体領域を決定することによって用意することができる。
多層ニューラルネットワークの学習は別の装置で行ってもよいし、撮像装置100'で行ってもよい。撮像装置100'で行う場合には、DL対象決定部131を学習モードとし、学習用データ(入力データと教師データのセット)を例えば記録媒体119からDL対象決定部131に供給することによって多層ニューラルネットワークを学習することができる。なお、学習は、公知の最適化アルゴリズムを用い、損失関数の値が所定値未満になるまで実施すればよい。
多層ニューラルネットワークの学習を別の装置で行う場合、例えば別の装置で学習が完了した多層ニューラルネットワークのパラメータを例えば記録媒体119を通じてDL対象決定部131に供給すればよい。別の装置で学習する多層ニューラルネットワークは、DL対象決定部131に実装された多層ニューラルネットワークと同様の構成とする。また、学習方法は撮像装置100'で学習する場合と同じであってよい。
DL対象決定部131は、検出部110で検出された候補領域のそれぞれについての、大きさ情報、画面内の位置情報、オブジェクトクラス情報、信頼度をテストデータとして学習済の多層ニューラルネットワークに与える。学習済の多層ニューラルネットワークは、候補領域それぞれに対し、例えば主被写体領域である確率を出力する。
DL対象決定部131は、検出部110が検出した複数の候補領域のうち、多層ニューラルネットワークの出力が最も高い候補領域を追尾対象の被写体領域(主被写体領域)と決定する。そして、DL対象決定部131は、決定した主被写体領域の大きさ情報、画面内の位置情報、オブジェクトクラス情報を出力する。
一方、非DL対象決定部132は、深層学習を用いない手法によって、複数の候補領域から追尾対象の被写体領域を決定する。非DL対象決定部は、第1実施形態の対象決定部111と同様にして追尾対象の被写体領域を決定することができる。非DL対象決定部132は、決定した被写体領域を特定する情報を追尾用メモリ108に格納する。
選択部133は、DL対象決定部131が出力する主被写体領域の情報、および非DL対象決定部132が出力する主被写体領域の情報の一方を採用する。選択部133は例えば、DL対象決定部131と非DL対象決定部132が出力する主被写体領域の位置情報に基づいて、どちらの主被写体領域の情報を採用するかを決定する。選択部133は、例えば、撮像装置100'で現在設定されている焦点検出領域との距離が短い方(焦点検出領域に近い方)の主被写体領域の情報を採用することができる。選択部133は採用した主被写体領域の情報を追尾用メモリ108に格納する。
対象決定制御部135によって、DL対象決定部131および非DL対象決定部132の両方が無効の場合、対象決定部130は候補領域が1つまたは検出されていないと判定する。そして、対象決定部130は、候補領域が1つであれば、その候補領域を主被写体領域と決定する。また、対象決定部130は、候補領域が1つも検出されていない場合には、主被写体の不存在を追尾部134に通知し、追尾処理を停止させる。
追尾部134は、追尾用メモリ108に格納された、処理対象のフレーム(現フレーム)の画像データから追尾対象の被写体領域を推定し、推定した被写体領域のフレーム内の位置と大きさを追尾結果として求める。追尾部134は例えば第1実施形態における非DL追尾部117と同様に、色構成の類似度に基づいて追尾対象の被写体領域を推定することができる。なお、追尾対象の被写体領域の色構成情報を、過去フレームにおける追尾対象の被写体領域によって更新し、次のフレームの追尾処理を実行してもよい。
なお、追尾部134は、過去フレームにおける追尾対象の被写体領域をテンプレートとしたパターンマッチングを用いて現フレームにおける追尾対象の被写体領域を推定してもよい。この場合、パターンマッチングに用いるテンプレートを、対象決定部130が決定した追尾対象の被写体領域で毎フレーム更新してもよい。また、追尾部134は、学習済みの多層ニューラルネットワークを用いて現フレームにおける追尾対象の被写体領域の位置と大きさを推定してもよい。追尾部134は、現フレームについて推定した追尾対象の被写体領域について、位置、大きさ、および信頼度スコアを出力する。
情報重畳部120は、追尾部134が出力する追尾結果に含まれる主被写体領域の大きさに基づいて、追尾枠の画像を生成する。そして、情報重畳部120は、第1実施形態と同様にして生成した合成画像データを表示部121に出力する。
図10は、後処理部114が出力する表示用画像データを用いた、表示部121におけるライブビュー表示の例を示す図である。図10において、破線1004は画像の中央領域を示し、実際の表示用画像データには含まれない。画像1010および1020は、表示用画像データに追尾枠1015の画像が重畳された合成画像データの表示例を示す。画像1010は画像1000の1フレーム後の画像であり、画像1020は画像1010から複数フレーム後の画像である。
画像1000において、自動車1001、1002、1003が候補領域として検出された場合、対象決定部130は破線1004が示す中央領域に最も近い自動車1003の領域を追尾対象の被写体領域として決定する。その結果、1フレーム後の画像1010において自動車1003の領域が追尾処理され、追尾枠1015が自動車1003の領域を囲むように重畳表示されている。さらに複数フレーム後の画像1020においても、自動車1003の領域に追尾枠1015が重畳表示される。
画像1030、1040は候補領域が1つのみの場合のライブビュー表示の例を示す。画像1040は画像1030の1フレーム後の画像である。画像1030では自動車1031が唯一の候補領域として検出される。この場合、対象決定制御部135は対象決定部130のDL対象決定部131および非DL対象決定部132をいずれも無効にする。そして、対象決定部130は、自動車1031の領域を追尾対象の被写体領域として決定する。その結果、1フレーム後の画像1040において、追尾対象の自動車1031の領域を囲むように追尾枠1015が重畳表示される。本実施形態においても、第1実施形態と同様、追尾枠1015の形状は4つの中空かぎ形状の組み合わせに限定されない。
次に、図11Aおよび図11Bのフローチャートを用いて、本実施形態で難度判定部112が実行する、追尾対象の被写体領域に関する難度スコアの算出動作についてさらに説明する。
S1101において難度判定部112は、難度スコアを0に初期化する。
S1101において難度判定部112は、難度スコアを0に初期化する。
S1102において難度判定部112は、画像中心に候補領域が存在するか否かを判定する。難度判定部112は例えば、図10に破線1004で示した画面中央の領域の一部または全部を含む候補領域が存在すれば、画像中心に候補領域が存在すると判定する。また、難度判定部112は例えば、破線1004で示した画面中央の領域の一部または全部を含む候補領域が存在しなければ、画像中心に候補領域が存在しないと判定する。そして、難度判定部112は、画像中心に候補領域が存在すると判定されなければS1103を、画像中心に候補領域が存在すると判定されればS1104を実行する。
なお、焦点検出領域があらかじめ設定されている場合、難度判定部112は、画面中央の領域の代わりに焦点検出領域に対して同様の判定を行う。そして、難度判定部112は、焦点検出領域に候補領域が存在すると判定されなければS1103を、焦点検出領域に候補領域が存在すると判定されればS1104を実行する。
S1103において難度判定部112は、難度スコアを1加点(+1)する。候補領域が焦点検出領域や画像中心に存在しない場合、難度判定部112は追尾対象の被写体領域を決定しづらいと判定し、難度スコアに加点する(難度を上げる)。そして、難度判定部112はS1105を実行する。
S1104において難度判定部112は、難度スコアを維持する。候補領域が焦点検出領域や画像中心に存在する場合、難度判定部112は追尾対象の被写体領域を決定しやすいと判定し、難度スコアに加点しない(難度を高くしない)。そして、難度判定部112はS1105を実行する。
S1105において難度判定部112は、候補領域の種類(オブジェクトクラスの種類)の数があらかじめ設定されている閾値N以上か否か(N種類以上の候補領域が検出されているか否か)を判定する。例えば、人オブジェクトクラス、犬オブジェクトクラス、猫オブジェクトクラス、自動車オブジェクトクラスが関連付けられた候補領域が検出されている場合、候補領域は4種類となる。閾値Nが3であった場合、難度判定部112は候補領域の種類が閾値N以上であると判定し、S1106を実行する。一方、犬オブジェクトクラス、猫オブジェクトクラスが関連付けられた候補領域が検出されている場合、候補領域は2種類となる。閾値Nが3であった場合、難度判定部112は候補領域の種類が閾値N以上でない判定し、S1107を実行する。
S1106において難度判定部112は、難度スコアを、(候補領域の種類の数-N+1)加点する。N種類以上の候補領域が検出されている場合、難度判定部112は追尾対象の被写体領域を決定しづらいと判定し、種類が多いほど多く難度スコアに加点する(難度を上げる)。そして、難度判定部112はS1108を実行する。
S1107において難度判定部112は、難度スコアを維持する。候補領域の種類の数がN未満の場合、難度判定部112は追尾対象の被写体領域を決定しやすいと判定し、難度スコアに加点しない(難度を高くしない)。そして、難度判定部112はS1108を実行する。
S1108およびS1115はその間の処理を繰り返して実行することを示す。具体的には、S1109からS1114の処理を、検出された候補領域の種類の数に等しい回数、繰り返して実行する。例えば、4種類の候補領域が検出されていれば、S1109からS1114の処理を、候補領域の種類ごとに4回繰り返して実行する。
S1109で難度判定部112は、同じ種類(オブジェクトクラス)が関連付けられた候補領域の数があらかじめ設定されている閾値M以上か否かを判定する。例えば、検出部110によって、犬オブジェクトクラスの候補領域が4つ、猫オブジェクトクラスの候補領域が2つ検出されており、閾値Mが3であるとする。この場合、S1109からS1114の処理が、犬オブジェクトクラスについて1回、猫オブジェクトクラスについて1回実行される。
犬オブジェクトクラスについての処理において、S1109で難度判定部112は、犬オブジェクトクラスの候補領域の数は4であるため、閾値M以上と判定し、S1110を実行する。一方、猫オブジェクトクラスについての処理において、S1109で難度判定部112は、猫オブジェクトクラスの候補領域の数は2であるため、閾値M以上でないと判定し、S1111を実行する。
S1110において難度判定部112は、難度スコアを、(処理対象のオブジェクトクラスの候補領域の数-M+1)加点する。同じオブジェクトクラスの候補領域の数が閾値M以上の場合、追尾対象の被写体領域を決定しづらいと判定し、難度スコアに加点する(難度を上げる)。そして、難度判定部112はS1112を実行する。
S1111において難度判定部112は、難度スコアを維持する。同じオブジェクトクラスの候補領域の数が閾値M未満の場合、追尾対象の被写体領域を決定しやすいと判定し、難度スコアに加点しない(難度を高くしない)。そして、難度判定部112はS1112を実行する。
S1112で難度判定部112は、同じオブジェクトクラスの候補領域の大きさの分散があらかじめ設定されている閾値L未満か否かを判定する。ここで、候補領域の大きさは、例えば候補領域の水平ピクセル数と垂直ピクセル数との積であってよい。また候補領域の大きさは、同じオブジェクトクラスの候補領域の中で最大の候補領域の大きさで正規化した値(≦1)とする。正規化した大きさを用い、分散を、個々の候補領域の大きさと大きさの平均値との差の二乗値の平均値として算出することができる。
例えば、犬オブジェクトクラスの候補領域が4つ、猫オブジェクトクラスの候補領域が2つ検出され、あらかじめ設定されている閾値Lが0.1であったとする。また、犬オブジェクトクラスについてS1112を実行した際に、候補領域の大きさの分散が0.2であれば、難度判定部112は、同じオブジェクトクラスの候補領域の大きさの分散がL未満でないと判定し、S1114を実行する。一方、猫オブジェクトクラスについてS1112を実行した際に、候補領域の大きさの分散が0.0025であれば、難度判定部112は、同じオブジェクトクラスの候補領域の大きさの分散がL未満であると判定し、S1113を実行する。
S1113で難度判定部112は、難度スコアを1加点する。同じオブジェクトクラスの候補領域の大きさの分散がL未満である場合、同じ種類の被写体に関する候補領域が似た大きさを有していると考えられる。そのため、難度判定部112は、処理対象のオブジェクトクラスについて追尾対象の被写体領域を決定しづらいと判定し、難度スコアに加点する(難度を上げる)。そして、難度判定部112はS1115を実行する。
S1114で難度判定部112は、難度スコアを維持する。同じオブジェクトクラスの候補領域の大きさの分散がL未満でない場合、同じ種類の被写体に関する候補領域の大きさにばらつきがあると考えられる。そのため、難度判定部112は、処理対象のオブジェクトクラスについて追尾対象の被写体領域を決定しやすいと判定し、難度スコアに加点しない(難度を高くしない)。そして、難度判定部112はS1115を実行する。
検出された全ての種類(オブジェクトクラス)のそれぞれについてS1109からS1114の処理を実行すると、難度判定部112はS1116を実行する。
S1116で難度判定部112は、算出した難度スコアを対象決定制御部135に出力する。
S1116で難度判定部112は、算出した難度スコアを対象決定制御部135に出力する。
なお、ここで説明した難度スコアの算出方法は一例に過ぎず、他の様々な方法で難度スコアを算出することができる。例えば、S1103で難度スコアを1加点する代わりに、あらかじめ設定されているゲイン係数を乗じた値を加点してもよい。また、候補領域の種類の数、同じ種類の被写体に関する(同じオブジェクトクラスに属する)候補領域の数のみを用いて難度スコアを算出してもよい。あるいは、1つの項目のみに基づいて難度スコアを算出してもよい。また、難度スコアを2値(0または1)として、難度スコア1でDL対象決定部131を有効、難度スコア0でDL対象決定部131を無効、のように制御してもよい。
次に、対象決定制御部135の動作について、図12のフローチャートを用いてさらに説明する。ここでは、難度判定部112が、図11Aおよび図11Bを用いて説明した動作によって難度スコアを算出しているものとする。
S1201において対象決定制御部135は、難度スコアがあらかじめ設定されている閾値Aより大きいか否かを判定し、大きいと判定されればS1203を、判定されなければS1202を実行する。
S1202において対象決定制御部135は、難度スコアがあらかじめ設定されている閾値B(<A)より大きいか否かを判定し、大きいと判定されればS1204を、判定されなければS1205を実行する。
S1203において対象決定制御部135は、DL対象決定部131を有効に、非DL対象決定部132を無効にすることを決定する。難度スコアがAよりも大きい場合、対象決定の難度が高い。そのため、対象決定制御部135は、非DL対象決定部132よりも性能の良いDL対象決定部131を用いることを決定する。また、対象決定制御部135は、非DL対象決定部132を用いても良い結果が得られる可能性が低いと判定し、非DL対象決定部132は用いないことを決定する。
S1204において対象決定制御部135は、DL対象決定部131を無効に、非DL対象決定部132を有効にすることを決定する。難度スコアがA以下であり、Bより大きい場合、対象決定の難度が中程度である。そのため、対象決定制御部135は、非DL対象決定部132で十分精度の良い結果が得られる可能性が高いと判定し、非DL対象決定部132だけを用いることを決定する。非DL対象決定部132よりも消費電力が高いDL対象決定部131を無効にすることにより、消費電力を低減することができる。
S1205において対象決定制御部135は、DL対象決定部131を無効に、非DL対象決定部132を無効にすることを決定する。難度スコアがB以下である状態は、対象決定の難度が低い。そのため、対象決定制御部135は、DL対象決定部131および非DL対象決定部132を用いずに対象決定可能と判定し、DL対象決定部131および非DL対象決定部132の両方を無効にする。これにより、消費電力をさらに低減することができる。
なお、DL対象決定部131および非DL対象決定部132を用いずに追尾対象の被写体領域を決定が可能であるのは、例えば、検出された候補領域が1つもしくは検出されなかった場合である。また、検出された複数の候補領域の1つが非常に大きく、かつ画面中央もしくは焦点検出領域に存在する場合も該当する。
ここで説明した対象決定制御部135の動作は単なる例示である。例えば、難度スコアにごとに制御を異ならせなくてもよい。例えば、S1205でS1204と同様に非DL対象決定部を有効にしてもよい。あるいは、S1201で難度スコアがAより大きいと判定されない場合には、直ちにS1204を実行してもよい。
次に、図13のフローチャートを用いて、対象決定制御部135が、難度スコアを用いずにDL対象決定部131および非DL対象決定部132の有効および無効を決定する方法の例を説明する。ここでは、対象決定制御部135が、検出されたオブジェクトクラスと、同一オブジェクトクラスに属する候補領域の数とを用いて、DL対象決定部131および非DL対象決定部132の有効および無効を決定するものとする。
なお、ここでは、DL対象決定部131が特定のシーン、例えば、ボールを使うスポーツのシーンに関する学習用データによって学習済みの多層ニューラルネットワークを有するものとする。学習用データは、入力データと、対応する教師データのセットである。ここで、入力データとして、ボールを使うスポーツの画像データから抽出した複数の候補領域のそれぞれの大きさ情報、画面内の位置情報、オブジェクトクラス情報、信頼度を用いることができる。また、画像データに含まれる候補領域のうち、人オブジェクトクラスに属する候補領域を正解とする教師データを用いることができる。
このような学習を行った多層ニューラルネットワークを有するDL対象決定部131は、撮像装置100'によってボールを使うスポーツのシーンを撮像した場合に、精度の高い対象決定処理を行うことができる。さらに、入力データの生成に用いる画像データを、人オブジェクトクラスの候補領域の数が4以上である画像データに制限することができる。これにより、DL対象決定部131は、ボールを使うスポーツの、4人以上の「人」が含まれるシーンの画像に対して、より精度の高い対象決定処理を行うことができる。
以下、DL対象決定部131が、ボールを使うスポーツの、4人以上の「人」が含まれるシーンの画像に対して、より精度の高い対象決定処理を行うことができる場合の対象決定制御部135の動作について説明する。
S1301において対象決定制御部135は、検出部110によって人オブジェクトクラスの候補領域が4つ以上、かつボールオブジェクトクラスの候補領域が1つ以上検出されているか否かを判定する。対象決定制御部135は、人オブジェクトクラスの候補領域が4つ以上、かつボールオブジェクトクラスの候補領域が1つ以上検出されていると判定されればS1304を、判定されなければS1302を実行する。
S1302において対象決定制御部135は、検出部110によって人オブジェクトクラスの候補領域が3つ、かつボールオブジェクトクラスの候補領域が1つ以上検出されているか否かを判定する。対象決定制御部135は、人オブジェクトクラスの候補領域が3つ以上、かつボールオブジェクトクラスの候補領域が1つ以上検出されていると判定されればS1305を、判定されなければS1303を実行する。
S1301において対象決定制御部135は、検出部110によって人オブジェクトクラスの候補領域が2つ検出されているか否かを判定する。対象決定制御部135は、人オブジェクトクラスの候補領域が2つ以上検出されていると判定されればS1306を、判定されなければS1307を実行する。
S1304において対象決定制御部135は、DL対象決定部131を有効に、非DL対象決定部132を無効にすることを決定する。人オブジェクトクラスの候補領域が4つ以上、かつボールオブジェクトクラスの候補領域が1つ以上検出されている場合、DL対象決定部131の多層ニューラルネットワークの学習に用いたシーンと同様のシーンである。そのため、対象決定制御部135は、DL対象決定部131が最適に対象決定を行えるものとして、DL対象決定部131だけを用いることを決定する。
S1305において対象決定制御部135は、DL対象決定部131を有効に、非DL対象決定部132を有効にすることを決定する。人オブジェクトクラスの候補領域が3つ、かつボールオブジェクトクラスの候補領域が1つ以上検出されている場合、DL対象決定部131の多層ニューラルネットワークの学習に用いたシーンと類似したシーンであるが、同様のシーンではない。一方で、人オブジェクトクラスの候補領域3つについて対象決定処理を行う必要があるため、非DL対象決定部のみを有効にするだけでは精度が不十分である可能性が高い。そのため、対象決定制御部135は、精度の高い対象決定処理を実現するため、DL対象決定部131と非DL対象決定部132の両方を用いることを決定する。
S1306において対象決定制御部135は、DL対象決定部131を無効に、非DL対象決定部132を有効にすることを決定する。人オブジェクトクラスの候補領域が2つ検出されている場合、その一方を追尾対象の被写体領域として選択すればよく、対象決定の難度が低い。そのため、対象決定制御部135は、非DL対象決定部132で十分精度の良い結果を得られる可能性が高いと判定し、非DL対象決定部132だけを用いることを決定する。非DL対象決定部132よりも消費電力が高いDL対象決定部131を無効にすることにより、消費電力を低減できる。
S1307において対象決定制御部135は、DL対象決定部131と非DL対象決定部132の両方を無効にすることを決定する。人オブジェクトクラスの候補領域が1つ、または1つも検出されていない場合は、対象決定の難度が最も低い。そのため、対象決定制御部135は、DL対象決定部131および非DL対象決定部132を用いなくとも、追尾対象の被写体領域を決定可能であると判定し、DL対象決定部131および非DL対象決定部132の両方を無効にする。これにより、消費電力をさらに低減することができる。この場合、対象決定部130は、DL対象決定部131および非DL対象決定部132を用いず、唯一検出されている候補領域を追尾対象の被写体領域と決定し、情報を出力する。候補領域が検出されていない場合、対象決定部130は、例えば1フレーム前の決定結果を再度出力する。
ここで説明した制御動作は単なる例示である。対象決定制御部135は、対象の画像が、DL対象決定部131および非DL対象決定部132で精度良い対象決定が可能なシーンの画像であるか否かを考慮して、有効にする対象決定部を決定することができる。
なお、シーンの種類ごとに用意した学習用データを用いて多層ニューラルネットワークを学習して得られるパラメータを切り替えて用いることで、DL対象決定部131で精度よく対象決定が可能なシーンを切り替えできるように構成してもよい。例えば、撮像装置100'で撮影しているシーンに対応した学習済みのパラメータを多層ニューラルネットワークに設定して用いることができる。
また、撮像装置100'がユーザの視線検出機能を有する場合、非DL対象決定部132は、ユーザの視線に基づいて対象決定を行ってもよい。非DL対象決定部132は、例えば、ユーザの注目する画像座標を含んでいる候補領域を追尾対象の被写体領域として決定することができる。
非DL対象決定部132は、ユーザの視線に基づいて対象決定を行うように設定されている状態で、対象決定制御部135がDL対象決定部131を有効にすることを決定した場合、対象決定制御部135は非DL対象決定部132を無効にすることができる。これは、DL対象決定部131が有効にされる対象決定難度が高いシーンでは、ユーザの視線が主被写体領域に定まる可能性が低いと考えられるためである。
図14は、撮像装置100'で対象決定処理を含む被写体追尾機能を実施する際の、上述した各部の動作タイミングの例を示すタイミングチャートである。t1400、t1401、t1402、t1403、t1404は各フレームにおいて検出部110が検出処理を開始するタイミングである。t1400において、検出部110は最初のフレーム(0フレーム目)に対する検出処理1410を開始する。
検出処理1410により、検出部110が0フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出する。難度判定部112は0フレーム目の画像データで検出された候補領域の情報に基づいて、図11Aおよび図11Bを用いて説明したような難度判定処理1411を実行し、難度スコアを算出する。
対象決定制御部135は、難度判定処理1411によって算出された難度スコアに基づいて、0フレーム目の画像データに対するDL対象決定部131および非DL対象決定部132の有効・無効を決定する。
図14において破線で示した対象決定処理(例えばDL対象決定処理1412)は、その対象決定処理を実行する対象決定部(DL対象決定部131)が対象決定制御部135によって無効とされたことを示している。一方、実線で示した対象決定処理(例えば非DL対象決定処理1413)は、その対象決定処理を実行する対象決定部(非DL対象決定部132)が対象決定制御部135によって有効とされたことを示している。
追尾部134は、対象決定部130から出力される追尾対象の被写体領域を対象とした追尾処理1414を実行する。追尾部134は、処理対象の画像データにおける追尾対象の被写体領域の位置を推定する。そして、追尾部134は、推定した、0フレーム目の画像データにおける追尾対象の被写体領域の情報(位置、大きさなど)を追尾結果として情報重畳部120に出力する。追尾処理1414を破線で示しているのは、0フレーム目では追尾対象の被写体領域が決定されておらず、実際には追尾処理が行われないためである。
追尾枠重畳処理1415により情報重畳部120は0フレーム目の表示用画像データに追尾処理1414の結果に基づく追尾枠を重畳した合成画像データを生成する。なお、情報重畳部120を破線で示しているのは、0フレーム目においては追尾対象の被写体領域が決定されておらず、実際には追尾枠の重畳を行われないためである。
表示処理1416により表示部121は0フレーム目の合成画像データを表示する。上述の通り、追尾枠重畳処理1415は実際には行われていないため、表示部121は追尾枠が重畳されていない表示用画像データを表示する。
検出処理1420により、検出部110が1フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出する。難度判定部112は1フレーム目の画像データで検出された候補領域の情報に基づいて難度判定処理1421を実行し、難度スコアを算出する。
対象決定制御部135は、難度判定処理1421によって算出された難度スコアに基づいて、1フレーム目の画像データに対するDL対象決定部131および非DL対象決定部132の有効・無効を決定する。ここでは、対象決定制御部135がDL対象決定部131を有効に、非DL対象決定部132を無効にすることを決定したものとする。
非DL対象決定処理1423は実際には行われないため、破線で示している。一方、DL対象決定処理1422はDL対象決定部131により実行される。対象決定部130は、DL対象決定部131が決定した追尾対象の被写体領域の情報を出力する。
追尾処理1424で追尾部134は、0フレーム目の画像について非DL対象決定処理1413で決定された追尾対象の被写体領域が、1フレーム目の画像データに存在する位置を推定する。そして、追尾部134は、推定した、1フレーム目の画像データにおける追尾対象の被写体領域の情報(位置、大きさなど)を追尾結果として情報重畳部120に出力する。
追尾枠重畳処理1425で情報重畳部120は1フレーム目の表示用画像データに追尾処理1424の結果に基づく追尾枠を重畳した合成画像データを生成する。
表示処理1426により表示部121は1フレーム目の合成画像データを表示する。
表示処理1426により表示部121は1フレーム目の合成画像データを表示する。
検出処理1430により、検出部110が2フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出する。難度判定部112は2フレーム目の画像データで検出された候補領域の情報に基づいて難度判定処理1431を実行し、難度スコアを算出する。
対象決定制御部135は、難度判定処理1431によって算出された難度スコアに基づいて、2フレーム目の画像データに対するDL対象決定部131および非DL対象決定部132の有効・無効を決定する。ここでは、検出処理1430において候補領域が1つしか検出されず、対象決定制御部135がDL対象決定部131と非DL対象決定部132の両方を無効にすることを決定したものとする。
したがって、DL対象決定処理1432および非DL対象決定処理1433は行われず、破線で示されている。この場合、対象決定部130は、唯一検出されている候補領域を追尾対象の被写体領域として決定する。
追尾処理1434で追尾部134は、1フレーム目の画像についてDL対象決定処理1422で決定された追尾対象の被写体領域が、2フレーム目の画像データに存在する位置を推定する。そして、追尾部134は、推定した、2フレーム目の画像データにおける追尾対象の被写体領域の情報(位置、大きさなど)を追尾結果として情報重畳部120に出力する。
追尾枠重畳処理1435で情報重畳部120は2フレーム目の表示用画像データに追尾処理1434の結果に基づく追尾枠を重畳した合成画像データを生成する。
表示処理1436により表示部121は2フレーム目の合成画像データを表示する。
表示処理1436により表示部121は2フレーム目の合成画像データを表示する。
検出処理1440により、検出部110が3フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出する。難度判定部112は3フレーム目の画像データで検出された候補領域の情報に基づいて難度判定処理1441を実行し、難度スコアを算出する。
対象決定制御部135は、難度判定処理1441によって算出された難度スコアに基づいて、3フレーム目の画像データに対するDL対象決定部131および非DL対象決定部132の有効・無効を決定する。ここでは、対象決定制御部135がDL対象決定部131と非DL対象決定部132の両方を有効にすることを決定したものとする。
したがって、DL対象決定部131はDL対象決定処理1442を、非DL対象決定部132は非DL対象決定処理1443を、それぞれ実行する。そして、DL対象決定処理1442と非DL対象決定処理1443の結果の一方を、選択部133で選択し、3フレーム目について決定された追尾対象の被写体領域の情報として出力する。例えば選択部133は、それぞれの対象決定処理で決定された2つの被写体領域が同じであれば、予め定められた一方を選択する。一方、それぞれの対象決定処理で決定された2つの被写体領域が異なる場合、選択部133は、予め定められた条件にしたがって一方の決定結果を選択する。選択部133は例えば、より大きな被写体領域、重心位置が画像中央により近い被写体領域、または重心位置が焦点検出領域により近い被写体領域を示す決定結果を選択することができる。
追尾処理1444で追尾部134は、2フレーム目の画像について決定された追尾対象の被写体領域が、3フレーム目の画像データに存在する位置を推定する。そして、追尾部134は、推定した、3フレーム目の画像データにおける追尾対象の被写体領域の情報(位置、大きさなど)を追尾結果として情報重畳部120に出力する。
追尾枠重畳処理1445で情報重畳部120は3フレーム目の表示用画像データに追尾処理1444の結果に基づく追尾枠を重畳した合成画像データを生成する。
表示処理1446により表示部121は3フレーム目の合成画像データを表示する。
表示処理1446により表示部121は3フレーム目の合成画像データを表示する。
検出処理1450により、検出部110が4フレーム目の画像データについて、1つ以上の候補領域とそのオブジェクトクラスを検出する。難度判定部112は4フレーム目の画像データで検出された候補領域の情報に基づいて難度判定処理1451を実行し、難度スコアを算出する。
対象決定制御部135は、難度判定処理1451によって算出された難度スコアに基づいて、4フレーム目の画像データに対するDL対象決定部131および非DL対象決定部132の有効・無効を決定する。ここでは、対象決定制御部135がDL対象決定部131と非DL対象決定部132の両方を有効にすることを決定したものとする。
したがって、DL対象決定部131はDL対象決定処理1452を、非DL対象決定部132は非DL対象決定処理1453を、それぞれ実行する。選択部133は、3フレーム目の処理に関して説明したように、一方の決定結果を選択して出力する。
追尾処理1454で追尾部134は、3フレーム目の画像について決定された追尾対象の被写体領域が、4フレーム目の画像データに存在する位置を推定する。そして、追尾部134は、推定した、4フレーム目の画像データにおける追尾対象の被写体領域の情報(位置、大きさなど)を追尾結果として情報重畳部120に出力する。
追尾枠重畳処理1455で情報重畳部120は4フレーム目の表示用画像データに追尾処理1454の結果に基づく追尾枠を重畳した合成画像データを生成する。
表示処理1456により表示部121は4フレーム目の合成画像データを表示する。
表示処理1456により表示部121は4フレーム目の合成画像データを表示する。
図14のタイミングチャートは一例にすぎず、様々な変更が可能である。例えば、図14では検出処理および難度判定処理を各フレームについて実行したが、実行頻度を下げてもよい。複数フレームあたり1回実行することで、消費電力を低減することができる。この場合、検出処理および難度判定処理が実行されるフレームについての対象決定処理の結果で追尾対象の被写体領域を更新し、検出処理および難度判定処理が実行されないフレームについての対象決定処理の結果は更新に用いなくてもよい。
本実施形態におけるライブビュー表示動作は図7を用いて第1実施形態で説明した通りであるため、説明を省略する。
図15Aおよび図15Bは、追尾対象の被写体領域の決定に用いる対象決定部の動作制御に関するフローチャートである。
S300~S305の処理は、図8Aを用いて第1実施形態で説明した処理と同じであるため、説明を省略する。なお、画像補正処理は追尾用および検出用の補正処理である。
S300~S305の処理は、図8Aを用いて第1実施形態で説明した処理と同じであるため、説明を省略する。なお、画像補正処理は追尾用および検出用の補正処理である。
S1501で難度判定部112は、S305における候補領域の検出結果に基づいて、例えば図11Aおよび図11Bを用いて説明したようにして対象決定の難度を示す難度スコアを算出する。難度判定部112は算出した難度スコアを対象決定制御部135に出力する。
S1502で対象決定制御部135は、難度スコアがあらかじめ設定された第1の閾値以上であるか否かを判定する。対象決定制御部135は、難度スコアが第1の閾値以上であると判定されればS1503を実行し、難度スコアが第1の閾値以上であると判定されなければS1504を実行する。
S1503で対象決定制御部135は、DL対象決定部131を有効にすることを決定し、DL対象決定部131を有効にする制御を実行する。
S1504で対象決定制御部135は、DL対象決定部131を無効にすることを決定し、DL対象決定部131を無効にする制御を実行する。さらに、対象決定制御部135は、S1505を実行する。
S1504で対象決定制御部135は、DL対象決定部131を無効にすることを決定し、DL対象決定部131を無効にする制御を実行する。さらに、対象決定制御部135は、S1505を実行する。
S1505で対象決定制御部135は、難度スコアがあらかじめ設定された第2の閾値未満であるか否かを判定する。ここで、第2の閾値は第1の閾値より小さい(難度が低い)。対象決定制御部135は、難度スコアが第2の閾値未満であると判定されればS1506を実行し、難度スコアが第2の閾値未満であると判定されなければS1507を実行する。
S1506で対象決定制御部135は、非DL対象決定部132を無効にすることを決定し、非DL対象決定部132を無効にする制御を実行する。
S1507で対象決定制御部135は非DL対象決定部132を有効にすることを決定し、非DL対象決定部132を有効にする制御を実行する。
S1507で対象決定制御部135は非DL対象決定部132を有効にすることを決定し、非DL対象決定部132を有効にする制御を実行する。
S1508で対象決定部130は、DL対象決定部131および非DL対象決定部132の一方だけが有効である場合は、有効な対象決定部の決定結果を選択部133で選択する。
DL対象決定部131および非DL対象決定部132の両方が有効である場合、対象決定部130は、それぞれの決定結果が同じ被写体領域であれば任意の一方の決定結果を選択部133で選択する。決定結果が異なる場合、対象決定部130は、上述したように、所定の条件に基づいて一方の決定結果を選択部133で選択する。対象決定部130は、例えば画面中央により近い中心位置を有する被写体領域を示す決定結果を選択部133で選択する。対象決定部130は、選択部133で選択した決定結果を、追尾対象の被写体領域の情報として追尾用メモリ108に格納する。
DL対象決定部131および非DL対象決定部132の両方が無効である場合、対象決定部130は、S305で検出された候補領域の数を確認する。検出された候補領域の数が1つである場合、対象決定部130は、検出された候補領域を追尾対象の被写体領域として決定し、情報を追尾用メモリ108に格納する。候補領域の数が0の場合は追尾対象の被写体候補が存在しない。この場合、対象決定部130は、直前に出力した追尾対象の被写体領域の情報を追尾用メモリ108に格納してもよいし、次フレームの追尾処理を無効にしてもよい。
これにより1フレーム分の追尾対象の被写体領域の決定動作が完了する。以降、フレームごとに、あるいは所定の複数のフレームごとに、同様の処理を実行する。
図16は撮像装置100'の被写体追尾機能の動作に関するフローチャートであり、図15Aおよび図15Bと同じ処理については同じ参照数字を付してある。S300~S304の処理に関する説明は省略する。
S1601で追尾部134は、処理対象のフレームの1つ前のフレームについてのS1508の処理において追尾対象の被写体領域が決定されているか否か判定する。追尾部134は、前フレームで追尾対象の被写体領域が決定されていると判定されればS1602を実行し、追尾対象の被写体領域が決定されていると判定されなければS1603を実行する。
S1602で追尾部134は、追尾対象の被写体領域の情報を、前フレームについて決定された情報で更新する。また、前フレームにおいて追尾処理が無効とされていた場合、追尾部134は追尾処理を開始する制御を実行する。これは、上述の通り、候補領域が1つも検出されなかった場合、次フレームに対する追尾処理が無効にされうるからである。
S1603で追尾部134は、追尾継続状態であるか否かを判定する。追尾継続状態とは、追尾処理が有効であり、前フレームで追尾対象の被写体領域が決定されている状態である。追尾部134は、追尾継続状態と判定されればS1604を実行し、追尾継続状態と判定されなければS314を実行する。
S1604で追尾部134は、決定された被写体領域の追尾処理を実行する。追尾部134は、追尾結果として、推定した被写体領域の大きさと、画像内の位置を情報重畳部120に出力する。
S313~S315の処理は、図8Bに関して第1実施形態で説明した通りであるため説明を省略する。ただし、S1603で追尾継続状態でないと判定されてS314を実行している場合は、追尾結果が無いため、追尾枠の重畳は行わない。
本実施形態では、追尾対象の被写体領域を決定する第1の対象決定部と、第1の対象決定部よりも精度が高いが演算量が多い第2の対象決定部とを用いる画像処理装置において、対象決定の難度に基づいて第1および/または第2追尾部の有効・無効を制御する。そのため、精度良く対象を決定できる可能性が低い対象決定部を無効としたり、一方の対象決定部だけで精度良く対象を決定できる可能性が高い場合には他方の対象決定部を無効としたりすることで、対象決定精度の低下を抑制しつつ、消費電力を抑制することができる。
対象決定処理は一般に連続したフレームに対して都度、実行するため、第2の対象決定部として深層学習のような演算量の多い機械学習を利用する対象決定部を用いる場合、消費電力の抑制効果は特に大きい。
●<第3実施形態>
次に、本発明の第3実施形態について説明する。図17は第3実施形態に係る画像処理装置の一例としての撮像装置1700の機能構成例を示すブロック図である。
光学系1701および撮像素子1704は撮像装置100の光学系101および撮像素子103と同様の構成であってよいため、説明を省略する。本実施形態では光学系1701と撮像素子1704との間にメカニカルシャッタ1703(以下、単にシャッタという)が、シャッタ1703は必須ではない。シャッタ1703の動作はシステム制御部1740が制御する。シャッタスピードは撮像素子1704の露光時間に相当する。
次に、本発明の第3実施形態について説明する。図17は第3実施形態に係る画像処理装置の一例としての撮像装置1700の機能構成例を示すブロック図である。
光学系1701および撮像素子1704は撮像装置100の光学系101および撮像素子103と同様の構成であってよいため、説明を省略する。本実施形態では光学系1701と撮像素子1704との間にメカニカルシャッタ1703(以下、単にシャッタという)が、シャッタ1703は必須ではない。シャッタ1703の動作はシステム制御部1740が制御する。シャッタスピードは撮像素子1704の露光時間に相当する。
光学制御部1702は、光学系1701が形成する光学像を例えば位相差AFセンサによって撮像することにより、複数の焦点検出領域のそれぞれについてデフォーカス量を算出する。焦点検出領域は例えば撮像面内に予め定められた矩形領域であってよい。光学制御部1702は、算出したデフォーカス量と、追尾部1718による追尾結果とに基づいて、光学系1701を合焦させる焦点検出領域を決定する。そして、光学制御部1702は、決定した焦点検出領域について算出されたデフォーカス量に基づいて光学系1701のフォーカスレンズを駆動する。これにより、決定した焦点検出領域内の被写体に光学系1701が合焦した状態となる。
撮像素子1704は、撮像によって得られた画像データを画像処理部1710の第1前処理部1711および第2前処理部1712に出力する。
第1前処理部1711は、画像データを第1前処理部104と同様に処理し、表示用メモリ1714に格納する。
第1前処理部1711は、画像データを第1前処理部104と同様に処理し、表示用メモリ1714に格納する。
第1画像補正部1716は、第1画像補正部109と同様の処理を画像データに適用し、処理を適用した画像データを第1後処理部1719に出力する。
第1後処理部1719は、後処理部114と同様にして、記録用画像データや表示用画像データを生成する。第1後処理部1719は、記録用画像データを記録部1720に供給する。また、第1後処理部1719は表示用画像データを情報重畳部1721に供給する。
記録部1720は、第1後処理部1719で生成された記録用画像データを記録媒体1730に記録する。記録媒体1730は、例えば半導体メモリカード、内蔵不揮発性メモリなどであってよい。
第2前処理部1712は、第2前処理部105と同様に、画像データに色補間処理を適用して追尾用メモリ1715に格納する。本実施形態においても追尾用メモリ1708と表示用メモリ107とは同一メモリ空間内の別アドレス空間として実装されてもよい。また、第2前処理部1712は、処理負荷を軽減するために必要に応じて画素数を削減する縮小処理を適用してもよい。なお、ここでは第1前処理部1711と第2前処理部1712とを別個の機能ブロックとして記載したが、共通の前処理部を用いる構成としてもよい。
第2画像補正部1713は、追尾用メモリ1708に格納された画像データに対して第2画像補正部106と同様に処理を適用する。第2画像補正部1713は、処理を適用した画像データを、追尾用メモリ1708に格納する。
本実施形態においても、第2前処理部1712、第2画像補正部1713など、被写体追尾機能に関する機能ブロックは、被写体追尾機能を実施しない場合には動作しなくてよい。また、被写体追尾機能を適用する画像データは、ライブビュー表示用もしくは記録用に撮影される動画データである。動画データは例えば30fps、60fps、120fpsといった所定のフレームレートを有する。
検出部1717は、1フレーム分の画像データから、予め定められた候補被写体の領域(候補領域)を1つ以上検出する。また、検出部1717は、検出した領域ごとに、フレーム内の位置および大きさ、候補被写体の種類(自動車、飛行機、鳥、昆虫、人体、頭部、瞳、猫、犬など)を示すオブジェクトクラスとその信頼度を関連付ける。また、オブジェクトクラスごとに、検出した候補領域の数を求める。
本実施形態では、検出部1717が演算負荷と対象決定精度が異なる複数の検出部を有する。具体的には、検出部1717は、深層学習(DL)を用いて対象決定処理を行うDL検出部1722と、DLを用いずに対象決定処理を行う非DL検出部1723とを有する。DL検出部1722は、非DL検出部1723よりも処理精度が高い反面、演算負荷が非DL検出部1723よりも大きいものとする。
DL検出部1722と非DL検出部1723は、それぞれが候補領域の検出、候補領域の種類へのオブジェクトクラスとその信頼度の関連付け、オブジェクトクラスごとの候補領域の計数を行う。また、DL検出部1722と非DL検出部1723は、検出した候補領域について、大きさおよび位置の情報を求める。
DL検出部1722は、機械学習を用いた多クラス識別器にて実現できる。DL検出部1722は多クラス化したロジスティック回帰やサポートベクターマシン、ランダムフォレスト、ニューラルネットワークなどを用いて実装可能である。
非DL検出部1723は、機械学習を用いない公知の方法で候補領域を検出する。非DL検出部1723は、例えばオブジェクトクラスごとに予め用意されたテンプレートを用いるパターンマッチング、オブジェクトクラスごとに予め用意された特徴情報を用いる特徴検出、距離情報に基づく検出などを用いて候補領域を検出することができる。
情報重畳部1721は、情報重畳部120と同様に、検出部1717または追尾部1718が出力する、追尾対象の被写体領域の中心位置および大きさに基づいて追尾枠の画像を生成する。そして情報重畳部1721は、第1後処理部1719が出力する表示用画像データに追尾枠の画像が重畳した合成画像データを生成する。情報重畳部1721は、合成画像データを表示部1731に出力する。
不揮発性メモリ1753は、例えばEEPROMなどの書き換え可能な不揮発性メモリであり、システム制御部1740のCPUが実行可能なプログラム、設定値、GUIデータなどを記憶する。
システムメモリ1754は例えばRAMであり、システム制御部1740のCPUが実行するプログラムを読み込んだり、プログラムの実行中に必要な値を保存したりするために用いられる。
システム制御部1740は、CPUを有し、例えば不揮発性メモリ1753に記憶されたプログラムをシステムメモリ1754に読み込んで実行する。システム制御部1740は、各機能ブロックの動作を制御することにより、撮像装置1700の機能を実現する。
レリーズボタン1750、モード切替スイッチ1751、操作部1752はシステム制御部1740に指示を入力するための入力デバイスである。
レリーズボタン1750は半押しでONするスイッチSW1と、全押しでONするスイッチSW2を有する。システム制御部1740はSW1のONを静止画の撮影準備指示として、SW2のONを静止画の撮影開始指示と認識し、それぞれに指示に応じた動作を実行する。
レリーズボタン1750は半押しでONするスイッチSW1と、全押しでONするスイッチSW2を有する。システム制御部1740はSW1のONを静止画の撮影準備指示として、SW2のONを静止画の撮影開始指示と認識し、それぞれに指示に応じた動作を実行する。
システム制御部1740は、撮影準備指示に応じてでAF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理などを実行する。
また、システム制御部1740は撮影指示に応じて、撮影準備指示に応じて実行したAF処理やAE処理の結果を用いた静止画撮影処理を実行する。静止画撮影処理には、シャッタ1703の開閉制御、撮像素子1704の動作制御、画像処理部1710における記録用画像データの生成動作および記録媒体1730への記録動作などが含まれる。システム制御部1740は、これら一連の静止画撮影処理に関して各機能ブロックを制御する。
動きセンサ1760は撮像装置1700の動きに応じた信号を出力し、システム制御部1740に出力する。動きセンサ1760は例えば加速度センサや角速度センサであってよい。また、光学系101が手ブレ補正用の動きセンサを有している場合には、動きセンサ1760を設けずに、手ブレ補正用の動きセンサを用いて撮像装置1700の動きを検出してもよい。
モード切替スイッチ1751は、システム制御部1740の動作モードを静止画撮影モード、動画撮影モード、再生モード等のいずれかに切り替える。静止画撮影モードに含まれるモードとして、オート撮影モード、オートシーン判別モード、マニュアルモード、絞り優先モード(Avモード)、シャッタ速度優先モード(Tvモード)がある。また、撮影シーン別の撮影設定となる各種シーンモード、プログラムAEモード、カスタムモード等がある。モード切替スイッチ1751で、メニューボタンに含まれるこれらのモードのいずれかに直接切り替えられる。あるいは、モード切替スイッチ1751でメニューボタンに一旦切り換えた後に、メニューボタンに含まれるこれらのモードのいずれかに、他の操作部材を用いて切り替えるようにしてもよい。同様に、動画撮影モードにも複数のモードが含まれていてもよい。
操作部1752はレリーズボタン1750およびモード切替スイッチ1751以外の入力デバイスの総称である。操作部1752に含まれる入力デバイスには、例えば表示部1731に表示される機能アイコンの選択操作などを通じて、撮像装置1700の動作状態に応じて機能が割り当てられる。入力デバイスは割り当てられた機能に応じた名称を有する。
例えば方向ボタン、決定(SET)ボタン、終了ボタン、戻るボタン、画像送りボタン、ジャンプボタン、絞込みボタン、属性変更ボタン、メニューボタンなどが操作部1752に含まれる。例えば、メニューボタンが押されると各種の設定可能なメニュー画面が表示部1731に表示される。ユーザは表示部1731に表示されたメニュー画面を方向ボタンやSETボタンを用いて操作することにより、各種設定を行うことができる。
本実施形態では、操作部1752に含まれる入力デバイスとして、視線情報取得部(視線検出手段)が設けられている。視線情報取得部は、ユーザの視線もしくは表示部1731内のユーザ注視位置を検出する。図18は、視線情報取得部1800の構成例を示す図である。ここでは、表示部1731が覗き込み型のファインダ内に設けられており、ファインダを覗くユーザの眼球1802の回転角から視線方向を検出することで、ユーザが注視している表示部1731内の位置を検出するものとする。
図18において、視線情報取得部1800は、撮像素子1801a、受光レンズ1801b、ダイクロイックミラー1801c、および照明光源1801eを有する。接眼レンズ1801dはファインダ光学系であり、視線情報の取得には直接関係しない。
ユーザは、表示部1731の表示を、接眼レンズ1801dおよびダイクロイックミラー1801cを通じて観察することができる。照明光源1801eはファインダの外部に向けて赤外光を投射する。ユーザがファインダを覗いている場合、赤外光は眼球1802で反射され、反射光がファインダ内に入射する。反射光はダイクロイックミラー1801cにより上方に反射され、受光レンズ1801bによって形成される眼球像が撮像素子1801aで撮像される。眼球像の画像データは撮像素子1801aからシステム制御部1740に送信される。
システム制御部1740は眼球像から例えば瞳孔の領域を抽出し、瞳孔の領域の位置から眼球の回転角を検出する。そして、システム制御部1740は、眼球の回転角からユーザの視線方向を求める。なお、視線方向は算出して求めてもよいし、回転角と視線方向との関係を記憶したテーブルを参照することによって求めてもよい。システム制御部1740は、視線方向に基づいてユーザが注視している表示部1731内の位置(座標)を検出する。なお、眼球の回転角から注視位置を求めてもよい。
なお、ここではファインダを片目で覗くことを想定し、両目視線方向や注視位置といった視線情報を1つの眼球について求めている。しかし、両目の眼球像が取得可能な環境であれば、視線情報をそれぞれの眼球について求めてもよい。両目の視線情報を求める場合、例えば検出精度が高いと考えられる一方の視線情報を用いるなどにより、視線情報の精度を高めることができる。
なお、視線情報取得部1800は、ユーザが注視している表示部1731内の位置を特定可能であれば他の任意の構成を用いることができる。なお、表示部1731は必ずしも撮像装置1700の内部に配置されていなくてもよい。例えば、表示部1731と、照明光源1801e、受光レンズ1801bが撮像装置1700の背面に設けられてもよい。
次に、視線情報取得部1800によって検出される視線もしくは注視位置に基づいてDL検出部7122および非DL検出部7123の有効および無効を制御するシステム制御部1740の動作について説明する。
図19は、視線もしくは注視位置に基づいて被写体検出部の有効無効を制御する動作に関連する機能ブロックを示す図である。なお、図19では、システム制御部1740を便宜上3つの機能ブロックとして示しているが、実際にはシステム制御部1740のCPUがプログラムを実行することにより、これら機能ブロックの機能を実現する。
以下、視線もしくは注視位置に基づいてシステム制御部1740が被写体検出部の有効無効を制御する動作を、図20に示すフローチャートと、図17および図19を用いて説明する。
S2000は画像取得処理である。図21のフローチャートを用いて画像取得処理の詳細について説明する。
S2100でシステム制御部1740は、撮像素子1704を制御して1フレーム分の撮像動作を実行する。これにより、光学系1701で形成された被写体光学像が複数の画素データからなるRAW画像データに変換される。
S2000は画像取得処理である。図21のフローチャートを用いて画像取得処理の詳細について説明する。
S2100でシステム制御部1740は、撮像素子1704を制御して1フレーム分の撮像動作を実行する。これにより、光学系1701で形成された被写体光学像が複数の画素データからなるRAW画像データに変換される。
S2102で画像処理部1710の第1前処理部1711は、RAW画像データにデモザイク処理を適用し、各画素がRGB成分を有する画像データを生成する。第1前処理部1711は生成した画像データを表示用メモリ1714に格納する。なお、第1前処理部1711は画像データをRGB形式からYUV形式に変換してから表示用メモリ1714に格納してもよい。
S2103で第1画像補正部1716は、表示用メモリ1714に格納された画像データに対して、予め定められた画像補正処理を適用する。なお、画像補正処理には、評価値の算出処理も含まれる。第1画像補正部1716は、適用する処理に応じて画像データの読み出し範囲を異ならせてもよい。
例えば、1ライン(画素行)の画像データに対して適用する画像処理について、適用対象の1ラインの画像データだけを読み出す場合もあれば、適用対象の1ラインを含んだ複数ラインの画像データを読み出す場合もある。また、画像処理を所定サイズの矩形領域の画像データに対して適用してもよい。第1画像補正部1716は、画像処理結果を適宜表示用メモリ1714に格納しながら画像補正処理を実行する。
S2104で第1画像補正部1716は、1フレーム分の画像データについて適用すべきすべての画像補正処理を完了したか否かを判定する。適用すべきすべての画像補正処理を完了したとで判定された場合、第1画像補正部1716は画像補正処理後の画像データを第1後処理部1719に出力し、評価値をシステム制御部1740に出力する。これにより、1フレーム分の画像取得処理が完了する。一方、適用すべき画像補正処理がまだ残っていると判定された場合、第1画像補正部1716は、S2103を繰り返し実行する。
なお、画像データの格納先が追尾用メモリ1715である点と、第2画像補正部1713が追尾用の画像処理を適用する点を除き、第2前処理部1712、追尾用メモリ1715、第2画像補正部1713においても、同様の処理を実行する。
図20に戻り、S2001で追尾部1718は、S2000で取得し、追尾用メモリ1715に格納されている画像データに対して追尾処理を適用する。なお、追尾部1718は、第1実施形態における非DL追尾部117が適用する非DL追尾処理を適用するものとする。追尾部1718は追尾結果として、追尾対象の被写体領域の位置および大きさを出力する。
S2002でシステム制御部1740は、被写体見失い判定処理を実行する。図22のフローチャートを用いて被写体見失い判定処理の詳細について説明する。
S2200においてシステム制御部1740は、視線情報取得部1800を通じてユーザの視線情報を取得する。ここで取得する視線情報は視線方向であってもよいし、注視位置であってもよい。
S2200においてシステム制御部1740は、視線情報取得部1800を通じてユーザの視線情報を取得する。ここで取得する視線情報は視線方向であってもよいし、注視位置であってもよい。
S2201において視線解析部1900が視線情報の不規則度を算出する。視線情報の不規則度とは、ユーザの注視位置の安定性の評価値である。不規則度が大きい場合には、ユーザの注視位置が安定しておらず、表示部1731の画面内で不規則に移動している状態に該当する。したがって、視線情報の不規則度が大きい場合には、ユーザが主被写体を見失い、画面内で探していると考えられる。
S2201で算出した不規則度に基づいて、S2003で不規則性判定部1901は、ユーザが被写体を見失ったか否かを判定する。
S2201における視線情報の不規則度は、どのような方法で算出してもよい。また、S2003における判定は、不規則度に応じた閾値を用いて実行することができる。以下に、不規則度の算出および判定方法の例を示す。
・注視位置または視線の軌跡の時間軸方向の周波数情報を用いる
周波数スペクトルを算出し、ある周波数以上のスペクトルの大きさを不規則度として求める。不規則度が閾値を超えた場合には被写体を見失ったと判定する。
・注視位置または視線の軌跡の自己相関の絶対値を不規則度として算出する
視線の動きが規則的であれば、隣接する時間幅において自己相関は1に近づき、視線の動きがランダムであれば自己相関は0に近くなる。不規則度が閾値未満の場合には被写体を見失ったと判定する。
・ある時間幅Tにおける、注視位置または視線の速度ベクトルもしくは加速度ベクトルの大きさの平均値と、個々の被写体領域の軌跡の速度ベクトルもしくは加速度ベクトルの大きさの平均値との相互相関の絶対値を、不規則度として算出する。
全ての被写体領域について不規則度が閾値未満であれば、被写体を見失ったと判定する。
・注視位置または視線の軌跡の時間軸方向の周波数情報を用いる
周波数スペクトルを算出し、ある周波数以上のスペクトルの大きさを不規則度として求める。不規則度が閾値を超えた場合には被写体を見失ったと判定する。
・注視位置または視線の軌跡の自己相関の絶対値を不規則度として算出する
視線の動きが規則的であれば、隣接する時間幅において自己相関は1に近づき、視線の動きがランダムであれば自己相関は0に近くなる。不規則度が閾値未満の場合には被写体を見失ったと判定する。
・ある時間幅Tにおける、注視位置または視線の速度ベクトルもしくは加速度ベクトルの大きさの平均値と、個々の被写体領域の軌跡の速度ベクトルもしくは加速度ベクトルの大きさの平均値との相互相関の絶対値を、不規則度として算出する。
全ての被写体領域について不規則度が閾値未満であれば、被写体を見失ったと判定する。
S2003において不規則性判定部1901によって被写体を見失ったと判定されれば処理判定部1902がS2004を実行する。S2003において不規則性判定部1901によって被写体を見失ったと判定されなければ処理判定部1902がS2005を実行する。
S2004で処理判定部1902は、DL検出部1722を有効にすると判定する。非DL検出部1723は無効しても、有効にしてもよい。画像処理部1710内のDL検出部1722は、上述したように機械学習(ここではDL)を用いた候補領域の検出処理を実行する。DL検出部1722により候補領域が1つのみ検出された場合、システム制御部1740は検出された候補領域を追尾対象の被写体領域として決定する。
一方、DL検出部1722により候補領域が複数検出された場合、システム制御部1740は複数の候補領域から追尾対象の被写体領域を決定する。システム制御部1740は、先の実施形態で説明したように候補領域の大きさや位置に基づいて、あるいは、他の方法により、追尾対象の被写体領域を決定することができる。他の方法に特に制限は無いが、例えば検出された候補領域から追尾対象の被写体領域をユーザに選択させてもよい。例えば、検出された候補領域のそれぞれに追尾枠と同様の指標を重畳表示させ、操作部1752を通じてユーザに追尾対象の被写体領域を選択させることができる。例えば方向ボタンとSETボタンの操作を通じて、あるいは視線情報取得部1800を用いた注視位置の検出を通じて、ユーザは追尾対象の被写体領域を選択することができる。
S2005で処理判定部1902は、DL検出部1722を無効に、非DL検出部1723を有効にすると判定する。画像処理部1710内の非DL検出部1723は、上述したように、機械学習を用いない方法により候補領域を検出する。この場合、ユーザは被写体を見失っていないと判定されているため、システム制御部1740は、視線情報に基づいて候補領域の中から追尾対象の被写体領域を決定することができる。
なお、第1実施形態のように、画像処理部1710に対象決定部を設け、対象決定部が候補領域から追尾対象の被写体領域を決定してもよい。
S2006でシステム制御部1740は、追尾対象の被写体領域の情報を追尾部1718および情報重畳部1721に出力する。これにより、追尾対象の被写体領域の情報が更新される。
S2007でシステム制御部1740は、DL検出部1722および非DL検出部1723の両方を無効として、消費電力を抑制する。
S2008で情報重畳部1721は、第1後処理部1719からの表示用画像データにS2006で更新された追尾対象の被写体領域を示す追尾枠を重畳した合成画像データを生成して表示部1731に出力する。
本実施形態では、追尾対象の被写体領域の候補領域を検出する第1の被写体検出部と、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部とを、ユーザが被写体を見失っているか否かに応じて使い分けるようにした。具体的には、第2の被写体検出部は、ユーザが被写体を見失っている場合に用い、ユーザが被写体を見失っていない場合には用いないようにした。ユーザが被写体を見失っていない場合には、第1の被写体検出部で十分精度の良く候補領域が検出可能であるため、第2の被写体検出部を無効にすることで、検出精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第4実施形態>
次に、本発明の第4実施形態について説明する。本実施形態では、撮像装置のオートフォーカス(AF)モードに応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
次に、本発明の第4実施形態について説明する。本実施形態では、撮像装置のオートフォーカス(AF)モードに応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
ここでは、撮像装置1700が、AFモードとして、焦点検出結果を維持するシングルAFモードと、継続的に焦点検出動作を行うコンティニュアスAFモードとを有するものとする。シングルAFモードは風景やポートレートのような静止もしくは動きの少ない被写体の撮影に用いられる可能性が高い。一方で、コンティニュアスAFモードは乗り物やスポーツシーンのような移動被写体の撮影に用いられる可能性が高い。
したがって、設定されているAFモードから、ユーザが撮影しようとしている主被写体の動きに関して推測することができる。AFモードはユーザが明示的に指定してもよいし、スポーツモード、風景モードなど、撮像装置1700が有する撮影モードに応じて自動的に設定されてもよい。また、他の条件に基づいてシステム制御部1740が設定してもよい。
なお、AFモードは静止画撮影時の焦点検出動作に関する設定である。一方で、静止画撮影モードにおける被写体追尾は、撮影スタンバイ状態でのライブビュー表示用に撮影される動画像に対して適用される。
本実施形態では、シングルAFモードの場合は被写体が静止しているか被写体の動きが小さく、被写体検出が比較的容易である可能性が高いため、DL検出部1722を無効とし、非DL検出部1723を有効とする。一方、コンティニュアスAFモードの場合は被写体が動いているか被写体の動きが大きく、被写体検出が比較的難しい可能性が高いため、DL検出部1722を有効とし、非DL検出部1723を無効とする。このような制御により、被写体検出の精度の低下を抑制しつつ、消費電力を抑制することができる。
以下、図23のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図23において、第3実施形態と同じ処理を行う工程には図20と同じ参照番号を付して説明を省略する。S2000およびS2001の処理は第3実施形態で説明した通りである。
S2302においてシステム制御部1740は、撮像装置1700の現在のAFモードがコンティニュアスAFモードか否かを判定する。システム制御部1740は、撮像装置1700の現在のAFモードがコンティニュアスAFモードと判定されればS2004でDL検出部1722を有効にする。非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。一方、システム制御部1740は、撮像装置1700の現在のAFモードがコンティニュアスAFモードと判定されなけばS2005で非DL検出部1723を有効にし、DL検出部1722は無効にする。
システム制御部1740は、を、判定されなければS2005を実行する。以降の処理は第3実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域の候補領域を検出する第1の被写体検出部と、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部とを、撮像装置のオートフォーカスモードに応じて使い分けるようにした。具体的には、第2の被写体検出部は、移動被写体の撮影に用いられる可能性が高いオートフォーカスモードが設定されている場合に用い、静止被写体の撮影に用いられる可能性が高いオートフォーカスモードが設定されている場合には用いないようにした。被写体の動きが少ない場合には、第1の被写体検出部で精度の良く候補領域を検出可能であるため、第2の被写体検出部を無効にすることで、検出精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第5実施形態>
次に、本発明の第5実施形態について説明する。本実施形態では、追尾処理を適用する動画のフレームレートに応じて、DL検出部1722と非DL検出部1723の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
次に、本発明の第5実施形態について説明する。本実施形態では、追尾処理を適用する動画のフレームレートに応じて、DL検出部1722と非DL検出部1723の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
フレーム間における被写体領域の移動量は、フレームレートが高いほど小さくなる。したがって、フレームレートが高い場合には追尾対象の被写体領域の移動量は小さく、被写体ブレが生じる可能性も低い。したがって、非DL検出部1723で十分な精度が得られる可能性が高い。そのため、フレームごとにDL検出部1722で検出する必要性は低い。
そのため、追尾処理を適用する動画のフレームレートが予め定められた第1の閾値(fps)より高い場合には、フレームレートが第1の閾値以下の場合よりも、DL検出部1722を有効とする頻度を下げる。これにより、検出精度の低下を抑制しつつ、消費電力を低減できる。なお、第1の閾値は例えば実験的に決定することができる。なお、閾値を複数設けて、DL検出部1722を有効とする頻度を3段階以上で制御してもよい。
以下、図24のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。ここでは、追尾処理を適用する動画のフレームレートが予め定められた第1の閾値(fps)より高いことが既に判定されているものとする。また、図24において、第3実施形態と同じ処理を行う工程には図20と同じ参照番号を付して説明を省略する。S2000およびS2001の処理は第3実施形態で説明した通りである。
S2402においてシステム制御部1740は、フレーム数のカウンタとして用いる変数COUNTの値が予め定められたN(2以上の整数)であるか否かを判定する。Nの値は追尾処理を適用する動画のフレームレートが第1の閾値(fps)以下の場合にDL検出部1722がMフレームごとに有効になるとすると、N>Mという関係を満たすように定める。ここではM=1、N=10とする。システム制御部1740は、変数COUNTの値がNであると判定されればS2403を、判定されなければS2404を実行する。
N=10であるため、S2403は10フレームごとに1回実行される。S2403でシステム制御部1740は変数COUNTの値を1に初期化する。その後、システム制御部1740は、S2004でDL検出部1722を有効にする。非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。
一方、S2404でシステム制御部1740は、変数COUNTの値を1増加させる。その後、システム制御部1740は、S2005で非DL検出部1723を有効にし、DL検出部1722は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
以上でライブビュー表示における一フレーム分の動作が完了する。以上の動作により、追尾処理を適用する動画のフレームレートが高い場合、DL検出部1722は10フレーム当たり1フレームについて有効となり、残りの9フレームについては無効となる。DL検出部1722が無効のフレームでは非DL検出部1723を有効とする。
本実施形態では、追尾対象の被写体領域の候補領域を検出する被写体検出部であって、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部を用いる頻度を、追尾処理を適用する動画のフレームレートに応じて制御するようにした。具体的には、追尾処理を適用する動画のフレームレートが高い場合には、高くない場合よりも、第2の被写体検出部を有効とする頻度を低くするようにした。被写体の動きが少ない場合には、第1の被写体検出部で精度の良く候補領域を検出可能であるため、第2の被写体検出部を用いる頻度を抑制することで、検出精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第6実施形態>
次に、本発明の第6実施形態について説明する。本実施形態では、撮像装置のシャッタスピードに応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
次に、本発明の第6実施形態について説明する。本実施形態では、撮像装置のシャッタスピードに応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
シャッタスピードが速い場合、被写体ブレが生じる可能性は低くなる。したがって、非DL検出部1723で十分な精度が得られる可能性が高い。そのため、シャッタスピードが速い場合にはDL検出部1722を無効とする。
以下、図25のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図25において、第3実施形態と同じ処理を行う工程には図20と同じ参照番号を付して説明を省略する。S2000およびS2001の処理は第3実施形態で説明した通りである。
S2502においてシステム制御部1740は、現在設定されているシャッタスピードが閾値より速いか否かを判定する。ここで用いる閾値は、非DL検出部1723の性能などに応じて例えば実験的に決定することができる。
システム制御部1740は、シャッタスピードが閾値より速いと判定されなればS2004でDL検出部1722を有効にする。非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。
一方、システム制御部1740は、シャッタスピードが閾値より速いと判定されなければS2005で非DL検出部1723を有効にし、DL検出部1722は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
一方、システム制御部1740は、シャッタスピードが閾値より速いと判定されなければS2005で非DL検出部1723を有効にし、DL検出部1722は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域の候補領域を検出する第1の被写体検出部と、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部とを、撮像装置のシャッタスピードに応じて使い分けるようにした。具体的には、第2の被写体検出部は、シャッタスピードが速くない(遅い)場合に用い、シャッタスピードが速い場合には用いないようにした。シャッタスピードが速い場合には、被写体ブレが生じる可能性が低く、第1の被写体検出部で精度の良く候補領域を検出可能であるため、第2の被写体検出部を無効にすることで、検出精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第7実施形態>
次に、本発明の第7実施形態について説明する。本実施形態では、ユーザの指示に応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
次に、本発明の第7実施形態について説明する。本実施形態では、ユーザの指示に応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
本実施形態では、ユーザがDL被写体検出処理を有効とした場合にのみ、DL検出部1722を有効とする。DL被写体検出処理を有効とするユーザ指示はどのようなものであってもよい。ユーザがDL被写体検出処理を意識して指示する必要はなく、結果としてDL被写体検出処理が有効になる指示であればよい。
ここでは一例として、操作部1752にDL被写体検出処理の有効・無効を切り替える機能が割り当てられた入力デバイス(DL被写体検出ボタン)が存在するものとする。システム制御部1740は、DL被写体検出ボタンが押下されるごとに、DL被写体検出処理の有効・無効を切り替える。あるいはシステム制御部1740は、DL被写体検出ボタンが押下されている間だけDL被写体検出処理を有効としてもよい。また、DL被写体検出ボタンは表示部1731を用いたソフトウェアキーであってもよい。
以下、図26のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図26において、第3実施形態と同じ処理を行う工程には図20と同じ参照番号を付して説明を省略する。S2000およびS2001の処理は第3実施形態で説明した通りである。
S2602においてシステム制御部1740は、DL被写体検出ボタンがONか否かを判定する。ここでは、DL被写体検出ボタンが押下されている場合にONと判定する。システム制御部1740は、DL被写体検出ボタンがONと判定されれば、S2004でDL検出部1722を有効にする。非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。一方、システム制御部1740は、DL被写体検出ボタンがONと判定されなければ、S2005で非DL検出部1723を有効にし、DL検出部1722は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域の候補領域を検出する被写体検出部のうち、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部の有効、無効を、ユーザの指示に応じて制御するようにした。具体的には、第2の被写体検出部を有効にする旨のユーザ指示を検出した場合のみ第2の被写体検出部を有効とするようにした。これにより、ユーザが必要としない場合に第2の被写体検出部が無効になるため、消費電力を抑制することができる。
●<第8実施形態>
次に、本発明の第8実施形態について説明する。本実施形態では、装置の操作状況に応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
次に、本発明の第8実施形態について説明する。本実施形態では、装置の操作状況に応じてDL検出部および非DL検出部の有効、無効を制御する。本実施形態は第3実施形態と同様の撮像装置1700で実施可能であるため、図17に示した構成要素を用いて説明する。
具体的には、撮影範囲を変更するための操作であるパン、チルト、またはズーム操作が行われていると判定される場合には、DL検出部1722を無効とする。これらの操作が行われている場合、主被写体が撮影範囲に収まるようにユーザが調整している可能性があるからである。そのため、これらの操作中にDL検出部1722を有効としても、意味のある検出結果が得られない可能性がある。本実施形態においてDL検出部1722は、撮像装置1700のパン、チルト、またはズーム操作中が行われていないと判定される場合のみ有効にされうる。
以下、図27のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図27において、第3実施形態と同じ処理を行う工程には図20と同じ参照番号を付して説明を省略する。S2000およびS2001の処理は第3実施形態で説明した通りである。
S2702においてシステム制御部1740は、撮像装置1700でパン、チルト、またはズーム操作が行われているか否かを判定する。システム制御部1740は、例えばライブビュー表示用に撮影されている動画のフレーム間の動きベクトルや特徴領域のサイズ変化を検出することにより、あるいは動きセンサ1760の出力により、パン、チルト、ズーム操作を検出することができる。ズーム操作については操作部1752のズームボタンの操作によっても検出することができる。
システム制御部1740は、パン、チルト、またはズーム操作が行われていると判定されれば、S2008を実行する。一方、システム制御部1740は、パン、チルト、またはズーム操作が行われていると判定されなければ、S2702を実行する。
S2702でシステム制御部1740は、DL検出部1722または非DL検出部1723を有効にする。DL検出部1722が有効の場合、非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。DL検出部1722を有効とする条件は、例えば第3~第7実施形態で説明した条件の1つ以上を用いることができる。システム制御部1740は、DL検出部1722を有効とする条件が満たされなければ、DL検出部1722を無効とし、非DL検出部1723を有効とする。S2006以降の処理は第3実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域の候補領域を検出する被写体検出部のうち、第1の被写体検出部よりも精度が高いが演算量が多い第2の被写体検出部を、撮影範囲を変更するための操作が行われていない場合にのみ有効とすることができるようにした。撮影範囲が確定していない状態では第2の被写体検出部を有効としないことにより、効率的に消費電力を抑制することができる。さらに、撮影範囲が確定していない状態では第1の被写体検出部も有効としないようにすれば、消費電力を一層抑制することができる。
(変形例)
なお、上述の第3~第8実施形態において説明した条件とは異なる条件に基づいて、DL被写体検出と非DL被写体検出の有効、無効を制御してもよい。例えば、撮影モード(静止画撮影モードまたは動画撮影モード)、またはレリーズボタンの押下状態(押下なし、半押し、全押し)、または追尾モードの状態、または追尾オブジェクトの種類に応じてDL被写体検出と非DL被写体検出の有効、無効を制御しうる。
なお、上述の第3~第8実施形態において説明した条件とは異なる条件に基づいて、DL被写体検出と非DL被写体検出の有効、無効を制御してもよい。例えば、撮影モード(静止画撮影モードまたは動画撮影モード)、またはレリーズボタンの押下状態(押下なし、半押し、全押し)、または追尾モードの状態、または追尾オブジェクトの種類に応じてDL被写体検出と非DL被写体検出の有効、無効を制御しうる。
●<第9実施形態>
次に、本発明の第9実施形態について説明する。図28は第9実施形態に係る画像処理装置の一例としての撮像装置1700'の機能構成例を示すブロック図である。図17を用いて説明した撮像装置1700と同様の構成には同じ参照数字を付して重複する説明を省略する。なお、本実施形態の検出部1717は、DL検出部1722もしくは非DL検出部1723のいずれかであってよい。ここでは非DL検出部1723と同じものとする。
次に、本発明の第9実施形態について説明する。図28は第9実施形態に係る画像処理装置の一例としての撮像装置1700'の機能構成例を示すブロック図である。図17を用いて説明した撮像装置1700と同様の構成には同じ参照数字を付して重複する説明を省略する。なお、本実施形態の検出部1717は、DL検出部1722もしくは非DL検出部1723のいずれかであってよい。ここでは非DL検出部1723と同じものとする。
本実施形態の撮像装置1700'は、新たな構成として対象決定部2801を有し、また追尾部1718が第1実施形態と同様にDL追尾部2802および非DL追尾部2803を有している。
対象決定部2801は、第1実施形態の対象決定部111と同様、検出部1717が検出した候補領域から、追尾対象とする被写体領域(主被写体領域)を決定する。対象決定部2801は、検出された候補領域が1つであれば検出された候補領域を主被写体領域として決定する。また、対象決定部2801は、複数の候補領域が検出されている場合には、あらかじめ定められた優先順位に基づいて、主被写体領域を決定することができる。
対象決定部2801は、例えば候補領域の大きさに基づく優先順位や、焦点検出領域との距離に基づく優先順位に基づいて主被写体領域を決定することができる。具体的には、サイズが最大の候補領域を主被写体領域としてもよいし、焦点検出領域に最も近い候補領域を主被写体領域としてもよい。また、焦点検出領域からの距離が閾値未満である候補領域のうち、サイズが最も大きな候補領域を主被写体領域とするなど、複数の優先順位を考慮して主被写体領域を決定してもよい。ここで例示した以外の優先順位を考慮してもよい。
追尾部1718は、追尾用メモリ1715に格納された、処理対象のフレーム(現フレーム)の画像データから追尾対象の被写体領域を推定し、推定した被写体領域のフレーム内の位置と大きさを追尾結果として求める。追尾部115は例えば、現フレームより前に撮影された過去フレーム(例えば1つ前のフレーム)について対象決定部2801が決定した主被写体領域について、現フレーム内の位置と大きさを推定する。追尾部115は、追尾結果を情報重畳部1721に出力する。
追尾部1718は深層学習(DL)を用いて被写体追尾を行うDL追尾部2802と、DLを用いずに被写体追尾を行う非DL追尾部2803とを有する。DL追尾部2802および非DL追尾部2803の構成は、第1実施形態で説明したDL追尾部116とおよび非DL追尾部117とそれぞれ同じであってよいため、詳細に関する説明は省略する。本実施形態では、システム制御部1740が、DL追尾部2802および非DL追尾部2803の有効および無効、ならびに有効時の動作頻度を制御する。
本実施形態においても、DL追尾部2802は、推定された主被写体領域の位置および大きさと、信頼度スコアを追尾結果として出力する。また、非DL追尾部2803は、推定された主被写体領域の位置および大きさと、類似度スコアを出力を追尾結果として出力する。
追尾部1718は、DL追尾部2802が出力する信頼度スコア、および非DL追尾部2803が出力する類似度スコアに基づいて、DL追尾部2802および非DL追尾部2803の追尾結果の一方を採用する。追尾部1718は例えば信頼度スコアが予め定められた信頼度スコア閾値以下、かつ類似度スコアが予め定められた類似度スコア閾値以下であった場合には、非DL追尾部2803の追尾結果を採用する。追尾部1718は、それ以外の場合には、DL追尾部2802の追尾結果を採用する。追尾部1718は、採用した追尾結果を、情報重畳部1721およびシステム制御部1740に出力する。
なお、ここではDL追尾部2802および非DL追尾部2803の追尾結果のいずれを採用するかを信頼度スコアおよび類似度スコアに基づいて決定した。しかし、他の方法で決定してもよい。例えば、DL追尾部2802の精度は、非DL追尾部2803の精度より高い傾向にあることを利用して、DL追尾部2802の追尾結果を優先して採用してもよい。具体的には、DL追尾部2802の追尾結果が得られていればDL追尾部2802の追尾結果を採用し、得られていなければ非DL追尾部2803の追尾結果を採用してもよい。
次に、本実施形態においてシステム制御部1740が行う、DL追尾部2802および非DL追尾部2803の制御動作について説明する。本実施形態においてシステム制御部1740は、撮像装置1700'に設定されているAFモードに応じてDL追尾部2802と非DL追尾部2803のいずれを有効にするかを制御する。
ここでは、撮像装置1700'が第4実施形態と同様にシングルAFモードとコンティニュアスAFモードとを有するものとする。シングルAFモードは風景やポートレートのような静止もしくは動きの少ない被写体の撮影に用いられる可能性が高い。一方で、コンティニュアスAFモードは乗り物やスポーツシーンのような移動被写体の撮影に用いられる可能性が高い。
シングルAFモードの場合は被写体が静止しているか被写体の動きが小さい可能性が高い。そのため、DL追尾部ではなく非DL追尾部を有効とする。一方、コンティニュアスAFモードの場合は、被写体が動いているか被写体の動きが大きい可能性が高い。そのため、非DL追尾部ではなくDL追尾部を有効とする。このような制御により、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。
図29は、本実施形態におけるシステム制御部1740の動作に関するフローチャートである。
S2900は第3実施形態において図21を用いて説明した処理と同様の画像取得処理である。
S2900は第3実施形態において図21を用いて説明した処理と同様の画像取得処理である。
S2901でシステム制御部1740は、検出部1717に候補領域の検出を実行するように指示する。検出部1717は、1フレーム分の画像に対して被写体領域の検出処理を適用し、検出結果を追尾用メモリ1715に格納する。検出結果は検出された候補領域の総数、個々の候補領域の画像内の位置および大きさを含む。
S2902でシステム制御部1740は、対象決定部2801に、候補領域の中から追尾対象とする被写体領域(主被写体領域)を決定するように指示する。対象決定部2801は、追尾用メモリ1715に格納された候補領域の情報を読み出し、候補領域が複数検出されている場合には上述したような優先順位に基づいて主被写体領域を決定する。対象決定部2801は、主被写体領域を特定する情報を追尾用メモリ1715に格納する。
S2903においてシステム制御部1740は、撮像装置1700'に現在設定されているAFモードがコンティニュアスAFモードであるか否かを判定する。システム制御部1740は、現在設定されているAFモードがコンティニュアスAFモードであると判定された場合にはS2904を実行し、現在設定されているAFモードがコンティニュアスAFモードであると判定されない場合にはS2905を実行する。
S2904でシステム制御部1740は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
また、S2905でシステム制御部1740は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
なお、S2904おようびS2905における追尾処理に用いる主被写体領域は、現フレームよりも過去のフレームについて直近に決定された主被写体領域である。
また、S2905でシステム制御部1740は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
なお、S2904おようびS2905における追尾処理に用いる主被写体領域は、現フレームよりも過去のフレームについて直近に決定された主被写体領域である。
S2906でシステム制御部1740は、追尾用メモリ1715に格納されている主被写体領域の情報を、S2904またはS2905における追尾処理の結果によって更新する。また、追尾処理の結果は情報重畳部1721にも出力される。
S2907でシステム制御部1740は、DL追尾部2802および非DL追尾部2803を無効にする。
S2908でシステム制御部1740は、情報重畳部1721に、追尾結果に基づく追尾枠を現フレームの表示用画像に重畳表示するように指示する。情報重畳部1721は、追尾結果に基づく位置と大きさを有する追尾枠の画像を生成し、現フレームの表示用画像データに合成した合成画像データを生成する。情報重畳部1721は、合成画像データを表示部1731に出力する。
S2908でシステム制御部1740は、情報重畳部1721に、追尾結果に基づく追尾枠を現フレームの表示用画像に重畳表示するように指示する。情報重畳部1721は、追尾結果に基づく位置と大きさを有する追尾枠の画像を生成し、現フレームの表示用画像データに合成した合成画像データを生成する。情報重畳部1721は、合成画像データを表示部1731に出力する。
以上でライブビュー表示における一フレーム分の動作が完了する。本実施形態では、第1の追尾部と、第1の追尾部よりも処理精度が高いが、演算量が多い第2の追尾部とを用いる撮像装置において、AFモードに応じて第1および/または第2追尾部の有効・無効を制御するようにした。そのため、良好な追尾結果が得られる可能性が低い追尾部を無効としたり、一方の処理部だけで良好な追尾結果が得られる可能性が高い場合には他方の追尾部を無効としたりすることで、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第10実施形態>
次に、本発明の第10実施形態について説明する。本実施形態では、追尾処理を適用する動画のフレームレートに応じて、DL追尾部2802と非DL追尾部2803の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第10実施形態について説明する。本実施形態では、追尾処理を適用する動画のフレームレートに応じて、DL追尾部2802と非DL追尾部2803の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
フレーム間における被写体領域の位置やサイズの変動は、フレームレートが高いほど小さくなる。したがって、フレームレートが高い場合には非DL追尾部2803による追尾処理の精度は十分高いと考えられる。この場合、DL追尾部2802が必要となる可能性は低い。しかしながら、ある程度の頻度でDL追尾部2802を用いることで、より確実に追尾処理の精度を維持することができる。
そのため、追尾処理を適用する動画のフレームレートが予め定められた第1の閾値(fps)より高い場合には、フレームレートが第1の閾値以下の場合よりも、DL追尾部2802を有効とする頻度を下げる。これにより、検出精度の低下を抑制しつつ、消費電力を低減できる。なお、第1の閾値は例えば実験的に決定することができる。なお、閾値を複数設けて、DL追尾部2802を有効とする頻度を3段階以上で制御してもよい。
以下、図30のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。ここでは、追尾処理を適用する動画のフレームレートが予め定められた第1の閾値(fps)より高いことが既に判定されているものとする。また、図30において、第9実施形態と同じ処理を行う工程には図29と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3001においてシステム制御部1740は、フレーム数のカウンタとして用いる変数COUNTの値が予め定められたN(2以上の整数)であるか否かを判定する。Nの値は追尾処理を適用する動画のフレームレートが第1の閾値(fps)以下の場合にDL追尾部2802がMフレームごとに有効になるとすると、N>Mという関係を満たすように定める。ここではM=1、N=10とする。システム制御部1740は、変数COUNTの値がNであると判定されればS3002を、判定されなければS3003を実行する。
N=10であるため、S3002は10フレームごとに1回実行される。S3002でシステム制御部1740は変数COUNTの値を1に初期化する。その後、システム制御部1740は、S2904でDL追尾部2802を有効にする。非DL追尾部2803は無効とすることで消費電力を抑制できるが、有効としてもよい。
一方、S3003でシステム制御部1740は、変数COUNTの値を1増加させる。その後、システム制御部1740は、S2905で非DL追尾部2803を有効にし、DL追尾部2802は無効にする。以降の処理は第9実施形態と同様であるため説明を省略する。
以上でライブビュー表示における一フレーム分の動作が完了する。以上の動作により、追尾処理を適用する動画のフレームレートが高い場合、DL追尾部2802は10フレーム当たり1フレームについてが有効となり、残りの9フレームについては無効となる。DL追尾部2802が無効のフレームでは非DL追尾部2803を有効とする。
本実施形態では、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を用いる頻度を、追尾処理を適用する動画のフレームレートに応じて制御するようにした。具体的には、追尾処理を適用する動画のフレームレートが高い場合には、高くない場合よりも、第2の追尾部を有効とする頻度を低くするようにした。被写体の動きが少ない場合には、第1の追尾部で精度の良い追尾処理が可能であるため、第2の追尾部を用いる頻度を抑制することで、検出精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第11実施形態>
次に、本発明の第11実施形態について説明する。本実施形態では、撮像装置のシャッタスピードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
●<第11実施形態>
次に、本発明の第11実施形態について説明する。本実施形態では、撮像装置のシャッタスピードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
動画撮影時のシャッタスピードが速い場合、フレームレートが高い場合と同様、フレーム間における被写体領域の位置やサイズの変動は小さくなる。したがって、非DL追尾部2803の追尾処理で十分な精度が得られる可能性が高い。そのため、シャッタスピードが速い場合にはDL追尾部2802を無効とする。
以下、図31のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図31において、第9実施形態と同じ処理を行う工程には図19と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3101においてシステム制御部1740は、現在設定されているシャッタスピードが閾値より速いか否かを判定する。ここで用いる閾値は、非DL追尾部2803の性能などに応じて例えば実験的に決定することができる。
システム制御部1740は、シャッタスピードが閾値より速いと判定されなればS2904でDL追尾部2802を有効にする。非DL追尾部2803は無効とすることで消費電力を抑制できるが、有効としてもよい。
一方、システム制御部1740は、シャッタスピードが閾値より速いと判定されなければS2905で非DL追尾部2803を有効にし、DL追尾部2802は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
一方、システム制御部1740は、シャッタスピードが閾値より速いと判定されなければS2905で非DL追尾部2803を有効にし、DL追尾部2802は無効にする。以降の処理は第3実施形態と同様であるため説明を省略する。
本実施形態では、第1の追尾部と、第1の追尾部よりも処理精度が高いが、演算量が多い第2の追尾部とを、撮像装置のシャッタスピードに応じて使い分けるようにした。具体的には、第2の追尾部は、シャッタスピードが速くない(遅い)場合に用い、シャッタスピードが速い場合には用いないようにした。シャッタスピードが速い場合には、フレーム間における被写体領域の位置や大きさの変化が小さく、第1の追尾部で精度の良い追尾処理が可能であるため、第2の追尾部を無効にする。これにより、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。
●<第12実施形態>
次に、本発明の第12実施形態について説明する。本実施形態では、ユーザの指示に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第12実施形態について説明する。本実施形態では、ユーザの指示に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
本実施形態では、ユーザがDL追尾処理を有効とした場合にのみ、DL追尾部2802を有効とする。DL追尾処理を有効とするユーザ指示はどのようなものであってもよい。ユーザがDL追尾処理を意識して指示する必要はなく、結果としてDL追尾処理が有効になる指示であればよい。
ここでは一例として、操作部1752にDL追尾処理の有効・無効を切り替える機能が割り当てられた入力デバイス(DL追尾ボタン)が存在するものとする。図39は、撮像装置1700'の背面外観例を示す図である。ここでは、表示部1731が撮像装置1700'の背面に設けられているものとする。操作部1752を構成する一部の入力デバイス3901~3903が撮像装置1700'の背面に設けられている。方向入力と決定入力が可能な入力デバイス3903は、方向キーおよび決定ボタンとして機能する。入力デバイス3901または3902をDL追尾ボタンとして用いることができる。
システム制御部1740は、DL追尾ボタンが押下されるごとに、DL追尾の有効・無効を切り替える。あるいはシステム制御部1740は、DL追尾ボタンが押下されている間だけDL追尾を有効としてもよい。また、DL追尾ボタンは表示部1731を用いたソフトウェアキーであってもよい。
以下、図32のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図32において、第9実施形態と同じ処理を行う工程には図29と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3201においてシステム制御部1740は、DL追尾ボタンがONか否かを判定する。ここでは、DL追尾ボタンが押下されている場合にONと判定する。システム制御部1740は、DL追尾ボタンがONと判定されれば、S2904でDL追尾部2802を有効にする。非DL追尾部2803は無効とすることで消費電力を抑制できるが、有効としてもよい。一方、システム制御部1740は、DL追尾ボタンがONと判定されなければ、S2905で非DL追尾部2803を有効にし、DL追尾部2802は無効にする。以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の被写体追尾部の有効、無効を、ユーザの指示に応じて制御するようにした。具体的には、第2の追尾部を有効にする旨のユーザ指示を検出した場合のみ第2の追尾部を有効とするようにした。これにより、ユーザが必要としない場合に第2の追尾部が無効になるため、消費電力を抑制することができる。
●<第13実施形態>
次に、本発明の第13実施形態について説明する。本実施形態では、装置の操作状況に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第13実施形態について説明する。本実施形態では、装置の操作状況に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
具体的には、撮影範囲を変更するための操作であるパン、チルト、またはズーム操作が行われていると判定される場合には、DL追尾部2802を無効とする。これらの操作が行われている場合、主被写体が撮影範囲に収まるようにユーザが調整している可能性があるからである。そのため、これらの操作中にDL追尾部2802を有効としても、意味のある検出結果が得られない可能性がある。本実施形態においてDL追尾部2802は、撮像装置1700'のパン、チルト、またはズーム操作中が行われていないと判定される場合のみ有効にされうる。
以下、図33のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図33において、第9実施形態と同じ処理を行う工程には図2 9と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3301においてシステム制御部1740は、撮像装置1700'でパン、チルト、またはズーム操作が行われているか否かを判定する。システム制御部1740は、例えばライブビュー表示用に撮影されている動画のフレーム間の動きベクトルや特徴領域のサイズ変化を検出することにより、あるいは動きセンサ1760の出力により、パン、チルト、ズーム操作を検出することができる。ズーム操作については操作部1752のズームボタンの操作によっても検出することができる。
システム制御部1740は、パン、チルト、またはズーム操作が行われていると判定されれば、S2908を実行する。一方、システム制御部1740は、パン、チルト、またはズーム操作が行われていると判定されなければ、S3302を実行する。
S3302でシステム制御部1740は、DL追尾部2802または非DL追尾部2803を有効にする。DL追尾部2802が有効の場合、非DL検出部1723は無効とすることで消費電力を抑制できるが、有効としてもよい。DL追尾部2802を有効とする条件は、例えば第9~第12実施形態で説明した条件の1つ以上を用いることができる。 システム制御部1740は、DL追尾部2802を有効とする条件が満たされなければ、DL追尾部2802を無効とし、非DL追尾部2803を有効とする。S2906以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を、撮影範囲を変更するための操作が行われていない場合にのみ有効とすることができるようにした。撮影範囲が確定していない状態では第2の追尾部を有効としないことにより、効率的に消費電力を抑制することができる。
●<第14実施形態>
次に、本発明の第14実施形態について説明する。本実施形態では、撮像装置1700'の撮影モードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第14実施形態について説明する。本実施形態では、撮像装置1700'の撮影モードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
撮像装置1700'は静止画撮影モードと動画撮影モードとを含む複数の撮影モードを有する。なお、撮影モードは、夜景モード、スポーツモード、フィルターモードなど、撮影シーンや適用する特殊効果などに応じて設けられる場合もある。ここでは最終的に静止画を撮影する撮影モードであれば静止画撮影モードとして、動画を撮影する撮影モードであれば動画撮影モードとして取り扱う。
以下、図34のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図34において、第9実施形態と同じ処理を行う工程には図2 9と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3401においてシステム制御部1740は、例えばモード切替スイッチ1751の状態に基づいて、撮像装置1700'の撮影モードが静止画撮影モードか否かを判定する。システム制御部1740は、撮像装置1700'の撮影モードが静止画撮影モードであると判定されればS3402を実行する。一方、システム制御部1740は、撮像装置1700'の撮影モードが静止画撮影モードであると判定されなければS3403を実行する。
S3402でシステム制御部1740は、カウント設定値を第1の値(N1)としてS3405を実行する。N1は1以上の整数である。
S3403でシステム制御部1740は、カウント設定値を第2の値(N2)としてS3405を実行する。N2は1以上の整数である。
S3403でシステム制御部1740は、カウント設定値を第2の値(N2)としてS3405を実行する。N2は1以上の整数である。
S3405においてシステム制御部1740は、フレーム数のカウンタとして用いる変数COUNTの値がカウント設定値(N1またはN2)であるか否かを判定する。システム制御部1740は、変数COUNTの値がカウント設定値であると判定されればS3406を、判定されなければS3407を実行する。
S3406でシステム制御部1740は変数COUNTの値を1に初期化する。その後、システム制御部1740は、S2904でDL追尾部2802を有効にする。非DL追尾部2803は無効とすることで消費電力を抑制できるが、有効としてもよい。
一方、S3407でシステム制御部1740は、変数COUNTの値を1増加させる。その後、システム制御部1740は、S2905で非DL追尾部2803を有効にし、DL追尾部2802は無効にする。
S2904は、変数COUNTがN1もしくはN2になるごとに実行される。つまり、静止画撮影モードではN1フレームごとに1回、動画撮影モードではN2フレームごとに1回、DL追尾部2802が有効とされ、残りのフレームについてはDL追尾部2802は無効とされる。
第1の値および第2の値は、DL追尾部2802を有効とする頻度を撮影モードに応じて制御する。第1の値および第2の値は、例えば不揮発性メモリ1753に予め記憶されている。なお、第1の値および第2の値はシャッタスピードやフレームレートなどを考慮して定めることができる。
例えば、追尾処理を適用する動画のフレームレートが、動画撮影モードでは静止画撮影モードよりも高くなるとする。この場合、動画撮影モードでは静止画撮影モードよりもDL追尾部2802を有効とする頻度を下げることで、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。なお、これは一例であり、撮影モードごとにDL追尾部2802を有効とする頻度を独立して制御することにより、撮影モードに適した頻度でDL追尾部2802を有効とすることができる。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を有効にする頻度を、撮影モードに応じて制御するようにした。撮影モードに応じて適切なカウント設定値を定めることにより、追尾性能の低下を抑制しつつ、消費電力を低減させることができる。
●<第15実施形態>
次に、本発明の第15実施形態について説明する。本実施形態では、レリーズボタンの押下状態の状態に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第15実施形態について説明する。本実施形態では、レリーズボタンの押下状態の状態に応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
レリーズボタン1750は、半押しでONするスイッチSW1と、全押しでONするスイッチSW2を有するため、いずれのスイッチもOFFの状態と、スイッチSW1だけがONの状態と、スイッチSW1およびSW2がONの状態とを有する。また、システム制御部1740はSW1のONを静止画の撮影準備指示として、SW2のONを静止画の撮影開始指示と認識する。
本実施形態では、レリーズボタン1750が半押しまたは全押しの状態でなければ、撮影待機状態であるため、DL追尾部2802を無効として、消費電力を抑制する。このように、本実施形態において、DL追尾部2802は、撮像装置1700'が撮影準備指示もしくは撮影開始指示が入力されている場合のみ有効にされうる。
以下、図35のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図35において、第9実施形態と同じ処理を行う工程には図2 9と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3501においてシステム制御部1740は、レリーズボタン1750が半押しまたは全押し状態であるか否かを判定する。システム制御部1740は、例えばスイッチSW1がONであれば、レリーズボタン1750が半押しまたは全押し状態であると判定することができる。スイッチSW2がONのときにスイッチSW1はONであるため、スイッチSW2の状態を検出する必要は無い。
システム制御部1740は、レリーズボタン1750が半押しまたは全押し状態であると判定されれば、S3502を実行する。
一方、システム制御部1740は、レリーズボタン1750が半押しまたは全押し状態であると判定されなければ、S2908を実行する。この場合は撮影待機状態であるため、処理対象のフレームに対して追尾処理は行わない(非DL追尾部2803で実施してもよい)。
一方、システム制御部1740は、レリーズボタン1750が半押しまたは全押し状態であると判定されなければ、S2908を実行する。この場合は撮影待機状態であるため、処理対象のフレームに対して追尾処理は行わない(非DL追尾部2803で実施してもよい)。
S3502でシステム制御部1740は、DL追尾部2802または非DL追尾部2803を有効にする。DL追尾部2802が有効の場合、非DL追尾部2803は無効とすることで消費電力を抑制できるが、有効としてもよい。DL追尾部2802を有効とする条件は、例えば第9~第14実施形態で説明した条件の1つ以上を用いることができる。システム制御部1740は、DL追尾部2802を有効とする条件が満たされなければ、DL追尾部2802を無効とし、非DL追尾部2803を有効とする。レリーズボタンの半押し状態と全押し状態とでDL追尾部2802を有効とする条件を異ならせてもよい。S2906以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を、撮影準備指示もしくは撮影開始指示が入力されている場合にのみ有効とすることができるようにした。これにより、撮影準備指示および撮影開始指示が入力されていない撮影待機状態では第2の追尾部が有効とされず、効率的に消費電力を抑制することができる。さらに、撮影待機状態では第1の追尾部も有効としないようにすれば、消費電力を一層抑制することができる。
●<第16実施形態>
次に、本発明の第16実施形態について説明する。本実施形態では、撮像装置1700'の追尾モードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第16実施形態について説明する。本実施形態では、撮像装置1700'の追尾モードに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
追尾モードとは、主被写体が撮影範囲の中心部から移動しても主被写体に合焦するように継続的に合焦制御を行うモードであり、撮影範囲内で常に移動する被写体や、小動物のように動きが予想しづらい被写体の撮影に適している。追尾モードはモード切替スイッチ1751によって設定されてもよいし、操作部1752に含まれる入力デバイスの1つの操作によって設定されてもよい。なお、追尾モードで合焦させる被写体は、対象決定部2801が決定した主被写体領域に対応する被写体であってよい。なお、追尾モードは明示的に設定される以外に、特定の機能の設定に伴って間接的に設定されてもよい。
追尾モードが設定されている場合、合焦させる被写体が移動する可能性が高いと考えられるため、DL追尾部2802を有効とする。一方、追尾モードが設定されていない場合、合焦させる被写体が移動する可能性が低いと考えられるため、DL追尾部2802を無効とし、非DL追尾部2803を有効とする。
以下、図36のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図36において、第9実施形態と同じ処理を行う工程には図2 9と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3601においてシステム制御部1740は、撮像装置1700'に追尾モードが設定されているか否かを判定する。システム制御部1740は、例えばモード切替スイッチ1751の状態から、追尾モードが設定されているか否かを判定することができる。
システム制御部1740は、追尾モードが設定されていると判定されればS2904を、追尾モードが設定されていると判定されなければS2905を実行する。
S2904でシステム制御部1740は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
S2904でシステム制御部1740は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
また、S2905でシステム制御部1740は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を、追尾モードが設定されている場合に有効とし、追尾モードが設定されていない場合には無効とする。第2の追尾部の必要性が低いと考えられる場合に第2の追尾部を無効とすることで、追尾精度の低下を抑制しつつ消費電力を抑制することができる。
●<第17実施形態>
次に、本発明の第17実施形態について説明する。本実施形態では、追尾対象の主被写体が追尾しやすい被写体であるか否かに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
次に、本発明の第17実施形態について説明する。本実施形態では、追尾対象の主被写体が追尾しやすい被写体であるか否かに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。
本実施形態の検出部1717は、第1実施形態における検出部110と同様に、検出した候補領域に、被写体の種類を示すオブジェクトクラスとその信頼度を関連付けるものとする。追尾対象である主被写体領域が追尾が容易な被写体であれば、非DL追尾部2803で十分な精度が得られる可能性が高いため、DL追尾部2802を無効とする。
以下、図37のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図37において、第9実施形態と同じ処理を行う工程には図2 9と同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S3701においてシステム制御部1740は、対象決定部2801が決定した主被写体領域に関連付けられているオブジェクトクラスから、主被写体領域に係る被写体の種類が追尾の容易な被写体であるか否かを判定する。システム制御部1740は、例えば不揮発性メモリ1753に予め記憶されている、オブジェクトクラスと追尾の難度とを参照することにより、主被写体領域に係る被写体の種類が追尾の容易な被写体であるか否かを判定することができる。ここでの追尾の難度は、非DL追尾の難度とする。
例えば、鳥や昆虫のように、角度や状態(例えば飛んでいる状態か否か)によって形および/または色が大きく変化する被写体はについては、非DL追尾が難しい。なお、非DL追尾が難しい被写体は、非DL追尾のアルゴリズムにも依存するため、形および/または色の変化が大きい被写体に限定されない。なお、検出部1717が検出可能なオブジェクトクラスや、非DL追尾部の性能などに応じて、オブジェクトクラスと追尾難度との対応付けは予め行うことができる。
システム制御部1740は、主被写体領域に係る被写体の種類が追尾の容易な被写体であると判定されればS2905を、判定されなければS2904を実行する。
S2904でシステム制御部1740は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
S2904でシステム制御部1740は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
また、S2905でシステム制御部1740は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を、追尾対象の被写体領域に係る被写体が第1の追尾部で容易に追尾できる被写体であれば無効とする。第2の追尾部の必要性が低いと考えられる場合に第2の追尾部を無効とすることで、追尾精度の低下を抑制しつつ消費電力を抑制することができる。
●<第18実施形態>
次に、本発明の第18実施形態について説明する。本実施形態では、ユーザが被写体を見失っているか否かに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。ただし、撮像装置1700'は、第3実施形態に係る撮像装置1700と同様、操作部1752に含まれる入力デバイスとして、図18に示した視線情報取得部1800が設けられているものとする。また、システム制御部1740についても、図19に示したような機能ブロックを有するものとする。
次に、本発明の第18実施形態について説明する。本実施形態では、ユーザが被写体を見失っているか否かに応じてDL追尾部および非DL追尾部の有効、無効を制御する。本実施形態は第9実施形態と同様の撮像装置1700'で実施可能であるため、図28に示した構成要素を用いて説明する。ただし、撮像装置1700'は、第3実施形態に係る撮像装置1700と同様、操作部1752に含まれる入力デバイスとして、図18に示した視線情報取得部1800が設けられているものとする。また、システム制御部1740についても、図19に示したような機能ブロックを有するものとする。
以下、図38のフローチャートを用いて、本実施形態におけるシステム制御部1740の動作について説明する。図38において、第9実施形態と同じ処理を行う工程には図2 9と、第3実施形態と同じ処理を行う工程には図20とそれぞれ同じ参照番号を付して説明を省略する。S2900からS2902の処理は第9実施形態で説明した通りである。
S2002でシステム制御部1740は、図19および図22を用いて説明した被写体見失い判定処理を実行する。
S2003でシステム制御部1740(不規則性判定部1901)は、見失い判定処理で算出した不規則度に基づいて、ユーザが被写体を見失ったか否かを判定する。
S2003でシステム制御部1740(不規則性判定部1901)は、見失い判定処理で算出した不規則度に基づいて、ユーザが被写体を見失ったか否かを判定する。
S2003において不規則性判定部1901によって被写体を見失ったと判定されれば処理判定部1902がS2904を実行する。S2003において不規則性判定部1901によって被写体を見失ったと判定されなければ処理判定部1902がS2905を実行する。
S2904でシステム制御部1740(処理判定部1902)は、DL追尾部2802を有効とし、非DL追尾部2803を無効とする。これにより、DL追尾部2802は、現フレームに対する追尾処理を実行する。
また、S2905でシステム制御部1740(処理判定部1902)は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
また、S2905でシステム制御部1740(処理判定部1902)は、非DL追尾部2803を有効とし、DL追尾部2802を無効とする。これにより、非DL追尾部2803は、現フレームに対する追尾処理を実行する。
S2906以降の処理は第9実施形態と同様であるため説明を省略する。
本実施形態では、追尾対象の被写体領域を追尾する追尾部のうち、第1の追尾部と、第1の追尾部よりも精度が高いが演算量が多い第2の追尾部を、ユーザが被写体を見失っているか否かに応じて使い分けるようにした。具体的には、第2の追尾部は、ユーザが被写体を見失っている場合に用い、ユーザが被写体を見失っていない場合には用いないようにした。ユーザが被写体を見失っていない場合には、第1の追尾部で十分精度の良い追尾処理が可能であるため、第2の追尾部を無効にすることで、追尾精度の低下を抑制しつつ、消費電力を抑制することができる。
(その他の実施形態)
上述した実施形態は組み合わせて実施することも可能である。例えば、検出部、対象決定部、追尾部の2つ以上が、同じ機能を実現する演算量と精度の異なる2つの構成要素を有し、それらの有効・無効を実施形態に従って動的に制御することができる。
上述した実施形態は組み合わせて実施することも可能である。例えば、検出部、対象決定部、追尾部の2つ以上が、同じ機能を実現する演算量と精度の異なる2つの構成要素を有し、それらの有効・無効を実施形態に従って動的に制御することができる。
上述の実施形態において、DL追尾と非DL追尾が有効となるフレーム周期を異ならせ、それぞれの周期の最小公倍数をの周期ではDL追尾と非DL追尾とを両方有効としてもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
本願は、2020年6月12日提出の日本国特許出願特願2020-102517および2021年3月1日提出の日本国特許出願特願2021-32036を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
Claims (26)
- 処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、
前記候補領域から、追尾対象とする被写体領域を決定する決定手段と、
前記決定手段が決定した被写体領域について、追尾の難度に関する評価値を算出する算出手段と、
前記処理対象のフレームにおける、前記処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段であって、第1の追尾手段と第2の追尾手段とを有する追尾手段と、
前記評価値に基づいて、前記処理対象のフレームより後のフレームに対する前記第1の追尾手段と前記第2の追尾手段の動作を決定する制御手段と、を有し、
前記第2の追尾手段は、前記第1の追尾手段よりも処理精度が高いが演算負荷が大きく、
前記制御手段は、前記評価値に基づいて、前記第1の追尾手段および前記第2の追尾手段の両方を有効にするか、前記第1の追尾手段および前記第2の追尾手段の少なくとも一方を無効にする、
ことを特徴とする画像処理装置。 - 前記算出手段は、被写体領域の大きさ、被写体領域の位置、被写体の種類、および同じ種類の被写体に関する被写体領域の数の1つ以上に基づいて、前記評価値を算出することを特徴とする請求項1に記載の画像処理装置。
- 前記評価値は、値が大きいほど追尾処理の難度が高いことを示し、
前記制御手段は、前記評価値が第1の閾値以上であれば前記第1の追尾手段を無効に、前記第2の追尾手段を有効にすることを特徴とする請求項1または2に記載の画像処理装置。 - 前記評価値は、値が大きいほど追尾処理の難度が高いことを示し、
前記制御手段は、前記評価値が第2の閾値未満であれば前記第2の追尾手段を無効に、前記第1の追尾手段を有効にすることを特徴とする請求項1から3のいずれか1項に記載の画像処理装置。 - 前記制御手段は、前記第1の追尾手段および前記第2の追尾手段の両方を有効にする場合、前記第1の追尾手段よりも前記第2の追尾手段の動作頻度を低減することを特徴とする請求項1から4のいずれか1項に記載の画像処理装置。
- 前記制御手段は、前記決定手段が決定した被写体領域と、前記追尾手段が位置を推定した被写体領域とが同じ被写体に関する場合には、前記後のフレームに対する前記第1の追尾手段と前記第2の追尾手段の動作を、前記処理対象のフレームに対する前記第1の追尾手段と前記第2の追尾手段の動作から変更しないことを特徴とする請求項1から5のいずれか1項に記載の画像処理装置。
- 前記制御手段は、前記決定手段が決定した被写体領域と、前記追尾手段が位置を推定した被写体領域とが異なる被写体に関する場合に、前記後のフレームに対する前記第1の追尾手段と前記第2の追尾手段の動作を、前記評価値に基づいて決定することを特徴とする請求項1から6のいずれか1項に記載の画像処理装置。
- 前記第2の追尾手段がニューラルネットワークを用いて前記追尾処理を実行することを特徴とする請求項1から7のいずれか1項に記載の画像処理装置。
- 処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、
前記候補領域から、追尾対象とする被写体領域を決定する決定手段と、
前記処理対象のフレームにおける、前記処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段であって、第1の追尾手段と第2の追尾手段とを有する追尾手段と、
前記検出手段により検出した被写体の種類に基づいて、前記処理対象のフレームより後のフレームに対する前記第1の追尾手段と前記第2の追尾手段の動作を決定する制御手段と、を有し、
前記第2の追尾手段は、前記第1の追尾手段よりも処理精度が高いが演算負荷が大きく、
前記制御手段は、前記検出手段により検出した被写体の種類に基づいて、前記第1の追尾手段および前記第2の追尾手段の両方を有効にするか、前記第1の追尾手段および前記第2の追尾手段の少なくとも一方を無効にする、
ことを特徴とする画像処理装置。 - 画像処理装置の制御方法であって、
前記画像処理装置は、処理対象のフレームにおける、前記処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段を有し、
前記追尾手段は、第1の追尾手段と、前記第1の追尾手段よりも処理精度が高いが演算負荷が大きい第2の追尾手段とを有し、
前記制御方法が、
処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出工程と、
前記候補領域から、追尾対象とする被写体領域を決定する決定工程と、
前記決定工程が決定した被写体領域について、追尾の難度に関する評価値を算出する算出工程と、
前記評価値に基づいて、前記処理対象のフレームより後のフレームに対する前記第1の追尾手段および前記第2の追尾手段の動作を制御する制御工程と、を有し、
前記制御工程は、前記評価値に基づいて、前記第1の追尾手段および前記第2の追尾手段の両方を有効にするか、前記第1の追尾手段および前記第2の追尾手段の少なくとも一方を無効にする、
ことを特徴とする画像処理装置の制御方法。 - 画像処理装置の制御方法であって、
前記画像処理装置は、処理対象のフレームにおける、前記処理対象のフレームより前のフレームにおける追尾対象の被写体領域に対応する領域の位置を推定する追尾処理を実行する追尾手段を有し、
前記追尾手段は、第1の追尾手段と、前記第1の追尾手段よりも処理精度が高いが演算負荷が大きい第2の追尾手段とを有し、
前記制御方法が、
処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出工程と、
前記候補領域から、追尾対象とする被写体領域を決定する決定工程と、
前記検出工程にて検出した被写体の種類に基づいて、前記処理対象のフレームより後のフレームに対する前記第1の追尾手段および前記第2の追尾手段の動作を制御する制御工程と、を有し、
前記制御工程は、前記検出工程にて検出した被写体の種類に基づいて、前記第1の追尾手段および前記第2の追尾手段の両方を有効にするか、前記第1の追尾手段および前記第2の追尾手段の少なくとも一方を無効にする、
ことを特徴とする画像処理装置の制御方法。 - 画像処理装置が有するコンピュータを、請求項1から9のいずれか1項に記載の画像処理装置が有する各手段として機能させるためのプログラム。
- 処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、
前記候補領域の検出結果に基づいて、前記候補領域から追尾処理の対象となる領域を決定する決定処理の難度に関する評価値を算出する算出手段と、
第1の決定手段と第2の決定手段とを有し、前記検出手段が検出した前記候補領域に対して前記決定処理を行う対象決定手段と、
前記評価値に基づいて、前記第1の決定手段と前記第2の決定手段の動作を制御する制御手段と、を有し、
前記第2の決定手段は、前記第1の決定手段よりも処理精度が高いが演算負荷が大きく、
前記制御手段は、前記評価値に基づいて、前記第1の決定手段と前記第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、
ことを特徴とする画像処理装置。 - 前記算出手段は、前記候補領域の大きさ、位置、および種類、ならびに同じ種類の被写体に関する候補領域の数の1つ以上に基づいて、前記評価値を算出することを特徴とする請求項13に記載の画像処理装置。
- 前記評価値は、値が大きいほど決定処理の難度が高いことを示し、
前記制御手段は、前記評価値が第1の閾値以上であれば、前記第2の決定手段を有効にすることを特徴とする請求項13または14に記載の画像処理装置。 - 前記評価値は、値が大きいほど決定処理の難度が高いことを示し、
前記制御手段は、前記評価値が第2の閾値未満であれば前記第2の決定手段を無効に、前記第1の決定手段を有効にすることを特徴とする請求項13から15のいずれか1項に記載の画像処理装置。 - 前記評価値は、値が大きいほど決定処理の難度が高いことを示し、
前記制御手段は、前記評価値が第3の閾値未満であれば前記第1の決定手段および前記第2の決定手段の両方を無効にすることを特徴とする請求項13から16のいずれか1項に記載の画像処理装置。 - 処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出手段と、
第1の決定手段と、前記第1の決定手段よりも精度が高いが演算負荷が大きい第2の決定手段とを有し、前記検出手段が検出した前記候補領域から追尾処理の対象となる領域を決定する決定処理を行う対象決定手段と、
前記候補領域の検出結果に基づいて、前記第1の決定手段と前記第2の決定手段の動作を制御する制御手段と、を有し、
前記制御手段は、検出された前記候補領域の種類および数に基づいて、前記第1の決定手段と前記第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、
ことを特徴とする画像処理装置。 - 前記制御手段は、検出された前記候補領域のうち、あらかじめ定められた種類の候補領域の数が第1の閾値未満であれば、前記第2の決定手段を無効に、前記第1の決定手段を有効にすることを特徴とする請求項18に記載の画像処理装置。
- 前記制御手段は、検出された前記候補領域のうち、第1の種類の候補領域の数が第1の閾値以上であり、かつ第2の種類の候補領域の数が第2の閾値以上であれば、前記第2の決定手段を有効にすることを特徴とする請求項18または19に記載の画像処理装置。
- 前記制御手段は、検出された前記候補領域のうち、いずれの種類について、候補領域の数が第3の閾値未満であれば、前記第1の決定手段および前記第2の決定手段の両方を無効にすることを特徴とする請求項18から20のいずれか1項に記載の画像処理装置。
- 前記画像処理装置のユーザの視線を検出する視線検出手段をさらに有し、
前記第1の決定手段は、前記視線検出手段によって検出した視線に基づいて前記決定処理を実行し、
前記制御手段は、前記第2の決定手段が有効なときは、前記第1の決定手段を無効にすることを特徴とする請求項13から21のいずれか1項に記載の画像処理装置。 - 前記第2の決定手段は、学習済みのニューラルネットワークを用いて前記決定処理を実行することを特徴とする請求項13から22のいずれか1項に記載の画像処理装置。
- 画像処理装置の制御方法であって、
検出手段が、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出工程と、
算出手段が、前記候補領域の検出結果に基づいて、前記候補領域から追尾処理の対象となる領域を決定する決定処理の難度に関する評価値を算出する算出工程と、
制御手段が、前記評価値に基づいて、前記画像処理装置が有する、前記決定処理を行う対象決定手段の動作を制御する制御工程と、を有し、
前記対象決定手段は、第1の決定手段と、前記第1の決定手段よりも精度が高いが演算負荷が大きい第2の決定手段とを有し、
前記制御工程では、前記評価値に基づいて、前記第1の決定手段と前記第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、
ことを特徴とする画像処理装置の制御方法。 - 画像処理装置の制御方法であって、
検出手段が、処理対象のフレームから、予め定められた被写体の領域を候補領域として検出する検出工程と、
前記画像処理装置が有する、前記候補領域から追尾処理の対象となる領域を決定する決定処理を行う対象決定手段の動作を、制御手段が、前記候補領域の検出結果に基づいて制御する制御工程と、を有し、
前記対象決定手段は、第1の決定手段と、前記第1の決定手段よりも精度が高いが演算負荷が大きい第2の決定手段とを有し、
前記制御工程では、検出された前記候補領域の種類および数に基づいて、前記第1の決定手段と前記第2の決定手段の両方を有効にするか、一方を無効にするか、両方を無効にする、
ことを特徴とする画像処理装置の制御方法。 - コンピュータを、請求項13から23のいずれか1項に記載の画像処理装置が有する各手段として機能させるためのプログラムを格納したnon-transitoryな機械可読媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202180041816.7A CN115812309A (zh) | 2020-06-12 | 2021-06-04 | 图像处理设备及其控制方法 |
US18/062,064 US20230116274A1 (en) | 2020-06-12 | 2022-12-06 | Image processing apparatus and control method thereof |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020102517 | 2020-06-12 | ||
JP2020-102517 | 2020-06-12 | ||
JP2021032036A JP2021197729A (ja) | 2020-06-12 | 2021-03-01 | 画像処理装置およびその制御方法 |
JP2021-032036 | 2021-03-01 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/062,064 Continuation US20230116274A1 (en) | 2020-06-12 | 2022-12-06 | Image processing apparatus and control method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021251298A1 true WO2021251298A1 (ja) | 2021-12-16 |
Family
ID=78846245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/021400 WO2021251298A1 (ja) | 2020-06-12 | 2021-06-04 | 画像処理装置およびその制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230116274A1 (ja) |
CN (1) | CN115812309A (ja) |
WO (1) | WO2021251298A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009060379A (ja) * | 2007-08-31 | 2009-03-19 | Casio Comput Co Ltd | 撮像装置及びそのプログラム |
CN110852310A (zh) * | 2020-01-14 | 2020-02-28 | 长沙小钴科技有限公司 | 三维人脸识别方法、装置、终端设备及计算机可读介质 |
JP2021072592A (ja) * | 2019-11-01 | 2021-05-06 | 株式会社Jvcケンウッド | 物体検出装置、物体検出方法、及び物体検出プログラム |
-
2021
- 2021-06-04 CN CN202180041816.7A patent/CN115812309A/zh active Pending
- 2021-06-04 WO PCT/JP2021/021400 patent/WO2021251298A1/ja active Application Filing
-
2022
- 2022-12-06 US US18/062,064 patent/US20230116274A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009060379A (ja) * | 2007-08-31 | 2009-03-19 | Casio Comput Co Ltd | 撮像装置及びそのプログラム |
JP2021072592A (ja) * | 2019-11-01 | 2021-05-06 | 株式会社Jvcケンウッド | 物体検出装置、物体検出方法、及び物体検出プログラム |
CN110852310A (zh) * | 2020-01-14 | 2020-02-28 | 长沙小钴科技有限公司 | 三维人脸识别方法、装置、终端设备及计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230116274A1 (en) | 2023-04-13 |
CN115812309A (zh) | 2023-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7973833B2 (en) | System for and method of taking image and computer program | |
US9143671B2 (en) | Photographing apparatus, and method for photographing moving object with the same | |
EP2139226A1 (en) | Image recording apparatus, image recording method, image processing apparatus, image processing method, and program | |
KR101566081B1 (ko) | 화상 처리 장치, 화상 처리 방법 및 기억 매체 | |
JP4780205B2 (ja) | 撮像装置、画角調節方法、及び、プログラム | |
JP4645413B2 (ja) | 撮像装置 | |
JP2010114752A (ja) | 撮像装置及び撮像方法及びプログラム | |
JP4640198B2 (ja) | 電子カメラ、多数ポイント同時合焦枠表示方法、及びプログラム | |
KR20220058593A (ko) | 스마트한 파노라마 이미지를 획득하기 위한 시스템 및 방법 | |
JP7142507B2 (ja) | 画像処理装置および画像処理方法、ならびに撮像装置 | |
JP7383438B2 (ja) | 撮像制御装置、撮像装置、及び撮像制御方法 | |
WO2021251298A1 (ja) | 画像処理装置およびその制御方法 | |
US20130044212A1 (en) | Imaging device and distance information detecting method | |
JP2021197729A (ja) | 画像処理装置およびその制御方法 | |
JPWO2019065820A1 (ja) | 撮影装置とその制御方法および制御プログラム | |
JP2023165555A (ja) | 画像処理装置、撮像装置、制御方法及びプログラム | |
JP7438706B2 (ja) | 撮像制御装置、撮像装置、及び撮像制御方法 | |
JP2013081136A (ja) | 画像処理装置および制御プログラム | |
CN113542586A (zh) | 摄像设备、摄像设备的控制方法和存储介质 | |
JP6157238B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP6071173B2 (ja) | 撮像装置、その制御方法及びプログラム | |
US20220264024A1 (en) | Image pickup apparatus capable of setting focus detection area to area that user wants to set for detectable subject, image processing apparatus, control method for image processing apparatus, control method for image pickup apparatus, and storage medium | |
US11800245B2 (en) | Image pickup apparatus capable of keeping focus on subject even when moving direction of subject changes in time series, control method for image pickup apparatus, and storage medium | |
WO2023106103A1 (ja) | 画像処理装置およびその制御方法 | |
US20230209188A1 (en) | Image processing apparatus, image processing method, and image capture apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21822405 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21822405 Country of ref document: EP Kind code of ref document: A1 |