WO2024111246A1 - 画像処理装置及びその制御方法、撮像装置、プログラム - Google Patents
画像処理装置及びその制御方法、撮像装置、プログラム Download PDFInfo
- Publication number
- WO2024111246A1 WO2024111246A1 PCT/JP2023/035350 JP2023035350W WO2024111246A1 WO 2024111246 A1 WO2024111246 A1 WO 2024111246A1 JP 2023035350 W JP2023035350 W JP 2023035350W WO 2024111246 A1 WO2024111246 A1 WO 2024111246A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- dictionary
- images
- learning
- image
- image processing
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 67
- 238000003384 imaging method Methods 0.000 title claims description 67
- 238000000034 method Methods 0.000 title description 140
- 238000010801 machine learning Methods 0.000 claims abstract description 33
- 239000013598 vector Substances 0.000 claims description 98
- 238000001514 detection method Methods 0.000 claims description 80
- 238000012549 training Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 123
- 210000004027 cell Anatomy 0.000 description 19
- 238000013527 convolutional neural network Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 18
- 210000002569 neuron Anatomy 0.000 description 17
- 230000010354 integration Effects 0.000 description 12
- 230000008878 coupling Effects 0.000 description 11
- 238000010168 coupling process Methods 0.000 description 11
- 238000005859 coupling reaction Methods 0.000 description 11
- 241000894007 species Species 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000036544 posture Effects 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 241000283070 Equus zebra Species 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 241000283086 Equidae Species 0.000 description 3
- 241000283074 Equus asinus Species 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001771 impaired effect Effects 0.000 description 3
- 241001070941 Castanea Species 0.000 description 2
- 235000014036 Castanea Nutrition 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Definitions
- the present invention relates to an image processing device and a control method thereof, an imaging device, and a program.
- ML dictionaries Cameras are sold that are equipped with dictionaries that have been machine-learned by the manufacturer beforehand (hereafter referred to as ML dictionaries). With this type of camera, the ML dictionary can be used to detect various subjects, such as people, dogs, and horses, from captured images. Furthermore, as machine learning technology has become widespread, it has been proposed to equip cameras with multiple ML dictionaries. As an example of a configuration using multiple ML dictionaries, Patent Document 1 discloses switching between multiple ML dictionaries based on the results of detection using an ML dictionary in the past for consecutive images. Patent Document 2 discloses analyzing the detection results for each of multiple ML dictionaries, and changing the analysis time for detection using each ML dictionary depending on the accuracy of each dictionary.
- One aspect of the present invention provides a configuration that can generate information that allows a user to understand the characteristics of a dictionary obtained through machine learning.
- An image processing device includes the following arrangement: An acquisition means for acquiring a dictionary obtained by machine learning and a plurality of learning images used in the machine learning of the dictionary; a selection means for selecting one or more learning images from the plurality of learning images to be used as information representing characteristics of the dictionary; A generating unit generates linking information linking the one or more learning images selected by the selecting unit with the dictionary.
- FIG. 1 is a block diagram of an imaging apparatus according to a first embodiment.
- 11 is a block diagram showing an example of a functional configuration of a dictionary switching unit in the imaging device.
- FIG. 2 is a schematic diagram showing an example of the configuration of a CNN in a subject detection unit according to the first embodiment;
- FIG. 2 is a schematic diagram illustrating an example of a partial configuration of a CNN according to the first embodiment.
- FIG. 2 is a schematic diagram illustrating an example of the configuration of a CNN in a subject classification unit of the first embodiment.
- 5 is a flowchart showing a process of switching an ML dictionary according to the first embodiment.
- 10 is a flowchart showing a linking information generating process according to the first embodiment.
- 5 is a flowchart showing a target image selection process according to the first embodiment.
- 5 is a flowchart showing a target image selection process according to the first embodiment.
- 4 is a schematic diagram showing a display example of a dictionary characteristic expression in the first embodiment.
- FIG. 4 is a schematic diagram showing a display example of a dictionary characteristic expression in the first embodiment.
- FIG. 10 is a flowchart showing a target image selection process according to a second embodiment.
- 13 is a flowchart showing a linking information generating process according to the third embodiment.
- FIG. 13 is a diagram showing an example of a subject classification result according to the third embodiment.
- 13 is a flowchart showing a target image selection process according to a third embodiment.
- FIG. 13 is a schematic diagram showing a display example of a dictionary characteristic expression according to the third embodiment.
- FIG. 13 is a schematic diagram showing a display example of a dictionary characteristic expression according to the third embodiment.
- FIG. 13 is a block diagram showing an example of the configuration of an image processing system according to a fourth embodiment.
- FIG. 13 is a block diagram illustrating a configuration example of a cloud system according to a fourth embodiment.
- 13 is a flowchart showing a process according to a fourth embodiment.
- 13 is a flowchart showing a process according to a fourth embodiment.
- 13 is a flowchart showing a process according to a fourth embodiment.
- 13 is a flowchart showing a process according to a fourth embodiment.
- First Embodiment (Configuration of the imaging device) 1A is a block diagram showing an example of the configuration of an imaging device 100 according to a first embodiment.
- the imaging device 100 captures an image of a subject and records moving and still image data on various media such as a tape, a solid-state memory, an optical disk, and a magnetic disk. Examples of the imaging device 100 include, but are not limited to, a digital still camera and a video camera.
- Each unit in the imaging device 100 is connected via a bus 160.
- Each unit is controlled by a CPU 151 (central processing unit).
- the imaging device 100 incorporates an image processing device that is composed of an image processing unit 152, an image compression/decompression unit 153, a subject detection unit 162, a subject classification unit 163, a dictionary switching unit 164, and the like.
- the lens unit 101 is configured with a fixed first group lens 102, a zoom lens 111, an aperture 103, a fixed third group lens 121, and a focus lens 131.
- the aperture control unit 105 drives the aperture 103 via the aperture motor 104 (AM) in accordance with instructions from the CPU 151 to adjust the aperture diameter of the aperture 103 and adjust the amount of light during shooting.
- the aperture control unit 105 performs exposure control using the brightness value of a specific subject area.
- the zoom control unit 113 changes the focal length by driving the zoom lens 111 via the zoom motor 112 (ZM).
- the focus control unit 133 determines the drive amount for driving the focus motor 132 (FM) based on the amount of deviation in the focus direction of the lens unit 101.
- the focus control unit 133 controls the focus adjustment state by driving the focus lens 131 via the focus motor 132 (FM).
- the focus control unit 133 and the focus motor 132 control the movement of the focus lens 131 to realize, for example, AF control for a specific subject area.
- the focus lens 131 is a lens for adjusting focus, and although it is shown simply as a single lens in FIG. 1A, it is usually made up of multiple lenses.
- the image sensor 141 is a photoelectric conversion element that performs photoelectric conversion to convert the optical image of the subject into an electrical signal.
- the image sensor 141 has m pixels arranged horizontally and n pixels arranged vertically as light receiving elements.
- the image of the subject formed on the image sensor 141 via the lens unit 101 is converted into an electrical signal by the image sensor 141.
- the image formed on the image sensor 141 and photoelectrically converted is arranged as an image signal (image data) by the image signal processing unit 142 and acquired as an image of the imaging surface.
- the image data output from the image signal processing unit 142 is sent to the image control unit 143 and temporarily stored in the RAM 154 (random access memory).
- the image data stored in the RAM 154 is compressed by the image compression/decompression unit 153 and then recorded on the recording medium 157. In parallel with this, the image data stored in the RAM 154 is sent to the image processing unit 152.
- the imaging control unit 143 receives instructions from the CPU 151 regarding the accumulation time of the imaging element 141 and the setting value of the gain when outputting from the imaging element 141 to the imaging signal processing unit 142, and controls the imaging element 141.
- the CPU 151 sets the setting values of the accumulation time and gain based on instructions from the operator inputted from the operation switch 156, or based on the size of the pixel signal of the image data temporarily accumulated in the RAM 154.
- the image processing unit 152 processes the image signal, and performs processes such as reducing and enlarging the image data to an optimal size and calculating the similarity between image data.
- the image data processed to the optimal size is sent to the display 150 as appropriate and displayed to display a preview image or a through image.
- the subject detection results of the subject detection unit 162 can be superimposed on the image displayed on the display 150.
- the subject detection results can be displayed as a rectangle on the display 150.
- the RAM 154 as a ring buffer, it is possible to buffer multiple image data captured within a predetermined period and the detection results of the subject detection unit 162 corresponding to each image data. Similarly, it is possible to buffer the image data used for learning by the subject detection unit 162 and the subject detection results corresponding to the image data.
- the image processing unit 152 performs gamma correction and white balance processing based on the subject area.
- the operation switch 156 is an input interface including a touch panel, buttons, etc. Various operations can be performed by using the operation switch 156 to select various functional icons displayed on the display 150. For example, the user can select an image to be used for machine learning and perform operations required for machine learning (such as specifying a two-dimensional correct answer area corresponding to the image) while looking at the captured image displayed on the display 150. In addition, the user can select an ML dictionary to download and give instructions to download while looking at the GUI of the cloud system acquired via the communication unit 161 and displayed on the display 150.
- the recording medium 157 is a recording medium such as an SD card, and records image data output from the imaging signal processing unit 142, multiple ML dictionaries applicable to the subject detection unit 162 and the subject classification unit 163, etc.
- the ML dictionary applied to the subject detection unit 162 also records the learning images used in each machine learning and the linking information described below.
- the ML dictionary applied to the subject classification unit 163 also records icon images corresponding to each classification and each class of the subject classification results.
- the communication unit 161 connects to a cloud system or the like via Ethernet or wirelessly, and communicates information related to the ML dictionaries, such as the ML dictionaries and learning images.
- the subject detection unit 162 applies an ML dictionary selected from multiple ML dictionaries recorded on the recording medium 157, and uses the image signal to determine the area in which a subject, such as a horse, exists.
- the subject detection process in the subject detection unit 162 is realized by feature extraction processing using DNN (Deep Neural Networks). The configuration of the subject detection unit 162 will be described in detail later.
- the subject classification unit 163 applies the ML dictionary recorded on the recording medium 157 and uses the image signal to classify which of the predetermined classes the subject belongs to.
- the classification process in the subject classification unit 163 is realized by feature extraction processing using DNN (Deep Neural Networks).
- DNN Deep Neural Networks
- the subject classification unit 163 is capable of various multi-class classifications such as classification of subject species, classification of posture, classification of the presence or absence of accessories, and classification of fur color. The configuration of the subject classification unit 163 will be described in detail later.
- the dictionary switching unit 164 switches the ML dictionary used by the subject detection unit 162 to an ML dictionary selected from multiple ML dictionaries in response to a specific user operation on the operation switch 156.
- FIG. 1B is a block diagram showing an example of the functional configuration of the dictionary switching unit 164.
- the switching control unit 201 accepts user operations from the operation switch 156 to control each functional unit of the dictionary switching unit 164, and also controls display on the display 150 during dictionary switching operations.
- the characteristic acquisition unit 202 provides the characteristic representation of the ML dictionary to the switching control unit 201 based on the linking information recorded in the recording medium 157.
- the linking information generation unit 203 selects a learning image to be used for the characteristic representation from multiple learning images used in the machine learning of the ML dictionary, generates linking information linking the ML dictionary and the selected learning image, and records it in the recording medium 157. Details of the dictionary switching unit 164 will be described later.
- battery 159 is managed by power management unit 158 and provides a stable power supply to the entire imaging device 100.
- Flash memory 155 records control programs necessary for the operation of imaging device 100 and parameters used for the operation of each unit.
- the control programs and parameters stored in flash memory 155 are loaded into part of RAM 154.
- CPU 151 controls the operation of imaging device 100 in accordance with the control programs and parameters loaded into RAM 154.
- the subject detection unit 162 is configured with a CNN (Convolutional Neural Networks), but is not limited thereto, and any DNN using machine learning technology is an embodiment of the present disclosure.
- the basic configuration of a CNN will be described with reference to Figs. 2 and 3.
- Fig. 2 shows the basic configuration of a CNN that detects a subject from input two-dimensional image data. In Fig. 2, the left end is the input, and processing proceeds to the right.
- a CNN is configured hierarchically, with two layers called a feature detection layer (S layer) and a feature integration layer (C layer) as one set.
- S layer feature detection layer
- C layer feature integration layer
- the next feature is first detected in the S layer based on the features detected in the previous layer.
- the features detected in the S layer are then integrated in the C layer and sent to the next layer as the detection result for that layer.
- the S layer is made up of feature detection cell planes, and different features are detected for each feature detection cell plane.
- the C layer is made up of feature integration cell planes, and pools the detection results from the previous feature detection cell planes. In the following, unless there is a particular need to distinguish between them, the feature detection cell planes and feature integration cell planes are collectively referred to as feature planes.
- the output layer which is the final layer, does not use the C layer and is made up of only the S layer.
- the details of the feature detection process on the feature detection cell plane and the feature integration process on the feature integration cell plane will be described with reference to Fig. 3.
- the feature detection cell plane is composed of multiple feature detection neurons, which are connected to the C layer of the previous layer in a predetermined structure.
- the feature integration cell plane is composed of multiple feature integration neurons, which are connected to the S layer of the same layer in a predetermined structure. In the Mth cell plane of the S layer of the Lth layer shown in Fig.
- the output value of the feature detection neuron at position ( ⁇ , ⁇ ) is denoted as yLSM ( ⁇ , ⁇ )
- the output value of the feature integration neuron at position ( ⁇ , ⁇ ) is denoted as yLCM ( ⁇ , ⁇ ).
- the connection coefficients of each neuron are wLSM ( n ,u,v) and wLCM ( u,v)
- the output values can be expressed as the following [Equation 1] and [Equation 2].
- Equation 1 f is an activation function, and any sigmoid function such as a logistic function or a hyperbolic tangent function can be used, for example, a tanh function.
- u LS M ( ⁇ , ⁇ ) is the internal state of the feature detection neuron at position ( ⁇ , ⁇ ) on the Mth cell surface of the S layer of the Lth hierarchy. Equation 2 does not use an activation function, but takes a simple linear sum. When no activation function is used as in [Equation 2], the internal state of the neuron u LC M ( ⁇ , ⁇ ) is equal to the output value y LC M ( ⁇ , ⁇ ).
- y L-1C n ( ⁇ +u, ⁇ +v) in [Equation 1] and y LS M ( ⁇ +u, ⁇ +v) in [Equation 2] are called the connection destination output value of the feature detection neuron and the feature integration neuron, respectively.
- the position ( ⁇ , ⁇ ) corresponds to the position coordinate in the input image.
- y LS M ( ⁇ , ⁇ ) is a high output value, it means that there is a high possibility that the feature to be detected in the Mth cell surface of the S layer of the Lth hierarchy exists at the pixel position ( ⁇ , ⁇ ) of the input image.
- n in [Equation 2] means the nth cell surface of the C layer of the L-1th hierarchy, and is called the integration target feature number. Basically, a product-sum operation is performed for all cell surfaces that exist in the C layer of the L-1th hierarchy.
- (u, v) is the relative position coordinate of the coupling coefficient, and a product-sum operation is performed in a finite range (u, v) according to the size of the feature to be detected.
- a finite range of (u, v) is called a receptive field.
- the size of the receptive field is called the receptive field size below and is expressed as the number of horizontal pixels x the number of vertical pixels in the combined range.
- w LS M (n, u, v) is the coupling coefficient distribution for detecting a specific feature, and by adjusting this to an appropriate value, it becomes possible to detect the specific feature.
- This adjustment of the coupling coefficient distribution is learning, and in constructing a CNN, various test patterns are presented and the coupling coefficients are repeatedly and gradually corrected to adjust the coupling coefficients so that y LS M ( ⁇ , ⁇ ) becomes an appropriate output value.
- Equation 2 uses a two-dimensional Gaussian function and can be expressed as the following [Equation 3].
- (u,v) is a finite range, so just as in the explanation of feature detection neurons, this finite range is called the receptive field, and the size of the range is called the receptive field size.
- this receptive field size can be set to an appropriate value depending on the size of the Mth feature in the Sth layer of the Lth hierarchy.
- ⁇ is the feature size factor, which can be set to an appropriate constant depending on the receptive field size. Specifically, it is best to set it so that the outermost value of the receptive field can be considered to be almost 0.
- the subject detection unit 162 in this embodiment is configured to perform the above-mentioned calculations at each layer, thereby performing subject detection at the S layer, which is the final layer of the subject detection unit 162.
- the coupling coefficient is adjusted by supervised learning.
- supervised learning a test pattern is provided to actually obtain the output value of a neuron, and the coupling coefficient wLSM (n,u,v) is corrected based on the relationship between the output value and a teacher signal (the desired output value that the neuron should output).
- the final feature detection layer uses the least squares method
- the intermediate feature detection layer uses the backpropagation method to correct the coupling coefficient.
- the coupling coefficient correction method such as the least squares method and the backpropagation method, please refer to Non-Patent Document 1.
- each test pattern is a set of an image and a teacher signal.
- a teacher signal is given to the neurons in the area of the feature detection cell surface of the final layer where the specific pattern exists so that the output becomes 1.
- a teacher signal is given to the neurons in the area of that pattern so that the output becomes -1.
- the object detection unit 162 is constructed so that it can detect an object from a two-dimensional image.
- the object classification unit 163 is configured as a CNN, but is not limited thereto, and any DNN using machine learning technology is an embodiment of the present disclosure.
- the basic configuration of a CNN will be described with reference to FIG. 4.
- the CNN of the object classification unit 163 is configured so that the number of outputs k of the nth layer is the number of classes to be classified.
- a softmax function is used as the activation function.
- the other parts are omitted because they are similar to the configuration of the object detection unit 162.
- the CNN configuration of the object classification unit 163 in this embodiment performs object classification in the S layer, the final layer of the object classification unit 163, by performing the above-mentioned calculations at each layer.
- a specific learning method of the object classification unit 163 will be described.
- the object classification unit 163 a large number of specific patterns to be classified into each of multiple classes are prepared.
- Each test pattern is a set of an image and a teacher signal.
- a softmax function is used as the activation function, a teacher signal is provided so that the output of the correct class is 1 and the output of classes other than the correct class is 0.
- calculations are performed using the coupling coefficients wLSM (n,u,v) constructed by learning, and it is determined that the object belongs to a class in which the neuron output on the feature detection cell surface of the final layer is equal to or greater than a predetermined value.
- the subject classification unit 163 is constructed so that it can perform multi-class classification of subjects from two-dimensional images.
- FIG. 5 is a flowchart showing the overall process of the dictionary switching unit 164 in this embodiment.
- Each functional unit of the dictionary switching unit 164 shown in Fig. 1B may be realized by the CPU 151 executing a predetermined software, may be realized by dedicated hardware, or may be realized by a combination of software and hardware.
- the switching control unit 201 displays an ML dictionary switching screen on the display 150 in response to a predetermined user operation (ML dictionary switching operation) using the operation switch 156.
- ML dictionary switching operation a predetermined user operation
- the switching control unit 201 determines whether the user has operated the operation switch 156 to switch the ML dictionary displayed on the switching screen. If the switching control unit 201 determines that an operation to switch the ML dictionary has been performed (YES in S501), the process proceeds to S502, and if the switching control unit 201 determines that an operation to switch the ML dictionary has not been performed (NO in S501), the process proceeds to S505.
- the characteristic acquisition unit 202 determines whether linking information for the new ML dictionary to be displayed that was switched in S501 is recorded on the recording medium 157. If the characteristic acquisition unit 202 determines that linking information for the ML dictionary to be displayed is not recorded on the recording medium 157 (NO in S502), the process proceeds to S503. On the other hand, if the characteristic acquisition unit 202 determines that linking information for the ML dictionary to be displayed is recorded on the recording medium 157 (YES in S502), the process proceeds to S504.
- the linking information generating unit (hereinafter, the generating unit) 203 reads the ML dictionary to be displayed after the display switching operation in S501 and the multiple learning images used to learn the ML dictionary to be displayed from the recording medium 157, and generates linking information for the ML dictionary.
- the generating unit 203 records the obtained linking information on the recording medium 157.
- the linking information is information representing a pair of an ML dictionary and a target image selected to represent the characteristics of the ML dictionary, and includes the target image itself. Details of the linking information generation process in S503 will be described later with reference to Figures 6, 7A, and 7B.
- the characteristic acquisition unit 202 reads out from the recording medium 157 linking information related to the ML dictionary to be displayed after the switching operation in S501, and acquires the learning image linked by the read linking information.
- the switching control unit 201 expresses the characteristics of the ML dictionary to be displayed after switching by displaying on the display 150 the ML dictionary to be displayed and the multiple learning images acquired by the characteristic acquisition unit 202. Details of the display on the display 150 and the method of expressing the characteristics of the ML dictionary will be described later with reference to Figures 8A and 8B.
- the switching control unit 201 determines whether the user has performed an operation to switch the ML dictionary to be applied to the subject detection unit 162 via the operation switch 156 for the ML dictionary displayed on the switching screen. If the switching control unit 201 determines that an operation to switch the ML dictionary has been performed (YES in S505), the process proceeds to S506. On the other hand, if the switching control unit 201 determines that an operation to switch the ML dictionary has not been performed (NO in S505), the process proceeds to S507. In S506, the switching control unit 201 switches the ML dictionary to be applied to the subject detection unit 162 to the ML dictionary currently being displayed on the switching screen in accordance with the switching operation from the user.
- the switching control unit 201 determines whether the user has performed an end operation via the operation switch 156. If the switching control unit 201 determines that the end operation has been performed (YES in S507), this process ends. If the switching control unit 201 determines that the end operation has not been performed (NO in S507), the process returns to S501, and the above-mentioned process is repeated.
- FIG. 6 is a flowchart of the process of generating linking information, which is executed in S503 in the first embodiment.
- the generation unit 203 calculates a feature vector for each of the multiple training images (hereinafter, the relevant image group) used in the machine learning of the ML dictionary to be displayed after switching in S500.
- These relevant image groups are recorded in the recording medium 157 in correspondence with the ML dictionary.
- the relevant image group may be composed of training images randomly extracted from all the training images used in the machine learning, as long as the effect of the present disclosure is not impaired.
- a known method for calculating a feature vector from an image can be used to calculate the feature vector in S600.
- each training image may be input to the subject detection unit 162, and the output of the feature integration layer n-1, which is intermediate data obtained by the subject detection unit 162, may be used as the feature vector.
- each training image may be input to the subject classification unit 163 to which one of the ML dictionaries recorded in the recording medium 157 is applied, and the output of the feature integration layer n-1, which is intermediate data obtained by the subject classification unit 163, may be used as the feature vector.
- the generation unit 203 calculates an average vector using the feature vector calculated in S600. In S602, the generation unit 203 determines whether the first target image has been selected. If the generation unit 203 determines that the first target image has not been selected (NO in S602), the process proceeds to S603, and if the generation unit 203 determines that the first target image has been selected (YES in S602), the process proceeds to S604.
- the generation unit 203 selects the first target image from the group of images. Details of the selection process of the first target image will be described later with reference to the flowchart in FIG. 7A.
- the generation unit 203 selects the second and subsequent target images from the group of images. Details of the selection process of the second target image will be described later with reference to the flowchart in FIG. 7B.
- the generation unit 203 determines whether the end condition is satisfied. If the generation unit 203 determines that the end condition is satisfied (YES in S605), the process proceeds to S606.
- the generation unit 203 determines that the end condition is not satisfied (NO in S605), the process returns to S602, and the above-mentioned process is repeated.
- the number of selected target images is used as the end condition used in S605.
- the number of selected target images is set in consideration of the size that can be viewed by the user when the learning image is displayed on the display 150 in the display (S504) that represents the characteristics of the ML dictionary. In this embodiment, for example, there are four images (one for the first target image and three for the second and subsequent target images).
- the generation unit 203 records information identifying the learning images selected in S603 and S604 in the recording medium 157 as linking information related to the ML dictionary to be displayed.
- (Target image selection process) 7A is a flowchart showing the process of selecting the first target image (S603).
- the generation unit 203 selects, as the first target image, a learning image having a feature vector that is the smallest distance from the average vector of a plurality of feature vectors obtained from the corresponding image group (a plurality of learning images).
- the generation unit 203 selects a learning image of interest from the group of images.
- the generation unit 203 determines whether the learning image of interest selected in S700 has already been selected as a target image. If the generation unit 203 determines that the learning image of interest has already been selected as a target image (YES in S701), the process returns to S700, and the next learning image of interest is selected. On the other hand, if the generation unit 203 determines that the learning image of interest has not already been selected as a target image (NO in S701), the process proceeds to S701. The selection of the target image is repeatedly performed in the flowchart shown in FIG. 6, so the determination in this step is intended to prevent the selection of duplicated target images. Note that, as shown in FIG.
- S701 can be omitted. However, if the process selects multiple target images in order of the distance from the average vector (for example, if multiple target images are selected using the process of S603), S701 is required.
- the generation unit 203 determines whether the target learning image selected in S700 satisfies the conditions for being a target of the linking process. If the generation unit 203 determines that the target learning image satisfies the conditions for being a target of the linking process (YES in S702), the process proceeds to S703. On the other hand, if the generation unit 203 determines that the target learning image does not satisfy the conditions for being a target of the linking process (NO in S702), the process returns to S700. In machine learning, even if a learning image is included in the learning image, it may not have a sufficient effect on the performance of the ML dictionary.
- a condition is set to prevent a learning image that has a small effect on the characteristics of the ML dictionary from being selected as a target image. More specifically, as a condition for being a target of the linking process, when the target learning image is input to the subject detection unit 162, it is possible to detect a subject. At this time, the ML dictionary to be displayed is temporarily set in the subject detection unit 162.
- the ratio of feature vectors whose distance from the feature vector calculated from the target learning image is sufficiently small (feature vectors whose distance is equal to or smaller than a predetermined threshold) among the feature vectors calculated in S600 may be equal to or greater than a predetermined ratio.
- the distance here may be any numerical value that expresses the similarity of the feature vectors, and may be, for example, the Euclidean distance or cosine similarity between the vectors.
- the generation unit 203 calculates the distance between the feature vector calculated from the target learning image, among the feature vectors calculated in S600, and the average vector calculated in S601. Note that the distance between the vectors is the same as the distance described in S702.
- the generation unit 203 determines whether the candidate image has been selected in S705, which will be described later. If the generation unit 203 determines that the candidate image has not been selected (NO in S704), the process proceeds to S705, and if the generation unit 203 determines that the candidate image has been selected (YES in S704), the process proceeds to S706.
- the generation unit 203 selects the target learning image as a candidate image. Meanwhile, in S706, the generation unit 203 determines whether the distance between the feature vector of the target learning image and the average vector is smaller than the distance between the feature vector of the candidate image selected in S705 or S707 and the average vector. If the generation unit 203 determines that the distance between the feature vector of the target learning image and the average vector is smaller than the distance between the feature vector of the candidate image and the average vector (YES in S706), the process proceeds to S707.
- the process proceeds to S708.
- the determination in S706 is intended to select a learning image that has a feature vector with a smaller distance from the average vector as the candidate image.
- the generation unit 203 changes the candidate image to the current target learning image.
- the generation unit 203 determines whether or not there is a learning image in the image group that has not been selected as the focused learning image. If the generation unit 203 determines that there is a learning image that has not been selected as the focused learning image (YES in S708), the process returns to S700, and the above-mentioned process is repeated. On the other hand, if the generation unit 203 determines that there is no learning image that has not been selected as the focused learning image (NO in S708), the process proceeds to S709. In S709, the generation unit 203 selects the focused learning image that is a candidate image as the target image.
- the learning image that has the feature vector with the smallest distance from the average vector is selected as the target image from among the group of applicable images.
- a representative learning image that represents the performance of the target ML dictionary for which a switching instruction was given in S501 is selected.
- FIG. 7B is a flowchart showing the process of selecting the second and subsequent target images executed in S604 of the first embodiment.
- the generation unit 203 selects a predetermined number of feature vectors from a plurality of feature vectors obtained from the corresponding image group in descending order of distance from the average vector of the plurality of feature vectors.
- a predetermined number of learning images are selected in descending order of distance between the feature vector and the average vector.
- the processes from S710 to S719, excluding S716, are the same as the processes from S700 to S709, excluding S706, in FIG. 7A.
- the generation unit 203 determines whether the distance between the feature vector and the average vector of the target learning image is greater than the distance between the feature vector and the average vector of the candidate image that has been selected in S715 or S717. If the generation unit 203 determines that the distance between the feature vector and the average vector of the target learning image is greater than the distance between the feature vector and the average vector of the candidate image (YES in S716), the process proceeds to S717. On the other hand, if the generation unit 203 determines that the distance between the feature vector of the target learning image and the average vector is not greater than the distance between the feature vector of the candidate image and the average vector (NO in S716), the process proceeds to S718.
- the determination in S716 is intended to select, as the candidate image, a learning image for which a feature vector is calculated that is greater in distance from the average vector.
- the learning image that has the feature vector with the largest distance from the average vector is selected as the target image from among the group of applicable images.
- a special learning image that represents the performance of the ML dictionary for which switching was instructed in S501 is selected.
- FIGS 8A and 8B are diagrams showing examples of switching screens that the switching control unit 201 displays on the display 150 by the processing of S500 and S504.
- the switching control unit 201 displays, for example, switching screen 8a shown in Figure 8A.
- Items 800 and 801 are GUIs for switching the ML dictionary to be displayed by operating the operation switch 156.
- the switching control unit 201 determines in S501 that an operation has been performed to switch the ML dictionary to be displayed.
- Item 802a is the ML dictionary to be displayed, and is written together with "001", which is the file name of the ML dictionary recorded on the recording medium 157.
- Area 803a is an area for expressing the characteristics of the ML dictionary, and is displayed by the processing of S504.
- learning images 804a to 807a are displayed, which are target images selected to express the characteristics of the ML dictionary "001".
- Learning image 804a is the learning image selected as the first target image in S603.
- a representative learning image is likely to be selected, and in the example of learning image 804a, a learning image of a horse standing on all fours.
- Learning images 805a, 806a, and 807a are learning images selected as the second and subsequent target images in S604.
- Switch button 808 is a GUI that accepts a user operation for switching the ML dictionary to be applied to subject detection unit 162. When the switch button 808 is operated, it is determined that an instruction to switch the ML dictionary to be applied has been issued in S505.
- the switching control unit 201 functions as a display information generating unit that generates display information for displaying a dictionary in association with one or more learning images based on the linking information, and displays this on the display 150.
- display information allows the dictionary characteristics of each dictionary to be presented to the user. For example, the user can know in advance from the display in FIG. 8A that the ML dictionary "001" is an ML dictionary suitable for shooting at, for example, a horse racing track.
- Item 802b indicates the ML dictionary that is the display target by operating item 800 or 801, and is written together with "002", which is the file name of the ML dictionary recorded in recording medium 157.
- Area 803b displays learning images 804b to 807b, which are target images selected to express the characteristics of ML dictionary "002".
- Learning image 804a is an example of a learning image selected as the first target image in S603.
- Learning images 805b, 806b, and 807b are examples of learning images selected as the second and subsequent target images in S604.
- special learning images are likely to be selected, and examples of learning images 805b to 807b are characteristic learning images such as postures such as lowering the head or lying down, or similar species such as a zebra.
- the user can understand in advance that the ML dictionary is suitable for taking pictures at a zoo, for example.
- the present disclosure is not limited to this, and the total number of target images, the number of representative learning images, and the number of special learning images can be set arbitrarily.
- the use of special learning images can express the characteristics of the ML dictionary in a wider range, it is desirable from the viewpoint of grasping the overall characteristics that the number of special learning images is greater than the number of representative learning images.
- the distance between the feature vector of the target learning image and the average vector is used to determine whether or not to select the target learning image as the second or subsequent target image.
- the distance between the feature vector of the first target image (representative learning image) is used to determine whether or not to select the target learning image as the second or subsequent target image.
- the configuration, function, and process of the imaging device 100 of the second embodiment are the same as those of the first embodiment, except for the process of selecting the second or subsequent target images.
- the process of selecting the second or subsequent target images according to the second embodiment (the process of S604 in FIG. 6) will be described with reference to FIG. 9.
- (Selection process of images to be linked) 9 is a flowchart showing the process of selecting the second and subsequent target images, which is executed in S604 in the second embodiment.
- the processes from S900 to S909, excluding S903 and S906, are the same as the processes from S710 to S719, excluding S713 and S716, in the first embodiment (FIG. 7B).
- the generation unit 203 calculates the distance between the feature vector calculated from the target learning image and the feature vector calculated from the first target image selected in S603. These feature vectors are calculated in S600.
- the generation unit 203 determines whether the distance between the feature vector of the target learning image and the feature vector of the first target image is greater than the distance between the feature vector of the candidate image selected in S905 or S907 and the feature vector of the first target image. If the generation unit 203 determines that the distance between the feature vector of the target learning image and the feature vector of the first target image is greater than the distance between the feature vector of the selected candidate image and the feature vector of the first target image (YES in S906), the process proceeds to S907.
- the process proceeds to S908.
- the judgment in S906 is intended to select as a candidate image a learning image whose calculated feature vector has a large distance from the feature vector of the first selected image.
- the second embodiment displays learning images with typical or special features, and by checking them, the user can select the ML dictionary to be applied after understanding the general dictionary characteristics in advance.
- a learning image used to express the characteristics of an ML dictionary applied to the subject detection unit 162 is selected based on the feature vector of the learning image.
- a learning image used to express the characteristics of an ML dictionary applied to the subject detection unit 162 is selected based on the result of classification of a plurality of learning images used in machine learning of the ML dictionary into a plurality of classes by the subject classification unit 163.
- the overall processing of the dictionary switching unit 164 in the third embodiment is similar to that of the first and second embodiments ( FIG. 5 ), except for the linking information generation processing in S503 and the dictionary characteristic display method in S504.
- FIG. 10 is a flowchart showing the process of generating the linking information according to the third embodiment.
- the generating unit 203 selects a target ML dictionary from among a plurality of ML dictionaries (hereinafter, a group of corresponding ML dictionaries) applied to the object classification unit 163 recorded in the recording medium 157, and applies the selected ML dictionary to the object classification unit 163.
- the group of corresponding ML dictionaries may be selected according to the object corresponding to the ML dictionary (the ML dictionary for which a switching instruction was given in S501) applied to the object detection unit 162.
- the group of corresponding ML dictionaries may be configured by the ML dictionary related to the classification of "horse”.
- the generating unit 203 selects a target learning image from among a plurality of learning images (hereinafter, a group of corresponding images) recorded in the recording medium 157 in correspondence with the ML dictionary (the ML dictionary for which a switching instruction was given in S501) applied to the object detection unit 162.
- the relevant image group here preferably includes all learning images used in the machine learning of the ML dictionary, but randomly extracted learning images may be used as long as the effect of the present disclosure is not impaired.
- the generation unit 203 causes the object classification unit 163 to process the learning image of interest and perform object classification using the ML dictionary of interest.
- the generation unit 203 determines whether there is a learning image in the relevant image group that has not been selected as the learning image of interest in S1001. If the generation unit 203 determines that there is a learning image in the relevant image group that has not been selected as the learning image of interest in S1003 (YES in S1003), the process returns to S1001, and the above-mentioned process is repeated. On the other hand, if the generation unit 203 determines that there is no learning image in the relevant image group that has not been selected as the learning image of interest in S1003 (NO in S1003), the process proceeds to S1004.
- the generation unit 203 determines whether there is an ML dictionary in the corresponding ML dictionary group that has not been selected as the ML dictionary of interest in S1000. If the generation unit 203 determines that there is an ML dictionary in the corresponding ML dictionary group that has not been selected as the ML dictionary of interest in S1000 (YES in S1004), the process returns to S1000 and the above-mentioned process is repeated. On the other hand, if the generation unit 203 determines that there is no ML dictionary in the corresponding ML dictionary group that has not been selected as the ML dictionary of interest in S1004 (NO in S1004), the process proceeds to S1005.
- the generation unit 203 selects a target image for expressing the characteristics of the ML dictionary from the learning images and icon images recorded on the recording medium 157 based on the subject classification results obtained in S1000 to S1004. The selection of the target image will be described later with reference to the flowchart in FIG. 12.
- the generation unit 203 records information that identifies the target image selected in S1005 as linking information for the ML dictionary to be displayed in the recording medium 157.
- the linking information is information on the combination of the target image selected in S1005 corresponding to the ML dictionary to be displayed for which the switching operation was performed in S501, and the target image itself.
- Fig. 11 is an example of a subject classification result obtained by the processing from S1000 to S1004 of this embodiment.
- five subject classifications related to "species”, “coat color”, “posture”, “mask”, and “saddle” are performed, and the meaning of each class into which the training image group is classified and the number of training images are described.
- the "species” classes are “horse”, “zebra”, “donkey”, and “other”.
- the "coat color” classes are "bay”, “blue”, "chestnut”, and “other”.
- the "posture” classes are “standing on four legs", “standing on two legs”, “lying down", and “lying down”.
- the "mask” and “saddle” classes are "present” and "absent”.
- FIG. 12 is a flowchart showing a process for selecting a target image in the third embodiment.
- the generation unit 203 selects a focus classification from the subject classification results obtained in S1000 to S1004.
- the classification here is the classification obtained from the focus ML dictionary selected in S1000, and in the example of FIG. 11, is one of "species,” “coat color,” “posture,” “mask,” and “saddle.”
- the generation unit 203 selects a focus class from the classes included in the focus classification. For example, in the example of FIG. 11, if the focus classification is "species,” the focus class is determined from "horse,” “zebra,” “donkey,” and “other.”
- the generation unit 203 determines whether the class of interest satisfies the conditions for the linking process.
- the condition here is that the ratio of learning images belonging to the class of interest to all learning images is equal to or greater than a predetermined value. For example, if the predetermined value is 5%, in the example of FIG. 11, the classes "zebra", “donkey”, and “other” in the classification of "species” are determined not to satisfy the conditions.
- the determination in S1202 is intended to prevent a learning image related to a class with a small effect from being selected as the target image.
- the process proceeds to S1203. On the other hand, if the generation unit 203 determines that the class of interest does not satisfy the conditions for the linking process (NO in S1202), the process proceeds to S1205.
- the generation unit 203 determines a learning image classified into the attention class from among the corresponding image group as a target image.
- the target image may be any learning image classified into the attention class.
- the generation unit 203 additionally selects an icon image corresponding to the attention class selected in S1201 from the icon images recorded in the recording medium 157 as a further target image.
- an icon image that includes these multiple classes may be selected. For example, in the example of FIG.
- the generation unit 203 determines whether or not there is a class that has not been selected as the focused class for the classification determined as the focused classification in S1200. If the generation unit 203 determines that there is a class that has not been selected as the focused class (YES in S1205), the process returns to S1201, and the above-mentioned process is repeated. On the other hand, if the generation unit 203 determines that there is no class that has not been selected as the focused class (NO in S1205), the process proceeds to S1206. In S1206, the generation unit 203 determines whether or not there is a classification that has not been selected as the focused classification from the subject classification results obtained in S1000 to S1004.
- the process returns to S1200, and the above-mentioned process is repeated. On the other hand, if the generation unit 203 determines that there is no classification that has not been selected as the focused classification (NO in S1206), the process ends.
- learning images and icon images corresponding to all classifications and all classes that satisfy the conditions for the linking process are selected as target images. Since icon images can express many dictionary characteristics in a narrow display range of the display 150, it is desirable that all icon images that satisfy the conditions for the linking process are selected as target images. However, when the display range is limited, the judgment in S1206 may be changed to a method of judging whether or not the termination condition is satisfied, as in the judgment in S605 of the first and second embodiments. In this case, it is desirable to select the target image by giving priority to the classification and class that satisfy a predetermined criterion.
- the process of selecting the first target image it is desirable to give priority to a classification that has many classes that satisfy the conditions in S1202, and further give priority to a class that has many classified learning images among the classes that belong to that classification.
- the process of selecting the second and subsequent target images it is desirable to give priority to a classification that has few classes that satisfy the conditions for the processing target in S1202, and further give priority to a class that has few classified learning images among the classes that belong to that classification.
- representative images learning images and icon images
- specialized images learning images and icon images
- the dictionary characteristics can be displayed using the learning image determined as the target image in S1203 described above.
- the display example in this case is the same as that in the first embodiment (FIGS. 8A and 8B).
- the dictionary characteristics can also be displayed using the icon image determined as the target image in S1204.
- FIGS. 13A and 13B are diagrams showing a display example of a switching screen displayed on the display 150 by the switching control unit 201 in S504 in the third embodiment.
- FIGS. 13A and 13B show a display example in which the dictionary characteristics are expressed using an icon image according to the third embodiment. Note that the user may arbitrarily switch between the display in which the dictionary characteristics are expressed using the learning image as in FIGS. 8A and 8B and the display in which the dictionary characteristics are expressed using an icon image as in FIGS. 13A and 13B.
- FIG. 13A will be described.
- the items 800, 801, and the switching button 808 are the same as those in the first embodiment (FIGS. 8A and 8B).
- the item 1002a is the ML dictionary to be displayed, and is written together with the file name "001" of the ML dictionary recorded in the recording medium 157.
- the area 1003a is an area that represents the dictionary characteristics, and a plurality of icon images representing the dictionary characteristics, represented by the icon image 1004a, are displayed.
- the icon image 1004a is an example of an icon image selected as the target image in S1204.
- FIG. 13B is an example of a switching screen 13b in which the dictionary characteristics according to the third embodiment are displayed for an ML dictionary other than the switching screen 13a.
- the "all postures" icon image 1004b in area 1003a is an icon image that collectively represents all of the classes of "standing on four legs,” “standing on two legs,” “lying down,” and “lying down” in Fig. 11.
- the icon image may be any image that allows the user to understand the class, such as a character string representing the class as shown in Figs. 13A and 13B, or a figure or photo representing the class.
- multiple icon images are displayed, and the user can check them to determine the overall dictionary characteristics before selecting the ML dictionary to be applied.
- FIG. 14 is a diagram showing an example of the overall configuration of an image processing system 1400 according to the fourth embodiment.
- the image processing system 1400 includes an imaging device 1401, an imaging device 1402, a cloud system 1403, and a network 1404.
- the imaging devices 1401, 1402, and the cloud system 1403 are connected to each other via the network 1404 so as to be able to communicate with each other.
- the detailed configurations of the imaging devices 1401 and 1402 are the same as those of the imaging device 100 in the first embodiment.
- the dictionary switching unit 164 does not need to have a function of acquiring a target image for expressing the characteristic of the ML dictionary.
- the cloud system 1403 is an example of an image processing device capable of communicating with the imaging devices 1401 and 1402.
- the image processing device as an external device of the imaging device is not limited to the cloud system 1403, and may be realized by, for example, a server device on a LAN.
- the imaging device 1401 is configured in the same manner as the imaging device 100, and the user takes a learning image and performs machine learning of an ML dictionary applicable to the subject detection unit 162.
- the ML dictionary obtained by machine learning and multiple learning images used in the machine learning (hereinafter, the relevant image group) are uploaded to the cloud system 1403 via the network 1404. It is desirable that the relevant image group here includes all learning images used in the machine learning, but randomly selected learning images may be used as long as the effect obtained by the embodiment of the present disclosure is not impaired.
- the imaging device 1402 has a configuration similar to the imaging device 100 and can use the environment provided by the cloud system 1403.
- the imaging device 1402 downloads an ML dictionary from the cloud system 1403 and applies it to the subject detection unit 162 to use the subject detection function for the captured image.
- the cloud system 1403 records multiple ML dictionaries uploaded by the user and multiple learning images for each ML dictionary. It also provides an environment that expresses the performance of the ML dictionary and allows the user to download multiple ML dictionaries.
- FIG. 14 shows an imaging device 1401 that performs uploading one by one and an imaging device 1402 that performs downloading one by one, but this is not limited to this.
- multiple ML dictionaries may be uploaded to the client system 1403 from multiple imaging devices.
- FIG. 15 is a block diagram showing an example of the configuration of a cloud system 1403 according to the fourth embodiment.
- Each functional unit of the cloud system 1403 is connected via a bus 1500.
- a control unit 1501 controls each functional unit.
- a recording unit 1502 is a large-capacity recording medium such as an HDD, and records a plurality of ML dictionaries uploaded from the imaging device 1401 and a plurality of ML dictionaries applicable to the object classification unit 1506.
- the plurality of ML dictionaries uploaded from the imaging device 1401 also record learning images used in each machine learning and linking information.
- the ML dictionary applied to the object classification unit 1506 also records icon images corresponding to each classification and each class of the object classification result.
- the communication unit 1503 connects to the imaging device 1401 and the imaging device 1402 via Ethernet or wirelessly, and communicates information related to the ML dictionaries, such as ML dictionaries and learning images.
- the display image generation unit 1504 generates a display image and provides the imaging device 1401 and the user of the imaging device 1401 with a GUI used for uploading and downloading ML dictionaries via the communication unit 1503.
- the subject detection unit 1505 applies the ML dictionary recorded in the recording unit 1502 and determines an area in the image where a subject such as a horse exists.
- the subject detection unit 1505 is configured with the same CNN as the subject detection unit 162 in the imaging devices 1401 and 1402.
- the subject classification unit 1506 applies the ML dictionary recorded in the recording unit 1502 and classifies the subject in the image as to which of the predetermined classes it belongs to.
- the subject classification unit 1506 is configured with the same CNN as the subject classification unit 163 in the imaging devices 1401 and 1402.
- FIGS. 16A to 16C are flowcharts showing the overall processing of the cloud system 1403 according to the fourth embodiment.
- the processing of the imaging device 1401, the cloud system 1403, and the imaging device 1402 will be described with reference to FIGS. 16A, 16B, and 16C.
- FIG. 16A is a flowchart showing the overall processing of the imaging device 1401 according to the fourth embodiment.
- the switching control unit 201 determines whether the user has performed an upload operation of an ML dictionary via the operation switch 156. If the switching control unit 201 determines that an upload operation has been performed (YES in S1600), the processing proceeds to S1601, and if the switching control unit 201 determines that an upload operation has not been performed (NO in S1600), the processing proceeds to S1603.
- the switching control unit 201 makes an upload request to the cloud system 1403, which is an external device, via the communication unit 161.
- the switching control unit 201 transmits the ML dictionary recorded on the recording medium 157 and a plurality of learning images used to learn the ML dictionary to the cloud system 1403 via the communication unit 161.
- the switching control unit 201 determines whether an end instruction has been received from the user via the operation switch 156. If the switching control unit 201 determines that an end instruction has not been received (NO in S1603), the process returns to S1600, and the above-mentioned process is repeated. On the other hand, if the switching control unit 201 determines that an end instruction has been received (YES in S1603), this process ends.
- FIG. 16B is a flowchart showing the overall processing of the cloud system 1403 according to the fourth embodiment.
- the control unit 1501 determines whether there is an upload request for an ML dictionary from an external device (the imaging device 1401 in this example) via the communication unit 1503. If the control unit 1501 determines that there is an upload request (YES in S1610), the processing proceeds to S1611. If the control unit 1501 determines that there is no upload request (NO in S1610), the processing proceeds to S1613.
- the control unit 1501 receives the ML dictionary and the multiple learning images used to learn the ML dictionary from the image capture device 1401 that has requested the upload via the communication unit 1503, and records them in the recording unit 1502.
- the control unit 1501 reads out the ML dictionary and the multiple learning images used to learn the ML dictionary that were recorded in the recording unit 1502 in S1611, and generates linking information.
- the details of the linking information generation process in S1612 are the same as those in the first or second embodiment (S503), except that it is executed by each unit of the cloud system 1403.
- the control unit 1501 determines whether there is a display request for the ML dictionary characteristics from an external device (in this example, the imaging device 1402) via the communication unit 1503. If the control unit 1501 determines that there is a display request (YES in S1613), the process proceeds to S1614, and if the control unit 1501 determines that there is no display request (NO in S1613), the process returns to S1610. In S1614, the display image generation unit 1504 generates a characteristic expression image that expresses the characteristics of the ML dictionary based on the linking information generated in S1612, the ML dictionary, and multiple learning images corresponding to the ML dictionary.
- the display image generation unit 1504 transmits the generated characteristic expression image to the imaging device 1402 that made the display request via the communication unit 1503. Note that the details of the process in S1614 are the same as those of the first or second embodiment (S504), except that it is executed by each unit of the cloud system 1403.
- the control unit 1501 determines whether a download request for an ML dictionary has been received from an external device (in this example, the imaging device 1402) via the communication unit 161. If the control unit 1501 determines that a download request has been received (YES in S1615), the process proceeds to S1616, and if the control unit 1501 determines that a download request has not been received (NO in S1615), the process returns to S1610. In S1616, the control unit 1501 transmits, from among the multiple ML dictionaries recorded in the recording unit 1502, the ML dictionary that expresses the dictionary characteristics in S1614 and the linking information generated for the ML dictionary in S1612 to the imaging device 1402 that issued the download request via the communication unit 1503.
- FIG. 16C is a flowchart showing the overall processing of the imaging device 1402 in the fourth embodiment.
- S1620 it is determined whether the user has performed an operation to display the dictionary characteristics via the operation switch 156. If the switching control unit 201 determines that there has been a display operation (YES in S1620), the processing proceeds to S1621, and if the switching control unit 201 determines that there has been no display operation (NO in S1620), the processing proceeds to S1623.
- the switching control unit 201 transmits a display request for the ML dictionary characteristics to the cloud system 1403, which is an external device, via the communication unit 161.
- the switching control unit 201 receives a characteristic representation image of the ML dictionary from the cloud system 1403 via the communication unit 161, and displays it on the display 150.
- the characteristic representation image is, for example, similar to the display example of the switching screen shown in the first embodiment (FIGS. 8A and 8B).
- the switching control unit 201 determines whether a download operation has been performed by the user via the operation switch 156 for the ML dictionary whose characteristics are expressed in the characteristic expression image. If the switching control unit 201 determines that a download operation has been performed (YES in S1623), the process proceeds to S1624. If the switching control unit 201 determines that a download operation has not been performed (NO in S1623), the process proceeds to S1626. In S1624, the switching control unit 201 transmits a download request for the ML dictionary to the cloud system 1403, which is an external device, via the communication unit 161. In S1625, the switching control unit 201 receives the ML dictionary and the linking information (e.g., the target image) generated for the ML dictionary from the cloud system 1403 via the communication unit 161, and records them on the recording medium 157.
- the switching control unit 201 receives the ML dictionary and the linking information (e.g., the target image) generated for the ML dictionary from the cloud system 1403 via the communication unit 161, and records
- the switching control unit 201 determines whether a user has performed an operation via the operation switch 156 to switch the ML dictionary recorded in the recording medium 157 in S1625 to be applied to the subject detection unit 162. If the switching control unit 201 determines that a switching operation has been performed (YES in S1626), the process proceeds to S1627. If the switching control unit 201 determines that a switching operation has not been performed (NO in S1626), the process proceeds to S1628. In S1627, the switching control unit 201 switches the ML dictionary to be applied to the subject detection unit 162 based on the switching operation from the user. Thereafter, subject detection processing using the ML dictionary switched in S1627 becomes possible for through images and captured images in the imaging device 1402.
- the switching control unit 201 determines whether a user has performed an end instruction via the operation switch 156. If the switching control unit 201 determines that an end instruction has been issued (YES in S1628), this process ends. If the switching control unit 201 determines that an end instruction has not been issued (NO in S1628), the process returns to S1620, and the above-described process is repeated.
- the imaging device can acquire and display training images with typical features and special features as information expressing the characteristics of the ML dictionary to be displayed from the cloud system. Therefore, by checking these, the user of the imaging device can download and apply the ML dictionary after understanding the rough dictionary characteristics in advance without placing a load on the imaging device.
- the configuration of the first or second embodiment is adopted as the configuration for generating the linking information in S1612 and for acquiring the characteristic expression image in S1614 (S1622), but this is not limited to this.
- the configuration of the third embodiment may be adopted as the configuration for generating the linking information in S1612 and for acquiring the characteristic expression image in S1614 (S1622).
- the generation process of the linking information in S1612 is the same as that in the third embodiment (FIGS. 10 and 12), except that it is executed by each unit of the cloud system 1403.
- the characteristic expression image of the ML dictionary that is generated in the cloud system 1403 in S1614 and received and displayed via the communication unit 161 of the imaging device 1402 in S1622 is the same as the example shown in FIGS. 13A and 13B in the third embodiment.
- icon images are displayed by the cloud system, and the user can check them to understand the overall dictionary characteristics in advance without placing a load on the imaging device, and then download and apply the ML dictionary.
- the present invention can also be realized by a process in which a program for implementing one or more of the functions of the above-described embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program.
- the present invention can also be realized by a circuit (e.g., ASIC) that implements one or more of the functions.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
画像処理装置は、機械学習により得られた辞書と、当該辞書の機械学習に用いられた複数の学習画像とを取得し、取得された複数の学習画像から、当該辞書の特性を表す情報として用いられる1つ以上の学習画像を選択し、選択された1つ以上の学習画像と当該辞書とを紐づける紐づけ情報を生成する。
Description
本発明は、画像処理装置及びその制御方法、撮像装置、プログラムに関する。
メーカーが事前に機械学習を行った辞書(以下ML辞書)が搭載されたカメラが販売されている。この種のカメラでは、ML辞書を用いることにより、撮影された画像から、例えば人、犬、馬などの様々な被写体を検出することができる。また、機械学習の技術が広く普及したことにより、カメラに複数のML辞書を搭載することが提案されている。複数のML辞書を用いた構成として、特許文献1では、連続画像に対して過去にML辞書を用いて検出した結果に基づいて複数のML辞書を切り替えることが開示されている。また、特許文献2では、複数のML辞書の辞書毎の検出結果を解析し、各々の精度に応じて各々のML辞書を用いて検出を行う解析時間を変更することが開示されている。
S. Haykin, "Neural Networks A Comprehensive Foundation 2nd Edition", Prentice Hall, pp.156-255, July 1998 (実施形態で参照される)
しかしながら、カメラに搭載された複数のML辞書から、ユーザが用途に応じて好みのML辞書を選択して用いることは想定されていない。複数のML辞書から好みの辞書をユーザが選択する場合、選択されるML辞書の特性を事前にユーザが把握できることが望ましい。例えば、馬を検出することが可能なML辞書であっても、特殊な姿勢の検出に適したML辞書、シマウマなどの類似種の検出に適したML辞書などの様に、複数のML辞書において特性に差があることが考えられるためである。従来、ML辞書の性能を表現する方法については提案されておらず、ユーザは複数のML辞書から1つを選択して利用しようとする際に、予めML辞書の特性を把握することが困難な場合がある。
本発明の一態様では、機械学習により得られた辞書の特性をユーザに把握させるための情報を生成することが可能な構成を提供する。
本発明の一態様による画像処理装置は以下の構成を備える。すなわち、
機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得手段と、
前記複数の学習画像から、前記辞書の特性を表す情報として用いられる1つ以上の学習画像を選択する選択手段と、
前記選択手段により選択された前記1つ以上の学習画像と前記辞書とを紐づける紐づけ情報を生成する生成手段と、を備える。
機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得手段と、
前記複数の学習画像から、前記辞書の特性を表す情報として用いられる1つ以上の学習画像を選択する選択手段と、
前記選択手段により選択された前記1つ以上の学習画像と前記辞書とを紐づける紐づけ情報を生成する生成手段と、を備える。
本発明の一態様によれば、機械学習により得られた辞書の特性をユーザに把握させるための情報を生成することができる。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
第1実施形態における撮像装置のブロック図である。
撮像装置における辞書切替部の機能構成例を示すブロック図である。
第1実施形態の被写体検出部における、CNNの構成例を示す模式図である。
第1実施形態におけるCNNの部分構成の例を示す模式図である。
第1実施形態の被写体分類部における、CNNの構成例を示す模式図である。
第1実施形態によるML辞書の切り替え処理を示すフローチャートである。
第1実施形態による紐づけ情報生成処理を示すフローチャートである。
第1実施形態による対象画像選択処理を示すフローチャートである。
第1実施形態による対象画像選択処理を示すフローチャートである。
第1実施形態における辞書特性表現の表示例を示す模式図である。
第1実施形態における辞書特性表現の表示例を示す模式図である。
第2実施形態による対象画像選択処理を示すフローチャートである。
第3実施形態による紐づけ情報生成処理を示すフローチャートである。
第3実施形態による被写体分類結果の例を示す図である。
第3実施形態による対象画像選択処理を示すフローチャートである。
第3実施形態による辞書特性表現の表示例を示す模式図である。
第3実施形態による辞書特性表現の表示例を示す模式図である。
第4実施形態による画像処理システムの構成例を示すブロック図である。
第4実施形態によるクラウドシステムの構成例を示すブロック図である。
第4実施形態による処理を示すフローチャートである。
第4実施形態による処理を示すフローチャートである。
第4実施形態による処理を示すフローチャートである。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
<第1実施形態>
(撮像装置の構成)
図1Aは、第1実施形態による撮像装置100の構成例を示すブロック図である。撮像装置100は、被写体を撮影して、動画や静止画のデータをテープ、固体メモリ、光ディスク、磁気ディスクなどの各種メディアに記録する。撮像装置100の例としては、デジタルスチルカメラやビデオカメラなどがあげられるが、これらに限定されるものではない。撮像装置100内の各部はバス160を介して接続されている。また各部は、CPU151(中央演算処理装置)により制御される。撮像装置100には、画像処理部152、画像圧縮解凍部153、被写体検出部162、被写体分類部163、辞書切替部164などで構成される画像処理装置が組み込まれている。
(撮像装置の構成)
図1Aは、第1実施形態による撮像装置100の構成例を示すブロック図である。撮像装置100は、被写体を撮影して、動画や静止画のデータをテープ、固体メモリ、光ディスク、磁気ディスクなどの各種メディアに記録する。撮像装置100の例としては、デジタルスチルカメラやビデオカメラなどがあげられるが、これらに限定されるものではない。撮像装置100内の各部はバス160を介して接続されている。また各部は、CPU151(中央演算処理装置)により制御される。撮像装置100には、画像処理部152、画像圧縮解凍部153、被写体検出部162、被写体分類部163、辞書切替部164などで構成される画像処理装置が組み込まれている。
レンズユニット101は、固定1群レンズ102、ズームレンズ111、絞り103、固定3群レンズ121、および、フォーカスレンズ131を備えて構成される。絞り制御部105は、CPU151の指令に従い、絞りモータ104(AM)を介して絞り103を駆動することにより、絞り103の開口径を調整して撮影時の光量調節を行う。絞り制御部105により、特定の被写体領域の輝度値を用いた露出制御が行われる。ズーム制御部113は、ズームモータ112(ZM)を介してズームレンズ111を駆動することにより、焦点距離を変更する。フォーカス制御部133は、レンズユニット101のピント方向のずれ量に基づいてフォーカスモータ132(FM)を駆動する駆動量を決定する。フォーカス制御部133は、フォーカスモータ132(FM)を介してフォーカスレンズ131を駆動することにより、焦点調節状態を制御する。フォーカス制御部133およびフォーカスモータ132によるフォーカスレンズ131の移動制御により、例えば特定の被写体領域に対するAF制御が実現される。フォーカスレンズ131は、焦点調節用レンズであり、図1Aには単レンズで簡略的に示されているが、通常複数のレンズで構成される。
撮像素子141は、被写体の光学像を電気信号へ変換する光電変換を行う光電変換素子である。撮像素子141には、横方向にm画素、縦方向にn画素の受光素子が配置されている。レンズユニット101を介して撮像素子141上に結像する被写体像は、撮像素子141により電気信号に変換される。撮像素子141上に結像されて光電変換された画像は、撮像信号処理部142により画像信号(画像データ)として整えられ、撮像面の画像として取得される。撮像信号処理部142から出力される画像データは、撮像制御部143に送られ、一時的にRAM154(ランダムアクセスメモリ)に蓄積される。RAM154に蓄積された画像データは、画像圧縮解凍部153にて圧縮された後、記録媒体157に記録される。これと並行して、RAM154に蓄積された画像データは、画像処理部152に送られる。
撮像制御部143は、撮像素子141の蓄積時間、撮像素子141から撮像信号処理部142へ出力を行う際のゲインの設定値の指示をCPU151から受け取り、撮像素子141を制御する。CPU151は、蓄積時間およびゲインの設定値を、操作スイッチ156から入力された操作者からの指示、あるいは、一時的にRAM154に蓄積された画像データの画素信号の大きさに基づいて設定する。
画像処理部152は、画像信号を処理し、画像データに対して最適なサイズへの縮小・拡大処理や画像データ同士の類似度算出等を行う。最適なサイズに処理された画像データが適宜ディスプレイ150に送られ、表示されることでプレビュー画像表示やスルー画像表示が行われる。また、ディスプレイ150の画像表示において、被写体検出部162の被写体検出結果を重畳表示することもできる。例えば、ディスプレイ150では、被写体検出結果が矩形などで表示され得る。またRAM154をリングバッファとして用いることで、所定期間内に撮像された複数の画像データと、画像データ毎に対応した被写体検出部162の検出結果をバッファリングできる。また同様に、被写体検出部162の学習に用いた画像データと画像データに対応した被写体検出結果をバッファリングできる。また、画像処理部152は、被写体領域に基づいたガンマ補正、ホワイトバランス処理などを行う。
操作スイッチ156はタッチパネルやボタンなどを含む入力インターフェイスである。操作スイッチ156を用いてディスプレイ150に表示される種々の機能アイコンを選択することなどにより、様々な操作が行える。例えば、ユーザは、ディスプレイ150に表示された撮影画像を見ながら、機械学習に用いる画像の選定や、機械学習に必要な操作(例えば、画像に対応した2次元的な正解領域の指定など)が行える。また、ユーザは、通信部161を介して取得され、ディスプレイ150に表示されたクラウドシステムのGUIを見ながら、ダウンロードするML辞書の選定やダウンロードの指示を行うことができる。
記録媒体157は、SDカードなどの記録メディアであり、撮像信号処理部142から出力される画像データ、被写体検出部162や、被写体分類部163に適用可能な複数のML辞書、などが記録される。被写体検出部162に適用されるML辞書には、各々の機械学習に用いた学習画像や、後述の紐づけ情報も併せて記録される。被写体分類部163に適用されるML辞書には、被写体分類結果の各分類、各クラスに対応したアイコン画像も記録される。通信部161は、イーサネットや無線によりクラウドシステム等と接続し、ML辞書や学習画像などのML辞書に関連する情報を通信する。
被写体検出部162は、記録媒体157に記録された複数のML辞書から選択されたML辞書を適用し、画像信号を用いて馬などの被写体が存在する領域を決定する。被写体検出部162における写体検出処理は、DNN(Deep Neural Networks)による特徴抽出処理により実現される。被写体検出部162の構成については、詳細に後述する。
被写体分類部163は、記録媒体157に記録されたML辞書を適用し、画像信号を用いて被写体が予め定めた何れのクラスに属するかを分類する。被写体分類部163における分類処理は、DNN(Deep Neural Networks)による特徴抽出処理により実現する。被写体分類部163では、適宜適用するML辞書を切り替えることで、被写体の種の分類、姿勢の分類、装飾品の有無の分類、毛色の分類等の種々の多クラス分類が可能である。被写体分類部163の構成については、詳細に後述する。
辞書切替部164は、操作スイッチ156への所定のユーザ操作に応じて、被写体検出部162が用いるML辞書を、複数のML辞書から選択されたML辞書に切り替える。図1Bは、辞書切替部164の機能構成例を示すブロック図である。切替制御部201は、操作スイッチ156からのユーザ操作を受け付けて辞書切替部164の各機能部を制御するとともに、辞書切替操作時のディスプレイ150への表示制御を行う。特性取得部202は、記録媒体157に記録されている紐づけ情報に基づいてML辞書の特性表現を切替制御部201に提供する。紐づけ情報生成部203は、ML辞書の機械学習に用いられた複数の学習画像から、特性表現に用いられる学習画像を選択し、ML辞書と選択された学習画像とを紐づける紐づけ情報を生成し、記録媒体157に記録する。辞書切替部164の詳細については、後述する。
図1Aに戻り、バッテリ159は、電源管理部158により管理され、撮像装置100の全体に安定した電源供給を行う。フラッシュメモリ155には、撮像装置100の動作に必要な制御プログラムや、各部の動作に用いるパラメータ等が記録されている。ユーザの操作により撮像装置100が起動すると(電源OFF状態から電源ON状態へ移行すると)、フラッシュメモリ155に格納された制御プログラム及びパラメータがRAM154の一部に読み込まれる。CPU151は、RAM154にロードされた制御プログラム及びパラメータに従って撮像装置100の動作を制御する。
(被写体検出部162の構成)
本実施形態では、被写体検出部162をCNN(Convolutional Neural Networks)で構成するが、それに制約されるものではなく、機械学習技術を用いたDNNであれば本開示の実施形態となる。CNNの基本的な構成について、図2および図3を用いて説明する。図2は、入力された2次元画像データから被写体を検出するCNNの基本的な構成を示す。図2において、左端が入力であり、右方向に処理が進んでいく。CNNは、特徴検出層(S層)と特徴統合層(C層)と呼ばれる2つの層を一つのセットとし、それが階層的に構成されている。
本実施形態では、被写体検出部162をCNN(Convolutional Neural Networks)で構成するが、それに制約されるものではなく、機械学習技術を用いたDNNであれば本開示の実施形態となる。CNNの基本的な構成について、図2および図3を用いて説明する。図2は、入力された2次元画像データから被写体を検出するCNNの基本的な構成を示す。図2において、左端が入力であり、右方向に処理が進んでいく。CNNは、特徴検出層(S層)と特徴統合層(C層)と呼ばれる2つの層を一つのセットとし、それが階層的に構成されている。
CNNでは、まずS層において前段階層で検出された特徴をもとに次の特徴を検出する。またS層において検出した特徴をC層で統合し、その階層における検出結果として次の階層に送る構成になっている。S層は特徴検出細胞面からなり、特徴検出細胞面ごとに異なる特徴を検出する。また、C層は、特徴統合細胞面からなり、前段の特徴検出細胞面での検出結果をプーリングする。以下では、特に区別する必要がない場合、特徴検出細胞面および特徴統合細胞面を総称して特徴面と呼ぶ。本実施形態では、最終段階層である出力層ではC層は用いずS層のみで構成している。
特徴検出細胞面での特徴検出処理、および特徴統合細胞面での特徴統合処理の詳細について、図3を用いて説明する。特徴検出細胞面は、複数の特徴検出ニューロンにより構成され、特徴検出ニューロンは前段階層のC層に所定の構造で結合している。また特徴統合細胞面は、複数の特徴統合ニューロンにより構成され、特徴統合ニューロンは同階層のS層に所定の構造で結合している。図3に示した、L階層目S層のM番目細胞面内において、位置(ξ,ζ)の特徴検出ニューロンの出力値をyLS
M(ξ,ζ)、L階層目C層のM番目細胞面内において、位置(ξ,ζ)の特徴統合ニューロンの出力値をyLC
M(ξ,ζ)と表記する。その時、それぞれのニューロンの結合係数をwLS
M(n,u,v)、wLC
M(u,v)とすると、各出力値は以下の[数1]、[数2]のように表すことができる。
[数1]のfは活性化関数であり、ロジスティック関数や双曲正接関数などのシグモイド関数であれば何でも良く、例えばtanh関数で実現して良い。uLS
M(ξ,ζ)は、L階層目S層のM番目細胞面における、位置(ξ,ζ)の特徴検出ニューロンの内部状態である。数式2は活性化関数を用いず単純な線形和をとっている。[数2]のように活性化関数を用いない場合は、ニューロンの内部状態uLC
M(ξ,ζ)と出力値yLC
M(ξ,ζ)は等しい。また、[数1]のyL-1C
n(ξ+u,ζ+v)、[数2]のyLS
M(ξ+u,ζ+v)をそれぞれ特徴検出ニューロン、特徴統合ニューロンの結合先出力値と呼ぶ。
[数1]及び[数2]中のξ,ζ,u,v,nについて説明する。位置(ξ,ζ)は入力画像における位置座標に対応しており、例えばyLS
M(ξ,ζ)が高い出力値である場合は、入力画像の画素位置(ξ,ζ)に、L階層目S層M番目細胞面において検出する特徴が存在する可能性が高いことを意味する。またnは[数2]において、L-1階層目C層n番目細胞面を意味しており、統合先特徴番号と呼ぶ。基本的にL-1階層目C層に存在する全ての細胞面についての積和演算を行う。(u,v)は、結合係数の相対位置座標であり、検出する特徴のサイズに応じて有限の範囲(u,v)において積和演算を行う。このような有限な(u,v)の範囲を受容野と呼ぶ。また受容野の大きさを、以下では受容野サイズと呼び、結合している範囲の横画素数×縦画素数で表す。
また[数1]において、L=1つまり一番初めのS層では、yL-1C
n(ξ+u,ζ+v)は、入力画像yin_image(ξ+u,ζ+v)または、入力位置マップyin_posi_map(ξ+u,ζ+v)となる。ちなみにニューロンや画素の分布は離散的であり、結合先特徴番号も離散的なので、ξ,ζ,u,v,nは連続な変数ではなく、離散的な値をとる。ここでは、ξ,ζは非負整数、nは自然数、u,vは整数とし、何れも有限な範囲となる。
[数1]中のwLS
M(n,u,v)は、所定の特徴を検出するための結合係数分布であり、これを適切な値に調整することによって、所定の特徴を検出することが可能になる。この結合係数分布の調整が学習であり、CNNの構築においては、さまざまなテストパターンを提示して、yLS
M(ξ,ζ)が適切な出力値になるように、結合係数を繰り返し徐々に修正していくことで結合係数の調整を行う。
次に、[数2]中のwLC
M(u,v)は、2次元のガウシアン関数を用いており、以下の[数3]のように表すことができる。
ここでも、(u,v)は有限の範囲としてあるので、特徴検出ニューロンの説明と同様に、有限の範囲を受容野といい、範囲の大きさを受容野サイズと呼ぶ。この受容野サイズは、ここではL階層目S層のM番目特徴のサイズに応じて適当な値に設定すれば良い。[数3]中の、σは特徴サイズ因子であり、受容野サイズに応じて適当な定数に設定しておけば良い。具体的には、受容野の一番外側の値がほぼ0とみなせるような値になるように設定するのが良い。
上述のような演算を各階層で行うことで、被写体検出部162の最終階層のS層において被写体検出を行うのが、本実施形態における被写体検出部162の構成である。
(被写体検出部162の学習方法)
具体的な被写体検出部162の学習方法について説明する。本実施形態では教師ありの学習により、結合係数の調整を行う。教師ありの学習では、テストパターンを与えて実際にニューロンの出力値を求め、その出力値と教師信号(そのニューロンが出力すべき望ましい出力値)の関係から結合係数wLS M(n,u,v)の修正を行えば良い。本実施形態の学習においては、最終層の特徴検出層は最小二乗法を用い、中間層の特徴検出層は誤差逆伝搬法を用いて結合係数の修正を行う。なお、最小二乗法や、誤差逆伝搬法等の、結合係数の修正手法の詳細は、非特許文献1を参照されたい。
具体的な被写体検出部162の学習方法について説明する。本実施形態では教師ありの学習により、結合係数の調整を行う。教師ありの学習では、テストパターンを与えて実際にニューロンの出力値を求め、その出力値と教師信号(そのニューロンが出力すべき望ましい出力値)の関係から結合係数wLS M(n,u,v)の修正を行えば良い。本実施形態の学習においては、最終層の特徴検出層は最小二乗法を用い、中間層の特徴検出層は誤差逆伝搬法を用いて結合係数の修正を行う。なお、最小二乗法や、誤差逆伝搬法等の、結合係数の修正手法の詳細は、非特許文献1を参照されたい。
被写体検出部162では、学習用のテストパターンとして、検出すべき特定パターンと、検出すべきでないパターンを多数用意する。各テストパターンは、画像および教師信号を1セットとする。活性化関数にtanh関数を用いる場合は、検出すべき特定パターンを提示した時は、最終層の特徴検出細胞面の、特定パターンが存在する領域のニューロンに対し、出力が1となるように教師信号を与える。逆に、検出すべきでないパターンを提示した時は、そのパターンの領域のニューロンに対し、出力が-1となるように教師信号を与える。実際の検出においては、学習により構築した結合係数wLS
M(n,u,v)を用いて演算をおこない、最終層の特徴検出細胞面上のニューロン出力が、所定値以上であれば、そこに被写体が存在すると判定する。以上により、被写体検出部162は、2次元画像から被写体検出できるように構築される。
(被写体分類部163の構成)
本実施形態では、被写体分類部163をCNNで構成するが、それに制約されるものではなく、機械学習技術を用いたDNNであれば本開示の実施形態となる。CNNの基本的な構成について、図4を用いて説明する。被写体分類部163のCNNでは、n層の出力数kが分類したいクラスの個数になるように構成する。また、活性化関数にはソフトマックス関数を用いる。その他の部分については被写体検出部162における構成と同様のため割愛する。上述のような演算を各階層で行うことで、被写体分類部163の最終階層のS層において被写体分類を行うのが、本実施形態における被写体分類部163のCNN構成である。
本実施形態では、被写体分類部163をCNNで構成するが、それに制約されるものではなく、機械学習技術を用いたDNNであれば本開示の実施形態となる。CNNの基本的な構成について、図4を用いて説明する。被写体分類部163のCNNでは、n層の出力数kが分類したいクラスの個数になるように構成する。また、活性化関数にはソフトマックス関数を用いる。その他の部分については被写体検出部162における構成と同様のため割愛する。上述のような演算を各階層で行うことで、被写体分類部163の最終階層のS層において被写体分類を行うのが、本実施形態における被写体分類部163のCNN構成である。
(被写体分類部163の学習方法)
具体的な被写体分類部163の学習方法について説明する。被写体分類部163では、多クラスの各々に分類すべき特定パターンを多数用意する。各テストパターンは画像及び教師信号を1セットとする。活性化関数にソフトマックス関数を用いる場合は、正解クラスの出力が1、正解クラス以外の出力が0となるように教師信号を与える。また実際の分類においては、学習により構築した結合係数wLS M(n,u,v)を用いて演算をおこない、最終層の特徴検出細胞面上のニューロン出力が、所定値以上であるクラスに被写体は属していると判定する。
具体的な被写体分類部163の学習方法について説明する。被写体分類部163では、多クラスの各々に分類すべき特定パターンを多数用意する。各テストパターンは画像及び教師信号を1セットとする。活性化関数にソフトマックス関数を用いる場合は、正解クラスの出力が1、正解クラス以外の出力が0となるように教師信号を与える。また実際の分類においては、学習により構築した結合係数wLS M(n,u,v)を用いて演算をおこない、最終層の特徴検出細胞面上のニューロン出力が、所定値以上であるクラスに被写体は属していると判定する。
上述のような学習を、複数の多クラス分類の各々に対して行った複数のML辞書を、予め用意しておき記録媒体157に記録しておく。その他の部分は、被写体検出部162における方法と同様のため割愛する。以上により、被写体分類部163は、2次元画像から被写体を多クラス分類できるように構築される。
(辞書切替部164の全体処理の流れ)
図5は本実施形態における辞書切替部164の全体処理を示すフローチャートである。なお、図1Bに示される辞書切替部164の各機能部は、CPU151が所定のソフトウエアを実行することにより実現されてもよいし、専用のハードウエアにより実現されてもよいし、ソフトウエアとハードウエアの協働により実現されてもよい。
図5は本実施形態における辞書切替部164の全体処理を示すフローチャートである。なお、図1Bに示される辞書切替部164の各機能部は、CPU151が所定のソフトウエアを実行することにより実現されてもよいし、専用のハードウエアにより実現されてもよいし、ソフトウエアとハードウエアの協働により実現されてもよい。
S500において、切替制御部201は、操作スイッチ156を用いた所定のユーザ操作(ML辞書の切り替え操作)に応じて、ディスプレイ150にML辞書の切替画面を表示する。切替画面の具体例については、図8A、8Bを用いて後述する。S501において、切替制御部201は、ユーザから操作スイッチ156を介して、切替画面に表示されるML辞書を切り替える操作が行われたか判定する。ML辞書を切り替える操作が行われたと切替制御部201が判定した場合(S501でYES)、処理はS502に進み、行われていないと切替制御部201が判定した場合(S501でNO)、処理はS505に進む。
S502において、特性取得部202は、S501で切り替えられた新たな表示対象のML辞書に関する紐づけ情報が記録媒体157に記録されているか判定する。表示対象のML辞書に関する紐づけ情報が記録媒体157に記録されていないと特性取得部202が判定した場合(S502でNO)、処理はS503に進む。他方、表示対象のML辞書に関する紐づけ情報が記録媒体157に記録されていると特性取得部202が判定した場合(S502でYES)、処理はS504に進む。
S503において、紐づけ情報生成部(以下、生成部)203は、S501の表示切り替え操作後の表示対象のML辞書と、この表示対象のML辞書の学習に用いられた複数の学習画像とを記録媒体157から読み出し、当該ML辞書の紐づけ情報を生成する。生成部203は、得られた紐づけ情報を記録媒体157に記録する。ここで、紐づけ情報とは、ML辞書と、そのML辞書の特性を表すために選択された対象画像との組を表す情報であり、対象画像そのものを含む。S503の紐づけ情報の生成処理についての詳細は、図6、図7A、図7Bにより後述する。
次に、S504において、特性取得部202は、S501で切り替え操作が行われた後の表示対象のML辞書に関連する紐づけ情報を記録媒体157から読み出し、読み出した紐づけ情報により紐づけされている学習画像を取得する。切替制御部201は、表示対象のML辞書と、特性取得部202が取得した複数の学習画像とをディスプレイ150に表示することにより、切り替え後の表示対象のML辞書の特性を表現する。ディスプレイ150への表示、ML辞書の特性を表現する方法の詳細については、図8A、8Bにより後述する。
S505において、切替制御部201は、切替画面に表示中のML辞書に対して、ユーザから操作スイッチ156を介して、被写体検出部162に適用するML辞書を切り替える操作が行われたか判定する。ML辞書を切り替える操作が行われたと切替制御部201が判定した場合(S505でYES)、処理はS506に進む。一方、ML辞書を切り替える操作が行われていないと切替制御部201が判定した場合(S505でNO)、処理はS507に進む。S506において、切替制御部201は、ユーザからの切り替え操作に従って、被写体検出部162に適用されるML辞書を、現在の切替画面において表示対象となっているML辞書へ切り替える。以降、撮像装置100におけるスルー画像や撮像画像に対して、S506で切り替えられたML辞書による被写体検出処理が可能になる。S507において、切替制御部201は、ユーザから操作スイッチ156を介して終了操作が行われたか判定する。終了操作が行われたと切替制御部201が判定した場合(S507でYES)、本処理は終了する。終了操作が行われていないと切替制御部201が判定した場合(S507でNO)、処理はS501に戻り、上述の処理が繰り返される。
(紐づけ情報生成処理の流れ)
図6は第1実施形態のS503において実行される、紐づけ情報を生成する処理のフローチャートである。
図6は第1実施形態のS503において実行される、紐づけ情報を生成する処理のフローチャートである。
S600において、生成部203は、S500による切り替え後の表示対象のML辞書の機械学習に用いられた複数の学習画像(以下、該当像群)の各々について、特徴ベクトルを算出する。これら該当画像群は、ML辞書に対応して記録媒体157に記録されている。なお、該当画像群は、ML辞書の機械学習に用いられた全ての学習画像を含むことが望ましいが、本開示の効果が損なわれない範囲で、機械学習に用いられた全ての学習画像から無作為抽出された学習画像で構成されてもよい。なお、S600における特徴ベクトルの算出には、画像から特徴ベクトルを算出するための公知の手法を用いることができる。或いは、被写体検出部162に各々の学習画像を入力し、被写体検出部162により得られる中間データである、特徴統合層n-1の出力を特徴ベクトルとして用いるようにしても良い。或いは、記録媒体157に記録されたいずれかのML辞書が適用された被写体分類部163に各々の学習画像を入力し、被写体分類部163により得られる中間データである、特徴統合層n-1の出力を特徴ベクトルとして用いるようにしても良い。
S601において、生成部203は、S600において算出された特徴ベクトルを用いて、平均ベクトルを算出する。S602において、生成部203は、1枚目の対象画像が選択済みとなっているか判定する。1枚目の対象画像が選択済みでないと生成部203が判定した場合(S602でNO)、処理はS603に進み、1枚目の対象画像が選択済みであると生成部203が判定した場合(S602でYES)、処理はS604に進む。
S603において、生成部203は、該当画像群の中から1枚目の対象画像を選択する。1枚目の対象画像の選択処理の詳細は、図7Aのフローチャートの参照により後述する。また、S604では、生成部203は、該当画像群の中から2枚目以降の対象画像を選択する。2枚目の対象画像の選択処理の詳細は、図7Bのフローチャートの参照により後述する。次に、S605において、生成部203は、終了条件が満たされているか判定する。終了条件が満たされていると生成部203が判定した場合(S605でYES)、処理はS606に進む。他方、終了条件が満たされていないと生成部203が判定した場合(S605でNO)、処理はS602に戻り、上述の処理が繰り返される。ここで、S605で用いられる終了条件として、本実施形態では対象画像の選択数が用いられる。対象画像の選択数は、ML辞書の特性を表現する表示(S504)においてディスプレイ150に学習画像が表示される際に、ユーザが視認可能なサイズを考慮して設定される。本実施形態では、例えば4枚(1枚目の対象画像が1枚と、2枚目以降の対象画像が3枚)とする。S606において、生成部203は、S603とS604で選択された学習画像を特定する情報を表示対象のML辞書に関する紐づけ情報として記録媒体157に記録する。
(対象画像選択処理)
図7Aは、1枚目の対象画像を選択する処理(S603)を示すフローチャートである。生成部203は、該当画像群(複数の学習画像)から得られる複数の特徴ベクトルのうち、それら複数の特徴ベクトルの平均ベクトルとの距離が最も小さい特徴ベクトルの学習画像を、1枚目の対象画像として選択する。
図7Aは、1枚目の対象画像を選択する処理(S603)を示すフローチャートである。生成部203は、該当画像群(複数の学習画像)から得られる複数の特徴ベクトルのうち、それら複数の特徴ベクトルの平均ベクトルとの距離が最も小さい特徴ベクトルの学習画像を、1枚目の対象画像として選択する。
S700において、生成部203は、該当画像群の中から、着目学習画像を選択する。S701において、生成部203は、S700で選択された着目学習画像が対象画像に選択済みか判定する。着目学習画像が対象画像に選択済みであると生成部203が判定した場合(S701でYES)、処理はS700に戻り、次の着目学習画像を選択する。他方、着目学習画像が対象画像に選択済みでないと生成部203が判定した場合(S701でNO)、処理はS701に進む。対象画像の選択は、図6に示すフローチャートにおいて繰り返し実行されるため、本ステップにおける判定は重複して対象画像を選択させない意図を持つ。なお、図6に示されるように、S603の処理を用いて選択される対象画像が1枚の場合、S701は省略可能である。但し、平均ベクトルとの距離が近い順に複数枚の対象画像を選択する処理とした場合(例えば、S603の処理により複数の対象画像を選択する場合)には、S701が必要となる。
S702において、生成部203は、S700で選択された着目学習画像が紐づけ処理の対象となる条件を満たしているか判定する。着目学習画像が紐づけ処理の対象となる条件を満たしていると生成部203が判定した場合(S702でYES)、処理はS703に進む。他方、着目学習画像が紐づけ処理の対象となる条件を満たしていない生成部203が判定した場合(S702でNO)、処理はS700に戻る。機械学習においては学習画像に含まれていてもML辞書の性能に十分な影響を及ぼさないことがある。そのため、紐づけ処理の対象となる条件(対象画像として選択されるための条件)の一つとして、ML辞書の特性に与える影響が小さい学習画像が対象画像として選択されないようにするための条件が設定されている。より具体的には、紐づけ処理の対象となる条件として、着目学習画像を被写体検出部162に投入した場合に被写体の検出が可能であること、があげられる。なお、このとき、被写体検出部162には、表示対象となっているML辞書が一時的に設定される。または、S600で算出された特徴ベクトルの内、着目学習画像から算出された特徴ベクトルと距離が十分小さい特徴ベクトル(距離が所定の閾値以下となる特徴ベクトル)の割合が所定割合以上であることであってもよい。更に、ここでの距離とは、特徴ベクトルの類似度を表現する数値であれば何でもよく、例えばベクトル間のユークリッド距離やコサイン類似度であってよい。
S703において、生成部203は、S600で算出された特徴ベクトルの内、着目学習画像から算出した特徴ベクトルと、S601で算出された平均ベクトルとの距離を算出する。なお、ベクトル間の距離に関しては、S702で説明した距離と同様である。S704において、生成部203は、後述するS705において候補画像が選択済みとなっているか判定する。候補画像が選択済みとなっていないと生成部203が判定した場合(S704でNO)、処理はS705に進み、候補画像が選択済みとなっていると生成部203が判定した場合(S704でYES)、処理はS706に進む。
S705において、生成部203は、着目学習画像を候補画像として選択する。一方、S706において、生成部203は、S705またはS707で選択済みとなっている候補画像の特徴ベクトルと平均ベクトルとの距離よりも、着目学習画像の特徴ベクトルと平均ベクトルとの距離が小さいか判定する。着目学習画像の特徴ベクトルと平均ベクトルとの距離が、候補画像の特徴ベクトルと平均ベクトルとの距離よりも小さいと生成部203が判定した場合(S706でYES)、処理はS707に進む。他方、着目学習画像の特徴ベクトルと平均ベクトルとの距離が、候補画像の特徴ベクトルと平均ベクトルとの距離よりも小さくないと生成部203が判定した場合(S706でNO)、処理はS708に進む。S706における判定は、より平均ベクトルと距離が小さい特徴ベクトルが得られる学習画像を候補画像に選択する意図を持つ。S707において、生成部203は、候補画像を現在の着目学習画像に変更する。
S708において、生成部203は、該当画像群において、着目学習画像に選択されていない学習画像が存在するか判定する。着目学習画像に選択されていない学習画像が存在すると生成部203が判定した場合(S708でYES)、処理はS700に戻り、上述の処理が繰り返される。他方、着目学習画像に選択されていない学習画像が存在しないと生成部203が判定した場合(S708でNO)、処理はS709に進む。S709において、生成部203は、候補画像となっている着目学習画像を対象画像に選択する。
以上のような図7Aの処理によれば、該当画像群の中から、最も平均ベクトルと距離が小さい特徴ベクトルが得られる学習画像が対象画像に選択される。即ちS501で切り替え指示があった対象のML辞書の性能を表す、代表的な学習画像が選択される。
図7Bは第1実施形態のS604において実行される、2枚目以降の対象画像を選択する処理を示すフローチャートである。本処理において、生成部203は、該当画像群から得られる複数の特徴ベクトルから、それら複数の特徴ベクトルの平均ベクトルとの距離が大きい順に所定数の特徴ベクトルを選択する。したがって、S604が所定回数繰り返されることにより、特徴ベクトルと平均ベクトルとの距離が大きい順に所定数の学習画像が選択される。図7Bにおいて、S716を除くS710からS719の処理は、図7AにおけるS706を除くS700からS709の処理と同じである。S716において、生成部203は、S715またはS717で選択済みとなっている候補画像の特徴ベクトルと平均ベクトルとの距離よりも、着目学習画像の特徴ベクトルと平均ベクトルとの距離が大きいか判定する。着目学習画像の特徴ベクトルと平均ベクトルとの距離が、候補画像の特徴ベクトルと平均ベクトルとの距離よりも大きいと生成部203が判定した場合(S716でYES)、処理はS717に進む。他方、着目学習画像の特徴ベクトルと平均ベクトルとの距離が、候補画像の特徴ベクトルと平均ベクトルとの距離よりも大きくないと生成部203が判定した場合(S716でNO)、処理はS718に進む。S716における判定は、より平均ベクトルとの距離が大きい特徴ベクトルが算出される学習画像を候補画像に選択する意図を持つ。
以上のような図7Bの処理によれば、該当画像群の中から、最も平均ベクトルと距離が大きい特徴ベクトルを得られる学習画像が対象画像に選択される。即ちS501で切り替え指示があったML辞書の性能を表す、特殊な学習画像が選択される。
(辞書特性の表示例)
図8A、8Bは、S500およびS504の処理により、切替制御部201がディスプレイ150に表示する切替画面の例を示す図である。辞書切替モードが指定されると、切替制御部201は、例えば、図8Aに示される切替画面8aを表示する。アイテム800及び801は、操作スイッチ156の操作により表示対象のML辞書を切り替えるためのGUIである。アイテム800または801が操作されると、S501において切替制御部201は表示対象のML辞書を切り替える操作があったと判定する。アイテム802aは表示対象のML辞書であり、記録媒体157に記録されている当該ML辞書のファイル名である「001」と併記されている。
図8A、8Bは、S500およびS504の処理により、切替制御部201がディスプレイ150に表示する切替画面の例を示す図である。辞書切替モードが指定されると、切替制御部201は、例えば、図8Aに示される切替画面8aを表示する。アイテム800及び801は、操作スイッチ156の操作により表示対象のML辞書を切り替えるためのGUIである。アイテム800または801が操作されると、S501において切替制御部201は表示対象のML辞書を切り替える操作があったと判定する。アイテム802aは表示対象のML辞書であり、記録媒体157に記録されている当該ML辞書のファイル名である「001」と併記されている。
エリア803aは、ML辞書の特性を表現するためのエリアであり、S504の処理により表示される。図8Aの例では、ML辞書「001」の特性を表現するために選択された対象画像である、学習画像804aから807aが表示される。学習画像804aはS603において1枚目の対象画像として選択された学習画像である。S603においては、代表的な学習画像が選択されやすく、学習画像804aの例では、馬一匹が4足立ちしている学習画像である。学習画像805a、806a及び807aは、S604において、2枚目以降の対象画像として選択された学習画像である。S604においては、特殊な学習画像が選択されやすく、学習画像805aから807aの例では、騎乗者あり、装飾具あり、複数被写体ありといった学習画像である。切替ボタン808は、被写体検出部162に適用するML辞書を切り替えるためのユーザ操作を受け付けるGUIである。切替ボタン808が操作されると、S505において適用されるML辞書の切り替えが指示されたと判定される。
以上のように、切替制御部201は、紐づけ情報に基づいて、辞書と1つ以上の学習画像とを関連付けて表示するための表示情報を生成し、これをディスプレイ150へ表示する表示情報生成部として機能する。そして、このような表示情報によれば、各辞書の辞書特性がユーザに提示される。ユーザは、例えば図8Aの表示から、ML辞書「001」が、例えば競馬場などでの撮影に向いたML辞書であることを、予め把握することができる。
次に図8Bについて説明する。アイテム800及び801、切替ボタン808は、図8Aと同様である。アイテム802bは、アイテム800または801の操作により表示対象となったML辞書を示し、記録媒体157に記録されている当該ML辞書のファイル名である「002」と併記されている。エリア803bには、ML辞書「002」の特性を表現するために選択された対象画像である、学習画像804bから807bが表示される。学習画像804aは、S603において1枚目の対象画像として選択された学習画像の例である。学習画像805b、806b及び807bは、S604において2枚目以降の対象画像として選択された学習画像の例である。S604においては、特殊な学習画像が選択されやすく、学習画像805bから807bの例では、頭を下げる、伏せなどの姿勢やシマウマなどの類似種といった特徴的な学習画像である。
以上の図8Bのような辞書特性の表示によれば、ユーザは例えば動物園などでの撮影に向いたML辞書であることを、予め把握することができる。
以上、第1実施形態によれば、ML辞書に関して代表的な特徴や、特殊な特徴を備えた学習画像が表示される。このため、ユーザはそれらを確認することで、予め総合的な辞書特性を把握した上で、適用するML辞書を選択することができる。なお、上記実施形態では、選択される対象画像の総数を4、S603(図7A)の処理により選択される対象画像(代表的な学習画像)の枚数を1、S604(図7B)の処理により選択される対象画像(特殊な学習画像)の枚数を3とした。しかし、本開示はこれに限られるものではなく、対象画像の総数、代表的な学習画像の枚数、特殊な学習画像の枚数は、任意に設定され得る。但し、特殊な学習画像を用いた方がML辞書の特性を広範囲に表すことができるので、総合的な特性を把握するという観点からすれば、特殊な学習画像の枚数が代表的な学習画像の枚数よりも多いことが望ましい。
<第2実施形態>
第1実施形態では、着目学習画像を2枚目以降の対象画像として選択するか否かを判定するために、着目学習画像の特徴ベクトルと平均ベクトルとの距離が用いられた。第2実施形態では、着目学習画像を2枚目以降の対象画像として選択するか否かを判定するために、1枚目の対象画像(代表的な学習画像)の特徴ベクトルとの距離が用いられる。第2実施形態の撮像装置100の構成、機能、処理は、2枚目以降の対象画像を選択する処理を除いて、第1実施形態と同じである。以下、第2実施形態による2枚目以降の対象画像を選択する処理(図6のS604の処理)について、図9を参照して説明する。
第1実施形態では、着目学習画像を2枚目以降の対象画像として選択するか否かを判定するために、着目学習画像の特徴ベクトルと平均ベクトルとの距離が用いられた。第2実施形態では、着目学習画像を2枚目以降の対象画像として選択するか否かを判定するために、1枚目の対象画像(代表的な学習画像)の特徴ベクトルとの距離が用いられる。第2実施形態の撮像装置100の構成、機能、処理は、2枚目以降の対象画像を選択する処理を除いて、第1実施形態と同じである。以下、第2実施形態による2枚目以降の対象画像を選択する処理(図6のS604の処理)について、図9を参照して説明する。
(紐づけ対象画像の選択処理)
図9は第2実施形態のS604において実行される、2枚目以降の対象画像を選択する処理を示すフローチャートである。S903及びS906を除くS900からS909の処理は、第1実施形態(図7B)のS713及びS716を除くS710からS719の処理と同じである。
図9は第2実施形態のS604において実行される、2枚目以降の対象画像を選択する処理を示すフローチャートである。S903及びS906を除くS900からS909の処理は、第1実施形態(図7B)のS713及びS716を除くS710からS719の処理と同じである。
S903において、生成部203は、着目学習画像から算出された特徴ベクトルと、S603で選択された1枚目の対象画像から算出された特徴ベクトルとの距離を算出する。なお、これらの特徴ベクトルはS600で算出される。S906において、生成部203は、S905またはS907で選択済みの候補画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離よりも、着目学習画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離が大きいか判定する。着目学習画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離が選択済みの候補画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離よりも大きいと生成部203が判定した場合(S906でYES)、処理はS907に進む。着目学習画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離が選択済みの候補画像の特徴ベクトルと1枚目の対象画像の特徴ベクトルとの距離よりも大きくないと生成部203が判定した場合(S906でNO)、処理はS908に進む。S906における判定は、1枚目の選択画像の特徴ベクトルとの距離が大きい特徴ベクトルが算出される学習画像を候補画像に選択する意図を持つ。
以上、第2実施形態により、代表的な特徴や、特殊な特徴を備えた学習画像が表示され、ユーザはそれらを確認することで、予めおおまかな辞書特性を把握した上で、適用するML辞書を選択することができる。
<第3実施形態>
第1、第2実施形態では、学習画像の特徴ベクトルに基づいて、被写体検出部162に適用されるML辞書の特性を表現するために用いる学習画像(すなわち、ML辞書に紐づける学習画像)を選択した。第3実施形態では、ML辞書の機械学習に用いられた複数の学習画像を被写体分類部163により複数のクラスへ分類した結果に基づいて、被写体検出部162に適用されるML辞書の特性を表現するために用いる学習画像を選択する。第3実施形態における辞書切替部164の全体処理は、S503における紐づけ情報生成処理と、S504における辞書特性表示方法を除いて、第1実施形態および第2実施形態(図5)と同様である。
第1、第2実施形態では、学習画像の特徴ベクトルに基づいて、被写体検出部162に適用されるML辞書の特性を表現するために用いる学習画像(すなわち、ML辞書に紐づける学習画像)を選択した。第3実施形態では、ML辞書の機械学習に用いられた複数の学習画像を被写体分類部163により複数のクラスへ分類した結果に基づいて、被写体検出部162に適用されるML辞書の特性を表現するために用いる学習画像を選択する。第3実施形態における辞書切替部164の全体処理は、S503における紐づけ情報生成処理と、S504における辞書特性表示方法を除いて、第1実施形態および第2実施形態(図5)と同様である。
(紐づけ情報の生成処理(S503))
図10は第3実施形態による、紐づけ情報の生成処理を示すフローチャートである。まず、S1000において、生成部203は、記録媒体157に記録された被写体分類部163に適用される複数のML辞書(以下、該当ML辞書群)の中から着目ML辞書を選択し、被写体分類部163に適用する。なお、被写体検出部162に適用されるML辞書(S501で切り替え指示があったML辞書)が対応している被写体に応じて、該当ML辞書群を選択するようにしてもよい。例えば、被写体検出部162に適用されるML辞書が「馬」を検出するための辞書である場合に、「馬」の分類に関わるML辞書により該当ML辞書群が構成されるようにしてもよい。次に、S1001において、生成部203は、S501で切り替え指示があったML辞書(被写体検出部162に適用されるML辞書)に対応して、記録媒体157に記録されている複数の学習画像(以下、該当画像群)の中から、着目学習画像を選択する。ここでの該当画像群は、当該ML辞書の機械学習に用いられた全ての学習画像を含むことが望ましいが、本開示の効果が損なわれない範囲で、無作為抽出された学習画像が用いられても良い。S1002において、生成部203は、被写体分類部163に着目学習画像を処理させ、着目ML辞書を適用した被写体分類を行わせる。S1003において、生成部203は、該当画像群の内、S1001で着目学習画像に選択されていない学習画像が存在するか判定する。該当画像群に着目学習画像に選択されていない学習画像が存在すると生成部203が判定した場合(S1003でYES)、処理はS1001に戻り、上述の処理が繰り返される。他方、該当画像群に着目学習画像に選択されていない学習画像が存在しないと生成部203が判定した場合(S1003でNO)、処理はS1004に進む。
図10は第3実施形態による、紐づけ情報の生成処理を示すフローチャートである。まず、S1000において、生成部203は、記録媒体157に記録された被写体分類部163に適用される複数のML辞書(以下、該当ML辞書群)の中から着目ML辞書を選択し、被写体分類部163に適用する。なお、被写体検出部162に適用されるML辞書(S501で切り替え指示があったML辞書)が対応している被写体に応じて、該当ML辞書群を選択するようにしてもよい。例えば、被写体検出部162に適用されるML辞書が「馬」を検出するための辞書である場合に、「馬」の分類に関わるML辞書により該当ML辞書群が構成されるようにしてもよい。次に、S1001において、生成部203は、S501で切り替え指示があったML辞書(被写体検出部162に適用されるML辞書)に対応して、記録媒体157に記録されている複数の学習画像(以下、該当画像群)の中から、着目学習画像を選択する。ここでの該当画像群は、当該ML辞書の機械学習に用いられた全ての学習画像を含むことが望ましいが、本開示の効果が損なわれない範囲で、無作為抽出された学習画像が用いられても良い。S1002において、生成部203は、被写体分類部163に着目学習画像を処理させ、着目ML辞書を適用した被写体分類を行わせる。S1003において、生成部203は、該当画像群の内、S1001で着目学習画像に選択されていない学習画像が存在するか判定する。該当画像群に着目学習画像に選択されていない学習画像が存在すると生成部203が判定した場合(S1003でYES)、処理はS1001に戻り、上述の処理が繰り返される。他方、該当画像群に着目学習画像に選択されていない学習画像が存在しないと生成部203が判定した場合(S1003でNO)、処理はS1004に進む。
S1004において、生成部203は、該当ML辞書群の内、S1000で着目ML辞書に選択されていないML辞書が存在するか判定する。該当ML辞書群に着目ML辞書に選択されていないML辞書が存在すると生成部203が判定した場合(S1004でYES)、処理はS1000に戻り、上述の処理が繰り返される。他方、該当ML辞書群に着目ML辞書に選択されていないML辞書が存在しないと生成部203が判定した場合(S1004でNO)、処理はS1005に進む。S1005において、生成部203は、S1000からS1004で得られた被写体分類結果に基づいて、記録媒体157に記録された学習画像及びアイコン画像の中から、ML辞書の特性を表現するための対象画像を選択する。対象画像の選択に関しては、図12のフローチャートの参照により後述する。S1006において、生成部203は、S1005で選択された対象画像を特定する情報を、表示対象となっているML辞書の紐づけ情報として記録媒体157に記録する。ここで、紐づけ情報とは、S501で切り替え操作が行われた表示対象のML辞書に対応してS1005で選択された対象画像の組み合わせの情報及び対象画像そのものである。
(被写体分類結果の例)
図11は、本実施形態のS1000からS1004の処理で得られる被写体分類結果の例である。図11の例では、「種」、「毛色」、「姿勢」、「マスク」及び「鞍」に関する5つの被写体分類が実行され、学習画像群を分類したクラス毎の意味と学習画像数が記載されている。「種」のクラスは例えば、「馬」、「シマウマ」、「ロバ」、「他」などである。「毛色」のクラスは、「鹿毛」、「青毛」、「栗毛」、「他」などである。「姿勢」のクラスは、「4足立ち」、「2足立ち」、「伏せ」、「寝」などである。「マスク」、「鞍」のクラスは「有」と「無」である。
図11は、本実施形態のS1000からS1004の処理で得られる被写体分類結果の例である。図11の例では、「種」、「毛色」、「姿勢」、「マスク」及び「鞍」に関する5つの被写体分類が実行され、学習画像群を分類したクラス毎の意味と学習画像数が記載されている。「種」のクラスは例えば、「馬」、「シマウマ」、「ロバ」、「他」などである。「毛色」のクラスは、「鹿毛」、「青毛」、「栗毛」、「他」などである。「姿勢」のクラスは、「4足立ち」、「2足立ち」、「伏せ」、「寝」などである。「マスク」、「鞍」のクラスは「有」と「無」である。
(対象画像選択処理)
図12は、第3実施形態における、対象画像を選択する処理を示すフローチャートである。
図12は、第3実施形態における、対象画像を選択する処理を示すフローチャートである。
S1200において、生成部203は、S1000からS1004で得られる被写体分類結果の中から着目分類を選択する。ここでの分類とは、S1000で選択された着目ML辞書により得られた分類であり、図11の例では「種」、「毛色」、「姿勢」、「マスク」及び「鞍」の何れかである。S1201において、生成部203は、着目分類に含まれるクラスの中から着目クラスを選択する。例えば、図11の例で、着目分類を「種」とした場合、着目クラスは「馬」、「シマウマ」、「ロバ」、「他」の何れかから決定される。
S1202において、生成部203は、着目クラスが紐づけ処理対象の条件を満たすか判定する。ここでの条件とは、学習画像全体に占める着目クラスに属する学習画像の割合が所定値以上であることとする。例えば所定値を5%とした場合、図11の例では、「種」の分類における「シマウマ」、「ロバ」、「他」のクラスは条件を満たさないと判定される。CNNの学習においては、学習画像に含まれていてもCNNの性能に十分な影響を及ぼさないことがある。よって、S1202における判定は、影響の小さいクラスに関する学習画像を対象画像に選択させない意図を持つ。着目クラスが紐づけ処理対象の条件を満たすと生成部203が判定した場合(S1202でYES)、処理はS1203へ進む。他方、着目クラスが紐づけ処理対象の条件を満たさないと生成部203が判定した場合(S1202でNO)、処理はS1205へ進む。
S1203において、生成部203は、該当画像群の内、着目クラスに分類された学習画像を対象画像として決定する。対象画像は着目クラスに分類された学習画像であれば何でもよい。例えば、図11において、着目分類が「種」、着目クラスが「馬」の場合であれば、当該クラスに分類された49000枚の学習画像の中の何れであっても良い。S1204において、生成部203は、記録媒体157に記録されたアイコン画像の中から、S1201で選択した着目クラスに対応するアイコン画像を、更なる対象画像として追加で選択する。また、着目分類に関して複数のクラスに対応するアイコン画像が対象画像として選択されている場合、それら複数のクラスを包含するアイコン画像が選択されても良い。例えば、図11の例では、着目分類が「毛色」の場合、「鹿毛」、「青毛」、「栗毛」及び「他色毛」の全てのクラスが紐づけ処理対象の条件を満たす。従って、これらの個別のクラスに対応するアイコン画像に替えて全色毛のクラスを表すアイコン画像が選択されても良い。
S1205において、生成部203は、S1200で着目分類に決定した分類に関して着目クラスに選択していないクラスが存在するか判定する。着目クラスに選択していないクラスが存在すると生成部203が判定した場合(S1205でYES)、処理はS1201に戻り、上述の処理が繰り返される。他方、着目クラスに選択していないクラスが存在しないと生成部203が判定した場合(S1205でNO)、処理はS1206に進む。S1206において、生成部203は、S1000からS1004で得られる被写体分類の結果の中から着目分類に選択されていない分類が存在するか判定する。着目分類に選択されていない分類が存在すると生成部203が判定した場合(S1206でYES)、処理はS1200に戻り、上述の処理が繰り返される。他方、着目分類に選択されていない分類が存在しないと生成部203が判定した場合(S1206でNO)、本処理は終了する。
以上のように、第3実施形態によれば、紐づけ処理対象の条件を満たす全ての分類及び全てのクラスに対応する学習画像及びアイコン画像が対象画像として選択される。アイコン画像はディスプレイ150の狭い表示範囲で多くの辞書特性を表現できるため、紐づけ処理対象の条件を満たすすべてのアイコン画像が対象画像として選択されることが望ましい。しかし、表示範囲が限られる場合には、S1206における判定を、第1、第2実施形態のS605における判定のように、終了条件を満たすか否かを判定する方法に変更しても良い。この場合、対象画像の選定は、所定の基準を満たす分類及びクラスから優先して決定することが望ましい。例えば1枚目の対象画像を選択する処理では、S1202における条件を満たすクラスが多い分類を優先し、更にその分類に属するクラスのうち分類された学習画像が多いクラスを優先することが望ましい。また、2枚目以降の対象画像を選択する処理では、S1202における処理対象の条件を満たすクラスが少ない分類を優先し、更にその分類に属するクラスのうち分類された学習画像が少ないクラスを優先することが望ましい。このような基準によれば、1枚目の対象画像の選択では、代表的な画像(学習画像およびアイコン画像)が選択されやすく、2枚目以降の対象画像の選択では、特殊な画像(学習画像およびアイコン画像)が選択されやすくなる。
(辞書特性の表示例)
上述のS1203において対象画像として決定された学習画像を用いて辞書特性を表示することができる。この場合の表示例は、第1実施形態(図8A、8B)と同様である。一方、第3実施形態では、S1204で対象画像に決定されたアイコン画像を用いて辞書特性を表示することもできる。図13A、13Bは、第3実施形態におけるS504において、切替制御部201がディスプレイ150に表示する切替画面の表示例を示す図である。図13A、13Bには、第3実施形態による、アイコン画像を用いて辞書特性を表現した表示例が示されている。なお、図8A、8Bのように学習画像を用いて辞書特性を表現する表示と、図13A、13Bのようにアイコン画像を用いて辞書特性を表現する表示とは、ユーザが任意に切り替えて表示させるようにしてもよい。
上述のS1203において対象画像として決定された学習画像を用いて辞書特性を表示することができる。この場合の表示例は、第1実施形態(図8A、8B)と同様である。一方、第3実施形態では、S1204で対象画像に決定されたアイコン画像を用いて辞書特性を表示することもできる。図13A、13Bは、第3実施形態におけるS504において、切替制御部201がディスプレイ150に表示する切替画面の表示例を示す図である。図13A、13Bには、第3実施形態による、アイコン画像を用いて辞書特性を表現した表示例が示されている。なお、図8A、8Bのように学習画像を用いて辞書特性を表現する表示と、図13A、13Bのようにアイコン画像を用いて辞書特性を表現する表示とは、ユーザが任意に切り替えて表示させるようにしてもよい。
まず、図13Aについて説明する。切替画面13aにおいて、アイテム800、801、及び切替ボタン808は、第1実施形態(図8A、8B)と同様である。アイテム1002aは表示対象のML辞書であり、記録媒体157に記録されている当該ML辞書のファイル名である「001」と併記されている。エリア1003aは、辞書特性を表現するエリアであり、アイコン画像1004aに代表される、辞書特性を表現する複数のアイコン画像が表示される。アイコン画像1004aはS1204において対象画像として選択されたアイコン画像の例である。第3実施形態における対象画像選択処理では、画像数に制約を設けることなく、全ての分類、全てのクラスに対応するアイコン画像の判定を行うため、辞書の特性をより総合的に表現することができる。図13Bは、切替画面13aとは別のML辞書について、第3実施形態による辞書特性の表示を行った切替画面13bの例である。エリア1003aにおける「全姿勢」のアイコン画像1004bは、図11の「4足立ち」「2足立ち」「伏せ」「寝」の全てのクラスを一括して表すアイコン画像である。なお、アイコン画像は、図13A、13Bに示されるような、クラスを表す文字列表記の他、クラスを表す図形や写真など、ユーザがクラスを把握できるような画像であればよい。
以上、第3実施形態により、複数のアイコン画像が表示され、ユーザはそれらを確認することで、予め総合的な辞書特性を把握した上で、適用するML辞書を選択することができる。
<第4実施形態>
(全体構成)
第1実施形態~第3実施形態では、撮像装置100内の画像処理装置(被写体検出部162、被写体分類部163、辞書切替部164など)により、ML辞書の特性表現を取得する構成を説明した。第4実施形態では、外部の画像処理装置(例えば、クラウドシステム)によりML辞書の特性表現を取得し、これを撮像装置へ提供する構成を説明する。図14は、第4実施形態による画像処理システム1400の全体構成例を示す図である。画像処理システム1400は、撮像装置1401、撮像装置1402、クラウドシステム1403、ネットワーク1404を備える。撮像装置1401、撮像装置1402及びクラウドシステム1403はネットワーク1404を介してそれぞれ通信可能に接続されている。撮像装置1401及び撮像装置1402の詳細構成は、第1実施形態における撮像装置100と同じである。但し、辞書切替部164は、ML辞書の特性を表現するための対象画像を取得する機能を有していなくてよい。クラウドシステム1403は、撮像装置1401、撮像装置1402と通信可能な画像処理装置の一例である。また、撮像装置の外部装置としての画像処理装置は、クラウドシステム1403に限られるものではなく、例えば、LAN上のサーバ装置により実現されてもよい。
(全体構成)
第1実施形態~第3実施形態では、撮像装置100内の画像処理装置(被写体検出部162、被写体分類部163、辞書切替部164など)により、ML辞書の特性表現を取得する構成を説明した。第4実施形態では、外部の画像処理装置(例えば、クラウドシステム)によりML辞書の特性表現を取得し、これを撮像装置へ提供する構成を説明する。図14は、第4実施形態による画像処理システム1400の全体構成例を示す図である。画像処理システム1400は、撮像装置1401、撮像装置1402、クラウドシステム1403、ネットワーク1404を備える。撮像装置1401、撮像装置1402及びクラウドシステム1403はネットワーク1404を介してそれぞれ通信可能に接続されている。撮像装置1401及び撮像装置1402の詳細構成は、第1実施形態における撮像装置100と同じである。但し、辞書切替部164は、ML辞書の特性を表現するための対象画像を取得する機能を有していなくてよい。クラウドシステム1403は、撮像装置1401、撮像装置1402と通信可能な画像処理装置の一例である。また、撮像装置の外部装置としての画像処理装置は、クラウドシステム1403に限られるものではなく、例えば、LAN上のサーバ装置により実現されてもよい。
撮像装置1401は、撮像装置100と同様に構成され、ユーザが学習用画像の撮影を行うと共に、被写体検出部162に適用可能なML辞書の機械学習を行う。また機械学習によって得られたML辞書及び機械学習に用いた複数の学習画像(以下、該当画像群)を、ネットワーク1404を介してクラウドシステム1403にアップロードする。ここでの該当画像群は、機械学習に用いた全ての学習画像を含むことが望ましいが、本開示の実施形態により得られる効果が損なわれない範囲で、無作為抽出された学習画像が用いられても良い。撮像装置1402は、撮像装置100と同様の構成を有し、クラウドシステム1403から提供された環境を利用することができる。例えば、撮像装置1402は、クラウドシステム1403からML辞書をダウンロードし、被写体検出部162に適用して、撮像画像に対して被写体検出機能を利用する。クラウドシステム1403はユーザからアップロードされた複数のML辞書、及び各々のML辞書に対する複数の学習画像を記録する。またML辞書の性能を表現し、複数のML辞書をユーザがダウンロード可能な環境を提供する。なお、図14においては、便宜上1つずつのアップロードを行う撮像装置1401、ダウンロードを行う撮像装置1402が示されているがこれに限られるものではない。例えば、複数の撮像装置から複数のML辞書がクライアントシステム1403にアップロードされてもよい。
(クラウドシステムの構成)
図15は第4実施形態によるクラウドシステム1403の構成例を示すブロック図である。クラウドシステム1403の各機能部は、バス1500を介して接続されている。制御部1501は、各機能部を制御する。記録部1502は、HDDなどの大容量記録媒体であり、撮像装置1401からアップロードされた複数のML辞書や、被写体分類部1506に適用可能な複数のML辞書が記録される。なお、撮像装置1401からアップロードされた複数のML辞書には、各々の機械学習に用いた学習画像や、紐づけ情報も併せて記録される。また、被写体分類部1506に適用されるML辞書には、被写体分類結果の各分類、各クラスに対応したアイコン画像も併せて記録される。通信部1503は、イーサネットや無線により撮像装置1401や撮像装置1402と接続を行い、ML辞書や学習画像などのML辞書に関連する情報を通信する。
図15は第4実施形態によるクラウドシステム1403の構成例を示すブロック図である。クラウドシステム1403の各機能部は、バス1500を介して接続されている。制御部1501は、各機能部を制御する。記録部1502は、HDDなどの大容量記録媒体であり、撮像装置1401からアップロードされた複数のML辞書や、被写体分類部1506に適用可能な複数のML辞書が記録される。なお、撮像装置1401からアップロードされた複数のML辞書には、各々の機械学習に用いた学習画像や、紐づけ情報も併せて記録される。また、被写体分類部1506に適用されるML辞書には、被写体分類結果の各分類、各クラスに対応したアイコン画像も併せて記録される。通信部1503は、イーサネットや無線により撮像装置1401や撮像装置1402と接続を行い、ML辞書や学習画像などのML辞書に関連する情報を通信する。
表示画像生成部1504は、表示画像を生成し、通信部1503を介して撮像装置1401及び撮像装置1401のユーザに、ML辞書のアップロードやダウンロードに用いるGUIを提供する。被写体検出部1505は、記録部1502に記録されたML辞書を適用し、画像に対して馬などの被写体が存在する領域を決定する。被写体検出部1505は、撮像装置1401及び撮像装置1402における被写体検出部162と同一のCNNによって構成されているものとする。被写体分類部1506は、記録部1502に記録されたML辞書を適用し、画像内の被写体が予め定めた何れのクラスに属するかを分類する。被写体分類部1506は、撮像装置1401及び撮像装置1402における被写体分類部163と同一のCNNによって構成されているものとする。
(全体処理の流れ)
図16A~図16Cは、第4実施形態によるクラウドシステム1403の全体処理を示すフローチャートである。撮像装置1401、クラウドシステム1403、撮像装置1402の各々の処理について図16A、図16B及び図16Cを用いて説明する。
図16A~図16Cは、第4実施形態によるクラウドシステム1403の全体処理を示すフローチャートである。撮像装置1401、クラウドシステム1403、撮像装置1402の各々の処理について図16A、図16B及び図16Cを用いて説明する。
図16Aは第4実施形態による撮像装置1401の全体処理を示すフローチャートである。S1600において、切替制御部201は、ユーザから操作スイッチ156を介してML辞書のアップロード操作が行われたか判定する。アップロード操作が行われていると切替制御部201が判定した場合(S1600でYES)、処理はS1601に進み、アップロード操作が行われていないと切替制御部201が判定した場合(S1600でNO)、処理はS1603に進む。
S1601において、切替制御部201は、通信部161を介して、外部の装置であるクラウドシステム1403に対してアップロード要求を行う。次に、S1602において、切替制御部201は、記録媒体157に記録されたML辞書及び当該ML辞書の学習に用いられた複数の学習画像を、通信部161を介してクラウドシステム1403に送信する。S1603において、切替制御部201は、ユーザから操作スイッチ156を介して終了指示があるか判定する。終了指示がないと切替制御部201が判定した場合(S1603でNO)、処理はS1600に戻り、上述した処理が繰り返される。他方、終了指示があると切替制御部201が判定した場合(S1603でYES)、本処理は終了する。
図16Bは第4実施形態によるクラウドシステム1403の全体処理を示すフローチャートである。まず、S1610において、制御部1501は、通信部1503を介して、外部の装置(本例では撮像装置1401)からML辞書のアップロード要求があるか判定する。アップロード要求があると制御部1501が判定した場合(S1610でYES)、処理はS1611に進む。アップロード要求がないと制御部1501が判定した場合(S1610でNO)、処理はS1613に進む。
S1611において、制御部1501は、通信部1503を介して、アップロード要求元の撮像装置1401からML辞書及びML辞書の学習に用いた複数の学習画像を受信し、記録部1502に記録する。S1612において、制御部1501は、S1611で記録部1502に記録したML辞書及びML辞書の学習に用いた複数の学習画像を読み出して紐づけ情報を生成する。S1612における紐づけ情報の生成処理の詳細は、クラウドシステム1403の各部により実行される点を除いて、第1実施形態または第2実施形態(S503)と同様である。
S1613において、制御部1501は、通信部1503を介して、外部の装置(本例では、撮像装置1402)からML辞書特性の表示要求があるか判定する。表示要求があると制御部1501が判定した場合(S1613でYES)、処理はS1614に進み、表示要求が無いと制御部1501が判定した場合(S1613でNO)、処理はS1610に戻る。S1614において、表示画像生成部1504は、S1612で生成した紐づけ情報と、ML辞書と、ML辞書に対応した複数の学習画像とに基づいて、ML辞書の特性を表現する特性表現画像を生成する。そして、表示画像生成部1504は、通信部1503を介して、生成した特性表現画像を、表示要求元の撮像装置1402に送信する。なお、S1614における処理の詳細は、クラウドシステム1403の各部により実行される点を除いて、第1実施形態または第2実施形態(S504)と同様である。
S1615において、制御部1501は、通信部161を介して、外部の装置(本例では、撮像装置1402)からML辞書のダウンロード要求が受信されたか判定する。ダウンロード要求が受信されたと制御部1501が判定した場合(S1615でYES)、処理はS1616に進み、ダウンロード要求が受信されていないと制御部1501が判定した場合(S1615でNO)、処理はS1610に戻る。S1616において、制御部1501は、記録部1502に記録された複数のML辞書のうち、S1614で辞書特性を表現したML辞書と、同ML辞書に対してS1612で生成した紐づけ情報とを、通信部1503を介して、ダウンロード要求元の撮像装置1402に送信する。
図16Cは第4実施形態における撮像装置1402の全体処理を示すフローチャートである。S1620において、ユーザから操作スイッチ156を介して、辞書特性の表示操作があるか判定する。表示操作があると切替制御部201が判定した場合(S1620でYES)、処理はS1621に進み、表示操作がないと切替制御部201が判定した場合(S1620でNO)、処理はS1623に進む。
S1621において、切替制御部201は、通信部161を介して、外部の装置であるクラウドシステム1403にML辞書特性の表示要求を送信する。S1622において、切替制御部201は、通信部161を介して、クラウドシステム1403からML辞書の特性表現画像を受信し、ディスプレイ150に表示する。特性表現画像は、例えば、第1実施形態(図8A、8B)で示した切替画面の表示例と同様である。
S1623において、切替制御部201は、操作スイッチ156を介してユーザから特性表現画像において特性を表現されたML辞書に対し、ダウンロード操作があるか判定する。ダウンロード操作があると切替制御部201が判定した場合(S1623でYES)、処理はS1624に進み、ダウンロード操作がないと切替制御部201が判定した場合(S1623NO)、処理はS1626に進む。S1624において、切替制御部201は、通信部161を介して、外部の装置であるクラウドシステム1403にML辞書のダウンロード要求を送信する。S1625において、切替制御部201は、通信部161を介して、クラウドシステム1403からML辞書と、当該ML辞書に対して生成された紐づけ情報(例えば、対象画像)を受信し、記録媒体157に記録する。
S1626において、切替制御部201は、ユーザから操作スイッチ156を介して、S1625で記録媒体157に記録したML辞書を被写体検出部162に適用するように切り替える操作が行われたか判定する。切り替え操作が行われたと切替制御部201が判定した場合(S1626でYES)、処理はS1627に進み、切り替え操作が行われていないと切替制御部201が判定した場合(S1626でNO)、処理はS1628に進む。S1627において、切替制御部201は、ユーザからの切り替え操作に基づき、被写体検出部162に適用するML辞書を切り替える。以降、撮像装置1402におけるスルー画像や撮像画像に対して、S1627で切り替えられたML辞書による被写体検出処理が可能になる。S1628において、切替制御部201は、操作スイッチ156を介してユーザからの終了指示がなされたかを判定する。終了指示がなされていると切替制御部201が判定した場合(S1628でYES)、本処理は終了する。終了指示がなされていないと切替制御部201が判定した場合(S1628でNO)、処理はS1620に戻り、上述した処理が繰り返される。
以上のように、第4実施形態によれば、撮像装置は、クラウドシステムから、表示対象のML辞書に関して、その特性を表現する情報として代表的な特徴や、特殊な特徴を備えた学習画像を取得し、表示することができる。従って、撮像装置のユーザはそれらを確認することで、撮像装置に負荷をかけることなく予めおおまかな辞書特性を把握した上で、ML辞書をダウンロード及び適用することができる。
なお、上記ではS1612の紐づけ情報生成処理、S1614(S1622)の特性表現画像を取得するための構成として、第1実施形態または第2実施形態の構成を採用したがこれに限られるものではない。S1612の紐づけ情報生成処理、S1614(S1622)の特性表現画像を取得するための構成として、第3実施形態の構成が採用されてもよい。この場合、S1612による紐づけ情報の生成処理は、クラウドシステム1403の各部により実行される点を除いて、第3実施形態(図10、図12)と同様となる。また、S1614においてクラウドシステム1403で生成され、S1622において撮像装置1402の通信部161を介して受信され、表示されるML辞書の特性表現画像は、第3実施形態において図13A、13Bに示した例と同様である。
以上のような第4実施形態によれば、クラウドシステムによりアイコン画像が表示され、ユーザはそれらを確認することで、撮像装置に負荷をかけることなく予め総合的な辞書特性を把握した上で、ML辞書をダウンロード及び適用することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
本願は、2022年11月25日提出の日本国特許出願特願2022-188698を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
Claims (22)
- 機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得手段と、
前記複数の学習画像から、前記辞書の特性を表す情報として用いられる1つ以上の学習画像を選択する選択手段と、
前記選択手段により選択された前記1つ以上の学習画像と前記辞書とを紐づける紐づけ情報を生成する生成手段と、を備えることを特徴とする画像処理装置。 - 前記選択手段は、前記複数の学習画像から得られる複数の特徴ベクトルに基づいて前記1つ以上の学習画像を選択すること、を特徴とする請求項1に記載の画像処理装置。
- 機械学習により得られた複数の辞書の1つを用いて画像から被写体を検出する検出手段をさらに備え、
前記選択手段は、前記複数の学習画像を前記検出手段に投入することにより前記検出手段から得られる中間データを前記複数の特徴ベクトルとして取得すること、を特徴とする請求項2に記載の画像処理装置。 - 前記選択手段は、前記複数の特徴ベクトルのうちの、前記複数の特徴ベクトルの平均ベクトルとの距離が最も小さい特徴ベクトルの学習画像を選択すること、を特徴とする請求項2または3に記載の画像処理装置。
- 前記選択手段は、前記複数の特徴ベクトルから、前記複数の特徴ベクトルの平均ベクトルとの距離が大きい順に所定数の特徴ベクトルを選択し、前記所定数の特徴ベクトルに対応する所定数の学習画像を選択すること、を特徴とする請求項2乃至4のいずれか1項に記載の画像処理装置。
- 前記選択手段は、前記複数の特徴ベクトルから、前記平均ベクトルとの距離が最も小さい特徴ベクトルとの差が大きい順に所定数の特徴ベクトルを選択し、前記所定数の特徴ベクトルに対応する所定数の学習画像を選択すること、を特徴とする請求項4に記載の画像処理装置。
- 前記選択手段は、前記検出手段が前記辞書を用いて学習画像から被写体を検出することができるという条件を満たす学習画像の中から、前記1つ以上の学習画像を選択すること、を特徴とする請求項3に記載の画像処理装置。
- 前記選択手段は、取得される特徴ベクトルとの距離が所定値より小さい特徴ベクトルを有する他の学習画像が前記複数の学習画像に所定の割合を越えて存在するという条件を満たす学習画像の中から、前記1つ以上の学習画像を選択すること、を特徴とする請求項2乃至7のいずれか1項に記載の画像処理装置。
- 前記紐づけ情報に基づいて、前記辞書と前記1つ以上の学習画像とを関連付けて表示するための表示情報を生成する表示情報生成手段をさらに備えること、を特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
- 前記複数の学習画像を複数のクラスに分類する分類手段を更に備え、
前記選択手段は、前記分類手段に前記複数の学習画像を投入して得られる分類結果に基づいて学習画像を選択すること、を特徴とする請求項1に記載の画像処理装置。 - 前記選択手段は、前記複数のクラスのうち前記分類結果において最も多くの学習画像が分類されたクラスに属する学習画像を選択すること、を特徴とする請求項10に記載の画像処理装置。
- 前記選択手段は、前記複数のクラスのうち、前記分類結果において分類された学習画像の数が少ない順に選択された所定数のクラスから所定数の学習画像を選択すること、を特徴とする請求項10に記載の画像処理装置。
- 前記選択手段は、分類された学習画像の数の前記複数の学習画像の数に対する割合が所定値以上であるクラスに属する学習画像から、前記1つ以上の学習画像を選択すること、を特徴とする請求項10乃至12のいずれか1項に記載の画像処理装置。
- 前記選択手段は、前記複数のクラスに対応する複数のアイコン画像から、前記1つ以上の学習画像のそれぞれが属するクラスに対応する1つ以上のアイコン画像を更に選択し、
前記生成手段は、前記辞書と前記1つ以上のアイコン画像とを紐づける情報を前記紐づけ情報に含ませること、を特徴とする請求項10乃至13のいずれか1項に記載の画像処理装置。 - 前記紐づけ情報に基づいて、前記辞書と、前記1つ以上の学習画像または前記1つ以上のアイコン画像とを関連付けて表示するための表示情報を生成する表示情報生成手段を更に備えること、を特徴とする請求項14に記載の画像処理装置。
- 機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得手段と、
前記複数の学習画像を複数のクラスに分類する分類手段と、
前記複数のクラスに対応する複数のアイコン画像から、前記分類手段による前記複数の学習画像の分類結果に基づいて、前記辞書の特性を表す情報として用いられる1つ以上のアイコン画像を選択する選択手段と、
前記選択手段により選択された前記1つ以上のアイコン画像と前記辞書とを紐づける紐づけ情報を生成する生成手段と、を備えることを特徴とする画像処理装置。 - 前記辞書と前記複数の学習画像とを外部装置から受信する受信手段と、
前記辞書と前記紐づけ情報とを外部装置に送信する送信手段とを更に備えること、を特徴とする請求項1乃至16のいずれか1項に記載の画像処理装置。 - 撮像手段と、
請求項1乃至16のいずれか1項に記載された画像処理装置と、
前記撮像手段により撮像された画像から被写体を検出する検出手段に適用される辞書を、ユーザ操作に応じて切り替える切替手段と、
前記紐づけ情報に基づいて、前記切替手段により切り替えられる辞書の特性を表示する表示手段と、を備える、ことを特徴とする撮像装置。 - 撮像手段と、
請求項17に記載された画像処理装置と通信する通信手段と、
前記撮像手段により撮像された画像から被写体を検出する検出手段に適用される辞書を、ユーザ操作に応じて切り替える切替手段と、
前記通信手段により前記画像処理装置から受信された前記紐づけ情報に基づいて、前記切替手段により切り替えられる辞書の特性を表示する表示手段と、を備える、ことを特徴とする撮像装置。 - 機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得工程と、
前記複数の学習画像から、前記辞書の特性を表す情報として用いられる1つ以上の学習画像を選択する選択工程と、
前記選択工程により選択された前記1つ以上の学習画像と前記辞書とを紐づける紐づけ情報を生成する生成工程と、を備えることを特徴とする画像処理装置の制御方法。 - 機械学習により得られた辞書と、前記辞書の前記機械学習に用いられた複数の学習画像とを取得する取得工程と、
前記複数の学習画像を複数のクラスに分類する分類工程と、
前記複数のクラスに対応する複数のアイコン画像から、前記分類工程による前記複数の学習画像の分類結果に基づいて、前記辞書の特性を表す情報として用いられる1つ以上のアイコン画像を選択する選択工程と、
前記選択工程により選択された前記1つ以上のアイコン画像と前記辞書とを紐づける紐づけ情報を生成する生成工程と、を備えることを特徴とする画像処理装置の制御方法。 - 画像処理装置を、請求項1乃至17のいずれか1項に記載された画像処理装置の各手段として機能させるためのプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022-188698 | 2022-11-25 | ||
JP2022188698A JP2024076885A (ja) | 2022-11-25 | 2022-11-25 | 画像処理装置及びその制御方法、撮像装置、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024111246A1 true WO2024111246A1 (ja) | 2024-05-30 |
Family
ID=91195353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/035350 WO2024111246A1 (ja) | 2022-11-25 | 2023-09-28 | 画像処理装置及びその制御方法、撮像装置、プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024076885A (ja) |
WO (1) | WO2024111246A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014010752A (ja) * | 2012-07-02 | 2014-01-20 | Glory Ltd | 帳票登録支援方法及び装置並びにプログラム |
WO2021095693A1 (ja) * | 2019-11-14 | 2021-05-20 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
-
2022
- 2022-11-25 JP JP2022188698A patent/JP2024076885A/ja active Pending
-
2023
- 2023-09-28 WO PCT/JP2023/035350 patent/WO2024111246A1/ja unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014010752A (ja) * | 2012-07-02 | 2014-01-20 | Glory Ltd | 帳票登録支援方法及び装置並びにプログラム |
WO2021095693A1 (ja) * | 2019-11-14 | 2021-05-20 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2024076885A (ja) | 2024-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022151589A1 (zh) | 图像增强方法、装置、设备及存储介质 | |
EP2945102A1 (en) | Image processing apparatus, method of processing image, and program | |
WO2022241784A1 (zh) | 缺陷检测方法及装置、存储介质及电子设备 | |
JP2018055259A (ja) | 情報処理装置、情報処理方法及びプログラム | |
GB2595558A (en) | Exposure defects classification of images using a neural network | |
KR102628898B1 (ko) | 인공 지능 기반의 영상 처리 방법 및 이를 수행하는 영상 처리 장치 | |
JP7228961B2 (ja) | ニューラルネットワークの学習装置およびその制御方法 | |
US20200412982A1 (en) | Laminated image pickup device, image pickup apparatus, image pickup method, and recording medium recorded with image pickup program | |
KR20150026123A (ko) | 디지털 영상 처리 방법 및 디지털 영상 처리 장치 | |
JP7403995B2 (ja) | 情報処理装置、制御方法およびプログラム | |
JP2021071794A (ja) | 主被写体判定装置、撮像装置、主被写体判定方法、及びプログラム | |
CN112085768A (zh) | 光流信息预测方法、装置、电子设备和存储介质 | |
KR20210087249A (ko) | 촬영장치 및 그 제어방법 | |
WO2024111246A1 (ja) | 画像処理装置及びその制御方法、撮像装置、プログラム | |
KR20190093285A (ko) | 드론을 이용한 예술사진 촬영방법 및 그 기능을 갖는 드론 | |
JP7054603B2 (ja) | 判定装置、判定方法、及び判定プログラム | |
JP7286330B2 (ja) | 画像処理装置及びその制御方法、プログラム、記憶媒体 | |
KR20230123226A (ko) | Ai 기반 객체인식을 통한 감시 카메라 영상의 노이즈 제거 | |
WO2021024860A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
KR20230064959A (ko) | Ai 기반 객체인식을 통한 감시카메라 wdr 영상 처리 | |
JP7166951B2 (ja) | 学習依頼装置、学習装置、推論モデル利用装置、推論モデル利用方法、推論モデル利用プログラム及び撮像装置 | |
JP7566471B2 (ja) | 画像処理装置、撮像装置、画像処理方法およびプログラム | |
WO2023210856A1 (ko) | 오토 포커스 조절 방법 및 이를 이용한 카메라 장치 | |
EP4362484A1 (en) | Method and apparatus with autofocus | |
KR20230131601A (ko) | 파노라마 감시 영상의 생성 |
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: 23894258 Country of ref document: EP Kind code of ref document: A1 |