KR20230002041A - Method and system of learning artificial neural network model for image processing - Google Patents
Method and system of learning artificial neural network model for image processing Download PDFInfo
- Publication number
- KR20230002041A KR20230002041A KR1020220052705A KR20220052705A KR20230002041A KR 20230002041 A KR20230002041 A KR 20230002041A KR 1020220052705 A KR1020220052705 A KR 1020220052705A KR 20220052705 A KR20220052705 A KR 20220052705A KR 20230002041 A KR20230002041 A KR 20230002041A
- Authority
- KR
- South Korea
- Prior art keywords
- neural network
- artificial neural
- image
- network model
- loss value
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 196
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000004913 activation Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 8
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000013140 knowledge distillation Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
- 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
-
- 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
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/60—Image enhancement or restoration using machine learning, e.g. neural networks
-
- 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/20081—Training; 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]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 이미지 처리를 위한 인공 신경망 모델 학습 방법 및 시스템에 관한 것으로, 보다 자세하게는 높은 사양의 서버를 거치지 않고 단말에서 적용 가능하게 경량화 된 인공 신경망 모델을 학습시키는 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for learning an artificial neural network model for image processing, and more particularly, to a method and system for learning a lightweight artificial neural network model applicable to a terminal without going through a high-spec server.
인공지능 기술이 발전함에 따라 이미지의 처리에 인공 신경망 모델을 적용하는 방법이 상용화되고 있다. As artificial intelligence technology develops, a method of applying an artificial neural network model to image processing is commercialized.
그러나 이미지 처리 기능을 수행하는 인공 신경망 모델은 일반적으로 사이즈가 클수록 성능이 우수하기 때문에 높은 사양의 컴퓨팅 리소스를 요구한다. 따라서 우수한 성능의 인공 신경망 모델은 널리 사용되는 단말에서 실행될 수 없는 단점이 있다.However, artificial neural network models that perform image processing generally require high-specification computing resources because performance is excellent as the size increases. Therefore, artificial neural network models with excellent performance have a disadvantage in that they cannot be executed in widely used terminals.
본 발명은 전술한 문제점을 해결하기 위한 것으로서, 단말에서 동작하는 우수한 성능의 경량화 된 인공 신경망 모델을 생성 및 학습시키는 것을 일 목적으로 한다.The present invention is to solve the above problems, and an object of the present invention is to create and learn a lightweight artificial neural network model with excellent performance that operates in a terminal.
또한 본 발명은 인공 신경망 모델을 경량화하기 위하여 구조를 단순화하고, 대형 인공 신경망 모델을 모방 학습시키는 과정을 제공하는 것을 일 목적으로 한다.In addition, an object of the present invention is to simplify the structure in order to lighten the artificial neural network model and to provide a process of imitating and learning a large artificial neural network model.
이러한 목적을 달성하기 위한 본 발명은 전자 장치가 이미지 처리를 위한 인공 신경망을 학습시키는 방법에 있어서, 제1 이미지 및 제2 이미지를 포함하는 트레이닝 데이터 세트를 생성하는 a 단계, 제2 이미지를 제1 인공 신경망 모델 및 제2 인공 신경망 모델에 입력하여 제3 이미지 및 제4 이미지를 각각 추출하는 b 단계, 상기 b 단계가 수행되는 동안, 제1 인공 신경망 모델 및 제2 인공 신경망 모델에 포함된 적어도 하나의 레이어의 출력 값을 기반으로 복수 개의 로스 값을 생성하여, 상기 로스 값을 기반으로 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시키는 c 단계 및 제2 인공 신경망 모델을 사용자 단말에 전송하는 c 단계를 포함하는 것을 일 특징으로 한다.The present invention for achieving this object is a method for an electronic device to learn an artificial neural network for image processing, in step a of generating a training data set including a first image and a second image, the second image as a first Step b of extracting a third image and a fourth image by inputting them to the artificial neural network model and the second artificial neural network model, respectively. While step b is being performed, at least one image included in the first artificial neural network model and the second artificial neural network model is performed. Step c of generating a plurality of loss values based on the output value of the layer of and learning a first artificial neural network model and a second artificial neural network model based on the loss value, and transmitting the second artificial neural network model to the user terminal It is characterized by including step c.
또한 본 발명은 제1 이미지 및 제2 이미지를 포함하는 트레이닝 데이터 세트를 생성하고, 제2 이미지를 제1 인공 신경망 모델 및 제2 인공 신경망 모델에 입력하여 제3 이미지 및 제4 이미지를 각각 추출하며, 제3 이미지 및 제4 이미지를 추출하는 과정에서 제1 인공 신경망 모델 및 제2 인공 신경망 모델에 포함된 적어도 하나의 레이어의 출력 값을 기반으로 복수 개의 로스 값을 생성하여, 상기 로스 값을 기반으로 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시키는 제어 모듈, 그리고 제2 인공 신경망 모델을 사용자 단말에 전송하는 통신 모듈을 포함하는 전자 장치 및 상기 전자 장치로부터 제2 인공 신경망 모델을 수신하여 사용자로부터 수신한 이미지를 처리하는 사용자 단말을 포함하는 것을 일 특징으로 한다.In addition, the present invention generates a training data set including a first image and a second image, inputs the second image to the first artificial neural network model and the second artificial neural network model, extracts the third image and the fourth image, respectively, , In the process of extracting the third image and the fourth image, a plurality of loss values are generated based on the output values of at least one layer included in the first artificial neural network model and the second artificial neural network model, and based on the loss values An electronic device including a control module for learning the first artificial neural network model and the second artificial neural network model, and a communication module for transmitting the second artificial neural network model to the user terminal, and receiving the second artificial neural network model from the electronic device It is characterized in that it includes a user terminal that processes an image received from a user.
전술한 바와 같은 본 발명에 의하면, 단말에서 동작하는 우수한 성능의 경량화 된 인공 신경망 모델을 생성 및 학습시킬 수 있는 효과가 있다.According to the present invention as described above, there is an effect of generating and learning a lightweight artificial neural network model with excellent performance that operates in a terminal.
또한 본 발명은 인공 신경망 모델을 경량화하기 위하여 구조를 단순화하고, 대형 인공 신경망 모델을 모방 학습시키는 과정을 통해 경량화 된 인공 신경망 모델의 성능을 서버에서 동작하는 대형 인공 신경망 모델의 수준으로 보장할 수 있는 효과가 있다.In addition, the present invention simplifies the structure in order to lighten the artificial neural network model and imitates the large artificial neural network model, thereby guaranteeing the performance of the lightweight artificial neural network model to the level of the large artificial neural network model operating on the server. It works.
도 1은 본 발명의 일 실시 예에 의한 이미지 처리를 위한 인공 신경망 모델을 학습시키기 위한 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시 예에 의한 이미지 처리를 위한 인공 신경망 모델의 구조를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시 예에 의한 이미지 처리를 위한 인공 신경망 모델을 학습시키는 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 일 실시 예에 의한 인공 신경망 모델의 학습 방법을 구체적으로 설명하기 위한 도면이다.1 is a diagram showing the configuration of a system for learning an artificial neural network model for image processing according to an embodiment of the present invention.
2 is a diagram for explaining the structure of an artificial neural network model for image processing according to an embodiment of the present invention.
3 is a flowchart illustrating a method of learning an artificial neural network model for image processing according to an embodiment of the present invention.
4 is a diagram for explaining in detail a learning method of an artificial neural network model according to an embodiment of the present invention.
전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다.The above objects, features and advantages will be described later in detail with reference to the accompanying drawings, and accordingly, those skilled in the art to which the present invention belongs will be able to easily implement the technical spirit of the present invention. In describing the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted.
도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용되며, 명세서 및 특허청구의 범위에 기재된 모든 조합은 임의의 방식으로 조합될 수 있다. 그리고 다른 식으로 규정하지 않는 한, 단수에 대한 언급은 하나 이상을 포함할 수 있고, 단수 표현에 대한 언급은 또한 복수 표현을 포함할 수 있음이 이해되어야 한다.In the drawings, the same reference numerals are used to indicate the same or similar elements, and all combinations described in the specification and claims may be combined in any manner. And unless otherwise specified, it should be understood that references to the singular may include one or more, and references to the singular may also include plural.
본 명세서에서 사용되는 용어는 단지 특정 예시적 실시 예들을 설명할 목적을 가지고 있으며 한정할 의도로 사용되는 것이 아니다. 본 명세서에서 사용된 바와 같은 단수적 표현들은 또한, 해당 문장에서 명확하게 달리 표시하지 않는 한, 복수의 의미를 포함하도록 의도될 수 있다. 용어 "및/또는," "그리고/또는"은 그 관련되어 나열되는 항목들의 모든 조합들 및 어느 하나를 포함한다. 용어 "포함한다", "포함하는", "포함하고 있는", "구비하는", "갖는", "가지고 있는" 등은 내포적 의미를 갖는 바, 이에 따라 이러한 용어들은 그 기재된 특징, 정수, 단계, 동작, 요소, 및/또는 컴포넌트를 특정하며, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 혹은 추가를 배제하지 않는다. 본 명세서에서 설명되는 방법의 단계들, 프로세스들, 동작들은, 구체적으로 그 수행 순서가 확정되는 경우가 아니라면, 이들의 수행을 논의된 혹은 예시된 그러한 특정 순서로 반드시 해야 하는 것으로 해석돼서는 안 된다. 추가적인 혹은 대안적인 단계들이 사용될 수 있음을 또한 이해해야 한다.Terms used herein are only for the purpose of describing specific exemplary embodiments and are not intended to be limiting. Singular expressions as used herein may also be intended to include plural meanings unless the context clearly dictates otherwise. The term “and/or,” “and/or” includes all combinations and any one of the associated listed items. The terms "comprises", "comprising", "including", "including", "having", "having" and the like are meant to be inclusive, and thus such terms shall be construed as having a recited feature, integer, Specifies steps, operations, elements, and/or components, and does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. The method steps, processes, and actions described herein should not be construed as requiring their performance in the specific order discussed or illustrated, unless such order of performance is specifically established. . It should also be understood that additional or alternative steps may be used.
또한, 각각의 구성요소는 각각 하드웨어 프로세서로 구현될 수 있고, 위 구성요소들이 통합되어 하나의 하드웨어 프로세서로 구현될 수 있으며, 또는 위 구성요소들이 서로 조합되어 복수 개의 하드웨어 프로세서로 구현될 수도 있다.In addition, each component may be implemented as a hardware processor, and the above components may be integrated and implemented as one hardware processor, or the above components may be combined with each other and implemented as a plurality of hardware processors.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시 예에 의한 이미지 처리를 위한 인공 신경망 모델을 학습시키기 위한 시스템의 블록도를 나타낸 도면이다.1 is a block diagram of a system for learning an artificial neural network model for image processing according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 인공 신경망 모델을 학습시키기 위한 시스템은 경량화 된 인공 신경망 모델을 학습시키기 위한 전자 장치(10)와 경량화 된 인공 신경망 모델을 동작하기 위한 사용자 단말(20)을 포함한다.Referring to FIG. 1, the system for learning the artificial neural network model of the present invention includes an
전자 장치(10)는 경량화 된 인공 신경망 모델을 학습시키기 위한 장치로, 제어 모듈(11), 통신 모듈(13), 저장 모듈(15)을 포함할 수 있다.The
전자 장치(10)는 대용량 인공 신경망 모델인 제1 인공 신경망 모델, 경량화 된 인공 신경망 모델인 제2 인공 신경망 모델을 구비하여, 딥러닝 모델의 지식 증류기법(Knowledge Distillation)을 통해 제2 인공 신경망 모델을 학습시켜 사용자 단말에 제공하는 것을 특징으로 한다.The
이하에서는 설명의 편의성을 위해 제1 인공 신경망 모델 및 제2 인공 신경망 모델이 노이즈 제거(image de-noising)를 목적으로 동작하는 것을 대표 실시 예로 하여 설명하며, 이 외 모자이크 제거(de-mosaics), 초해상화(super-resolution) 등과 같은 다양한 이미지 처리 기법에 적용 가능하다.Hereinafter, for convenience of description, the operation of the first artificial neural network model and the second artificial neural network model for the purpose of image de-noising will be described as a representative embodiment, and other de-mosaics, It can be applied to various image processing techniques such as super-resolution.
제어 모듈(11)은 쿼리 이미지에서 노이즈를 식별하고, 이를 제거할 수 있도록 제1 인공 신경망 모델과 제2 인공 신경망 모델을 학습시킬 수 있다.The control module 11 may train the first artificial neural network model and the second artificial neural network model to identify noise in the query image and remove it.
제어 모듈(11)은 제1 인공 신경망 모델과 제2 인공 신경망 모델을 학습시키기 위해 트레이닝 데이터 세트를 활용할 수 있다. 본 발명의 일 실시 예에 의한 트레이닝 데이터 세트는 노이즈가 존재하는 제1 쿼리 이미지와 제1 쿼리 이미지와 동일하나 노이즈가 존재하지 않는 제2 쿼리 이미지를 포함하여, 제어 모듈(11)은 제1 인공 신경망 모델 및 제2 인공 신경망 모델이 노이즈를 정확하게 식별할 수 있도록 제1 쿼리 이미지와 제2 쿼리 이미지를 이용하여 학습시킬 수 있다.The control module 11 may utilize the training data set to train the first artificial neural network model and the second artificial neural network model. The training data set according to an embodiment of the present invention includes a first query image with noise and a second query image that is the same as the first query image but without noise, and the control module 11 controls the first artificial query image. The neural network model and the second artificial neural network model may be trained using the first query image and the second query image so as to accurately identify noise.
제어 모듈(11)은 제1 인공 신경망 모델과 제2 인공 신경망 모델이 일정 수준 이상의 정확도를 갖는다고 판단하면, 제2 인공 신경망 모델이 경량화 된 인공 신경망 모델이라고 할 지라도 제1 인공 신경망 모델 대비 성능이 유사하다고 보아, 제2 인공 신경망 모델만으로도 쿼리 이미지의 노이즈를 충분히 제거할 수 있다고 판단하여, 제2 인공 신경망 모델을 사용자 단말(20)에 전송하여 쿼리 이미지의 노이즈 제거를 제공하게 할 수 있다.When the control module 11 determines that the first artificial neural network model and the second artificial neural network model have accuracy of a certain level or higher, even if the second artificial neural network model is a lightweight artificial neural network model, performance compared to the first artificial neural network model is reduced. Considering the similarity, it is determined that the noise of the query image can be sufficiently removed only with the second artificial neural network model, and the second artificial neural network model is transmitted to the
통신 모듈(13)은 제2 인공 신경망 모델을 사용자 단말(20)에 전송할 수 있다.The communication module 13 may transmit the second artificial neural network model to the
저장 모듈(15)은 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시키기 위한 복수 개의 이미지가 저장된 이미지 데이터베이스와, 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 저장하는 모델 데이터베이스를 포함할 수 있다.The storage module 15 may include an image database storing a plurality of images for training the first artificial neural network model and the second artificial neural network model, and a model database storing the first artificial neural network model and the second artificial neural network model. there is.
사용자 단말(20)은 전자 장치(10)로부터 수신한 제2 인공 신경망 모델을 이용하여 사용자로부터 수신된 쿼리 이미지에서 노이즈를 제거할 수 있으며, 구체적으로 제어 모듈(21), 통신 모듈(23), 저장 모듈(25)을 포함할 수 있다.The
제어 모듈(21)은 전자 장치(10)로부터 수신한 제2 인공 신경망 모델을 이용하여 사용자로부터 수신한 쿼리 이미지에서 노이즈를 제거할 수 있다.The control module 21 may remove noise from the query image received from the user by using the second artificial neural network model received from the
통신 모듈(23)은 사용자로부터 쿼리 이미지를 수신하고, 전자 장치(10)로부터 제2 인공 신경망 모델을 수신할 수 있다.The communication module 23 may receive a query image from a user and receive a second artificial neural network model from the
저장 모듈(25)은 제2 인공 신경망 모델을 저장할 수 있다.The storage module 25 may store the second artificial neural network model.
도 2는 본 발명의 일 실시 예에 따른 노이즈 제거를 위한 인공 신경망 모델의 구조를 설명하기 위한 도면이다. 도 2에 도시된 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)은 트레이닝 데이터 세트를 기반으로 학습될 수 있다. 도 2에 도시된 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)은 도 1에 도시된 저장 모듈(15)에 저장될 수 있고, 제어 모듈(11)에 의해 실행될 수 있다.2 is a diagram for explaining the structure of an artificial neural network model for noise removal according to an embodiment of the present invention. The first artificial neural network model 30 and the second artificial
먼저, 제어 모듈(11)은 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)를 학습시키기 위해 트레이닝 데이터 세트를 생성할 수 있다. 제어 모듈(11)은 저장 모듈(15)의 이미지 데이터베이스에 저장된 이미지를 이용하여 트레이닝 데이터 세트를 생성할 수 있다.First, the control module 11 may generate a training data set to train the first artificial neural network model 30 and the second artificial
구체적으로, 제어 모듈(11)은 이미지 데이터베이스에 저장된 이미지를 이용하여 기 설정된 크기의 제1 이미지 및 제2 이미지를 생성할 수 있다. Specifically, the control module 11 may generate a first image and a second image of a predetermined size using images stored in an image database.
제어 모듈(11)은 이미지 데이터베이스에 저장된 이미지에서 기 설정된 크기를 갖는 패치 단위의 제1 이미지를 생성하고, 제1 이미지에 임의로 노이즈를 생성하여 제2 이미지를 생성할 수 있다.The control module 11 may generate a first image of a patch unit having a predetermined size from an image stored in an image database, and may generate a second image by randomly generating noise in the first image.
제어 모듈(11)은 가우시안 노이즈 생성 알고리즘과 같은 노이즈 생성 알고리즘을 활용하여 제1 이미지에 대한 다양한 노이즈를 생성하고 제1 이미지에 더하여 제2 이미지를 생성할 수 있다.The control module 11 may generate various noises for the first image by using a noise generation algorithm such as a Gaussian noise generation algorithm, and generate a second image in addition to the first image.
제어 모듈(11)은 제1 이미지 및 제2 이미지를 기반으로 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)를 학습시킬 수 있다. 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)은 유넷(U-Net) 구조로 형성되어 있음에 따라 적어도 하나의 다운 샘플링 레이어(down-sampling layer)와 업 샘플링 레이어(up-sampling layer) 로 구성될 수 있다.The control module 11 may train the first artificial neural network model 30 and the second artificial
본 발명의 일 실시 예에 의한 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)은 유넷 구조를 통해 이미지의 미시적 및 거시적 특징을 모두 사용 가능한 것을 특징으로 한다.The first artificial neural network model 30 and the second artificial
제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)은 제1 모듈(down-path), 제2 모듈(middle-path), 제3 모듈(up-path)를 각각 포함할 수 있다. 제1 모듈은 컨볼루션 레이어와 활성화 함수(PReLU layer 혹은 ReLU layer)를 포함하는 블록과, 이미지의 크기를 축소시키는 다운샘플 모듈을 포함하고, 제2 모듈은 dense block을, 제3 모듈은 제1 모듈에서 축소된 이미지의 크기를 다시 확대시키는 업샘플 모듈과, 컨볼루션 레이어와 활성화 함수를 포함하는 블록을 포함할 수 있다.The first artificial neural network model 30 and the second artificial
제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)은 제1 모듈과 제3 모듈의 크기에 차이를 두고 있으며, 제1 모듈과 제3 모듈의 크기가 제1 인공 신경망 모델(30)보다 작은 제2 인공 신경망 모델(40)은 지식 증류기법을 통해 제1 인공 신경망 모델(30)를 모방하여 학습될 수 있다.The first artificial neural network model 30 and the second artificial
제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)의 제1 모듈(31, 41) 및 제3 모듈(36, 46)은 컨볼루션 레이어와 활성화 함수를 포함하는 블록을 복수 개 구비할 수 있다. 본 발명의 일 실시 예에 의한 제1 모듈(31, 41)은 블록을 3개 구비할 것이다. 제1 인공 신경망 모델(30)의 제1 모듈(31) 및 제3 모듈(36)과 제2 인공 신경망 모델(40)의 제1 모듈(41) 및 제3 모듈(46)은 컨볼루션 레이어의 파라미터(parameter)에 차이를 두어 그 두께를 달리 할 수 있다. 이를 통해 제2 인공 신경망 모델(40)은 제1 인공 신경망 모델(30)를 경량화 할 수 있다.The
상술한 바와 같이 본 발명의 일 실시 예에서, 제1 모듈(31, 41) 및 제3 모듈(36, 46)은 3개의 블록을 포함함에 따라, 제1 인공 신경망 모델(30)의 제1 모듈(31)은 제1 블록(32), 제2 블록(33), 제3 블록(34)를 포함하고, 제3 모듈(36)은 제4 블록(37), 제5 블록(38), 제6 블록(39)를 포함할 것이며, 제2 인공 신경망 모델(40)의 제1 모듈(41)은 제1 블록(42), 제2 블록(43), 제3 블록(44)를 포함하고, 제3 모듈(46)은 제4 블록(47), 제5 블록(48), 제6 블록(49)을 포함할 것이다.As described above, in one embodiment of the present invention, the
제2 모듈(35, 45)은 dense block을 포함할 수 있다. Dense block은 제1 모듈(31, 41)에 포함된 모든 컨볼루션 레이어의 출력 값을 순차적으로 합칠 수 있다. 예를 들어, 제1 모듈(31)에 포함된 제1 블록(32)의 컨볼루션 레이어의 출력 값이 A, 제2 블록(33)의 컨볼루션 레이어의 출력 값이 B, 제3 블록(34)의 컨볼루션 레이어의 출력 값이 C일 때, 제2 모듈(35)의 dense block은 A와 B와 C를 순차적으로 합쳐 ABC를 출력할 수 있다. The
제2 모듈(35, 45)은 dense block을 사용함으로써 각 단계의 모든 출력 값(예를 들어 피쳐 맵)을 제1 인공 신경망 모델 및 제2 인공 신경망 모델의 학습에 반영할 수 있어 제1 인공 신경망 모델 및 제2 인공 신경망 모델의 성능을 더 향상시킬 수 있다.The
이하에서는 제어 모듈(11)에 의해 제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)가 학습되는 과정을 설명한다.Hereinafter, a process of learning the first artificial neural network model 30 and the second artificial
제어 모듈(11)은 제1 인공 신경망 모델(30)에 제2 이미지를 입력 데이터로 하여 제2 이미지의 제1 노이즈를 추출한 후, 제1 노이즈가 제거된 제3 이미지를 출력할 수 있다.The control module 11 may extract the first noise of the second image by using the second image as input data to the first artificial neural network model 30 and then output a third image from which the first noise is removed.
제어 모듈(11)은 제1 인공 신경망 모델(30)에 제2 이미지가 입력되면, 제1 인공 신경망 모델(30)의 제1 모듈(31)에 포함된 제1 블록(32)의 컨볼루션 레이어의 출력 값을 제1 피쳐-1로, 제2 블록(33)의 컨볼루션 레이어의 출력 값을 제2 피쳐-1로, 제3 블록(34)의 컨볼루션 레이어의 출력 값을 제3 피쳐-1로 설정할 수 있다. 또한 제어 모듈(11)은 제1 인공 신경망 모델(30)의 제3 모듈(36)에 포함된 제4 블록(37)의 컨볼루션 레이어의 출력 값을 제4 피쳐-1로, 제5 블록(38)의 컨볼루션 레이어의 출력 값을 제5 피쳐-1로, 제6 블록(39)의 컨볼루션 레이어의 출력 값을 제6 피쳐-1로 설정할 수 있다.When the second image is input to the first artificial neural network model 30, the control module 11 performs a convolution layer of the
제어 모듈(11)은 제1 인공 신경망 모델(30)에서 제3 이미지를 추출하면, 제1 이미지와 비교하여 제1 로스 값을 연산할 수 있다.When the third image is extracted from the first artificial neural network model 30, the control module 11 compares it with the first image and calculates a first loss value.
제어 모듈(11)은 제2 인공 신경망 모델(40)에 제2 이미지를 입력 데이터로 하여 제2 이미지의 제2 노이즈를 추출한 후, 제2 노이즈가 제거된 제4 이미지를 출력할 수 있다.The control module 11 may extract the second noise of the second image by using the second image as input data to the second artificial
제어 모듈(11)은 제2 인공 신경망 모델(40)에 제2 이미지가 입력되면, 제2 인공 신경망 모델(40)의 제1 모듈(41)에 포함된 제1 블록(42)의 컨볼루션 레이어의 출력 값을 제1 피쳐-2로, 제2 블록(43)의 컨볼루션 레이어의 출력 값을 제2 피쳐-2로, 제3 블록(44)의 컨볼루션 레이어의 출력 값을 제3 피쳐-2로 설정할 수 있다. 또한 제어 모듈(11)은 제1 인공 신경망 모델(40)의 제3 모듈(46)에 포함된 제4 블록(47)의 컨볼루션 레이어의 출력 값을 제4 피쳐-2로, 제5 블록(48)의 컨볼루션 레이어의 출력 값을 제5 피쳐-2로, 제6 블록(49)의 컨볼루션 레이어의 출력 값을 제6 피쳐-2로 설정할 수 있다.When the second image is input to the second artificial
제어 모듈(11)은 제2 인공 신경망 모델(40)에서 제4 이미지를 추출하면, 제1 이미지와 비교하여 제2 로스 값을 연산할 수 있다.When the fourth image is extracted from the second artificial
또한 제어 모듈(11)은 제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)에서 각각 추출한 제1 내지 제6 피쳐를 이용하여 제3 로스 값을 더 연산할 수 있다. 구체적으로, 제어 모듈(11)은 제1 피쳐-1과 제1 피쳐-2를 비교하여 제3 로스 값-1을, 제2 피쳐-1과 제2 피쳐-2를 비교하여 제3 로스 값-2을, ..., 제6 피쳐-1과 제6 피쳐-2를 비교하여 제3 로스 값-6을 연산할 수 있다. 제3 로스 값의 수는 제1 인공 신경망 모델(30) 및 제2 인공 신경망 모델(40)에 포함된 제1 모듈(31, 41)의 블록 수에 따를 것이다.Also, the control module 11 may further calculate a third loss value by using the first to sixth features extracted from the first artificial neural network model 30 and the second artificial
제어 모듈(11)은 제3 이미지 및 제4 이미지를 비교하여 제4 로스 값을 더 연산할 수 있다.The control module 11 may further calculate a fourth loss value by comparing the third image and the fourth image.
제어 모듈(11)은 제1 로스 값 내지 제4 로스 값을 이용하여 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시킬 수 있다. 제어 모듈(11)은 제1 로스 값 내지 제4 로스 값 각각에 가중치를 부여하여 제5 로스 값을 연산할 수 있다. The control module 11 may train the first artificial neural network model and the second artificial neural network model using the first to fourth loss values. The control module 11 may calculate a fifth loss value by assigning a weight to each of the first loss value to the fourth loss value.
제어 모듈(11)은 제5 로스 값을 연산함에 있어서 제1 모듈(31, 41) 및 제3 모듈(36, 46)에 포함된 복수 개의 컨볼루션 레이어 각각의 출력 값에 대한 로스 값 즉, 제3 로스 값을 더 이용함으로써, 제2 인공 신경망 모델(40)가 제1 인공 신경망 모델(30)를 단계별로 보다 잘 모방할 수 있게 한다.In calculating the fifth loss value, the control module 11 calculates a loss value for the output values of each of the plurality of convolution layers included in the
도 3은 본 발명의 일 실시 예에 의한 이미지 처리를 위한 인공 신경망 모델을 학습시키는 방법을 설명하기 위한 순서도이다. 이하에서는 도 3을 참조하여 이미지 처리를 위한 인공 신경망 모델을 학습시키는 방법을 설명한다. 이미지 처리를 위한 인공 신경망 모델을 학습시키는 방법에 대한 설명에 있어서, 앞서 설명한 이미지 처리를 위한 인공 신경망 모델을 학습시키기 위한 시스템과 중복되는 세부 실시 예는 생략될 수 있다.3 is a flowchart illustrating a method of learning an artificial neural network model for image processing according to an embodiment of the present invention. Hereinafter, a method of learning an artificial neural network model for image processing will be described with reference to FIG. 3 . In the description of the method for learning the artificial neural network model for image processing, detailed embodiments overlapping with the system for learning the artificial neural network model for image processing described above may be omitted.
단계 100에서, 전자 장치는 트레이닝 데이터 세트를 생성할 수 있다. 전자 장치는 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시키기 위하여 이미지 데이터베이스에 저장된 이미지를 이용하여 트레이닝 데이터 세트를 생성할 수 있다.In step 100, the electronic device may generate a training data set. The electronic device may generate a training data set using images stored in an image database in order to train the first artificial neural network model and the second artificial neural network model.
구체적으로 전자 장치는 이미지 데이터베이스에 저장된 이미지를 이용하여 기 설정된 크기의 제1 이미지 및 제2 이미지를 생성할 수 있다. Specifically, the electronic device may generate a first image and a second image of a preset size using images stored in an image database.
전자 장치는 이미지 데이터베이스에 저장된 이미지에서 기 설정된 크기를 갖는 패치 단위의 제1 이미지를 생성하고, 제1 이미지에 임의로 노이즈를 추가하여 제2 이미지를 생성할 수 있다.The electronic device may generate a first image of a patch unit having a preset size from an image stored in an image database, and may randomly add noise to the first image to generate a second image.
전자 장치는 가우시안 노이즈 생성 알고리즘과 같은 노이즈 생성 알고리즘을 활용하여 제1 이미지에 대한 다양한 노이즈를 생성하고 제1 이미지에 더하여 제2 이미지를 생성할 수 있다.The electronic device may generate various noises for the first image by using a noise generation algorithm such as a Gaussian noise generation algorithm, and generate a second image in addition to the first image.
단계 200에서, 전자 장치는 제1 이미지 및 제2 이미지를 포함하는 트레이닝 데이터 세트를 기반으로 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시킬 수 있다. 본 발명의 제1 인공 신경망 모델 및 제2 인공 신경망 모델은 유넷(u-net) 구조로 형성되어 있음에 따라 적어도 하나의 풀링 레이어(pooling layer)와 언풀링 레이어(unpooling layer)로 구성될 수 있다.In step 200, the electronic device may train a first artificial neural network model and a second artificial neural network model based on a training data set including a first image and a second image. As the first artificial neural network model and the second artificial neural network model of the present invention are formed in a u-net structure, they may be composed of at least one pooling layer and an unpooling layer. .
제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)은 제1 모듈(down-path), 제2 모듈(middle-path), 제3 모듈(up-path)를 각각 포함할 수 있다. 제1 모듈은 컨볼루션 레이어와 활성화 함수를 포함하는 블록과, 이미지의 크기를 축소시키는 다운샘플 모듈을 포함하고, 제2 모듈은 dense block을, 제3 모듈은 제1 모듈에서 축소된 이미지의 크기를 다시 확대시키는 업샘플 모듈과, 컨볼루션 레이어와 활성화 함수를 포함하는 블록을 포함할 수 있다.The first artificial neural network model 30 and the second artificial
제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)의 제1 모듈(31, 41) 및 제3 모듈(36, 46)은 컨볼루션 레이어와 활성화 함수를 포함하는 블록을 복수 개 구비할 수 있다. 본 발명의 일 실시 예에 의한 제1 모듈(31, 41)은 블록을 3개 구비할 것이다. 제1 인공 신경망 모델(30)의 제1 모듈(31) 및 제3 모듈(36)과 제2 인공 신경망 모델(40)의 제1 모듈(41) 및 제3 모듈(46)은 컨볼루션 레이어의 파라미터(parameter)에 차이를 두어 그 두께를 달리 할 수 있다. 즉, 제1 인공 신경망 모델(30)와 제2 인공 신경망 모델(40)은 제1 모듈과 제3 모듈의 크기에 차이를 두고 있으며, 제1 모듈과 제3 모듈의 크기가 제1 인공 신경망 모델(30)보다 작은 제2 인공 신경망 모델(40)은 지식 증류기법을 통해 제1 인공 신경망 모델(30)를 모방하여 학습될 수 있다.The
도 4는 본 발명의 일 실시 예에 의한 제1 인공 신경망 모델 및 제2 인공 신경망 모델의 학습 방법을 구체적으로 설명하기 위한 도면이다.4 is a diagram for explaining in detail a learning method of a first artificial neural network model and a second artificial neural network model according to an embodiment of the present invention.
도 4를 참조하면, 단계 210에서, 전자 장치는 제1 인공 신경망 모델에 제2 이미지를 입력 데이터로 하여, 제2 이미지에 대한 제1 노이즈를 추출할 수 있다. 단계 210의 과정을 수행함에 있어서, 전자 장치는 제1 인공 신경망 모델(30)의 제1 모듈(31)에 포함된 제1 블록(32)의 컨볼루션 레이어의 출력 값을 제1 피쳐-1로, 제2 블록(33)의 컨볼루션 레이어의 출력 값을 제2 피쳐-1로, 제3 블록(34)의 컨볼루션 레이어의 출력 값을 제3 피쳐-1로 설정할 수 있다. 또한 제어 모듈(11)은 제1 인공 신경망 모델(30)의 제3 모듈(36)에 포함된 제4 블록(37)의 컨볼루션 레이어의 출력 값을 제4 피쳐-1로, 제5 블록(38)의 컨볼루션 레이어의 출력 값을 제5 피쳐-1로, 제6 블록(39)의 컨볼루션 레이어의 출력 값을 제6 피쳐-1로 설정할 수 있다.Referring to FIG. 4 , in step 210, the electronic device may extract the first noise of the second image by using the second image as input data to the first artificial neural network model. In performing the process of step 210, the electronic device converts the output value of the convolution layer of the
단계 220에서, 전자 장치는 제2 이미지에서 제1 노이즈를 제거한 제3 이미지를 출력할 수 있다.In step 220, the electronic device may output a third image obtained by removing the first noise from the second image.
단계 230에서, 전자 장치는 제1 이미지와 제3 이미지를 비교하여 제1 로스 값을 연산할 수 있다.In step 230, the electronic device may calculate a first loss value by comparing the first image with the third image.
단계 240에서, 전자 장치는 제2 인공 신경망 모델에 제2 이미지를 입력 데이터로 하여, 제2 이미지에 대한 제2 노이즈를 추출할 수 있다. 단계 240의 과정을 수행함에 있어서, 전자 장치는 제2 인공 신경망 모델(40)의 제1 모듈(41)에 포함된 제1 블록(42)의 컨볼루션 레이어의 출력 값을 제1 피쳐-2로, 제2 블록(43)의 컨볼루션 레이어의 출력 값을 제2 피쳐-2로, 제3 블록(44)의 컨볼루션 레이어의 출력 값을 제3 피쳐-2로 설정할 수 있다. 또한 제어 모듈(11)은 제1 인공 신경망 모델(40)의 제3 모듈(46)에 포함된 제4 블록(47)의 컨볼루션 레이어의 출력 값을 제4 피쳐-2로, 제5 블록(48)의 컨볼루션 레이어의 출력 값을 제5 피쳐-2로, 제6 블록(49)의 컨볼루션 레이어의 출력 값을 제6 피쳐-2로 설정할 수 있다.In step 240, the electronic device may extract the second noise of the second image by using the second image as input data to the second artificial neural network model. In performing the process of step 240, the electronic device converts the output value of the convolution layer of the
단계 250에서, 전자 장치는 제2 이미지에서 제2 노이즈를 제거한 제4 이미지를 출력할 수 있다.In step 250, the electronic device may output a fourth image obtained by removing the second noise from the second image.
단계 260에서, 전자 장치는 제1 이미지와 제4 이미지를 비교하여 제2 로스 값을 연산할 수 있다.In operation 260, the electronic device may calculate a second loss value by comparing the first image with the fourth image.
단계 210 내지 230과 단계 240 내지 260은 동시에 동작할 수도 있고 순차적으로 동작할 수도 있다.Steps 210 to 230 and steps 240 to 260 may operate simultaneously or sequentially.
단계 270에서, 전자 장치는 단계 210 및 단계 240에서 각각 추출한 제1 내지 제6 피쳐를 이용하여 제3 로스 값을 연산할 수 있다. 구체적으로, 전자 장치는 제1 피쳐-1과 제1 피쳐-2를 비교하여 제3 로스 값-1을, 제2 피쳐-1과 제2 피쳐-2를 비교하여 제3 로스 값-2을, ..., 제6 피쳐-1과 제6 피쳐-2를 비교하여 제3 로스 값-6을 연산할 수 있다. In step 270, the electronic device may calculate a third loss value using the first to sixth features extracted in steps 210 and 240, respectively. Specifically, the electronic device compares the first feature-1 and the first feature-2 to obtain a third loss value-1, compares the second feature-1 and the second feature-2 to obtain a third loss value-2, ..., a third loss value-6 may be calculated by comparing the sixth feature-1 and the sixth feature-2.
단계 280에서, 전자 장치는 제3 이미지 및 제4 이미지를 비교하여 제4 로스 값을 더 연산할 수 있다.In operation 280, the electronic device may further calculate a fourth loss value by comparing the third image and the fourth image.
단계 290에서, 전자 장치는 제1 로스 값 내지 제4 로스 값을 이용하여 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시킬 수 있다. 전자 장치는 제1 로스 값 내지 제4 로스 값 각각에 가중치를 부여하여 제5 로스 값을 연산할 수 있다.In step 290, the electronic device may train the first artificial neural network model and the second artificial neural network model using the first to fourth loss values. The electronic device may calculate a fifth loss value by assigning a weight to each of the first loss value to the fourth loss value.
전자 장치는 제5 로스 값을 연산함에 있어서 제1 모듈(31, 41) 및 제3 모듈(36, 46)에 포함된 복수 개의 컨볼루션 레이어 각각의 출력 값에 대 한 로스 값 즉, 제3 로스 값을 더 이용함으로써, 제2 인공 신경망 모델(40)가 제1 인공 신경망 모델(30)를 보다 잘 모방할 수 있게 한다.In calculating the fifth loss value, the electronic device calculates a loss value for the output values of each of the plurality of convolution layers included in the
다시 도 3에 대한 설명으로 복귀하면, 단계 300에서, 전자 장치는 제1 인공 신경망 모델과 제2 인공 신경망 모델에서 출력된 최종 로스 값(제5 로스 값)이 기 설정된 로스 임계 값 이하이면, 제2 인공 신경망 모델을 사용자 단말(20)에 전송할 수 있다.Returning to the description of FIG. 3 again, in
사용자 단말은 전자 장치로부터 제2 인공 신경망 모델을 수신하면, 경량화 된 제2 인공 신경망 모델을 통해 사용자에게 노이즈 제거 서비스를 제공할 수 있다.Upon receiving the second artificial neural network model from the electronic device, the user terminal may provide a noise removal service to the user through the lightweight second artificial neural network model.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.The embodiments of the present invention disclosed in the present specification and drawings are only presented as specific examples to easily explain the technical content of the present invention and help understanding of the present invention, and are not intended to limit the scope of the present invention. It is obvious to those skilled in the art that other modified examples based on the technical spirit of the present invention can be implemented in addition to the embodiments disclosed herein.
Claims (7)
제1 이미지 및 제2 이미지를 포함하는 트레이닝 데이터 세트를 획득하는 a 단계;
상기 제2 이미지를 제1 인공 신경망 모델에 입력하여 제3 이미지를 획득하고, 상기 제2 이미지를 제2 인공 신경망 모델에 입력하여 제4 이미지를 획득하는 b 단계; 및
상기 제1 인공 신경망 모델 및 상기 제2 인공 신경망 모델을 학습시키는 c 단계;를 포함하되,
상기 c 단계는,
상기 제1 이미지와 상기 제3 이미지를 비교하여 제1 로스 값을 연산하는 단계;
상기 제1 이미지와 상기 제4 이미지를 비교하여 제2 로스 값을 연산하는 단계;
상기 제1 인공 신경망 모델 및 상기 제2 인공 신경망 모델에 포함된 제1 모듈의 컨볼루션 레이어의 출력 값 각각을 비교해 제3 로스 값을 연산하는 단계;
상기 제3 이미지와 상기 제4 이미지를 비교하여 제4 로스 값을 연산하는 단계;
상기 제1 내지 제4 로스 값을 이용하여 최종 로스 값인 제5 로스 값을 연산하는 단계; 및
상기 제5 로스 값을 기반으로 상기 제1 인공 신경망 모델 및 상기 제2 인공 신경망 모델을 학습시키는 단계;를 더 포함하는,
이미지 처리를 위한 인공 신경망 학습 방법.
A method for an electronic device to learn an artificial neural network for image processing,
a step of obtaining a training data set including a first image and a second image;
b) obtaining a third image by inputting the second image to a first artificial neural network model, and acquiring a fourth image by inputting the second image to a second artificial neural network model; and
step c of learning the first artificial neural network model and the second artificial neural network model;
In step c,
calculating a first loss value by comparing the first image with the third image;
calculating a second loss value by comparing the first image with the fourth image;
calculating a third loss value by comparing output values of convolution layers of a first module included in the first artificial neural network model and the second artificial neural network model;
calculating a fourth loss value by comparing the third image with the fourth image;
calculating a fifth loss value as a final loss value using the first to fourth loss values; and
Learning the first artificial neural network model and the second artificial neural network model based on the fifth loss value; Further comprising,
An artificial neural network training method for image processing.
상기 a 단계는,
데이터베이스에 저장된 이미지를 이용하여 기 설정된 크기의 제1 이미지를 생성하는 단계; 및
제1 이미지에 임의의 노이즈를 추가하여 제2 이미지를 생성하는 단계를 더 포함하는,
이미지 처리를 위한 인공 신경망 학습 방법.
According to claim 1,
In step a,
generating a first image of a predetermined size using an image stored in a database; and
Further comprising generating a second image by adding random noise to the first image,
An artificial neural network training method for image processing.
제1 인공 신경망 모델 및 제2 인공 신경망 모델은 각각 제1 모듈, 제2 모듈, 제3 모듈을 포함하며, 제1 모듈은 컨볼루션 레이어 및 활성화 함수를 포함하는 적어도 하나의 블록 및 다운샘플 모듈을 포함하고,
제3 모듈은 컨볼루션 레이어 및 활성화 함수를 포함하는 적어도 하나의 블록 및 업샘플 모듈을 포함하되,
제1 인공 신경망 모델과 제2 인공 신경망 모델은 제1 모듈 및 제3 모듈의 크기가 상이한 것을 특징으로 하는,
이미지 처리를 위한 인공 신경망 학습 방법.
According to claim 2,
The first artificial neural network model and the second artificial neural network model include a first module, a second module, and a third module, respectively, wherein the first module includes at least one block including a convolution layer and an activation function and a downsample module. include,
The third module includes at least one block including a convolutional layer and an activation function and an upsample module,
The first artificial neural network model and the second artificial neural network model are characterized in that the first module and the third module have different sizes,
An artificial neural network training method for image processing.
상기 b 단계는,
제1 인공 신경망 모델에 제2 이미지를 입력하여 제1 노이즈를 추출하고, 제2 이미지에서 제1 노이즈를 제거하여 제3 이미지를 생성하는 단계; 및
제2 인공 신경망 모델에 제2 이미지를 입력하여 제2 노이즈를 추출하고, 제2 이미지에서 제2 노이즈를 제거하여 제4 이미지를 생성하는 단계를 더 포함하는,
이미지 처리를 위한 인공 신경망 학습 방법.
According to claim 3,
In step b,
generating a third image by inputting a second image to a first artificial neural network model, extracting a first noise, and removing the first noise from the second image; and
Further comprising generating a fourth image by inputting a second image to a second artificial neural network model, extracting a second noise, and removing the second noise from the second image,
An artificial neural network training method for image processing.
제1 로스 값 내지 제4 로스 값 각각에 가중치를 부여하여 제5 로스 값을 연산하고, 제1 인공 신경망 모델 및 제2 인공 신경망 모델을 학습시키는,
이미지 처리를 위한 인공 신경망 학습 방법.
According to claim 1,
Calculating a fifth loss value by assigning a weight to each of the first loss value to the fourth loss value, and learning the first artificial neural network model and the second artificial neural network model,
An artificial neural network training method for image processing.
상기 방법은,
상기 제5 로스 값이 기 설정된 로스 임계 값 이하이면 상기 제2 인공 신경망 모델을 사용자 단말에 전송하는 d 단계를 더 포함하는,
이미지 처리를 위한 인공 신경망 학습 방법.
According to claim 5,
The method,
Further comprising a d step of transmitting the second artificial neural network model to a user terminal when the fifth loss value is less than or equal to a preset loss threshold value.
An artificial neural network training method for image processing.
상기 제어 모듈은,
상기 제1 이미지와 상기 제3 이미지를 비교하여 제1 로스 값을 연산하고, 상기 제1 이미지와 상기 제4 이미지를 비교하여 제2 로스 값을 연산하고, 상기 제1 인공 신경망 모델 및 상기 제2 인공 신경망 모델에 포함된 제1 모듈의 컨볼루션 레이어의 출력 값 각각을 비교해 제3 로스 값을 연산하고, 상기 제3 이미지와 상기 제4 이미지를 비교하여 제4 로스 값을 연산하고, 상기 제1 내지 제4 로스 값을 이용하여 최종 로스 값인 제5 로스 값을 연산하고, 상기 제5 로스 값을 기반으로 상기 제1 인공 신경망 모델 및 상기 제2 인공 신경망 모델을 학습시키도록 구성되는,
전자 장치.Acquiring a training data set including a first image and a second image, inputting the second image to a first artificial neural network model to obtain a third image, and inputting the second image to a second artificial neural network model A control module configured to acquire a fourth image and to train the first artificial neural network model and the second artificial neural network model,
The control module,
A first loss value is calculated by comparing the first image and the third image, a second loss value is calculated by comparing the first image and the fourth image, and the first artificial neural network model and the second loss value are calculated. A third loss value is calculated by comparing each output value of the convolution layer of the first module included in the artificial neural network model, a fourth loss value is calculated by comparing the third image and the fourth image, and the first loss value is calculated. To calculate a fifth loss value, which is a final loss value, using a fourth loss value, and to learn the first artificial neural network model and the second artificial neural network model based on the fifth loss value,
electronic device.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220052705A KR20230002041A (en) | 2021-06-29 | 2022-04-28 | Method and system of learning artificial neural network model for image processing |
PCT/KR2022/008947 WO2023277448A1 (en) | 2021-06-29 | 2022-06-23 | Artificial neural network model training method and system for image processing |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210084579A KR102393761B1 (en) | 2021-06-29 | 2021-06-29 | Method and system of learning artificial neural network model for image processing |
KR1020220052705A KR20230002041A (en) | 2021-06-29 | 2022-04-28 | Method and system of learning artificial neural network model for image processing |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210084579A Division KR102393761B1 (en) | 2021-06-29 | 2021-06-29 | Method and system of learning artificial neural network model for image processing |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230002041A true KR20230002041A (en) | 2023-01-05 |
Family
ID=84706524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220052705A KR20230002041A (en) | 2021-06-29 | 2022-04-28 | Method and system of learning artificial neural network model for image processing |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20230002041A (en) |
WO (1) | WO2023277448A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102670870B1 (en) * | 2023-10-10 | 2024-05-30 | 주식회사 포바이포 | Apparatus for deep learning-based noise reduction of images |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6516025B2 (en) * | 2016-02-12 | 2019-05-22 | ソニー株式会社 | Information processing method and information processing apparatus |
KR102190103B1 (en) * | 2018-12-27 | 2020-12-11 | (주)아크릴 | Method of providing commercialization service of an artificial neural network |
KR20190119548A (en) * | 2019-10-02 | 2019-10-22 | 엘지전자 주식회사 | Method and apparatus for processing image noise |
KR20210062477A (en) * | 2019-11-21 | 2021-05-31 | 삼성전자주식회사 | Electronic apparatus and control method thereof |
KR102393761B1 (en) * | 2021-06-29 | 2022-05-04 | 주식회사 에너자이(ENERZAi) | Method and system of learning artificial neural network model for image processing |
-
2022
- 2022-04-28 KR KR1020220052705A patent/KR20230002041A/en not_active Application Discontinuation
- 2022-06-23 WO PCT/KR2022/008947 patent/WO2023277448A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102670870B1 (en) * | 2023-10-10 | 2024-05-30 | 주식회사 포바이포 | Apparatus for deep learning-based noise reduction of images |
Also Published As
Publication number | Publication date |
---|---|
WO2023277448A1 (en) | 2023-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3480741B1 (en) | Reinforcement and imitation learning for a task | |
CN109948029B (en) | Neural network self-adaptive depth Hash image searching method | |
KR102392094B1 (en) | Sequence processing using convolutional neural networks | |
RU2666631C2 (en) | Training of dnn-student by means of output distribution | |
CN110427799B (en) | Human hand depth image data enhancement method based on generation of countermeasure network | |
WO2020062911A1 (en) | Actor ensemble for continuous control | |
CN111709493B (en) | Object classification method, training device, object classification equipment and storage medium | |
EP3855388A1 (en) | Image processing device and operation method thereof | |
CN114418030A (en) | Image classification method, and training method and device of image classification model | |
DE102022121649A1 (en) | Fast retraining of fully fused neural transceiver components | |
CN110570375B (en) | Image processing method, device, electronic device and storage medium | |
KR20230002041A (en) | Method and system of learning artificial neural network model for image processing | |
KR102393761B1 (en) | Method and system of learning artificial neural network model for image processing | |
CN114781654A (en) | Federal transfer learning method, device, computer equipment and medium | |
US20220067882A1 (en) | Image processing device, computer readable recording medium, and method of processing image | |
CN113743317A (en) | License plate picture generation method, medium and equipment based on generation countermeasure network | |
CN117894038A (en) | Method and device for generating object gesture in image | |
CN117635488A (en) | Light-weight point cloud completion method combining channel pruning and channel attention | |
CN115860113B (en) | Training method and related device for self-countermeasure neural network model | |
KR102393759B1 (en) | Method and system for generating an image processing artificial nerual network model operating in a device | |
KR20220166712A (en) | Method and system for generating an image processing artificial nerual network model operating in a device | |
CN114155276A (en) | Single-target tracking method and device, electronic equipment and storage medium | |
KR20220130498A (en) | Method and apparatus for image outpainting based on deep-neural network | |
CN110533749B (en) | Dynamic texture video generation method, device, server and storage medium | |
CN116704588B (en) | Face image replacing method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |