WO2020121811A1 - 画像生成装置、画像生成方法、及びプログラム - Google Patents

画像生成装置、画像生成方法、及びプログラム Download PDF

Info

Publication number
WO2020121811A1
WO2020121811A1 PCT/JP2019/046324 JP2019046324W WO2020121811A1 WO 2020121811 A1 WO2020121811 A1 WO 2020121811A1 JP 2019046324 W JP2019046324 W JP 2019046324W WO 2020121811 A1 WO2020121811 A1 WO 2020121811A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
feature
category
learning
input
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
Application number
PCT/JP2019/046324
Other languages
English (en)
French (fr)
Inventor
香織 熊谷
之人 渡邉
島村 潤
淳 嵯峨田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to US17/312,314 priority Critical patent/US20220027670A1/en
Publication of WO2020121811A1 publication Critical patent/WO2020121811A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features

Definitions

  • the present invention relates to an image generation device, an image generation method, and a program, and more particularly to an image generation device, an image generation method, and a program that generate an image having a desired unique feature.
  • Non-Patent Document 1 In recent years, many methods based on CNN (Convolutional Neural Network) have been disclosed, as disclosed in Non-Patent Document 1.
  • -CNN repeatedly performs convolution processing that outputs a feature map created by multiplying the input image while sliding a filter that detects features, and pooling processing that collects the extracted features for each local area.
  • CNN In order for CNN to exhibit high identification performance, it is necessary to input a large amount of learning data into CNN and learn the filter to identify these. That is, a large amount of learning data is required to acquire a CNN having a highly accurate discrimination ability.
  • a large amount of cost is required to manually prepare a large amount of learning data.
  • many images are required for each category.
  • the image classification task disclosed in Non-Patent Document 2 In the data set used in the image recognition competition ILSVRC2012 using the public data set ImageNet as a subject, about 1,200 images per category, totaling 1,000 categories of images, are prepared.
  • the more detailed the categories eg, the chair category is divided into the sofa, bench, and dining chair categories), the more difficult it is to prepare the learning data.
  • Non-Patent Document 1 image data is expanded by using a geometric conversion method (cropping, rotation, etc.) of a predetermined image, and an image classifier is trained by using the expanded image data set. We have confirmed improvement in classification accuracy.
  • a geometric conversion method cropping, rotation, etc.
  • Patent Document 1 and Non-Patent Document 3 propose a method of converting an image based on features (attributes) that are common to categories. A plurality of paired data of an image and an attribute of the image are prepared, and the image generation device is learned by using the paired data.
  • Non-Patent Document 1 since the image data set obtained in Non-Patent Document 1 is limited to images obtained by geometrical transformation of images, images that cannot be obtained by geometrical transformation may not be classified correctly. There was a problem.
  • Non-Patent Document 3 various conversions can be performed based on attributes, but the images to be converted are limited to objects in the category used for learning by the image generation device. Therefore, when converting an image of an unknown category that is not included in the learning data used for learning of the image generation device, there is a problem that the conversion position is not determined and the desired first image cannot be obtained.
  • the present invention has been made in view of the above points, and provides an image generation device, an image generation method, and a program capable of generating an image in a desired category and having a desired unique feature.
  • the purpose is to provide.
  • An image generating apparatus is an image generating apparatus that generates a first image having a desired unique characteristic, and is in the category obtained from a second image belonging to the same category as the first image.
  • a generating unit that generates the first image by associating a category feature that is a feature common to the images to which it belongs and a unique feature that is a unique feature that is different between the first image and the second image.
  • the characteristic feature is that the desired characteristic feature is associated with each of the divided regions obtained by dividing the second image.
  • the image generation method is an image generation method for generating a first image having a desired feature, wherein the generation unit obtains from the second image belonging to the same category as the first image.
  • the first image by associating a category feature that is a common feature of the images belonging to the category with a unique feature that is a unique feature different between the first image and the second image.
  • the unique characteristic is generated, and the desired unique characteristic is associated with each of the divided regions obtained by dividing the second image.
  • the generation unit determines that the category feature is a feature common to images belonging to the category obtained from the second image belonging to the same category as the first image.
  • the first image is generated by associating the unique feature which is a unique feature different between the first image and the second image.
  • the unique feature is a desired unique feature associated with each of the divided areas obtained by dividing the second image.
  • the category feature which is a feature common to the images belonging to the category obtained from the second image belonging to the same category as the first image and the unique feature different between the first image and the second image
  • the characteristic feature which is a characteristic
  • the category features of the image generating apparatus according to the present invention are extracted from the second image excluding the unique features, and are not identified as having the unique features by a predetermined classifier. Can be learned.
  • the generation unit of the image generation apparatus converts the mask using the position information of the divided area associated with the desired unique feature by applying the category feature, and obtains by the conversion.
  • the first image can be generated using the data obtained.
  • the generation unit of the image generating apparatus further includes, from the desired unique feature, data in which position information of a divided area associated with the desired unique feature is suppressed, and the category feature. Data can be transformed and the data obtained by the transformation can be used to generate the first image.
  • the generation unit of the image generation device is an encoder that extracts the category feature by inputting the second image, and the first image by inputting the category feature and the desired unique feature.
  • a decoder for generating the learning image wherein the encoder and the decoder input the learning image to the encoder based on a pair of a learning unique feature and a learning image having the learning unique feature. Then, when the learning peculiar feature is input to the decoder, the decoder reconstructs the learning image, and the learning peculiar feature is identified by a predetermined discriminator having the category feature as an input. It can be pre-learned so that it is not identified as having.
  • the predetermined discriminator of the image generating apparatus can be learned in advance so as to correctly discriminate that the category feature has the unique feature when the category feature is input.
  • the program according to the present invention is a program for causing a computer to function as each unit of the image generating apparatus.
  • the image generation device the image generation method, and the program of the present invention, it is possible to generate an image in a desired category and having a desired unique feature.
  • FIG. 1 is a block diagram showing the configuration of the image generation apparatus according to the embodiment of the present invention.
  • the image generation apparatus 100 is configured by a computer including a CPU, a RAM, and a ROM that stores a program for executing an image generation processing routine described later, and is functionally configured as shown below. ..
  • the image generating apparatus 100 is configured to include an input unit 1, a storage unit 2, a generating unit 3, a parameter updating unit 4, and an output unit 5.
  • an input unit 1 a storage unit 2
  • a generating unit 3 a parameter updating unit 4
  • an output unit 5 an output unit 5.
  • each function will be described by dividing the processing of the image generating apparatus 100 into a learning processing and an image generating processing.
  • the input unit 1 receives an input of one or more pairs of a unique feature for learning and a learning image including the unique feature for learning.
  • the category feature is a feature common to objects belonging to a desired category. For example, in the case of a hat category “hat”, the brim portion is “round”.
  • the unique feature is a feature that may not necessarily be common to multiple targets belonging to a desired category.
  • the hat category “hat” has a characteristic of "blue”.
  • the feature “blue” may or may not be common to a plurality of objects belonging to the category “hat”.
  • the attribute position data is data indicating the unique feature (attribute) of each position in the first image (output image).
  • the learning image x is a tensor having a size of width ⁇ height ⁇ number of channels, and here, the width of the learning image x is W, the height is H, and the number of channels is D.
  • the coordinates of the upper left front of the tensor are (0,0,0), and the coordinates corresponding to the d-th channel are (w,h,d) from the upper left front to w to the right and h to the bottom. ).
  • the width dimension is described as dimension 1, the width dimension is dimension 2, and the number of channels is dimension 3. That is, the size of dimension 1 of the learning image x is W, the size of dimension 2 is H, and the size of dimension 3 is D.
  • the unique feature is a unique feature that is different in images of the same category, and is associated with each of the divided areas obtained by dividing the learning image.
  • the input unit 1 accepts the input of the attribute position data y representing the attribute as the unique feature for each position.
  • the attribute position data y is data indicating the attribute of each position after the learning image x is converted.
  • the attribute may be any word as long as it represents a unique characteristic of a predefined image converted by the image generating apparatus 100, and for example, colors such as red and blue, materials such as wood and glass, patterns such as dots and stripes, and the like. It is a word that shows the characteristics of.
  • each attribute has an identifier that can be specified. For example, when the predefined attribute is A type, a natural number of 0 or more and less than A is given. Further, it is assumed that the attribute position data y indicates the presence or absence of each attribute at each position of the learning image x after conversion.
  • the width is divided into M pieces and the vertical width is divided into N pieces and divided into grids.
  • the converted image of the learning image x is the m-th grid from the upper left to the right and the n-th grid below.
  • 1 is placed at the position (m, n, a) of the tensor Y.
  • the input unit 1 passes one or more pairs of the received learning image x and the attribute position data y to the generation unit 3.
  • the storage unit 2 receives the learning image x as an input and extracts an implicit expression E(x) as a category feature that is a feature common to images belonging to the same category as the learning image x. ) And attribute position data y as an input, each position has an attribute, and a decoder for generating an image belonging to the category, and the latent expression E(x) as an input are used to identify whether or not each attribute is included.
  • the discriminator to be stored is stored.
  • each of the encoder, the decoder, and the discriminator is a neural network
  • the storage unit 2 stores the parameters of each neural network.
  • the generation unit 3 outputs the output image. Output image by associating latent expression E(x) obtained from a learning image belonging to the same category with attribute position data y To generate.
  • the generation unit 3 first acquires each parameter of the encoder, the decoder, and the discriminator from the storage unit 2.
  • the generation unit 3 inputs the learning image x to the encoder to extract the latent expression E(x), inputs the extracted latent expression E(x) and the attribute position data y to the decoder, and outputs the output image. To generate.
  • Figure 2 shows the relationship between the encoder, decoder, and discriminator.
  • the encoder may be any neural network as long as it takes the learning image x as an input and extracts category features from the learning image x except attribute information.
  • the latent expression E(x) will be described as an example of the category feature.
  • the encoder of Non-Patent Document 3 can be adopted.
  • the encoder of Non-Patent Document 3 uses a neural network in which the size of the latent expression E(x) that is output is 2x2x512 when the size of the input image is 256x256x3.
  • the decoder inputs the latent expression E(x) and the attribute position data y, and generates an image having the same size as the learning image x and having the attribute information of each position given by the attribute position data y. It is a neural network.
  • Figure 3 shows the decoder configuration.
  • the decoder includes a latent latent expression preprocessing, a local attribute position data preprocessing, a local input data integration processing, a local decoder processing, a global attribute position data preprocessing, and a global input data integration. Processing, global decoder processing, and image decoder processing are performed.
  • Each of the local decoder, the global decoder, and the image decoder is a neural network, and the decoder superimposes the tensor output from the local decoder, the tensor output from the global decoder, and the attribute position data y in the direction of dimension 3. Input tensor to the image decoder and output image To generate.
  • each process of the decoder will be described.
  • the local decoder is a decoder for filtering only the positions with attributes.
  • the local decoder uses the attribute position data y as a mask and transforms the latent expression E(x) so as to focus only on the positions having attributes.
  • the dimensions 1 and 2 of the size of the input tensor are the same as the dimensions 1 and 2 of the attribute position data y, and the size of the dimension 3 is the latent expression E(x). Any size of neural network that outputs the same tensor size as the input tensor is output.
  • the size of the latent expression E(x) is transformed by the local latent expression preprocessing, and the local attribute position data preprocessing is performed.
  • the size of the attribute position data y is modified by, and the output of each pre-process is integrated by the local input data integration process.
  • the latent latent expression preprocessing for local is processing for transforming the dimensions 1 and 2 of the size of the latent expression E(x) into the same tensors as the sizes of dimensions 1 and 2 of the attribute position data y. is there.
  • the local latent expression preprocessing when the size of the latent expression E(x) is 2 ⁇ 2 ⁇ 512 and the size of the attribute position data y is 16 ⁇ 16 ⁇ 11, the local latent expression preprocessing is performed.
  • the tensor of the latent expression E(x) is transformed into 1 ⁇ 1 ⁇ 512, and then 16 ⁇ 16 pieces are duplicated in the directions of dimension 1 and dimension 2 to obtain 16 ⁇ A process of outputting a 16 ⁇ 512 tensor is performed.
  • the local attribute position data preprocessing is a process for transforming the size 3 of the attribute position data y so that it has the same tensor as the size 3 of the latent expression E(x).
  • the local attribute position data preprocessing is performed before the local attribute position data preprocessing.
  • the tensors of the attribute position data y are added in the direction of dimension 3 to form a 16 ⁇ 16 ⁇ 1 tensor, which is then 512 in the direction of dimension 3.
  • a process of duplicating each and outputting a 16 ⁇ 16 ⁇ 512 tensor is performed.
  • the input data integration process for local uses the tensor which is the output of the latent representation preprocessing for local and the tensor which is the output of the attribute position data preprocessing for local as input, and the tensor of the same size as these two input tensors is input. This is the process of outputting.
  • the dimension 1 and the dimension 2 are the same as the size of the dimension 1 and the dimension 2 of the attribute position data y, and the dimension 3 A process of outputting a tensor whose size is the same as the size of the dimension 3 of the latent expression E(x) is performed.
  • Global decoder is a decoder to maintain the structure of the entire image.
  • the global decoder suppresses the position information of the attribute position data y by reducing the size of the dimension 1 and the dimension 2 of the attribute position data y in advance, and converts the position information together with the latent expression E(x) to obtain the image. Convert to preserve the overall structure.
  • the global decoder inputs a tensor whose dimensions 1 and 2 are the same as the sizes of dimensions 1 and 2 of the latent expression E(x), and the sizes of dimensions 1 and 2 are the dimensions of the attribute position data y.
  • Any neural network that outputs a tensor of the same size as 1 and dimension 2 may be used.
  • the size of the attribute position data y is transformed and output by the global attribute position data preprocessing.
  • the tensor and the latent expression E(x) are integrated by the global input data integration process.
  • the global attribute position data preprocessing transforms the size of the dimension 1 and the dimension 2 of the attribute position data y to be the same tensor as the size of the dimension 1 and the dimension 2 of the latent expression E(x). Processing.
  • the convolution processing is performed by the convolutional neural network. Is performed, and processing for outputting a 2 ⁇ 2 ⁇ 512 tensor is performed.
  • the global input data integration process uses the latent expression E(x) and the tensor that is the output of the global attribute position data preprocessing as input, and the sizes of dimension 1 and dimension 2 are the dimensions of these two input tensors. This is a process for outputting a tensor having the same size as 1 and dimension 2.
  • the global input data integration process outputs two tensors having the same dimension 1 and dimension 2 as the latent representation dimension 1 and dimension 2 by superposing the two input tensors in the direction of dimension 3. Perform processing to
  • the image decoder receives a tensor which is an output of the local decoder, a tensor which is an output of the global decoder, and a tensor obtained by superimposing the attribute position data y in the direction of dimension 3, and outputs the output image. Is generated.
  • the classifier is a neural network that identifies the attribute of the image when the latent expression E(x) obtained from the image is input.
  • the discriminator accepts a 2 ⁇ 2 ⁇ 512 tensor as an input and outputs a vector of length 10 Can be used.
  • the generation unit 3 uses the learning image x and the generated output image. , And the attribute position data y are passed to the parameter updating unit 4.
  • the parameter updating unit 4 inputs the learning image x into the encoder on the basis of the pair of the attribute position data y and the learning image x having the attribute of each position represented by the attribute position data y to obtain the attribute position data y.
  • An encoder and a decoder so that when input to the decoder, the decoder reconstructs the learning image x and is not identified as having the attribute represented by the attribute position data y by the identifier that inputs the latent expression E(x).
  • Parameters of the discriminator are updated, and the parameters of the discriminator are updated so that the latent representation E(x) is correctly identified as having the attribute represented by the attribute position data y when it is input.
  • the parameter updating unit 4 first acquires each parameter of the encoder, the decoder, and the discriminator from the storage unit 2.
  • the parameter updating unit 4 updates the parameters of the encoder, decoder, and discriminator, which are neural networks, so as to satisfy the following two types of constraints.
  • the first constraint is the generated output image Is to update each parameter of the encoder and the decoder so as to reconstruct the learning image x.
  • any learning method can be used as long as it is set so as to satisfy the first constraint.
  • the learning image x and the generated output image The square error between and is calculated, and each parameter of the encoder and the decoder is updated so as to reduce the square error.
  • the second restriction is that the encoder to which the learning image x is input extracts the latent expression E(x) so as to remove the attribute information, and the classifier extracts the attribute position data y from the latent expression E(x). Updating the encoder and discriminator parameters to correctly identify as having the attributes they represent.
  • any learning method can be used as long as it is set so as to satisfy the second constraint.
  • the discriminator correctly discriminates that the latent expression E(x) has the attribute represented by the attribute position data y.
  • the parameter of the discriminator is updated so that the discriminator has a higher probability of discriminating that the discriminator has the attribute represented by the attribute position data y from the latent expression E(x), while updating the parameter of the encoder so as to reduce the probability that To do.
  • the parameter updating unit 4 stores the learned parameters of the encoder, the decoder, and the discriminator in the storage unit 2.
  • each parameter of the encoder, the decoder, and the discriminator may be learned for each one or more pairs of the input learning image x and the attribute position data y.
  • a plurality of learning processes may be performed simultaneously or collectively.
  • the second image x is assumed to be the same tensor as the learning image x.
  • Input unit 1 is the first image you want to generate The second image x belonging to the same category as the above and the input of the attribute position data y which is a desired unique feature are received.
  • the second image x is a tensor having a size of width ⁇ height ⁇ number of channels, and here, the width of the second image x is W, the height is H, and the number of channels is D. ..
  • the coordinates of the upper left front of the tensor are (0,0,0), and the coordinates corresponding to the d-th channel are (w,h,d) from the upper left front to w to the right and h to the bottom. ).
  • the width dimension is described as dimension 1, the width dimension is dimension 2, and the number of channels is dimension 3. That is, the size of dimension 2 of the second image x is W, the size of dimension 2 is H, and the size of dimension 3 is D.
  • the input unit 1 passes the received second image x and the attribute position data y to the generation unit 3.
  • the storage unit 2 stores each parameter of the encoder, the decoder, and the discriminator learned by the learning process.
  • the generation unit 3 uses the first image The first image by associating the latent expression E(x) obtained from the second image x belonging to the same category with the attribute position data y To generate.
  • the generation unit 3 first acquires the learned parameters of the encoder, the decoder, and the discriminator from the storage unit 2.
  • the generation unit 3 inputs the second image x to the encoder to extract the latent expression E(x), inputs the extracted latent expression E(x) and the attribute position data y to the decoder, and One image To generate.
  • the generator 3 generates the generated first image. To the output unit 5.
  • the output unit 5 displays the first image Is output.
  • FIG. 4 shows an example of the first image generated by the image generating apparatus 100.
  • the position of the entire hat is black based on the second image x belonging to the category “hat” and the attribute position data y indicating that the position of the entire object has the attribute “black”.
  • the latent expression E(x) of the category excluding the attribute information can be extracted by the encoder that has been learned by the learning process, and the extracted latent expression is extracted. This is because the attribute represented by the desired attribute position data y can be associated with E(x).
  • a plurality of first images having the same category as the second image and having the attributes represented by the attribute position data y are displayed. Can be generated.
  • Multiple first images generated in this way Can be used, for example, for learning images of the object detector.
  • FIG. 5 is a flowchart showing a learning processing routine according to the embodiment of the present invention.
  • step S100 input of one or more pairs of the attribute position data y and the learning image x is accepted.
  • step S110 the generation unit 3 inputs the learning image x into the encoder and extracts the latent expression E(x).
  • step S120 the latent expression E(x) and the attribute position data y extracted in step S110 are input to the decoder to output the output image. To generate.
  • step S130 the learning image x is input to the encoder and the attribute position data y is input to the decoder based on the pair of the attribute position data y and the learning image x having the attribute of each position represented by the attribute position data y.
  • Each of the encoder and the decoder is configured so that when input, the decoder reconstructs the learning image x and is not identified as having the attribute represented by the attribute position data y by the identifier that inputs the latent expression E(x).
  • the parameters are updated, and the parameters of the discriminator are updated so as to correctly identify that the latent position E(x) has the attribute represented by the attribute position data y when the latent expression E(x) is input.
  • FIG. 6 is a flowchart showing the decoding processing routine in step S120.
  • step S121 the generation unit 3 transforms the latent expression E(x) so that the dimensions 1 and 2 of the size are the same tensors as the sizes of the dimensions 1 and 2 of the attribute position data y. I do.
  • step S122 the generation unit 3 performs local attribute position data preprocessing for transforming the size of the dimension 3 of the attribute position data y to be the same tensor as the size of the dimension 3 of the latent expression E(x).
  • step S123 the generation unit 3 receives the tensor obtained in step S121 and the tensor obtained in step S122 as input, and outputs local tensor having the same size as the two input tensors. Perform integration processing.
  • step S124 the generation unit 3 inputs the tensor obtained in step S124 to the local decoder, uses the attribute position data y as a mask, and pays attention only to the position having the attribute latent expression E(x). To convert.
  • step S125 the generation unit 3 performs global attribute position data preprocessing for transforming the size of the dimension 1 and the dimension 2 of the attribute position data y to be the same tensor as the size of the dimension 1 and the dimension 2 of the category feature. ..
  • step S126 the generation unit 3 receives the latent expression E(x) and the tensor obtained in step S125 as input, and the sizes of dimension 1 and dimension 2 are the dimension 1 and dimension of these two input tensors. Performs global input data integration processing that outputs a tensor of the same size as 2.
  • step S127 the generation unit 3 inputs the tensor obtained in step S126 to the global decoder, suppresses the position information of the attribute position data y, and converts it together with the latent expression E(x) to convert the entire image. Convert to keep the structure of.
  • step S128 the generation unit 3 inputs the tensor decoded in step S124, the tensor decoded in step S127, and the tensor obtained by superimposing the attribute position data y in the direction of dimension 3 to the image decoder. Then output image Generate
  • FIG. 7 is a flowchart showing an image generation processing routine according to the embodiment of the present invention.
  • the same processes as those in the learning process routine are designated by the same reference numerals, and detailed description thereof will be omitted.
  • the image generation apparatus 100 executes the image generation processing routine shown in FIG. 7.
  • step S200 the first image to be generated The input of the second image x belonging to the same category as the above and the attribute position data y is accepted.
  • step S230 the first image obtained in step S120. Is output.
  • step S128 the generation unit 3 determines that the first image To generate.
  • the category feature that is a feature common to the images belonging to the category obtained from the second image belonging to the same category as the first image
  • a unique feature that is a unique feature different between the first image and the second image
  • the first image is generated by associating the unique feature with the unique feature
  • the learning process and the image generation process are performed by the same image generation device 100, but they may be performed by different devices.
  • the storage unit 2 in which the encoder, the decoder, and the discriminator that have been learned by the learning process are stored may be used for the image generation process.
  • the program can be stored in a computer-readable recording medium and provided.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

所望のカテゴリの画像であって、かつ、所望の固有特徴を有する画像を生成することができるようにする。 生成部3は、第一の画像と同じカテゴリに属する第二の画像から得られた当該カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、第一の画像と第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで第一の画像を生成する。

Description

画像生成装置、画像生成方法、及びプログラム
 本発明は、画像生成装置、画像生成方法、及びプログラムに係り、特に、所望の固有特徴を有する画像を生成する画像生成装置、画像生成方法、及びプログラムに関する。
 近年、デジタルカメラやスマートフォンの普及により画像の取得が容易となり、これらの画像に写った物体を機械で識別することで、工場での人の目視点検の代替や、小売り店舗での商品の欠品検知自動化等、様々な場面で人の作業効率化に役立ちはじめている。
 このように、画像に写った物体を機械で識別する、画像の識別技術への要望は高まっている。
 画像の識別技術に関して、近年、非特許文献1で開示されているような、CNN(Convolutional Neural Network)に基づく手法が多く開示されている。
 CNNは、特徴を検出するフィルタをスライドさせながら入力画像に対して掛け合わせて作成した特徴マップを出力する畳み込み処理と、抽出した特徴を局所領域ごとにまとめ上げるプーリング処理を繰り返し行っている。
 CNNが高い識別性能を発揮するためには、大量の学習データをCNNに入力し、これらを識別するようにフィルタを学習する必要がある。つまり、高精度な識別能力を持ったCNNを獲得するためには、大量の学習データが必要である。
 大量の学習データをすべて人手で用意するためには、多くのコストがかかる。具体的には、画像をカテゴリに分類する画像分類タスクのための学習データを用意するためには、カテゴリ毎に多くの画像が必要であり、例えば非特許文献2で開示されている画像分類タスク用公開データセットImageNetを題材とした画像認識のコンペティションILSVRC2012で使用されたデータセットでは、1カテゴリ当たり約1,200枚、合計1,000カテゴリ分の画像が用意されている。さらに、カテゴリが詳細(例えば、椅子カテゴリを、ソファ、ベンチ、ダイニングチェアカテゴリに分ける場合)になるほど、学習データの準備がより大変になる。
 上記の問題に対して、少量の画像データを準備し、これらを変換することで、画像データを拡張する方法がある。
 例えば、非特許文献1では、予め定めた画像の幾何学的な変換方法(クロップや回転など)を用いて画像データを拡張し、拡張した画像データセットで画像分類器の学習を行うことで画像分類精度の向上を確認している。
 また、特許文献1や非特許文献3では、カテゴリに共通して存在する特徴(属性)に基づいて画像を変換する方法が提案されている。画像とその画像が持つ属性のペアデータを複数用意し、これを学習データとして画像生成装置を学習する。
 この画像生成装置に、画像と変換したい属性とのペアを入力すると、変換したい属性を特徴として持つ画像が出力される。
特開2018-55384号公報
C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, A. Rabinovich. "Going deeper with convolutions." In proc. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015, pp. 1-9. O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. Berg, L. Fei-Fei. " ImageNet Large Scale Visual Recognition Challenge." In proc. International Journal of Computer Vision (IJCV), 2015, pp.211-252. G. Lample, N. Zeghidour, N. Usunier, A. Bordes, L. Denoyer, M. Ranzato, "Fader Networks: Manipulating Images by Sliding Attributes." In Proc. Of NIPS, 2017, pp.5963-5972.
 しかし、非特許文献1で得られる画像データセットは、画像の幾何学的な変換で得られる画像に限られるため、幾何学的な変換で得られない画像は正しく分類できない可能性がある、という問題があった。
 例えば、色や柄の異なる画像は得られないため、少量の画像データセットに無い色や柄の画像を正しく分類できない可能性がある。
 また、非特許文献3では、属性に基づいて多様な変換が可能であるが、変換対象となる画像は、画像生成装置の学習に用いたカテゴリの物体に限られる。そのため、画像生成装置の学習に用いた学習データに無い未知のカテゴリの画像を変換する場合には、変換する場所が定まらず、望んだ第一の画像を得られない、という問題があった。
 例えば、図8に示すように、カテゴリ「キャップ」が学習データに無い未知のカテゴリである場合、キャップのカテゴリに属する画像のどの位置を変換すべきか分からない。
 本発明は上記の点に鑑みてなされたものであり、所望のカテゴリの画像であって、かつ、所望の固有特徴を有する画像を生成することができる画像生成装置、画像生成方法、及びプログラムを提供することを目的とする。
 本発明に係る画像生成装置は、所望の固有特徴を有する第一の画像を生成する画像生成装置であって、前記第一の画像と同じカテゴリに属する第二の画像から得られた前記カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、前記第一の画像と前記第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで前記第一の画像を生成する生成部を有し、前記固有特徴は、前記第二の画像を分割した分割領域の各々について、前記所望の固有特徴が関連付けられたものである。
 また、本発明に係る画像生成方法は、所望の特徴を有する第一の画像を生成する画像生成方法であって、生成部が、前記第一の画像と同じカテゴリに属する第二の画像から得られた前記カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、前記第一の画像と前記第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで前記第一の画像を生成し、前記固有特徴は、前記第二の画像を分割した分割領域の各々について、前記所望の固有特徴が関連付けられたものである。
 本発明に係る画像生成装置及び画像生成方法によれば、生成部が、第一の画像と同じカテゴリに属する第二の画像から得られた当該カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、第一の画像と第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで第一の画像を生成する。固有特徴は、第二の画像を分割した分割領域の各々について、所望の固有特徴が関連付けられたものである。
 このように、第一の画像と同じカテゴリに属する第二の画像から得られた当該カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、第一の画像と第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで第一の画像を生成することにより、所望のカテゴリの画像であって、かつ、所望の固有特徴を有する画像を生成することができる。
 また、本発明に係る画像生成装置の記カテゴリ特徴は、前記第二の画像から前記固有特徴を除いて抽出されるように、かつ、所定の識別器に前記固有特徴を有すると識別されないように学習されていることができる。
 また、本発明に係る画像生成装置の前記生成部は、前記所望の固有特徴と関連付けられた分割領域の位置情報を用いたマスクを、前記カテゴリ特徴にかけたものを変換し、前記変換により得られたデータを用いて前記第一の画像を生成することができる。
 また、本発明に係る画像生成装置の前記生成部は、更に、前記所望の固有特徴から、前記所望の固有特徴が関連付けられた分割領域の位置情報を抑制したデータと、前記カテゴリ特徴とを含むデータを変換し、前記変換により得られたデータを用いて前記第一の画像を生成することができる。
 また、本発明に係る画像生成装置の前記生成部は、前記第二の画像を入力として前記カテゴリ特徴を抽出するエンコーダと、前記カテゴリ特徴と前記所望の固有特徴とを入力として前記第一の画像を生成するデコーダと、を更に含み、前記エンコーダ及びデコーダは、学習用の固有特徴と、前記学習用の固有特徴を有する学習用画像とのペアに基づいて、前記学習用画像を前記エンコーダに入力し、前記学習用の固有特徴を前記デコーダに入力したときに前記デコーダが、前記学習用画像を再構成し、かつ、前記カテゴリ特徴を入力とする所定の識別器により前記学習用の固有特徴を有すると識別されないように予め学習されていることができる。
 また、本発明に係る画像生成装置の前記所定の識別器は、前記カテゴリ特徴を入力としたときに正しく前記固有特徴を有すると識別するように予め学習されていることができる。
 本発明に係るプログラムは、コンピュータを、上記の画像生成装置の各部として機能させるためのプログラムである。
 本発明の画像生成装置、画像生成方法、及びプログラムによれば、所望のカテゴリの画像であって、かつ、所望の固有特徴を有する画像を生成することができる。
本発明の実施の形態に係る画像生成装置の構成の一例を示すブロック図である。 本発明の実施の形態に係る画像生成装置のエンコーダ、デコーダ、及び識別器の関係を示すイメージ図である。 本発明の実施の形態に係る画像生成装置のデコーダの構成の一例を示すイメージ図である。 本発明の実施の形態に係る画像生成装置より生成される第一の画像の例である。 本発明の実施の形態に係る画像生成装置の学習処理ルーチンを示すフローチャートである。 本発明の実施の形態に係る画像生成装置のデコード処理ルーチンを示すフローチャートである。 本発明の実施の形態に係る画像生成装置の画像生成処理ルーチンを示すフローチャートである。 本発明の課題を示すイメージ図である。
 以下、本発明の実施の形態について図面を用いて説明する。
<本発明の実施の形態に係る画像生成装置の構成>
 図1を参照して、本発明の実施の形態に係る画像生成装置100の構成について説明する。図1は、本発明の実施の形態に係る画像生成装置の構成を示すブロック図である。
 画像生成装置100は、CPUと、RAMと、後述する画像生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
 図1に示すように、本実施形態に係る画像生成装置100は、入力部1と、記憶部2と、生成部3と、パラメータ更新部4と、出力部5とを備えて構成される。以下、画像生成装置100の処理を、学習処理と、画像生成処理とに分けて各機能を説明する。
<<学習処理>>
 入力部1は、学習用の固有特徴と、当該学習用の固有特徴を含む学習用画像との1以上のペアの入力を受け付ける。
 本実施形態において、カテゴリ特徴とは、所望のカテゴリに属する対象に共通する特徴である。例えば、帽子のカテゴリ「ハット」であれば、つばの部分が「丸い」といった特徴である。
 また、固有特徴(属性)とは、所望のカテゴリに属する複数の対象に必ずしも共通しない場合がある特徴である。例えば、帽子のカテゴリ「ハット」であれば、「青い」という特徴である。「青い」という特徴は、カテゴリ「ハット」に属する複数の対象に共通する場合もあれば、共通しない場合もある。
 また、属性位置データとは、第一の画像(出力画像)における各位置の固有特徴(属性)を示すデータである。
 具体的には、学習用画像xは、サイズが横幅×縦幅×チャネル数のテンソルであり、ここでは、学習用画像xの横幅をW、縦幅をH、チャネル数をDとする。また、学習用画像xは、横幅と縦幅が等しいテンソル(すなわち、W=H)であれば何でも良い。
 また、テンソルの最左上手前の座標を(0,0,0)とし、最左上手前から右にw、下にh進み、奥にd枚目のチャネルに相当する座標を(w,h,d)と表記するものとする。
 また、説明の簡単のため、各テンソルについて、横幅の次元を次元1、縦幅の次元を次元2、チャネル数の次元を次元3と記載する。すなわち、学習用画像xの次元1のサイズはW、次元2のサイズはH、次元3のサイズはDとなる。
 横幅と縦幅が等しくない画像(W≠H)から横幅と縦幅が等しい(W=H)画像を作成する方法は、テンソルのサイズを変更する処理であれば何でも良く、例えばリサイズ処理、画像の一部を切り出すクロップ処理、画像の周囲に数値0や画像の端の画素を繰り返し追加するパディング処理、又は画像の端の画素を上下または左右で逆にして追加するミラーリング処理等を行う。
 固有特徴とは、同じカテゴリの画像で異なる固有の特徴であり、学習用画像を分割した分割領域の各々について、固有特徴が関連付けられたものである。
 本実施形態では、入力部1は、各位置についての、固有特徴としての属性を表す属性位置データyの入力を受け付ける。属性位置データyは、学習用画像xの変換後における各位置の属性を示すデータである。
 属性とは、当該画像生成装置100で変換する予め定義した画像の固有特徴を表す言葉であれば何でも良く、例えば赤、青等の色、木製、ガラス等の素材、ドットやストライプ等の柄等の特徴を示す言葉である。
 また、各属性が特定可能な識別子が付与されているものとする。例えば、予め定義した属性がA種類のとき、0以上A未満の自然数を付与する。また、学習用画像xの変換後の各位置における各属性の有無を、属性位置データyが示すものとする。
 属性位置データyは、属性がA種類のとき、サイズがM×N×AのテンソルYであり、学習用画像xのサイズがW×H×Dとしたとき1≦M≦W、1≦N≦Hとなり、M=Nであるものとする。
 学習用画像xについて、横幅をM個に、縦幅をN個に分割しグリッドに分け、学習用画像xの変換後の画像について、最左上から右にm番目、下にn番目のグリッドが持つ属性を特定する数値がaであるとき、テンソルYの(m,n,a)の位置に1を配置する。
 一方、当該グリッドが数値aで特定される属性を持っていない場合、テンソルYの(m,n,a)の位置に0を配置する。
 そして、入力部1は、受け付けた学習用画像xと属性位置データyとの1以上のペアを、生成部3に渡す。
 記憶部2には、学習用画像xを入力として学習用画像xと同一のカテゴリに属する画像に共通する特徴であるカテゴリ特徴としての潜在表現E(x)を抽出するエンコーダ、潜在表現E(x)と属性位置データyとを入力として各位置に属性を有し、かつ、当該カテゴリに属する画像を生成するデコーダ、及び潜在表現E(x)を入力として各属性が含まれるか否かを識別する識別器が格納されている。
 具体的には、エンコーダ、デコータ、及び識別器は、それぞれニューラルネットワークであり、記憶部2には、各ニューラルネットワークのパラメータが格納されている。
 生成部3は、出力画像
Figure JPOXMLDOC01-appb-I000001

と同じカテゴリに属する学習用画像から得られた潜在表現E(x)と、属性位置データyと、を関連付けることで出力画像
Figure JPOXMLDOC01-appb-I000002

を生成する。
 具体的には、生成部3は、まず、記憶部2からエンコーダ、デコーダ及び識別器の各パラメータを取得する。
 次に、生成部3は、学習用画像xをエンコーダに入力して潜在表現E(x)を抽出し、抽出した潜在表現E(x)と属性位置データyをデコーダに入力して、出力画像
Figure JPOXMLDOC01-appb-I000003

を生成する。
 図2に、エンコーダ、デコーダ、及び識別器の関係を示す。
 エンコーダは、学習用画像xを入力とし、学習用画像xから属性情報を除いたカテゴリ特徴を抽出するニューラルネットワークであれば何でも良い。以下、本実施形態では、カテゴリ特徴の例として、潜在表現E(x)を用いて説明する。
 例えば、非特許文献3のエンコーダを採用することができる。非特許文献3のエンコーダは、入力される画像のサイズが256×256×3であるとき、出力される潜在表現E(x)のサイズが2×2×512となるニューラルネットワークを用いている。
 デコーダは、潜在表現E(x)と属性位置データyを入力とし、学習用画像xとサイズが同じ画像であり、かつ、属性位置データyによって与えられた各位置の属性情報を持つ画像を生成するニューラルネットワークである。
 図3にデコーダの構成を示す。図3に示すように、デコーダは、ローカル用潜在表現前処理、ローカル用属性位置データ前処理、ローカル用入力データ統合処理、ローカルデコーダの処理、グローバル用属性位置データ前処理、グローバル用入力データ統合処理、グローバルデコーダの処理、及び画像デコーダの処理の各処理を行う。
 ローカルデコーダ、グローバルデコーダ、及び画像デコーダはそれぞれニューラルネットワークであり、デコーダでは、ローカルデコーダの出力であるテンソルと、グローバルデコーダの出力であるテンソルと、属性位置データyとを次元3の方向に重ね合わせたテンソルを画像デコーダに入力し、出力画像
Figure JPOXMLDOC01-appb-I000004

