WO2016051640A1 - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- WO2016051640A1 WO2016051640A1 PCT/JP2015/003969 JP2015003969W WO2016051640A1 WO 2016051640 A1 WO2016051640 A1 WO 2016051640A1 JP 2015003969 W JP2015003969 W JP 2015003969W WO 2016051640 A1 WO2016051640 A1 WO 2016051640A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- machine learning
- image
- information
- algorithm
- function
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 32
- 238000003672 processing method Methods 0.000 title claims description 5
- 238000010801 machine learning Methods 0.000 claims abstract description 174
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 114
- 238000012545 processing Methods 0.000 claims abstract description 89
- 230000006870 function Effects 0.000 claims description 107
- 230000006399 behavior Effects 0.000 claims description 10
- 238000000034 method Methods 0.000 description 18
- 238000013461 design Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 15
- 230000006835 compression Effects 0.000 description 13
- 238000007906 compression Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 11
- 239000002131 composite material Substances 0.000 description 10
- 238000003860 storage Methods 0.000 description 10
- 230000015572 biosynthetic process Effects 0.000 description 8
- 238000003786 synthesis reaction Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000009825 accumulation Methods 0.000 description 5
- 230000002068 genetic effect Effects 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 108091028043 Nucleic acid sequence Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24143—Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V10/7747—Organisation of the process, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
- H04N7/0117—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
Definitions
- the present technology relates to an information processing apparatus, an information processing method, and a program for synthesizing an image processing algorithm by machine learning in the field of image processing.
- a machine learning system represented by a neural network can synthesize an algorithm by obtaining an approximate expression of a target mathematical expression by machine learning using input data and an expected value.
- Patent Document 1 discloses a mechanism for automatically constructing a feature amount calculation algorithm for calculating a target feature amount corresponding to input data such as an image using machine learning and a genetic algorithm.
- an object of the present technology is to provide an information processing apparatus, an information processing method, and an information processing system capable of successfully synthesizing a target algorithm using a machine learning system.
- the information processing apparatus is According to the scenario described in the program code, a plurality of learning information including an input image and a teacher image as an expected value of image processing for the input image is generated, and the generated learning information is subjected to image processing by machine learning. It has a control part which supplies it to the machine learning module which synthesize
- the control unit is configured to select a basic function for determining a machine learning algorithm of the machine learning module according to configuration information created in advance.
- the control unit is configured to provide a control signal for debugging for changing the behavior of the image processing algorithm as input data to the machine learning module during the machine learning.
- the control unit is configured to select the debug function according to the configuration information.
- an information processing method is:
- the control unit generates a plurality of learning information composed of an input image and a teacher image as an expected value of image processing for the input image according to a scenario described in the program code, and the generated plurality of learning information It is supplied to a machine learning module that synthesizes an image processing algorithm by learning.
- a program according to the third aspect of the present technology is: According to the scenario described in the program code, a plurality of learning information including an input image and a teacher image as an expected value of image processing for the input image is generated, and the generated learning information is subjected to image processing by machine learning.
- This is a program that causes a computer to function as a control unit that supplies a machine learning module that synthesizes an algorithm.
- a target algorithm can be satisfactorily synthesized using a machine learning system.
- the effects described here are not necessarily limited, and may be any of the effects described in the present disclosure.
- FIG. It is a figure which shows the structure of the design apparatus of the image processing algorithm of 1st Embodiment which concerns on this technique. It is a figure explaining the production
- FIG. It is a block diagram which shows the structure of the design apparatus of the image processing algorithm of 2nd Embodiment which concerns on this technique. It is a figure which shows the structure of a dimension compression function. It is a figure which shows the example of a self-organization function. It is a figure which shows the structural example of the combined function of dimension compression and self-organization. It is a figure which shows the example of general machine learning. It is a figure which shows the example of the machine learning by the combined type function of the dimension compression of FIG. 6, and self-organization.
- FIG. 1 It is a figure which shows the structure at the time of the machine learning of a composite type function. It is a figure which shows the structure at the time of the data processing of a composite type function. It is a figure which shows the structure at the time of the machine learning of the combined type machine learning module of a recursive type function and a composition type function. It is a figure which shows the structure at the time of the image process of the machine learning module of the combined use type of the recursive type function and synthetic
- FIG. 1 is a diagram illustrating a configuration of an image processing algorithm design apparatus according to the first embodiment of the present technology.
- the image processing algorithm design apparatus 100 includes a scenario creation unit 10, a physical simulator 20, a machine learning module 30, and the like.
- the machine learning module 30 performs machine learning from an input image (input image) and an image (teacher image) as an expected value of image processing for the input image, and obtains an approximate expression of a target mathematical expression to perform image processing. Synthesize algorithm for. Examples of the machine learning method include a neural network, but the present technology is not limited to this. Specifically, the machine learning module 30 is configured by an information processing apparatus such as one or more PCs (Personal Computers).
- PCs Personal Computers
- the scenario creation unit 10 creates a scenario for generating learning information composed of a pair of an input image and a teacher image given to the machine learning module 30 for machine learning from an original image using a program code in a high-level language. Assist the creator's work.
- the scenario creation unit 10 is configured by an information processing apparatus such as one or more PCs (Personal Computers).
- This embodiment can generate a large amount of learning information with different conditions from an original image at high speed according to a scenario described by a program code in a high-level language or the like.
- the speed, acceleration, exposure time (frame rate) of an image (moving image) can be described as variables. What is necessary is just to write a program code so that the calculation process for generating learning information through a loop such as a for statement may be repeated while incrementing these variables.
- the physics simulator 20 processes various images (original images) such as an abstract pattern image prepared for learning according to the scenario created by the scenario creation unit 10, and obtains the results as an input image and a teacher image. .
- the physical simulator 20 gives a pair of an input image and a teacher image to the machine learning module 30 as learning information.
- the physics simulator 20 generates a large number of different input images and teacher images for one original image by processing the original image according to the scenario. Furthermore, the physics simulator 20 can obtain enormous kinds of learning information from a limited number of original images by generating a large number of different input images and teacher images according to a scenario for a plurality of original images. .
- the physical simulator 20 includes one or more information processing apparatuses such as a PC or a control unit 1 such as a CPU (Central Processing Unit).
- the physical simulator 20 is configured by the CPU executing a program stored in the memory.
- the control unit 1 may include a scenario creation unit 10.
- the control unit 1 may include a machine learning module 30.
- the machine learning module 30 extracts at least a part of learning information, for example, at random from the enormous kinds of learning information generated by the physical simulator 20, and performs machine learning using the extracted learning information to achieve the target.
- the image processing algorithm is generated.
- the machine learning module 30 repeats machine learning using a lot of learning information. As a result, the machine learning module 30 performs exhaustive learning, and can generate a highly accurate image processing algorithm.
- FIG. 2 is a diagram for explaining generation of learning information by the physical simulator 20.
- the physics simulator 20 generates a continuous image for three frames rotating at a constant speed for each frame period as an input image 2 for the given original image 1A according to a scenario. Generates an image at an intermediate rotational position between the first frame and the second frame, and an image at an intermediate rotational position between the second frame and the third frame, each as a continuous image at twice the frame rate. Indicates when to do.
- the continuous image having the double frame rate is the teacher image 3.
- the machine learning module 30 analyzes information such as motion vectors between frames and luminance information from the input image 2 and generates an image processing algorithm with the teacher image as a target.
- the physical simulator 20 generates an enormous number of exhaustive learning information according to a scenario described by a program code in a high-level language or the like, and the machine learning module 30 also stores these learning information. Then, the image processing algorithm is synthesized by executing machine learning. Therefore, it is possible to generate a higher quality image processing algorithm.
- the image processing algorithm design apparatus of this embodiment enables customization of a machine learning algorithm by incorporating various types of functions into the base of the machine learning algorithm of the machine learning module 30 by plug-ins.
- FIG. 3 is a block diagram illustrating a configuration of an image processing algorithm design apparatus 100A according to the second embodiment of the present technology.
- the image processing algorithm design apparatus 100A includes a configuration information creation unit 40, a machine learning algorithm generation unit 50, a machine learning algorithm base storage unit 60, and a function storage in the configuration of the image processing algorithm design apparatus 100 according to the first embodiment.
- the part 70 is added.
- the configuration information creation unit 40 and the machine learning algorithm generation unit 50 may be configured by the control unit 1 such as a CPU together with the physical simulator 20 and the machine learning module 30.
- the machine learning algorithm base storage unit 60 stores a machine learning algorithm base which is a minimum algorithm necessary for performing machine learning.
- the function storage unit 70 stores various basic functions for determining a machine learning algorithm by being incorporated in the form of a plug-in into the base of the machine learning algorithm. Details of the basic function will be described later.
- the machine learning algorithm base storage unit 60 and the function storage unit 70 are specifically composed of storage devices capable of storing information.
- the configuration information creation unit 40 supports the task of creating configuration information of the machine learning algorithm by the configuration information creator.
- the creation of configuration information by the configuration information creator is performed using an information processing apparatus such as a PC.
- information specifying one or more basic functions specified to be incorporated in the form of a plug-in in the base of the machine learning algorithm is described.
- the machine learning algorithm generation unit 50 generates a machine learning algorithm by incorporating one or more basic functions as a plug-in into the base of the machine learning algorithm based on the configuration information.
- the generated machine learning algorithm is introduced into the machine learning module 30.
- the machine learning module 30 which synthesize
- Hierarchical neural network is composed of, for example, three layers: an input layer, an intermediate layer, and an output layer.
- Each layer is composed of a plurality of units each corresponding to a neuron.
- the plurality of units in each layer are connected to the output of each unit in the upstream layer and to the input of each unit in the downstream layer.
- a value to which a coupling load is applied is added to each input value.
- the output of each output unit in the output layer is compared with the teacher data, and the value of the connection weight is updated until the difference becomes a predetermined threshold value or less, that is, until machine learning converges.
- a set of load values given to each unit when machine learning converges is obtained as a machine learning result.
- the target image processing algorithm is synthesized in the hierarchical neural network.
- FIG. 4 is a diagram showing the configuration of the dimension compression function.
- the dimension compression function sets the number of units (M) in the intermediate layer 32 to be smaller than the number of units (N) in the input layer 31 and sets the number of units in the output layer 33 as the number of units in the input layer (in the hierarchical neural network). This is realized by setting the same as N). That is, the data is dimensionally compressed in the intermediate layer 32, and the data is returned to the same information amount as the input data in the output layer 33. As a result, the overall computational amount of machine learning can be reduced, and the speed of algorithm synthesis can be increased.
- FIG. 5 is a diagram illustrating an example of a self-organizing function.
- Self-organization means that, for example, in a hierarchical neural network, the connection in the intermediate layer 32 is learned so that the input data supplied to the input layer 31 and the output data output from the output layer 33 are the same. This is a phenomenon in which information of data is autonomously decomposed for each neuron of the intermediate layer 32.
- the self-organizing function for example, five consecutive frames in_F0-in_F4 are given to the N input units in the input layer 31 one frame at a time.
- Each of the intermediate units in the intermediate layer 32 is set so that the five frames out_F0 ⁇ out33_F4 output from the N output units in the output layer 33 are equal to the frames in_F0 ⁇ in_F4 given to the corresponding input units.
- Machine learning is performed to update the connection weight.
- redundant information is scraped off, and self-organization occurs so that the same information is gathered to each intermediate unit of the intermediate layer 32, so that the information is a center image, motion vector information before and after, motion resolution information Is divided into four quadrants. That is, the encoder and decoder algorithms relating to the time direction Wavelet transform are combined.
- FIG. 6 is a diagram illustrating a configuration example of a combined function that performs self-organization after dimensional compression of input data.
- a first intermediate layer 32A for dimensional compression is arranged on the downstream side of the input layer 31 of the hierarchical neural network, and a second intermediate for self-organization is provided between the first intermediate layer 32A and the output layer 33.
- the intermediate layer 32B is disposed.
- Machine learning is nothing more than a least squares method.
- the least square method for example, as shown in FIG. 7, it is not possible to obtain an approximate expression with high accuracy depending on data.
- the input data F (x) is a product of analog data f (x) and discrete data g (x).
- the approximate data 82 is a result of approximating such input data 81 by the least square method.
- this example indicates that the input data 81 cannot be approximated with high accuracy because a sufficient frequency response cannot be obtained. If the approximation accuracy is poor, there is a possibility that blur, ghost, etc. appear in an image developed according to this approximation formula.
- FIG. 8 shows that the two approximate data 83 and 84 are factorized from the input data 81 shown in FIG. 7 by the self-organizing function 30a.
- the approximate data 83 is approximate data of the analog data f (x)
- the approximate data 84 is approximate data of the discrete data g (x).
- FIG. 9 is a diagram showing a configuration at the time of machine learning of a composite function.
- the machine learning module 30c into which the composite type function is plugged in has an unprocessed image 91 of 2M * 2N size and an unprocessed image 91 down-converted by an external processing device.
- An M * N size image 92 obtained by performing computation for image processing is input.
- the machine learning module 30c performs an image 93 obtained by performing the same calculation as the calculation for the image 92 performed on the image 92 on the image 91 having the 2M * 2N size by the external processing device. Is used as an educational image for machine learning.
- an algorithm for image processing is synthesized in the machine learning module 30c.
- the machine learning module 30c which has completed the machine learning, down-converts the image 94 of 2M * 2N size, which is the object of image processing, and performs operations for image processing by external conversion.
- An M * N size image 95 obtained by performing it in the processing apparatus is input.
- the machine learning module 30c outputs a 2M * 2N size image 96 image-processed by an algorithm synthesized by machine learning.
- examples of the 2M * 2N size image and the M * N size image include a 4K high-definition image and a high-definition image, but the present technology is not limited to this.
- the recursive function is a function for feeding back the output data of the machine learning module to the input layer and repeatedly performing a recursive operation.
- the recursive function can be used in combination with the above-described composite function in order to reduce the overall calculation amount.
- FIG. 11 is a diagram showing a configuration at the time of machine learning of the combined machine learning module 30d of the recursive function and the composite function.
- the machine learning module 30d includes an unprocessed image 111 of 2M * 2N size and an M * obtained by down-converting the unprocessed image 111 by an external processing device and performing an operation for image processing.
- An N size image 112 is input.
- the machine learning module 30d synthesizes an image processing algorithm for the first cycle using an image 113 obtained by performing the same image processing as the image 112 on the image 111 of the 2M * 2N size by an external processing device. Perform machine learning.
- the processed image 114 of 2M * 2N size obtained by the image processing algorithm in the first cycle during machine learning is input to the input layer.
- the unprocessed image 115 of 4M * 4N size that is the synthesis target is input to the input layer.
- an image 116 subjected to the same image processing as the image 112 is provided to the 4M * 4N size image 115 by an external processing device as an educational image to the machine learning module 30d, and a second cycle image processing algorithm is synthesized. Machine learning is performed.
- FIG. 12 is a diagram showing a configuration at the time of image processing of the combined machine learning module 30d of the recursive function and the composite function shown in FIG.
- the machine learning module 30d obtains the 2M * 2N size unprocessed image 111A to be synthesized and the unprocessed image 111A by down-converting the unprocessed image 111A by an external processing device and performing operations for image processing.
- An M * N size image 112A is input.
- the machine learning module 30 outputs a 2M * 2N size image 114A that has been subjected to image processing in accordance with the image processing algorithm of the first step synthesized by machine learning.
- This image 114 ⁇ / b> A is returned to the input layer of the machine learning module 30.
- an unprocessed image 115A of 4M * 4N size which is a synthesis target of the second step, is input to the input layer of the machine learning module 30.
- the machine learning module 30 outputs a 4M * 4N size image 117A that has been subjected to image processing in accordance with the image processing algorithm of the second step synthesized by machine learning.
- mapping algorithm an algorithm synthesized by a machine learning module represented by a neural network is a mapping algorithm. Due to the general characteristics of mapping, it is difficult to greatly increase output information relative to input information. As a countermeasure when there is not enough information for the target development in the original image, a database that accumulates past empirical rules is set up inside the machine learning module, and the past empirical rules accumulated in this database are There is a way to increase information based on it.
- FIG. 13 is a diagram showing the configuration of the machine learning module 30e into which the rule-of-thumb function 130 is plugged.
- the rule-of-thumb function 130 is built in a perceptron that is part of a hierarchical local area network.
- the heuristic accumulation type function 130 includes an address generation unit 131, a lookup table (LUT) 132 as a database, an additional information generation unit 133, and an additional information output unit 134.
- LUT lookup table
- the address generation unit 131 generates an address indicating a reference destination of the lookup table (LUT) 132 based on a signal from an upstream layer such as the input layer 31.
- the lookup table (LUT) 132 is a database in which information based on empirical rules is accumulated.
- the additional information generation unit 133 generates output information based on the reference information from the lookup table (LUT) 131.
- the additional information output unit 134 outputs the additional information generated by the additional information generation unit 133 as information added to the output information of the perceptron that synthesizes the image processing algorithm of the hierarchical local area network.
- Accumulation of information in the lookup table (LUT) 132 is performed by a control device such as a CPU in an information processing device such as a PC executing a program stored in the memory of the information processing device.
- control device writes a value equivalent to a value input to each input unit of the input layer 31 of the hierarchical neural network in each unit of the additional information generation unit 133.
- control device executes machine learning by backpropagation.
- an algorithm in which the lookup table (LUT) 132 is not involved in learning is synthesized.
- the control device selects the address value of the lookup table (LUT) 132 and the load value of the neuron constituting the additional information output unit 134, and sets the address value and the load value value.
- Machine learning is performed by a genetic algorithm using the sequence as a genetic sequence.
- a genetic algorithm is a learning algorithm that mimics the process by which a living organism adapts to the environment and evolves.
- the control device evaluates a plurality of calculation results obtained by changing the parameters stochastically and determines the top two patterns with the best results. Then, the control device repeats the same processing for these two patterns through the process of crossing and mutation of genetic information. As a result, the experience data is accumulated in the lookup table (LUT) 132.
- LUT lookup table
- the factorized function is configured by, for example, a self-organizing function or a combination of a dimension compression function and a self-organizing function.
- the polynomial function 30b is a function that synthesizes each information factorized by the previous factorization function 30a and synthesizes a polynomial algorithm by machine learning using the expected value as educational data. .
- the orthogonal control function can correct variation in the amount of information that occurs in the expanded dimension component when certain information is dimensionally expanded. More specifically, as shown in FIG. 16, the orthogonal control type function converts the input information based on teacher data of two components (A component and B component). (B component) is orthogonally decomposed and balanced by upcon processing and downcon processing.
- the image information when the image information is converted to a high frame rate, the information is dimensionally expanded in the time direction.
- the information is dimensionally expanded in the time direction.
- the imaging time in the case where the shutter is in the original image, there is an imaging time and a section where no imaging is performed. Therefore, when the center of the imaging section is set to an imaging phase of 0 degrees, The amount of information differs around 180 degrees.
- the image quality varies for each time phase, and particularly, gradation degradation and S / N degradation occur in the shutter section.
- the orthogonal control function for example, as shown in FIG. 17, orthogonally decomposes image information into a real number component centered on a phase of 0 degrees and an imaginary number component centered on a phase of ⁇ 180 degrees.
- the processing for maintaining the balance of the image between the phases is performed by the downcon processing of the real number component and the upcon processing of the imaginary number component.
- FIG. 18 is a block diagram illustrating a configuration of an image processing algorithm design apparatus according to the third embodiment of the present technology.
- This image processing algorithm design apparatus 100B is obtained by adding a debug tool 90 to the configuration of the image processing algorithm design apparatus 100A of the second embodiment.
- the debug tool 90 reads the substance (program code) of the corresponding debug function from the debug function storage unit 80 based on the information specifying the debug function described in the configuration information.
- the debug tool 90 has a debugging algorithm base, and a debugging function can be incorporated as a plug-in in the base.
- the debug tool 90 gives a control signal to the machine learning module 30 at the stage of the algorithm synthesis by machine learning, thereby responding to the control signal. Then, the machine learning module 30 synthesizes an algorithm whose behavior changes.
- debugging functions include: ⁇ Analog flow control function ⁇ Digital flow control function.
- Analog flow control function When an algorithm synthesized by machine learning, for example, a development algorithm is not as expected, there may occur a problem that the level of various image parameters such as luminance and gradation may fluctuate.
- the analog flow control function causes an analog control signal to be supplied from the debug tool 90 to the machine learning module 30 at the stage of algorithm synthesis by machine learning.
- the machine learning module synthesizes an algorithm whose behavior changes depending on When debugging the synthesized algorithm, various analog control signals are given from the debug tool 90 to the machine learning module 30. At that time, the result output from the machine learning module 30 can be used as information for debug analysis.
- FIG. 19 is a diagram showing the configuration of the analog flow control function.
- the debug tool 90 supplies analog control signals to the physical simulator 20 and the machine learning module 30.
- the physics simulator 20 changes the teacher image according to the given analog control signal and gives it to the machine learning module 30.
- the machine learning module 30 is an image processing algorithm whose behavior changes according to the analog control signal by machine learning based on the input image and the teacher image given from the physical simulator 20 and the analog control signal given from the debug tool 90. Is synthesized.
- an analog control signal is given from the debug tool 90 to the machine learning module 30.
- the digital flow control function is a function for causing the machine learning module 30 to execute machine learning separately according to conditions.
- FIG. 20 is a diagram illustrating the configuration of the digital flow control function.
- the debug tool 90 generates, for example, a binary (0, 1) digital control signal for controlling the behavior of the machine learning module 30 and supplies the digital control signal to the machine learning module 30.
- the machine learning module 30 executes machine learning on the input image and the teacher image given from the physical simulator 20 separately for each value of the digital control signal. For example, the machine learning module 30 performs machine learning of “mapping 0” when the value of the digital control signal is “0”, and machine learning of “mapping 1” when the value of the digital control signal is “1”. Accordingly, it is possible to synthesize an image processing algorithm whose behavior changes according to the value of the digital control signal.
- a digital control signal is given to the machine learning module 30 from the debug tool 90.
- Extended functions are functions that can be plugged in by user definition. Since the machine learning module 30 learns in a least-square manner, it is not suitable for a certain factorization process. Therefore, there are cases where the synthesis accuracy of the algorithm is improved by cutting out some terms from the image information in advance and separately synthesizing the algorithm.
- the machine learning module 30 can understand deeply as an object by using the extracted information and improve the accuracy of the algorithm. .
- this technique can also take the following structures.
- a plurality of learning information including an input image and a teacher image as an expected value of image processing for the input image is generated, and the generated learning information is machine-learned.
- An information processing apparatus having a control unit that supplies an image processing algorithm to a machine learning module that synthesizes the image processing algorithm.
- control unit configured to select a basic function that determines a machine learning algorithm of the machine learning module according to configuration information created in advance.
- the control unit is configured to provide a control signal for debugging for changing the behavior of the image processing algorithm as input data to the machine learning module during the machine learning.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Physiology (AREA)
- Image Analysis (AREA)
Abstract
この情報処理装置は、プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する。
Description
本技術は、画像処理の分野において、機械学習により画像処理アルゴリズムを合成する情報処理装置、情報処理方法及びプログラムに関するものである。
画像処理のためのアルゴリズムを設計する際には、実装するアルゴリズムのベースとなる数式を用いる必要がある。これに対し、ニューラルネットワークに代表される機械学習システムは、入力データと期待値による機械学習によって、目標の数式の近似式を求めることによってアルゴリズムを合成することが可能である。
例えば、特許文献1には、画像などの入力データに対応する目的特徴量を、機械学習及び遺伝的アルゴリズムを用いて計算する特徴量計算アルゴリズムを自動的に構築する仕組みが開示されている。
しかしながら、このような機械学習システムでは学習パターンの選別や機械学習の基本特性を熟知して必要十分な学習パターンを与えるなど、相応のスキルが要求されることが多い。このため、機械学習システムの特性を活かして効率的に精度の良いアルゴリズムを合成することは難しい。その他、機械学習システムでは、未解決の点が残されており、その解決策が望まれている。
以上のような事情に鑑み、本技術の目的は、機械学習システムを用いて良好に目的のアルゴリズムを合成することのできる情報処理装置、情報処理方法及び情報処理システムを提供することにある。
上記の課題を解決するために、本技術に係る第1の形態である情報処理装置は、
プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する。
プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する。
前記制御部は、予め作成された構成情報に従って、前記機械学習モジュールの機械学習アルゴリズムを決定する基本ファンクションを選択するようにように構成される。
前記制御部は、前記画像処理アルゴリズムの振る舞いを変化させるためのデバッグ用の制御信号を前記機械学習中に前記機械学習モジュールに入力データとして与えるように構成される。
前記制御部は、前記構成情報に従って、前記デバッグ用のファンクションを選択するようにように構成される。
上記の課題を解決するために、本技術に係る第2の形態である情報処理方法は、
制御部が、プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する、というものである。
制御部が、プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する、というものである。
上記の課題を解決するために、本技術に係る第3の形態であるプログラムは、
プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部としてコンピュータを機能させるプログラムである。
プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部としてコンピュータを機能させるプログラムである。
以上のように、本技術によれば、機械学習システムを用いて良好に目的のアルゴリズムを合成することができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
以下、本技術に係る実施形態を、図面を参照しながら説明する。
<第1の実施形態>
<第1の実施形態>
次に、本技術に係る第1の実施形態の情報処理装置である、画像処理アルゴリズムの設計装置について説明する。
図1は、本技術に係る第1の実施形態の画像処理アルゴリズムの設計装置の構成を示す図である。
同図に示すように、この画像処理アルゴリズムの設計装置100は、シナリオ作成部10、物理シミュレータ20および機械学習モジュール30などで構成される。
図1は、本技術に係る第1の実施形態の画像処理アルゴリズムの設計装置の構成を示す図である。
同図に示すように、この画像処理アルゴリズムの設計装置100は、シナリオ作成部10、物理シミュレータ20および機械学習モジュール30などで構成される。
[機械学習モジュール30の説明1]
機械学習モジュール30は、入力された画像(入力画像)と、この入力画像に対する画像処理の期待値としての画像(教師画像)から機械学習を行い、目標の数式の近似式を求めることによって画像処理のためのアルゴリズムを合成する。機械学習の手法には、例えば、ニューラルネットワークなどがあるが、本技術はこれに限定されない。機械学習モジュール30は、具体的には、例えば、1機以上のPC(Personal Computer)などの情報処理装置により構成される。
機械学習モジュール30は、入力された画像(入力画像)と、この入力画像に対する画像処理の期待値としての画像(教師画像)から機械学習を行い、目標の数式の近似式を求めることによって画像処理のためのアルゴリズムを合成する。機械学習の手法には、例えば、ニューラルネットワークなどがあるが、本技術はこれに限定されない。機械学習モジュール30は、具体的には、例えば、1機以上のPC(Personal Computer)などの情報処理装置により構成される。
[シナリオ作成部10の説明]
シナリオ作成部10は、機械学習のため機械学習モジュール30に与えられる入力画像と教師画像のペアで構成される学習情報を、原画像から生成するためのシナリオを高級言語によるプログラムコードで作成するシナリオ作成者の作業を支援する。シナリオ作成部10は、例えば、1機以上のPC(Personal Computer)などの情報処理装置により構成される。
シナリオ作成部10は、機械学習のため機械学習モジュール30に与えられる入力画像と教師画像のペアで構成される学習情報を、原画像から生成するためのシナリオを高級言語によるプログラムコードで作成するシナリオ作成者の作業を支援する。シナリオ作成部10は、例えば、1機以上のPC(Personal Computer)などの情報処理装置により構成される。
ここで、シナリオについて説明する。
一般的に、機械学習により精度の高いアルゴリズムを合成するためには、できるだけ多数の学習情報を機械学習モジュール30に与えて機械学習を繰り返す必要がある。しかし、画像をベースとする学習情報を人為的に多数用意することは現実的に難しく、人為的な範囲で準備された数的に制限された学習情報による機械学習では、精度の高いアルゴリズムを合成することは困難であった。
一般的に、機械学習により精度の高いアルゴリズムを合成するためには、できるだけ多数の学習情報を機械学習モジュール30に与えて機械学習を繰り返す必要がある。しかし、画像をベースとする学習情報を人為的に多数用意することは現実的に難しく、人為的な範囲で準備された数的に制限された学習情報による機械学習では、精度の高いアルゴリズムを合成することは困難であった。
本実施形態は、高級言語などによるプログラムコードによって記述されたシナリオに従って、原画像から条件の異なる学習情報を大量かつ高速に生成することができる。例えば、プログラムコードには、例えば、画像(動画)の速度、加速度、露光時間(フレームレート)などが変数として記述できる。これらの変数をインクリメントしながらfor文などのループを通じて学習情報を生成するための演算処理を繰り返すようにプログラムコードを記述すればよい。
[物理シミュレータ20の説明]
物理シミュレータ20は、学習用に用意された抽象的なパターン画像などの様々な画像(元画像)を、シナリオ作成部10によって作成されたシナリオに従って処理し、その結果を入力画像及び教師画像として得る。物理シミュレータ20は、入力画像と教師画像とのペアを学習情報として上記の機械学習モジュール30に与える。
物理シミュレータ20は、学習用に用意された抽象的なパターン画像などの様々な画像(元画像)を、シナリオ作成部10によって作成されたシナリオに従って処理し、その結果を入力画像及び教師画像として得る。物理シミュレータ20は、入力画像と教師画像とのペアを学習情報として上記の機械学習モジュール30に与える。
物理シミュレータ20は、元画像をシナリオに従って処理することによって、1つの原画像に対して多数の異なる入力画像と教師画像を生成する。さらに、物理シミュレータ20は、複数の原画像に対してシナリオに従って多数の異なる入力画像と教師画像を生成することによって、限られた数の原画像からも膨大な種類の学習情報を得ることができる。
物理シミュレータ20は、具体的には、PCなどの1機以上の情報処理装置、あるいはCPU(Central Processing Unit)などの制御部1により構成される。また、物理シミュレータ20は、メモリに格納されるプログラムをCPUが実行することによって構成される。なお、制御部1は、シナリオ作成部10を含むものであってよい。あるいは制御部1は、機械学習モジュール30を含むものであってよい。
[機械学習モジュール30の説明2]
機械学習モジュール30は、物理シミュレータ20によって生成された膨大な種類の学習情報の中から、少なくとも一部の学習情報を例えばランダムに抽出し、抽出した学習情報を用いて機械学習を行うことによって目標の画像処理アルゴリズムを生成する。機械学習モジュール30は、多数の学習情報を用いて機械学習を繰り返す。これにより機械学習モジュール30では、網羅的な学習が行われることとなり、高精度な画像処理アルゴリズムを生成することができる。
機械学習モジュール30は、物理シミュレータ20によって生成された膨大な種類の学習情報の中から、少なくとも一部の学習情報を例えばランダムに抽出し、抽出した学習情報を用いて機械学習を行うことによって目標の画像処理アルゴリズムを生成する。機械学習モジュール30は、多数の学習情報を用いて機械学習を繰り返す。これにより機械学習モジュール30では、網羅的な学習が行われることとなり、高精度な画像処理アルゴリズムを生成することができる。
[物理シミュレータ20によるシナリオ実行例]
図2は、物理シミュレータ20による学習情報の生成を説明する図である。
この例は、物理シミュレータ20が、与えられた元画像1Aに対し、シナリオに従って、フレーム期間毎に定速で回転する3フレーム分の連続画像を入力画像2として生成し、これらの入力画像2から、1番目のフレームと2番目のフレームとの中間の回転位置の画像と、2番目のフレームと3番目のフレームとの中間の回転位置の画像を、各々2倍のフレームレートの連続画像として生成する場合を示す。この2倍のフレームレートの連続画像が教師画像3となる。
図2は、物理シミュレータ20による学習情報の生成を説明する図である。
この例は、物理シミュレータ20が、与えられた元画像1Aに対し、シナリオに従って、フレーム期間毎に定速で回転する3フレーム分の連続画像を入力画像2として生成し、これらの入力画像2から、1番目のフレームと2番目のフレームとの中間の回転位置の画像と、2番目のフレームと3番目のフレームとの中間の回転位置の画像を、各々2倍のフレームレートの連続画像として生成する場合を示す。この2倍のフレームレートの連続画像が教師画像3となる。
機械学習モジュール30は、上記の入力画像2からフレーム間の動きベクトルや輝度情報などの情報を解析し、教師画像を目標として画像処理アルゴリズムを生成する。
以上のように、本実施形態では、物理シミュレータ20が高級言語などによるプログラムコードによって記述されたシナリオに従って膨大な数の網羅的な学習情報を生成し、機械学習モジュール30がこれらの学習情報をもとに機械学習を実行することによって画像処理アルゴリズムを合成する。したがって、より高品質な画像処理アルゴリズムの生成が可能となる。
<第2の実施形態>
本実施形態の画像処理アルゴリズムの設計装置は、機械学習モジュール30の機械学習アルゴリズムのベースに様々な種類のファンクションをプラグインによって組み込むことによって、機械学習アルゴリズムのカスタマイズを可能としたものである。
本実施形態の画像処理アルゴリズムの設計装置は、機械学習モジュール30の機械学習アルゴリズムのベースに様々な種類のファンクションをプラグインによって組み込むことによって、機械学習アルゴリズムのカスタマイズを可能としたものである。
図3は、本技術に係る第2の実施形態の画像処理アルゴリズムの設計装置100Aの構成を示すブロック図である。
この画像処理アルゴリズムの設計装置100Aは、第1の実施形態の画像処理アルゴリズムの設計装置100の構成に、構成情報作成部40、機械学習アルゴリズム生成部50、機械学習アルゴリズムベース格納部60およびファンクション格納部70が付加されたものである。なお、構成情報作成部40及び機械学習アルゴリズム生成部50は、物理シミュレータ20及び機械学習モジュール30とともに、CPUなどの制御部1によって構成されてもよい。
この画像処理アルゴリズムの設計装置100Aは、第1の実施形態の画像処理アルゴリズムの設計装置100の構成に、構成情報作成部40、機械学習アルゴリズム生成部50、機械学習アルゴリズムベース格納部60およびファンクション格納部70が付加されたものである。なお、構成情報作成部40及び機械学習アルゴリズム生成部50は、物理シミュレータ20及び機械学習モジュール30とともに、CPUなどの制御部1によって構成されてもよい。
機械学習アルゴリズムベース格納部60には、機械学習を行うために最低限必要なアルゴリズムである機械学習アルゴリズムのベースが格納されている。
ファンクション格納部70には、機械学習アルゴリズムのベースにプラグインのかたちで組み込まれることによって、機械学習アルゴリズムを決定する各種の基本ファンクションが保存されている。なお、基本ファンクションについては後で詳細を説明する。
機械学習アルゴリズムベース格納部60およびファンクション格納部70は具体的には情報を記憶可能なストレージデバイスで構成される。
構成情報作成部40は、構成情報作成者による機械学習アルゴリズムの構成情報を作成する作業を支援する。構成情報作成者による構成情報の作成作業は、例えばPCなどの情報処理装置を用いて行われる。構成情報には、機械学習アルゴリズムのベースにプラグインのかたちで組み込むように指定された1以上の基本ファンクションを指定する情報が記述される。
機械学習アルゴリズム生成部50は、構成情報をもとに機械学習アルゴリズムのベースに1以上の基本ファンクションをプラグインとして組み込むことによって機械学習アルゴリズムを生成する。生成された機械学習アルゴリズムは機械学習モジュール30に導入される。これにより、機械学習アルゴリズムに従って画像処理アルゴリズムの合成を行う機械学習モジュール30が得られる。
[基本ファンクションについて]
次に、以下に示す基本ファンクションについて説明する。
・次元圧縮ファンクション
・自己組織化ファンクション
・合成型ファンクション
・再帰型ファンクション
・経験則蓄積型ファンクション
・因数分解型ファンクション
・多項式型ファンクション
・直交制御型ファンクション
などがある。
なお、機械学習モジュール30は、階層型ニューラルネットワークで構成されるものとする。
次に、以下に示す基本ファンクションについて説明する。
・次元圧縮ファンクション
・自己組織化ファンクション
・合成型ファンクション
・再帰型ファンクション
・経験則蓄積型ファンクション
・因数分解型ファンクション
・多項式型ファンクション
・直交制御型ファンクション
などがある。
なお、機械学習モジュール30は、階層型ニューラルネットワークで構成されるものとする。
階層型ニューラルネットワークは、例えば、入力層、中間層、出力層の3層で構成される。各々の層は各々ニューロンに相当する複数のユニットで構成される。各々の層の複数のユニットは、上流層の各ユニットの出力と接続され、かつ下流層の各ユニットの入力と接続されている。中間層の各中間ユニットでは、各々の入力の値に対して結合荷重が付与された値が加算される。出力層の各出力ユニットの出力は教師データと比較され、その差が所定の閾値以下になるまで、すなわち機械学習が収束するまで結合荷重の値が更新される。そして機械学習が収束したときの各ユニットに与えられた荷重値のセットが機械学習結果として得られる。これにより、階層型ニューラルネットワークにおいて目標の画像処理アルゴリズムが合成されたことになる。
(次元圧縮ファンクション)
機械学習モジュール30に与える情報量が多すぎる場合、機械学習の演算量が膨大となり、機械学習の収束までに膨大な時間がかかってしまうおそれがある。そこで、画像の劣化を最小限に抑えられる程度に、機械学習モジュール30に入力された情報を圧縮してもよい。
機械学習モジュール30に与える情報量が多すぎる場合、機械学習の演算量が膨大となり、機械学習の収束までに膨大な時間がかかってしまうおそれがある。そこで、画像の劣化を最小限に抑えられる程度に、機械学習モジュール30に入力された情報を圧縮してもよい。
図4は次元圧縮ファンクションの構成を示す図である。
次元圧縮ファンクションは、階層型ニューラルネットワークにおいて、入力層31のユニット数(N)に対して中間層32のユニット数(M)を少なく設定し、出力層33のユニット数を入力層のユニット数(N)と同じに設定することによって実現される。すなわち、中間層32でデータが次元圧縮され、出力層33でデータは入力データと同じ情報量に戻される。これにより、機械学習の全体的な演算量を低減することができ、アルゴリズム合成の高速化を図ることができる。
次元圧縮ファンクションは、階層型ニューラルネットワークにおいて、入力層31のユニット数(N)に対して中間層32のユニット数(M)を少なく設定し、出力層33のユニット数を入力層のユニット数(N)と同じに設定することによって実現される。すなわち、中間層32でデータが次元圧縮され、出力層33でデータは入力データと同じ情報量に戻される。これにより、機械学習の全体的な演算量を低減することができ、アルゴリズム合成の高速化を図ることができる。
(自己組織化ファンクション)
図5は自己組織化ファンクションの例を示す図である。
図5は自己組織化ファンクションの例を示す図である。
自己組織化とは、例えば、階層型ニューラルネットワークにおいて、入力層31に与えられる入力データと出力層33より出力される出力データとが同じになるように中間層32での結合が学習されることによって、データのもつ情報が自律的に中間層32のニューロン毎に分解される現象である。
この自己組織化ファンクションの例において、例えば、入力層31におけるN個の入力ユニットには、連続した5個のフレームin_F0-in_F4が1フレームずつ与えられる。出力層33におけるN個の出力ユニットから出力される5個のフレームout_F0-out _F4が各々対応する入力ユニットに与えられたフレームin_F0-in_F4と等しくなるように、中間層32における各々の中間ユニットの結合荷重を更新する機械学習が行われる。これにより、冗長な情報が削り落とされ、同じ情報が中間層32の各々の中間ユニットに寄せ集められるように自己組織化が起こることで、情報がセンター画像、前後の動きベクトル情報、動解像度情報の4象限に分解される。すなわち、時間方向のWavelet変換に関するエンコーダとデコーダのアルゴリズムが合成される。
(次元圧縮ファンクションと自己組織化ファンクションとの併用)
画像をハイフレームレート化するアルゴリズムを生成する場合、画像が空間X-Yと時間Tの3次元であることに加えて、動きが広い周波数領域にわたることを考慮してアルゴリズムを設計する必要がある。このようなアルゴリズムを機械学習により合成するために、全体の周波数領域を区分した領域毎に機械学習を行う方法が考えられる。しかし、この方法では、全体の学習量が膨大になる。また、同じデータが複数の周波数領域の機械学習間でオーバーラップして入力されることがある。このように入力データが冗長になると機械学習の精度が低下する傾向がある。さらに、生成されたアルゴリズムによって処理された3次元画像において、特に領域間の境界付近の周波数の動きを有する画像が、領域毎に機械学習が分離して行われたことに起因して、シームレスにつながらない可能性がある。
画像をハイフレームレート化するアルゴリズムを生成する場合、画像が空間X-Yと時間Tの3次元であることに加えて、動きが広い周波数領域にわたることを考慮してアルゴリズムを設計する必要がある。このようなアルゴリズムを機械学習により合成するために、全体の周波数領域を区分した領域毎に機械学習を行う方法が考えられる。しかし、この方法では、全体の学習量が膨大になる。また、同じデータが複数の周波数領域の機械学習間でオーバーラップして入力されることがある。このように入力データが冗長になると機械学習の精度が低下する傾向がある。さらに、生成されたアルゴリズムによって処理された3次元画像において、特に領域間の境界付近の周波数の動きを有する画像が、領域毎に機械学習が分離して行われたことに起因して、シームレスにつながらない可能性がある。
このような課題に対し、入力データを次元圧縮してから自己組織化を行う方法が有効である。
図6は、入力データを次元圧縮してから自己組織化を行う併用型ファンクションの構成例を示す図である。
階層型ニューラルネットワークの入力層31の下流側に次元圧縮のための第1の中間層32Aが配置され、この第1の中間層32Aと出力層33との間に自己組織化のための第2の中間層32Bが配置される。
階層型ニューラルネットワークの入力層31の下流側に次元圧縮のための第1の中間層32Aが配置され、この第1の中間層32Aと出力層33との間に自己組織化のための第2の中間層32Bが配置される。
この階層型ニューラルネットワークでは、第1の中間層32Aでの次元圧縮によって、複数の周波数領域の機械学習間でオーバーラップしている冗長な入力データがまとめられる。そして第2の中間層32Bでの自己組織化により、アルゴリズム生成に必要な情報が分解される。これにより、アルゴリズムの合成精度を向上させることができる。
ここで、上記の仕組みによってアルゴリズムの合成精度が向上する理由を説明する。
機械学習は突き詰めると最小二乗法に過ぎない。しかし、最小二乗法では、例えば図7に示すように、データによっては精度の高い近似式を得ることはできない。図7の81は近似対象の入力データ(F(x)=f(x)*g(x))の例である。この入力データF(x)は、アナログデータf(x)と離散データg(x)の積からなる。このような入力データ81を最小二乗法により近似した結果が近似データ82である。このように、この例は、十分な周波数応答が得られないために、入力データ81は高い精度で近似できなかったことを示している。近似の精度が悪いと、この近似式に従って現像された画像にボケやゴーストなどが現れたりするおそれがある。
機械学習は突き詰めると最小二乗法に過ぎない。しかし、最小二乗法では、例えば図7に示すように、データによっては精度の高い近似式を得ることはできない。図7の81は近似対象の入力データ(F(x)=f(x)*g(x))の例である。この入力データF(x)は、アナログデータf(x)と離散データg(x)の積からなる。このような入力データ81を最小二乗法により近似した結果が近似データ82である。このように、この例は、十分な周波数応答が得られないために、入力データ81は高い精度で近似できなかったことを示している。近似の精度が悪いと、この近似式に従って現像された画像にボケやゴーストなどが現れたりするおそれがある。
これに対し、入力データと出力データとを一致させる機械学習による自己組織化は、入力データを因数分解することにあたる。図8は、図7に示した入力データ81から、自己組織化ファンクション30aによって2つの近似データ83、84が因数分解されたことを示している。ここで近似データ83はアナログデータf(x)の近似データであり、近似データ84は離散データg(x)の近似データである。このように因数分解された2つの近似データ83、84は、多項式を合成する多項式型ファンクション30bに与えられることによって多項式F(x)=f(x)*g(x)が合成される。
(合成型ファンクション)
図9は合成型ファンクションの機械学習時、図10は合成型ファンクションのデータ処理時の構成を示す図である。
図9は合成型ファンクションの機械学習時、図10は合成型ファンクションのデータ処理時の構成を示す図である。
図9に示すように、合成型ファンクションがプラグインされた機械学習モジュール30cには、2M*2Nサイズの未演算の画像91と、この未演算の画像91を外部の処理装置によってダウンコンバートして画像処理のための演算を行うことによって得たM*Nサイズの画像92が入力される。このとき、機械学習モジュール30cは、外部の処理装置によって上記2M*2Nサイズの画像91に、画像92に対して行われた画像処理のための演算と同じ演算を行うことによって得られた画像93を教育画像として用いて機械学習を行う。これにより機械学習モジュール30c内に画像処理のためのアルゴリズムが合成される。
機械学習が完了した機械学習モジュール30cは、図10に示すように、画像処理の対象である2M*2Nサイズの画像94と、この画像94をダウンコンバートして画像処理のための演算を外部の処理装置にて行うことによって得たM*Nサイズの画像95を入力する。その結果、機械学習モジュール30cから、機械学習によって合成されたアルゴリズムによって画像処理された2M*2Nサイズの画像96が出力される。
ここで、2M*2Nサイズの画像とM*Nサイズの画像としては、例えば4Kハイビジョン画像とハイビジョン画像などが挙げられるが、本技術はこれに限定されない。
なお、ここでは、M*Nサイズの演算済みの画像と2M*2Nサイズの未演算の画像を合成型ファンクションに入力する場合について説明したが、Wavelet変換の前後階層間の各画像のうち一方を演算済みの画像、他方を未演算の画像として合成型ファンクションに各々入力し、合成されたアルゴリズムによって未演算の画像を画像処理するようにしてもよい。
(再帰型ファンクション)
再帰型ファンクションは、機械学習モジュールの出力データを入力層にフィードバックして、繰り返し再帰的に演算を行うための機能である。再帰型ファンクションは、全体的な演算量を抑えるために上記の合成型ファンクションと併用することができる。
再帰型ファンクションは、機械学習モジュールの出力データを入力層にフィードバックして、繰り返し再帰的に演算を行うための機能である。再帰型ファンクションは、全体的な演算量を抑えるために上記の合成型ファンクションと併用することができる。
図11は再帰型ファンクションと合成型ファンクションの併用型の機械学習モジュール30dの機械学習時の構成を示す図である。
この機械学習モジュール30dには、2M*2Nサイズの未処理の画像111と、この未処理の画像111を外部の処理装置によってダウンコンバートして画像処理のための演算を行うことによって得たM*Nサイズの画像112が入力される。機械学習モジュール30dは、外部の処理装置によって、上記2M*2Nサイズの画像111に画像112と同じ画像処理が施された画像113を教育画像として用いて1サイクル目の画像処理アルゴリズムを合成するための機械学習を行う。
次に、機械学習中の1サイクル目の画像処理アルゴリズムによって得られた2M*2Nサイズの処理済みの画像114が入力層に入力される。この処理済みの画像114が機械学習モジュール30dの入力層に戻されたとき、合成対象である4M*4Nサイズの未処理の画像115が入力層に入力される。また、外部の処理装置によって上記4M*4Nサイズの画像115に、画像112と同じ画像処理が施された画像116が教育画像として機械学習モジュール30dに与えられ、2サイクル目の画像処理アルゴリズムを合成するための機械学習が行われる。
このように、合成型ファンクションと再帰型ファンクションを併用することによって、複数のステップに亘って画像処理を行うアルゴリズムを合成することができる。
図12は、図11に示した再帰型ファンクションと合成型ファンクションの併用型の機械学習モジュール30dの画像処理時の構成を示す図である。
機械学習モジュール30dには、合成対象である2M*2Nサイズの未処理の画像111Aと、この未処理の画像111Aを外部の処理装置によってダウンコンバートして画像処理のための演算を行うことによって得たM*Nサイズの画像112Aが入力される。機械学習により合成された1ステップ目の画像処理アルゴリズムに従って機械学習モジュール30から、画像処理された2M*2Nサイズの画像114Aが出力される。この画像114Aは、機械学習モジュール30の入力層に戻される。このとき機械学習モジュール30の入力層には、2ステップ目の合成対象である4M*4Nサイズの未処理の画像115Aが入力される。そして、機械学習により合成された2ステップ目の画像処理アルゴリズムに従って機械学習モジュール30から、画像処理された4M*4Nサイズの画像117Aが出力される。
(経験則蓄積型ファンクション)
一般にニューラルネットワークに代表される機械学習モジュールによって合成されるアルゴリズムは写像アルゴリズムである。写像の一般的な特性から、入力した情報に対して出力情報を大幅に増やすことは困難である。元画像に、目的の現像に対して十分な情報量が存在しない場合の対策として、機械学習モジュールの内部に過去の経験則を蓄積するデータベースを設け、このデータベースに蓄積された過去の経験則に基づいて情報を増やす方法がある。
一般にニューラルネットワークに代表される機械学習モジュールによって合成されるアルゴリズムは写像アルゴリズムである。写像の一般的な特性から、入力した情報に対して出力情報を大幅に増やすことは困難である。元画像に、目的の現像に対して十分な情報量が存在しない場合の対策として、機械学習モジュールの内部に過去の経験則を蓄積するデータベースを設け、このデータベースに蓄積された過去の経験則に基づいて情報を増やす方法がある。
図13は、この経験則蓄積型ファンクション130がプラグインされた機械学習モジュール30eの構成を示す図である。
経験則蓄積型ファンクション130は、階層型ローカルエリアネットワークの一部のパーセプトロンに構築される。経験則蓄積型ファンクション130は、アドレス生成部131と、データベースとしてのルックアップテーブル(LUT)132と、追加情報生成部133と、追加情報出力部134で構成される。
経験則蓄積型ファンクション130は、階層型ローカルエリアネットワークの一部のパーセプトロンに構築される。経験則蓄積型ファンクション130は、アドレス生成部131と、データベースとしてのルックアップテーブル(LUT)132と、追加情報生成部133と、追加情報出力部134で構成される。
アドレス生成部131は、入力層31などの上流層からの信号をもとにルックアップテーブル(LUT)132の参照先を示すアドレスを生成する、
ルックアップテーブル(LUT)132は、経験則に基づく情報が蓄積されるデータベースである。
追加情報生成部133は、ルックアップテーブル(LUT)131からの参照情報をもとに出力情報を生成する。
追加情報出力部134は、追加情報生成部133にて生成された追加情報を、階層型ローカルエリアネットワークの画像処理アルゴリズムを合成するパーセプトロンの出力情報に追加される情報として出力する。
次に、データベースであるルックアップテーブル(LUT)132に経験則に基づく情報を蓄積する方法を図14及び図15を用いて説明する。
このルックアップテーブル(LUT)132への情報の蓄積は、PCなどの情報処理装置におけるCPUなどの制御装置が、情報処理装置のメモリに格納されたプログラムを実行することによって行われる。
まず、制御装置は、階層型ニューラルネットワークの入力層31の各入力ユニットに入力される値と等価な値を追加情報生成部133の各ユニットに書き込む。次に、制御装置は、バックプロパゲーションによる機械学習を実行させる。これにより、ルックアップテーブル(LUT)132が学習に関与することのないアルゴリズムが合成される。
次に、制御装置は、図15に示すように、ルックアップテーブル(LUT)132のアドレスの値と追加情報出力部134を構成するニューロンの荷重値を選択し、アドレス値と荷重値の値の配列を遺伝配列として遺伝的アルゴリズムによる機械学習を実行させる。遺伝的アルゴリズムとは、生物が環境に適応して進化していく過程を工学的に模倣した学習的アルゴリズムである。
この遺伝的アルゴリズムによる機械学習において、制御装置は、パラメータを確率的に変異させることによって得た複数の演算結果を評価し、最も結果の良い上位2つのパターンを判定する。そして、制御装置は、この2つのパターンについて、遺伝情報の交叉及び突然変異のプロセスを経て、同じ処理を繰り返えす。これにより、ルックアップテーブル(LUT)132に経験データが蓄積されて行く。
(因数分解型ファンクション)
図8に示したように、因数分解型ファンクション30aは、機械学習で合成したいアルゴリズムがF(x)=f(x)*g(x)などの多項式で表される場合に、その多項式の要素である各々の項f(x)、g(x)を因数分解するファンクションである。因数分解型ファンクションは、例えば、自己組織化ファンクション、あるいは、次元圧縮ファンクションと自己組織化ファンクションとの併用により構成される。
図8に示したように、因数分解型ファンクション30aは、機械学習で合成したいアルゴリズムがF(x)=f(x)*g(x)などの多項式で表される場合に、その多項式の要素である各々の項f(x)、g(x)を因数分解するファンクションである。因数分解型ファンクションは、例えば、自己組織化ファンクション、あるいは、次元圧縮ファンクションと自己組織化ファンクションとの併用により構成される。
(多項式型ファンクション)
図8に示したように、多項式型ファンクション30bは、前段の因数分解型ファンクション30aにて因数分解された各情報を集約し、期待値を教育データとして機械学習により多項式アルゴリズムを合成するファンクションである。
図8に示したように、多項式型ファンクション30bは、前段の因数分解型ファンクション30aにて因数分解された各情報を集約し、期待値を教育データとして機械学習により多項式アルゴリズムを合成するファンクションである。
(直交制御型ファンクション)
直交制御型ファンクションは、ある情報を次元拡張した際に、拡張した次元成分内で生じる情報量のバラつきを補正することができる。直交制御型ファンクションは、より具体的には、図16に示すように、入力された情報を、2つの成分(A成分、B成分)の教師データをもとに、各々の成分(A成分、B成分)に直交分解し、アップコン処理とダウンコン処理にてバランスをとる。
直交制御型ファンクションは、ある情報を次元拡張した際に、拡張した次元成分内で生じる情報量のバラつきを補正することができる。直交制御型ファンクションは、より具体的には、図16に示すように、入力された情報を、2つの成分(A成分、B成分)の教師データをもとに、各々の成分(A成分、B成分)に直交分解し、アップコン処理とダウンコン処理にてバランスをとる。
例えば、画像情報をハイフレームレート化する場合、時間方向に情報を次元拡張することになる。このとき、元画像にシャッターが入っているようなケースでは、撮像した時間と、撮像していない区間が存在するため、撮像区間の中心を撮像位相0度としたときに、0度付近と±180度付近では情報量が異なる。このような入力画像で時間方向に次元拡張すると、時間位相ごとに画質にバラつきが生じ、特にシャッター区間では諧調の劣化やS/Nの劣化が生じる。
その問題を解消するため、直交制御型ファンクションは、例えば、図17に示すように、位相0度を中心とする実数成分と、位相±180度を中心とする虚数成分に画像情報を直交分解して、実数成分のダウンコン処理、虚数成分のアップコン処理により、位相間の画像のバランスを保つ処理を行う。
<第3の実施形態>
図18は、本技術に係る第3の実施形態の画像処理アルゴリズムの設計装置の構成を示すブロック図である。
この画像処理アルゴリズムの設計装置100Bは、第2の実施形態の画像処理アルゴリズムの設計装置100Aの構成にデバッグツール90が付加されたものである。
図18は、本技術に係る第3の実施形態の画像処理アルゴリズムの設計装置の構成を示すブロック図である。
この画像処理アルゴリズムの設計装置100Bは、第2の実施形態の画像処理アルゴリズムの設計装置100Aの構成にデバッグツール90が付加されたものである。
デバッグツール90は、構成情報に記述されたデバッグファンクションを指定する情報をもとにデバッグファンクション保存部80から該当するデバッグファンクションの実体(プログラムコード)を読み込む。デバッグツール90は、デバッグ用のアルゴリズムのベースを有し、このベースにデバッグファンクションをプラグインとして組み込むことができる。
デバッグツール90は、機械学習モジュール30にて合成された画像処理アルゴリズムのデバッグを可能とするために、機械学習によるアルゴリズム合成の段階で機械学習モジュール30に制御信号を与えることによって、制御信号に応じて振る舞いが変化するアルゴリズムを機械学習モジュール30に合成させる。
次に、デバッグ用のファンクションについて説明する。
デバッグ用のファンクションには、例えば、
・アナログフロー制御ファンクション
・デジタルフロー制御ファンクション
などがある。
デバッグ用のファンクションには、例えば、
・アナログフロー制御ファンクション
・デジタルフロー制御ファンクション
などがある。
(アナログフロー制御ファンクション)
機械学習により合成されたアルゴリズム、例えば、現像アルゴリズムが期待通りでない場合、輝度や階調など各種画像パラメータがレベル変動するような問題が起こることがある。アナログフロー制御ファンクションは、このような問題のデバッグ解析を可能とするために、機械学習によるアルゴリズム合成の段階で、デバッグツール90から機械学習モジュール30にアナログ制御信号を与えさせることによって、アナログ制御信号に応じて振る舞いが変化するアルゴリズムを機械学習モジュールに合成させる。合成されたアルゴリズムのデバッグを行うときは、デバッグツール90から機械学習モジュール30に様々なアナログ制御信号を与える。そのとき機械学習モジュール30から出力された結果をデバッグ解析のための情報として用いることができる。
機械学習により合成されたアルゴリズム、例えば、現像アルゴリズムが期待通りでない場合、輝度や階調など各種画像パラメータがレベル変動するような問題が起こることがある。アナログフロー制御ファンクションは、このような問題のデバッグ解析を可能とするために、機械学習によるアルゴリズム合成の段階で、デバッグツール90から機械学習モジュール30にアナログ制御信号を与えさせることによって、アナログ制御信号に応じて振る舞いが変化するアルゴリズムを機械学習モジュールに合成させる。合成されたアルゴリズムのデバッグを行うときは、デバッグツール90から機械学習モジュール30に様々なアナログ制御信号を与える。そのとき機械学習モジュール30から出力された結果をデバッグ解析のための情報として用いることができる。
図19は、アナログフロー制御ファンクションの構成を示す図である。
機械学習時、デバッグツール90は、物理シミュレータ20と機械学習モジュール30にアナログ制御信号を供給する。物理シミュレータ20は、与えられたアナログ制御信号に応じて教師画像を変化させ、これを機械学習モジュール30に与える。機械学習モジュール30は、物理シミュレータ20から与えられる入力画像及び教師画像と、デバッグツール90から与えられたアナログ制御信号をもとに機械学習により、アナログ制御信号に応じて振る舞いが変化する画像処理アルゴリズムを合成する。
機械学習時、デバッグツール90は、物理シミュレータ20と機械学習モジュール30にアナログ制御信号を供給する。物理シミュレータ20は、与えられたアナログ制御信号に応じて教師画像を変化させ、これを機械学習モジュール30に与える。機械学習モジュール30は、物理シミュレータ20から与えられる入力画像及び教師画像と、デバッグツール90から与えられたアナログ制御信号をもとに機械学習により、アナログ制御信号に応じて振る舞いが変化する画像処理アルゴリズムを合成する。
デバック時は、デバッグツール90からアナログ制御信号が機械学習モジュール30に与えられる。このとき機械学習モジュール30に合成された画像処理アルゴリズムの振る舞いを、例えば、外部の情報処理装置にて確認することによって、画像処理アルゴリズムのデバッグを行うことができる。
(デジタルフロー制御ファンクション)
デジタルフロー制御ファンクションは、機械学習モジュール30での機械学習を条件に応じて分けて実行させるためのファンクションである。
デジタルフロー制御ファンクションは、機械学習モジュール30での機械学習を条件に応じて分けて実行させるためのファンクションである。
図20は、デジタルフロー制御ファンクションの構成を示す図である。
機械学習時、デバッグツール90は、機械学習モジュール30の振る舞いを制御するための例えば二値(0,1)のデジタル制御信号を生成し、機械学習モジュール30に供給する。機械学習モジュール30は、デジタル制御信号の値毎に、物理シミュレータ20から与えられる入力画像及び教師画像に対する機械学習を分けて実行する。例えば、機械学習モジュール30では、デジタル制御信号の値が"0"であるとき"写像0"を機械学習し、デジタル制御信号の値が"1"であるとき"写像1"を機械学習する。これにより、デジタル制御信号の値に応じて振る舞いが変化する画像処理アルゴリズムを合成することができる。
機械学習時、デバッグツール90は、機械学習モジュール30の振る舞いを制御するための例えば二値(0,1)のデジタル制御信号を生成し、機械学習モジュール30に供給する。機械学習モジュール30は、デジタル制御信号の値毎に、物理シミュレータ20から与えられる入力画像及び教師画像に対する機械学習を分けて実行する。例えば、機械学習モジュール30では、デジタル制御信号の値が"0"であるとき"写像0"を機械学習し、デジタル制御信号の値が"1"であるとき"写像1"を機械学習する。これにより、デジタル制御信号の値に応じて振る舞いが変化する画像処理アルゴリズムを合成することができる。
デバック時は、デバッグツール90からデジタル制御信号が機械学習モジュール30に与えられる。このとき機械学習モジュール30に合成された画像処理アルゴリズムの振る舞いを、例えば、外部の情報処理装置にて確認することによって、画像処理アルゴリズムのデバッグを行うことができる。
<変形例1>
(拡張ファンクション)
拡張ファンクションは、ユーザ定義によりプラグインできるファンクションである。機械学習モジュール30は最小二乗法的に学習が進むため、ある種の因数分解の処理には不向きである。そこで、画像情報から事前に一部の項を切り出し、別途、アルゴリズムを合成しておく方がアルゴリズムの合成精度が向上するケースがある。
(拡張ファンクション)
拡張ファンクションは、ユーザ定義によりプラグインできるファンクションである。機械学習モジュール30は最小二乗法的に学習が進むため、ある種の因数分解の処理には不向きである。そこで、画像情報から事前に一部の項を切り出し、別途、アルゴリズムを合成しておく方がアルゴリズムの合成精度が向上するケースがある。
画像処理においては、必要な要素をあらかじめ抽出した分解情報を抽出することが効果的であり、これらの抽出した情報により機械学習モジュール30はオブジェクトとして深層理解し、アルゴリズムの精度を向上させることができる。
なお、本技術は以下のような構成もとることができる。
(1) プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する
情報処理装置。
(1) プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する
情報処理装置。
(2)前記(1)に記載の情報処理装置であって、
前記制御部は、予め作成された構成情報に従って、前記機械学習モジュールの機械学習アルゴリズムを決定する基本ファンクションを選択するようにように構成される
情報処理装置。
前記制御部は、予め作成された構成情報に従って、前記機械学習モジュールの機械学習アルゴリズムを決定する基本ファンクションを選択するようにように構成される
情報処理装置。
(3)前記(1)から(2)のうちいずれか1つに記載の情報処理装置であって、
前記制御部は、前記画像処理アルゴリズムの振る舞いを変化させるためのデバッグ用の制御信号を前記機械学習中に前記機械学習モジュールに入力データとして与えるように構成される
情報処理装置。
前記制御部は、前記画像処理アルゴリズムの振る舞いを変化させるためのデバッグ用の制御信号を前記機械学習中に前記機械学習モジュールに入力データとして与えるように構成される
情報処理装置。
(4)前記(3)に記載の情報処理装置であって、
前記制御部は、前記構成情報に従って、前記デバッグ用のファンクションを選択するようにように構成される
情報処理装置。
前記制御部は、前記構成情報に従って、前記デバッグ用のファンクションを選択するようにように構成される
情報処理装置。
1…制御部
10…シナリオ作成部
20…物理シミュレータ
30…機械学習モジュール
40…構成情報作成部
50…機械学習アルゴリズム生成部
60…機械学習アルゴリズムベース格納部
70…ファンクション格納部
80…デバッグファンクション保存部
100,100A,100B…画像処理アルゴリズムの設計装置
10…シナリオ作成部
20…物理シミュレータ
30…機械学習モジュール
40…構成情報作成部
50…機械学習アルゴリズム生成部
60…機械学習アルゴリズムベース格納部
70…ファンクション格納部
80…デバッグファンクション保存部
100,100A,100B…画像処理アルゴリズムの設計装置
Claims (6)
- プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部を有する
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記制御部は、予め作成された構成情報に従って、前記機械学習モジュールの機械学習アルゴリズムを決定する基本ファンクションを選択するようにように構成される
情報処理装置。 - 請求項2に記載の情報処理装置であって、
前記制御部は、前記画像処理アルゴリズムの振る舞いを変化させるためのデバッグ用の制御信号を前記機械学習中に前記機械学習モジュールに入力データとして与えるように構成される
情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記制御部は、前記構成情報に従って、前記デバッグ用のファンクションを選択するようにように構成される
情報処理装置。 - 制御部が、プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する
情報処理方法。 - プログラムコードで記述されたシナリオに従って、入力画像とこの入力画像に対する画像処理の期待値としての教師画像からなる複数の学習情報を生成し、前記生成された複数の学習情報を、機械学習により画像処理アルゴリズムを合成する機械学習モジュールに供給する制御部としてコンピュータを機能させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/512,042 US10360515B2 (en) | 2014-09-30 | 2015-08-06 | Information processing apparatus and information processing method to generate image processing algorithm based on achine learning process |
US16/446,918 US11232353B2 (en) | 2014-09-30 | 2019-06-20 | Information processing apparatus and information processing method to generate image processing algorithm based on machine learning process |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014-199949 | 2014-09-30 | ||
JP2014199949A JP2016071597A (ja) | 2014-09-30 | 2014-09-30 | 情報処理装置、情報処理方法及びプログラム |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/512,042 A-371-Of-International US10360515B2 (en) | 2014-09-30 | 2015-08-06 | Information processing apparatus and information processing method to generate image processing algorithm based on achine learning process |
US16/446,918 Continuation US11232353B2 (en) | 2014-09-30 | 2019-06-20 | Information processing apparatus and information processing method to generate image processing algorithm based on machine learning process |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016051640A1 true WO2016051640A1 (ja) | 2016-04-07 |
Family
ID=55629720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/003969 WO2016051640A1 (ja) | 2014-09-30 | 2015-08-06 | 情報処理装置、情報処理方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (2) | US10360515B2 (ja) |
JP (1) | JP2016071597A (ja) |
WO (1) | WO2016051640A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210118408A1 (en) * | 2017-01-20 | 2021-04-22 | Semiconductor Energy Laboratory Co., Ltd. | Display system and electronic device |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10460251B2 (en) * | 2015-06-19 | 2019-10-29 | Preferred Networks Inc. | Cross-domain time series data conversion apparatus, methods, and systems |
AU2017302833B2 (en) | 2016-07-29 | 2020-11-12 | Hitachi, Ltd. | Database construction system for machine-learning |
US10504004B2 (en) * | 2016-09-16 | 2019-12-10 | General Dynamics Mission Systems, Inc. | Systems and methods for deep model translation generation |
KR102098897B1 (ko) * | 2017-01-03 | 2020-04-09 | 한국전자통신연구원 | 기계학습 지식 및 자동화된 기계 학습 절차 기반의 자가 학습 시스템 |
US11273553B2 (en) * | 2017-06-05 | 2022-03-15 | Autodesk, Inc. | Adapting simulation data to real-world conditions encountered by physical processes |
JP7056345B2 (ja) * | 2018-04-18 | 2022-04-19 | 日本電信電話株式会社 | データ分析システム、方法、及びプログラム |
JP6724267B1 (ja) * | 2018-09-03 | 2020-07-15 | 株式会社Preferred Networks | 学習装置、推論装置、学習モデルの生成方法及び推論方法 |
EP3859304B1 (en) * | 2018-09-27 | 2024-09-18 | HORIBA, Ltd. | Method for generating data for particle analysis, program for generating data for particle analysis, and device for generating data for particle analysis |
CN110955541B (zh) * | 2019-12-09 | 2022-04-15 | Oppo广东移动通信有限公司 | 数据处理方法、装置、芯片、电子设备及可读存储介质 |
JP7469738B2 (ja) * | 2020-03-30 | 2024-04-17 | ブラザー工業株式会社 | 学習済みの機械学習モデル、および、画像生成装置、機械学習モデルのトレーニング方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04190461A (ja) * | 1990-11-26 | 1992-07-08 | Fujitsu Ltd | ニューラルネットワークの構築表示方法 |
JPH07160796A (ja) * | 1993-12-03 | 1995-06-23 | Victor Co Of Japan Ltd | ニューラルネットによる信号処理装置 |
JPH08153194A (ja) * | 1994-11-29 | 1996-06-11 | Hitachi Medical Corp | 画像処理装置 |
US20050100208A1 (en) * | 2003-11-10 | 2005-05-12 | University Of Chicago | Image modification and detection using massive training artificial neural networks (MTANN) |
JP2006337152A (ja) * | 2005-06-01 | 2006-12-14 | Sharp Corp | 教示用画像生成方法および装置、画像処理アルゴリズム生成方法および装置、画像検査方法および装置、プログラムならびに記録媒体 |
WO2014087652A1 (ja) * | 2012-12-06 | 2014-06-12 | 日本電気株式会社 | 画像処理装置及び画像処理方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7167583B1 (en) * | 2000-06-28 | 2007-01-23 | Landrex Technologies Co., Ltd. | Image processing system for use with inspection systems |
JP4392622B2 (ja) | 2007-10-22 | 2010-01-06 | ソニー株式会社 | 情報処理装置、情報処理方法、およびプログラム |
US8737747B2 (en) * | 2011-02-14 | 2014-05-27 | Xerox Corporation | Method for automated tire detection and recognition |
-
2014
- 2014-09-30 JP JP2014199949A patent/JP2016071597A/ja active Pending
-
2015
- 2015-08-06 WO PCT/JP2015/003969 patent/WO2016051640A1/ja active Application Filing
- 2015-08-06 US US15/512,042 patent/US10360515B2/en active Active
-
2019
- 2019-06-20 US US16/446,918 patent/US11232353B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04190461A (ja) * | 1990-11-26 | 1992-07-08 | Fujitsu Ltd | ニューラルネットワークの構築表示方法 |
JPH07160796A (ja) * | 1993-12-03 | 1995-06-23 | Victor Co Of Japan Ltd | ニューラルネットによる信号処理装置 |
JPH08153194A (ja) * | 1994-11-29 | 1996-06-11 | Hitachi Medical Corp | 画像処理装置 |
US20050100208A1 (en) * | 2003-11-10 | 2005-05-12 | University Of Chicago | Image modification and detection using massive training artificial neural networks (MTANN) |
JP2006337152A (ja) * | 2005-06-01 | 2006-12-14 | Sharp Corp | 教示用画像生成方法および装置、画像処理アルゴリズム生成方法および装置、画像検査方法および装置、プログラムならびに記録媒体 |
WO2014087652A1 (ja) * | 2012-12-06 | 2014-06-12 | 日本電気株式会社 | 画像処理装置及び画像処理方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210118408A1 (en) * | 2017-01-20 | 2021-04-22 | Semiconductor Energy Laboratory Co., Ltd. | Display system and electronic device |
US11676558B2 (en) * | 2017-01-20 | 2023-06-13 | Semiconductor Energy Laboratory Co., Ltd. | Display system and electronic device |
Also Published As
Publication number | Publication date |
---|---|
US20170344907A1 (en) | 2017-11-30 |
JP2016071597A (ja) | 2016-05-09 |
US20190303793A1 (en) | 2019-10-03 |
US10360515B2 (en) | 2019-07-23 |
US11232353B2 (en) | 2022-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016051640A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
KR102402111B1 (ko) | 콘볼루션 신경망 정방향 연산 실행용 장치와 방법 | |
Fröhlich et al. | Example‐driven deformations based on discrete shells | |
EP3454302B1 (en) | Approximating mesh deformation for character rigs | |
US10977549B2 (en) | Object animation using generative neural networks | |
JP2019032820A (ja) | 画像を入力とする関数を学習するためのデータセット | |
JP2020191096A5 (ja) | 推論方法、推論プログラム、モデル生成方法、モデル生成プログラム、推論装置及び学習装置 | |
US8831919B2 (en) | Physics-inspired up sampling for cloth simulation | |
Pan et al. | Automatic skinning and weight retargeting of articulated characters using extended position-based dynamics | |
Yang et al. | Learning to generate 3d training data through hybrid gradient | |
Huang et al. | Inverse kinematics using dynamic joint parameters: inverse kinematics animation synthesis learnt from sub-divided motion micro-segments | |
Hwang et al. | Option compatible reward inverse reinforcement learning | |
Danciu | A cnn based approach for solving a hyperbolic pde arising from a system of conservation laws-the case of the overhead crane | |
US20210110001A1 (en) | Machine learning for animatronic development and optimization | |
Woittennek et al. | On approximation and implementation of transformation based feedback laws for distributed parameter systems | |
JP7416170B2 (ja) | 学習方法、学習装置、プログラムおよび記録媒体 | |
Peng et al. | Practical consensus tracking control for networked Euler–Lagrange systems based on UDE integrated with RBF neural network | |
WO2020204093A1 (ja) | コンピュータシステム、情報処理方法、プログラム及び情報処理装置 | |
WO2021006189A1 (ja) | 画像生成装置、画像生成方法及び画像生成プログラム | |
WO2020075834A1 (ja) | シミュレーション装置、シミュレーション方法及びシミュレーションプログラム | |
WO2020110272A1 (ja) | 機械学習装置、機械学習方法、及びコンピュータ読み取り可能な記録媒体 | |
CN113077383A (zh) | 一种模型训练方法及模型训练装置 | |
Yu et al. | Decentralized multiagent reinforcement learning for efficient robotic control by coordination graphs | |
Biggs et al. | Rapid data processing pipeline development using openrtm-aist | |
Yang et al. | Learning to generate synthetic 3D training data through hybrid gradient |
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: 15846849 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15512042 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15846849 Country of ref document: EP Kind code of ref document: A1 |