WO2020240809A1 - 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム - Google Patents
学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム Download PDFInfo
- Publication number
- WO2020240809A1 WO2020240809A1 PCT/JP2019/021679 JP2019021679W WO2020240809A1 WO 2020240809 A1 WO2020240809 A1 WO 2020240809A1 JP 2019021679 W JP2019021679 W JP 2019021679W WO 2020240809 A1 WO2020240809 A1 WO 2020240809A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- images
- class
- feature map
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
Definitions
- the present invention relates to an image processing method using machine learning, and more particularly to a learning method for classifying objects existing in an image and a technical field of the classification method using a convolutional neural network.
- a convolutional neural network is generally adopted as a model for processing an image.
- This network has a plurality of convolution layers and repeats a convolution operation on an image to generate a feature map of the image. From this feature map, the objects existing in the image are classified (for example, Non-Patent Document 1).
- the present invention has been made in view of the above points, and one example of the subject is to automatically increase the number of learning images to improve the classification accuracy and classify each of a plurality of objects existing in the images. It is an object of the present invention to provide a learning device, a classification device, a learning method, a classification method, a learning program, and a classification program capable of generating a model for the purpose.
- one aspect of the present invention is a feature extraction unit including a plurality of convolution layers, which outputs a feature map of an image in which one or more objects exist, and the feature.
- a generation means for generating a model for classifying one or more objects including a coordinate estimation unit that outputs coordinates of a region where the object exists in the image based on a map, and the above.
- a storage control means for storing the generated model in the model storage means, and the generation means includes an image acquisition means for acquiring a plurality of images in which one or more objects are present from the image storage means, and the acquisition means.
- the output feature map is input to the coordinate estimation unit, and the coordinates of the region of the image in which the object exists.
- a coordinate output control means for outputting at least one image, an extraction means for extracting an image of a portion indicated by the output coordinates from the image for each of the one or more images, and the extracted image are used.
- a learning device comprising a second training means for further training the feature extraction unit trained by the first training means.
- an image corresponding to a region where one or more objects exist is extracted from the image used for the first learning by the feature extraction unit. Therefore, it is possible to automatically increase the number of images that are different from the image used in the first learning in the proportion and position of the area where the object exists. By further training the feature extraction unit using these images, it is possible to improve the classification accuracy and generate a model for classifying each of a plurality of objects existing in the image.
- the model further comprises at least one class estimator that outputs class information indicating the class of each of the one or more objects based on the feature map, wherein the first training means.
- the feature extraction unit and a predetermined first class estimation unit among the at least one class estimation unit are trained using the acquired plurality of images, and the second training means is acquired.
- the learning device is characterized in that the feature extraction unit and a predetermined second class estimation unit among the at least one class estimation unit are trained by using a plurality of images.
- Another aspect of the present invention is a learning device, wherein the second class estimation unit is a class estimation unit different from the first class estimation unit among the at least one class estimation unit. ..
- the tendency of the extracted image can be improved when is different from the tendency of the original image.
- Yet another aspect of the present invention is a learning device characterized in that the second class estimation unit is the same as the first class estimation unit.
- the extracted image since the first class estimation unit used for the first learning by the feature extraction unit and the second class estimation unit used for the second learning by the feature extraction unit are the same, the extracted image.
- the classification accuracy can be improved when the tendency of is consistent with or similar to the tendency of the original image.
- the coordinate output control means uses the coordinate estimation unit to obtain the coordinates of a region in which each of the plurality of objects exists in an image in which a plurality of objects exist among the plurality of images. It is a learning device characterized by outputting at least one of each.
- the coordinate output control means causes the coordinate estimation unit to output the coordinates of each of a plurality of different regions for at least one of the one or more objects. It is a learning device.
- various images can be added to one object as learning images.
- Yet another aspect of the present invention is one or more by a reading means for reading the model from a storage means for storing the model generated by the learning device and the feature extraction unit included in the read model.
- One or more objects by the feature map output control means for outputting the feature map of a given image in which the object of the present exists and the read model based on the feature map of the output given image.
- It is a classification device including a class information output control means for outputting class information indicating each class.
- a model including a feature extractor trained using the images extracted from these images is used, so that a plurality of objects existing in the images can be used.
- the classification accuracy can be improved.
- Yet another aspect of the present invention is a feature extraction unit that includes a plurality of convolution layers and outputs a feature map of an image in which one or more objects exist in a learning method executed by a computer.
- a generation step for generating a model for classifying one or more objects including a coordinate estimation unit that outputs the coordinates of a region of the image in which the object exists based on the feature map.
- a storage control step for storing the generated model in the model storage means, and the generation step includes an image acquisition step for acquiring a plurality of images in which one or more objects are present from the image storage means.
- the first training step of training the feature extraction unit using the acquired plurality of images, and the feature extraction unit trained by the first training step, one or more of the plurality of images, respectively.
- the output feature map is input to the coordinate estimation unit, and the region of the image where the object exists.
- Yet another aspect of the present invention includes a read-out step of reading out the model from a storage means for storing the model generated by the learning device in a classification method executed by a computer, and the read-out model.
- the feature map output control step for outputting a feature map of a given image in which one or more objects exist, and the feature map of the output given image are read out based on the feature extraction unit. It is characterized by including a class information output control step for outputting class information indicating a class of each of the one or more objects according to the model.
- Yet another aspect of the present invention is that in a learning program executed by a computer, the computer is a feature extraction unit including a plurality of convolution layers and outputs a feature map of an image in which one or more objects exist. Generate a model for classifying one or more objects including an extraction unit and a coordinate estimation unit that outputs coordinates of a region of the image in which the object exists based on the feature map.
- the generation means is made to function as a generation means for storing the generated model and a storage control means for storing the generated model in the model storage means, and the generation means acquires a plurality of images in which one or more objects are present from the image storage means.
- the image acquisition means the first training means for training the feature extraction unit using the acquired plurality of images, and the feature extraction unit trained by the first training means.
- the feature map output control means for outputting the feature map of each of the one or more images and the output feature map for each of the one or more images are input to the coordinate estimation unit, and the object of the images
- a coordinate output control means for outputting at least one coordinate of a region of an existing portion, an extraction means for extracting an image of a portion indicated by the output coordinates from the image for each of the one or more images, and the above-mentioned It is characterized by including a second training means for further training the feature extraction unit trained by the first training means using the extracted image.
- the computer is provided with a reading means for reading the model from a storage means for storing the model generated by the learning device, and a feature extraction unit included in the read model.
- the feature map output control means for outputting the feature map of a given image in which one or more objects exist, and the read model based on the feature map of the output given image, the above 1 It is a classification program characterized by functioning as a class information output control means for outputting class information indicating a class of each of the above objects.
- the present invention it is possible to automatically increase the number of images for learning to improve the classification accuracy and generate a model for classifying each of a plurality of objects existing in the image.
- an image processing device that classifies objects by executing learning to generate a model for estimating a class of objects existing in an image and using the generated model. This is an embodiment when the present invention is applied.
- the device that executes learning and the device that estimates the class may be separate devices.
- FIG. 1 is a block diagram showing an example of an outline configuration of the image processing device 1 according to the present embodiment.
- the image processing unit 1 includes a system control unit 11, a system bus 12, an input / output interface 13, a storage unit 14, a communication unit 15, an input unit 16, and a display unit 17. It includes a GPU (Graphics Processing Unit) 18 and a GPU memory 19 (or video RAM).
- the system control unit 11 and the input / output interface 13 are connected via the system bus 12.
- the image processing device 1 may be, for example, a server device or a personal computer.
- the system control unit 11 is composed of a CPU (Central Processing Unit) 11a, a ROM (Read Only Memory) 11b, a RAM (Random Access Memory) 11c, and the like.
- a CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- the input / output interface 13 performs interface processing between the storage units 14 to the GPU memory 19 and the system control unit 11.
- the storage unit 14 is composed of, for example, a hard disk drive, a solid state drive, or the like.
- the generated model 2 and a plurality of training data used for generating the model 2 are stored in the storage unit 14.
- the storage unit 14 further stores an operating system, a model generation program, a classification program, and the like.
- the training data and various programs may be acquired from a predetermined computer via a network, or may be recorded on a recording medium such as an optical disk, a memory card, or a magnetic tape and read via a drive device. It may be.
- the device for generating the model 2 and the device for classifying are separate devices, the generated model 2 may be delivered via a network or a recording medium. ..
- the communication unit 15 is composed of, for example, a network interface controller or the like.
- the communication unit 15 connects to another computer via a predetermined network such as the Internet or a LAN (Local Area Network), and controls the communication state with the computer.
- a predetermined network such as the Internet or a LAN (Local Area Network)
- the input unit 16 receives an operation by the operator and outputs a signal corresponding to the operation content to the system control unit 11.
- Examples of the input unit 16 include a keyboard, a mouse, a touch panel, and the like.
- the display unit 17 is composed of, for example, a graphic controller, a display, and the like.
- the display unit 17 displays information such as images and characters under the control of the system control unit 11.
- Examples of display panels include liquid crystal panels, organic EL (Light Emitting) panels, and the like.
- the GPU 18 executes matrix operations and the like in machine learning under the control of the system control unit 11.
- the GPU 18 pipelines a plurality of operations in parallel.
- the GPU 18 and the GPU memory 19 are connected.
- the GPU memory 19 stores data and calculation results used in the calculation by the GPU 18.
- FIG. 2 is a diagram showing an example of functional blocks of the system control unit 11 and the GPU 18 of the image processing device 1 according to the present embodiment.
- the system control unit 11 and the GPU 18 read and execute various codes and the like included in the program stored in the storage unit 14 by the CPU 11a, so that the image acquisition unit 111 and the first training unit 112 , Coordinate output control unit 113, image extraction unit 114, second training unit 115, model storage control unit 116, model reading unit 117, feature map output control unit 118, class information output control unit 119, and the like.
- FIG. 3 is a diagram showing a configuration example of the model 2.
- the image acquisition unit 111 to the second training unit 115 generate the model 2 by machine learning.
- the model 2 is a convolutional neural network including a feature extraction unit 21, an overall image class estimation unit 22, a coordinate estimation unit 23, and a partial image class estimation unit 24.
- Examples of network models on which Model 2 is based include ResNet, GoogleNet, AlexNet, and VGGNet.
- the feature extraction unit 21 includes a plurality of convolutional layers.
- the feature extraction unit 21 outputs the feature map 32 of the image 31 input to the model 2.
- the classes of the objects may be the same or different from each other.
- the feature extraction unit 21 repeats the convolution operation on the image 31 by these convolution layers, and outputs the feature map 32 for each class in which the model 2 can be classified.
- the feature extraction unit 21 may appropriately include a layer such as a pooling layer.
- the overall image class estimation unit 22 outputs class information indicating the classes of one or more objects existing in the image 31 based on the feature map 32 output from the feature extraction unit 21.
- the class estimation unit 22 includes one or more fully connected layers.
- the class estimation unit 22 converts the feature map 32 in the fully connected layer, and outputs information indicating whether or not an object of that class exists for each class as class information.
- the whole image class estimation unit 22 may include, for example, one fully connected layer for each class or a plurality of fully connected layers connected in series.
- the feature map 32 corresponding to a certain class i is referred to as a feature map 32-i
- the fully connected layer corresponding to the class i is referred to as a fully connected layer i.
- the fully connected layer i connects the elements in the feature map 32-i and outputs the probability value of each class. For example, when the probability value of class i is equal to or higher than a predetermined value among these probability values, it is estimated that the object of class i exists in the image 31. When there are objects of a plurality of classes in the image 31, the whole image class estimation unit 22 can estimate that the objects of each of these classes exist. In the classification stage after learning is completed, for example, the probability value of each class is converted to 0 or 1. For example, a probability value greater than or equal to a predetermined value is converted to 1, and a probability value less than a predetermined value is converted to 0.
- the coordinate estimation unit 23 outputs the coordinate data of the region where one or more objects exist in the image 31 based on the feature map 32 output from the feature extraction unit 21. For example, the coordinate estimation unit 23 identifies an area in which an object of class i exists from the feature map 32-i, and sets a bounding box corresponding to that area. Each array element constituting the feature map 32-i stores a value indicating the probability that an object of class i exists at the coordinates corresponding to the element in the image 31. Therefore, the coordinate estimation unit 23 may specify from the feature map 32-i a region composed of elements having a value equal to or higher than a predetermined threshold value as a region in which a class i object exists.
- the bounding box is, for example, a rectangular area.
- the coordinate estimation unit 23 outputs the coordinate data of the bounding box and the class i corresponding to the feature map 32-i used for each set bounding box.
- the coordinate data may include, for example, the center coordinates of the bounding box, the height and width of the bounding box.
- FIG. 4 is a diagram showing an example of setting a bounding box by the coordinate estimation unit 23. For example, in a certain image 31, there are two class 1 objects. As shown in FIG. 4, in the feature map 32-1, two regions composed of elements having a value equal to or higher than the threshold value are specified, and bounding boxes 41 and 42 corresponding to each of these regions are set.
- the partial image class estimation unit 24 sets the class of one or more objects existing in the image 33 based on the feature map 32 output from the feature extraction unit 21 for the image 33 extracted from the image 31. Output the indicated class information.
- the structure of the partial image class estimation unit 24 may be similar to the structure of the entire image class estimation unit 22.
- the partial image class estimation unit 24 may have a structure corresponding to this.
- the whole image class estimation unit 22 and the partial image class estimation unit 24 may be the same or may be separate class estimation units. That is, the model 2 includes at least one class estimation unit that estimates the class of the object based on the feature map.
- the image acquisition unit 111 acquires a plurality of images 31 from the storage unit 14 as the first training data.
- the image 31 is, for example, an image taken and prepared in advance.
- the image acquisition unit 111 further acquires a label (Ground Truth) indicating the class of the object existing in the image 31 from the storage unit 14 and associates it with the image 31.
- the first training unit 112 trains the feature extraction unit 21 using the image 31 as the first training data acquired by the first training data acquisition unit 111.
- the process by the first training unit 112 is automatically executed, for example, when the image 31 is acquired by the image acquisition unit 111.
- the first training unit 112 trains the feature extraction unit 21 and a predetermined first class estimation unit among at least one class estimation unit included in the model 2.
- the first class estimation unit is the overall image class estimation unit 22.
- the first training unit 112 as the feature extraction unit 21 and the overall image class estimation unit 22, executes arithmetic processing corresponding to these layers and outputs the probabilities of each class.
- the first training unit 112 inputs the image 31 to the feature extraction unit 21 and causes the feature extraction unit 21 to output the feature map 32.
- the first training unit 112 inputs the feature map 32 to the overall image class estimation unit 22, and causes the overall image class estimation unit 22 to output class information.
- the first training unit 112 compares the class information with the label of the class and calculates the classification error.
- the first training unit 112 uses the classification error to update the weight and bias parameters held by the overall image class estimation unit 22. Further, the first training unit 112 updates the weight and the bias held by the feature extraction unit 21 by the error back propagation from the overall image class estimation unit 22.
- the coordinate output control unit 113 causes the feature extraction unit 21 trained by the first training unit 112 to output the feature map 32 of each of one or more of the plurality of images 31.
- the processing of the coordinate output control unit 113 is automatically executed, for example, when the training by the first training unit 112 is completed.
- the coordinate output control unit 113 inputs the feature map 32 output from the feature extraction unit 21 to the coordinate estimation unit 23 for each of the one or more images 31, and is a portion of the image 31 in which one or more objects exist. Output at least one coordinate of the area. That is, the coordinate output control unit 113 causes the coordinate estimation unit 23 to output at least one coordinate data of the bounding box for each of the one or more images 31.
- the coordinate output control unit 113 outputs coordinate data and a class of objects in the bounding box for each bounding box.
- the coordinate output control unit 113 may input only the feature map 32 corresponding to the class indicated on the label to the coordinate estimation unit 23 among all the feature maps 32 output from the feature extraction unit 21. That is, the coordinate data and classes of the objects are output using the feature map 32 corresponding to the objects existing in the image 31.
- the coordinate output control unit 113 may output the coordinates of the area in which each of the plurality of objects exists, or may output the coordinates of only one object. , Coordinates may be output for some of a plurality of objects.
- the coordinate estimation unit 23 specifies a plurality of regions composed of elements having a value equal to or higher than the threshold value from the feature map 32 corresponding to the class.
- a region composed of elements having a value equal to or higher than the threshold value is specified from the feature map 32 corresponding to each class.
- the coordinate output control unit 113 may output the coordinates of each of a plurality of different regions for at least one object.
- the different regions are, for example, regions in which at least one of the size, aspect ratio, and center coordinates is different from each other.
- the coordinate output control unit 113 can change the size and the center coordinates by changing the threshold value for specifying the area where the object exists.
- the coordinate output control unit 113 can change the aspect ratio by preparing a plurality of boxes having different aspect ratios in advance and applying each of these boxes to the specified area.
- FIG. 5A is a diagram showing an example of setting a bounding box by the coordinate estimation unit 23. As shown in FIG. 5A, in a certain image 31A, objects 51 to 53 are present. For example, bounding boxes 61 to 64 are set for the object 51.
- the coordinate output control unit 113 may output at least one coordinate of the region where two or more objects exist among the plurality of objects for the image 31 in which a plurality of objects exist.
- an image of one area may be output for the same combination of objects, or a plurality of different areas may be output.
- the coordinates of the area where two or more objects exist may be output, and the coordinates of the area where only one object exists may be output for at least one object.
- FIG. 5B is a diagram showing an example of setting a bounding box by the coordinate estimation unit 23. For example, in the example shown in FIG.
- the image extraction unit 114 extracts from the image 31 an image of a portion indicated by the output coordinates as a partial image 33 with respect to one or more images 31 whose coordinates are output from the coordinate estimation unit 23.
- the process by the image extraction unit 114 may be automatically executed, for example, every time the coordinates are output from the coordinate output control unit 113, or may be automatically executed after the output of all the coordinates is completed. ..
- the image extraction unit 114 specifies the extraction range and extracts the partial image 33 based on the coordinate data output from the coordinate estimation unit 23.
- the image extraction unit 114 stores the partial image 33 and the class whose coordinates are output from the coordinate estimation unit 23 in the storage unit 14 as second training data for each of the extracted partial images 33.
- an image 33 different from the image 31 is obtained as an image for learning by the feature extraction unit 21. That is, the number of images for learning is automatically increased. Even if the same object as the object existing in the image 31 exists in the partial image 33, at least one of the ratio and the position of the area occupied by the object to the image is the image 31 and the partial image 33. different. Therefore, the feature extraction unit 21 can be further strengthened by using the image 33.
- the second training unit 115 further trains the feature extraction unit 21 trained by the first training unit 112 using the image 33 as the second training data extracted by the image extraction unit 114.
- the process by the second training unit 115 is automatically executed, for example, when the extraction of all the partial images 33 by the image extraction unit 114 is completed.
- the second training unit 115 trains the feature extraction unit 21 and a predetermined second class estimation unit among at least one class estimation unit included in the model 2.
- the second class estimation unit is the partial image class estimation unit 24.
- the second training unit 115 as the feature extraction unit 21 and the partial image class estimation unit 24, executes arithmetic processing corresponding to these layers.
- the specific training method may be the same as the training by the first training unit, except that the class estimation unit to be trained is the partial image class estimation unit 24. By this training, the feature extraction unit 21 is further strengthened, so that the classification accuracy by the model 2 is improved.
- the first class estimation unit and the second class estimation unit included in the model 2 may be different or the same.
- any configuration may be adopted depending on the tendency of the image 31 and the tendency of the image 33.
- the first class estimation unit and the second class estimation unit may be different. If the tendencies of both are consistent or similar to each other, the first class estimation unit and the second class estimation unit may be the same.
- the image 31 is basically the same as the captured image and has not been edited in particular, and that there is a high possibility that a plurality of objects exist in the image 31, each of the images 31 is used. The proportion of the area occupied by each object tends to be relatively small.
- the first class estimation unit and the second class estimation unit may be different.
- the ratio of the area occupied by the object to the image 33 is relatively relatively. Tends to be small. In such a case, the first class estimation unit and the second class estimation unit may be the same.
- the model memory control unit 116 trains the feature extraction unit 21 and the overall image class estimation unit 22 by the first training unit 112, and the feature extraction unit 21 and the partial image class estimation unit 24 by the second training unit 115.
- the model 2 is generated through the process, the generated model 2 is stored in the storage unit 14.
- the model reading unit 117 reads the model 2 stored in the storage unit 14 and loads it into the RAM 14c or the GPU memory 19.
- the feature map output control unit 118 and the class information output control unit 119 execute calculations corresponding to the feature extraction unit 21 and the overall image class estimation unit 22, respectively.
- the feature map output control unit 118 inputs a given image in which one or more objects to be classified exist to the feature extraction unit 21 included in the read model 2, and the feature map output control unit 118 is located from the feature extraction unit 21. Output the feature map of the given image.
- a given image may be stored, for example, in storage 14 or may be acquired via a network or recording medium.
- the class output control unit 119 inputs the feature map output from the feature extraction unit 21 into the overall image class estimation unit 22 included in the read model 2, and the class output control unit 119 inputs a given image from the overall image class estimation unit 22.
- Output class information indicating the class of each one or more objects existing in.
- FIG. 6 is a flowchart showing an example of learning processing by the system control unit 11 and the GPU 18 of the image processing device 1.
- the system control unit 11 and the GPU 18 execute the learning process according to the program code included in the model generation program.
- the training data acquisition unit 111 acquires the image 31 and the label of the class corresponding to the image 31 from the storage unit 14 for each of the plurality of images 31 as the first training data (step). S1).
- the first training unit 112 trains the feature extraction unit 21 and the overall image class estimation unit 22 using the acquired image 31 and the class label (step S2). Specifically, the first training unit 112 causes the feature extraction unit 21 to output a feature map 32 for each image 31. The first training unit 112 inputs the feature map 32 to the overall image class estimation unit 22, and causes the overall image class estimation unit 22 to output class information. The first training unit 112 compares the class information with the label of the class and calculates the classification error. The first training unit 112 updates the parameters of the overall image class estimation unit 22 based on the classification error. Further, the first training unit 112 back-propagates the error from the overall image class estimation unit 22 to the feature extraction unit 21 to update the parameters of the feature extraction unit 21. The first training unit 112 ends the training, for example, when the number of epochs reaches a predetermined number.
- the coordinate output control unit 113 outputs the feature map 32 of each of the one or more images 31 by the feature extraction unit 21 trained by the first training unit 112.
- the coordinate output control unit 113 inputs the feature map 32 to the coordinate estimation unit 23, and outputs the coordinate data and the class of the region where one or more objects exist (step S3).
- the image extraction unit 114 extracts the partial image 33 shown in the coordinate data output from the coordinate estimation unit 23 from the image 31 (step S4).
- the second training unit 115 trains the feature extraction unit 21 and the partial image class estimation unit 24 using the extracted partial image 33 and the class label output from the coordinate estimation unit 23 (step S5). Specifically, the second training unit 115 causes the feature extraction unit 21 to output a feature map 32 for each partial image 33. The second training unit 115 and the feature map 32 are input to the partial image class estimation unit 24, and the class information is output from the partial image class estimation unit 24. The second training unit 115 compares the class information with the label of the class and calculates the classification error. The second training unit 115 updates the parameters of the partial image class estimation unit 24 based on the classification error.
- the second training unit 115 reversely propagates the error from the partial image class estimation unit 24 to the feature extraction unit 21 to update the parameters of the feature extraction unit 21.
- the second training unit 115 ends the training, for example, when the number of epochs reaches a predetermined number.
- model 2 is generated.
- the model storage control unit 116 stores the generated model 2 in the storage unit 14 (step S6), and ends the learning process.
- the image processing device 1 is a feature extraction unit 21 including a plurality of convolution layers, and is a feature extraction unit that outputs a feature map of an image in which one or more objects exist. Based on 21 and this feature map, a model 2 for classifying one or more objects including a coordinate estimation unit 23 that outputs coordinates of a region where an object exists in an image is generated.
- the image processing device 1 acquires a plurality of images in which one or more objects are present from the storage unit 14. Further, the image processing device 1 trains the feature extraction unit 21 using the acquired plurality of images. Further, the image processing device 1 causes the trained feature extraction unit 21 to output a feature map of one or more of the plurality of images.
- the image processing device 1 inputs the output feature map for each of the one or more images to the coordinate estimation unit 23, and outputs at least one coordinate of the region where the object exists in the image. Further, the image processing device 1 extracts an image of a portion indicated by the output coordinates from the image for each of the one or more images. In addition, the image processing device 1 further trains the trained feature extraction unit 21 using the extracted image. Then, the image processing device 1 stores the generated model 2 in the storage unit 14. Therefore, it is possible to automatically increase the number of images for learning to improve the classification accuracy and generate the model 2 for classifying each of the plurality of objects existing in the image.
- the model 2 may further include at least one class estimation unit that outputs class information indicating the class of each of one or more objects based on the feature map.
- the image processing device 1 may train the feature extraction unit 21 and a predetermined first class estimation unit among at least one class estimation unit using the acquired plurality of images. Further, the image processing device 1 may train the feature extraction unit 21 and a predetermined second class estimation unit among at least one class estimation unit by using the acquired plurality of images.
- the second class estimation unit may be a class estimation unit different from the first class estimation unit among at least one class estimation unit.
- the first class estimation unit used for the first learning by the feature extraction unit 21 and the second class estimation unit used for the second learning by the feature extraction unit 21 are different, the extracted image When the tendency is different from the tendency of the original image, the classification accuracy can be improved.
- the second class estimation unit may be the same as the first class estimation unit.
- the extracted image Classification accuracy can be improved when the tendency matches or is similar to the tendency of the original image.
- the image processing device 1 may output at least one coordinate of a region in which each of the plurality of objects exists for an image in which a plurality of objects exist among the plurality of images by the coordinate estimation unit 23. In this case, since the image is extracted for each object, the number of images for learning can be increased.
- the image processing device 1 may output the coordinates of each of a plurality of different regions for at least one object among one or more objects by the coordinate estimation unit 23.
- various images can be added to one object as learning images.
- the image processing device 1 may read the generated model 2 from the storage unit 14. Further, the image processing device 1 may output a feature map of a given image in which one or more objects exist by the feature extraction unit 21 included in the read model 2. Further, the image processing device 1 may output the class information indicating the class of each of one or more objects by the read model 2 based on the feature map of the output given image. In this case, since the model 2 including the feature extraction unit 21 trained using the images extracted from these images is used in addition to the images prepared first, the classification accuracy of a plurality of objects existing in the images can be determined. Can be improved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
学習用の画像を自動的に増やして分類精度を向上させるとともに、画像内に存在する複数のオブジェクトそれぞれを分類するためのモデルを生成することを目的とする。 学習装置は、複数の画像をストレージから取得する。学習装置は、複数の画像を用いて、特徴抽出部を訓練する。学習装置は、訓練された特徴抽出部により、複数の画像のうち1以上の画像それぞれの特徴マップを出力させる。学習装置は、1以上の画像それぞれについて、出力された特徴マップを座標推定部に入力して、画像のうち、オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる。学習装置は、1以上の画像それぞれについて、画像から、出力された座標により示される部分の画像を抽出する。学習装置は、抽出された画像を用いて、訓練された特徴抽出部を更に訓練する。
Description
本発明は、機械学習を用いた画像処理方法に関し、特に、畳み込みニューラルネットワークを用いて、画像内に存在するオブジェクトを分類するための学習方法及び分類方法の技術分野に関する。
現在、深層学習に関す研究開発が盛んに行われている。特にコンピュータビジョンの技術分野においては、画像を処理するためのモデルとして、畳み込みニューラルネットワークが一般的に採用されている。このネットワークは、複数の畳み込み層を有し、画像に対する畳み込み演算を繰り返してその画像の特徴マップを生成する。この特徴マップから、画像内に存在するオブジェクトの分類等が行われる(例えば、非特許文献1)。
Sachin Padmanabhan、「画像分類及びキャプショニングのための畳み込みニューラルネットワーク(Convolutional Neural Networks for Image Classification and Captioning)」、[online]、[平成30年7月9日検索]、インターネット<URL: https://web.stanford.edu/class/cs231a/prev_projects_2016/example_paper.pdf>
分類の精度を向上させるためには、学習用に大量の画像が必要となる。しかしながら、大量の画像を予め準備することが困難な場合がある。また、一の画像内に複数のオブジェクトが存在する場合、各オブジェクトを分類することが望まれる。
本発明は以上の点に鑑みてなされたものであり、その課題の一例は、学習用の画像を自動的に増やして分類精度を向上させるとともに、画像内に存在する複数のオブジェクトそれぞれを分類するためのモデルを生成することが可能な学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラムを提供することにある。
上記課題を解決するために、本発明の一の態様は、複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成手段と、前記生成されたモデルをモデル記憶手段に記憶させる記憶制御手段と、を備え、前記生成手段は、1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得手段と、前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練手段と、前記第1訓練手段により訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御手段と、前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御手段と、前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出手段と、前記抽出された画像を用いて、前記第1訓練手段により訓練された前記特徴抽出部を更に訓練する第2訓練手段と、を含むことを特徴とする学習装置である。
この発明によれば、特徴抽出部による最初の学習に用いられた画像から、1以上のオブジェクトが存在する部分の領域に相当する画像が抽出される。従って、最初の学習に用いられた画像とは、オブジェクトが存在する領域が占める割合や位置が異なる画像を自動的に増やすことができる。それらの画像を用いて、特徴抽出部を更に訓練することで、分類精度を向上させるとともに、画像内に存在する複数のオブジェクトそれぞれを分類するためのモデルを生成することができる。
本発明の別の態様は、前記モデルは、前記特徴マップに基づいて、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力する少なくとも一のクラス推定部を更に含み、前記第1訓練手段は、前記取得された複数の画像を用いて、前記特徴抽出部と、前記少なくとも一のクラス推定部のうち所定の第1クラス推定部と、を訓練し、前記第2訓練手段は、前記取得された複数の画像を用いて、前記特徴抽出部と、前記少なくとも一のクラス推定部のうち所定の第2クラス推定部と、を訓練することを特徴とする学習装置である。
本発明の更に別の態様は、前記第2クラス推定部は、前記少なくとも一のクラス推定部のうち、前記第1クラス推定部とは異なるクラス推定部であることを特徴とする学習装置である。
この発明によれば、特徴抽出部による最初の学習に用いられる第1クラス推定部と、特徴抽出部による2番目の学習に用いられる第2クラス推定部とが異なるので、抽出された画像の傾向が元の画像の傾向と異なる場合に、分類精度を向上させることができる。
本発明の更に別の態様は、前記第2クラス推定部は、前記第1クラス推定部と同一であることを特徴とする学習装置である。
この発明によれば、特徴抽出部による最初の学習に用いられる第1クラス推定部と、特徴抽出部による2番目の学習に用いられる第2クラス推定部とが同一であるので、抽出された画像の傾向が元の画像の傾向と一致又は類似する場合に、分類精度を向上させることができる。
本発明の更に別の態様は、前記座標出力制御手段は、前記座標推定部により、前記複数の画像のうち、複数のオブジェクトが存在する画像について、前記複数のオブジェクトそれぞれが存在する領域の座標をそれぞれ少なくとも一つ出力させることを特徴とする学習装置である。
この発明によれば、各オブジェクトについて画像が抽出されるので、学習用の画像をより増やすことができる。
本発明の更に別の態様は、前記座標出力制御手段は、前記座標推定部により、前記1以上のオブジェクトのうち少なくとも一のオブジェクトについて、異なる複数の領域それぞれの座標を出力させることを特徴とする学習装置である。
この発明によれば、学習用の画像として、一つのオブジェクトについて様々な画像を増やすことができる。
本発明の更に別の態様は、前記学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出し手段と、前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御手段と、前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御手段と、を備えることを特徴とする分類装置である。
この発明によれば、最初に用意された画像に加えて、これらの画像から抽出された画像を用いて訓練された特徴抽出部を含むモデルが用いられるので、画像内に存在する複数のオブジェクトの分類精度を向上させることができる。
本発明の更に別の態様は、コンピュータにより実行される学習方法において、複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成ステップと、前記生成されたモデルをモデル記憶手段に記憶させる記憶制御ステップと、を備え、前記生成ステップは、1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得ステップと、前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練ステップと、前記第1訓練ステップにより訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御ステップと、前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御ステップと、前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出ステップと、前記抽出された画像を用いて、前記第1訓練ステップにより訓練された前記特徴抽出部を更に訓練する第2訓練ステップと、を含むことを特徴とする。
本発明の更に別の態様は、コンピュータにより実行される分類方法において、前記学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出しステップと、前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御ステップと、前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御ステップと、を含むことを特徴とする。
本発明の更に別の態様は、コンピュータにより実行される学習プログラムにおいて、前記コンピュータを、複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成手段と、前記生成されたモデルをモデル記憶手段に記憶させる記憶制御手段と、として機能させ、前記生成手段は、1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得手段と、前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練手段と、前記第1訓練手段により訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御手段と、前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御手段と、前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出手段と、前記抽出された画像を用いて、前記第1訓練手段により訓練された前記特徴抽出部を更に訓練する第2訓練手段と、を含むことを特徴とする。
本発明の更に別の態様は、コンピュータを、前記学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出し手段と、前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御手段と、前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御手段と、として機能させることを特徴とする分類プログラムである。
本発明によれば、学習用の画像を自動的に増やして分類精度を向上させるとともに、画像内に存在する複数のオブジェクトそれぞれを分類するためのモデルを生成することができる。
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態においては、画像内に存在するオブジェクトのクラスを推定するためのモデルを生成するための学習の実行と、生成されたモデルを用いて、オブジェクトを分類する画像処理装置に対して本発明を適用した場合の実施形態である。なお、学習を実行する装置と、クラスの推定を行う装置とは別々の装置であってもよい。
[1.画像処理装置の構成]
先ず、画像処理装置1の構成について、図1を用いて説明する。図1は、本実施形態に係る画像処理装置1の概要構成の一例を示すブロック図である。図1に示すように、画像処理装置1は、システム制御部11と、システムバス12と、入出力インターフェース13と、記憶部14と、通信部15と、入力部16と、表示部17と、GPU(Graphics Processing Unit)18と、GPUメモリ19(または、ビデオRAM)を備えている。システム制御部11と入出力インターフェース13とは、システムバス12を介して接続されている。画像処理装置1は、例えばサーバ装置であってもよいし、パーソナルコンピュータであってもよい。
先ず、画像処理装置1の構成について、図1を用いて説明する。図1は、本実施形態に係る画像処理装置1の概要構成の一例を示すブロック図である。図1に示すように、画像処理装置1は、システム制御部11と、システムバス12と、入出力インターフェース13と、記憶部14と、通信部15と、入力部16と、表示部17と、GPU(Graphics Processing Unit)18と、GPUメモリ19(または、ビデオRAM)を備えている。システム制御部11と入出力インターフェース13とは、システムバス12を介して接続されている。画像処理装置1は、例えばサーバ装置であってもよいし、パーソナルコンピュータであってもよい。
システム制御部11は、CPU(Central Processing Unit)11a、ROM(Read Only Memory)11b、RAM(Random Access Memory)11c等により構成されている。
入出力インターフェース13は、記憶部14~GPUメモリ19とシステム制御部11との間のインターフェース処理を行う。
記憶部14は、例えば、ハードディスクドライブ又はソリッドステートドライブ等により構成されている。この記憶部14には、生成されたモデル2、及びモデル2の生成に用いられる複数の訓練データ等が記憶される。記憶部14には、更にオペレーティングシステム、モデル生成用のプログラム、分類用のプログラム等が記憶されている。訓練データ及び各種プログラムは、例えば、所定のコンピュータからネットワークを介して取得されるようにしてもよいし、光ディスク、メモリカード、磁気テープ等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。モデル2を生成する装置と分類を行う装置とが別々の装置である場合、生成されたモデル2の受け渡しは、ネットワークを介して行われてもよいし、記録媒体を介して行われてもよい。
通信部15は、例えばネットワークインターフェースコントローラ等により構成されている。通信部15は、インターネット、LAN(Local Area Network)等の所定のネットワークを介して他のコンピュータと接続し、そのコンピュータとの通信状態を制御する。
入力部16は、オペレータによる操作を受け付け、操作内容に対応する信号をシステム制御部11に出力する。入力部16の例として、キーボード、マウス、タッチパネル等が挙げられる。
表示部17は、例えば、グラフィックコントローラ及びディスプレイ等により構成されている。表示部17は、システム制御部11の制御により、画像、文字等の情報を表示する。ディスプレイのパネルの例として、液晶パネル、有機EL(Light Emitting)パネル等が挙げられる。
GPU18は、システム制御部11からの制御により、機械学習における行列演算等を実行する。GPU18は、複数の演算を並列にパイプライン処理する。GPU18とGPUメモリ19とは接続されている。GPUメモリ19は、GPU18による演算に用いられるデータや演算結果を記憶する。
[2.画像処理装置のシステム制御部の機能概要]
次に、図2乃至図4Bを用いて、システム制御部11及びGPU18の機能概要について説明する。図2は、本実施形態に係る画像処理装置1のシステム制御部11及びGPU18の機能ブロックの一例を示す図である。システム制御部11及びGPU18は、CPU11aが、記憶部14に記憶されているプログラムに含まれる各種コード等を読み出し実行することにより、図2に示すように、画像取得部111、第1訓練部112、座標出力制御部113、画像抽出部114、第2訓練部115、モデル記憶制御部116、モデル読み出し部117、特徴マップ出力制御部118、クラス情報出力制御部119等として機能する。
次に、図2乃至図4Bを用いて、システム制御部11及びGPU18の機能概要について説明する。図2は、本実施形態に係る画像処理装置1のシステム制御部11及びGPU18の機能ブロックの一例を示す図である。システム制御部11及びGPU18は、CPU11aが、記憶部14に記憶されているプログラムに含まれる各種コード等を読み出し実行することにより、図2に示すように、画像取得部111、第1訓練部112、座標出力制御部113、画像抽出部114、第2訓練部115、モデル記憶制御部116、モデル読み出し部117、特徴マップ出力制御部118、クラス情報出力制御部119等として機能する。
[2-1.モデルの生成]
図3は、モデル2の構成例を示す図である。画像取得部111~第2訓練部115は、機械学習によってモデル2を生成する。図3に示すように、モデル2は、特徴抽出部21と、全体画像クラス推定部22と、座標推定部23と、部分画像クラス推定部24と、を含む畳み込みニューラルネットワークである。モデル2のベースとなるネットワークモデルの例として、ResNet、GoogleNet、AlexNet、VGGNetが挙げられる。
図3は、モデル2の構成例を示す図である。画像取得部111~第2訓練部115は、機械学習によってモデル2を生成する。図3に示すように、モデル2は、特徴抽出部21と、全体画像クラス推定部22と、座標推定部23と、部分画像クラス推定部24と、を含む畳み込みニューラルネットワークである。モデル2のベースとなるネットワークモデルの例として、ResNet、GoogleNet、AlexNet、VGGNetが挙げられる。
特徴抽出部21は、複数の畳み込み層を含む。特徴抽出部21は、モデル2に入力された画像31の特徴マップ32を出力する。画像31内には、1以上のオブジェクトが存在する。画像31内に複数のオブジェクトが存在する場合、各オブジェクトのクラスは互いに同じであってもよいし異なってもよい。特徴抽出部21は、例えばこれらの畳み込み層によって画像31に対する畳み込み演算を繰り返し、モデル2が分類可能なクラスごとに特徴マップ32を出力する。特徴抽出部21は、プーリング層等のレイヤを適宜含んでもよい。
全体画像クラス推定部22は、特徴抽出部21から出力された特徴マップ32に基づいて、画像31内に存在する1以上のオブジェクトのクラスを示すクラス情報を出力する。クラス推定部22は、1以上の全結合層を含む。クラス推定部22は、特徴マップ32を全結合層で変換して、クラスごとにそのクラスのオブジェクトが存在するか否かを示す情報をクラス情報として出力する。全体画像クラス推定部22は、例えばクラスごとに1個の全結合層又は直列に接続された複数の全結合層を含んでもよい。例えば、或るクラスiに対応する特徴マップ32を特徴マップ32-iとし、クラスiに対応する全結合層を全結合層iとする。全結合層iは、特徴マップ32-i内の要素を結合して、各クラスの確率値を出力する。例えば、これらの確率値のうち、クラスiの確率値が所定値以上である場合、画像31にクラスiのオブジェクトが存在すると推定されたことになる。画像31に複数のクラスのオブジェクトが存在する場合、全体画像クラス推定部22は、これらのクラスそれぞれのオブジェクトが存在すると推定することが可能である。学習が終わった後の分類段階においては、例えば各クラスの確率値が0又は1に変換される。例えば、所定値以上の確率値は1に変換され、所定値未満の確率値は0に変換される。
座標推定部23は、特徴抽出部21から出力された特徴マップ32に基づいて、画像31において、1以上のオブジェクトが存在する部分の領域の座標データを出力する。例えば、座標推定部23は、特徴マップ32-iから、クラスiのオブジェクトが存在する領域を特定して、その領域に対応するバウンディングボックスを設定する。特徴マップ32-iを構成する各配列要素は、画像31におけるその要素が対応する座標において、クラスiのオブジェクトが存在する蓋然性を示す値を格納する。そこで、座標推定部23は、特徴マップ32-iから、所定の閾値以上の値を有する要素で構成される領域を、クラスiのオブジェクトが存在する領域として特定してもよい。バウンディングボックスは、例えば矩形の領域である。座標推定部23は、設定したバウンディングボックスごとに、そのバウンディングボックスの座標データと、用いられた特徴マップ32-iに対応するクラスiを出力する。座標データは、例えばバウンディングボックスの中心座標、バウンディングボックスの高さ及び幅を含んでもよい。図4は、座標推定部23によるバウンディングボックスの設定例を示す図である。例えば、或る画像31内には、クラス1のオブジェクトが2個存在する。図4に示すように、特徴マップ32-1において、閾値以上の値を有する要素で構成される領域が2個特定され、これらの領域それぞれに対応するバウンディングボックス41及び42が設定される。
部分画像クラス推定部24は、後述するように、画像31から抽出された画像33について特徴抽出部21から出力された特徴マップ32に基づいて、画像33内に存在する1以上のオブジェクトのクラスを示すクラス情報を出力する。例えば、部分画像クラス推定部24の構造は、全体画像クラス推定部22の構造と同様であってもよい。或いは、画像31から一のオブジェクトのみが存在する画像33のみが抽出される場合、部分画像クラス推定部24は、これに対応した構造であってもよい。全体画像クラス推定部22と部分画像クラス推定部24とは同一であってもよいし、別々のクラス推定部であってもよい。すなわち、モデル2は、特徴マップに基づいてオブジェクトのクラスを推定するクラス推定部を少なくとも一つ含む。
上述したモデル2を生成するため、画像取得部111は、第1訓練データとして、複数の画像31を記憶部14から取得する。画像31は、例えば撮影されて予め用意された画像である。画像取得部111は、画像31それぞれについて、その画像31内に存在しているオブジェクトのクラスを示すラベル(Ground Truth)を記憶部14から更に取得して、画像31に関連付ける。
第1訓練部112は、第1訓練データ取得部111により取得された第1訓練データとしての画像31を用いて、特徴抽出部21を訓練する。第1訓練部112による処理は、例えば画像取得部111により画像31が取得されること応じて自動的に実行される。ここで、第1訓練部112は、特徴抽出部21と、モデル2に含まれる少なくとも一つのクラス推定部のうち、所定の第1のクラス推定部とを訓練する。本実施形態の場合、第1のクラス推定部は、全体画像クラス推定部22である。第1訓練部112は、特徴抽出部21及び全体画像クラス推定部22として、これらの層に対応する演算処理を実行して、各クラスの確率を出力する。具体的に、第1訓練部112は、特徴抽出部21に画像31を入力して、特徴抽出部21から特徴マップ32を出力させる。第1訓練部112は、特徴マップ32を全体画像クラス推定部22に入力して、全体画像クラス推定部22からクラス情報を出力させる。第1訓練部112は、クラス情報とクラスのラベルとを比較して、分類誤差を計算する。第1訓練部112は、分類誤差を用いて、全体画像クラス推定部22が保持する重み及びバイアスのパラメータを更新する。また、第1訓練部112は、全体画像クラス推定部22からの誤差逆伝播により、特徴抽出部21が保持する重み及びバイアスを更新する。
座標出力制御部113は、第1訓練部112により訓練された特徴抽出部21により、複数の画像31のうち1以上の画像それぞれの特徴マップ32を出力させる。座標出力制御部113の処理は、例えば第1訓練部112による訓練の完了に応じて自動的に実行される。座標出力制御部113は、1以上の画像31それぞれについて、特徴抽出部21から出力された特徴マップ32を座標推定部23に入力して、画像31のうち、1以上のオブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる。すなわち、座標出力制御部113は、1以上の画像31それぞれについて、座標推定部23からバウンディングボックスの座標データを少なくとも一つ出力させる。例えば、座標出力制御部113は、バウンディングボックスごとに、座標データとバウンディングボックス内のオブジェクトのクラスとを出力する。座標出力制御部113は、特徴抽出部21から出力された全特徴マップ32のうち、ラベルに示されるクラスに対応する特徴マップ32のみを、座標推定部23に入力すればよい。すなわち、画像31内に存在するオブジェクトに対応する特徴マップ32を用いて、それらのオブジェクトの座標データ及びクラスが出力される。
画像31に複数のオブジェクトが存在する場合、座標出力制御部113は、それら複数のオブジェクトそれぞれが存在する領域の座標を出力させてもよいし、一のオブジェクトのみについて座標を出力させてもよいし、複数のオブジェクトのうち幾つかのオブジェクトについて座標を出力させてもよい。画像31内に同一クラスのオブジェクトが複数存在する場合、そのクラスに対応する特徴マップ32から、閾値以上の値を有する要素で構成される領域が、座標推定部23により複数特定される。画像31内に互いに異なるクラスのオブジェクトが存在する場合、それぞれのクラスに対応する特徴マップ32から、閾値以上の値を有する要素で構成される領域がそれぞれ特定される。
座標出力制御部113は、少なくとも一のオブジェクトについて、異なる複数の領域それぞれの座標を出力してもよい。異なる複数の領域とは、例えば、サイズ、アスペクト比及び中心座標の少なくとも何れか一つが互いに異なる領域である。例えば、座標出力制御部113は、オブジェクトが存在する領域を特定するための閾値を変化させることで、サイズや中心座標を変化させることができる。また、座標出力制御部113は、アスペクト比が異なるボックスを予め複数用意しておき、特定した領域に対してこれらのボックスをそれぞれ適用することで、アスペクト比を変化させることができる。図5Aは、座標推定部23によるバウンディングボックスの設定例を示す図である。図5Aに示すように、或る画像31Aにおいては、オブジェクト51~53が存在する。例えば、オブジェクト51について、バウンディングボックス61~64が設定される。
座標出力制御部113は、複数のオブジェクトが存在する画像31について、これら複数のオブジェクトのうち2以上のオブジェクトが存在する部分の領域の座標を少なくとも一つ出力させてもよい。この場合、同一のオブジェクトの組み合わせに対して、一つの領域の画像が出力されてもよいし、異なる複数の領域が出力されてもよい。また、2以上のオブジェクトが存在する部分の領域の座標が出力されるとともに、少なくとも一のオブジェクトについて、その一のオブジェクトのみが存在する領域の座標が出力されてもよい。図5Bは、座標推定部23によるバウンディングボックスの設定例を示す図である。例えば、図5Bに示す例では、画像31Aについて、オブジェクト51~53を含むバウンディングボックス71(画像31Aの一部)、オブジェクト51及び53を含むバウンディングボックス72、並びにオブジェクト51及び52を含むバウンディングボックス73が設定されている。
画像抽出部114は、座標推定部23から座標が出力された1以上の画像31について、その画像31から、出力された座標により示される部分の画像を、部分画像33として抽出する。画像抽出部114による処理は、例えば座標出力制御部113から座標が出力されるごとに自動的に実行されてもよいし、全ての座標の出力が完了してから自動的に実行されてもよい。画像抽出部114は、座標推定部23から出力された座標データに基づいて、抽出範囲を特定して部分画像33を抽出する。画像抽出部114は、抽出された部分画像33それぞれについて、その部分画像33と座標推定部23から座標が出力されたクラスとを第2訓練データとして記憶部14に記憶させる。これにより、特徴抽出部21による学習用の画像として、画像31とは異なる画像33を得たことになる。すなわち、学習用の画像が自動的に増加する。画像31内に存在するオブジェクトと同一のオブジェクトが部分画像33内に存在していても、そのオブジェクトが画像に対して占める領域の割合及び位置の少なくとも何れか一方が画像31と部分画像33とでは異なる。そのため、画像33を用いて特徴抽出部21を更に強化することができる。
第2訓練部115は、画像抽出部114により抽出された第2訓練データとしての画像33を用いて、第1訓練部112により訓練された特徴抽出部21を更に訓練する。第2訓練部115による処理は、例えば画像抽出部114による全ての部分画像33の抽出が完了したことに応じて自動的に実行される。ここで、第2訓練部115は、特徴抽出部21と、モデル2に含まれる少なくとも一つのクラス推定部のうち、所定の第2のクラス推定部とを訓練する。本実施形態の場合、第2のクラス推定部は、部分画像クラス推定部24である。第2訓練部115は、特徴抽出部21及び部分画像クラス推定部24として、これらの層に対応する演算処理を実行する。具体的な訓練方法は、訓練されるクラス推定部が部分画像クラス推定部24であることを除いて、第1訓練部による訓練と同様であってもよい。この訓練により、特徴抽出部21が更に強化されるので、モデル2による分類精度が向上する。
前述したように、モデル2に含まれる第1のクラス推定部と第2のクラス推定部は異なっていてもよいし、同一であってもよい。例えば画像31の傾向と画像33の傾向に応じて、何れかの構成が採用されてもよい。両者の傾向が互いに異なる場合、第1のクラス推定部と第2のクラス推定部は異なっていてもよい。両者の傾向が互いに一致又は類似する場合、第1のクラス推定部と第2のクラス推定部は同一であってもよい。画像31は、基本的には撮影された画像そのままであり、特段の編集もされていないこと、及び画像31に複数のオブジェクトが存在する可能性が高いことを考慮すると、画像31に対して各オブジェクトそれぞれが占める領域の割合は比較的に小さい傾向にある。画像31から一のオブジェクトのみが存在する部分画像33を抽出することとした場合、画像33に対してそのオブジェクトが占める領域の割合は比較的に大きい傾向にある。このような場合、第1のクラス推定部と第2のクラス推定部とは異なっていてもよい。画像31から2以上のオブジェクトが存在する部分画像33を抽出することとした場合、又は一のオブジェクトに対してバウンディングボックスを大きくした場合、画像33に対してそのオブジェクトが占める領域の割合は比較的に小さい傾向にある。このような場合、第1のクラス推定部と第2のクラス推定部とは同一であってもよい。
モデル記憶制御部116は、第1訓練部112による特徴抽出部21及び全体画像クラス推定部22の訓練と、第2訓練部115による特徴抽出部21及び部分画像クラス推定部24の訓練と、を経てモデル2が生成されると、生成されたモデル2を記憶部14に記憶させる。
[2-2.クラスの分類]
モデル読み出し部117は、記憶部14に記憶されたモデル2を読み出して、RAM14c又はGPUメモリ19にロードする。
モデル読み出し部117は、記憶部14に記憶されたモデル2を読み出して、RAM14c又はGPUメモリ19にロードする。
特徴マップ出力制御部118、及びクラス情報出力制御部119は、それぞれ特徴抽出部21、及び全体画像クラス推定部22に対応する演算を実行する。特徴マップ出力制御部118は、分類の対象となる1以上のオブジェクトが存在する所与の画像を、読み出されたモデル2に含まれる特徴抽出部21に入力して、特徴抽出部21から所与の画像の特徴マップを出力させる。所与の画像は、例えば記憶部14に記憶されてもよいし、ネットワーク又は記録媒体を介して取得されてもよい。
クラス出力制御部119は、特徴抽出部21から出力された特徴マップを、読み出されたモデル2に含まれる全体画像クラス推定部22に入力して、全体画像クラス推定部22から所与の画像内に存在する1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させる。
[3.画像処理装置の動作]
次に、画像処理装置1の動作について、図6を用いて説明する。図6は、画像処理装置1のシステム制御部11及びGPU18による学習処理の一例を示すフローチャートである。モデル生成用のプログラムに含まれるプログラムコードに従って、システム制御部11及びGPU18は学習処理を実行する。
次に、画像処理装置1の動作について、図6を用いて説明する。図6は、画像処理装置1のシステム制御部11及びGPU18による学習処理の一例を示すフローチャートである。モデル生成用のプログラムに含まれるプログラムコードに従って、システム制御部11及びGPU18は学習処理を実行する。
図6に示すように、訓練データ取得部111は、第1訓練データとして、複数の画像31それぞれについて、画像31と、画像31に対応するクラスのラベルとを、記憶部14から取得する(ステップS1)。
次いで、第1訓練部112は、取得された画像31及びクラスのラベルを用いて、特徴抽出部21及び全体画像クラス推定部22を訓練する(ステップS2)。具体的に、第1訓練部112は、特徴抽出部21から、各画像31について特徴マップ32を出力させる。第1訓練部112は、特徴マップ32を全体画像クラス推定部22に入力して、全体画像クラス推定部22からクラス情報を出力させる。第1訓練部112は、クラス情報と、クラスのラベルとを比較して、分類誤差を計算する。第1訓練部112は、分類誤差に基づいて、全体画像クラス推定部22のパラメータを更新する。更に、第1訓練部112は、全体画像クラス推定部22から特徴抽出部21へ誤差を逆伝播して、特徴抽出部21のパラメータを更新する。第1訓練部112は、例えばエポック数が所定数に達したとき等に訓練を終了させる。
次いで、座標出力制御部113は、第1訓練部112により訓練された特徴抽出部21により、1以上の画像31それぞれの特徴マップ32を出力させる。座標出力制御部113は、特徴マップ32を座標推定部23に入力して、1以上のオブジェクトが存在する部分の領域の座標データ及びクラスを出力させる(ステップS3)。次いで、画像抽出部114は、座標推定部23から出力された座標データに示される部分画像33を画像31から抽出する(ステップS4)。
次いで、第2訓練部115は、抽出された部分画像33及び座標推定部23から出力されたクラスのラベルを用いて、特徴抽出部21及び部分画像クラス推定部24を訓練する(ステップS5)。具体的に、第2訓練部115は、特徴抽出部21から、各部分画像33について特徴マップ32を出力させる。第2訓練部115、特徴マップ32を部分画像クラス推定部24に入力して、部分画像クラス推定部24からクラス情報を出力させる。第2訓練部115は、クラス情報と、クラスのラベルとを比較して、分類誤差を計算する。第2訓練部115は、分類誤差に基づいて、部分画像クラス推定部24のパラメータを更新する。更に、第2訓練部115は、部分画像クラス推定部24から特徴抽出部21へ誤差を逆伝播して、特徴抽出部21のパラメータを更新する。第2訓練部115は、例えばエポック数が所定数に達したとき等に訓練を終了させる。これによって、モデル2が生成される。モデル記憶制御部116は、生成されたモデル2を記憶部14に記憶させて(ステップS6)、学習処理を終了させる。
以上説明したように、本実施形態によれば、画像処理装置1が、複数の畳み込み層を含む特徴抽出部21であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部21と、この特徴マップに基づいて、画像のうち、オブジェクトが存在する部分の領域の座標を出力する座標推定部23と、を含む、1以上のオブジェクトを分類するためのモデル2を生成する。ここで、画像処理装置1が、1以上のオブジェクトがそれぞれ存在する複数の画像を記憶部14から取得する。また、画像処理装置1が、取得された複数の画像を用いて、特徴抽出部21を訓練する。また、画像処理装置1が、訓練された特徴抽出部21により、複数の画像のうち1以上の画像それぞれの特徴マップを出力させる。また、画像処理装置1が、1以上の画像それぞれについて、出力された特徴マップを座標推定部23に入力して、画像のうち、オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる。また、画像処理装置1が、1以上の画像それぞれについて、画像から、出力された座標により示される部分の画像を抽出する。また、画像処理装置1が、抽出された画像を用いて、訓練された特徴抽出部21を更に訓練する。そして、画像処理装置1が、生成されたモデル2を記憶部14に記憶させる。従って、学習用の画像を自動的に増やして分類精度を向上させるとともに、画像内に存在する複数のオブジェクトそれぞれを分類するためのモデル2を生成することができる。
また、モデル2は、特徴マップに基づいて、1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力する少なくとも一のクラス推定部を更に含んでもよい。画像処理装置1は、取得された複数の画像を用いて、特徴抽出部21と、少なくとも一のクラス推定部のうち所定の第1のクラス推定部と、を訓練してもよい。また、画像処理装置1が、取得された複数の画像を用いて、特徴抽出部21と、少なくとも一のクラス推定部のうち所定の第2のクラス推定部と、を訓練してもよい。
ここで、第2のクラス推定部は、少なくとも一のクラス推定部のうち、第1のクラス推定部とは異なるクラス推定部であってもよい。この場合、特徴抽出部21による最初の学習に用いられる第1のクラス推定部と、特徴抽出部21による2番目の学習に用いられる第2のクラス推定部とが異なるので、抽出された画像の傾向が元の画像の傾向と異なる場合に、分類精度を向上させることができる。
また、第2のクラス推定部は、第1のクラス推定部と同一であってもよい。この場合、特徴抽出部21による最初の学習に用いられる第1クラス推定部と、特徴抽出部21による2番目の学習に用いられる第2クラス推定部とが同一であるので、抽出された画像の傾向が元の画像の傾向とが一致又は類似する場合に、分類精度を向上させることができる。
また、画像処理装置1が、座標推定部23により、複数の画像のうち、複数のオブジェクトが存在する画像について、複数のオブジェクトそれぞれが存在する領域の座標をそれぞれ少なくとも一つ出力させてもよい。この場合、各オブジェクトについて画像が抽出されるので、学習用の画像をより増やすことができる。
また、画像処理装置1が、座標推定部23により、1以上のオブジェクトのうち少なくとも一のオブジェクトについて、異なる複数の領域それぞれの座標を出力させてもよい。この場合、学習用の画像として、一つのオブジェクトについて様々な画像を増やすことができる。
また、画像処理装置1が、生成されたモデル2を記憶部14から読み出してもよい。また、画像処理装置1が、読み出されたモデル2に含まれる特徴抽出部21により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させてもよい。また、画像処理装置1が、出力された所与の画像の特徴マップに基づいて、読み出されたモデル2により、1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させてもよい。この場合、最初に用意された画像に加えて、これらから抽出された画像を用いて訓練された特徴抽出部21を含むモデル2が用いられるので、画像内に存在する複数のオブジェクトの分類精度を向上させることができる。
1 画像処理装置
11 システム制御部
12 システムバス
13 入出力インターフェース
14 記憶部
15 通信部
16 入力部
17 表示部
18 GPU
19 GPUメモリ
111 画像取得部
112 第1訓練部
113 座標出力制御部
114 画像抽出部
115 第2訓練部
116 モデル記憶制御部
117 モデル読み出し部
118 特徴マップ出力制御部
119 クラス情報出力制御部
2 モデル
21 特徴抽出部
22 全体画像クラス推定部
23 座標推定部
24 部分画像クラス推定部
11 システム制御部
12 システムバス
13 入出力インターフェース
14 記憶部
15 通信部
16 入力部
17 表示部
18 GPU
19 GPUメモリ
111 画像取得部
112 第1訓練部
113 座標出力制御部
114 画像抽出部
115 第2訓練部
116 モデル記憶制御部
117 モデル読み出し部
118 特徴マップ出力制御部
119 クラス情報出力制御部
2 モデル
21 特徴抽出部
22 全体画像クラス推定部
23 座標推定部
24 部分画像クラス推定部
Claims (11)
- 複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成手段と、
前記生成されたモデルをモデル記憶手段に記憶させる記憶制御手段と、
を備え、
前記生成手段は、
1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得手段と、
前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練手段と、
前記第1訓練手段により訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御手段と、
前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御手段と、
前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出手段と、
前記抽出された画像を用いて、前記第1訓練手段により訓練された前記特徴抽出部を更に訓練する第2訓練手段と、
を含むことを特徴とする学習装置。 - 前記モデルは、前記特徴マップに基づいて、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力する少なくとも一のクラス推定部を更に含み、
前記第1訓練手段は、前記取得された複数の画像を用いて、前記特徴抽出部と、前記少なくとも一のクラス推定部のうち所定の第1クラス推定部と、を訓練し、
前記第2訓練手段は、前記取得された複数の画像を用いて、前記特徴抽出部と、前記少なくとも一のクラス推定部のうち所定の第2クラス推定部と、を訓練することを特徴とする請求項1に記載の学習装置。 - 前記第2クラス推定部は、前記少なくとも一のクラス推定部のうち、前記第1クラス推定部とは異なるクラス推定部であることを特徴とする請求項2に記載の学習装置。
- 前記第2クラス推定部は、前記第1クラス推定部と同一であることを特徴とする請求項2に記載の学習装置。
- 前記座標出力制御手段は、前記座標推定部により、前記複数の画像のうち、複数のオブジェクトが存在する画像について、前記複数のオブジェクトそれぞれが存在する領域の座標をそれぞれ少なくとも一つ出力させることを特徴とする請求項1乃至4の何れか一項に記載の学習装置。
- 前記座標出力制御手段は、前記座標推定部により、前記1以上のオブジェクトのうち少なくとも一のオブジェクトについて、異なる複数の領域それぞれの座標を出力させることを特徴とする請求項1乃至5の何れか一項に記載の学習装置。
- 請求項1乃至6の何れか一項に記載の学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出し手段と、
前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御手段と、
前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御手段と、
を備えることを特徴とする分類装置。 - コンピュータにより実行される学習方法において、
複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成ステップと、
前記生成されたモデルをモデル記憶手段に記憶させる記憶制御ステップと、
を備え、
前記生成ステップは、
1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得ステップと、
前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練ステップと、
前記第1訓練ステップにより訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御ステップと、
前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御ステップと、
前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出ステップと、
前記抽出された画像を用いて、前記第1訓練ステップにより訓練された前記特徴抽出部を更に訓練する第2訓練ステップと、
を含むことを特徴とする学習方法。 - コンピュータにより実行される分類方法において、
請求項1乃至6の何れか一項に記載の学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出しステップと、
前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御ステップと、
前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御ステップと、
を含むことを特徴とする分類方法。 - コンピュータにより実行される学習プログラムにおいて、
前記コンピュータを、
複数の畳み込み層を含む特徴抽出部であって、1以上のオブジェクトが存在する画像の特徴マップを出力する特徴抽出部と、前記特徴マップに基づいて、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を出力する座標推定部と、を含む、前記1以上のオブジェクトを分類するためのモデルを生成する生成手段と、
前記生成されたモデルをモデル記憶手段に記憶させる記憶制御手段と、
として機能させ、
前記生成手段は、
1以上のオブジェクトがそれぞれ存在する複数の画像を、画像記憶手段から取得する画像取得手段と、
前記取得された複数の画像を用いて、前記特徴抽出部を訓練する第1訓練手段と、
前記第1訓練手段により訓練された前記特徴抽出部により、前記複数の画像のうち1以上の画像それぞれの特徴マップを出力させる特徴マップ出力制御手段と、
前記1以上の画像それぞれについて、前記出力された特徴マップを前記座標推定部に入力して、前記画像のうち、前記オブジェクトが存在する部分の領域の座標を少なくとも一つ出力させる座標出力制御手段と、
前記1以上の画像それぞれについて、該画像から、前記出力された座標により示される部分の画像を抽出する抽出手段と、
前記抽出された画像を用いて、前記第1訓練手段により訓練された前記特徴抽出部を更に訓練する第2訓練手段と、
を含むことを特徴とする学習プログラム。 - コンピュータを、
請求項1乃至6の何れか一項に記載の学習装置により生成された前記モデルを記憶する記憶手段から、前記モデルを読み出す読み出し手段と、
前記読み出されたモデルに含まれる前記特徴抽出部により、1以上のオブジェクトが存在する所与の画像の特徴マップを出力させる特徴マップ出力制御手段と、
前記出力された所与の画像の特徴マップに基づいて、前記読み出されたモデルにより、前記1以上のオブジェクトそれぞれのクラスを示すクラス情報を出力させるクラス情報出力制御手段と、
として機能させることを特徴とする分類プログラム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019552308A JP6612487B1 (ja) | 2019-05-31 | 2019-05-31 | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム |
| US16/635,567 US11455502B2 (en) | 2019-05-31 | 2019-05-31 | Learning device, classification device, learning method, classification method, learning program, and classification program |
| PCT/JP2019/021679 WO2020240809A1 (ja) | 2019-05-31 | 2019-05-31 | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2019/021679 WO2020240809A1 (ja) | 2019-05-31 | 2019-05-31 | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020240809A1 true WO2020240809A1 (ja) | 2020-12-03 |
Family
ID=68692083
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2019/021679 Ceased WO2020240809A1 (ja) | 2019-05-31 | 2019-05-31 | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11455502B2 (ja) |
| JP (1) | JP6612487B1 (ja) |
| WO (1) | WO2020240809A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113269190A (zh) * | 2021-07-21 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于人工智能的数据分类方法、装置、计算机设备及介质 |
| US11487975B2 (en) * | 2019-06-24 | 2022-11-01 | Samsung Electronics Co., Ltd. | Electronic apparatus and method of controlling the same |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20210061839A (ko) * | 2019-11-20 | 2021-05-28 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
| KR102208688B1 (ko) * | 2020-07-23 | 2021-01-28 | 주식회사 어반베이스 | 데이터 증강 기반 사물 분석 모델 학습 장치 및 방법 |
| KR102234609B1 (ko) * | 2020-07-23 | 2021-04-02 | 주식회사 어반베이스 | 이미지 데이터베이스 분석 기반 상품 추천 장치 |
| JP2022096379A (ja) * | 2020-12-17 | 2022-06-29 | 富士通株式会社 | 画像出力プログラム,画像出力方法および画像出力装置 |
| JP2022182702A (ja) * | 2021-05-28 | 2022-12-08 | 富士通株式会社 | 評価プログラム、評価方法、及び情報処理装置 |
| WO2023105609A1 (ja) * | 2021-12-07 | 2023-06-15 | 楽天グループ株式会社 | 情報処理装置、情報処理方法、プログラム、および学習モデル |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017059207A (ja) * | 2015-09-18 | 2017-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 画像認識方法 |
| JP2018169672A (ja) * | 2017-03-29 | 2018-11-01 | 三菱電機インフォメーションシステムズ株式会社 | 教師画像を生成する方法、コンピュータおよびプログラム |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3563305A4 (en) * | 2016-12-30 | 2020-08-05 | Nokia Technologies Oy | ARTIFICIAL NEURONAL NETWORK |
| JP2020525258A (ja) * | 2017-06-30 | 2020-08-27 | プロマトン・ホールディング・ベー・フェー | 深層学習法を使用する3d歯顎顔面構造の分類および3dモデリング |
| JP7026456B2 (ja) * | 2017-07-05 | 2022-02-28 | キヤノン株式会社 | 画像処理装置、学習装置、フォーカス制御装置、露出制御装置、画像処理方法、学習方法、及びプログラム |
| WO2019220622A1 (ja) * | 2018-05-18 | 2019-11-21 | 日本電気株式会社 | 画像処理装置、システム、方法及びプログラムが格納された非一時的なコンピュータ可読媒体 |
| US12039451B2 (en) * | 2018-06-01 | 2024-07-16 | Nec Corporation | Information processing device, control method, and program |
| WO2020102988A1 (zh) * | 2018-11-20 | 2020-05-28 | 西安电子科技大学 | 基于特征融合和稠密连接的红外面目标检测方法 |
-
2019
- 2019-05-31 WO PCT/JP2019/021679 patent/WO2020240809A1/ja not_active Ceased
- 2019-05-31 JP JP2019552308A patent/JP6612487B1/ja active Active
- 2019-05-31 US US16/635,567 patent/US11455502B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017059207A (ja) * | 2015-09-18 | 2017-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 画像認識方法 |
| JP2018169672A (ja) * | 2017-03-29 | 2018-11-01 | 三菱電機インフォメーションシステムズ株式会社 | 教師画像を生成する方法、コンピュータおよびプログラム |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11487975B2 (en) * | 2019-06-24 | 2022-11-01 | Samsung Electronics Co., Ltd. | Electronic apparatus and method of controlling the same |
| CN113269190A (zh) * | 2021-07-21 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于人工智能的数据分类方法、装置、计算机设备及介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11455502B2 (en) | 2022-09-27 |
| US20210406615A1 (en) | 2021-12-30 |
| JP6612487B1 (ja) | 2019-11-27 |
| JPWO2020240809A1 (ja) | 2021-09-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6612487B1 (ja) | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム | |
| US10846524B2 (en) | Table layout determination using a machine learning system | |
| JP6612486B1 (ja) | 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム | |
| US10699166B2 (en) | Font attributes for font recognition and similarity | |
| US20190228508A1 (en) | Digital Image Fill | |
| JP7059318B2 (ja) | 地域的特徴を有する分類器学習のための学習データ生成方法およびそのシステム | |
| CN113569852B (zh) | 语义分割模型的训练方法、装置、电子设备及存储介质 | |
| US20200151508A1 (en) | Digital Image Layout Training using Wireframe Rendering within a Generative Adversarial Network (GAN) System | |
| US20130177235A1 (en) | Evaluation of Three-Dimensional Scenes Using Two-Dimensional Representations | |
| DE102016011173A1 (de) | Erstellen von Zusammenfassungen von Multimediadokumenten | |
| CN112215171B (zh) | 目标检测方法、装置、设备及计算机可读存储介质 | |
| CN113537187B (zh) | 文本识别方法、装置、电子设备及可读存储介质 | |
| CN113763385B (zh) | 视频目标分割方法、装置、设备及介质 | |
| Chen et al. | Scribblebox: Interactive annotation framework for video object segmentation | |
| US20210166073A1 (en) | Image generation method and computing device | |
| Yang et al. | Xception-based general forensic method on small-size images | |
| JP7344501B1 (ja) | プログラム、方法、情報処理装置、システム | |
| US20120229857A1 (en) | Moving labels in graphical output to avoid overprinting | |
| Wang et al. | PCB defect detection based on pseudo-inverse transformation and YOLOv5 | |
| KR101768913B1 (ko) | 지리 정보 데이터 분할 방법, 분할 장치 및 이를 수행하는 프로그램을 기록하는 기록매체 | |
| JP7685374B2 (ja) | プラント点群分類システム、プラント点群分類方法 | |
| US20220335712A1 (en) | Learning device, learning method and recording medium | |
| US20220092260A1 (en) | Information output apparatus, question generation apparatus, and non-transitory computer readable medium | |
| KR20230154602A (ko) | 표 인식 방법 및 장치 | |
| JP2022150553A (ja) | 学習用データセット生成装置及び方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ENP | Entry into the national phase |
Ref document number: 2019552308 Country of ref document: JP Kind code of ref document: A |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19931322 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19931322 Country of ref document: EP Kind code of ref document: A1 |