を生成する。以下、デコーダの各処理について説明する。
 ローカルデコーダは、属性のある位置のみをフィルタリングするためのデコーダである。ローカルデコーダは、属性位置データyをマスクとして使用し、属性のある位置のみに着目するように潜在表現E(x)を変換する。
 具体的には、ローカルデコーダは、入力となるテンソルのサイズの次元1及び次元2が属性位置データyの次元1及び次元2のサイズと同じであり、次元3のサイズが潜在表現E(x)の次元3のサイズと同じであり、入力のテンソルと同じサイズのテンソルを出力するニューラルネットワークであれば何でも良い。
 ローカルデコーダに属性位置データyの次元1及び次元2のサイズと同じテンソルを入力するために、ローカル用潜在表現前処理により潜在表現E(x)のサイズを変形し、ローカル用属性位置データ前処理により属性位置データyのサイズを変形し、各前処理の出力をローカル用入力データ統合処理により統合する。
 具体的には、ローカル用潜在表現前処理は、潜在表現E(x)のサイズの次元1及び次元2が属性位置データyの次元1及び次元2のサイズと同じテンソルになるよう変形する処理である。
 例えば、ローカル用潜在表現前処理は、潜在表現E(x)のサイズが2×2×512であり、属性位置データyのサイズが16×16×11であるとき、ローカル用潜在表現前処理の出力を16×16×512のテンソルとするために、潜在表現E(x)のテンソルを1×1×512に変形した後に、次元1及び次元2の方向に16×16個複製し、16×16×512のテンソルを出力する処理を行う。
 また、ローカル用属性位置データ前処理は、属性位置データyの次元3のサイズが、潜在表現E(x)の次元3のサイズと同じテンソルになるよう変形する処理である。
 例えば、ローカル用属性位置データ前処理は、潜在表現E(x)のサイズが2×2×512であり、属性位置データyのサイズが16×16×11であるとき、ローカル用属性位置データ前処理の出力を16×16×512のテンソルとするために、属性位置データyのテンソルを次元3の方向に足し合わせ、16×16×1のテンソルにした後、これを次元3の方向に512個複製し、16×16×512のテンソルを出力する処理を行う。
 ローカル用入力データ統合処理は、ローカル用潜在表現前処理の出力であるテンソルと、ローカル用属性位置データ前処理の出力であるテンソルを入力とし、これら入力された2つのテンソルと同じサイズのテンソルを出力する処理である。
 例えば、ローカル用入力データ統合処理は、入力された2つのテンソルを掛け合わせることにより、次元1及び次元2が属性位置データyの次元1及び次元2のサイズと同じであり、かつ、次元3のサイズが潜在表現E(x)の次元3のサイズと同じであるテンソルを出力する処理を行う。
 グローバルデコーダは画像全体としての構造を保持するためのデコーダである。グローバルデコーダは、属性位置データyの位置情報を、事前に属性位置データyの次元1及び次元2のサイズを縮小することで、抑制し、潜在表現E(x)と合わせて変換することで画像全体の構造を保つように変換する。
 具体的には、グローバルデコーダは、次元1及び次元2が潜在表現E(x)の次元1及び次元2のサイズと同じテンソルを入力とし、次元1及び次元2のサイズが属性位置データyの次元1及び次元2と同じサイズのテンソルを出力するニューラルネットワークであれば何でも良い。
 グローバルデコーダに次元1及び次元2が潜在表現E(x)の次元1及び次元2のサイズと同じテンソルを入力するために、グローバル用属性位置データ前処理により属性位置データyのサイズを変形し出力したテンソルと、潜在表現E(x)とをグローバル用入力データ統合処理により統合する処理である。
 具体的には、グローバル用属性位置データ前処理は、属性位置データyの次元1及び次元2のサイズが、潜在表現E(x)の次元1及び次元2のサイズと同じテンソルになるよう変形する処理である。
 例えば、グローバル用属性位置データ前処理は、潜在表現E(x)のサイズが2×2×512であり、属性位置データyのサイズが16×16×11であるとき、畳み込みニューラルネットワークにより畳み込み処理を行い、2×2×512のテンソルを出力する処理を行う。
 グローバル用入力データ統合処理は、潜在表現E(x)と、グローバル用属性位置データ前処理の出力であるテンソルを入力とし、次元1及び次元2のサイズが、これら入力された2つのテンソルの次元1及び次元2と同じサイズのテンソルを出力する処理である。
 例えば、グローバル用入力データ統合処理は、入力された2つのテンソルを次元3の方向に重ね合わせることで、次元1及び次元2が潜在表現の次元1及び次元2のサイズと同じであるテンソルを出力する処理を行う。
 画像デコーダは、ローカルデコーダの出力であるテンソルと、グローバルデコーダの出力であるテンソルと、属性位置データyとを次元3の方向に重ね合わせたテンソルを入力として、出力画像
Figure JPOXMLDOC01-appb-I000005

を生成する処理を行う。
 識別器は、画像から得られた潜在表現E(x)を入力としたときに当該画像が有する属性を識別するニューラルネットワークである。
 例えば、識別器は、潜在表現E(x)のサイズが2×2×512であり、属性数が10であるとき、入力として2×2×512のテンソルを受け付け、出力が長さ10のベクトルとなるニューラルネットワークを用いることができる。
 そして、生成部3は、学習用画像x、生成した出力画像
Figure JPOXMLDOC01-appb-I000006

、及び属性位置データyを、パラメータ更新部4に渡す。
 パラメータ更新部4は、属性位置データyと、属性位置データyが表す各位置の属性を有する学習用画像xとのペアに基づいて、学習用画像xをエンコーダに入力し、属性位置データyをデコーダに入力したときにデコーダが、学習用画像xを再構成し、かつ、潜在表現E(x)を入力とする識別器により属性位置データyが表す属性を有すると識別されないようにエンコーダ及びデコーダの各パラメータを更新し、潜在表現E(x)を入力としたときに属性位置データyが表す属性を有すると正しく識別するように識別器のパラメータを更新する。
 具体的には、パラメータ更新部4は、まず、記憶部2からエンコーダ、デコーダ、及び識別器の各パラメータを取得する。
 次に、パラメータ更新部4は、下記の二種類の制約を満たすようニューラルネットワークであるエンコーダ、デコーダ、及び識別器の各パラメータを更新する。
 一つ目の制約は、生成した出力画像
Figure JPOXMLDOC01-appb-I000007

が、学習用画像xを再構成するようにエンコーダ及びデコーダの各パラメータを更新することである。
 この一つ目の制約を満たすよう設定された学習方法であれば何でも良く、例えば非特許文献3では、学習用画像xと生成した出力画像
Figure JPOXMLDOC01-appb-I000008

との二乗誤差を計算し、これを小さくするようにエンコーダ及びデコーダの各パラメータを更新する。
 二つ目の制約は、学習用画像xが入力されたエンコーダが属性情報を除くように潜在表現E(x)を抽出し、かつ、識別器は潜在表現E(x)から属性位置データyが表す属性を有すると正しく識別するようにエンコーダ及び識別器の各パラメータを更新することである。
 この二つ目の制約を満たすよう設定された学習方法であれば何でも良く、例えば、非特許文献3では、識別器が潜在表現E(x)から属性位置データyが表す属性を有すると正しく識別する確率を小さくするようエンコーダのパラメータを更新することに対し、識別器が潜在表現E(x)から属性位置データyが表す属性を有すると識別する確率が大きくなるように識別器のパラメータを更新する。
 そして、パラメータ更新部4は、学習したエンコーダ、デコーダ、及び識別器の各パラメータを、記憶部2に格納する。
 なお、学習処理では、入力された学習画像x及び属性位置データyの1以上のペアの各々について、1つのペア毎にエンコーダ、デコーダ、及び識別器の各パラメータを学習してもよいし、バッチ処理等により複数同時、又は一括して学習してもよい。
