WO2019042139A1 - 图像处理方法、图像处理装置、神经网络的训练方法 - Google Patents

图像处理方法、图像处理装置、神经网络的训练方法 Download PDF

Info

Publication number
WO2019042139A1
WO2019042139A1 PCT/CN2018/100833 CN2018100833W WO2019042139A1 WO 2019042139 A1 WO2019042139 A1 WO 2019042139A1 CN 2018100833 W CN2018100833 W CN 2018100833W WO 2019042139 A1 WO2019042139 A1 WO 2019042139A1
Authority
WO
WIPO (PCT)
Prior art keywords
training
image
neural network
channel
layer
Prior art date
Application number
PCT/CN2018/100833
Other languages
English (en)
French (fr)
Inventor
刘瀚文
那彦波
Original Assignee
京东方科技集团股份有限公司
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 京东方科技集团股份有限公司 filed Critical 京东方科技集团股份有限公司
Priority to EP18850585.3A priority Critical patent/EP3678059B1/en
Priority to US16/336,995 priority patent/US11461639B2/en
Publication of WO2019042139A1 publication Critical patent/WO2019042139A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Definitions

  • L L1 represents the weight offset ratio loss function
  • W is an average value of absolute values of the plurality of first convolution kernels
  • B is an average value of absolute values of the plurality of offsets
  • is positive number.
  • the loss function further includes a content loss function, and the loss function is based on the first training input image, the second training input image, and the training output image.
  • Calculating a loss value of the parameter of the neural network further comprising: extracting, by the analysis network, a first training input feature of the first training input image and extracting a first training output feature of the training output image; The training input feature and the first training output feature calculate a content loss value of a parameter of the neural network by the content loss function, the loss value including the content loss value.
  • L content represents the total content loss function
  • Q1 is a positive integer, and represents the number of second convolution layers that extract and output the first training input feature and the first training output feature
  • w 1l represents C l weight
  • E l represents the style loss function
  • M l represents the size of the fourth training feature image.
  • the neural network further includes a first conversion matrix, the first image having a first input color channel, a second input color channel, and a third input color channel.
  • Inputting the first image to the neural network includes:
  • the neural network further includes a first convolutional neural network, where the first convolutional neural network includes a first sub-network, a second sub-network, and a third sub- a network, performing a style transfer process on the first image by using the neural network to generate a second image, including:
  • the second image is an image in an RGB format
  • the second intermediate image is an image in a YUV format.
  • an image processing apparatus further includes a first conversion module, the first image having a first input color channel, a second input color channel, and a third input color channel, where the first conversion module is used.
  • the network is configured to process data information of the first luma channel of the first intermediate image, data information of the first chroma channel, and data information of the second chroma channel, respectively, to generate data information of the second luma channel of the second intermediate image.
  • the data information of the third color difference channel and the data information of the fourth color difference channel is configured to process data
  • the first sub-network includes a first set of first convolutional layers
  • the second sub-network includes a second set of first convolutional layers
  • the third sub-network includes a third set of first convolutional layers
  • the second sub-network comprising a first standard upsampling layer and a first standard downsampling layer
  • the third subnetwork comprising a second standard upsampling layer and a second standard downsampling layer
  • the first standard downsampling layer is used to replace the first first convolutional layer in the second set of first convolutional layers of the second subnetwork
  • the first standard upsampling layer is used to replace the first a last first convolutional layer of the second set of first convolutional layers of the second subnetwork
  • the second standard downsampling layer is used to replace the first of the third set of first convolutional layers of the third subnetwork a first convolutional layer
  • the second standard upsampling layer being used to replace the last first con
  • Figure 1 is a schematic diagram of a convolutional neural network
  • 2A shows an exemplary model diagram of a convolutional neural network
  • FIG. 3 is a schematic structural view of another convolutional neural network
  • FIG. 4A is a flowchart of a training method for a neural network for implementing image style migration according to an embodiment of the present disclosure
  • FIG. 5A is a schematic structural diagram of a first convolutional neural network according to an embodiment of the present disclosure
  • FIG. 5B is a schematic structural diagram of another first convolutional neural network according to an embodiment of the present disclosure.
  • 6A is a schematic diagram of a composite layer according to an embodiment of the present disclosure.
  • 6B is a schematic diagram of another composite layer according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of a second convolutional neural network according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic flowchart of an image processing method for implementing image style migration based on a neural network according to an embodiment of the present disclosure
  • 9B is a schematic diagram of a style image
  • FIG. 9C is a schematic diagram of a second image processed by an image processing method according to an embodiment of the present disclosure.
  • FIG. 10A is a schematic structural diagram of a generated neural network according to an embodiment of the present disclosure.
  • FIG. 11 is a schematic block diagram of an image processing apparatus according to an embodiment of the present disclosure.
  • FIG. 12 is a schematic block diagram of another image processing apparatus according to an embodiment of the present disclosure.
  • the use of deep neural networks to transfer artistic styles of pictures is a technology that has emerged with the development of deep learning technology.
  • the input image is processed to obtain an output image that at least partially reflects the style.
  • the output image can retain some of the style features of the artist's painting while retaining the original content, and even make people mistake it for the artist's work.
  • Traditional image processing effects for example, various filters provided by instagram, etc. cannot achieve such stylized migration processing effects.
  • At least one embodiment of the present disclosure provides a training method for a neural network for implementing image style migration, an image processing method for implementing image style migration based on a neural network, and an image processing apparatus, which are used by a process for training a neural network
  • the weight loss ratio (L1) loss function is adopted or added in the loss function, so that the function of the activation function in the neural network can be better utilized, the more optimized convolution parameters can be obtained, and the image style migration and image fusion effect can be improved, thereby
  • the treatment effect and processing speed can be taken into consideration, and have better and wider application prospects.
  • CNN Convolutional Neural Network
  • CNN mainly simplifies the complexity of the neural network model and reduces the number of weights by local perception field and weight sharing.
  • CNN's application range is not limited to the field of image recognition, but it can also be applied in the fields of face recognition, text recognition, animal classification, image processing and so on.
  • FIG. 1 is a schematic diagram of a convolutional neural network.
  • the convolutional neural network can be used for image processing, which uses images as input and output, and replaces the weight of the scalar with a convolution kernel. Only a convolutional neural network having a three-layer structure is shown in FIG. 1, and embodiments of the present disclosure are not limited thereto.
  • the convolutional neural network includes an input layer 101, a hidden layer 102, and an output layer 103.
  • the input layer 101 has 4 inputs
  • the hidden layer 102 has 3 outputs
  • the output layer 103 has 2 outputs
  • the convolutional neural network finally outputs 2 images.
  • the four inputs of the input layer 101 can be four images, or four features of one image.
  • the three outputs of the hidden layer 102 may be feature images of images input through the input layer 101.
  • the convolutional neural network further includes a first activation layer 203 and a second activation layer 204.
  • the first active layer 203 is located after the first convolutional layer 201 and the second active layer 204 is located after the second convolutional layer 202.
  • the activation layer (eg, the first activation layer 203 and the second activation layer 204) includes an activation function for introducing nonlinear factors to the convolutional neural network so that the convolutional neural network can better solve more complex problems.
  • the activation function may include a linear correction unit (ReLU) function, a sigmoid function (Sigmoid function), or a hyperbolic tangent function (tanh function), and the like.
  • the ReLU function is an unsaturated nonlinear function
  • the Sigmoid function and the tanh function are saturated nonlinear functions.
  • the activation layer may be used alone as a layer of the convolutional neural network, or the activation layer may also be included in the convolutional layer (eg, the first convolutional layer 201 may include a first activation layer 203, and the second convolutional layer 202 may Including the second active layer 204).
  • the first convolutional layer 201 first, a plurality of convolution kernels in the first set of convolution kernels are applied to each input. And several offsets in the first set of offsets The output of the first convolutional layer 201 is obtained; then, the output of the first convolutional layer 201 can be processed by the first active layer 203 to obtain the output of the first active layer 203.
  • the second convolutional layer 202 first, a plurality of convolution kernels in the second set of convolution kernels are applied to the output of the input first activation layer 203.
  • the output of the second convolutional layer 202 is obtained; then, the output of the second convolutional layer 202 can be processed by the second active layer 204 to obtain the output of the second active layer 204.
  • the output of the first convolutional layer 201 can be a convolution kernel applied to its input.
  • the output of the second convolutional layer 202 can be a convolution kernel applied to the output of the first active layer 203. After and offset The result of the addition.
  • Convolutional neural networks need to be trained before image processing using convolutional neural networks. After training, the convolution kernel and the offset of the convolutional neural network remain unchanged during image processing. During the training process, each convolution kernel and offset are adjusted by multiple sets of input/output sample images and optimization algorithms to obtain an optimized convolutional neural network model.
  • FIG. 2A shows an exemplary model diagram of a convolutional neural network
  • FIG. 2B shows a schematic diagram of the working process of a convolutional neural network.
  • the class identification is output after several processing processes (such as each level in FIG. 2A).
  • the components of the convolutional neural network may include multiple convolutional layers, multiple pooling layers, and fully connected layers.
  • a complete convolutional neural network can be composed of these three layers superimposed. For example, FIG.
  • each level includes a convolution layer and a pooling layer, and the pooling layer is Subsampling layer.
  • the processing of each level may include convolution and sub-sampling of the input image.
  • the processing of each level may also include a local constant normalization (LCN) and the like.
  • the convolutional layer is the core layer of the convolutional neural network.
  • the convolutional layer of a convolutional neural network one neuron is only connected to neurons of some adjacent layers.
  • the convolutional layer can apply a number of convolution kernels to the input image to extract multiple types of features of the input image.
  • Each convolution kernel can extract one type of feature.
  • Convolution kernels are generally initialized in the form of a random fractional matrix. During the training of convolutional neural networks, the convolution kernel will learn to obtain reasonable weights.
  • the result obtained by applying a convolution kernel to the input image is called a feature map, and the number of feature images is equal to the number of convolution kernels.
  • Each feature image consists of a number of rectangularly arranged neurons.
  • the neurons of the same feature image share weights, and the weights shared here are convolution kernels.
  • the feature image output by one level of the convolutional layer can be input to the adjacent convolution layer of the next level and processed again to obtain a new feature image.
  • the convolution layer of the first level may output a first feature image, which is input to the convolution layer of the second level to be processed again to obtain a second feature image.
  • the convolutional layer may convolve data of a local receptive field of the input image using different convolution kernels, and the convolution result is input to the activation layer, which is calculated according to the corresponding activation function. To obtain the feature information of the input image.
  • the pooling layer is disposed between adjacent convolution layers, which is a form of downsampling.
  • the pooling layer can be used to reduce the size of the input image, simplify the computational complexity, and reduce the over-fitting phenomenon to a certain extent; on the other hand, the pooling layer can also perform feature compression to extract the input image.
  • the pooling layer can reduce the size of the feature image, but does not change the number of feature images. For example, an input image of size 12 ⁇ 12 is sampled by a 6 ⁇ 6 filter, and a 2 ⁇ 2 output image is obtained, which means that 36 pixels on the input image are combined into an output image. 1 pixel.
  • the last pooled or convolved layer can be connected to one or more fully connected layers, which are used to connect all of the extracted features.
  • the output of the fully connected layer is a one-dimensional matrix, which is a vector.
  • FIG. 3 is a schematic structural diagram of another convolutional neural network.
  • the last convolution layer i.e. layers of convolution n 0
  • the flattening layer can convert a feature image (2D image) into a vector (1D). This flattening operation can be performed as follows:
  • v is a vector containing k elements and f is a matrix having i rows and j columns.
  • the output of the planarization layer (ie, the 1D vector) is then input to a fully connected layer (FCN).
  • the fully connected layer can have the same structure as the convolutional neural network, but with the difference that the fully connected layer uses a different scalar value instead of the convolution kernel.
  • the output of the last convolutional layer can also be input to the Homogenization Layer (AVG).
  • AVG Homogenization Layer
  • the homogenization layer is used to average the output, that is, the mean image of the feature image is used to represent the output image, and therefore, a 2D feature image is converted into a scalar.
  • the convolutional neural network may not include a planarization layer.
  • the homogenization layer or the fully connected layer can be connected to the classifier, and the classifier can classify according to the extracted features, and the output of the classifier can be used as the final output of the convolutional neural network, that is, the class identifier of the image category. (label).
  • the classifier may be a Support Vector Machine (SVM) classifier, a softmax classifier, and a nearest neighbor rule (KNN) classifier, and the like.
  • SVM Support Vector Machine
  • KNN nearest neighbor rule
  • the convolutional neural network includes a softmax classifier, which is a generator of a logic function that can compress a K-dimensional vector z containing any real number into a K-dimensional vector ⁇ ( z).
  • the formula for the softmax classifier is as follows:
  • each category identifier in the K-dimensional vector z is given a certain prediction probability, and the category identifier having the largest prediction probability is selected as the identifier or category of the input image.
  • FIG. 4A is a flowchart of a training method of a neural network for implementing image style migration according to an embodiment of the present disclosure
  • FIG. 4B is a training module of a neural network during training according to an embodiment of the present disclosure. Schematic block diagram.
  • a training method for implementing a neural network for image style migration includes:
  • Step S10 acquiring a first training input image and a second training input image
  • Step S30 performing a style transfer process on the first training input image by using a neural network to obtain a training output image
  • Step S40 calculating a loss value of a parameter of the neural network by using a loss function based on the first training input image, the second training input image, and the training output image;
  • Step S50 correcting parameters of the neural network according to the loss value
  • Step S60 determining whether the loss function satisfies a predetermined condition
  • step S70 is performed: obtaining the trained neural network
  • step S10 the input of the first training input image and the second training input image is continued to repeatedly perform the above-described training process.
  • the training module of the neural network includes a neural network, an analysis network, and a loss function 30.
  • the neural network includes a first convolutional neural network 10.
  • the first convolutional neural network 10 is configured to perform a style transfer process on the input first training input image to generate a training output image.
  • the loss function 30 is used to calculate the loss value of the parameters of the first convolutional neural network 10 and to correct the parameters of the first convolutional neural network 10 based on the loss value.
  • the loss function 30 includes a weight offset ratio (L1) loss function.
  • the predetermined condition corresponds to a minimization of the loss value of the neural network at a certain first training input image input.
  • the predetermined condition is that the number of trainings or training periods of the neural network reaches a predetermined number.
  • the above examples are merely illustrative of the training process of the neural network.
  • the neural network needs to be trained by using a large number of sample images; meanwhile, in each sample image training process, multiple iterations may be included to correct the parameters of the neural network.
  • the training phase also includes fine-tuning the parameters of the neural network to obtain more optimized parameters.
  • the initial parameters of the first convolutional neural network 10 may be random numbers, such as random numbers that conform to a Gaussian distribution.
  • the initial parameters of the first convolutional neural network 10 may also employ trained parameters of an image database such as ImageNet. The embodiments of the present disclosure do not limit this.
  • the loss function 30 can calculate the loss value based on the initial parameters of the first convolutional neural network 10.
  • the loss value may be back-propagated layer by layer from the output layer of the first convolutional neural network 10 to the input layer to distribute the loss value to all the cells of each layer of the first convolutional neural network 10, thereby obtaining error values of the respective units.
  • This error value is the basis for correcting the parameters of each unit.
  • the error value can be expressed as a partial derivative of the loss value versus each unit parameter.
  • the training module of the neural network may further include an optimization function (not shown), and the optimization function may calculate an error value of the parameter of the first convolutional neural network 10 according to the loss value, and adjust the first convolutional neural network according to the error value. 10 parameters.
  • the optimization function may use a stochastic gradient descent (SGD) algorithm, a batch gradient descent (BGD) algorithm, or the like to calculate an error value of a parameter of the first convolutional neural network 10.
  • SGD stochastic gradient descent
  • BGD batch gradient descent
  • the first training input image can be various types of images.
  • the first training input image may be an image taken by a digital camera or a mobile phone, which may be a person image, an animal or plant image, a landscape image, or the like.
  • the neural network provided by the embodiment of the present disclosure can fully exert the function of the activation function in the first convolutional neural network by adding a weight offset ratio loss function (L1 loss function) in the loss function, and obtain a more optimized first volume.
  • the parameters of the neural network can improve the image style migration and image fusion effect, and can be taken into consideration in terms of processing effect and processing speed, and have better and wider application prospects.
  • FIG. 5A is a schematic structural diagram of a first convolutional neural network according to an embodiment of the present disclosure
  • FIG. 5B is a schematic structural diagram of another first convolutional neural network according to an embodiment of the present disclosure.
  • the first convolutional neural network 10 includes a first sub-network 101, a second sub-network 102, and a third sub-network 103.
  • the first sub-network 101 includes a first set of first convolutional layers
  • the second sub-network 102 includes a second set of first convolutional layers
  • the third sub-network 103 includes a third set of first convolutional layers
  • the convolutional layer includes F1 first convolutional layers
  • the second set of first convolutional layers also includes F2 first convolutional layers
  • the third set of first convolutional layers also includes F3 first convolutional layers
  • F1 F2 and F3 are both positive integers
  • F1, F2, and F3 may be at least partially identical or different from each other.
  • a first sub-network 101 comprises a first convolutional layer C11, C12, and the first convolution layer laminated C1n 1 vol FIG. 5A;
  • the second subnetwork 102 comprises a first convolutional layer C21, the first A convolution layer C22 and a first convolutional layer C2n 1 ;
  • the third sub-network 103 includes a first convolutional layer C31, a first convolutional layer C32, and a first convolutional layer C3n 1 .
  • the first sub-network 101 further includes a plurality of first pooling layers and a plurality of composite layers
  • the second sub-network 102 further includes a plurality of first pooling layers and a plurality of composite layers
  • a third Subnetwork 103 also includes a plurality of first pooling layers and a plurality of composite layers.
  • a first sub-network 101 comprises a first cell layer P11, P12 of the first cell layer and the first layer cell P1n 1;
  • second subnetwork 102 comprises a first cell layer P21, and P22 of the first cell layer
  • the third sub-network 103 includes a first pooling layer P31, a first pooling layer P32, and a first pooling layer P3n 1 .
  • the first sub-network 101 includes a composite layer M11, a composite layer M12, and a composite layer M1n 1 ;
  • the second sub-network 102 includes a composite layer M21, a composite layer M22, and a composite layer M2n 1 ;
  • the third sub-network 103 includes a composite layer M31 and a composite layer. M32 and composite layer M3n 1 .
  • first sub-network 101 the structures of the first sub-network 101, the second sub-network 102, and the third sub-network 103 are the same.
  • the first sub-network 101 will be described in detail below as an example.
  • a plurality of first convolution layers are sequentially connected, with a first pooling layer between some adjacent first convolution layers, and other adjacent ones. There is a composite layer between the first convolution layers.
  • the first sub-network 101 includes n 1 first convolutional layers, n 1 being a positive integer, and typically greater than 3, and even hundreds.
  • the low-level convolution layer is used to extract low-order features (eg, points, edges, etc.) of the first image; as the hierarchy increases, the higher-level convolution layer can extract higher-order features of the first image (eg, straight lines) , turning, triangles, etc.). Higher order features can be derived from combinations of lower order features.
  • the number of the plurality of first pooling layers is the same as the number of the plurality of composite layers, and the downsampling factors of the plurality of first pooling layers and the upsampling factor of the plurality of composite layers are A correspondence is made such that the first image and the second image are the same size.
  • the first sub-network 101 may include n 1 /2 first pooling layers and n 1 /2 composite layers, where n 1 is a positive even number.
  • the first sub-network 101 may include two first pooling layers and two composite layers, and the down sampling factors of the two first pooling layers are 1/x1 and 1/x2, respectively.
  • the upsampling factors of the two composite layers are x1 and x2, respectively.
  • X1 and x2 are positive integers.
  • the number of the plurality of first pooling layers and the number of the plurality of composite layers may also be different as long as the first training input image and the training output image processed by the first convolutional neural network 10 can be The same size is enough.
  • a plurality of first pooling layers are located at a lower level of the first sub-network 101, and a plurality of composite layers are located at a higher level of the first sub-network 101. That is, first, the first sub-network 101 downsamples the input first image through the first pooling layer, and then upsamples the first image through the composite layer.
  • the first convolutional neural network 10 includes a plurality of first convolution kernels and a plurality of offsets, the plurality of first convolution kernels being the first included in all of the first convolutional layers in the first convolutional neural network 10.
  • a convolution kernel and bias, the parameters of the neural network may include a plurality of first convolution kernels and a plurality of offsets.
  • the loss function 30 is used to adjust the parameters of each of the first convolutional layers in the first convolutional neural network 10. It should be noted that the loss function 30 can adjust the parameters of all layers in the first convolutional neural network 10.
  • first sub-network 101 the second sub-network 102, and the third sub-network 103 may also be different.
  • the second sub-network 102 some of the first pooling layer or composite layer or the like may be omitted.
  • the first convolutional neural network 10 includes a first sub-network 101', a second sub-network 102', and a third sub-network 103'.
  • the first sub-network 101' has the same structure as the first sub-network 101 shown in FIG. 5A.
  • the second sub-network 102' may include a first standard upsampling layer SU1 and a first standard downsampling layer SD1
  • the third sub-network 103' may include a second standard upsampling layer SU2 and a second standard downsampling layer SD2.
  • the first standard downsampling layer SD1 is used to replace the first first convolutional layer in the second set of first convolutional layers of the second subnetwork 102', and the first standard upsampling layer SU1 is used in place of the second subnetwork 102'
  • the second standard downsampling layer SD2 is used to replace the first first convolution of the third set of first convolutional layers of the third subnetwork 103'
  • the second standard upsampling layer SU2 is used to replace the last first convolutional layer in the third set of first convolutional layers of the third subnetwork 103'.
  • the first standard downsampling layer SD1 and the second standard downsampling layer SD2 are used to reduce the resolution of the input first training input image to increase the speed of image processing.
  • the first standard downsampling layer SD1 and the second standard downsampling layer SD2 are used to reduce the values of the respective dimensions of the feature image, thereby reducing the amount of data of the feature image.
  • the first standard upsampling layer SU1 and the second standard upsampling layer SU2 are used to increase the values of the respective dimensions of the feature image, thereby increasing the amount of data of the feature image.
  • the first standard downsampling layer SD1 and the second standard downsampling layer SD2 may adopt down sampling methods such as max pooling, average pooling, and strided convolution.
  • the first standard upsampling layer SU1 and the second standard upsampling layer SU2 may employ an upsampling method such as a spanned transposed convolution.
  • the first standard downsampling layer SD1 can also be used to replace the first first pooling layer or composite layer in the second sub-network 102'.
  • the first standard upsampling layer SU1 can also be used in place of the second sub-network 102'.
  • the second standard downsampling layer SD2 can also be used to replace the first first pooling layer or composite layer in the third subnetwork 103', and the second standard upsampling layer SU2 can also be used to replace the last in the third subnetwork 103'.
  • the first pooled or composite layer can also be used to replace the first first pooling layer or composite layer in the second sub-network 102'.
  • the first standard downsampling SD1 layer replaces the first one of the first convolutional layer and one first pooled layer, and the first standard upsampling layer SU1 is substituted.
  • the last first convolutional layer a composite layer.
  • the network model size of the second sub-network 102' is reduced.
  • the network model size of the third sub-network 103' is also reduced. Thereby, the network model size of the first convolutional neural network 10 is reduced.
  • the configurations of the second sub-network 102' and the third sub-network 103' may be the same. That is, the first standard downsampling layer SD1 and the second standard downsampling layer SD2 are the same, and the first standard upsampling layer SU1 and the second standard upsampling layer SU2 are also the same.
  • the configurations of the second sub-network 102' and the third sub-network 103' may also be different. The embodiments of the present disclosure do not limit this.
  • a convolution kernel is used to determine how the input image is processed, and an offset is used to determine whether the output of the convolution kernel is input to the next level.
  • the offset can be visually compared to a "switch” for determining the "open” or "close” convolution kernel.
  • Different convolution kernels can be "opened” or “closed” for different input images to achieve multiple effects.
  • the offset needs to have a relatively large absolute value compared to the convolution kernel, thereby more effectively exerting the "switch" effect.
  • the L1 loss function is then used to adjust the ratio between the plurality of first convolution kernels of the first convolutional layer and the plurality of offsets to enhance the effect of the activation function in the first convolutional neural network 10.
  • weight offset ratio (L1) loss function can be expressed as the following formula (1):
  • L L1 represents the L1 loss function
  • W represents the average of the absolute values of all the first convolution kernels in the first convolutional neural network 10
  • B represents the absolute value of all the offsets in the first convolutional neural network 10.
  • the average value, ⁇ is a very small positive number, used to ensure that the denominator is not zero.
  • the value of L L1 may represent the weight offset ratio (L1) loss value of the parameters of the first convolutional neural network 10, and the loss value of the neural network includes the L1 loss value.
  • step S50 may include adjusting a ratio between the plurality of first convolution kernels and the plurality of offsets according to the weight offset ratio loss value.
  • the L1 loss value In the process of correcting the parameters of the first convolutional neural network 10, it is necessary to repeatedly adjust the L1 loss value so that W is as small as possible and B is as large as possible.
  • W can be expressed as:
  • C w is the number of first convolution kernels that the first convolutional layer has
  • w is the value of each convolution kernel of the first convolutional layer.
  • the convolution kernel is a 2 x 2 matrix and w represents the sum of the elements of the matrix.
  • B can be expressed as:
  • C b is the number of offsets of the first convolutional layer and b is the value of each offset of the first convolutional layer.
  • the activation function in the first convolutional neural network 10 may employ a ReLU function. However, it is not limited thereto, and the activation function in the first convolutional neural network 10 may also employ a sigmoid function, a tanh function, or the like.
  • the ReLU function can be expressed as the following formula (2):
  • in 0 represents a pixel matrix input to, for example, the first training input image in the first convolutional layer C11
  • in 1 represents output after processing the in 0 through the first convolutional layer C11.
  • a pixel matrix of the feature image w represents the value of the convolution kernel in the first convolutional layer C11
  • b represents the value of the offset in the first convolutional layer C11.
  • the first pooling layer may be a down-sampling layer of the first convolutional neural network 10 for reducing the values of the various dimensions of the feature image, thereby reducing the amount of data of the feature image.
  • the composite layer is an up-sampling layer of the first convolutional neural network 10 for increasing the values of the respective dimensions of the feature image, thereby increasing the amount of data of the feature image.
  • the first pooling layer can downsample the feature image using various downsampling methods.
  • Downsampling methods include, but are not limited to, maximum value merging, average merging, random merging, undersampling (eg, selecting fixed pixels), demultiplexing output (demuxout, splitting the input image into multiple smaller images) )Wait.
  • the composite layer can be upsampled using an interpolation algorithm or the like.
  • the interpolation algorithm may include, for example, an interpolated value, a bicubic interprolation algorithm, and the like.
  • FIG. 6A is a schematic diagram of a composite layer according to an embodiment of the present disclosure
  • FIG. 6B is a schematic diagram of another composite layer according to an embodiment of the present disclosure.
  • the composite layer implements upsampling using a pixel difference method.
  • the composite layer adopts a 2 ⁇ 2 upsampling factor, so that four input feature images (ie, INPUT4n, INPUT 4n+1, INPUT 4n+2, INPUT 4n+3 in FIG. 6A) can be combined to obtain one fixed.
  • the output feature image of the pixel order ie, OUTPUT n in Fig. 6A).
  • the composite layer in the first sub-network 101 acquires the input first number of input feature images, interleaves the pixel values of the input feature images to produce the same first number. Output feature image.
  • the number of output feature images is not changed compared to the input feature image, but the size of each output feature image is increased by a corresponding multiple.
  • the composite layer adds more data information through different permutations and combinations, which give all possible upsampling combinations. Finally, the selection can be made from the upsampling combination through the activation layer.
  • the composite layer implements upsampling using a pixel value interleaving rearrangement method.
  • the composite layer also uses a 2 ⁇ 2 upsampling factor, ie, every 4 input feature images (ie, INPUT 4n, INPUT 4n+1, INPUT 4n+2, INPUT 4n+3 in Figure 6B).
  • Their pixel values are interleaved to generate four output feature images (ie, OUTPUT 4n, OUTPUT 4n+1, OUTPUT 4n+2, OUTPUT 4n+3 in Figure 6B).
  • the number of input feature images is the same as the number of output feature images obtained by the composite layer processing, and the size of each output feature image is increased by 4 times of the input feature image, that is, the number of pixels having 4 times of the input feature image.
  • the first sub-network 101 further includes a plurality of instance normalization layers
  • the second sub-network 102 further includes a plurality of instance normalization layers
  • the third sub-network 103 further includes a plurality of instance normalizations.
  • sub-network 101 comprises a first example of a normalized layer N11, N12 examples normalized layers and layer instances normalized N1n 1
  • a second sub-network 102 comprises a layer of Example normalized N21, examples The normalization layer N22 and the instance normalization layer N2n 1
  • the third sub-network 103 includes an instance normalization layer N31, an instance normalization layer N32, and an instance normalization layer N3n 1
  • the first sub-network 101 may include n 1 instance normalization layers
  • the second sub-network 102 also includes n 1 instance normalization layers
  • the third sub-network 103 also includes n 1 instance normalization layers.
  • the first sub-network 101 may include n 1 instance normalization layers, that is, the instance normalization layer and the first convolution layer are in one-to-one correspondence.
  • the present invention is not limited thereto, and a plurality of first convolution layers (for example, two or three first convolutional layers, etc.) may be corresponding to one instance normalization layer, so that the number of instance normalization layers is less than the first volume. Laminated. The embodiment of the present disclosure does not specifically limit this.
  • the first standard downsampling SD1 layer can also replace the original one instance normalization layer, and the first standard upsampling layer SU1 can also replace the last instance. Normalized layer.
  • the second standard downsampling SD2 and the second standard upsampling layer SU2 may also be substituted for the example normalization layer.
  • the instance normalization layer is used to normalize the feature image output by the first convolution layer so that the gray value of the pixel of the feature image changes within a predetermined range, thereby simplifying the generation and improving the quality of the style migration.
  • the predetermined range may be [-1, 1].
  • the instance normalization layer normalizes the feature image according to the mean and variance of each feature image itself.
  • An instance normalization layer can be used to normalize a single image.
  • the normalized formula of the instance normalization layer can be expressed as follows:
  • x tijk is the value of the tth feature patch, the i-th feature image, the j-th column, and the k-th row in the feature image set output by the first convolution layer.
  • y tijk represents the result obtained by processing the x tijk through the instance normalization layer.
  • is a small integer to avoid the denominator being 0.
  • the analysis network can include a second convolutional neural network 20.
  • the second convolutional neural network 20 is configured to receive the first training input image, the second training input image, and the training output image, and respectively generate and output the first training input feature of the first training input image, and the first training of the training output image The output feature and the second training output feature and the second training input feature of the second training input image.
  • the second training input image is a style image.
  • the second training input image may be, for example, a famous painting of various art masters (for example, Monet, Van Gogh, Picasso, etc.), but is not limited thereto.
  • the second training input image may also be ink painting, sketching, or the like.
  • the training output image is an image formed after the first training input image is subjected to style transfer by the first convolutional neural network 10.
  • the training output image includes a content feature of the first training input image and a genre feature of the second training input image.
  • the sizes of the first training input image, the second training input image, and the training output image are all the same.
  • the first training input feature and the first training output feature are both content features
  • the second training input feature and the second training output feature are both style features.
  • the content feature represents the distribution of objects in the image over the entire image
  • the genre features represent relationships between different feature images in different layers of the convolutional neural network.
  • the content features include content information of the image
  • the style features may include texture information, color information, and the like of the image.
  • the texture information represents the correlation between the feature images, which is independent of the position.
  • the feature image in the convolutional neural network can be a one-dimensional matrix
  • the Gram matrix can be used to measure the degree of correlation of each vector in the one-dimensional matrix. Therefore, the convolutional neural network can introduce the Gram matrix to calculate the image style. feature.
  • the Gram matrix can be expressed as follows:
  • FIG. 7 is a schematic structural diagram of a second convolutional neural network according to an embodiment of the present disclosure.
  • the second convolutional neural network 20 includes a plurality of second convolution layers (eg, a second convolutional layer C41, a second convolutional layer C42, a second convolutional layer C43, and a second convolution layer C4n 2 ) and a plurality of second pooling layers interposed between adjacent second convolution layers (eg, second pooling layer P41, second pooling layer P42, and second pooling) Layer P43).
  • Each second convolution layer is for extracting and outputting a first training input feature, a first training output feature, a second training output feature, and/or a second training input feature.
  • the second convolutional neural network 20 includes n 2 second convolutional layers and n 2 second pooled layers, n 2 being a positive integer.
  • each second convolutional layer includes a plurality of second convolution kernels.
  • the second convolution kernel can be used to extract content features and/or style convolution features of the input image.
  • the input image shown in FIG. 7 may be a first training input image, a second training input image, and a training output image.
  • the second convolutional neural network 20 can employ a trained convolutional neural network model.
  • the parameters of the second convolutional neural network 20 eg, the second convolution kernel, etc.
  • the second convolutional neural network 20 can implement the content features and style features of the input image by using a neural network model such as AlexNet, GoogleNet, VGG, and Deep Residual Learning.
  • the VGG network is a type of deep convolutional neural network developed by the Visual Geometry Group of Oxford University and has been widely used in the field of visual recognition.
  • a VGG network may include 19 layers, and some of the layers may be normalized.
  • the second convolutional neural network 20 can employ a deep neural network that can classify images.
  • the input image is processed through a number of second convolution layers and a second pooling layer to extract features.
  • the output of each second convolutional layer is a feature image of the input image.
  • the second pooling layer can reduce the resolution of the feature image and pass it to the second convolution layer of the next level.
  • the plurality of second convolutional layers may output a plurality of feature images that may characterize different levels of features (eg, textures, edges, objects, etc.) of the input image.
  • the feature image is input to a planarization layer that converts the feature image into a vector and then passes it to the fully connected layer and the classifier.
  • the classifier layer may include a softmax classifier that may output a probability that the input image belongs to each class identifier, with the most probable identifier being the final output of the second convolutional neural network 20.
  • the second convolutional neural network 20 implements image classification.
  • the second convolutional neural network 20 the second convolution l l N layer having a second convolution, a second convolution l-th layer for generating and outputting a first training input image N l first training feature image, N l second training feature images and N l third training feature images of the training output image, and N l fourth training feature images of the second training input image, and N l
  • the two convolution kernels are respectively in one-to-one correspondence with the N l first training feature images, the N l second training feature images, the N l third training feature images, and the N l fourth training feature images.
  • a second convolution kernel is used to generate and output a first training feature image, a second training feature image, a third training feature image, or a fourth training feature image. If N L second convolution kernel varies, l of first training feature image is not the same N, N L second training feature images are different, the third number N L of training feature images are different, The N l fourth training feature images are also different.
  • l is a positive integer.
  • l denotes the label of the second convolutional layer in the second convolutional neural network 20.
  • the second convolutional neural network 20 has n 2 second convolutional layers, and l has a value range of [1, n 2 ].
  • l is 2 when extracting content features, and 1 can be 1, 2, 3, and n 2 when extracting style features.
  • 1 can be 1, 2, 3, and n 2 when extracting style features.
  • l can also be other values.
  • N l of first training feature image, N l second training feature images, N l training feature images of third and fourth N l th training feature image sizes are the same.
  • the first training feature image and the third training feature image are content feature images
  • the second training feature image and the fourth training feature image are style feature images. That is, some of the second convolutional layers in the second convolutional neural network 20 can be used to extract the content features of the first training input image to obtain the first training feature image, and the second convolutional neural network 20
  • the second convolution layer is used to extract the style feature and the content feature of the training output image to obtain the second training feature image and the third training feature image, respectively, and some second convolution layers in the second convolutional neural network 20 are also used for extracting.
  • the second training inputs a style feature of the image to obtain a fourth training feature image.
  • the second convolution layer that extracts the content feature of the first training input image and the content feature of the training output image may be the same or different; extract the style feature of the training output image and the second feature of the second training input image.
  • the convolutional layers may be the same or different.
  • the second convolutional layer that extracts the content features and the genre features may be the same or different.
  • the loss function 30 may also include a content loss function and a style loss function, respectively.
  • the content loss function is used to describe the difference in the content of the first training input image and the training output image
  • the style loss function is used to describe the difference in the style of the second training input image and the training output image.
  • the content loss function is for calculating a content loss value of a parameter of the first convolutional neural network 10 based on the first training input feature of the first training input image and the first training output feature of the training output image.
  • the style loss function is for calculating a style loss value of a parameter of the first convolutional neural network 10 based on the second training output feature of the training output image and the second training input convolution feature of the second training input image.
  • step S40 may further include: extracting, by the analysis network, a first training input feature of the first training input image and extracting a first training output feature of the training output image; according to the first training input feature and the first training The output feature calculates the content loss value of the parameters of the neural network through the content loss function.
  • the loss value of the neural network also includes a content loss value.
  • step S50 may further include: adjusting values of the plurality of first convolution kernels and values of the plurality of offsets according to the content loss value.
  • step S40 may further include: extracting, by the analysis network, a second training input feature of the second training input image and extracting a second training output feature of the training output image; according to the second training output feature and the second training The input feature calculates the style loss value of the parameters of the neural network by the style loss function.
  • the loss value of the neural network includes a style loss value.
  • step S50 may further include: adjusting values of the plurality of first convolution kernels and values of the plurality of offsets according to the style loss value.
  • C l represents the content loss function
  • a value indicating a j-th position in the first training feature image corresponding to the i-th second convolution kernel in the lth second convolutional layer The value of the jth position in the third training feature image corresponding to the i-th second convolution kernel in the first second convolutional layer, and S 1 is a constant.
  • the total content loss function is expressed as Formula (5):
  • L content represents the total content loss function
  • Q1 is a positive integer, and represents the number of second convolution layers that extract and output the first training input feature and the first training output feature
  • w 1l represents the weight of C l .
  • E l represents a style loss function
  • M l represents a size of the fourth training feature image, a value indicating a j-th position in a Gram matrix of the second training feature image corresponding to the i-th second convolution kernel in the first second convolutional layer, The value of the j-th position in the Gram matrix of the fourth training feature image corresponding to the i-th second convolution kernel in the first second convolutional layer, and S 2 is a constant.
  • the size of the second training feature image is the same as the size of the fourth training feature image, and therefore, M l also represents the size of the second training feature image.
  • the total style loss function is expressed as Formula (7):
  • L style represents the total style loss function
  • Q2 is a positive integer, and represents the number of second convolution layers that extract and output the second training input feature and the second training output feature
  • w 2l represents the weight of E l .
  • Q1 and Q2 may be the same or different.
  • the genre feature may be extracted by a plurality of second convolutional layers (eg, two or three second convolutional layers, etc.), and the content features may be extracted by a second convolutional layer.
  • the style feature can also be extracted by a second convolution layer.
  • Content features can also be extracted by multiple second convolutional layers. The embodiment of the present disclosure does not specifically limit this.
  • the total loss function L total of the neural network can be expressed as follows:
  • ⁇ , ⁇ and ⁇ are the weights of the content loss function, the style loss function and the L1 loss function in the total loss function, respectively.
  • the loss values of the parameters of the first convolutional neural network 10 include L1 loss values, content loss values, and style loss values. That is, the value of L total represents the loss value of the parameter of the first convolutional neural network 10.
  • the neural network may include a first conversion matrix 50 and a second conversion matrix 51.
  • the first training input image has a first training input color channel, a second training input color channel, and a third training input color channel.
  • Step S20 may include converting the first training input image into a first training intermediate image through the first conversion matrix, and inputting the first training intermediate image to the neural network.
  • converting the first training input image to the first training intermediate image by the first conversion matrix includes: first training input color channel, second training input color channel, and third of the first training input image through the first conversion matrix
  • the data information of the training input color channel is converted into data information of the first training luminance channel, the first training color difference channel, and the second training color difference channel of the first training intermediate image.
  • step S30 may include utilizing the first sub-network 101, the second sub-network 102, and the third sub-network 103, respectively, for the first training luma channel of the first training intermediate image.
  • Data information, data information of the first training color difference channel, and data information of the second training color difference channel are subjected to style migration processing to generate data information of the second training luminance channel of the second training intermediate image and data information of the third training color difference channel And data information of the third training color difference channel; converting the second training intermediate image into a training output image.
  • the first training input image is first subjected to downsampling processing through the first standard downsampling layer SD1 to reduce the number of the first training intermediate image.
  • a data information amount of the training color difference channel is processed by the multi-layer first convolution layer; then, the data information of the first training color difference channel is subjected to upsampling processing by the first standard upsampling layer SU1 To increase the amount of data information of the first training color difference channel; finally, the data information of the first training color difference channel is transmitted to the second conversion matrix 51.
  • the third sub-network 103' is configured to process the data information of the second training color difference channel of the first training intermediate image.
  • converting the second training intermediate image into the training output image includes: receiving, by using the second conversion matrix 51, data information of the second training luminance channel of the second training intermediate image processed by the first convolutional neural network 10, And thirdly training the data information of the color difference channel and the data information of the fourth training color difference channel to obtain data information of the first training output color channel of the training output image, data information of the second training output color channel, and a third training output color channel Data information.
  • the first training input image is an image in RGB format
  • the first training intermediate image is an image in YUV format
  • the first training input color channel, the second training input color channel, and the third training input color channel are a red (R) channel, a green (G) channel, and a blue (B) channel, respectively.
  • the first training luminance channel, the first training color difference channel, and the second training color difference channel are a Y channel, a U channel, and a V channel, respectively.
  • the Y channel and the U channel and the V channel are separated; Y represents brightness, U and V represent color differences, and U and V are two components constituting color.
  • the training output image is an image in RGB format
  • the second training intermediate image is an image in YUV format
  • the first training output color channel, the second training output color channel, and the third training output color channel are a red (R) channel, a green (G) channel, and a blue (B) channel, respectively.
  • the second training luminance channel, the third training color difference channel, and the fourth training color difference channel are a Y channel, a U channel, and a V channel, respectively.
  • FIG. 8 is a schematic flowchart of an image processing method for implementing image style migration based on a neural network according to an embodiment of the present disclosure.
  • the neural network is a neural network trained according to the training method provided by any of the above embodiments.
  • the image processing method provided by the embodiment of the present disclosure may include the following steps:
  • Step S100 acquiring a first image
  • Step S101 input the first image to the neural network
  • Step S102 Perform a style transfer process on the first image by using a neural network to generate a second image.
  • the image processing method provided by the embodiment of the present disclosure can perform the style migration processing on the first image through the neural network, not only can achieve a better style migration effect, but also can improve the processing speed, and has a better and wider application prospect.
  • the first image may be various types of images.
  • it may be a person image, an animal or plant image, a landscape image, or the like.
  • the first image can be acquired by an image acquisition device.
  • the image capture device can be, for example, a camera of a smartphone, a camera of a tablet, a camera of a personal computer, a lens of a digital camera, or even a webcam.
  • the second image is an image formed by the first image after the style transfer by the first convolutional neural network.
  • the second image includes a content feature of the first image and a genre feature of the genre image.
  • the style features are determined and unchanged.
  • a painting of Picasso for example, "Dream”
  • the style is the style of the Picasso painting ("Dream").
  • the style image may be the second training input image in the embodiment of the training method of the neural network.
  • FIG. 9A is a schematic diagram of a first image
  • FIG. 9B is a schematic diagram of a style image
  • FIG. 9C is a schematic diagram of a second image processed by an image processing method according to an embodiment of the present disclosure.
  • the first image may be a photo taken by the user.
  • the style image can be a ukiyo-e print, for example, the picture shown in Figure 9B is in the Kanagawa surf.
  • the image shown in FIG. 9C is a second image obtained by the image processing method provided by the embodiment of the present disclosure, which has a content feature of the first image and a style feature of the style image.
  • the first image and the second image may have the same resolution or may have different resolutions.
  • the sizes of the first image and the second image are the same.
  • the neural network also includes a first conversion matrix 50 having a first input color channel, a second input color channel, and a third input color channel.
  • Step S101 may include converting the first image into a first intermediate image by the first conversion matrix, and inputting the first intermediate image to the neural network.
  • the first image is an image in RGB format and the first intermediate image is an image in YUV format.
  • the first input color channel, the second input color channel, and the third input color channel are a red (R) channel, a green (G) channel, and a blue (B) channel, respectively.
  • the first luminance channel, the first color difference channel, and the second color difference channel are a Y channel, a U channel, and a V channel, respectively.
  • the Y channel and the U channel and the V channel are separated.
  • Y represents luminance
  • U and V represent chromatic aberration
  • U and V are two components constituting color.
  • converting the first image into the first intermediate image by the first conversion matrix may include: data information of the first input color channel, the second input color channel, and the third input color channel of the first image by the first conversion matrix Converting to data information of the first luminance channel, the first color difference channel, and the second color difference channel of the first intermediate image.
  • the conversion formula of the first conversion matrix 50 can be expressed as:
  • Y1, U1 and V1 respectively represent luminance information, first chrominance information and second chrominance information of the first intermediate image, that is, Y1, U1 and V1 respectively represent Y channel, U channel and V channel of the first intermediate image
  • the data R1, G1, and B1 represent the red information, the green information, and the blue information of the first image, that is, R1, G1, and B1 respectively represent the data of the R channel, the G channel, and the B channel of the first image.
  • the neural network includes a first convolutional neural network.
  • the first convolutional neural network may include a first sub-network, a second sub-network, and a third sub-network.
  • the first sub-network is used to process the data information of the Y channel
  • the second sub-network is used to process the data information of the U channel
  • the third sub-network is used to process the data information of the V channel. That is to say, the image processing method provided by the embodiment of the present disclosure can separately process different channels of the first intermediate image, thereby reducing the model for generating the neural network, further improving the processing speed, and increasing the flexibility of image processing.
  • the first sub-network includes a first set of first convolutional layers
  • the second sub-network includes a second set of first convolutional layers
  • the third sub-network includes a third set of first convolutional layers.
  • the first sub-network 101 further includes a plurality of first pooling layers, a plurality of composite layers, and a plurality of instance normalization layers
  • the second sub-network 102 further includes a plurality of first pooling layers, a plurality of composite layers, and a plurality of The instance normalization layer
  • the third sub-network 103 further includes a plurality of first pooling layers, a plurality of composite layers, and a plurality of instance normalization layers.
  • the second sub-network or the third sub-network may omit some composite layers or instance normalization layers and the like.
  • the YUV format may include formats such as YUV444, YUV420, and YUV422.
  • the main difference between the YUV444, YUV420, and YUV422 formats is the sampling and storage of data for the U and V channels.
  • the data stream for storing or processing the four pixels is:
  • the mapped pixels are represented as:
  • the mapped pixel points are the original pixel points.
  • the YUV420 format indicates that there is only one chrominance information (first chrominance information U or second chrominance information V) in each row of pixels, and the first chrominance information U or the second chrominance information V is 1/2.
  • the frequency of sampling is stored. Adjacent lines process different chrominance information during image processing.
  • the data stream for storing or processing the 8 pixels is:
  • the mapped pixels are expressed as:
  • the adjacent 4 pixels in each row occupy only 6 bytes when stored or processed, and the YUV420 format reduces the processing and processing ratio compared to the YUV444 (4 pixels requires 12 bytes) sampling format.
  • the amount of data stored in the pixel Although the mapped pixels are slightly different from the original pixels, these differences do not cause significant changes in the human eye.
  • FIG. 10A is a schematic structural diagram of a neural network according to an embodiment of the present disclosure
  • FIG. 10B is a schematic structural diagram of another neural network according to an embodiment of the present disclosure.
  • the first intermediate image uses the image format of YUV 444.
  • the configurations of the first sub-network, the second sub-network, and the third sub-network may be the same or different.
  • the configurations of the first sub-network 101, the second sub-network 102, and the third sub-network 103 are the same.
  • the first sub-network 101 will be described below as an example.
  • the first sub-network 101 includes five first convolution layers (a first convolutional layer C11, a first convolutional layer C12, a first convolutional layer C13, a first convolutional layer C14, and a first convolutional layer C15) ), two first pooling layers (first pooling layer P11 and first pooling layer P12), two composite layers (composite layer M11 and composite layer M12) and four instance normalized layers (example normalized) Layer N11, instance normalization layer N12, instance normalization layer N13, and instance normalization layer N14).
  • step S102 may include: using the first sub-network 101, the second sub-network 102, and the third sub-network 103, respectively, for the first luma channel of the first intermediate image, a color difference channel and a second color difference channel perform a style migration process to generate a second intermediate image, where the second intermediate image includes data information of the second luminance channel, data information of the third color difference channel, and data information of the fourth color difference channel; And converting the second intermediate image to the second image.
  • the first intermediate image adopts an image format of YUV 420.
  • the first image may be processed on the YUV color space such that the first intermediate image adopts the image format of the YUV 420, thereby reducing the U channel And the size of the V channel, which in turn reduces the number of convolution kernels in the generated neural network.
  • the second sub-network includes a first standard upsampling layer and a first standard downsampling layer, the first standard downsampling layer being used in place of the second subnetwork of the first convolutional neural network a first first convolutional layer, a first pooled layer, and an instance normalization layer in the first convolutional layer, the first standard upsampling layer being used to replace the second subnetwork of the first convolutional neural network
  • the third sub-network includes a second standard upsampling layer and a second standard downsampling layer, and the second standard downsampling layer is used
  • the first first convolutional layer, the first pooled layer and the instance normalized layer in the third set of first convolutional layers of the third subnetwork replacing the first convolutional neural network, and the second standard upsampling layer
  • the first sub-network 101' may be identical in configuration to the first sub-network 101 in the first example.
  • the configurations of the second sub-network 102' and the third sub-network 103' are the same.
  • the second sub-network 102' will be described below as an example.
  • the second sub-network 102' includes a first standard downsampling layer SD1, a first standard upsampling layer SU1, and three first convolutional layers (a first convolutional layer C22, a first convolutional layer C23, and a a roll of layers C24), a first pooled layer (first pooled layer P22), a composite layer (composite layer M21), and two instance normalized layers (example normalized layer N22 and instance normalized) Layer N23).
  • the first standard downsampling layer SD1 replaces the first one of the first convolutional layer, one first pooled layer, and one instance normalized layer, the first standard, compared to the first example.
  • the upsampling layer SU1 replaces the last first convolutional layer, the first pooled layer, and the instance normalized layer.
  • the first standard downsampling layer SD1 replaces the original first convolutional layer C21, a first pooled layer P21, and an instance normalized.
  • Layer N21; the first standard upsampling layer SU1 replaces the last first convolutional layer C25, the composite layer M22, and the instance normalized layer N24.
  • the image processing method can further increase the image processing speed.
  • the first standard downsampling layer SD1 and the first standard upsampling layer SU1 are respectively used for downsampling and upsampling the data information of the U channel.
  • the second standard downsampling layer SD2 and the second standard upsampling layer SU2 are respectively used for downsampling and upsampling the data information of the V channel.
  • the structure and sampling factor of the first standard downsampling layer SD1 and the second standard downsampling layer SD2 may be the same or different.
  • the structure and sampling factor of the first standard upsampling layer SU1 and the second standard upsampling layer SU2 may be the same or different. There are no specific restrictions on this.
  • the structure of the first standard downsampling layer SD1 and the second standard downsampling layer SD2 are the same as the downsampling factor, the first standard upsampling layer SU1 and the second standard upsampling.
  • the structure of the layer SU2 and the upsampling factor are also the same.
  • the configurations of the second sub-network 102' and the third sub-network 103' are the same.
  • step S102 includes processing the first luminance channel of the first intermediate image using the first sub-network 101', the second sub-network 102', and the third sub-network 103', respectively. a first color difference channel and a second color difference channel to generate a second intermediate image, the second intermediate image comprising data information of the second luminance channel, data information of the third color difference channel, and data information of the fourth color difference channel; The two intermediate images are converted into a second image.
  • the second image is an image in RGB format and the second intermediate image is an image in YUV format.
  • the first output color channel, the second output color channel, and the third output color channel are a red (R) channel, a green (G) channel, and a blue (B) channel, respectively.
  • the second luminance channel, the third color difference channel, and the fourth color difference channel are a Y channel, a U channel, and a V channel, respectively.
  • the neural network may further include a second conversion matrix 51.
  • Converting the second intermediate image into the second image includes: converting the data information of the second luma channel of the second intermediate image, the data information of the third chroma channel, and the data information of the fourth chroma channel to the second using the second conversion matrix
  • the conversion formula of the second conversion matrix 51 can be expressed as follows;
  • Y2, U2 and V2 respectively represent luminance information of the second intermediate image (ie, data information of the second luminance channel), first chrominance information (ie, data information of the third color difference channel), and second chrominance information (ie, Data information conversion of the fourth color difference channel;
  • R2, G2, and B2 respectively represent red information of the second image (ie, data information of the first output color channel), green information (data information of the second output color channel), and blue Color information (ie, the data information of the third output color channel).
  • the second intermediate image is an image obtained after the first intermediate image is processed by the neural network.
  • the neural network includes an instance normalization layer
  • the gray value of the pixel of the second intermediate image ranges from [-1, 1]
  • the method further includes: The data information of the Y channel, the U channel, and the V channel of the second intermediate image is converted into data information of the R channel, the G channel, and the B channel of the second image; and the gray value of the pixel of the second image is converted to [0, 255] Within the scope.
  • the neural network may not include a planarization layer, a fully connected layer, and a classifier.
  • the specific process for performing the style transfer processing on the first image by the neural network may refer to the related description of processing the first training input image by using the neural network in the embodiment of the foregoing training method, where the repetition is not here. Let me repeat.
  • FIG. 11 is an exemplary block diagram of an image processing apparatus according to an embodiment of the present disclosure.
  • an image processing apparatus provided by an embodiment of the present disclosure includes an image acquisition module 78 and an image processing module 80 .
  • the image obtaining module 78 is configured to acquire a first image
  • the image processing module 80 is configured to perform a style migration process on the first image to generate a second image.
  • image processing module 80 can include the neural network trained in accordance with the training method described in any of the above embodiments.
  • the image processing apparatus performs the style transfer processing on the first image through the neural network, improves the image style migration and the image fusion effect, and takes into consideration both the processing effect and the processing speed, and has a better and wider application prospect. .
  • image acquisition module 78 can include a memory that stores a first image.
  • image acquisition module 78 may also include one or more cameras to capture the first image.
  • image acquisition module 705 can be hardware, software, firmware, and any feasible combination thereof.
  • the image processing apparatus further includes a first conversion module 82.
  • the first conversion module 82 includes a first conversion matrix 50 in a neural network in an embodiment of the image processing method described above.
  • the first conversion matrix 50 is for converting the first image into a first intermediate image.
  • the first image has a first input color channel, a second input color channel, and a third input color channel, the first intermediate image having a first luminance channel, a first color difference channel, and a second color difference channel.
  • the first conversion matrix 50 may be configured to convert data information of the first input color channel, the second input color channel, and the third input color channel of the first image into a first luminance channel, a first color difference channel, and Data information of the second color difference channel.
  • the neural network can include a first convolutional neural network
  • the first convolutional neural network can include a first sub-network, a second sub-network, and a third sub-network.
  • the first sub-network, the second sub-network, and the third sub-network are respectively configured to process the first luma channel, the first chroma channel, and the second chroma channel of the first intermediate image to generate a second luma channel of the second intermediate image Data information, data information of the third color difference channel, and data information of the fourth color difference channel.
  • the first sub-network includes a first set of first convolutional layers
  • the second sub-network includes a second set of first convolutional layers
  • the third sub-network includes a third set of first convolutional layers.
  • the second sub-network includes a first standard upsampling layer and a first standard downsampling layer
  • the third sub-network includes a second standard upsampling layer and a second standard downsampling layer.
  • the first standard downsampling layer is used to replace the first first convolutional layer in the second set of first convolutional layers of the second subnetwork, and the first standard upsampling layer is used to replace the second set of the second subnetwork
  • the last first convolutional layer in the convolutional layer is used to replace the first first convolutional layer in the third set of first convolutional layers of the third subnetwork
  • the second standard upsampling layer is used Substituting the last first convolutional layer in the third set of first convolutional layers of the third subnetwork.
  • the image processing apparatus further includes a second conversion module 84.
  • the second conversion module 84 includes a second conversion matrix 51 in the neural network described above.
  • the second conversion matrix 51 can be used to convert the second intermediate image into a second image.
  • the second conversion module 84 is configured to convert data information of the second luma channel of the second intermediate image, data information of the third color difference channel, and data information of the fourth color difference channel into a first output color channel of the second image. Data information, data information of the second output color channel, and data information of the third output color channel.
  • the first conversion matrix 50 is for receiving a first image and converting the first image into a first intermediate image.
  • the first intermediate image output by the first conversion matrix 50 is input to the image processing module 80.
  • the image processing module 80 is configured to perform a style migration process on the first intermediate image to generate a second intermediate image.
  • the second conversion matrix 51 is for receiving the second intermediate image output by the image processing module 80, and converting the second intermediate image into a second image and then outputting.
  • This second image is the final output of the image processing device.
  • the second image has a content feature of the first image and a genre feature of another image (eg, an artist's oil painting, etc.).
  • FIG. 12 is a schematic block diagram of another image processing apparatus according to an embodiment of the present disclosure. At least one embodiment of the present disclosure also provides an image processing apparatus. As shown in FIG. 12, the image processing apparatus includes a processor 70 and a memory 75. It should be noted that the components of the image processing apparatus shown in FIG. 12 are merely exemplary and not limiting, and the image processing apparatus may have other components depending on actual application needs.
  • processor 70 and memory 75 can communicate with each other directly or indirectly.
  • the network may include a wireless network, a wired network, and/or any combination of a wireless network and a wired network.
  • the network may include a local area network, the Internet, a telecommunications network, an Internet of Things based Internet and/or telecommunications network, and/or any combination of the above networks, and the like.
  • the wired network can be communicated by means of twisted pair, coaxial cable or optical fiber transmission, for example, a wireless communication network such as a 3G/4G/5G mobile communication network, Bluetooth, Zigbee or WiFi.
  • the disclosure does not limit the type and function of the network.
  • processor 70 can control other components in the image processing device to perform the desired functions.
  • Processor 70 may be a device having data processing capabilities and/or program execution capabilities, such as a central processing unit (CPU), a tensor processor (TPU), or a graphics processor GPU.
  • the central processing unit (CPU) can be an X86 or ARM architecture or the like.
  • the GPU can be integrated directly into the motherboard or built into the Northbridge of the motherboard.
  • the GPU can also be built into the central processing unit (CPU).
  • memory 75 can include any combination of one or more computer program products, which can include various forms of computer readable storage media, such as volatile memory and/or nonvolatile memory.
  • Volatile memory can include, for example, random access memory (RAM) and/or caches and the like.
  • the non-volatile memory may include, for example, a read only memory (ROM), a hard disk, an erasable programmable read only memory (EPROM), a portable compact disk read only memory (CD-ROM), a USB memory, a flash memory, and the like.
  • one or more computer instructions can be stored on memory 75, and processor 70 can execute the computer instructions to perform various functions.
  • Various applications and various data, such as genre images, and various data used and/or generated by the application, etc., may also be stored in the computer readable storage medium.
  • some of the computer instructions stored by memory 75 may be executed by processor 70 to perform one or more of the image processing methods described above.
  • processor 70 when other computer instructions stored by memory 75 are executed by processor 70, one or more of the training methods of neural networks in accordance with the above may be performed.
  • a detailed description of the processing procedure of the image processing method can be referred to the related description in the embodiment of the image processing method described above, and a detailed description of the processing procedure of the training method of the neural network can be referred to the embodiment of the training method of the above neural network.
  • the relevant descriptions and repetitions are not repeated here.
  • At least one embodiment of the present disclosure also provides a storage medium.
  • one or more computer instructions can be stored on a storage medium.
  • Some computer instructions stored on the storage medium may be, for example, instructions for implementing one or more of the above described image processing methods.
  • Other computer instructions stored on the storage medium may be, for example, instructions for implementing one or more of the training methods of the neural network described above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

一种用于实现图像风格迁移的神经网络的训练方法以及图像处理方法、图像处理装置。该训练方法包括:获取第一训练输入图像和第二训练输入图像(S10);将第一训练输入图像输入至神经网络(S20);利用神经网络对第一训练输入图像进行风格转移处理,以得到训练输出图像(S30);基于第一训练输入图像、第二训练输入图像和训练输出图像,通过损失函数计算神经网络的参数的损失值(S40);以及根据损失值对神经网络的参数进行修正(S50),在损失值满足预定条件时,得到训练好的神经网络(S70),在损失值不满足预定条件时,继续输入第一训练输入图像和第二训练输入图像以重复执行上述训练过程,其中,损失函数包括权重偏置比损失函数。

Description

图像处理方法、图像处理装置、神经网络的训练方法
本申请要求于2017年08月29日递交的中国专利申请第201710757133.7号的优先权,在此全文引用上述中国专利申请公开的内容以作为本申请的一部分。
技术领域
本公开的实施例涉及一种用于实现图像风格迁移的神经网络的训练方法、基于神经网络实现图像风格迁移的图像处理方法以及图像处理装置。
背景技术
当前,基于人工神经网络的深度学习技术已经在诸如物体分类、文本处理、推荐引擎、图像搜索、面部识别、年龄和语音识别、人机对话以及情感计算等领域取得了巨大进展。随着人工神经网络结构的加深和算法的提升,深度学习技术在类人类数据感知领域取得了突破性的进展,深度学习技术可以用于描述图像内容、识别图像中的复杂环境下的物体以及在嘈杂环境中进行语音识别等。同时,深度学习技术还可以解决图像生成和融合的问题。
发明内容
本公开至少一实施例提供一种用于实现图像风格迁移的神经网络的训练方法,包括:获取第一训练输入图像和第二训练输入图像;将所述第一训练输入图像输入至所述神经网络;利用所述神经网络对所述第一训练输入图像进行风格转移处理,以得到训练输出图像;基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值;以及根据所述损失值对所述神经网络的参数进行修正,在所述损失函数满足预定条件时,得到训练好的所述神经网络,在所述损失函数不满足预定条件时,继续输入所述第一训练输入图像和所述第二训练输入图像以重复执行上述训练过程,其中,所述损失函数包括权重偏置比损失函数。
例如,在本公开一实施例提供的训练方法中,所述神经网络包括第一卷积神经网络,所述第一卷积神经网络包括多个第一卷积核和多个偏置,所述神经网络的参数包括所述多个第一卷积核和所述多个偏置,
所述权重偏置比损失函数表示为:
Figure PCTCN2018100833-appb-000001
其中,L L1表示所述权重偏置比损失函数,W为所述多个第一卷积核的绝对值的平均值,B为所述多个偏置的绝对值的平均值,ε为正数。
例如,在本公开一实施例提供的训练方法中,通过所述损失函数计算所述神经网络的参数的损失值,包括:根据所述多个第一卷积核和所述多个偏置,通过所述权重偏置比损失函数计算所述神经网络的参数的权重偏置比损失值,所述损失值包括所述权重偏置比损失值。
例如,在本公开一实施例提供的训练方法中,根据所述损失值对所述神经网络的参数进行修正包括:根据所述权重偏置比损失值,调整所述多个第一卷积核和多个偏置之间的比值。
例如,在本公开一实施例提供的训练方法中,所述神经网络还包括第一转换矩阵,所述第一训练输入图像具有第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道,将所述第一训练输入图像输入至所述神经网络,包括:
通过所述第一转换矩阵将所述第一训练输入图像转换为第一训练中间图像;
将所述第一训练中间图像输入至所述神经网络;
其中,通过所述第一转换矩阵将所述第一训练输入图像转换为第一训练中间图像包括:
通过所述第一转换矩阵将所述第一训练输入图像的第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道的数据信息转换为所述第一训练中间图像的第一训练亮度信道、第一训练色差信道和第二训练色差信道的数据信息。
例如,在本公开一实施例提供的训练方法中,所述第一卷积神经网络包括第一子网络、第二子网络和第三子网络,
利用所述神经网络对所述第一训练输入图像进行风格转移处理,以得到训练输出图像,包括:
利用所述第一子网络、所述第二子网络和所述第三子网络分别对所述第一训练中间图像的第一训练亮度信道的数据信息、第一训练色差信道的数据信息 和第二训练色差信道的数据信息进行风格迁移处理,以生成第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第四训练色差信道的数据信息;
将所述第二训练中间图像转换为所述训练输出图像,
其中,所述训练输出图像为RGB格式的图像,所述第二训练中间图像为YUV格式的图像。
例如,在本公开一实施例提供的训练方法中,所述神经网络还包括第二转换矩阵,将所述第二训练中间图像转换为所述训练输出图像包括:
利用所述第二转换矩阵将所述第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第四训练色差信道的数据信息转换为所述训练输出图像的第一训练输出颜色通道的数据信息、第二训练输出颜色通道的数据信息和第三训练输出颜色通道的数据信息。
例如,在本公开一实施例提供的训练方法中,所述第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层,所述第二子网络包括第一标准上采样层和第一标准下采样层,所述第三子网络包括第二标准上采样层和第二标准下采样层,所述第一标准下采样层用于替代所述第二子网络的第二组第一卷积层中最初的第一卷积层,所述第一标准上采样层用于替代所述第二子网络的第二组第一卷积层中最后的第一卷积层;所述第二标准下采样层用于替代所述第三子网络的第三组第一卷积层中最初的第一卷积层,所述第二标准上采样层用于替代所述第三子网络的第三组第一卷积层中最后的第一卷积层。
例如,在本公开一实施例提供的训练方法中,所述损失函数还包括内容损失函数,基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值,还包括:通过分析网络提取所述第一训练输入图像的第一训练输入特征和提取所述训练输出图像的第一训练输出特征;根据所述第一训练输入特征和所述第一训练输出特征通过所述内容损失函数计算所述神经网络的参数的内容损失值,所述损失值包括所述内容损失值。
例如,在本公开一实施例提供的训练方法中,所述损失函数还包括风格损失函数,基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值,还包括:通过所述分 析网络提取所述第二训练输入图像的第二训练输入特征和提取所述训练输出图像的第二训练输出特征;根据所述第二训练输出特征和所述第二训练输入特征通过所述风格损失函数计算所述神经网络的参数的风格损失值,所述损失值包括所述风格损失值。
例如,在本公开一实施例提供的训练方法中,所述第一训练输入特征和所述第一训练输出特征均为内容特征,所述第二训练输入特征和所述第二训练输出特征均为风格特征。
例如,在本公开一实施例提供的训练方法中,所述分析网络包括第二卷积神经网络,所述第二卷积神经网络包括依次连接的多个第二卷积层和间插于相邻第二卷积层之间的多个第二池化层,每个第二卷积层用于提取所述第一训练输入特征、所述第一训练输出特征、所述第二训练输出特征和/或所述第二训练输入特征,第l个第二卷积层具有N l个第二卷积核,所述第l个第二卷积层用于生成并输出所述第一训练输入图像的N l个第一训练特征图像、所述训练输出图像的N l个第二训练特征图像和N l个第三训练特征图像以及所述第二训练输入图像的N l个第四训练特征图像,且所述N l个卷积核分别与所述N l个第一训练特征图像、所述N l个第二训练特征图像、所述N l个第三训练特征图像以及所述N l个第四训练特征图像一一对应,
所述N l个第一训练特征图像、N l个第二训练特征图像、N l个第三训练特征图像和N l个第四训练特征图像的尺寸相同。
例如,在本公开一实施例提供的训练方法中,所述第l个第二卷积层的所述内容损失函数表示为:
Figure PCTCN2018100833-appb-000002
其中,C l表示所述内容损失函数,
Figure PCTCN2018100833-appb-000003
表示在所述第l个第二卷积层中第i个第二卷积核对应的第一训练特征图像中第j个位置的值,
Figure PCTCN2018100833-appb-000004
表示在所述第l个第二卷积层中第i个第二卷积核对应的第三训练特征图像中第j个位置的值,S 1为常数,
总内容损失函数表示为:
Figure PCTCN2018100833-appb-000005
其中,L content表示所述总内容损失函数,Q1为正整数,且表示提取并输出所述第一训练输入特征和所述第一训练输出特征的第二卷积层的数量,w 1l表示 C l的权重;
所述第l个第二卷积层的所述风格损失函数表示为:
Figure PCTCN2018100833-appb-000006
其中,E l表示所述风格损失函数,M l表示所述第四训练特征图像的尺寸,
Figure PCTCN2018100833-appb-000007
表示在所述第l个第二卷积层中第i个第二卷积核对应的第二训练特征图像的格拉姆矩阵中第j个位置的值,
Figure PCTCN2018100833-appb-000008
表示在所述第l个第二卷积层中第i个第二卷积核对应的第四训练特征图像的格拉姆矩阵中第j个位置的值,S 2为常数,
总风格损失函数表示为:
Figure PCTCN2018100833-appb-000009
其中,L style表示所述总风格损失函数,Q2为正整数,且表示提取并输出所述第二训练输入特征和所述第二训练输出特征的第二卷积层的数量,w 2l表示E l的权重。
本公开至少一实施例还提供一种基于神经网络实现图像风格迁移的图像处理方法,其中,所述神经网络为根据上述任一项所述的训练方法训练得到的神经网络,所述图像处理方法包括:获取第一图像;将所述第一图像输入至所述神经网络;利用所述神经网络对所述第一图像进行风格转移处理,以生成第二图像。
例如,在本公开一实施例提供的图像处理方法中,所述神经网络还包括第一转换矩阵,所述第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道,
将所述第一图像输入至所述神经网络包括:
通过所述第一转换矩阵将所述第一图像转换为第一中间图像;
将所述第一中间图像输入至所述神经网络;
其中,通过所述第一转换矩阵将所述第一图像转换为第一中间图像包括:通过所述第一转换矩阵将所述第一图像的第一输入颜色通道、第二输入颜色通道和第三输入颜色通道的数据信息转换为所述第一中间图像的第一亮度信道、第一色差信道和第二色差信道的数据信息。
例如,在本公开一实施例提供的图像处理方法中,所述神经网络还包括第一卷积神经网络,所述第一卷积神经网络包括第一子网络、第二子网络和第三子网络,利用所述神经网络对所述第一图像进行风格转移处理,以生成第二图 像,包括:
利用所述第一子网络、所述第二子网络和所述第三子网络分别对所述第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信道的数据信息进行风格迁移处理,以生成第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息;
将所述第二中间图像转换为所述第二图像,
其中,所述第二图像为RGB格式的图像,所述第二中间图像为YUV格式的图像。
例如,在本公开一实施例提供的图像处理方法中,所述神经网络还包括第二转换矩阵,
将所述第二中间图像转换为所述第二图像包括:
利用所述第二转换矩阵将所述第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息转换为所述第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。
本公开至少一实施例还提供一种图像处理装置,包括:图像获取模块,用于获取第一图像;图像处理模块,包括根据上述任一项所述的训练方法训练得到的神经网络,所述图像处理模块用于利用所述神经网络对所述第一图像进行风格迁移处理,以生成第二图像。
例如,本公开一实施例提供的图像处理装置还包括第一转换模块,所述第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道,所述第一转换模块用于将所述第一图像的第一输入颜色通道的数据信息、第二输入颜色通道的数据信息和第三输入颜色通道的数据信息转换为第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信道的数据信息,所述神经网络包括第一子网络、第二子网络和第三子网络,所述第一子网络、第二子网络和第三子网络分别用于处理所述第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信道的数据信息,以生成第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息。
例如,本公开一实施例提供的图像处理装置还包括第二转换模块,所述第二转换模块用于将所述第二中间图像的第二亮度信道的数据信息、第三色差信 道的数据信息和第四色差信道的数据信息转换为所述第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。
例如,在本公开一实施例提供的图像处理装置中,所述第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层,所述第二子网络包括第一标准上采样层和第一标准下采样层,所述第三子网络包括第二标准上采样层和第二标准下采样层,所述第一标准下采样层用于替代所述第二子网络的第二组第一卷积层中最初的第一卷积层,所述第一标准上采样层用于替代所述第二子网络的第二组第一卷积层中最后的第一卷积层;所述第二标准下采样层用于替代所述第三子网络的第三组第一卷积层中最初的第一卷积层,所述第二标准上采样层用于替代所述第三子网络的第三组第一卷积层中最后的第一卷积层。
本公开至少一实施例还提供一种图像处理装置,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,所述计算机可读指令被所述处理器运行时执行根据上述任一项所述的训练方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为一种卷积神经网络的示意图;
图2A示出了一种卷积神经网络的示例性模型图;
图2B示出了一种卷积神经网络的工作过程示意图;
图3为另一种卷积神经网络的结构示意图;
图4A为本公开一实施例提供的一种用于实现图像风格迁移的神经网络的训练方法的流程图;
图4B为本公开一实施例提供的一种在训练过程中的神经网络的训练模块的示意性框图;
图5A为本公开一实施例提供的一种第一卷积神经网络的结构示意图;
图5B为本公开一实施例提供的另一种第一卷积神经网络的结构示意图;
图6A为本公开一实施例提供的一种复合层的示意图;
图6B为本公开一实施例提供的另一种复合层的示意图;
图7为本公开一实施例提供的一种第二卷积神经网络的结构示意图;
图8为本公开一实施例提供的一种基于神经网络实现图像风格迁移的图像处理方法的示意性流程图;
图9A为一种第一图像的示意图;
图9B为一种风格图像的示意图;
图9C为根据本公开一实施例提供的一种图像处理方法处理得到的第二图像的示意图;
图10A为本公开一实施例提供的一种生成神经网络的结构示意图;
图10B为本公开一实施例提供的另一种生成神经网络的结构示意图;
图11为本公开一实施例提供的一种图像处理装置的示意性框图;以及
图12为本公开一实施例提供的另一种图像处理装置的示意性框图。
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了已知功能和已知部件的详细说明。
当今,随着图像处理技术的发展,对图像进行风格化迁移处理的方法逐渐 成为图像处理领域的研究热点。将一幅图像转换成具备某种艺术风格的图片,可以用于基于云计算的图像处理、风格渲染以及数字画廊等产品和服务。
利用深度神经网络进行图片的艺术风格转移是随着深度学习技术的发展而新兴起来的技术。例如,基于参考图像所给出的风格(style),对输入图像进行处理以获得至少部分体现出该风格的输出图像。例如,参考图像为某个艺术家的作品,输出图像则可以在保留原有内容的同时还呈现出该艺术家作画的某些风格特征,甚至使人将其误认为是该艺术家的作品。传统的图像处理效果(例如,instagram公司提供的各种滤镜等)无法获得这样的风格化迁移处理效果。
本公开至少一实施例提供一种用于实现图像风格迁移的神经网络的训练方法、基于神经网络实现图像风格迁移的图像处理方法以及图像处理装置,其通过在用于训练神经网络的过程使用的损失函数中采用或增加权重偏置比(L1)损失函数,从而可以更好地发挥神经网络中的激活函数的作用,获取更优化的卷积参数,提高图像风格迁移和图像融合效果,从而在处理效果和处理速度等方面得以兼顾,具有更好、更广泛的应用前景。
最初卷积神经网络(Convolutional Neural Network,CNN)主要用于识别二维形状,其对图像的平移、比例缩放、倾斜或其他形式的变形具有高度不变性。CNN主要通过局部感知野和权值共享来简化神经网络模型的复杂性、减少权重的数量。随着深度学习技术的发展,CNN的应用范围已经不仅仅限于图像识别领域,其也可以应用在人脸识别、文字识别、动物分类、图像处理等领域。
图1为一种卷积神经网络的示意图。例如,该卷积神经网络可以用于图像处理,其使用图像作为输入和输出,并通过卷积核替代标量的权重。图1中仅示出了具有3层结构的卷积神经网络,本公开的实施例对此不作限制。如图1所示,卷积神经网络包括输入层101、隐藏层102和输出层103。输入层101具有4个输入,隐藏层102具有3个输出,输出层103具有2个输出,最终该卷积神经网络最终输出2幅图像。
例如,输入层101的4个输入可以为4幅图像,或者1幅图像的四种特征。隐藏层102的3个输出可以为经过输入层101输入的图像的特征图像。
例如,如图1所示,卷积层具有权重
Figure PCTCN2018100833-appb-000010
和偏置
Figure PCTCN2018100833-appb-000011
权重
Figure PCTCN2018100833-appb-000012
表示卷积核,偏置
Figure PCTCN2018100833-appb-000013
是叠加到卷积层的输出的标量,其中,k是表示输入层101的标签,i和j分别是输入层101的单元和隐藏层102的单元的标签。例如,第一卷积层201包 括第一组卷积核(图1中的
Figure PCTCN2018100833-appb-000014
)和第一组偏置(图1中的
Figure PCTCN2018100833-appb-000015
)。第二卷积层202包括第二组卷积核(图1中的
Figure PCTCN2018100833-appb-000016
)和第二组偏置(图1中的
Figure PCTCN2018100833-appb-000017
)。通常,每个卷积层包括数十个或数百个卷积核,若卷积神经网络为深度卷积神经网络,则其可以包括至少五层卷积层。
例如,如图1所示,该卷积神经网络还包括第一激活层203和第二激活层204。第一激活层203位于第一卷积层201之后,第二激活层204位于第二卷积层202之后。激活层(例如,第一激活层203和第二激活层204)包括激活函数,激活函数用于给卷积神经网络引入非线性因素,以使卷积神经网络可以更好地解决较为复杂的问题。激活函数可以包括线性修正单元(ReLU)函数、S型函数(Sigmoid函数)或双曲正切函数(tanh函数)等。ReLU函数为非饱和非线性函数,Sigmoid函数和tanh函数为饱和非线性函数。例如,激活层可以单独作为卷积神经网络的一层,或者激活层也可以被包含在卷积层(例如,第一卷积层201可以包括第一激活层203,第二卷积层202可以包括第二激活层204)中。
例如,在第一卷积层201中,首先,对每个输入应用第一组卷积核中的若干卷积核
Figure PCTCN2018100833-appb-000018
和第一组偏置中的若干偏置
Figure PCTCN2018100833-appb-000019
以得到第一卷积层201的输出;然后,第一卷积层201的输出可以通过第一激活层203进行处理,以得到第一激活层203的输出。在第二卷积层202中,首先,对输入的第一激活层203的输出应用第二组卷积核中的若干卷积核
Figure PCTCN2018100833-appb-000020
和第二组偏置中的若干偏置
Figure PCTCN2018100833-appb-000021
以得到第二卷积层202的输出;然后,第二卷积层202的输出可以通过第二激活层204进行处理,以得到第二激活层204的输出。例如,第一卷积层201的输出可以为对其输入应用卷积核
Figure PCTCN2018100833-appb-000022
后再与偏置
Figure PCTCN2018100833-appb-000023
相加的结果,第二卷积层202的输出可以为对第一激活层203的输出应用卷积核
Figure PCTCN2018100833-appb-000024
后再与偏置
Figure PCTCN2018100833-appb-000025
相加的结果。
在利用卷积神经网络进行图像处理前,需要对卷积神经网络进行训练。经过训练之后,卷积神经网络的卷积核和偏置在图像处理期间保持不变。在训练过程中,各卷积核和偏置通过多组输入/输出示例图像以及优化算法进行调整,以获取优化后的卷积神经网络模型。
图2A示出了一种卷积神经网络的示例性模型图,图2B示出了的一种卷积神经网络的工作过程示意图。例如,如图2A和2B所示,输入图像通过输入层输入到卷积神经网络后,依次经过若干个处理过程(如图2A中的每个层级)后输出类别标识。卷积神经网络的组成部分可以包括多个卷积层、多个池化层和全连接层。例如,一个完整的卷积神经网络可以由这三种层叠加组成。例如, 图2A仅示出了一种卷积神经网络的三个层级,即第一层级、第二层级和第三层级,每个层级包括一个卷积层和一个池化层,池化层为子采样层。由此,每个层级的处理过程可以包括:对输入图像进行卷积(convolution)以及子采样(sub-sampling)。根据实际需要,例如,每个层级的处理过程还可以包括归一化处理(LCN,local constant normalization)等。
卷积层是卷积神经网络的核心层。在卷积神经网络的卷积层中,一个神经元只与部分相邻层的神经元连接。卷积层可以对输入图像应用若干个卷积核,以提取输入图像的多种类型的特征。每个卷积核可以提取一种类型的特征。卷积核一般以随机小数矩阵的形式初始化,在卷积神经网络的训练过程中卷积核将通过学习以得到合理的权值。对输入图像应用一个卷积核之后得到的结果被称为特征图像(feature map),特征图像的数目与卷积核的数目相等。每个特征图像由一些矩形排列的神经元组成,同一特征图像的神经元共享权值,这里共享的权值就是卷积核。一个层级的卷积层输出的特征图像可以被输入到相邻的下一个层级的卷积层并再次处理以得到新的特征图像。例如,如图2A所示,第一层级的卷积层可以输出第一特征图像,该第一特征图像被输入到第二层级的卷积层再次处理以得到第二特征图像。
例如,如图2B所示,卷积层可以使用不同的卷积核对输入图像的某一个局部感受域的数据进行卷积,卷积结果被输入激活层,该激活层根据相应的激活函数进行计算以得到输入图像的特征信息。
例如,如图2A和2B所示,池化层设置在相邻的卷积层之间,池化层是下采样的一种形式。一方面,池化层可以用于缩减输入图像的规模,简化计算的复杂度,在一定程度上减小过拟合的现象;另一方面,池化层也可以进行特征压缩,提取输入图像的主要特征。池化层能够减少特征图像的尺寸,但不改变特征图像的数量。例如,一个尺寸为12×12的输入图像,通过6×6的滤波器对其进行采样,那么可以得到2×2的输出图像,这意味着输入图像上的36个像素合并为输出图像中的1个像素。最后一个池化层或卷积层可以连接到一个或多个全连接层,全连接层用于连接提取的所有特征。全连接层的输出为一个一维矩阵,也就是向量。
图3为另一种卷积神经网络的结构示意图。例如,参见图3所示的示例,最后一个卷积层(即第n 0个卷积层)的输出被输入到平坦化层以进行平坦化操作(Flatten)。平坦化层可以将特征图像(2D图像)转换为向量(1D)。该平 坦化操作可以按照如下的方式进行:
v k=f k/j,k%j
其中,v是包含k个元素的向量,f是具有i行j列的矩阵。
然后,平坦化层的输出(即1D向量)被输入到一个全连接层(FCN)。全连接层可以具有与卷积神经网络相同的结构,但不同之处在于,全连接层使用不同的标量值以替代卷积核。
例如,最后一个卷积层的输出也可以被输入到均化层(AVG)。均化层用于对输出进行平均操作,即利用特征图像的均值表示输出图像,因此,一个2D的特征图像转换成为一个标量。例如,如果卷积神经网络包括均化层,则其可以不包括平坦化层。
例如,根据实际需要,均化层或全连接层可以连接到分类器,分类器可以根据提取的特征进行分类,分类器的输出可以作为卷积神经网络的最终输出,即表征图像类别的类别标识(label)。
例如,分类器可以为支持向量机(Support Vector Machine,SVM)分类器、softmax分类器以及最邻近规则(KNN)分类器等。如图3所示,在一个示例中,卷积神经网络包括softmax分类器,softmax分类器是一种逻辑函数的生成器,可以把一个包含任意实数的K维向量z压缩成K维向量σ(z)。softmax分类器的公式如下:
Figure PCTCN2018100833-appb-000026
其中,Z j表示K维向量z中第j个元素,σ(z)表示每个类别标识(label)的预测概率,σ(z)为实数,且其范围为(0,1),K维向量σ(z)的和为1。根据以上公式,K维向量z中的每个类别标识均被赋予一定的预测概率,而具有最大预测概率的类别标识被选择作为输入图像的标识或类别。
图4A为本公开一实施例提供的一种用于实现图像风格迁移的神经网络的训练方法的流程图,图4B为本公开一实施例提供的一种在训练过程中的神经网络的训练模块的示意性框图。
例如,如图4A所示,本公开实施例提供的用于实现图像风格迁移的神经网络的训练方法包括:
步骤S10:获取第一训练输入图像和第二训练输入图像;
步骤S20:将第一训练输入图像输入至神经网络;
步骤S30:利用神经网络对第一训练输入图像进行风格转移处理,以得到训练输出图像;
步骤S40:基于第一训练输入图像、第二训练输入图像和训练输出图像,通过损失函数计算神经网络的参数的损失值;
步骤S50:根据损失值对神经网络的参数进行修正;
步骤S60:判断损失函数是否满足预定条件;
在损失函数满足预定条件时,执行步骤S70:得到训练好的神经网络;
在损失函数不满足预定条件时,返回到步骤S10:继续输入第一训练输入图像和第二训练输入图像以重复执行上述训练过程。
例如,如图4B所示,在训练过程中,神经网络的训练模块包括神经网络、分析网络、损失函数30。神经网络包括第一卷积神经网络10。例如,第一卷积神经网络10用于对输入的第一训练输入图像进行风格转移处理,以生成训练输出图像。损失函数30用于计算第一卷积神经网络10的参数的损失值,并根据损失值对计算第一卷积神经网络10的参数进行修正。这里,损失函数30包括权重偏置比(L1)损失函数。
例如,在一个示例中,预定条件对应于在一定第一训练输入图像输入下神经网络的损失值的最小化。在另一个示例中,预定条件为神经网络的训练次数或训练周期达到预定数目。
需要说明的是,上述示例仅是示意性说明神经网络的训练过程。本领域技术人员应当知道,在训练阶段,需要利用大量样本图像对神经网络进行训练;同时,在每一幅样本图像训练过程中,都可以包括多次反复迭代以对神经网络的参数进行修正。又例如,训练阶段还包括对神经网络的参数进行微调(fine-tune),以获取更优化的参数。
例如,第一卷积神经网络10的初始参数可以为随机数,例如随机数符合高斯分布。第一卷积神经网络10的初始参数也可以采用ImageNet等图像数据库的已训练好的参数。本公开的实施例对此不作限制。
例如,损失函数30可以根据第一卷积神经网络10的初始参数计算损失值。损失值可以从第一卷积神经网络10的输出层到输入层逐层反向传播,以使损失值分摊到第一卷积神经网络10的各层的所有单元,从而获取各单元的误差值。该误差值即为修正各单元的参数的依据。例如,误差值可以表示为损失值对各单元参数的偏导数。
例如,神经网络的训练模块还可以包括优化函数(未示出),优化函数可以根据损失值计算第一卷积神经网络10的参数的误差值,并根据该误差值调整第一卷积神经网络10的参数。
例如,优化函数可以采用随机梯度下降(stochastic gradient descent,SGD)算法,批量梯度下降(batch gradient descent,BGD)算法等计算第一卷积神经网络10的参数的误差值。
例如,第一训练输入图像可以为各种类型的图像。例如,第一训练输入图像可以为通过数码相机或手机拍摄的图像,其可以为人物图像、动植物图像或风景图像等。
本公开实施例提供的神经网络通过在损失函数中增加权重偏置比损失函数(L1损失函数),从而可以充分发挥第一卷积神经网络中的激活函数的作用,获取更优化的第一卷积神经网络的参数,提高图像风格迁移和图像融合效果,在处理效果和处理速度等方面得以兼顾,具有更好、更广泛的应用前景。
图5A为本公开一实施例提供的一种第一卷积神经网络的结构示意图,图5B为本公开一实施例提供的另一种第一卷积神经网络的结构示意图。
例如,如图5A所示,第一卷积神经网络10包括第一子网络101、第二子网络102和第三子网络103。第一子网络101包括第一组第一卷积层,第二子网络102包括第二组第一卷积层,第三子网络103包括第三组第一卷积层,第一组第一卷积层包括F1个第一卷积层,第二组第一卷积层也包括F2个第一卷积层,第三组第一卷积层也包括F3个第一卷积层,F1、F2、F3均为正整数,且F1、F2、F3可以至少部分相同,也可以彼此均不相同。如图5A所示,例如,第一子网络101包括第一卷积层C11、第一卷积层C12和第一卷积层C1n 1;第二子网络102包括第一卷积层C21、第一卷积层C22和第一卷积层C2n 1;第三子网络103包括第一卷积层C31、第一卷积层C32和第一卷积层C3n 1
例如,如图5A所示,第一子网络101还包括多个第一池化层和多个复合层,第二子网络102还包括多个第一池化层和多个复合层,第三子网络103还包括多个第一池化层和多个复合层。例如,第一子网络101包括第一池化层P11、第一池化层P12和第一池化层P1n 1;第二子网络102包括第一池化层P21、第一池化层P22和第一池化层P2n 1;第三子网络103包括第一池化层P31、第一池化层P32和第一池化层P3n 1。第一子网络101包括复合层M11、复合层M12和复合层M1n 1;第二子网络102包括复合层M21、复合层M22和复合层 M2n 1;第三子网络103包括复合层M31、复合层M32和复合层M3n 1
例如,第一子网络101、第二子网络102和第三子网络103的结构相同。下面以第一子网络101为例进行详细说明。
例如,如图5A所示,在第一子网络101中,多个第一卷积层依次连接,在一些相邻第一卷积层之间具有第一池化层,在另一些相邻的第一卷积层之间具有复合层。
例如,如图5A所示,在一个示例中,第一子网络101包括n 1个第一卷积层,n 1为正整数,且通常大于3,甚至可以上百。低层级的卷积层用于提取第一图像的低阶特征(例如,点、边等);随着层次的增加,高层级的卷积层可以提取第一图像的高阶特征(例如,直线、拐弯、三角形等)。高阶特征可以由低阶特征组合得到。
例如,在第一子网络101中,多个第一池化层的数量和多个复合层的数量相同,且多个第一池化层的下采样因子和多个复合层的上采样因子一一对应,以使第一图像和第二图像的尺寸相同。例如,在如图5A所示的示例中,第一子网络101可以包括n 1/2个第一池化层和n 1/2个复合层,其中,n 1为正偶数。又例如,在一个示例中,第一子网络101可以包括2个第一池化层和2个复合层,且该2个第一池化层的下采样因子分别为1/x1和1/x2,则2个复合层的上采样因子分别为x1和x2。x1和x2为正整数。
需要说明的是,多个第一池化层的数量和多个复合层的数量也可以不相同,只要能使第一训练输入图像和经过第一卷积神经网络10处理后的训练输出图像的尺寸相同即可。
例如,多个第一池化层位于第一子网络101的低层级,多个复合层位于第一子网络101的高层级。也就是说,首先,第一子网络101通过第一池化层对输入的第一图像进行下采样,然后,通过复合层对第一图像进行上采样。
例如,第一卷积神经网络10包括多个第一卷积核和多个偏置,多个第一卷积核为第一卷积神经网络10中的所有第一卷积层所包括的第一卷积核和偏置,神经网络的参数可以包括多个第一卷积核和多个偏置。由此,损失函数30用于调整第一卷积神经网络10中的各第一卷积层的参数。需要说明的是,损失函数30可以调整第一卷积神经网络10中所有层的参数。
需要说明的是,第一子网络101、第二子网络102和第三子网络103的结构也可以不相同。例如,在第二子网络102中,可以省略一些第一池化层或复 合层等。
例如,如图5B所示,在一个示例中,第一卷积神经网络10包括第一子网络101'、第二子网络102'和第三子网络103'。第一子网络101'与图5A所示的第一子网络101的结构相同。第二子网络102'可以包括第一标准上采样层SU1和第一标准下采样层SD1,第三子网络103'可以包括第二标准上采样层SU2和第二标准下采样层SD2。第一标准下采样层SD1用于替代第二子网络102'的第二组第一卷积层中最初的第一卷积层,第一标准上采样层SU1用于替代第二子网络102'的第二组第一卷积层中最后的第一卷积层;第二标准下采样层SD2用于替代第三子网络103'的第三组第一卷积层中最初的第一卷积层,第二标准上采样层SU2用于替代第三子网络103'的第三组第一卷积层中最后的第一卷积层。
例如,第一标准下采样层SD1和第二标准下采样层SD2用于减小输入的第一训练输入图像的分辨率,以提高图像处理的速度。例如,第一标准下采样层SD1和第二标准下采样层SD2用于减小特征图像的各个维度的值,从而减少特征图像的数据量。第一标准上采样层SU1和第二标准上采样层SU2用于增加特征图像的各个维度的值,从而增加特征图像的数据量。
例如,第一标准下采样层SD1和第二标准下采样层SD2可以采用最大值合并(max pooling)、平均值合并(average pooling)、跨度卷积(strided convolution)等下采样方法。第一标准上采样层SU1和第二标准上采样层SU2可以采用跨度转置卷积(strided transposed convolution)等上采样方法。
例如,第一标准下采样层SD1还可以用于替代第二子网络102'中最初的第一池化层或复合层,第一标准上采样层SU1还可以用于替代第二子网络102'中最后的第一池化层或复合层。第二标准下采样层SD2还可以用于替代第三子网络103'中最初的第一池化层或复合层,第二标准上采样层SU2还可以用于替代第三子网络103'中最后的第一池化层或复合层。
例如,如图5B所示,在第二子网络102'中,第一标准下采样SD1层替代了最初的一个第一卷积层、一个第一池化层,第一标准上采样层SU1替代了最后的一个第一卷积层、一个复合层。由此,第二子网络102'的网络模型尺寸被减小。同理,第三子网络103'的网络模型尺寸也被减小。从而,第一卷积神经网络10的网络模型尺寸被减小。
例如,第二子网络102'和第三子网络103'的构造可以相同。也就是说,第 一标准下采样层SD1和第二标准下采样层SD2相同,第一标准上采样层SU1和第二标准上采样层SU2也相同。第二子网络102'和第三子网络103'的构造也可以不同。本公开的实施例对此不作限制。
例如,在卷积神经网络中,卷积核用于决定对输入图像进行怎样的处理,偏置用于决定该卷积核的输出是否输入到下一个层级。因此,在卷积神经网络的激活层中,偏置可形象地比喻为“开关”,用于决定“打开”或“关闭”卷积核。针对不同的输入图像,不同的卷积核可以被“打开”或“关闭”以实现多种效果。
例如,在本公开的实施例中,与卷积核相比,偏置需要具有比较大的绝对值,从而更有效地发挥“开关”的作用。L1损失函数则用于调整第一卷积层的多个第一卷积核和多个偏置之间的比值,以增强第一卷积神经网络10中的激活函数的作用。
例如,权重偏置比(L1)损失函数可以表示为如下公式(1):
Figure PCTCN2018100833-appb-000027
其中,L L1表示L1损失函数,W表示第一卷积神经网络10中的所有第一卷积核的绝对值的平均值,B表示第一卷积神经网络10中的所有偏置的绝对值的平均值,ε为一个极小正数,用于保证分母不为0。
例如,步骤S40可以包括:根据多个第一卷积核和多个偏置,通过权重偏置比损失函数计算神经网络的参数的权重偏置比损失值。
例如,L L1的值可以表示第一卷积神经网络10的参数的权重偏置比(L1)损失值,神经网络的损失值包括L1损失值。
例如,步骤S50可以包括:根据权重偏置比损失值,调整多个第一卷积核和多个偏置之间的比值。在对第一卷积神经网络10的参数进行修正的过程中,需要反复调整L1损失值,以使得W尽量小,而B尽量大。
例如,W可以表示为:
Figure PCTCN2018100833-appb-000028
其中,C w为第一卷积层具有的第一卷积核的数量,w表示第一卷积层的各卷积核的值。例如,卷积核为2×2的矩阵,w表示矩阵各元素之和。
例如,B可以表示为:
Figure PCTCN2018100833-appb-000029
其中,C b为第一卷积层具有的偏置的数量,b表示第一卷积层的各偏置的值。
例如,在本公开实施例中,第一卷积神经网络10中的激活函数可以采用ReLU函数。但不限于此,第一卷积神经网络10中的激活函数还可以采用sigmoid函数、tanh函数等。
例如,ReLU函数可以表示为如下公式(2):
Figure PCTCN2018100833-appb-000030
其中,out表示ReLU函数的输出,in 1表示ReLU函数的输入。在卷积神经网络中,in 1可以表示为如下公式(3):
in 1=w·in 0+b   (3)
例如,在公式(3)中,in 0表示输入到例如第一卷积层C11中的第一训练输入图像的像素矩阵,in 1表示经过第一卷积层C11对in 0进行处理后输出的特征图像的像素矩阵,w表示该第一卷积层C11中的卷积核的值,b表示该第一卷积层C11中的偏置的值。由上面的公式(2)和(3)可知,当b足够大,则激活函数更能有效发挥激活作用,即激活函数的输出可以更好地表示第一图像的特征信息。
例如,第一池化层可以为第一卷积神经网络10的下采样层(down-sampling layer),用于减小特征图像的各个维度的值,从而减少特征图像的数据量。复合层为第一卷积神经网络10的上采样层(up-sampling layer),用于增加特征图像的各个维度的值,从而增加特征图像的数据量。
例如,第一池化层可以采用各种下采样方法对特征图像进行下采样。下采样方法包括但不限于:最大值合并、平均值合并、随机合并、欠采样(decimation,例如选择固定的像素)、解复用输出(demuxout,将输入图像拆分为多个更小的图像)等。
例如,复合层可采用插值算法等实现上采样。插值算法例如可以包括内插值、两次立方插值算法(Bicubic Interprolation)等。
图6A为本公开一实施例提供的一种复合层的示意图,图6B为本公开一实施例提供的另一种复合层的示意图。
例如,在图6A所示的示例中,复合层采用像素差值法实现上采样。复合层采用2×2的上采样因子,从而可以将4个输入特征图像(即,图6A中的INPUT4n,INPUT 4n+1,INPUT 4n+2,INPUT 4n+3)结合以得到1个具有固定像素顺序的输出特征图像(即,图6A中的OUTPUT n)。
例如,对于二维的特征图像,第一子网络101中的复合层获取输入的第一数量的输入特征图像,将这些输入特征图像的像素值交织(interleave)重排以产生相同的第一数量的输出特征图像。相比于输入特征图像,输出特征图像的数量没有改变,但是每个输出特征图像的大小增加相应倍数。由此,该复合层通过不同的排列组合增加更多的数据信息,这些组合可给出所有可能的上采样组合。最后,可通过激活层从上采样组合进行选择。
例如,在图6B所示的示例中,复合层采用像素值交织重排方法实现上采样。复合层同样采用2×2的上采样因子,即以每4个输入特征图像(即,图6B中的INPUT 4n,INPUT 4n+1,INPUT 4n+2,INPUT 4n+3)为一组,将它们的像素值交织生成4个输出特征图像(即,图6B中的OUTPUT 4n,OUTPUT 4n+1,OUTPUT 4n+2,OUTPUT 4n+3)。输入特征图像的数量和经过复合层处理后得到的输出特征图像的数量相同,而各输出特征图像的大小增加为输入特征图像的4倍,即具有输入特征图像的4倍的像素数量。
例如,第一子网络101还包括多个实例归一化层(Instance Normalization Layer),第二子网络102还包括多个实例归一化层,第三子网络103还包括多个实例归一化层。例如,如图5A所示,第一子网络101包括实例归一化层N11、实例归一化层N12和实例归一化层N1n 1;第二子网络102包括实例归一化层N21、实例归一化层N22和实例归一化层N2n 1;第三子网络103包括实例归一化层N31、实例归一化层N32和实例归一化层N3n 1。即第一子网络101可以包括n 1个实例归一化层,第二子网络102也包括n 1个实例归一化层,第三子网络103也包括n 1个实例归一化层。
例如,如图5A所示,第一子网络101可以包括n 1个实例归一化层,即实例归一化层和第一卷积层一一对应。但不限于此,也可以多个第一卷积层(例如,两个或三个第一卷积层等)对应一个实例归一化层,从而实例归一化层的数量少于第一卷积层。本公开实施例对此不作具体限制。
例如,如图5B所示,在第二子网络102'中,第一标准下采样SD1层还可以替代最初的一个实例归一化层,第一标准上采样层SU1也可以替代最后的一 个实例归一化层。同理,在第三子网络103'中,第二标准下采样SD2和第二标准上采样层SU2也可以替代实例归一化层。
例如,实例归一化层用于将第一卷积层输出的特征图像进行标准化处理,以使特征图像的像素的灰度值在预定范围内变化,从而简化生成,改善风格迁移的质量。例如,预定范围可以为[-1,1]。实例归一化层根据每个特征图像自身的均值和方差,对该特征图像进行标准化处理。实例归一化层可用于对单幅图像进行标准化处理。
例如,假设小批梯度下降法(mini-batch gradient decent)的尺寸为T,第一卷积层(例如,图5A所示的第一卷积层C11或第一卷积层C12)输出的特征图像的数量为C,且每个特征图像均为H行W列的矩阵,则特征图像的模型表示为(T,C,W,H)。从而,实例归一化层的标准化公式可以表示如下:
Figure PCTCN2018100833-appb-000031
其中,x tijk为该第一卷积层输出的特征图像集合中的第t个特征块(patch)、第i个特征图像、第j列、第k行的值。y tijk表示经过实例归一化层处理x tijk后得到的结果。ε为一个很小的整数,以避免分母为0。
需要说明的是,本公开实施例对第一卷积神经网络10中各层的数量不作限制。
例如,如图4B所示,分析网络可以包括第二卷积神经网络20。第二卷积神经网络20用于接收第一训练输入图像、第二训练输入图像和训练输出图像,且分别产生并输出第一训练输入图像的第一训练输入特征、训练输出图像的第一训练输出特征和第二训练输出特征以及第二训练输入图像的第二训练输入特征。
例如,第二训练输入图像为风格图像。第二训练输入图像例如可以为各种艺术大师(例如莫奈、梵高、毕加索等)的名画等,但不限于此,例如第二训练输入图像还可以为水墨画、素描画等。
例如,训练输出图像为第一训练输入图像经过第一卷积神经网络10进行风格转移后形成的图像。训练输出图像包括第一训练输入图像的内容特征和第二训练输入图像的风格特征。
例如,第一训练输入图像、第二训练输入图像和训练输出图像的尺寸均相同。
例如,第一训练输入特征和第一训练输出特征均为内容(content)特征,第二训练输入特征和第二训练输出特征均为风格(style)特征。例如,内容特征表示图像中物体在整幅图像的分布,风格特征则表示在卷积神经网络的不同层中不同特征图像之间的关系。例如,内容特征包括图像的内容信息,风格特征可以包括图像的纹理信息、颜色信息等。纹理信息例如表示特征图像之间的相关性,其与位置无关。卷积神经网络中的特征图像可以是一维矩阵,格拉姆矩阵(Gram matrix)可以用于衡量该一维矩阵中各向量的相关程度,因此,卷积神经网络可以引入Gram矩阵计算图像的风格特征。例如,Gram矩阵可以表示如下:
Figure PCTCN2018100833-appb-000032
其中,
Figure PCTCN2018100833-appb-000033
为第l层中向量特征图像i和j之间的内积(inner product)。根据多层特征图像之间的相关性,可以获得第二图像或第三图像静态的多尺度(scale)表达,由此提取了第二图像或第三图像的纹理信息而非全局布局,进而获得风格特征。
图7为本公开一实施例提供的一种第二卷积神经网络的结构示意图。例如,如图7所示,第二卷积神经网络20包括依次连接的多个第二卷积层(例如,第二卷积层C41、第二卷积层C42、第二卷积层C43和第二卷积层C4n 2)和间插于相邻第二卷积层之间的多个第二池化层(例如,第二池化层P41、第二池化层P42和第二池化层P43)。每个第二卷积层用于提取并输出第一训练输入特征、第一训练输出特征、第二训练输出特征和/或第二训练输入特征。如图7所示,第二卷积神经网络20包括n 2个第二卷积层和n 2个第二池化层,n 2为正整数。
例如,每个第二卷积层包括多个第二卷积核。第二卷积核可以用于提取输入图像的内容特征和/或风格卷积特征。例如,图7所示的输入图像可以为第一训练输入图像、第二训练输入图像和训练输出图像。
例如,第二卷积神经网络20可以采用已经训练好的卷积神经网络模型。从而,在本公开实施例中,不需对第二卷积神经网络20的参数(例如,第二卷积核等)进行训练并修正。例如,第二卷积神经网络20可以采用AlexNet、GoogleNet、VGG、Deep Residual Learning等神经网络模型实现提取输入图像的内容特征和风格特征。VGG网络为深度卷积神经网络的一种,其是由牛津大学视觉几何组(Visual Geometry Group)开发,已经在视觉识别领域得到广 泛应用。例如,VGG网络可以包括19层,并且可以对其中的一些层进行归一化处理。
例如,第二卷积神经网络20可以采用可对图像进行分类的深度神经网络。如图7所示,输入图像经过若干个第二卷积层和第二池化层处理,以提取特征。每个第二卷积层的输出都是输入图像的特征图像。第二池化层可以降低特征图像的分辨率并传递给下一层级的第二卷积层。多个第二卷积层可以输出多个特征图像,该多个特征图像可以表征输入图像的不同级别的特征(例如,纹理、边缘、物体等)。经过若干个第二卷积层和第二池化层处理之后,特征图像被输入至平坦化层,平坦化层将特征图像转换成向量然后传递给全连接层以及分类器。分类器层可以包括softmax分类器,softmax分类器可以输出输入图像属于每一个类别标识的概率,其中概率最大的标识将作为第二卷积神经网络20最终的输出。由此,第二卷积神经网络20实现图像分类。
例如,在第二卷积神经网络20中,第l个第二卷积层具有N l个第二卷积核,第l个第二卷积层用于生成并输出第一训练输入图像的N l个第一训练特征图像、训练输出图像的N l个第二训练特征图像和N l个第三训练特征图像以及第二训练输入图像的N l个第四训练特征图像,且N l个第二卷积核分别与N l个第一训练特征图像、N l个第二训练特征图像、N l个第三训练特征图像以及N l个第四训练特征图像一一对应。也就是说,一个第二卷积核用于生成并输出一个第一训练特征图像、一个第二训练特征图像、一个第三训练特征图像或一个第四训练特征图像。若N l个第二卷积核各不相同,则N l个第一训练特征图像各不相同,N l个第二训练特征图像各不相同,N l个第三训练特征图像各不相同,N l个第四训练特征图像也各不相同。
例如,l为正整数。l表示第二卷积神经网络20中的第二卷积层的标号。例如,如图7所示,第二卷积神经网络20中具有n 2个第二卷积层,则l的取值范围为[1,n 2]。在如图7所示的示例中,在提取内容特征时,l为2;在提取风格特征时,l可以为1、2、3和n 2。但不限于此,根据实际应用需求,l还可以为其他值。
例如,N l个第一训练特征图像、N l个第二训练特征图像、N l个第三训练特征图像和N l个第四训练特征图像的尺寸均相同。
例如,第一训练特征图像和第三训练特征图像为内容特征图像,第二训练特征图像和第四训练特征图像为风格特征图像。也就是说,第二卷积神经网络 20中某一些第二卷积层可以用于提取第一训练输入图像的内容特征以得到第一训练特征图像,第二卷积神经网络20中另一些第二卷积层用于提取训练输出图像的风格特征和内容特征以分别得到第二训练特征图像和第三训练特征图像,第二卷积神经网络20中又一些第二卷积层还用于提取第二训练输入图像的风格特征以得到第四训练特征图像。例如,提取第一训练输入图像的内容特征和训练输出图像的内容特征的第二卷积层可以相同,也可以不同;提取训练输出图像的风格特征和第二训练输入图像的风格特征的第二卷积层可以相同,也可以不同。又例如,提取内容特征和风格特征的第二卷积层可以相同,也可以不同。
例如,相应地,损失函数30还可以包括内容损失函数和风格损失函数。内容损失函数用于描述第一训练输入图像和训练输出图像的内容的差异,风格损失函数用于描述第二训练输入图像和训练输出图像的风格的差异。
例如,内容损失函数用于根据第一训练输入图像的第一训练输入特征和训练输出图像的第一训练输出特征计算第一卷积神经网络10的参数的内容损失值。风格损失函数用于根据训练输出图像的第二训练输出特征和第二训练输入图像的第二训练输入卷积特征计算第一卷积神经网络10的参数的风格损失值。
例如,在一些示例中,步骤S40还可以包括:通过分析网络提取第一训练输入图像的第一训练输入特征和提取训练输出图像的第一训练输出特征;根据第一训练输入特征和第一训练输出特征通过内容损失函数计算神经网络的参数的内容损失值。例如,神经网络的损失值还包括内容损失值。
例如,步骤S50还可以包括:根据内容损失值,调整多个第一卷积核的值和多个偏置的值。
例如,在一些示例中,步骤S40还可以包括:通过分析网络提取第二训练输入图像的第二训练输入特征和提取训练输出图像的第二训练输出特征;根据第二训练输出特征和第二训练输入特征通过风格损失函数计算神经网络的参数的风格损失值。例如,神经网络的损失值包括风格损失值。
例如,步骤S50还可以包括:根据风格损失值,调整多个第一卷积核的值和多个偏置的值。
例如,第l个第二卷积层的内容损失函数表示为公式(4):
Figure PCTCN2018100833-appb-000034
其中,C l表示内容损失函数,
Figure PCTCN2018100833-appb-000035
表示在第l个第二卷积层中第i个第二卷积核对应的第一训练特征图像中第j个位置的值,
Figure PCTCN2018100833-appb-000036
表示在第l个第二卷积层中第i个第二卷积核对应的第三训练特征图像中第j个位置的值,S 1为常数。
例如,如图7所示,若通过Q1个第二卷积层提取输入图像(例如,此处,输入图像包括第一训练输入图像和训练输出图像)的内容特征,则总内容损失函数表示为公式(5):
Figure PCTCN2018100833-appb-000037
其中,L content表示总内容损失函数,Q1为正整数,且表示提取并输出第一训练输入特征和第一训练输出特征的第二卷积层的数量,w 1l表示C l的权重。
例如,第l个第二卷积层的风格损失函数表示为公式(6):
Figure PCTCN2018100833-appb-000038
其中,E l表示风格损失函数,M l表示第四训练特征图像的尺寸,
Figure PCTCN2018100833-appb-000039
表示在第l个第二卷积层中第i个第二卷积核对应的第二训练特征图像的格拉姆矩阵中第j个位置的值,
Figure PCTCN2018100833-appb-000040
表示在第l个第二卷积层中第i个第二卷积核对应的第四训练特征图像的格拉姆矩阵中第j个位置的值,S 2为常数。
需要说明的是,第二训练特征图像的尺寸和第四训练特征图像的尺寸相同,因此,M l也表示第二训练特征图像的尺寸。
例如,如图7所示,若通过Q2个第二卷积层提取输入图像(例如,此处,输入图像包括第二训练输入图像和训练输出图像)的风格特征,则总风格损失函数表示为公式(7):
Figure PCTCN2018100833-appb-000041
其中,L style表示总风格损失函数,Q2为正整数,且表示提取并输出第二训练输入特征和第二训练输出特征的第二卷积层的数量,w 2l表示E l的权重。
例如,Q1和Q2可以相同,也可以不同。
例如,风格特征可以通过多个第二卷积层(例如,两个或三个第二卷积层等)提取,而内容特征可以通过一个第二卷积层提取。但不限于此,风格特征特也可以通过一个第二卷积层提取。内容特征也可以通过多个第二卷积层提取。本公开的实施例对此不作具体限制。
例如,根据公式(1)、公式(5)和公式(7),该神经网络的总损失函数L total 可以表示如下:
L total=α·L content+β·L style+χ·L L1
其中,α、β和χ分别为总损失函数中内容损失函数、风格损失函数和L1损失函数的权重。
例如,第一卷积神经网络10的参数的损失值包括L1损失值、内容损失值和风格损失值。也就是说,L total的值即表示第一卷积神经网络10的参数的损失值。
例如,如图4B所示,神经网络可以包括第一转换矩阵50和第二转换矩阵51。第一训练输入图像具有第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道。步骤S20可以包括:通过第一转换矩阵将第一训练输入图像转换为第一训练中间图像;将第一训练中间图像输入至神经网络。
例如,通过第一转换矩阵将第一训练输入图像转换为第一训练中间图像包括:通过第一转换矩阵将第一训练输入图像的第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道的数据信息转换为第一训练中间图像的第一训练亮度信道、第一训练色差信道和第二训练色差信道的数据信息。
例如,在一个示例中,如图5A所示,步骤S30可以包括:利用第一子网络101、第二子网络102和第三子网络103分别对第一训练中间图像的第一训练亮度信道的数据信息、第一训练色差信道的数据信息和第二训练色差信道的数据信息进行风格迁移处理,以生成第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第三训练色差信道的数据信息;将第二训练中间图像转换为训练输出图像。
例如,在一个示例中,如图5B所示,在第二子网络102'中,第一训练输入图像首先经过第一标准下采样层SD1进行下采样处理,以缩小第一训练中间图像的第一训练色差通道的数据信息量;然后,第一训练色差通道的数据信息经过多层第一卷积层处理;接着,第一训练色差通道的数据信息第一标准上采样层SU1进行上采样处理,以增加第一训练色差通道的数据信息量;最后第一训练色差通道的数据信息被传输到第二转换矩阵51。同理,第三子网络103'用于对第一训练中间图像的第二训练色差通道的数据信息进行处理。
例如,将第二训练中间图像转换为训练输出图像包括:利用第二转换矩阵51接收并转换经过第一卷积神经网络10处理后的第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第四训练色差信道的 数据信息,以得到训练输出图像的第一训练输出颜色通道的数据信息、第二训练输出颜色通道的数据信息和第三训练输出颜色通道的数据信息。
例如,第一训练输入图像为RGB格式的图像,第一训练中间图像为YUV格式的图像。第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道分别为红色(R)通道、绿色(G)通道和蓝色(B)通道。第一训练亮度信道、第一训练色差信道和第二训练色差信道分别为Y通道、U通道和V通道。在YUV颜色空间中,Y通道和U通道、V通道是分离的;Y代表亮度,U、V代表色差,U和V是构成彩色的两个分量。
例如,训练输出图像为RGB格式的图像,第二训练中间图像为YUV格式的图像。第一训练输出颜色通道、第二训练输出颜色通道和第三训练输出颜色通道分别为红色(R)通道、绿色(G)通道和蓝色(B)通道。第二训练亮度信道、第三训练色差信道和第四训练色差信道分别为Y通道、U通道和V通道。
图8为本公开一实施例提供的一种基于神经网络实现图像风格迁移的图像处理方法的示意性流程图。神经网络为根据上述任一实施例提供的训练方法训练得到的神经网络。
例如,如图8所示,本公开实施例提供的图像处理方法可以包括以下步骤:
步骤S100:获取第一图像;
步骤S101:将第一图像输入至神经网络;
步骤S102:利用神经网络对第一图像进行风格转移处理,以生成第二图像。
本公开实施例提供的图像处理方法可以通过神经网络对第一图像进行风格迁移处理,不但可以实现较佳的风格迁移效果,而且能够提高处理速度,具有更好、更广泛的应用前景。
例如,在步骤S100中,第一图像可以为各种类型的图像。例如,可以为人物图像、动植物图像或风景图像等。
例如,第一图像可以通过图像采集设备获取。图像采集设备例如可以是智能手机的摄像头、平板电脑的摄像头、个人计算机的摄像头、数码照相机的镜头、或者甚至可以是网络摄像头。
例如,第二图像为第一图像经过第一卷积神经网络进行风格转移后形成的图像。第二图像包括第一图像的内容特征和风格图像的风格特征。当神经网络训练好之后,则风格特征即确定且不变。例如,在训练神经网络的过程中,采 用毕加索的一幅画(例如,《梦》)作为风格图像进行训练,则当利用该训练好的神经网络对第一图像进行处理之后的第二图像的风格即为该毕加索的画(《梦》)的风格。需要说明的是,风格图像可以为神经网络的训练方法的实施例中的第二训练输入图像。
图9A为一种第一图像的示例图,图9B为一种风格图像的示意图,图9C为根据本公开一实施例提供的一种图像处理方法处理得到的第二图像的示意图。例如,如图9A所示,第一图像可以为用户拍摄的照片。风格图像可以为一幅浮世绘版画,例如,图9B所示的图为神奈川冲浪里。图9C所示的图像为经过本公开实施例提供的图像处理方法处理后得到的第二图像,其具有第一图像的内容特征和风格图像的风格特征。
例如,第一图像与第二图像可以具有相同的分辨率,也可以具有不同的分辨率。例如,第一图像和第二图像的尺寸均相同。
例如,神经网络还包括第一转换矩阵50,第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道。步骤S101可以包括:通过第一转换矩阵将第一图像转换为第一中间图像;将第一中间图像输入至神经网络。
例如,第一图像为RGB格式的图像,第一中间图像为YUV格式的图像。第一输入颜色通道、第二输入颜色通道和第三输入颜色通道分别为红色(R)通道、绿色(G)通道和蓝色(B)通道。第一亮度信道、第一色差信道和第二色差信道分别为Y通道、U通道和V通道。在YUV颜色空间中,Y通道和U通道、V通道是分离的。Y代表亮度,U、V代表色差,U和V是构成彩色的两个分量。
例如,通过第一转换矩阵将第一图像转换为第一中间图像可以包括:通过第一转换矩阵将第一图像的第一输入颜色通道、第二输入颜色通道和第三输入颜色通道的数据信息转换为第一中间图像的第一亮度信道、第一色差信道和第二色差信道的数据信息。
例如,第一转换矩阵50的转换公式可以表示为:
Y1=0.30R1+0.59G1+0.11B1
U1=0.493·(0.70R1-0.59G1-0.11B1)
V1=0.877·(-0.30R1-0.59G1-0.11B1)
其中,Y1、U1和V1分别表示第一中间图像的亮度信息、第一色度信息和第二色度信息,即Y1、U1和V1分别表示第一中间图像的Y通道、U通道 和V通道的数据;R1、G1和B1分别表示第一图像的红色信息、绿色信息和蓝色信息,即R1、G1和B1分别表示第一图像的R通道、G通道和B通道的数据。
例如,神经网络包括第一卷积神经网络。第一卷积神经网络可以包括第一子网络、第二子网络和第三子网络。第一子网络用于对Y通道的数据信息进行处理,第二子网络用于对U通道的数据信息进行处理,第三子网络用于对V通道的数据信息进行处理。也就是说,本公开实施例提供的图像处理方法可以对第一中间图像的不同通道分别单独处理,从而减小生成神经网络的模型,进一步提高处理速度,增加图像处理的灵活性。
例如,第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层。第一子网络101还包括多个第一池化层、多个复合层和多个实例归一化层,第二子网络102还包括多个第一池化层、多个复合层和多个实例归一化层,第三子网络103还包括多个第一池化层、多个复合层和多个实例归一化层。第二子网络或第三子网络可以省略一些复合层或实例归一化层等。
需要说明的是,关于第一卷积神经网络的具体结构的详细说明可以参考神经网络的训练方法的实施例中关于第一卷积神经网络的描述,重复之处在此不再赘述。
例如,YUV格式可以包括YUV444、YUV420以及YUV422等格式。YUV444、YUV420以及YUV422等格式的主要区别在于U通道和V通道的数据的采样方式和存储方式。
假设,若一幅图像中的4个像素点分别表示为:
[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]
在图像处理过程中,存放或处理该4个像素点的数据流为:
Y0U0V0Y1U1V1Y2U2V2Y3U3V3。
映射出的像素点分别表示为:
[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]
即映射出的像素点为原始的像素点。
例如,YUV420格式表示每一行像素中,只有一种色度信息(第一色度信息U或第二色度信息V),且第一色度信息U或第二色度信息V以1/2的频率抽样存储。在图像处理过程中,相邻的行处理不同的色度信息。
假设一幅图像中的两行8个像素点分别表示为:
[Y0U0V0] [Y1U1V1] [Y2U2V2] [Y3U3V3]
[Y4U4V4] [Y5U5V5] [Y6U6V6] [Y7U7V7]
在图像处理过程中,存放或处理该8个像素点的数据流为:
Y0U0 Y1 Y2U2 Y3
Y4V4 Y5 Y6V6 Y7
在第一行像素中,只有第一色度信息U;在第二行像素中,只有第二色度信息V。
映射出的像素点表示为:
[Y0 U0 V4] [Y1 U0 V4] [Y2 U2 V6] [Y3 U2 V6]
[Y4 U0 V4] [Y5 U0 V4] [Y6U2 V7] [Y7 U2 V6]
综上,每一行中相邻的4个像素点在存放或处理时仅占用6个字节,相比YUV444(4个像素点需要12个字节)的采样格式,YUV420格式减小了处理和存储的像素点的数据量。尽管映射出的像素点与原始像素点略有不同,但这些不同在人眼的感觉中不会引起明显的变化。
图10A为本公开一实施例提供的一种神经网络的结构示意图;图10B为本公开一实施例提供的另一种神经网络的结构示意图。
例如,在第一示例中,第一中间图像采用YUV 444的图像格式。第一子网络、第二子网络和第三子网络的构造可以相同,也可以不相同。
例如,如图10A所示,在第一示例中,第一子网络101、第二子网络102和第三子网络103的构造相同。下面以第一子网络101为例进行说明。例如,第一子网络101包括五个第一卷积层(第一卷积层C11、第一卷积层C12、第一卷积层C13、第一卷积层C14和第一卷积层C15)、两个第一池化层(第一池化层P11和第一池化层P12)、两个复合层(复合层M11和复合层M12)和四个实例归一化层(实例归一化层N11、实例归一化层N12、实例归一化层N13和实例归一化层N14)。
例如,在第一示例中,如图10A所示,步骤S102可以包括:利用第一子网络101、第二子网络102和第三子网络103分别对第一中间图像的第一亮度信道、第一色差信道和第二色差信道进行风格迁移处理,,以生成第二中间图像,第二中间图像包括第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息;以及将第二中间图像转换为第二图像。
例如,在第二示例中,第一中间图像采用YUV 420的图像格式。在通过第一转换矩阵将第一图像转换为第一中间图像的步骤中,可以将第一图像在YUV颜色空间上进行处理,以使得第一中间图像采用YUV420的图像格式,从而减小U通道和V通道的尺寸,进而减小生成神经网络中卷积核的数量。
例如,在第二示例中,第二子网络包括第一标准上采样层和第一标准下采样层,第一标准下采样层用于替代第一卷积神经网络的第二子网络的第二组第一卷积层中最初的第一卷积层、第一池化层和实例归一化层,第一标准上采样层用于替代第一卷积神经网络的第二子网络的第二组第一卷积层中最后的第一卷积层、复合层和实例归一化层;第三子网络包括第二标准上采样层和第二标准下采样层,第二标准下采样层用于替代第一卷积神经网络的第三子网络的第三组第一卷积层中最初的第一卷积层、第一池化层和实例归一化层,第二标准上采样层用于替代第一卷积神经网络的第三子网络的第三组第一卷积层中最后的第一卷积层、复合层和实例归一化层。
例如,如图10B所示,在第二示例中,第一子网络101'可以与第一示例中的第一子网络101的构造相同。
例如,如图10B所示,第二子网络102'和第三子网络103'的构造相同。下面以第二子网络102'为例进行说明。例如,第二子网络102'包括一个第一标准下采样层SD1、一个第一标准上采样层SU1、三个第一卷积层(第一卷积层C22、第一卷积层C23和第一卷积层C24)、一个第一池化层(第一池化层P22)、一个复合层(复合层M21)以及两个实例归一化层(实例归一化层N22和实例归一化层N23)。
例如,与第一示例相比,在第二示例中,第一标准下采样层SD1替代了最初的一个第一卷积层、一个第一池化层和一个实例归一化层,第一标准上采样层SU1替代了最后的第一卷积层、第一池化层和实例归一化层。由此,神经网络的网络模型尺寸被减小。
例如,如图10A和10B所示,在第二子网络102'中,第一标准下采样层SD1替代了最初的第一卷积层C21、一个第一池化层P21和一个实例归一化层N21;第一标准上采样层SU1替代了最后的第一卷积层C25、复合层M22和实例归一化层N24。
例如,第二子网络102'中省略了处理U通道最高分辨率的第一卷积层,第三子网络103'中省略了处理V通道最高分辨率的第一卷积层。从而,该图像处 理方法可以进一步提高图像处理速度。
例如,第一标准下采样层SD1和第一标准上采样层SU1分别用于对U通道的数据信息进行下采样和上采样。第二标准下采样层SD2和第二标准上采样层SU2分别用于对V通道的数据信息进行下采样和上采样。
例如,第一标准下采样层SD1和第二标准下采样层SD2的结构和采样因子可以相同,也可以不同。第一标准上采样层SU1和第二标准上采样层SU2的结构和采样因子可以相同,也可以不同。对此不作具体限制。
例如,若第一中间图像采用YUV 420的图像格式,第一标准下采样层SD1和第二标准下采样层SD2的结构和下采样因子相同,第一标准上采样层SU1和第二标准上采样层SU2的结构和上采样因子也相同。从而,第二子网络102'和第三子网络103'的构造相同。
例如,在第二示例中,如图10B所示,步骤S102包括:分别使用第一子网络101'、第二子网络102'和第三子网络103'处理第一中间图像的第一亮度信道、第一色差信道和第二色差信道,以生成第二中间图像,第二中间图像包括第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息;以及将第二中间图像转换为第二图像。
例如,第二图像为RGB格式的图像,第二中间图像为YUV格式的图像。类似地,第一输出颜色通道、第二输出颜色通道和第三输出颜色通道分别为红色(R)通道、绿色(G)通道和蓝色(B)通道。第二亮度信道、第三色差信道和第四色差信道分别为Y通道、U通道和V通道。
例如,如图10A和10B所示,神经网络还可以包括第二转换矩阵51。将第二中间图像转换为第二图像包括:利用第二转换矩阵将第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息转换为第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。在将第二中间图像转换为第二图像的操作中,第二转换矩阵51的转换公式可以表示如下;
Figure PCTCN2018100833-appb-000042
其中,Y2、U2和V2分别表示第二中间图像的亮度信息(即第二亮度信道的数据信息)、第一色度信息(即第三色差信道的数据信息)和第二色度信 息(即第四色差信道的数据信息转换);R2、G2和B2分别表示第二图像的红色信息(即第一输出颜色通道的数据信息)、绿色信息(即第二输出颜色通道的数据信息)和蓝色信息(即第三输出颜色通道的数据信息)。
例如,第二中间图像为第一中间图像通过神经网络处理之后得到的图像。若神经网络包括实例归一化层,则第二中间图像的像素的灰度值的范围为[-1,1],在进行将第二中间图像转换为第二图像的操作时还包括:将第二中间图像的Y通道、U通道和V通道的数据信息转换为第二图像的R通道、G通道和B通道的数据信息;以及将第二图像的像素的灰度值转换到[0,255]范围内。
例如,如图10A和10B所示,神经网络可以不包括平坦化层、全连接层以及分类器。
需要说明的是,关于通过神经网络对第一图像进行风格转移处理的具体过程可以参考上述训练方法的实施例中通过神经网络对第一训练输入图像进行处理的相关描述,重复之处在此不再赘述。
图11为本公开一实施例提供的一种图像处理装置的示例性框图。例如,如图11所示,本公开实施例提供的图像处理装置包括图像获取模块78和图像处理模块80。图像获取模块78用于获取第一图像,图像处理模块80用于对第一图像进行风格迁移处理,以生成第二图像。
例如,图像处理模块80可以包括根据上述任一实施例所述的训练方法训练得到的所述神经网络。
本公开实施例提供的图像处理装置通过神经网络对第一图像进行风格转移处理,提高图像风格迁移和图像融合效果,在处理效果和处理速度等方面得以兼顾,具有更好、更广泛的应用前景。
例如,图像获取模块78可以包括存储器,存储器存储有第一图像。或者,图像获取模块78也可以包括一个或多个摄像头,以获取第一图像。例如,图像获取模块705可以为硬件、软件、固件以及它们的任意可行的组合。
例如,如图11所示,图像处理装置还包括第一转换模块82。第一转换模块82包括上述图像处理方法的实施例中的神经网络中的第一转换矩阵50。第一转换矩阵50用于将第一图像转换为第一中间图像。
例如,第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道,第一中间图像具有第一亮度信道、第一色差信道和第二色差信道。第一转换矩阵50可以用于将第一图像的第一输入颜色通道、第二输入颜色通道 和第三输入颜色通道的数据信息转换为第一中间图像的第一亮度信道、第一色差信道和第二色差信道的数据信息。
例如,神经网络可以包括第一卷积神经网络,第一卷积神经网络可以包括第一子网络、第二子网络和第三子网络。第一子网络、第二子网络和第三子网络分别用于处理第一中间图像的第一亮度信道、第一色差信道和第二色差信道,以生成第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息。
例如,第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层。第二子网络包括第一标准上采样层和第一标准下采样层,第三子网络包括第二标准上采样层和第二标准下采样层。第一标准下采样层用于替代第二子网络的第二组第一卷积层中最初的第一卷积层,第一标准上采样层用于替代第二子网络的第二组第一卷积层中最后的第一卷积层;第二标准下采样层用于替代第三子网络的第三组第一卷积层中最初的第一卷积层,第二标准上采样层用于替代第三子网络的第三组第一卷积层中最后的第一卷积层。
例如,如图11所示,图像处理装置还包括第二转换模块84。第二转换模块84包括上述神经网络中的第二转换矩阵51。第二转换矩阵51可以用于将第二中间图像转换为第二图像。具体地,第二转换模块84用于将第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息转换为第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。
例如,如图10A和图10B所示,第一转换矩阵50用于接收第一图像,并将第一图像转换为第一中间图像。第一转换矩阵50输出的第一中间图像被输入图像处理模块80。图像处理模块80用于对第一中间图像进行风格迁移处理,以生成第二中间图像。第二转换矩阵51用于接收图像处理模块80输出的第二中间图像,并将第二中间图像转换为第二图像然后输出。该第二图像即作为图像处理装置的最终输出。该第二图像具有第一图像的内容特征和另一图像(例如,艺术大师的油画等)的风格特征。
需要说明的是,关于第一图像、第一中间图像、第二中间图像、第二图像、神经网络、第一转换矩阵50和第二转换矩阵51的转换公式等的详细说明可以参考图像处理方法的实施例中的相关描述,重复之处不再赘述。
图12为本公开一实施例提供的另一种图像处理装置的示意性框图。本公开至少一实施例还提供一种图像处理装置,如图12所示,该图像处理装置包括处理器70和存储器75。应当注意,图12所示的图像处理装置的组件只是示例性的,而非限制性的,根据实际应用需要,该图像处理装置还可以具有其他组件。
例如,处理器70和存储器75之间可以直接或间接地互相通信。
例如,处理器70和存储器75等组件之间可以通过网络连接进行通信。网络可以包括无线网络、有线网络、和/或无线网络和有线网络的任意组合。网络可以包括局域网、互联网、电信网、基于互联网和/或电信网的物联网(Internet of Things)、和/或以上网络的任意组合等。有线网络例如可以采用双绞线、同轴电缆或光纤传输等方式进行通信,无线网络例如可以采用3G/4G/5G移动通信网络、蓝牙、Zigbee或者WiFi等通信方式。本公开对网络的类型和功能在此不作限制。
例如,处理器70可以控制图像处理装置中的其它组件以执行期望的功能。处理器70可以是中央处理单元(CPU)、张量处理器(TPU)或者图形处理器GPU等具有数据处理能力和/或程序执行能力的器件。中央处理器(CPU)可以为X86或ARM架构等。GPU可以单独地直接集成到主板上,或者内置于主板的北桥芯片中。GPU也可以内置于中央处理器(CPU)上。
例如,存储器75可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、闪存等。
例如,在存储器75上可以存储一个或多个计算机指令,处理器70可以运行所述计算机指令,以实现各种功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如风格图像、以及应用程序使用和/或产生的各种数据等。
例如,存储器75存储的一些计算机指令被处理器70执行时可以执行根据上文所述的图像处理方法中的一个或多个步骤。又例如,存储器75存储的另一些计算机指令被处理器70执行时可以执行根据上文所述的神经网络的训练 方法中的一个或多个步骤。
例如,关于图像处理方法的处理过程的详细说明可以参考上述图像处理方法的实施例中的相关描述,关于神经网络的训练方法的处理过程的详细说明可以参考上述神经网络的训练方法的实施例中的相关描述,重复之处不再赘述。
本公开至少一实施例还提供一种存储介质。例如,在存储介质上可以存储一个或多个计算机指令。存储介质上存储的一些计算机指令可以是例如用于实现上述图像处理方法中的一个或多个步骤的指令。存储介质上存储的另一些计算机指令可以是例如用于实现上述神经网络的训练方法中的一个或多个步骤的指令。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。

Claims (22)

  1. 一种用于实现图像风格迁移的神经网络的训练方法,包括:
    获取第一训练输入图像和第二训练输入图像;
    将所述第一训练输入图像输入至所述神经网络;
    利用所述神经网络对所述第一训练输入图像进行风格转移处理,以得到训练输出图像;
    基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值;以及
    根据所述损失值对所述神经网络的参数进行修正,在所述损失函数满足预定条件时,得到训练好的所述神经网络,在所述损失函数不满足预定条件时,继续输入所述第一训练输入图像和所述第二训练输入图像以重复执行上述训练过程,
    其中,所述损失函数包括权重偏置比损失函数。
  2. 根据权利要求1所述的训练方法,其中,所述神经网络包括第一卷积神经网络,所述第一卷积神经网络包括多个第一卷积核和多个偏置,所述神经网络的参数包括所述多个第一卷积核和所述多个偏置,
    所述权重偏置比损失函数表示为:
    Figure PCTCN2018100833-appb-100001
    其中,L L1表示所述权重偏置比损失函数,W为所述多个第一卷积核的绝对值的平均值,B为所述多个偏置的绝对值的平均值,ε为正数。
  3. 根据权利要求2所述的训练方法,其中,通过所述损失函数计算所述神经网络的参数的损失值,包括:
    根据所述多个第一卷积核和所述多个偏置,通过所述权重偏置比损失函数计算所述神经网络的参数的权重偏置比损失值,
    所述损失值包括所述权重偏置比损失值。
  4. 根据权利要求3所述的训练方法,其中,
    根据所述损失值对所述神经网络的参数进行修正包括:
    根据所述权重偏置比损失值,调整所述多个第一卷积核和多个偏置之间的比值。
  5. 根据权利要求2-4任一项所述的训练方法,其中,所述神经网络还包 括第一转换矩阵,所述第一训练输入图像具有第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道,
    将所述第一训练输入图像输入至所述神经网络,包括:
    通过所述第一转换矩阵将所述第一训练输入图像转换为第一训练中间图像;
    将所述第一训练中间图像输入至所述神经网络;
    其中,通过所述第一转换矩阵将所述第一训练输入图像转换为第一训练中间图像包括:
    通过所述第一转换矩阵将所述第一训练输入图像的第一训练输入颜色通道、第二训练输入颜色通道和第三训练输入颜色通道的数据信息转换为所述第一训练中间图像的第一训练亮度信道、第一训练色差信道和第二训练色差信道的数据信息。
  6. 根据权利要求5所述的训练方法,其中,所述第一卷积神经网络包括第一子网络、第二子网络和第三子网络,
    利用所述神经网络对所述第一训练输入图像进行风格转移处理,以得到训练输出图像,包括:
    利用所述第一子网络、所述第二子网络和所述第三子网络分别对所述第一训练中间图像的第一训练亮度信道的数据信息、第一训练色差信道的数据信息和第二训练色差信道的数据信息进行风格迁移处理,以生成第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第四训练色差信道的数据信息;
    将所述第二训练中间图像转换为所述训练输出图像,
    其中,所述训练输出图像为RGB格式的图像,所述第二训练中间图像为YUV格式的图像。
  7. 根据权利要求6所述的训练方法,其中,所述神经网络还包括第二转换矩阵,
    将所述第二训练中间图像转换为所述训练输出图像包括:
    利用所述第二转换矩阵将所述第二训练中间图像的第二训练亮度信道的数据信息、第三训练色差信道的数据信息和第四训练色差信道的数据信息转换为所述训练输出图像的第一训练输出颜色通道的数据信息、第二训练输出颜色通道的数据信息和第三训练输出颜色通道的数据信息。
  8. 根据权利要求6或7所述的训练方法,其中,所述第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层,
    所述第二子网络包括第一标准上采样层和第一标准下采样层,所述第三子网络包括第二标准上采样层和第二标准下采样层,
    所述第一标准下采样层用于替代所述第二子网络的第二组第一卷积层中最初的第一卷积层,所述第一标准上采样层用于替代所述第二子网络的第二组第一卷积层中最后的第一卷积层;
    所述第二标准下采样层用于替代所述第三子网络的第三组第一卷积层中最初的第一卷积层,所述第二标准上采样层用于替代所述第三子网络的第三组第一卷积层中最后的第一卷积层。
  9. 根据权利要求2-8任一项所述的训练方法,其中,所述损失函数还包括内容损失函数,
    基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值,还包括:
    通过分析网络提取所述第一训练输入图像的第一训练输入特征和提取所述训练输出图像的第一训练输出特征;
    根据所述第一训练输入特征和所述第一训练输出特征通过所述内容损失函数计算所述神经网络的参数的内容损失值,
    所述损失值包括所述内容损失值。
  10. 根据权利要求9所述的训练方法,其中,所述损失函数还包括风格损失函数,
    基于所述第一训练输入图像、所述第二训练输入图像和所述训练输出图像,通过损失函数计算所述神经网络的参数的损失值,还包括:
    通过所述分析网络提取所述第二训练输入图像的第二训练输入特征和提取所述训练输出图像的第二训练输出特征;
    根据所述第二训练输出特征和所述第二训练输入特征通过所述风格损失函数计算所述神经网络的参数的风格损失值,
    所述损失值包括所述风格损失值。
  11. 根据权利要求10所述的训练方法,其中,所述第一训练输入特征和所述第一训练输出特征均为内容特征,所述第二训练输入特征和所述第二训练 输出特征均为风格特征。
  12. 根据权利要求10或11所述的训练方法,其中,所述分析网络包括第二卷积神经网络,所述第二卷积神经网络包括依次连接的多个第二卷积层和间插于相邻第二卷积层之间的多个第二池化层,每个第二卷积层用于提取所述第一训练输入特征、所述第一训练输出特征、所述第二训练输出特征和/或所述第二训练输入特征,
    第l个第二卷积层具有N l个第二卷积核,所述第l个第二卷积层用于生成并输出所述第一训练输入图像的N l个第一训练特征图像、所述训练输出图像的N l个第二训练特征图像和N l个第三训练特征图像以及所述第二训练输入图像的N l个第四训练特征图像,且所述N l个卷积核分别与所述N l个第一训练特征图像、所述N l个第二训练特征图像、所述N l个第三训练特征图像以及所述N l个第四训练特征图像一一对应,
    所述N l个第一训练特征图像、N l个第二训练特征图像、N l个第三训练特征图像和N l个第四训练特征图像的尺寸相同。
  13. 根据权利要求12所述的训练方法,其中,
    所述第l个第二卷积层的所述内容损失函数表示为:
    Figure PCTCN2018100833-appb-100002
    其中,C l表示所述内容损失函数,
    Figure PCTCN2018100833-appb-100003
    表示在所述第l个第二卷积层中第i个第二卷积核对应的第一训练特征图像中第j个位置的值,
    Figure PCTCN2018100833-appb-100004
    表示在所述第l个第二卷积层中第i个第二卷积核对应的第三训练特征图像中第j个位置的值,S 1为常数,
    总内容损失函数表示为:
    Figure PCTCN2018100833-appb-100005
    其中,L content表示所述总内容损失函数,Q1为正整数,且表示提取并输出所述第一训练输入特征和所述第一训练输出特征的第二卷积层的数量,w 1l表示C l的权重;
    所述第l个第二卷积层的所述风格损失函数表示为:
    Figure PCTCN2018100833-appb-100006
    其中,E l表示所述风格损失函数,M l表示所述第四训练特征图像的尺寸,
    Figure PCTCN2018100833-appb-100007
    表示在所述第l个第二卷积层中第i个第二卷积核对应的第二训练特征图像 的格拉姆矩阵中第j个位置的值,
    Figure PCTCN2018100833-appb-100008
    表示在所述第l个第二卷积层中第i个第二卷积核对应的第四训练特征图像的格拉姆矩阵中第j个位置的值,S 2为常数,
    总风格损失函数表示为:
    Figure PCTCN2018100833-appb-100009
    其中,L style表示所述总风格损失函数,Q2为正整数,且表示提取并输出所述第二训练输入特征和所述第二训练输出特征的第二卷积层的数量,w 2l表示E l的权重。
  14. 一种基于神经网络实现图像风格迁移的图像处理方法,其中,所述神经网络为根据权利要求1所述的训练方法训练得到的神经网络,
    所述图像处理方法包括:
    获取第一图像;
    将所述第一图像输入至所述神经网络;
    利用所述神经网络对所述第一图像进行风格转移处理,以生成第二图像。
  15. 根据权利要求14所述的图像处理方法,其中,所述神经网络还包括第一转换矩阵,所述第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道,
    将所述第一图像输入至所述神经网络包括:
    通过所述第一转换矩阵将所述第一图像转换为第一中间图像;
    将所述第一中间图像输入至所述神经网络;
    其中,通过所述第一转换矩阵将所述第一图像转换为第一中间图像包括:通过所述第一转换矩阵将所述第一图像的第一输入颜色通道、第二输入颜色通道和第三输入颜色通道的数据信息转换为所述第一中间图像的第一亮度信道、第一色差信道和第二色差信道的数据信息。
  16. 根据权利要求15所述的图像处理方法,其中,所述神经网络还包括第一卷积神经网络,所述第一卷积神经网络包括第一子网络、第二子网络和第三子网络,
    利用所述神经网络对所述第一图像进行风格转移处理,以生成第二图像,包括:
    利用所述第一子网络、所述第二子网络和所述第三子网络分别对所述第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信 道的数据信息进行风格迁移处理,以生成第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息;
    将所述第二中间图像转换为所述第二图像,
    其中,所述第二图像为RGB格式的图像,所述第二中间图像为YUV格式的图像。
  17. 根据权利要求16所述的图像处理方法,其中,所述神经网络还包括第二转换矩阵,
    将所述第二中间图像转换为所述第二图像包括:
    利用所述第二转换矩阵将所述第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息转换为所述第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。
  18. 一种图像处理装置,包括:
    图像获取模块,用于获取第一图像;
    图像处理模块,包括根据权利要求1-13任一项所述的训练方法训练得到的神经网络,所述图像处理模块用于利用所述神经网络对所述第一图像进行风格迁移处理,以生成第二图像。
  19. 根据权利要求18所述的图像处理装置,还包括第一转换模块,
    其中,所述第一图像具有第一输入颜色通道、第二输入颜色通道和第三输入颜色通道,
    所述第一转换模块用于将所述第一图像的第一输入颜色通道的数据信息、第二输入颜色通道的数据信息和第三输入颜色通道的数据信息转换为第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信道的数据信息,
    所述神经网络包括第一子网络、第二子网络和第三子网络,所述第一子网络、第二子网络和第三子网络分别用于处理所述第一中间图像的第一亮度信道的数据信息、第一色差信道的数据信息和第二色差信道的数据信息,以生成第二中间图像的第二亮度信道的数据信息、第三色差信道的数据信息和第四色差信道的数据信息。
  20. 根据权利要求19所述的图像处理装置,还包括第二转换模块,
    其中,所述第二转换模块用于将所述第二中间图像的第二亮度信道的数据 信息、第三色差信道的数据信息和第四色差信道的数据信息转换为所述第二图像的第一输出颜色通道的数据信息、第二输出颜色通道的数据信息和第三输出颜色通道的数据信息。
  21. 根据权利要求19或20所述的图像处理装置,其中,所述第一子网络包括第一组第一卷积层,第二子网络包括第二组第一卷积层,第三子网络包括第三组第一卷积层,
    所述第二子网络包括第一标准上采样层和第一标准下采样层,所述第三子网络包括第二标准上采样层和第二标准下采样层,
    所述第一标准下采样层用于替代所述第二子网络的第二组第一卷积层中最初的第一卷积层,所述第一标准上采样层用于替代所述第二子网络的第二组第一卷积层中最后的第一卷积层;
    所述第二标准下采样层用于替代所述第三子网络的第三组第一卷积层中最初的第一卷积层,所述第二标准上采样层用于替代所述第三子网络的第三组第一卷积层中最后的第一卷积层。
  22. 一种图像处理装置,包括:
    存储器,用于存储非暂时性计算机可读指令;以及
    处理器,用于运行所述计算机可读指令,所述计算机可读指令被所述处理器运行时执行根据权利要求1-13任一所述的训练方法。
PCT/CN2018/100833 2017-08-29 2018-08-16 图像处理方法、图像处理装置、神经网络的训练方法 WO2019042139A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP18850585.3A EP3678059B1 (en) 2017-08-29 2018-08-16 Image processing method, image processing apparatus, and a neural network training method
US16/336,995 US11461639B2 (en) 2017-08-29 2018-08-16 Image processing method, image processing device, and training method of neural network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710757133.7A CN109426858B (zh) 2017-08-29 2017-08-29 神经网络、训练方法、图像处理方法及图像处理装置
CN201710757133.7 2017-08-29

Publications (1)

Publication Number Publication Date
WO2019042139A1 true WO2019042139A1 (zh) 2019-03-07

Family

ID=65503575

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/100833 WO2019042139A1 (zh) 2017-08-29 2018-08-16 图像处理方法、图像处理装置、神经网络的训练方法

Country Status (4)

Country Link
US (1) US11461639B2 (zh)
EP (1) EP3678059B1 (zh)
CN (1) CN109426858B (zh)
WO (1) WO2019042139A1 (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109934300A (zh) * 2019-03-21 2019-06-25 腾讯科技(深圳)有限公司 模型压缩方法、装置、计算机设备及存储介质
CN109993140A (zh) * 2019-04-09 2019-07-09 上海市刑事科学技术研究院 一种现场纹身取证手持装置及系统、控制方法
CN110060508A (zh) * 2019-04-08 2019-07-26 武汉理工大学 一种用于内河桥区的船舶自动检测方法
CN110766681A (zh) * 2019-10-28 2020-02-07 福建帝视信息科技有限公司 一种基于三重损失网络的竹条表面缺陷检测方法
CN110837830A (zh) * 2019-10-24 2020-02-25 上海兑观信息科技技术有限公司 一种基于时空卷积神经网络的图像字符识别方法
CN111291866A (zh) * 2020-01-22 2020-06-16 上海商汤临港智能科技有限公司 神经网络的生成、图像处理、智能行驶控制方法及装置
CN111783779A (zh) * 2019-09-17 2020-10-16 北京沃东天骏信息技术有限公司 图像处理方法、装置和计算机可读存储介质
CN111814165A (zh) * 2020-07-07 2020-10-23 重庆大学 一种基于深度神经网络中间层的图像隐私保护方法
CN111986275A (zh) * 2020-07-31 2020-11-24 西安理工大学 一种多模态半色调图像的逆半色调化方法
CN112013962A (zh) * 2019-05-31 2020-12-01 南京理工大学 一种基于cnn神经网络的mrtd参数测试方法
CN112115920A (zh) * 2020-09-30 2020-12-22 北京百度网讯科技有限公司 生成单目标检测神经网络的方法和装置
CN112767361A (zh) * 2021-01-22 2021-05-07 重庆邮电大学 基于轻量级残差U-net的反射光铁谱图像分割方法
CN112802160A (zh) * 2021-01-12 2021-05-14 西北大学 一种基于u-gat-it改进的秦腔角色卡通化风格迁移的方法
CN112950460A (zh) * 2021-03-26 2021-06-11 成都理工大学 一种用于图像风格迁移的技术
CN113159081A (zh) * 2020-01-23 2021-07-23 华为技术有限公司 一种图像处理方法以及相关设备
CN113191944A (zh) * 2021-05-31 2021-07-30 大连民族大学 一种多通道图像内容特征融合风格迁移方法及系统
CN113496159A (zh) * 2020-03-20 2021-10-12 昆明理工大学 一种多尺度卷积与动态权重代价函数的烟尘目标分割方法
GB2612775A (en) * 2021-11-10 2023-05-17 Sony Interactive Entertainment Inc System and method for generating assets
CN116208356A (zh) * 2022-10-27 2023-06-02 浙江大学 一种基于深度学习的虚拟货币挖矿流量检测方法
CN116721306A (zh) * 2023-05-24 2023-09-08 北京思想天下教育科技有限公司 基于大数据云平台的线上学习内容推荐系统
US11842267B2 (en) 2018-09-26 2023-12-12 Boe Technology Group Co., Ltd. Computer-implemented method using a neural network comprising down-sampling segment, densely connected segment, and up-sampling segment, apparatus, and computer-program product
CN111986275B (zh) * 2020-07-31 2024-06-11 广州嘉尔日用制品有限公司 一种多模态半色调图像的逆半色调化方法

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018091486A1 (en) 2016-11-16 2018-05-24 Ventana Medical Systems, Inc. Convolutional neural networks for locating objects of interest in images of biological samples
CN109426858B (zh) * 2017-08-29 2021-04-06 京东方科技集团股份有限公司 神经网络、训练方法、图像处理方法及图像处理装置
US10664718B1 (en) 2017-09-11 2020-05-26 Apple Inc. Real-time adjustment of hybrid DNN style transfer networks
US10860919B2 (en) * 2017-09-27 2020-12-08 Google Llc End to end network model for high resolution image segmentation
CN109754357B (zh) 2018-01-26 2021-09-21 京东方科技集团股份有限公司 图像处理方法、处理装置以及处理设备
US10991150B2 (en) * 2018-05-09 2021-04-27 Massachusetts Institute Of Technology View generation from a single image using fully convolutional neural networks
US10963748B1 (en) * 2018-08-31 2021-03-30 Snap Inc. Generative neural network distillation
US20200081431A1 (en) * 2018-09-07 2020-03-12 DoorDash, Inc. Video system with frame synthesis
KR102640234B1 (ko) * 2018-09-28 2024-02-23 삼성전자주식회사 디스플레이 장치의 제어 방법 및 그에 따른 디스플레이 장치
CN109360261B (zh) * 2018-09-28 2019-12-31 北京达佳互联信息技术有限公司 图像处理方法、装置、电子设备及存储介质
CN109191382B (zh) 2018-10-18 2023-12-05 京东方科技集团股份有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
CN111127304B (zh) * 2018-10-31 2024-02-20 微软技术许可有限责任公司 跨域图像转换
US10748324B2 (en) * 2018-11-08 2020-08-18 Adobe Inc. Generating stylized-stroke images from source images utilizing style-transfer-neural networks with non-photorealistic-rendering
US11227075B2 (en) * 2019-01-25 2022-01-18 SWATCHBOOK, Inc. Product design, configuration and decision system using machine learning
US10769764B2 (en) * 2019-02-08 2020-09-08 Adobe Inc. Hierarchical scale matching and patch estimation for image style transfer with arbitrary resolution
WO2020165848A1 (en) * 2019-02-14 2020-08-20 Hatef Otroshi Shahreza Quality assessment of an image
CN109978840A (zh) * 2019-03-11 2019-07-05 太原理工大学 一种基于卷积神经网络的含纹理图像质量的判别方法
CN109978788B (zh) * 2019-03-25 2020-11-27 厦门美图之家科技有限公司 卷积神经网络生成方法、图像去马赛克方法及相关装置
US11494615B2 (en) * 2019-03-28 2022-11-08 Baidu Usa Llc Systems and methods for deep skip-gram network based text classification
CN110009044B (zh) * 2019-04-09 2021-09-03 北京七鑫易维信息技术有限公司 一种模型训练方法及装置、图像处理方法及装置
CN110188776A (zh) * 2019-05-30 2019-08-30 京东方科技集团股份有限公司 图像处理方法及装置、神经网络的训练方法、存储介质
CN110335206B (zh) * 2019-05-31 2023-06-09 平安科技(深圳)有限公司 智能滤镜方法、装置及计算机可读存储介质
US11367163B2 (en) 2019-05-31 2022-06-21 Apple Inc. Enhanced image processing techniques for deep neural networks
RU2706891C1 (ru) * 2019-06-06 2019-11-21 Самсунг Электроникс Ко., Лтд. Способ формирования общей функции потерь для обучения сверточной нейронной сети для преобразования изображения в изображение с прорисованными деталями и система для преобразования изображения в изображение с прорисованными деталями
US11521011B2 (en) 2019-06-06 2022-12-06 Samsung Electronics Co., Ltd. Method and apparatus for training neural network model for enhancing image detail
CN112085041A (zh) * 2019-06-12 2020-12-15 北京地平线机器人技术研发有限公司 神经网络的训练方法、训练装置和电子设备
CN112115452A (zh) * 2019-06-20 2020-12-22 北京京东尚科信息技术有限公司 用于生成验证码图像的方法和装置
US10977528B1 (en) * 2019-06-25 2021-04-13 Amazon Technologies, Inc. Detecting similarity between images
CN110458906B (zh) * 2019-06-26 2024-03-15 广州大鱼创福科技有限公司 一种基于深度颜色迁移的医学图像着色方法
CN110288090B (zh) * 2019-06-28 2023-11-07 广东中星微电子有限公司 训练卷积神经网络的方法及装置、计算机设备和存储介质
CN110276411B (zh) * 2019-06-28 2022-11-18 腾讯科技(深圳)有限公司 图像分类方法、装置、设备、存储介质和医疗电子设备
CN110288607A (zh) * 2019-07-02 2019-09-27 数坤(北京)网络科技有限公司 分割网络的优化方法、系统和计算机可读存储介质
CN110309837B (zh) * 2019-07-05 2021-07-06 北京迈格威科技有限公司 基于卷积神经网络特征图的数据处理方法及图像处理方法
CN110378092B (zh) * 2019-07-26 2020-12-04 北京积加科技有限公司 身份识别系统及客户端、服务器和方法
CN111797881A (zh) * 2019-07-30 2020-10-20 华为技术有限公司 图像分类方法及装置
CN110473141B (zh) * 2019-08-02 2023-08-18 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质及电子设备
US10956776B2 (en) * 2019-08-06 2021-03-23 Alibaba Group Holding Limited 2D convolutional accelerator that generates 3D results
CN110651277B (zh) * 2019-08-08 2023-08-01 京东方科技集团股份有限公司 计算机实现的方法、计算机实现的诊断方法、图像分类设备、以及计算机程序产品
CN112348161A (zh) * 2019-08-09 2021-02-09 北京地平线机器人技术研发有限公司 神经网络的训练方法、神经网络的训练装置和电子设备
CN110580726B (zh) * 2019-08-21 2022-10-04 中山大学 基于动态卷积网络的自然场景下人脸素描生成模型及方法
CN110675309A (zh) * 2019-08-28 2020-01-10 江苏大学 一种基于卷积神经网络和VGGNet16模型的图像风格转换方法
CN110544154B (zh) * 2019-08-30 2022-03-29 北京市商汤科技开发有限公司 服饰搭配方法及装置、电子设备和存储介质
CN110427922A (zh) * 2019-09-03 2019-11-08 陈�峰 一种基于机器视觉和卷积神经网络病虫害识别系统和方法
US10943353B1 (en) 2019-09-11 2021-03-09 International Business Machines Corporation Handling untrainable conditions in a network architecture search
CN110728354B (zh) * 2019-09-11 2024-04-09 东南大学 一种基于改进的滑动式分组卷积神经网络的图像处理方法
US11023783B2 (en) * 2019-09-11 2021-06-01 International Business Machines Corporation Network architecture search with global optimization
KR20210032247A (ko) * 2019-09-16 2021-03-24 삼성전자주식회사 디스플레이 장치 및 이의 영상 처리 방법
CN110796162B (zh) * 2019-09-18 2023-08-29 平安科技(深圳)有限公司 图像识别、训练识别模型的方法、相关设备及存储介质
CN110706220B (zh) * 2019-09-27 2023-04-18 贵州大学 一种胶囊内镜图像处理和分析方法
CN112580772B (zh) * 2019-09-30 2024-04-26 华为技术有限公司 卷积神经网络的压缩方法及装置
KR102623148B1 (ko) * 2019-10-15 2024-01-11 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
CN112734864A (zh) * 2019-10-28 2021-04-30 天津大学青岛海洋技术研究院 一种用于灰度图像上色的三通路卷积神经网络结构
CN110826694B (zh) * 2019-10-30 2021-06-11 瀚博半导体(上海)有限公司 一种基于卷积神经网络的图像处理方法及装置
CN110969600A (zh) * 2019-11-12 2020-04-07 华北电力大学扬中智能电气研究中心 一种产品缺陷检测方法、装置、电子设备及存储介质
CN110866866B (zh) * 2019-11-14 2023-10-17 腾讯科技(深圳)有限公司 图像仿色处理方法、装置、电子设备及存储介质
CN110874826B (zh) * 2019-11-18 2020-07-31 北京邮电大学 应用于离子束精准镀膜的工件图像去雾化方法及装置
CN110909258B (zh) * 2019-11-22 2023-09-29 上海喜马拉雅科技有限公司 一种信息推荐方法、装置、设备及存储介质
CN111062329B (zh) * 2019-12-18 2023-05-30 中山大学 基于增广网络的无监督行人重识别方法
CN111191704B (zh) * 2019-12-24 2023-05-02 天津师范大学 一种基于任务图卷积网络的地基云分类方法
CN111126494B (zh) * 2019-12-25 2023-09-26 中国科学院自动化研究所 基于各向异性卷积的图像分类方法及系统
US11080834B2 (en) * 2019-12-26 2021-08-03 Ping An Technology (Shenzhen) Co., Ltd. Image processing method and electronic device
CN113052756A (zh) * 2019-12-27 2021-06-29 武汉Tcl集团工业研究院有限公司 一种图像处理方法、智能终端及存储介质
CN113076966B (zh) * 2020-01-06 2023-06-13 字节跳动有限公司 图像处理方法及装置、神经网络的训练方法、存储介质
CN113139893B (zh) * 2020-01-20 2023-10-03 北京达佳互联信息技术有限公司 图像翻译模型的构建方法和装置、图像翻译方法和装置
CN111275128B (zh) * 2020-02-13 2023-08-25 平安科技(深圳)有限公司 图像识别模型训练方法及系统和图像识别方法
CN113269213B (zh) * 2020-02-17 2023-06-30 百度在线网络技术(北京)有限公司 训练集的获取方法、装置及电子设备
CN111340188A (zh) * 2020-02-21 2020-06-26 北京集创北方科技股份有限公司 图像处理方法及装置、电子设备和可读存储介质
CN111415333B (zh) * 2020-03-05 2023-12-01 北京深睿博联科技有限责任公司 乳腺x射线影像反对称生成分析模型训练方法和装置
CN111401247B (zh) * 2020-03-17 2023-07-28 杭州小影创新科技股份有限公司 一种基于级联卷积神经网络的人像分割方法
CN111523561A (zh) * 2020-03-19 2020-08-11 深圳市彬讯科技有限公司 图像风格识别方法、装置、计算机设备及存储介质
CN111652262A (zh) * 2020-03-19 2020-09-11 深圳市彬讯科技有限公司 图像物体识别方法、装置、计算机设备及存储介质
CN111563263B (zh) * 2020-04-16 2023-04-25 绍兴聚量数据技术有限公司 一种任意图像风格迁移的无载体信息隐藏方法
US11501107B2 (en) 2020-05-07 2022-11-15 Adobe Inc. Key-value memory network for predicting time-series metrics of target entities
US20210352347A1 (en) * 2020-05-08 2021-11-11 Synaptics Incorporated Adaptive video streaming systems and methods
US20210357730A1 (en) * 2020-05-12 2021-11-18 Alibaba Group Holding Limited Multi-size convolutional layer background
CN111598858B (zh) * 2020-05-12 2023-05-16 上海大学 一种基于迁移学习的橡胶手套的检测方法及系统
CN111860585A (zh) * 2020-06-11 2020-10-30 南京简凡科技有限公司 一种基于超声影像人工智能算法的脂肪肝自动检测方法
CN111523521B (zh) * 2020-06-18 2023-04-07 西安电子科技大学 一种双支路融合多尺度注意神经网络的遥感图像分类方法
CN111652830A (zh) * 2020-06-28 2020-09-11 Oppo广东移动通信有限公司 图像处理方法及装置、计算机可读介质及终端设备
CN111968127B (zh) * 2020-07-06 2021-08-27 中国科学院计算技术研究所 一种基于全切片病理图像的癌灶区域识别方法及系统
CN111885280B (zh) * 2020-07-17 2021-04-13 电子科技大学 一种混合卷积神经网络视频编码环路滤波方法
CN111862039A (zh) * 2020-07-20 2020-10-30 中山西尼视觉科技有限公司 快速编带视觉检测方法
CN111914854A (zh) * 2020-07-21 2020-11-10 同济大学 一种基于神经网络的喷雾特征提取方法、设备及存储介质
CN111986075B (zh) * 2020-08-12 2022-08-09 兰州交通大学 一种目标边缘清晰化的风格迁移方法
CN111950643B (zh) * 2020-08-18 2022-06-28 创新奇智(上海)科技有限公司 图像分类模型训练方法、图像分类方法及对应装置
CN112084948A (zh) * 2020-09-10 2020-12-15 深圳市迈航信息技术有限公司 采用人脸数据的方式来提高安检安全的方法以及系统
US11477464B2 (en) 2020-09-16 2022-10-18 Qualcomm Incorporated End-to-end neural network based video coding
CN112258381B (zh) * 2020-09-29 2024-02-09 北京达佳互联信息技术有限公司 模型训练方法、图像处理方法、装置、设备及存储介质
CN112241941B (zh) * 2020-10-20 2024-03-22 北京字跳网络技术有限公司 获取图像的方法、装置、设备和计算机可读介质
CN113240573B (zh) * 2020-10-26 2022-05-13 杭州火烧云科技有限公司 局部和全局并行学习的高分辨率图像风格变换方法及系统
CN112580623B (zh) * 2020-12-25 2023-07-25 北京百度网讯科技有限公司 图像生成方法、模型训练方法、相关装置及电子设备
CN112464916B (zh) * 2020-12-31 2023-09-19 上海齐感电子信息科技有限公司 人脸识别方法及其模型训练方法
US11785068B2 (en) * 2020-12-31 2023-10-10 Synaptics Incorporated Artificial intelligence image frame processing systems and methods
CN112802063A (zh) * 2021-02-03 2021-05-14 阳光电源股份有限公司 卫星云图的预测方法、装置以及计算机可读存储介质
CN113033744B (zh) * 2021-03-16 2022-05-24 北京航空航天大学 一种艺术风格qr码的生成方法及系统
CN113139653A (zh) * 2021-03-18 2021-07-20 有米科技股份有限公司 用于图像哈希求解的神经网络训练方法及装置
CN113011567B (zh) * 2021-03-31 2023-01-31 深圳精智达技术股份有限公司 一种卷积神经网络模型的训练方法及装置
CN113191208B (zh) * 2021-04-09 2022-10-21 湖北工业大学 一种用于遥感图像实例分割的特征提取方法和计算机设备
CN112990370B (zh) * 2021-04-26 2021-09-10 腾讯科技(深圳)有限公司 图像数据的处理方法和装置、存储介质及电子设备
CN113486752B (zh) * 2021-06-29 2023-06-16 吉林大学 基于心电信号的情感识别方法及系统
TWI779824B (zh) * 2021-09-10 2022-10-01 瑞昱半導體股份有限公司 卷積神經網路的圖像處理方法與系統
CN114550102A (zh) * 2022-03-01 2022-05-27 上海中通吉网络技术有限公司 货物堆积检测方法、装置、设备和系统
CN114820871B (zh) * 2022-06-29 2022-12-16 北京百度网讯科技有限公司 字体生成方法、模型的训练方法、装置、设备和介质
CN114915496B (zh) * 2022-07-11 2023-01-10 广州番禺职业技术学院 基于时间权重和深度神经网络的网络入侵检测方法和装置
CN115641045A (zh) * 2022-12-23 2023-01-24 河南新飞电器集团有限公司 一种冷链运输远程监控系统
CN116416628A (zh) * 2023-06-06 2023-07-11 广州宏途数字科技有限公司 基于手写字体识别的方法及识别系统
CN117671395B (zh) * 2024-02-02 2024-04-26 南昌康德莱医疗科技有限公司 一种癌细胞种类识别装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017021322A1 (en) * 2015-07-31 2017-02-09 Eberhard Karls Universität Tübingen Method and device for image synthesis
CN106651766A (zh) * 2016-12-30 2017-05-10 深圳市唯特视科技有限公司 一种基于深度卷积神经网络的图像风格迁移方法
CN106709532A (zh) * 2017-01-25 2017-05-24 京东方科技集团股份有限公司 图像处理方法和装置
CN106847294A (zh) * 2017-01-17 2017-06-13 百度在线网络技术(北京)有限公司 基于人工智能的音频处理方法和装置
CN106952224A (zh) * 2017-03-30 2017-07-14 电子科技大学 一种基于卷积神经网络的图像风格转移方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9826208B2 (en) * 2013-06-26 2017-11-21 Nvidia Corporation Method and system for generating weights for use in white balancing an image
WO2018042388A1 (en) * 2016-09-02 2018-03-08 Artomatix Ltd. Systems and methods for providing convolutional neural network based image synthesis using stable and controllable parametric models, a multiscale synthesis framework and novel network architectures
CN106782602B (zh) * 2016-12-01 2020-03-17 南京邮电大学 基于深度神经网络的语音情感识别方法
US10685057B1 (en) * 2016-12-30 2020-06-16 Shutterstock, Inc. Style modification of images in search results
US10803378B2 (en) * 2017-03-15 2020-10-13 Samsung Electronics Co., Ltd System and method for designing efficient super resolution deep convolutional neural networks by cascade network training, cascade network trimming, and dilated convolutions
CN107038421A (zh) * 2017-04-17 2017-08-11 杭州电子科技大学 基于稀疏堆栈自编码的调制样式识别方法
US10565757B2 (en) * 2017-06-09 2020-02-18 Adobe Inc. Multimodal style-transfer network for applying style features from multi-resolution style exemplars to input images
US10318889B2 (en) * 2017-06-26 2019-06-11 Konica Minolta Laboratory U.S.A., Inc. Targeted data augmentation using neural style transfer
CN110914834B (zh) * 2017-08-01 2024-04-16 3M创新有限公司 用于图像变型和识别的神经风格迁移
CN109426858B (zh) * 2017-08-29 2021-04-06 京东方科技集团股份有限公司 神经网络、训练方法、图像处理方法及图像处理装置
US10984286B2 (en) * 2018-02-02 2021-04-20 Nvidia Corporation Domain stylization using a neural network model
US10482565B1 (en) * 2018-02-12 2019-11-19 Snap Inc. Multistage neural network processing using a graphics processor
US10825132B2 (en) * 2018-02-20 2020-11-03 Element Ai Inc. Training method for convolutional neural networks for use in artistic style transfers for video
US10748324B2 (en) * 2018-11-08 2020-08-18 Adobe Inc. Generating stylized-stroke images from source images utilizing style-transfer-neural networks with non-photorealistic-rendering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017021322A1 (en) * 2015-07-31 2017-02-09 Eberhard Karls Universität Tübingen Method and device for image synthesis
CN106651766A (zh) * 2016-12-30 2017-05-10 深圳市唯特视科技有限公司 一种基于深度卷积神经网络的图像风格迁移方法
CN106847294A (zh) * 2017-01-17 2017-06-13 百度在线网络技术(北京)有限公司 基于人工智能的音频处理方法和装置
CN106709532A (zh) * 2017-01-25 2017-05-24 京东方科技集团股份有限公司 图像处理方法和装置
CN106952224A (zh) * 2017-03-30 2017-07-14 电子科技大学 一种基于卷积神经网络的图像风格转移方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3678059A4 *

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11842267B2 (en) 2018-09-26 2023-12-12 Boe Technology Group Co., Ltd. Computer-implemented method using a neural network comprising down-sampling segment, densely connected segment, and up-sampling segment, apparatus, and computer-program product
CN109934300A (zh) * 2019-03-21 2019-06-25 腾讯科技(深圳)有限公司 模型压缩方法、装置、计算机设备及存储介质
CN109934300B (zh) * 2019-03-21 2023-08-25 腾讯科技(深圳)有限公司 模型压缩方法、装置、计算机设备及存储介质
CN110060508A (zh) * 2019-04-08 2019-07-26 武汉理工大学 一种用于内河桥区的船舶自动检测方法
CN110060508B (zh) * 2019-04-08 2020-11-20 武汉理工大学 一种用于内河桥区的船舶自动检测方法
CN109993140A (zh) * 2019-04-09 2019-07-09 上海市刑事科学技术研究院 一种现场纹身取证手持装置及系统、控制方法
CN109993140B (zh) * 2019-04-09 2023-07-25 上海市刑事科学技术研究院 一种现场纹身取证手持装置及系统、控制方法
CN112013962B (zh) * 2019-05-31 2022-11-04 南京理工大学 一种基于cnn神经网络的mrtd参数测试方法
CN112013962A (zh) * 2019-05-31 2020-12-01 南京理工大学 一种基于cnn神经网络的mrtd参数测试方法
CN111783779A (zh) * 2019-09-17 2020-10-16 北京沃东天骏信息技术有限公司 图像处理方法、装置和计算机可读存储介质
CN111783779B (zh) * 2019-09-17 2023-12-05 北京沃东天骏信息技术有限公司 图像处理方法、装置和计算机可读存储介质
CN110837830B (zh) * 2019-10-24 2023-06-23 上海兑观信息科技技术有限公司 一种基于时空卷积神经网络的图像字符识别方法
CN110837830A (zh) * 2019-10-24 2020-02-25 上海兑观信息科技技术有限公司 一种基于时空卷积神经网络的图像字符识别方法
CN110766681B (zh) * 2019-10-28 2023-04-14 福建帝视信息科技有限公司 一种基于三重损失网络的竹条表面缺陷检测方法
CN110766681A (zh) * 2019-10-28 2020-02-07 福建帝视信息科技有限公司 一种基于三重损失网络的竹条表面缺陷检测方法
CN111291866A (zh) * 2020-01-22 2020-06-16 上海商汤临港智能科技有限公司 神经网络的生成、图像处理、智能行驶控制方法及装置
CN111291866B (zh) * 2020-01-22 2024-03-26 上海商汤临港智能科技有限公司 神经网络的生成、图像处理、智能行驶控制方法及装置
CN113159081A (zh) * 2020-01-23 2021-07-23 华为技术有限公司 一种图像处理方法以及相关设备
CN113496159A (zh) * 2020-03-20 2021-10-12 昆明理工大学 一种多尺度卷积与动态权重代价函数的烟尘目标分割方法
CN111814165B (zh) * 2020-07-07 2024-01-26 重庆大学 一种基于深度神经网络中间层的图像隐私保护方法
CN111814165A (zh) * 2020-07-07 2020-10-23 重庆大学 一种基于深度神经网络中间层的图像隐私保护方法
CN111986275A (zh) * 2020-07-31 2020-11-24 西安理工大学 一种多模态半色调图像的逆半色调化方法
CN111986275B (zh) * 2020-07-31 2024-06-11 广州嘉尔日用制品有限公司 一种多模态半色调图像的逆半色调化方法
CN112115920A (zh) * 2020-09-30 2020-12-22 北京百度网讯科技有限公司 生成单目标检测神经网络的方法和装置
CN112802160B (zh) * 2021-01-12 2023-10-17 西北大学 一种基于u-gat-it改进的秦腔角色卡通化风格迁移的方法
CN112802160A (zh) * 2021-01-12 2021-05-14 西北大学 一种基于u-gat-it改进的秦腔角色卡通化风格迁移的方法
CN112767361B (zh) * 2021-01-22 2024-04-09 重庆邮电大学 基于轻量级残差U-net的反射光铁谱图像分割方法
CN112767361A (zh) * 2021-01-22 2021-05-07 重庆邮电大学 基于轻量级残差U-net的反射光铁谱图像分割方法
CN112950460A (zh) * 2021-03-26 2021-06-11 成都理工大学 一种用于图像风格迁移的技术
CN113191944B (zh) * 2021-05-31 2023-11-07 大连民族大学 一种多通道图像内容特征融合风格迁移方法及系统
CN113191944A (zh) * 2021-05-31 2021-07-30 大连民族大学 一种多通道图像内容特征融合风格迁移方法及系统
GB2612775A (en) * 2021-11-10 2023-05-17 Sony Interactive Entertainment Inc System and method for generating assets
CN116208356A (zh) * 2022-10-27 2023-06-02 浙江大学 一种基于深度学习的虚拟货币挖矿流量检测方法
CN116208356B (zh) * 2022-10-27 2023-09-29 浙江大学 一种基于深度学习的虚拟货币挖矿流量检测方法
CN116721306B (zh) * 2023-05-24 2024-02-02 北京思想天下教育科技有限公司 基于大数据云平台的线上学习内容推荐系统
CN116721306A (zh) * 2023-05-24 2023-09-08 北京思想天下教育科技有限公司 基于大数据云平台的线上学习内容推荐系统

Also Published As

Publication number Publication date
EP3678059B1 (en) 2023-06-07
EP3678059A4 (en) 2021-05-26
US20190220746A1 (en) 2019-07-18
US11461639B2 (en) 2022-10-04
EP3678059A1 (en) 2020-07-08
CN109426858A (zh) 2019-03-05
CN109426858B (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
WO2019042139A1 (zh) 图像处理方法、图像处理装置、神经网络的训练方法
WO2020239026A1 (zh) 图像处理方法及装置、神经网络的训练方法、存储介质
CN111767979B (zh) 神经网络的训练方法、图像处理方法、图像处理装置
US11200638B2 (en) Image style transform methods and apparatuses, devices and storage media
CN109472270B (zh) 图像风格转换方法、装置及设备
US11227364B2 (en) Computer-implemented method using convolutional neural network, apparatus for generating composite image, and computer-program product
WO2021073493A1 (zh) 图像处理方法及装置、神经网络的训练方法、合并神经网络模型的图像处理方法、合并神经网络模型的构建方法、神经网络处理器及存储介质
Choi et al. A deep convolutional neural network with selection units for super-resolution
CN110097609B (zh) 一种基于样本域的精细化绣花纹理迁移方法
CN113095470A (zh) 神经网络的训练方法、图像处理方法及装置、存储介质
CN113205449A (zh) 表情迁移模型的训练方法及装置、表情迁移方法及装置
CN112991171A (zh) 图像处理方法、装置、电子设备及存储介质
CN113298716A (zh) 基于卷积神经网络的图像超分辨率重建方法
TW202133032A (zh) 影像歸一化處理方法、電腦可讀取記錄媒體和電子設備
CN110956575B (zh) 转变图像风格的方法和装置、卷积神经网络处理器
CN111292251B (zh) 图像偏色校正方法、装置以及计算机存储介质
CN114830168A (zh) 图像重建方法、电子设备和计算机可读存储介质
CN116912268A (zh) 一种皮肤病变图像分割方法、装置、设备及存储介质
Cosmo et al. Multiple sequential regularized extreme learning machines for single image super resolution
WO2020187029A1 (zh) 图像处理方法及装置、神经网络的训练方法、存储介质
CN114627293A (zh) 基于多任务学习的人像抠图方法
CN113436094A (zh) 一种基于多视角注意力机制的灰度图像自动上色方法
CN114586056A (zh) 图像处理方法及装置、设备、视频处理方法及存储介质
CN112233015A (zh) 一种图片风格转换方法及装置
WO2023178610A1 (zh) 图像处理方法、计算系统、设备以及可读存储介质

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018850585

Country of ref document: EP

Effective date: 20200330