<<画像生成処理>>
 次に、画像生成処理について説明する。画像生成装置100の画像生成処理では、固有特徴である属性位置データyを有する第一の画像
Figure JPOXMLDOC01-appb-I000009

を生成する。
 なお、簡単のため、本実施形態では、第二の画像xは、学習画像xと同様のテンソルであるものとする。
 入力部1は、生成したい第一の画像
Figure JPOXMLDOC01-appb-I000010

と同じカテゴリに属する第二の画像x、及び所望の固有特徴である属性位置データyの入力を受け付ける。
 具体的には、第二の画像xは、サイズが横幅×縦幅×チャネル数のテンソルであり、ここでは、第二の画像xの横幅をW、縦幅をH、チャネル数をDとする。また、第二の画像xは、横幅と縦幅が等しいテンソル(すなわち、W=H)であれば何でも良い。
 また、テンソルの最左上手前の座標を(0,0,0)とし、最左上手前から右にw、下にh進み、奥にd枚目のチャネルに相当する座標を(w,h,d)と表記するものとする。
 また、説明の簡単のため、学習処理と同様に、各テンソルについて、横幅の次元を次元1、縦幅の次元を次元2、チャネル数の次元を次元3と記載する。すなわち、第二の画像xの次元1のサイズはW、次元2のサイズはH、次元3のサイズはDとなる。
 横幅と縦幅が等しくない画像(W≠H)から横幅と縦幅が等しい(W=H)画像を作成する方法は、テンソルのサイズを変更する処理であれば何でも良く、例えばリサイズ処理、画像の一部を切り出すクロップ処理、画像の周囲に数値0や画像の端の画素を繰り返し追加するパディング処理、又は画像の端の画素を上下または左右で逆にして追加するミラーリング処理等を行う。
 そして、入力部1は、受け付けた第二の画像xと属性位置データyとを、生成部3に渡す。
 記憶部2には、学習処理により学習されたエンコーダ、デコーダ、及び識別器の各パラメータが格納されている。
 生成部3は、第一の画像
Figure JPOXMLDOC01-appb-I000011

と同じカテゴリに属する第二の画像xから得られた潜在表現E(x)と、属性位置データyと、を関連付けることで第一の画像
Figure JPOXMLDOC01-appb-I000012

を生成する。
 具体的には、生成部3は、まず、記憶部2から学習済みのエンコーダ、デコーダ及び識別器の各パラメータを取得する。
 次に、生成部3は、第二の画像xをエンコーダに入力して潜在表現E(x)を抽出し、抽出した潜在表現E(x)と属性位置データyをデコーダに入力して、第一の画像
Figure JPOXMLDOC01-appb-I000013

を生成する。
 そして、生成部3は、生成した第一の画像
Figure JPOXMLDOC01-appb-I000014

を出力部5に渡す。
 出力部5は、第一の画像
Figure JPOXMLDOC01-appb-I000015

を出力する。
 図4に画像生成装置100により生成される第一の画像の例を示す。図4の例では、カテゴリ「帽子」に属する第二の画像xと、対象物全体の位置が属性「黒色」を有することを表す属性位置データyとから、帽子全体の位置が黒色となる第一の画像
Figure JPOXMLDOC01-appb-I000016

を生成することが示されている。
 これは、未知のカテゴリの第二の画像であっても、上記学習処理により学習済みのエンコーダにより属性情報を除いた当該カテゴリの潜在表現E(x)を抽出することができ、抽出した潜在表現E(x)に対して、所望の属性位置データyが表す属性を関連付けることができることによる。
 様々な属性位置データyを本実施形態に係る画像生成装置100に入力することにより、第二の画像と同一のカテゴリであって、属性位置データyが表す属性を有する複数の第一の画像
Figure JPOXMLDOC01-appb-I000017

を生成することができる。
 このように生成された複数の第一の画像
Figure JPOXMLDOC01-appb-I000018

は、例えば物体検出器の学習用の画像に用いることができる。
<本発明の実施の形態に係る画像生成装置の作用>
 図5は、本発明の実施の形態に係る学習処理ルーチンを示すフローチャートである。
 入力部1に、属性位置データyが表す各位置の属性を有する学習用画像x及び当該属性位置データyの1以上のペアが入力されると、画像生成装置100において、図5に示す学習処理ルーチンが実行される。
 まず、ステップS100において、属性位置データyと、学習用画像xとの1以上のペアの入力を受け付ける。
 ステップS110において、生成部3は、学習用画像xをエンコーダに入力して潜在表現E(x)を抽出する。
 ステップS120において、上記ステップS110において抽出した潜在表現E(x)と属性位置データyをデコーダに入力して、出力画像
Figure JPOXMLDOC01-appb-I000019

生成する。
 ステップS130において、属性位置データyと、属性位置データyが表す各位置の属性を有する学習用画像xとのペアに基づいて、学習用画像xをエンコーダに入力し、属性位置データyをデコーダに入力したときにデコーダが、学習用画像xを再構成し、かつ、潜在表現E(x)を入力とする識別器により属性位置データyが表す属性を有すると識別されないようにエンコーダ及びデコーダの各パラメータを更新し、潜在表現E(x)を入力としたときに属性位置データyが表す属性を有すると正しく識別するように識別器のパラメータを更新する。
 図6は、上記ステップS120におけるデコード処理ルーチンを示すフローチャートである。
 ステップS121において、生成部3は、潜在表現E(x)のサイズの次元1及び次元2が属性位置データyの次元1及び次元2のサイズと同じテンソルになるよう変形するローカル用潜在表現前処理を行う。
 ステップS122において、生成部3は、属性位置データyの次元3のサイズが、潜在表現E(x)の次元3のサイズと同じテンソルになるよう変形するローカル用属性位置データ前処理を行う。
 ステップS123において、生成部3は、上記ステップS121により得られたテンソルと、上記ステップS122により得られたテンソルを入力とし、これら入力された2つのテンソルと同じサイズのテンソルを出力するローカル用入力データ統合処理を行う。
 ステップS124において、生成部3は、上記ステップS124により得られたテンソルをローカルデコーダに入力し、属性位置データyをマスクとして使用し、属性のある位置のみに着目するように潜在表現E(x)を変換する。
 ステップS125において、生成部3は、属性位置データyの次元1及び次元2のサイズが、カテゴリ特徴の次元1及び次元2のサイズと同じテンソルになるよう変形するグローバル用属性位置データ前処理を行う。
 ステップS126において、生成部3は、潜在表現E(x)と、上記ステップS125により得られたテンソルを入力とし、次元1及び次元2のサイズが、これら入力された2つのテンソルの次元1及び次元2と同じサイズのテンソルを出力するグローバル用入力データ統合処理を行う。
 ステップS127において、生成部3は、上記ステップS126により得られたテンソルをグローバルデコーダに入力し、属性位置データyの位置情報を抑制し、潜在表現E(x)と合わせて変換することで画像全体の構造を保つように変換する。
 ステップS128において、生成部3は、上記ステップS124によりデコードされたテンソルと、上記ステップS127によりデコードされたテンソルと、属性位置データyとを次元3の方向に重ね合わせたテンソルとを画像デコーダに入力して、出力画像
Figure JPOXMLDOC01-appb-I000020

を生成する
 図7は、本発明の実施の形態に係る画像生成処理ルーチンを示すフローチャートである。なお、学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
 入力部1に第二の画像x及び属性位置データyが入力されると、画像生成装置100において、図7に示す画像生成処理ルーチンが実行される。
 まず、ステップS200において、生成したい第一の画像
Figure JPOXMLDOC01-appb-I000021

と同じカテゴリに属する第二の画像x、及び属性位置データyの入力を受け付ける。
 ステップS230において、上記ステップS120により得られた第一の画像
Figure JPOXMLDOC01-appb-I000022

を出力する。なお、画像生成処理ではステップS128において、生成部3は、第一の画像
Figure JPOXMLDOC01-appb-I000023

を生成する。
 以上説明したように、本発明の実施形態に係る画像生成装置によれば、第一の画像と同じカテゴリに属する第二の画像から得られた当該カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、第一の画像と第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで第一の画像を生成することにより、所望のカテゴリの画像であって、かつ、所望の固有特徴を有する画像を生成することができる。
 なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
 本実施形態では、学習処理と画像生成処理とを同一の画像生成装置100により行うこととしたが、別の装置で行うようにしてもよい。この場合、学習処理により学習済みのエンコーダ、デコーダ、及び識別器が格納された記憶部2を画像生成処理に用いればよい。
 また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
1     入力部
2     記憶部
3     生成部
4     パラメータ更新部
5     出力部
100 画像生成装置

Claims (8)

  1.  所望の固有特徴を有する第一の画像を生成する画像生成装置であって、
     前記第一の画像と同じカテゴリに属する第二の画像から得られた前記カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、前記第一の画像と前記第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで前記第一の画像を生成する生成部
     を有し、
     前記固有特徴は、前記第二の画像を分割した分割領域の各々について、前記所望の固有特徴が関連付けられたものである
     画像生成装置。
  2.  前記カテゴリ特徴は、前記第二の画像から前記固有特徴を除いて抽出されるように、かつ、所定の識別器に前記固有特徴を有すると識別されないように学習されている
     請求項1記載の画像生成装置。
  3.  前記生成部は、
     前記所望の固有特徴と関連付けられた分割領域の位置情報を用いたマスクを、前記カテゴリ特徴にかけたものを変換し、前記変換により得られたデータを用いて前記第一の画像を生成する
     請求項1又は2記載の画像生成装置。
  4.  前記生成部は、
     更に、前記所望の固有特徴から、前記所望の固有特徴が関連付けられた分割領域の位置情報を抑制したデータと、前記カテゴリ特徴とを含むデータを変換し、前記変換により得られたデータを用いて前記第一の画像を生成する
     請求項3記載の画像生成装置。
  5.  前記生成部は、
     前記第二の画像を入力として前記カテゴリ特徴を抽出するエンコーダと、
     前記カテゴリ特徴と前記所望の固有特徴とを入力として前記第一の画像を生成するデコーダと、
     を更に含み、
     前記エンコーダ及びデコーダは、学習用の固有特徴と、前記学習用の固有特徴を有する学習用画像とのペアに基づいて、前記学習用画像を前記エンコーダに入力し、前記学習用の固有特徴を前記デコーダに入力したときに前記デコーダが、前記学習用画像を再構成し、かつ、前記カテゴリ特徴を入力とする所定の識別器により前記学習用の固有特徴を有すると識別されないように予め学習されている
     請求項1記載の画像生成装置。
  6.  前記所定の識別器は、前記カテゴリ特徴を入力としたときに正しく前記固有特徴を有すると識別するように予め学習されている
     請求項5記載の画像生成装置。
  7.  所望の特徴を有する第一の画像を生成する画像生成方法であって、
     生成部が、前記第一の画像と同じカテゴリに属する第二の画像から得られた前記カテゴリに属する画像に共通する特徴であるカテゴリ特徴と、前記第一の画像と前記第二の画像とで異なる固有の特徴である固有特徴と、を関連付けることで前記第一の画像を生成し、
     前記固有特徴は、前記第二の画像を分割した分割領域の各々について、前記所望の固有特徴が関連付けられたものである
     画像生成方法。
  8.  コンピュータを、請求項1乃至6の何れか1項記載の画像生成装置の各部として機能させるためのプログラム。
PCT/JP2019/046324 2018-12-11 2019-11-27 画像生成装置、画像生成方法、及びプログラム Ceased WO2020121811A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/312,314 US20220027670A1 (en) 2018-12-11 2019-11-27 Image generation device, image generation method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-231866 2018-12-11
JP2018231866A JP7099292B2 (ja) 2018-12-11 2018-12-11 画像生成装置、画像生成方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2020121811A1 true WO2020121811A1 (ja) 2020-06-18

Family

ID=71076373

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/046324 Ceased WO2020121811A1 (ja) 2018-12-11 2019-11-27 画像生成装置、画像生成方法、及びプログラム

Country Status (3)

Country Link
US (1) US20220027670A1 (ja)
JP (1) JP7099292B2 (ja)
WO (1) WO2020121811A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022018997A (ja) * 2020-07-17 2022-01-27 ソニーセミコンダクタソリューションズ株式会社 固体撮像素子、撮像装置、および、情報処理システム
US12354235B2 (en) * 2021-01-26 2025-07-08 Samsung Electronics Co., Ltd. Method and apparatus with image restoration

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018055384A (ja) * 2016-09-28 2018-04-05 日本電信電話株式会社 信号調整装置、信号生成学習装置、方法、及びプログラム
WO2018203549A1 (ja) * 2017-05-02 2018-11-08 日本電信電話株式会社 信号変更装置、方法、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018055384A (ja) * 2016-09-28 2018-04-05 日本電信電話株式会社 信号調整装置、信号生成学習装置、方法、及びプログラム
WO2018203549A1 (ja) * 2017-05-02 2018-11-08 日本電信電話株式会社 信号変更装置、方法、及びプログラム

Also Published As

Publication number Publication date
JP7099292B2 (ja) 2022-07-12
JP2020095407A (ja) 2020-06-18
US20220027670A1 (en) 2022-01-27

Similar Documents

Publication Publication Date Title
CN113221987A (zh) 一种基于交叉注意力机制的小样本目标检测方法
JP2018169672A (ja) 教師画像を生成する方法、コンピュータおよびプログラム
CN105701493B (zh) 基于阶层图形的图像提取以及前景估测的方法和系统
CN113034355B (zh) 一种基于深度学习的肖像图像双下巴去除方法
KR102758610B1 (ko) 레이아웃 기반의 동일 화풍 영상 생성 시스템 및 방법
CN117474869B (zh) 一种三维点云质量评估方法与系统
CN111539432B (zh) 一种利用众源数据辅助遥感影像提取城市道路的方法
CN111461002B (zh) 一种面向热成像行人检测的样本处理方法
JP2016520897A (ja) 画像アウトラインを記述するシステム及び方法
JP2014164656A (ja) 画像処理方法およびプログラム
CN116630604B (zh) 一种垃圾图像分类方法及系统
WO2020121811A1 (ja) 画像生成装置、画像生成方法、及びプログラム
CN113052783A (zh) 一种基于人脸关键点的人脸图像融合方法
Rajput et al. Face hallucination techniques: a survey
CN110851627B (zh) 一种用于描述全日面图像中太阳黑子群的方法
CN112802048A (zh) 具有不对称结构的图层生成对抗网络生成方法及装置
CN120932088A (zh) 一种基于无人机视觉的工程主体结构施工进度自动检测方法
CN109410158B (zh) 一种基于卷积神经网络的多焦点图像融合方法
CN104599253A (zh) 一种自然图像阴影消除方法
CN111191729B (zh) 一种基于多模态特征融合的三维对象融合特征表示方法
Wang et al. Cluttered indoor scene modeling via functional part-guided graph matching
CN105719323A (zh) 一种基于优化图谱理论的高光谱降维方法
CN117094895B (zh) 图像全景拼接方法及其系统
CN116486078B (zh) 一种基于热力图和自注意力模块的零样本语义分割方法
CN112652059A (zh) 基于Mesh R-CNN模型改进的目标检测与三维重构方法

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: 19894577

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: 19894577

Country of ref document: EP

Kind code of ref document: A1