KR102193469B1 - Computer device and method to perform image conversion - Google Patents
Computer device and method to perform image conversion Download PDFInfo
- Publication number
- KR102193469B1 KR102193469B1 KR1020190073498A KR20190073498A KR102193469B1 KR 102193469 B1 KR102193469 B1 KR 102193469B1 KR 1020190073498 A KR1020190073498 A KR 1020190073498A KR 20190073498 A KR20190073498 A KR 20190073498A KR 102193469 B1 KR102193469 B1 KR 102193469B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- convolutional neural
- neural network
- target object
- convolutional
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 31
- 238000006243 chemical reaction Methods 0.000 title description 40
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 125
- 230000004044 response Effects 0.000 claims abstract description 42
- 230000015654 memory Effects 0.000 claims description 34
- 230000001131 transforming effect Effects 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 11
- 238000005070 sampling Methods 0.000 description 36
- 238000004891 communication Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 18
- 102100033695 Anaphase-promoting complex subunit 13 Human genes 0.000 description 10
- 101000733832 Homo sapiens Anaphase-promoting complex subunit 13 Proteins 0.000 description 10
- 101000869912 Cerastes vipera Disintegrin CV-11-alpha Proteins 0.000 description 9
- 102100037224 Noncompact myelin-associated protein Human genes 0.000 description 7
- 101710184695 Noncompact myelin-associated protein Proteins 0.000 description 7
- 238000011176 pooling Methods 0.000 description 6
- 101150033495 SWM2 gene Proteins 0.000 description 4
- 101100455527 Schizosaccharomyces pombe (strain 972 / ATCC 24843) lsd2 gene Proteins 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 101001005165 Bos taurus Lens fiber membrane intrinsic protein Proteins 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000011218 segmentation Effects 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/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
-
- 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 an electronic device, and more particularly, to a computer device and method for performing image conversion.
소스 이미지의 일부 정보는 포함하되 다른 특징(혹은 스타일)을 갖는 변환 이미지에 대한 수요가 증가하면서, 이미지 필터링에 대한 다양한 방법들이 개발되고 있다. 기존의 방법들은 다양한 이미지 필터링들을 통해 하나의 소스 이미지로부터 다양한 변환 이미지들을 제공할 수 있다는 장점을 가지나, 소스 이미지 자체에 대한 수정은 어렵다는 한계를 가진다.As the demand for a converted image including some information of a source image but having a different characteristic (or style) increases, various methods for image filtering are being developed. Existing methods have the advantage of providing various converted images from one source image through various image filtering, but have a limitation in that it is difficult to modify the source image itself.
한편, 딥러닝(deep learning)은 머신러닝의 한 분야로 데이터를 컴퓨터가 처리 가능한 형태인 행렬 형태로 변환하고 이를 인공신경망으로 학습하는 모델을 구축하는 연구를 포함한다. 이러한 딥러닝은 뉴런과 같은 신경과학에서 영감을 얻어 만들어진 인공신경망에 기반을 두고 있으며, 인간의 인식방식과 유사하게 여러 층의 계층적 구조로 이루어져 있다.On the other hand, deep learning is a field of machine learning that involves converting data into a matrix form that can be processed by a computer and building a model that learns it with an artificial neural network. This deep learning is based on an artificial neural network created with inspiration from neuroscience such as neurons, and is composed of several layers of hierarchical structure similar to human recognition methods.
위 기재된 내용은 오직 본 발명의 기술적 사상들에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.The above-described content is only intended to aid in understanding the background art of the technical idea of the present invention, and therefore it cannot be understood as the content corresponding to the prior art known to those skilled in the art.
본 발명의 실시 예들은 다양한 이미지들 내에 포함된 오브젝트들 중 사용자에 의해 선택된 오브젝트를 사용자에 의해 선택된 이미지의 특징을 갖도록 변환할 수 있는 컴퓨터 장치 및 방법을 제공하기 위한 것이다.Embodiments of the present invention provide a computer device and method capable of converting an object selected by a user among objects included in various images to have characteristics of an image selected by the user.
본 발명의 실시 예에 따른 컴퓨터 장치는, 적어도 하나의 프로세서; 상기 적어도 하나의 프로세서의 제어에 응답하여 동작하는 디스플레이 장치; 및 제 1 이미지 및 제 2 이미지를 저장하되, 상기 적어도 하나의 프로세서의 제어에 응답하여 동작하는 메모리를 포함하되, 상기 적어도 하나의 프로세서는, 상기 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하고, 상기 타겟 오브젝트를 상기 제 2 이미지의 일부에 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하고, 제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하고, 상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이한다.A computer device according to an embodiment of the present invention includes at least one processor; A display device operating in response to the control of the at least one processor; And a memory for storing the first image and the second image, the memory operating in response to the control of the at least one processor, wherein the at least one processor is configured to perform a response to a first user input for selecting the first image. Detecting at least one target object from the first image, and displaying the target object overlapping the part of the second image in response to a second user input that overlaps the target object with a part of the second image Displaying on a device, and processing the overlapped target object and the second image through a plurality of convolutional neural networks in response to a third user input to convert the overlapped target object in association with the second image, wherein the Each of the plurality of convolutional neural network networks includes a plurality of convolutional encoder layers and at least one convolutional decoder layer, and the transformed target object overlapped with the part of the second image is displayed as a third image. Display on the device.
상기 복수의 컨볼루션 신경망 네트워크들은 순차적인 스테이지들로서 제공될 수 있다.The plurality of convolutional neural networks may be provided as sequential stages.
상기 복수의 컨볼루션 신경망 네트워크들은 서로 다른 수의 컨볼루션 인코더 레이어들을 가질 수 있다.The plurality of convolutional neural network networks may have different numbers of convolutional encoder layers.
상기 복수의 컨볼루션 신경망 네트워크들은 제 1 컨볼루션 신경망 네트워크 및 제 2 컨볼루션 신경망 네트워크를 포함하고, 상기 적어도 하나의 프로세서는, 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크에 입력시켜 상기 제 1 컨볼루션 신경망 네트워크로부터 제 4 이미지를 획득하고, 상기 제 4 이미지 및 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크에 입력시켜 상기 제 2 컨볼루션 신경망 네트워크로부터 상기 제 3 이미지를 획득할 수 있다.The plurality of convolutional neural network networks includes a first convolutional neural network network and a second convolutional neural network network, and the at least one processor includes the overlapped target object and the second image as the first convolutional neural network network. To obtain a fourth image from the first convolutional neural network network, and input the fourth image and the second image to the second convolutional neural network network to obtain the third image from the second convolutional neural network network Can be obtained.
상기 적어도 하나의 프로세서는, 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들에 통과시켜 제 1 특징 맵들을 생성하고, 상기 오버랩된 타겟 오브젝트를 상기 제 1 컨볼루션 신경망 네트워크의 상기 컨볼루션 인코더 레이어들에 통과시켜 제 2 특징 맵들을 생성하고, 상기 제 2 특징 맵들의 적어도 일부에 상기 제 1 특징 맵들을 반영하여 제 1 스왑(swap) 맵들을 획득하고, 상기 제 1 스왑 맵들을 상기 제 1 컨볼루션 신경망 네트워크의 적어도 하나의 컨볼루션 디코더 레이어에 통과시켜 상기 제 4 이미지를 획득할 수 있다.The at least one processor generates first feature maps by passing the second image through convolutional encoder layers of the first convolutional neural network, and the overlapped target object of the first convolutional neural network network. Passing through the convolutional encoder layers to generate second feature maps, reflecting the first feature maps in at least a portion of the second feature maps to obtain first swap maps, and the first swap map The fourth image may be obtained by passing them through at least one convolutional decoder layer of the first convolutional neural network network.
상기 적어도 하나의 프로세서는, 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들에 통과시켜 제 3 특징 맵들을 생성하고, 상기 제 4 이미지를 상기 제 2 컨볼루션 신경망 네트워크의 상기 컨볼루션 인코더 레이어들에 통과시켜 제 4 특징 맵들을 생성하고, 상기 제 4 특징 맵들의 적어도 일부에 상기 제 3 특징 맵들을 반영하여 제 2 스왑 맵들을 획득하고, 상기 제 2 스왑 맵들을 상기 제 2 컨볼루션 신경망 네트워크의 적어도 하나의 컨볼루션 디코더 레이어에 통과시켜 상기 제 3 이미지를 획득할 수 있다.The at least one processor generates third feature maps by passing the second image through convolutional encoder layers of the second convolutional neural network network, and transmitting the fourth image to the second convolutional neural network network. Passing through convolutional encoder layers to generate fourth feature maps, reflecting the third feature maps in at least a portion of the fourth feature maps to obtain second swap maps, and converting the second swap maps to the second The third image may be obtained by passing through at least one convolutional decoder layer of the convolutional neural network network.
상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많을 수 있다.The number of convolutional encoder layers of the first convolutional neural network network may be greater than the number of convolutional encoder layers of the second convolutional neural network network.
상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많을 수 있다.The number of convolutional encoder layers of the second convolutional neural network network may be greater than the number of convolutional encoder layers of the first convolutional neural network.
본 발명의 다른 일면은 디스플레이 장치를 포함하는 컴퓨터 장치의 동작 방법에 관한 것이다. 상기 동작 방법은, 제 1 이미지 및 제 2 이미지를 저장하는 단계; 상기 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하는 단계; 상기 타겟 오브젝트를 상기 제 2 이미지의 일부에 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하는 단계; 제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하는, 단계; 및 상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이하는 단계를 포함한다.Another aspect of the present invention relates to a method of operating a computer device including a display device. The operating method includes storing a first image and a second image; Detecting at least one target object from the first image in response to a first user input selecting the first image; Displaying the target object overlapping the part of the second image on the display device in response to a second user input overlapping the target object with a part of the second image; In response to a third user input, the overlapped target object and the second image are processed through a plurality of convolutional neural network networks to convert the overlapped target object in association with the second image, and the plurality of convolutional neural networks Each of the networks comprising a plurality of convolutional encoder layers and at least one convolutional decoder layer; And displaying the converted target object overlapping the part of the second image as a third image on the display device.
상기 복수의 컨볼루션 신경망 네트워크들은 순차적인 스테이지들로서 제공될 수 있다.The plurality of convolutional neural networks may be provided as sequential stages.
상기 복수의 컨볼루션 신경망 네트워크들은 서로 다른 수의 컨볼루션 인코더 레이어들을 가질 수 있다.The plurality of convolutional neural network networks may have different numbers of convolutional encoder layers.
상기 복수의 컨볼루션 신경망 네트워크들은 제 1 컨볼루션 신경망 네트워크 및 제 2 컨볼루션 신경망 네트워크를 포함하고, 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하는 단계는, 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크에 입력시켜 상기 제 1 컨볼루션 신경망 네트워크로부터 제 4 이미지를 획득하고, 상기 제 4 이미지 및 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크에 입력시켜 상기 제 2 컨볼루션 신경망 네트워크로부터 상기 제 3 이미지를 획득할 수 있다.The plurality of convolutional neural network networks includes a first convolutional neural network network and a second convolutional neural network network, and converting the overlapped target object in association with the second image includes the overlapped target object and the second image. By inputting a second image to the first convolutional neural network network to obtain a fourth image from the first convolutional neural network network, and inputting the fourth image and the second image to the second convolutional neural network network The third image may be obtained from the second convolutional neural network.
상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많을 수 있다.The number of convolutional encoder layers of the first convolutional neural network network may be greater than the number of convolutional encoder layers of the second convolutional neural network network.
상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많을 수 있다.The number of convolutional encoder layers of the second convolutional neural network network may be greater than the number of convolutional encoder layers of the first convolutional neural network.
본 발명의 또 다른 일면은 프로그램을 저장하는, 컴퓨터에 의해 판독 가능한 저장 매체에 관한 것이다. 상기 프로그램은 상기 컴퓨터에 의해 실행될 때, 상기 컴퓨터에 저장된 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하고, 상기 디스플레이 장치에 디스플레이된 제 2 이미지의 일부에 상기 타겟 오브젝트를 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하고, 제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하고, 상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이하는 명령어들을 포함한다.Another aspect of the present invention relates to a storage medium readable by a computer storing a program. The program, when executed by the computer, detects at least one target object from the first image in response to a first user input selecting a first image stored in the computer, and a second image displayed on the display device In response to a second user input overlapping the target object on a part of, the target object overlapped with the part of the second image is displayed on the display device, and in response to a third user input, the overlapped target object and By processing the second image through a plurality of convolutional neural network networks, the overlapped target object is converted in association with the second image, wherein each of the plurality of convolutional neural network networks includes a plurality of convolutional encoder layers and at least It includes one convolution decoder layer, and includes instructions for displaying the transformed target object overlapped with the part of the second image as a third image on the display device.
본 발명의 실시 예들에 따른 컴퓨터 장치 및 방법은 사용자에 의해 선택된 오브젝트를 사용자에 의해 선택된 이미지의 특징을 갖도록 변환함으로써, 선택된 이미지에 변환 오브젝트가 합성되어 있는 출력 이미지를 제공할 수 있다. 예를 들면, 사용자는 본 발명의 실시 예들에 따른 컴퓨터 장치 및 방법을 통해 오브젝트들 및 이미지들을 조합하여 다양한 출력 이미지들을 생성할 수 있다.The computer apparatus and method according to embodiments of the present invention may provide an output image in which the transform object is synthesized with the selected image by converting an object selected by the user to have characteristics of the image selected by the user. For example, a user may generate various output images by combining objects and images through a computer device and method according to embodiments of the present invention.
도 1은 본 발명의 실시 예에 따른 컴퓨터 장치를 보여주는 블록도이다.
도 2는 도 1의 컴퓨터 장치의 동작 방법을 보여주는 순서도이다.
도 3은 컴퓨터 장치에 디스플레이되는 기준 이미지의 일 예를 보여주는 도면이다.
도 4는 컴퓨터 장치에 디스플레이되는 타겟 이미지의 일 예를 보여주는 도면이다.
도 5는 기준 이미지에 오버랩된 타겟 오브젝트의 일 예를 보여주는 도면이다.
도 6은 기준 이미지 및 오버랩된 타겟 오브젝트를 프로세싱하여 생성된 변환 이미지의 일 예를 보여주는 도면이다.
도 7은 도 1의 컨볼루션 신경망 네트워크 그룹의 실시 예를 보여주는 블록도이다.
도 8 및 도 9는 도 7의 제 1 및 제 2 컨볼루션 신경망 네트워크들의 실시 예들을 보여주는 블록도들이다.
도 10은 도 2의 S140단계의 실시 예를 보여주는 순서도이다.
도 11은 도 1의 컴퓨터 장치의 다른 실시 예를 보여주는 블록도이다.
도 12는 도 11의 컴퓨터 장치와 통신할 수 있는 클라이언트 서버를 보여주는 블록도이다.1 is a block diagram showing a computer device according to an embodiment of the present invention.
2 is a flow chart illustrating a method of operating the computer device of FIG. 1.
3 is a diagram illustrating an example of a reference image displayed on a computer device.
4 is a diagram illustrating an example of a target image displayed on a computer device.
5 is a diagram illustrating an example of a target object overlapping a reference image.
6 is a diagram illustrating an example of a converted image generated by processing a reference image and an overlapped target object.
7 is a block diagram illustrating an embodiment of the convolutional neural network group of FIG. 1.
8 and 9 are block diagrams illustrating embodiments of the first and second convolutional neural networks of FIG. 7.
10 is a flowchart showing an embodiment of step S140 of FIG. 2.
11 is a block diagram showing another embodiment of the computer device of FIG. 1.
12 is a block diagram illustrating a client server capable of communicating with the computer device of FIG. 11.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 모호하지 않도록 하기 위해 생략될 것이라는 것을 유의하여야 한다. 또한 본 발명은 여기에서 설명되는 실시 예에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 여기에서 설명되는 실시 예는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, it should be noted that only parts necessary to understand the operation according to the present invention will be described, and descriptions of other parts will be omitted so as not to obscure the subject matter of the present invention. In addition, the present invention is not limited to the embodiments described herein and may be embodied in other forms. However, the embodiments described herein are provided to explain in detail enough to be able to easily implement the technical idea of the present invention to those of ordinary skill in the art.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 여기에서 사용된 용어는 특정한 실시예들을 설명하기 위한 것이며 본 발명을 한정하기 위한 것이 아니다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. "X, Y, 및 Z 중 적어도 어느 하나", 그리고 "X, Y, 및 Z로 구성된 그룹으로부터 선택된 적어도 어느 하나"는 X 하나, Y 하나, Z 하나, 또는 X, Y, 및 Z 중 둘 또는 그 이상의 어떤 조합 (예를 들면, XYZ, XYY, YZ, ZZ) 으로 해석될 수 있다. 여기에서, "및/또는"은 해당 구성들 중 하나 또는 그 이상의 모든 조합을 포함한다.Throughout the specification, when a part is said to be "connected" with another part, this includes not only "directly connected" but also "indirectly connected" with another element interposed therebetween. . The terms used herein are for describing specific embodiments and not for limiting the present invention. Throughout the specification, when a part "includes" a certain component, it means that other components may be further included rather than excluding other components unless otherwise stated. "At least any one of X, Y, and Z", and "at least any one selected from the group consisting of X, Y, and Z" means X one, Y one, Z one, or two of X, Y, and Z, or Any combination beyond that (eg, XYZ, XYY, YZ, ZZ) can be interpreted. Herein, “and/or” includes all combinations of one or more of the constituents.
도 1은 본 발명의 실시 예에 따른 컴퓨터 장치를 보여주는 블록도이다.1 is a block diagram showing a computer device according to an embodiment of the present invention.
도 1을 참조하면, 컴퓨터 장치(100)는 통신기(105), 사용자 인터페이스(110), A/V(Audio/Video) 입력기(120), 디스플레이 장치(130), 메모리(140), 불휘발성 저장 매체(150), 및 이미지 변환 장치(160)를 포함할 수 있다.Referring to FIG. 1, the
통신기(105)는 이미지 변환 장치(160)의 제어에 응답하여 네트워크를 통해 외부 장치와 통신할 수 있다. 통신기(105)는 외부 장치로부터 이미지를 수신할 수 있으며, 수신된 이미지는 메모리(140) 및/또는 불휘발성 저장 매체(150)에 저장되거나, 디스플레이 장치(130)에 디스플레이될 수 있다.The
사용자 인터페이스(110)는 컴퓨터 장치(100)의 동작을 제어하기 위한 사용자 입력들을 수신하며, 수신된 사용자 입력들을 이미지 변환 장치(160)에 제공할 수 있다. 사용자 인터페이스(110)는 키 패드(key pad), 돔 스위치(dome switch), 터치 패드(정압/정전), 조그 휠, 조그 스위치, 핑거 마우스 등을 포함할 수 있다. 특히, 터치 패드가 디스플레이(130)와 일체로 형성되는 경우, 이를 터치 스크린이라 부를 수 있다. 이러한 경우, 사용자 인터페이스(110)는 디스플레이(130)에 의해 시각화될 수 있다.The
A/V 입력기(120)는 오디오 신호 및 비디오 신호의 입력을 위한 것으로, 카메라를 포함할 수 있다. A/V 입력기(120)에 의해 촬영된 이미지는 메모리(140) 및/또는 불휘발성 저장 매체(150)에 저장되거나, 디스플레이 장치(130)에 디스플레이될 수 있다.The A/
디스플레이 장치(130)는 컴퓨터 장치(100)에서 처리되는 정보를 디스플레이한다. 디스플레이 장치(130)는 이미지 변환 장치(160)의 제어에 응답하여 동작할 수 있다. 디스플레이 장치(130)는 이미지를 포함하는 그래픽 인터페이스를 디스플레이할 수 있다. 디스플레이(130)가 터치 패드와 일체로 형성되어 터치 스크린을 구성하는 경우, 디스플레이(130)는 사용자 인터페이스를 디스플레이할 수 있다.The
메모리(140)는 이미지 변환 장치(160)의 제어에 응답하여 동작하며, 이미지 변환 장치(160)를 위한 버퍼 메모리로서 제공될 수 있다. 이러한 경우, 이미지 변환 장치(160)는 복수의 이미지들을 메모리(140)에 로드할 수 있으며, 로드된 이미지들 중 적어도 일부를 디스플레이 장치(130)에 디스플레이할 수 있다. 예를 들면, 위 복수의 이미지들은 통신기(105), A/V 입력기(120), 혹은 불휘발성 저장 매체(150)로부터 로드될 수 있다. 실시 예들에서, 메모리(140)는 램(Random Access Memory, RAM)과 같은 상대적으로 빠른 읽기 및 쓰기 속도를 제공하는 메모리들 중 어느 하나를 포함할 수 있다.The
이미지 변환 장치(160)는 사용자 인터페이스(110)를 통해 수신되는 사용자 입력들에 응답하여 동작할 수 있다. 이미지 변환 장치(160)는 사용자 입력들에 응답하여 통신기(105), A/V 입력기(120), 디스플레이 장치(130), 메모리(140), 및 불휘발성 저장 매체(150)를 제어할 수 있다. 이미지 변환 장치(160)는 사용자 입력들에 의해 선택된 이미지들을 프로세싱하여 변환 이미지(CIMG)를 생성할 수 있다.The
이미지 변환 장치(160)는 제어부(161), 이미지 뷰어(162), 오브젝트 감지기(163), 및 컨볼루션 신경망 네트워크(Convolutional Neural Network: CNN) 그룹(164)를 포함할 수 있다.The
제어부(161)는 이미지 뷰어(162), 오브젝트 감지기(163), 및 컨볼루션 신경망 네트워크 그룹(164)를 제어하도록 구성된다. 제어부(161)는 메모리(140)에 복수의 이미지들을 로드할 수 있으며, 로드된 이미지들 중 적어도 일부를 이미지 뷰어(162)를 통해 디스플레이 장치(130)에 디스플레이할 수 있다. 즉, 이미지 뷰어(162)는 이미지를 포함하는 그래픽 인터페이스를 제공할 수 있다.The
제어부(161)는 사용자 입력에 의해 선택된 관심 이미지를 오브젝트 감지기(163)에 제공할 수 있다. 오브젝트 감지기(163)는 관심 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하도록 구성된다. 실시 예들에서, 오브젝트 감지기(163)는 타겟 오브젝트의 감지를 위해, 인스턴스 분할(instance segmentation)과 같은 다양한 알고리즘들을 포함하는 신경망 네트워크를 채용할 수 있다.The
제어부(161)는 감지된 타겟 오브젝트를 이미지 뷰어(162)를 통해 디스플레이 장치(130)에 디스플레이할 수 있다. 이에 따라, 사용자 입력에 의해 감지된 타겟 오브젝트들 중 하나가 선택될 수 있다.The
또한, 제어부(161)는 선택된 타겟 오브젝트를 기준 이미지(RIMG)의 일부에 오버랩하는 사용자 입력에 응답하여, 기준 이미지(RIMG)에 오버랩된 타겟 오브젝트를 이미지 뷰어(162)를 통해 디스플레이 장치(130)에 디스플레이할 수 있다. 이에 따라, 사용자는 타겟 오브젝트를 오버랩시킬 기준 이미지(RIMG)의 일부를 확인 및 선택할 수 있다. 기준 이미지(RIMG) 또한 사용자에 의해 선택될 수 있다.In addition, the
이후, 제어부(161)는 컨볼루션 신경망 네트워크 그룹(164)을 이용하여 기준 이미지(RIMG)에 오버랩된 타겟 오브젝트를 기준 이미지(RIMG)의 특징(혹은 스타일)을 갖도록 변환할 수 있다. 제어부(161)는 오버랩된 타겟 오브젝트를 타겟 이미지(TIMG)로서 컨볼루션 신경망 네트워크 그룹(164)에 제공할 수 있다. 실시 예들에서, 타겟 이미지(TIMG)는 타겟 오브젝트, 그리고 타겟 오브젝트를 제외한 나머지 픽셀들에 패딩된 데이터 값들을 포함할 수 있다.Thereafter, the
컨볼루션 신경망 네트워크 그룹(164)은 제 1 컨볼루션 신경망 네트워크(165) 및 제 2 컨볼루션 신경망 네트워크(166)를 포함할 수 있다. 제 1 및 제 2 컨볼루션 신경망 네트워크들(165, 166) 각각은 Deep Painterly Harmonization과 같은 다양한 알고리즘들에 기반한 복수의 컨볼루션 인코더 레이어들과 적어도 하나의 컨볼루션 디코더 레이어를 포함할 수 있다. 컨볼루션 인코더 레이어들은 입력 이미지를 순차적으로 처리하여 입력 이미지의 특징 데이터를 추출할 수 있으며, 컨볼루션 디코더 레이어는 수신된 특징 데이터에 대한 디컨볼루션을 수행하여 출력 이미지를 생성할 수 있다.The convolutional
제 1 및 제 2 컨볼루션 신경망 네트워크들(165, 166)은 순차적으로 연결된 스테이지들로서 제공될 수 있다. 제 1 컨볼루션 신경망 네트워크(165)는 제 1 스테이지로서, 기준 이미지(RIMG) 및 타겟 이미지(TIMG)를 프로세싱하여 세미 변환 이미지(SIMG)를 생성하고, 생성된 세미 변환 이미지(SIMG)를 제 2 컨볼루션 신경망 네트워크(166)에 전송할 수 있다. 제 2 컨볼루션 신경망 네트워크(166)는 제 2 스테이지로서, 기준 이미지(RIMG) 및 세미 변환 이미지(SIMG)를 프로세싱하여 변환 이미지(CIMG)를 생성하고, 생성된 변환 이미지(CIMG)를 제어부(161)에 전송할 수 있다. 변환 이미지(CIMG)는 기준 이미지(RIMG)의 일부에 오버랩된 변환된 타겟 오브젝트를 포함한다.The first and second convolutional
제어부(161)는 변환 이미지(CIMG)를 이미지 뷰어(162)를 통해 디스플레이 장치(130)에 디스플레이할 수 있으며, 사용자의 선택에 따라 변환 이미지(CIMG)를 불휘발성 저장 매체(150)에 저장할 수도 있다.The
본 발명의 실시 예에 따르면, 이미지 변환 장치(160)는 사용자 입력에 따라 선택된 관심 이미지에 포함된 적어도 하나의 타겟 오브젝트를 감지할 수 있으며, 사용자 입력에 따라 감지된 타겟 오브젝트들 중 하나를 선택할 수 있다. 그리고, 이미지 변환 장치(160)는 기준 이미지(RIMG)에 오버랩된 타겟 오브젝트를 기준 이미지(RIMG)의 특징을 갖도록 변환할 수 있다. 이에 따라, 이미지 변환 장치(160)는 사용자로 하여금 다양한 이미지들 내에 포함된 오브젝트들 중 자신이 선택한 오브젝트를 자신이 선택한 기준 이미지(RIMG)의 특징을 갖도록 변환하게 할 수 있다.According to an embodiment of the present invention, the
통신기(105), 사용자 인터페이스(110), A/V 입력기(120), 디스플레이 장치(130), 메모리(140), 불휘발성 저장 매체(150), 및 이미지 변환 장치(160) 각각은 하드웨어, 소프트웨어, 펌웨어, 및 그것들의 조합 중 하나를 통해 구현될 수 있다. 실시 예들에서, 통신기(105), 사용자 인터페이스(110), A/V 입력기(120), 디스플레이 장치(130), 메모리(140), 및 불휘발성 저장 매체(150)는 하드웨어들을 통해, 이미지 변환 장치(160)는 소프트웨어를 통해 구현될 수 있다. 또한, 이미지 변환 장치(160)의 제어부(161), 이미지 뷰어(162), 오브젝트 감지기(163), 및 컨볼루션 신경망 네트워크 그룹(164)은 실시 예들에 따라 더 많은 구성 요소들로 분리되거나 더 적은 구성 요소들로 통합될 수 있다.The
도 2는 도 1의 컴퓨터 장치의 동작 방법을 보여주는 순서도이다. 도 3은 컴퓨터 장치에 디스플레이되는 기준 이미지의 일 예를 보여주는 도면이다. 도 4는 컴퓨터 장치에 디스플레이되는 타겟 이미지의 일 예를 보여주는 도면이다. 도 5는 기준 이미지에 오버랩된 타겟 오브젝트의 일 예를 보여주는 도면이다. 도 6은 기준 이미지 및 오버랩된 타겟 오브젝트를 프로세싱하여 생성된 변환 이미지의 일 예를 보여주는 도면이다.2 is a flow chart illustrating a method of operating the computer device of FIG. 1. 3 is a diagram illustrating an example of a reference image displayed on a computer device. 4 is a diagram illustrating an example of a target image displayed on a computer device. 5 is a diagram illustrating an example of a target object overlapping a reference image. 6 is a diagram illustrating an example of a converted image generated by processing a reference image and an overlapped target object.
도 1 및 도 2를 참조하면, S110단계에서, 이미지 변환 장치(160)는 기준 이미지(RIMG)를 선택하는 제 1 사용자 입력에 응답하여 기준 이미지(RIMG)를 디스플레이한다. 도 3을 참조하면, 이미지 변환 장치(160)는 기준 이미지(RIMG)를 포함하는 제 1 그래픽 인터페이스(GUI1)를 디스플레이할 수 있다. 실시 예들에서, 제 1 그래픽 인터페이스(GUI1)는 복수의 후보 이미지들에 각각 대응하는 썸네일들(SN1~SN4)을 포함할 수 있으며, 그 중 어느 하나를 선택하는 제 1 사용자 입력에 응답하여 선택된 후보 이미지를 기준 이미지(RIMG)로서 제 1 그래픽 인터페이스(GUI1) 상에 디스플레이할 수 있다. 도 3에는 4개의 썸네일들(SN1~SN4)이 도시되나, 이는 예시적인 것으로서 더 많은 혹은 더 적은 썸네일들(SN1~SN4)이 제공될 수 있다. 실시 예들에서, 썸네일의 선택에 응답하여 선택된 썸네일을 나타내는 피드백 알람이 디스플레이될 수 있다. 예를 들면, 선택된 썸네일은 “V”와 같은 심볼이 표시되거나, 음영이 표시되는 등의 다양한 방식들에 따라 하이라이트될 수 있다. 제 1 그래픽 인터페이스(GUI1)에 포함된 제 1 영역(AR1)을 선택하는 추가적인 사용자 입력에 응답하여, 기준 이미지(RIMG)가 결정 혹은 승인될 수 있다.1 and 2, in step S110, the
다시 도 1 및 도 2를 참조하면, S120단계에서, 이미지 변환 장치(160)는 관심 이미지를 선택하는 제 2 사용자 입력에 응답하여 관심 이미지로부터 적어도 하나의 타겟 오브젝트를 감지한다. 도 4를 참조하면, 이미지 변환 장치(160)는 선택된 관심 이미지(NIMG)를 포함하는 제 2 그래픽 인터페이스(GUI2)를 디스플레이할 수 있다. 이때, 이미지 변환 장치(160)는 관심 이미지(NIMG)를 프로세싱하여 관심 이미지(NIMG)에 포함된 자동차를 타겟 오브젝트(TG)로서 감지할 수 있다. 예를 들면, 관심 이미지(NIMG)로부터 타겟 오브젝트(TG)만 추출되고, 추출된 타겟 오브젝트(TG)만 디스플레이될 수 있다. 예를 들면, 관심 이미지(NIMG) 상에서 타겟 오브젝트(TG)를 하이라이트하는 지시 영역이 디스플레이될 수 있다. 타겟 오브젝트(TG)를 선택하고 제 2 그래픽 인터페이스(GUI2)에 포함된 제 2 영역(AR2)을 선택하는 추가적인 사용자 입력들에 응답하여, 타겟 오브젝트(TG)가 결정 혹은 승인될 수 있다.Referring back to FIGS. 1 and 2, in step S120, the
실시 예들에서, 제 2 그래픽 인터페이스(GUI2) 내에 도 3의 썸네일들(SN1~SN4) 혹은 선택된 썸네일이 더 디스플레이될 수 있다. 실시 예들에서, S110단계 및 S120단계의 순서는 변경될 수 있다. S110단계가 S120단계 이후에 수행되는 경우, 제 1 그래픽 인터페이스(GUI1)에는 관심 이미지(NIMG) 혹은 결정된 타겟 오브젝트(TG)가 더 디스플레이될 수 있다.In embodiments, the thumbnails SN1 to SN4 of FIG. 3 or the selected thumbnail may be further displayed in the second graphic interface GUI2. In embodiments, the order of steps S110 and S120 may be changed. If step S110 is performed after step S120, the image of interest NIMG or the determined target object TG may be further displayed on the first graphic interface GUI1.
다시 도 1 및 도 2를 참조하면, S130단계에서, 이미지 변환 장치(160)는 타겟 오브젝트를 기준 이미지(RIMG)의 일부에 오버랩하기 위한 제 3 사용자 입력에 응답하여 기준 이미지(RIMG)의 일부에 오버랩된 타겟 오브젝트를 디스플레이한다. 도 5를 참조하면, 이미지 변환 장치(160)는 기준 이미지(RIMG)의 일부에 오버랩된 타겟 오브젝트(TG)를 포함하는 제 3 그래픽 인터페이스(GUI3)를 디스플레이할 수 있다. 제 3 그래픽 인터페이스(GUI3)는 타겟 오브젝트(TG)를 회전하고, 타겟 오브젝트(TG)의 위치 및 크기를 조절하는 등의 기준 이미지(RIMG) 상에서 타겟 오브젝트(TG)를 변형하기 위한 다양한 사용자 인터페이스들(UI)을 포함할 수 있다. 사용자 인터페이스들(UI)을 이용한 사용자 입력들은 제 3 사용자 입력으로서 제공될 수 있다. 또한, 제 3 그래픽 인터페이스(GUI3)는 선택될 때 그 밖에 다른 기능들을 제공하는 제 3 영역들(AR3)을 더 포함할 수 있다.Referring back to FIGS. 1 and 2, in step S130, the
다시 도 1 및 도 2를 참조하면, S140단계에서, 이미지 변환 장치(160)는 제 4 사용자 입력에 응답하여 기준 이미지(RIMG) 및 오버랩된 타겟 오브젝트를 제 1 및 제 2 컨볼루션 신경망 네트워크들(165, 166)을 통해 프로세싱함으로써 오버랩된 타겟 오브젝트를 기준 이미지(RIMG)와 연관하여 변환할 수 있다. 예를 들면, 이미지 변환 장치(160)는 도 5의 제 3 그래픽 인터페이스(GUI3)에 포함된 제 4 영역(AR4)을 선택하는 제 4 사용자 입력에 응답하여, 기준 이미지(RIMG) 및 오버랩된 타겟 오브젝트를 제 1 및 제 2 컨볼루션 신경망 네트워크들(165, 166)을 이용하여 프로세싱할 수 있다. 이때, 오버랩된 타겟 오브젝트로서 타겟 이미지(TIMG)가 제공될 수 있다.Referring back to FIGS. 1 and 2, in step S140, the
기준 이미지(RIMG)에 오버랩된 변환된 타겟 오브젝트는 변환 이미지(CIMG)로서 제공될 수 있다. 도 6을 참조하면, 이미지 변환 장치(160)는 변환 이미지(CIMG)를 포함하는 제 4 그래픽 인터페이스(GUI4)를 디스플레이할 수 있다. 변환 이미지(CIMG)는 변환된 타겟 오브젝트(CTG)를 포함하며, 변환된 타겟 오브젝트(CTG)에는 기준 이미지(RIMG)의 특징이 반영되어 있다.The converted target object overlapping the reference image RIMG may be provided as the converted image CIMG. Referring to FIG. 6, the
본 발명의 실시 예에 따르면, 사용자 입력에 따라 선택된 관심 이미지에 포함된 적어도 하나의 타겟 오브젝트가 감지될 수 있으며, 감지된 타겟 오브젝트들 중 하나가 사용자 입력에 의해 선택될 수 있다. 나아가, 기준 이미지(RIMG)에 오버랩된 타겟 오브젝트가 기준 이미지(RIMG)의 특징을 갖도록 변환될 수 있다. 이는, 사용자로 하여금 다양한 이미지들 내에 포함된 오브젝트들 중 자신이 선택한 오브젝트를 자신이 선택한 기준 이미지(RIMG)의 특징을 갖도록 변환하게 할 수 있다.According to an embodiment of the present invention, at least one target object included in an image of interest selected according to a user input may be detected, and one of the detected target objects may be selected according to a user input. Furthermore, the target object overlapping the reference image RIMG may be converted to have the characteristics of the reference image RIMG. This enables the user to convert an object selected by the user among objects included in various images to have the characteristics of the reference image RIMG selected by the user.
도 7은 도 1의 컨볼루션 신경망 네트워크 그룹의 실시 예를 보여주는 블록도이다.7 is a block diagram illustrating an embodiment of the convolutional neural network group of FIG. 1.
도 7을 참조하면, 컨볼루션 신경망 네트워크 그룹(200)은 제 1 컨볼루션 신경망 네트워크(210) 및 제 2 컨볼루션 신경망 네트워크(220)를 포함한다.Referring to FIG. 7, a convolutional
제 1 컨볼루션 신경망 네트워크(210)는 제 1 컨볼루션 인코더(211), 제 1 특징 스왑부(212), 및 제 2 컨볼루션 디코더(213)를 포함할 수 있다.The first convolutional
제 1 컨볼루션 인코더(211)는 기준 이미지(RIMG) 및 타겟 이미지(TIMG)를 수신한다. 타겟 이미지(TIMG)는 타겟 오브젝트를 포함할 수 있다. 타겟 이미지(TIMG)는 타겟 오브젝트 및 타겟 오브젝트를 제외한 나머지 픽셀들에 패딩된 “0”과 같은 데이터 값들을 포함할 수 있다.The
제 1 컨볼루션 인코더(211)는 기준 이미지(RIMG)에 대해 컨볼루션 및 서브 샘플링(혹은 풀링(pooling))을 수행하여 제 1 특징 맵들(FM1)을 출력할 수 있다. 여기에서, 특징 맵은 n * n의 요소들을 갖는 매트릭스로 이해될 수 있다. 마찬가지로, 제 1 컨볼루션 인코더(211)는 타겟 이미지(TIMG)에 대해 컨볼루션 및 서브 샘플링을 수행하여 제 2 특징 맵들(FM2)을 출력할 수 있다.The
제 1 특징 스왑부(212)는 제 2 특징 맵들(FM2)의 요소들 중 적어도 일부를 제 1 특징 맵들(FM1)의 요소들로 스왑(swap)하여 제 1 스왑 맵들(SWM1)을 생성할 수 있다. 즉, 제 1 특징 스왑부(212)는 제 2 특징 맵들(FM2)의 데이터에 제 1 특징 맵들(FM1)의 데이터를 반영할 수 있다. 제 1 특징 스왑부(212)는 제 2 특징 맵(FM2)의 요소들 각각과 가장 유사한 값을 갖는 제 1 특징 맵들(FM1)의 요소를 판별하고, 판별된 요소를 제 1 스왑 맵들(SWM1)의 해당 요소로 결정할 수 있다.The first
제 1 컨볼루션 디코더(213)는 제 1 스왑 맵들(SWM1)에 대해 디컨볼루션 및 업 샘플링(혹은 언풀링)을 수행하여 세미 변환 이미지(SIMG)를 생성할 수 있다. 이에 따라 생성된 세미 변환 이미지(SIMG)는 기준 이미지(RIMG) 혹은 타겟 이미지(TIMG)와 동일한 사이즈를 가질 수 있다. 세미 변환 이미지(SIMG)는 제 2 컨볼루션 신경망 네트워크(220)에 입력될 수 있다.The
제 2 컨볼루션 신경망 네트워크(220)는 제 2 컨볼루션 인코더(221), 제 2 특징 스왑부(222), 및 제 2 컨볼루션 디코더(223)를 포함할 수 있다.The second convolutional
제 2 컨볼루션 인코더(221), 제 2 특징 스왑부(222), 및 제 2 컨볼루션 디코더(223)는 각각 제 1 컨볼루션 인코더(211), 제 1 특징 스왑부(212), 및 제 1 컨볼루션 디코더(213)와 유사하게 구성될 수 있다.The
제 2 컨볼루션 인코더(221)는 기준 이미지(RIMG) 및 세미 변환 이미지(SIMG)를 수신한다. 제 2 컨볼루션 인코더(221)는 기준 이미지(RIMG)에 대해 컨볼루션 및 서브 샘플링을 수행하여 제 3 특징 맵들(FM3)을 출력할 수 있다. 또한, 제 2 컨볼루션 인코더(221)는 세미 변환 이미지(SIMG)에 대해 컨볼루션 및 서브 샘플링을 수행하여 제 4 특징 맵들(FM4)을 출력할 수 있다.The second
제 2 특징 스왑부(222)는 제 4 특징 맵들(FM4)의 요소들 중 적어도 일부를 제 3 특징 맵들(FM3)의 요소들로 스왑하여 제 2 스왑 맵들(SWM2)을 생성할 수 있다. 제 2 스왑 맵들(SWM2)은 제 1 스왑 맵들(SWM1)의 생성을 위한 연산과 동일한 방식을 통해 제 3 특징 맵들(FM3)과 제 4 특징 맵들(FM4)을 이용하여 연산될 수 있다.The second
제 2 컨볼루션 디코더(223)는 제 2 스왑 맵들(SWM2)에 대해 디컨볼루션 및 업 샘플링을 수행하여 변환 이미지(CIMG)를 생성할 수 있다. 이에 따라 생성된 변환 이미지(CIMG)는 기준 이미지(RIMG) 혹은 타겟 이미지(TIMG)와 동일한 사이즈를 가질 수 있다.The
도 8 및 도 9는 도 7의 제 1 및 제 2 컨볼루션 신경망 네트워크들의 실시 예들을 보여주는 블록도들이다.8 and 9 are block diagrams illustrating embodiments of the first and second convolutional neural networks of FIG. 7.
먼저 도 8을 참조하면, 제 1 컨볼루션 신경망 네트워크(300)는 제 1 컨볼루션 인코더(310), 제 1 특징 스왑부(320), 및 제 1 컨볼루션 디코더(330)를 포함할 수 있다.First, referring to FIG. 8, the first convolutional
제 1 컨볼루션 인코더(310)는 제 1 내지 제 3 컨볼루션 인코더 레이어들(CV11~CV13)과 같은 복수의 컨볼루션 인코더 레이어들, 그리고 제 1 내지 제 3 서브 샘플링 레이어들(MP11~MP13)과 같은 복수의 서브 샘플링 레이어들을 포함할 수 있다.The first
제 1 내지 제 3 컨볼루션 인코더 레이어들(CV11~CV13) 각각은 이 분야에서 잘 알려진 바와 같이 입력 데이터와 하나 또는 그 이상의 필터들에 대한 컨볼루션을 수행하여 특징 맵들을 생성할 수 있다. 컨볼루션을 위한 필터들의 수는 하나의 필터의 깊이(depth)로서 이해될 수 있다. 입력 데이터가 2이상의 필터들과 컨볼루션될 때 복수의 필터 맵들이 생성될 수 있다. 이때, 필터들은 딥 러닝(deep learning)에 따라 결정 및 수정되는 것들일 있다. 도 8에 도시된 바와 같이, 기준 이미지(RIMG) 및 타겟 이미지(TIMG) 각각이 제 1 컨볼루션 인코더 레이어(CV11)의 입력 데이터로서 제공될 수 있다.Each of the first to third convolutional encoder layers CV11 to CV13 may generate feature maps by performing convolution on input data and one or more filters, as is well known in the art. The number of filters for convolution can be understood as the depth of one filter. When input data is convolved with two or more filters, a plurality of filter maps may be generated. In this case, the filters may be those that are determined and modified according to deep learning. As shown in FIG. 8, each of the reference image RIMG and the target image TIMG may be provided as input data of the first convolution encoder layer CV11.
제 1 내지 제 3 서브 샘플링 레이어들(MP11~MP13) 각각은 입력되는 특징 맵들을 다운 샘플링하여 특징 맵들의 사이즈를 감소시킴으로써, 모델의 복잡도(complexity)를 완화할 수 있다. 서브 샘플링은 평균 풀링, 맥스 풀링(max pooling) 등 다양한 방식들에 따라 수행될 수 있다. 실시 예들에서, 제 1 내지 제 3 서브 샘플링 레이어들(MP11~MP13) 각각은 맥스 풀링 레이어일 수 있다.Each of the first to third sub-sampling layers MP11 to MP13 down-samples the input feature maps to reduce the size of the feature maps, thereby reducing model complexity. Sub-sampling may be performed according to various methods, such as average pooling and max pooling. In embodiments, each of the first to third sub-sampling layers MP11 to MP13 may be a max pooling layer.
컨볼루션 인코더 레이어 및 서브 샘플링 레이어는 하나의 그룹을 이루며, 제 1 컨볼루션 인코더(310)는 복수의 그룹들을 포함할 수 있다. 기준 이미지(RIMG)가 컨볼루션 인코더 레이어 및 서브 샘플링 레이어를 각각 포함하는 3개의 그룹들을 통과함에 따라 특징 맵들(FM11), 특징 맵들(FM12), 및 특징 맵들(FM13)이 순차적으로 생성될 수 있다. 예를 들면, 기준 이미지(RIMG)는 제 1 컨볼루션 인코더 레이어(CV11) 및 제 1 서브 샘플링 레이어(MP11)를 통과하여 특징 맵들(FM11)로 변환되며, 특징 맵들(FM11)은 제 2 컨볼루션 인코더 레이어(CV12) 및 제 2 서브 샘플링 레이어(MP12)를 통과하여 특징 맵들(FM12)로 변환되며, 특징 맵들(FM12)은 제 3 컨볼루션 인코더 레이어(CV13) 및 제 3 서브 샘플링 레이어(MP13)를 통과하여 특징 맵들(FM13)로 변환될 수 있다. 특징 맵들(FM11)의 깊이는 기준 이미지(RIMG)보다 깊고, 특징 맵들(FM12)의 깊이는 특징 맵들(FM11)보다 깊고, 특징 맵들(FM13)의 깊이는 특징 맵들(FM12)보다 깊을 수 있으며, 이는 도 8에서 특징 맵들(FM11), 특징 맵들(FM12), 및 특징 맵들(FM13)을 나타내는 육면체들의 가로 방향의 너비들로서 도식화되어 있다. 특징 맵들(FM13)은 도 7의 제 1 특징 맵들(FM1)일 수 있다.The convolutional encoder layer and the sub-sampling layer form one group, and the first
마찬가지로, 타겟 이미지(TIMG)가 컨볼루션 인코더 레이어 및 서브 샘플링 레이어를 각각 포함하는 3개의 그룹들을 통과함에 따라 특징 맵들(FM21), 특징 맵들(FM22), 및 특징 맵들(FM23)이 순차적으로 생성될 수 있다. 특징 맵들(FM21)의 깊이는 타겟 이미지(TIMG)보다 깊고, 특징 맵들(FM22)의 깊이는 특징 맵들(FM21)보다 깊고, 특징 맵들(FM23)의 깊이는 특징 맵들(FM22)보다 깊을 수 있으며, 이는 도 8에서 특징 맵들(FM21), 특징 맵들(FM22), 및 특징 맵들(FM23)을 나타내는 육면체들의 가로 방향의 너비들로서 도식화되어 있다. 특징 맵들(FM23)은 도 7의 제 2 특징 맵들(FM2)일 수 있다.Similarly, feature maps FM21, feature maps FM22, and feature maps FM23 are sequentially generated as the target image TIMG passes through three groups each including a convolutional encoder layer and a sub-sampling layer. I can. The depth of the feature maps FM21 may be deeper than the target image TIMG, the depth of the feature maps FM22 may be greater than that of the feature maps FM21, and the depth of the feature maps FM23 may be greater than that of the feature maps FM22, In FIG. 8, the feature maps FM21, the feature maps FM22, and the hexahedron representing the feature maps FM23 are illustrated as widths in the horizontal direction. The feature maps FM23 may be the second feature maps FM2 of FIG. 7.
제 1 특징 스왑부(320)는 특징 맵들(FM13) 및 특징 맵들(FM23)을 수신하며, 특징 맵들(FM23)의 요소들 중 적어도 일부를 특징 맵들(FM13)의 요소들로 스왑할 수 있다. 제 1 특징 스왑부(212)는 제 2 특징 맵(FM2)의 요소들 각각과 가장 유사한 값을 갖는 제 1 특징 맵들(FM1)의 요소를 판별하고, 판별된 요소를 제 1 스왑 맵들(SWM1)의 해당 요소의 값으로 결정할 수 있다. 예를 들면, 제 1 스왑 맵들(SWM1)의 요소들은 아래의 수학식 1과 같은 코릴레이션 측정(correlation measure)에 따라 결정될 수 있다.The first
수학식 1을 참조하면, 는 제 1 스왑 맵들(SWM1)의 요소를 나타내며, 은 특징 맵들(FM13)의 요소를 나타내며, 는 특징 맵들(FM23)의 요소를 나타낼 수 있다.Referring to Equation 1, Denotes an element of the first swap maps SWM1, Denotes an element of the feature maps FM13, May represent an element of the feature maps FM23.
제 1 컨볼루션 디코더(330)는 적어도 하나의 컨볼루션 디코더 레이어(DCV11) 및 적어도 하나의 업 샘플링 레이어(UP11)를 포함할 수 있다. 제 1 컨볼루션 디코더(330)에 포함되는 컨볼루션 디코더 레이어들의 수 및 업 샘플링 레이어들의 수는 실시 예들에 따라 변할 수 있다.The
제 1 스왑 맵들(SWM1)은 업 샘플링 레이어(UP11) 및 컨볼루션 디코더 레이어(DCV11)를 통과하여 세미 변환 이미지(SIMG)로 변환될 수 있다.The first swap maps SWM1 may pass through the up-sampling layer UP11 and the convolution decoder layer DCV11 to be converted into a semi-transformed image SIMG.
업 샘플링 레이어(UP11)는 제 1 스왑 맵들(SWM1)에 대해, 다운 샘플링에 반대되는 업 샘플링을 수행하여 제 1 스왑 맵들(SWM1)의 사이즈를 증가시킬 수 있다. 실시 예들에서, 업 샘플링 레이어(UP11)는 언 풀링(un-pooling) 레이어를 포함하며, 제 1 내지 제 3 서브 샘플링 레이어들(MP11~MP13)에 대응하는 언 풀링 인덱스들을 가질 수 있다.The up-sampling layer UP11 may increase the size of the first swap maps SWM1 by performing up-sampling opposite to the down-sampling on the first swap maps SWM1. In embodiments, the up-sampling layer UP11 includes an un-pooling layer and may have un-pooling indices corresponding to the first to third sub-sampling layers MP11 to MP13.
컨볼루션 디코더 레이어(DCV11)는 입력 데이터에 대한 디컨볼루션을 수행할 수 있다. 하나 또는 그 이상의 필터들이 디컨볼루션에 이용될 수 있으며, 해당 필터들은 컨볼루션 인코더 레이어들(CV11~CV13)에서 이용되는 필터들과 연관될 수 있다. 예를 들면, 해당 필터들은 컨볼루션 인코더 레이어들(CV11~CV13)에서 이용되는 필터들을 전치(transpose)한 것들일 수 있다. The convolution decoder layer DCV11 may perform deconvolution on input data. One or more filters may be used for deconvolution, and the filters may be associated with filters used in the convolutional encoder layers CV11 to CV13. For example, the filters may be those obtained by transposing filters used in the convolutional encoder layers CV11 to CV13.
이어서 도 9를 참조하면, 제 2 컨볼루션 신경망 네트워크(400)는 제 2 컨볼루션 인코더(410), 제 2 특징 스왑부(420), 및 제 2 컨볼루션 디코더(430)를 포함할 수 있다.Next, referring to FIG. 9, the second convolutional
제 2 컨볼루션 인코더(410)는 기준 이미지(RIMG) 및 세미 변환 이미지(SIMG)를 수신할 수 있다. 제 2 컨볼루션 인코더(410)는 제 1 및 제 2 컨볼루션 인코더 레이어들(CV21, CV22)와 같은 복수의 컨볼루션 인코더 레이어들, 그리고 제 1 및 제 2 서브 샘플링 레이어들(MP21, MP22)과 같은 복수의 서브 샘플링 레이어들을 포함할 수 있다.The
제 1 및 제 2 컨볼루션 인코더 레이어들(CV21, CV22) 각각은 도 8의 제 1 내지 제 3 컨볼루션 인코더 레이어들(CV11~CV13) 각각과 마찬가지로 입력 데이터와 하나 또는 그 이상의 필터들에 대한 컨볼루션을 수행할 수 있다. 실시 예들에서, 제 1 및 제 2 컨볼루션 인코더 레이어들(CV21, CV22)의 필터들은 도 8의 제 1 및 제 2 컨볼루션 인코더 레이어들(CV11, CV12)의 그것들과 마찬가지로 구성될 수 있다.Each of the first and second convolutional encoder layers CV21 and CV22 is similar to each of the first to third convolutional encoder layers CV11 to CV13 of FIG. 8, convolving input data and one or more filters. You can perform lution. In embodiments, filters of the first and second convolutional encoder layers CV21 and CV22 may be configured similarly to those of the first and second convolutional encoder layers CV11 and CV12 of FIG. 8.
제 1 및 제 2 서브 샘플링 레이어들(MP21, MP22) 각각은 도 8의 제 1 내지 제 3 서브 샘플링 레이어들(MP11~MP13) 각각과 마찬가지로 입력되는 특징 맵들을 다운 샘플링하여 특징 맵들의 사이즈를 감소시킬 수 있다. 실시 예들에서, 제 1 및 제 2 서브 샘플링 레이어들(MP21, MP22)은 도 8의 제 1 및 제 2 서브 샘플링 레이어들(MP11, MP12)과 마찬가지로 구성될 수 있다.Each of the first and second sub-sampling layers MP21 and MP22 reduces the size of the feature maps by down-sampling the input feature maps, similarly to each of the first to third sub-sampling layers MP11 to MP13 of FIG. 8. I can make it. In embodiments, the first and second sub-sampling layers MP21 and MP22 may be configured similarly to the first and second sub-sampling layers MP11 and MP12 of FIG. 8.
기준 이미지(RIMG)가 컨볼루션 인코더 레이어 및 서브 샘플링 레이어를 각각 포함하는 2개의 그룹들을 순차적으로 통과함에 따라, 특징 맵들(FM31) 및 특징 맵들(FM32)이 순차적으로 생성될 수 있다. 특징 맵들(FM32)의 깊이는 특징 맵들(FM31)보다 깊을 수 있으며, 이는 도 9에서 특징 맵들(FM31) 및 특징 맵들(FM32)을 나타내는 육면체들의 가로 방향의 너비들로서 도식화되어 있다. 특징 맵들(FM32)은 도 7의 제 3 특징 맵들(FM3)일 수 있다. 세미 변환 이미지(SIMG)가 컨볼루션 인코더 레이어 및 서브 샘플링 레이어를 각각 포함하는 2개의 그룹들을 순차적으로 통과함에 따라 특징 맵들(FM41) 및 특징 맵들(FM42)이 순차적으로 생성될 수 있다. 특징 맵들(FM42)의 깊이는 특징 맵들(FM41)보다 깊을 수 있으며, 이는 도 9에서 특징 맵들(FM41) 및 특징 맵들(FM42)을 나타내는 육면체들의 가로 방향의 너비들로서 도식화되어 있다. 특징 맵들(FM42)은 도 7의 제 4 특징 맵들(FM4)일 수 있다.As the reference image RIMG sequentially passes through two groups each including a convolutional encoder layer and a sub-sampling layer, the feature maps FM31 and the feature maps FM32 may be sequentially generated. The depth of the feature maps FM32 may be deeper than the feature maps FM31, which is illustrated as widths in the horizontal direction of hexahedrons representing the feature maps FM31 and the feature maps FM32 in FIG. 9. The feature maps FM32 may be the third feature maps FM3 of FIG. 7. Feature maps FM41 and feature maps FM42 may be sequentially generated as the semi-transformed image SIMG sequentially passes through two groups each including a convolutional encoder layer and a sub-sampling layer. The depth of the feature maps FM42 may be deeper than the feature maps FM41, which is illustrated as widths in the horizontal direction of the cubes representing the feature maps FM41 and the feature maps FM42 in FIG. 9. The feature maps FM42 may be the fourth feature maps FM4 of FIG. 7.
제 2 특징 스왑부(420) 및 제 2 컨볼루션 디코더(430)는 도 8의 제 1 특징 스왑부(320) 및 제 1 컨볼루션 디코더(330)와 각각 마찬가지로 구성될 수 있다. 제 2 특징 스왑부(420)는 특징 맵들(FM32) 및 특징 맵들(FM42)을 수신하며, 특징 맵들(FM42)의 요소들 중 적어도 일부를 특징 맵들(FM32)의 요소들로 스왑할 수 있다. 제 2 컨볼루션 디코더(430)는 적어도 하나의 컨볼루션 디코더 레이어(DCV21) 및 적어도 하나의 업 샘플링 레이어(UP21)를 포함하며, 제 2 스왑 맵들(SWM2)은 업 샘플링 레이어(UP21) 및 컨볼루션 디코더 레이어(DCV21)를 통과하여 변환 이미지(CIMG)로 변환될 수 있다.The second
제 2 컨볼루션 인코더(410)에 포함된 컨볼루션 인코더 레이어들(CV21, CV22)의 수와 제 1 컨볼루션 인코더(310)에 포함된 컨볼루션 인코더 레이어들(CV11~CV13)의 수는 서로 다를 수 있다.The number of convolutional encoder layers CV21 and CV22 included in the second
입력 이미지를 순차적으로 처리하는 컨볼루션 인코더 레이어들의 수가 감소할수록, 특징 맵들은 상대적으로 미세한 영역의 특징과 관련된 데이터를 포함할 수 있다. 만약 기준 이미지(RIMG)와 타겟 이미지(TIMG)가 상대적으로 적은 수의 컨볼루션 인코더 레이어들을 통과하고 그에 따라 변환 이미지가 생성된다면, 기준 이미지(RIMG)의 특징(혹은 스타일)은 상대적으로 미세한 영역의 단위로 타겟 이미지(TIMG)에 반영될 수 있으며, 이에 따라 변환 이미지 내에서 타겟 이미지(TIMG)의 디테일한 형상들은 상대적으로 잘 표현될 수 있다.As the number of convolutional encoder layers sequentially processing an input image decreases, the feature maps may include data related to a feature of a relatively fine region. If the reference image (RIMG) and the target image (TIMG) pass through a relatively small number of convolutional encoder layers and a transformed image is generated accordingly, the characteristic (or style) of the reference image (RIMG) is The unit may be reflected in the target image TIMG, and thus detailed shapes of the target image TIMG in the converted image may be relatively well expressed.
입력 이미지를 순차적으로 처리하는 컨볼루션 인코더 레이어들의 수가 증가할수록, 특징 맵들은 상대적으로 큰 영역의(혹은 거시적인) 특징을 포함할 수 있다. 만약 기준 이미지(RIMG)와 타겟 이미지(TIMG)가 상대적으로 많은 수의 컨볼루션 인코더 레이어들을 통과하고 그에 따라 변환 이미지가 생성된다면, 기준 이미지(RIMG)의 특징은 상대적으로 큰 영역의 단위로 타겟 이미지(TIMG)에 반영될 수 있으며, 이에 따라 변환 이미지 내에서 기준 이미지(RIMG)의 특징이 타겟 이미지(TIMG)에 반영된 정도는 사람에게 상대적으로 높게 느껴질 수 있다.As the number of convolutional encoder layers sequentially processing an input image increases, the feature maps may include a relatively large area (or macroscopic) feature. If the reference image (RIMG) and the target image (TIMG) pass through a relatively large number of convolutional encoder layers and a transformed image is generated accordingly, the characteristic of the reference image (RIMG) is the target image in units of a relatively large area. It may be reflected in (TIMG), and accordingly, the degree to which the characteristic of the reference image RIMG is reflected in the target image TIMG in the converted image may be felt relatively high to a person.
본 발명의 실시 예에 따르면, 제 1 및 제 2 컨볼루션 신경망 네트워크들(300, 400)은 순차적인 스테이지들을 이루어 기준 이미지(RIMG) 및 타겟 이미지(TIMG)를 처리하되, 그것들에 포함되는 컨볼루션 인코더 레이어들의 수들은 서로 다를 수 있다. 이때, 제 1 컨볼루션 신경망 네트워크(300)의 출력인 세미 변환 이미지(SIMG)는 제 2 컨볼루션 신경망 네트워크(400)의 입력으로서 제공된다. 좀 더 구체적으로, 제 1 컨볼루션 신경망 네트워크(300)는 기준 이미지(RIMG)의 특징을 타겟 이미지(TIMG)에 일차적으로 반영하여 세미 변환 이미지(SIMG)를 생성하며, 제 2 컨볼루션 신경망 네트워크(400)는 기준 이미지(RIMG)의 특징을 세미 변환 이미지(SIMG)에 이차적으로 반영하여 변환 이미지(CIMG)를 생성한다. 위 일차적 및 이차적 반영들 중 어느 하나는 변환 이미지(CIMG) 내에서 기준 이미지(RIMG)의 특징이 타겟 이미지(TIMG)에 반영된 정도를 상대적으로 높게 하며, 나머지 하나는 변환 이미지(CIMG)가 타겟 이미지(TIMG)의 디테일한 형상들을 상대적으로 잘 표현하게 한다. 이에 따라, 변환 이미지(CIMG)는 기준 이미지(RIMG)의 특징이 효과적으로 반영되면서도 타겟 이미지(TIMG)의 디테일한 형상들을 효과적으로 표현하는 변환된 타겟 오브젝트를 포함할 수 있다.According to an embodiment of the present invention, the first and second convolutional
실시 예들에서, 도 8 및 도 9를 참조하여 설명된 실시 예들과 같이, 제 1 컨볼루션 신경망 네트워크(300)에 포함된 컨볼루션 인코더 레이어들의 수는 제 2 컨불루션 신경망 네트워크(400)보다 많을 수 있다. 본 출원의 발명자는 반복적인 실험들을 통해 이러한 실시 예들에서 변환 이미지(CIMG)가 타겟 이미지(TIMG)의 디테일한 형상들을 더욱 효과적으로 표현하는 변환된 타겟 오브젝트를 포함함을 알 수 있었다. 다른 실시 예들에서, 제 2 컨불루션 신경망 네트워크(400)에 포함된 컨볼루션 인코더 레이어들의 수가 제 1 컨볼루션 신경망 네트워크(300)보다 많을 수 있다.In embodiments, as in the embodiments described with reference to FIGS. 8 and 9, the number of convolutional encoder layers included in the first convolutional
도 10은 도 2의 S140단계의 실시 예를 보여주는 순서도이다.10 is a flowchart showing an embodiment of step S140 of FIG. 2.
도 1 및 도 10을 참조하면, S210단계에서, 이미지 변환 장치(160)는 기준 이미지(RIMG) 및 타겟 이미지(TIMG)를 제 1 컨볼루션 신경망 네트워크(165)에 입력시켜 세미 변환 이미지를 획득한다.1 and 10, in step S210, the
제 1 컨볼루션 신경망 네트워크(165)는 복수의 컨볼루션 인코더 레이어들을 이용하여 기준 이미지(RIMG)와 연관된 제 1 특징 맵들 및 타겟 이미지(TIMG)와 연관된 제 2 특징 맵들을 생성하고, 제 2 특징 맵들의 요소들 중 적어도 일부를 제 1 특징 맵들의 요소들로 스왑하고, 이를 하나 또는 그 이상의 컨볼루션 디코더 레이어들에 통과시켜 세미 변환 이미지(SIMG)를 획득할 수 있다.The first convolutional
S220단계에서, 이미지 변환 장치(160)는 기준 이미지(RIMG) 및 세미 변환 이미지(SIMG)를 제 2 컨볼루션 신경망 네트워크(166)에 입력시켜 변환 이미지(CIMG)를 획득한다. 제 2 컨볼루션 신경망 네트워크(166)는 복수의 컨볼루션 인코더 레이어들을 이용하여 기준 이미지(RIMG)와 연관된 제 3 특징 맵들 및 세미 변환 이미지(SIMG)와 연관된 제 4 특징 맵들을 생성하고, 제 4 특징 맵들의 요소들 중 적어도 일부를 제 3 특징 맵들의 요소들로 스왑하고, 이를 하나 또는 그 이상의 컨볼루션 디코더 레이어들에 통과시켜 변환 이미지(CIMG)를 획득할 수 있다.In step S220, the
이때, 제 1 컨볼루션 신경망 네트워크(165) 및 제 2 컨볼루션 신경망 네트워크(166)는 서로 다른 수들의 컨볼루션 인코더 레이어들을 포함할 수 있다. 이에 따라, 변환 이미지(CIMG)는 기준 이미지(RIMG)의 특징이 효과적으로 반영되면서도 타겟 이미지(TIMG)의 디테일한 형상들을 효과적으로 표현하는 변환된 타겟 오브젝트를 포함할 수 있다.In this case, the first convolutional
도 11은 도 1의 컴퓨터 장치의 다른 실시 예를 보여주는 블록도이다.11 is a block diagram showing another embodiment of the computer device of FIG. 1.
도 11을 참조하면, 컴퓨터 장치(1000)는 통신기(1100), A/V 입력기(1200), 사용자 인터페이스(1300), 디스플레이 장치(1400), 불휘발성 저장 매체(1500), 프로세서(1600), 및 시스템 메모리(1700)를 포함한다.Referring to FIG. 11, the
통신기(1100)는 프로세서(1600)의 제어에 응답하여 외부 장치와 네트워크를 통해 통신하도록 구성된다. 통신기(1100)는 이동 통신망 상에서 기지국, 외부의 서버, 및 외부의 단말 중 적어도 하나와 유/무선 신호들을 송신하도록 구성된다. 이때, 무선 신호는 음성 호 신호, 화상 통화 호 신호, 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 타입들의 데이터를 포함할 수 있다. 또한, 통신기(1100)는 무선 인터넷에 접속하도록 구성된다. 나아가, 통신기(1100)는 근거리 무선 통신을 수행하도록 구성되며, 여기서 근거리 무선 통신은 블루투스(Bluetooth), 와이파이(Wi-Fi) 통신, LTE D2D 통신, NFC, 마그네틱 보안 전송 통신, 지그비(ZigBee) 통신, 적외선(IrDA, infrared Data Association) 통신, UWB(Ultra Wideband) 통신, Ant+ 통신, 및/또는 그와 유사한 것 중 적어도 하나의 통신 프로토콜을 이용한 통신을 포함할 수 있다. 통신기(1100)는 도 1의 통신기(105)로서 제공될 수 있다.The
A/V 입력기(1200)는 오디오 신호 및 비디오 신호의 입력을 위한 것으로, 카메라를 포함할 수 있다. A/V 입력기(1200)는 카메라의 이미지 센서를 통해 얻어지는 이미지를 처리한다. A/V 입력기(1200)는 도 1의 A/V 입력기(120)로서 제공될 수 있다.The A/
사용자 인터페이스(1300)는 컴퓨터 장치(1000) 혹은 프로세서(1600)의 동작들을 제어하기 위한 사용자 입력들을 수신한다. 사용자 인터페이스(1300)는 도 1의 사용자 인터페이스(110)로서 제공될 수 있다.The
디스플레이 장치(1400)는 컴퓨터 장치(1000) 혹은 프로세서(1600)에 의해 처리되는 정보를 디스플레이한다. 실시 예들에서, 디스플레이(1400)는 액정 디스플레이(liquid crystal display), 유기 발광 다이오드(organic light-emitting diode) 디스플레이, 플렉서블 디스플레이(flexible display), 등 중 적어도 하나를 포함할 수 있다. 디스플레이 장치(1400)는 도 1의 디스플레이 장치(130)로서 제공될 수 있다.The
불휘발성 저장 매체(1500)는 플래시 메모리(flash memory type), 하드 디스크 (hard disk type), 멀티미디어 카드(multimedia card) 등 중 적어도 하나일 수 있다. 불휘발성 저장 매체(1500)는 프로세서(1600)의 제어에 응답하여 데이터를 기입하고 독출하도록 구성된다. 불휘발성 저장 매체(1500)는 도 1의 불휘발성 저장 매체(150)로서 제공될 수 있다.The
프로세서(1600)는 범용 혹은 전용 프로세서 중 어느 하나를 포함할 수 있으며, 통신기(1100), A/V 입력기(1200), 사용자 인터페이스(1300), 디스플레이 장치(1400), 불휘발성 저장 매체(1500), 및 시스템 메모리(1700)의 동작들을 제어한다.The
프로세서(1600)는 프로그램 코드들을 불휘발성 저장 매체(1500)로부터 시스템 메모리(1700)에 로딩하고, 로딩된 프로그램 코드들을 실행할 수 있다. 프로세서(1600)는 프로세서(1600)에 의해 실행될 때 도 1, 도 2, 및 도 7 내지 도 10을 참조하여 설명된 이미지 변환 장치(160)의 기능들을 수행하는 이미지 변환 모듈(1710)을 시스템 메모리(1700)에 로딩하고, 로딩된 이미지 변환 모듈(1710)을 실행할 수 있다. 또한, 프로세서(1600)는 운영 체제(1720)를 시스템 메모리(1700)에 로딩하고, 로딩된 운영 체제(1720)를 실행하여 컴퓨터 장치(1000)의 제반 동작들을 제어할 수 있다. 운영 체제(1720)는 통신기(1100), A/V 입력기(1200), 사용자 인터페이스(1300), 디스플레이 장치(1400), 불휘발성 저장 매체(1500), 및 메모리(1700)에 대한 인터페이스를 이미지 변환 모듈(1710)에 제공할 수 있다.The
시스템 메모리(1700)는 램(Random Access Memory, RAM), 롬(Read Only Memory, ROM), 및 다른 타입들의 컴퓨터에 의해 판독 가능한 저장 매체들 중 적어도 하나를 포함할 수 있다. 도 11에서, 시스템 메모리(1700)는 프로세서(1600)와 분리된 구성 요소로서 도시되어 있으나, 이는 예시적인 것으로 시스템 메모리(1700)의 적어도 일부는 프로세서(1600) 내에 통합될 수 있다. 시스템 메모리(1700)는 프로세서(1600)의 버퍼 메모리로서 제공될 수 있다. 시스템 메모리(1700)는 도 1의 메모리(140)로서 기능할 수 있다.The
실시 예들에서, 통신기(1100), A/V 입력기(1200), 사용자 인터페이스(1300), 디스플레이 장치(1400), 불휘발성 저장 매체(1500), 프로세서(1600), 및 시스템 메모리(1700)를 서로 연결하는 인터페이스를 제공하는 시스템 버스가 더 제공될 수 있다.In embodiments, the
도 12는 도 11의 컴퓨터 장치와 통신할 수 있는 클라이언트 서버를 보여주는 블록도이다.12 is a block diagram illustrating a client server capable of communicating with the computer device of FIG. 11.
도 11의 이미지 변환 모듈(1710)에 대응하는 명령어들을 포함하는 프로그램(혹은 응용 애플리케이션)은 클라이언트 서버(2000)로부터 제공될 수 있다. 도 12를 참조하면, 클라이언트 서버(2000)는 통신기(2100), 프로세서(2200), 및 데이터베이스(2300)를 포함할 수 있다. 통신기(2100)는 네트워크를 통해 컴퓨터 장치(1000)와 통신할 수 있다. 데이터베이스(2300)는 이미지 변환 모듈(1710)에 대응하는 명령어들을 포함하는 프로그램을 저장할 수 있다. 프로세서(2200)는 도 11의 컴퓨터 장치(1000)로부터의 요청에 응답하여 데이터베이스(2300)에 저장된 프로그램을 통신기(2100)를 통해 컴퓨터 장치(1000)에 제공할 수 있다. 컴퓨터 장치(1000)는 통신기(1100)를 통해 프로그램을 수신하고, 수신된 프로그램을 설치하고, 설치된 프로그램의 명령어들 중 적어도 일부를 이미지 변환 모듈(1710)로서 시스템 메모리(1700)에 로드하고, 로드된 이미지 변환 모듈(1710)을 실행할 수 있다.A program (or application application) including instructions corresponding to the
비록 특정 실시 예들 및 적용 례들이 여기에 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정들 및 변형들이 가능하다.Although specific embodiments and application examples have been described herein, these are provided only to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains. When grown, various modifications and variations are possible from this description.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention is limited to the described embodiments and should not be defined, and all things that are equivalent or equivalent to the claims as well as the claims to be described later fall within the scope of the spirit of the present invention. .
105: 통신기
110: 사용자 인터페이스
120: A/V 입력기
130: 디스플레이 장치
140: 메모리
150: 불휘발성 저장 매체
160: 이미지 변환 장치105: communicator
110: user interface
120: A/V input method
130: display device
140: memory
150: nonvolatile storage medium
160: image conversion device
Claims (15)
상기 적어도 하나의 프로세서의 제어에 응답하여 동작하는 디스플레이 장치; 및
제 1 이미지 및 제 2 이미지를 저장하되, 상기 적어도 하나의 프로세서의 제어에 응답하여 동작하는 메모리를 포함하되,
상기 적어도 하나의 프로세서는,
상기 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하고,
상기 타겟 오브젝트를 상기 제 2 이미지의 일부에 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하고,
제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크(Convolutional Neural Network)들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하고,
상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이하도록 구성되며,
상기 복수의 컨볼루션 신경망 네트워크들은 제 1 및 제 2 컨볼루션 신경망 네트워크들을 포함하고,
상기 적어도 하나의 프로세서는,
상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크에 입력시켜 상기 제 1 컨볼루션 신경망 네트워크로부터 제 4 이미지를 획득하고,
상기 제 4 이미지 및 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크에 입력시켜 상기 제 2 컨볼루션 신경망 네트워크로부터 상기 제 3 이미지를 획득하도록 구성되는 컴퓨터 장치.At least one processor;
A display device operating in response to the control of the at least one processor; And
A memory for storing the first image and the second image, the memory operating in response to the control of the at least one processor,
The at least one processor,
In response to a first user input selecting the first image, at least one target object is detected from the first image,
Displaying the target object overlapping the part of the second image on the display device in response to a second user input overlapping the target object with a part of the second image,
In response to a third user input, the overlapped target object and the second image are processed through a plurality of convolutional neural networks to convert the overlapped target object in association with the second image, wherein the Each of the plurality of convolutional neural network networks includes a plurality of convolutional encoder layers and at least one convolutional decoder layer,
Configured to display the converted target object overlapped with the part of the second image as a third image on the display device,
The plurality of convolutional neural network networks include first and second convolutional neural network networks,
The at least one processor,
Inputting the overlapped target object and the second image to the first convolutional neural network network to obtain a fourth image from the first convolutional neural network network,
A computer apparatus configured to input the fourth image and the second image to the second convolutional neural network network to obtain the third image from the second convolutional neural network network.
상기 복수의 컨볼루션 신경망 네트워크들은 순차적인 스테이지들로서 제공되는 컴퓨터 장치.The method of claim 1,
The plurality of convolutional neural network networks are provided as sequential stages.
상기 복수의 컨볼루션 신경망 네트워크들은 서로 다른 수의 컨볼루션 인코더 레이어들을 갖는 컴퓨터 장치.The method of claim 1,
The plurality of convolutional neural network networks have different numbers of convolutional encoder layers.
상기 적어도 하나의 프로세서는,
상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들에 통과시켜 제 1 특징 맵들을 생성하고,
상기 오버랩된 타겟 오브젝트를 상기 제 1 컨볼루션 신경망 네트워크의 상기 컨볼루션 인코더 레이어들에 통과시켜 제 2 특징 맵들을 생성하고,
상기 제 2 특징 맵들의 적어도 일부에 상기 제 1 특징 맵들을 반영하여 제 1 스왑(swap) 맵들을 획득하고,
상기 제 1 스왑 맵들을 상기 제 1 컨볼루션 신경망 네트워크의 적어도 하나의 컨볼루션 디코더 레이어에 통과시켜 상기 제 4 이미지를 획득하는 컴퓨터 장치.The method of claim 1,
The at least one processor,
Generating first feature maps by passing the second image through convolutional encoder layers of the first convolutional neural network,
Generate second feature maps by passing the overlapped target object through the convolutional encoder layers of the first convolutional neural network network,
Acquire first swap maps by reflecting the first feature maps on at least a part of the second feature maps,
A computer apparatus for obtaining the fourth image by passing the first swap maps through at least one convolutional decoder layer of the first convolutional neural network network.
상기 적어도 하나의 프로세서는,
상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들에 통과시켜 제 3 특징 맵들을 생성하고,
상기 제 4 이미지를 상기 제 2 컨볼루션 신경망 네트워크의 상기 컨볼루션 인코더 레이어들에 통과시켜 제 4 특징 맵들을 생성하고,
상기 제 4 특징 맵들의 적어도 일부에 상기 제 3 특징 맵들을 반영하여 제 2 스왑 맵들을 획득하고,
상기 제 2 스왑 맵들을 상기 제 2 컨볼루션 신경망 네트워크의 적어도 하나의 컨볼루션 디코더 레이어에 통과시켜 상기 제 3 이미지를 획득하는 컴퓨터 장치.The method of claim 5,
The at least one processor,
Generating third feature maps by passing the second image through convolutional encoder layers of the second convolutional neural network,
Passing the fourth image through the convolutional encoder layers of the second convolutional neural network to generate fourth feature maps,
Obtaining second swap maps by reflecting the third feature maps on at least a portion of the fourth feature maps,
A computer apparatus for obtaining the third image by passing the second swap maps through at least one convolutional decoder layer of the second convolutional neural network network.
상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많거나 같은 컴퓨터 장치.The method of claim 1,
The number of convolutional encoder layers of the first convolutional neural network network is greater than or equal to the number of convolutional encoder layers of the second convolutional neural network.
상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많거나 같은 컴퓨터 장치.The method of claim 1,
A computer device in which the number of convolutional encoder layers of the second convolutional neural network network is greater than or equal to the number of convolutional encoder layers of the first convolutional neural network.
제 1 이미지 및 제 2 이미지를 저장하는 단계;
상기 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하는 단계;
상기 타겟 오브젝트를 상기 제 2 이미지의 일부에 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하는 단계;
제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하는, 단계; 및
상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이하는 단계를 포함하며,
상기 복수의 컨볼루션 신경망 네트워크들은 제 1 및 제 2 컨볼루션 신경망 네트워크들을 포함하고,
상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하는 단계는,
상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크에 입력시켜 상기 제 1 컨볼루션 신경망 네트워크로부터 제 4 이미지를 획득하는 단계; 및
상기 제 4 이미지 및 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크에 입력시켜 상기 제 2 컨볼루션 신경망 네트워크로부터 상기 제 3 이미지를 획득하는 단계를 포함하는 동작 방법.In the method of operating a computer device including a display device,
Storing the first image and the second image;
Detecting at least one target object from the first image in response to a first user input selecting the first image;
Displaying the target object overlapping the part of the second image on the display device in response to a second user input overlapping the target object with a part of the second image;
In response to a third user input, the overlapped target object and the second image are processed through a plurality of convolutional neural network networks to convert the overlapped target object in association with the second image, and the plurality of convolutional neural networks Each of the networks comprising a plurality of convolutional encoder layers and at least one convolutional decoder layer; And
Displaying the converted target object overlapped with the part of the second image as a third image on the display device,
The plurality of convolutional neural network networks include first and second convolutional neural network networks,
Converting the overlapped target object in association with the second image,
Inputting the overlapped target object and the second image to the first convolutional neural network network to obtain a fourth image from the first convolutional neural network network; And
And obtaining the third image from the second convolutional neural network network by inputting the fourth image and the second image to the second convolutional neural network network.
상기 복수의 컨볼루션 신경망 네트워크들은 순차적인 스테이지들로서 제공되는 동작 방법.The method of claim 9,
The method of operation wherein the plurality of convolutional neural networks are provided as sequential stages.
상기 복수의 컨볼루션 신경망 네트워크들은 서로 다른 수의 컨볼루션 인코더 레이어들을 갖는 동작 방법.The method of claim 9,
The method of operation of the plurality of convolutional neural network networks having different numbers of convolutional encoder layers.
상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많거나 같은 동작 방법.The method of claim 9,
The number of convolutional encoder layers of the first convolutional neural network network is greater than or equal to the number of convolutional encoder layers of the second convolutional neural network.
상기 제 2 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수는 상기 제 1 컨볼루션 신경망 네트워크의 컨볼루션 인코더 레이어들의 수보다 많거나 같은 동작 방법.The method of claim 9,
The number of convolutional encoder layers of the second convolutional neural network network is greater than or equal to the number of convolutional encoder layers of the first convolutional neural network.
상기 프로그램은 상기 컴퓨터에 의해 실행될 때,
상기 컴퓨터에 저장된 제 1 이미지를 선택하는 제 1 사용자 입력에 응답하여 상기 제 1 이미지로부터 적어도 하나의 타겟 오브젝트를 감지하고,
디스플레이 장치에 디스플레이된 제 2 이미지의 일부에 상기 타겟 오브젝트를 오버랩하는 제 2 사용자 입력에 응답하여 상기 제 2 이미지의 상기 일부에 오버랩된 상기 타겟 오브젝트를 상기 디스플레이 장치에 디스플레이하고,
제 3 사용자 입력에 응답하여 상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 복수의 컨볼루션 신경망 네트워크들을 통해 프로세싱함으로써 상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하되, 상기 복수의 컨볼루션 신경망 네트워크들 각각은 복수의 컨볼루션 인코더 레이어들 및 적어도 하나의 컨볼루션 디코더 레이어를 포함하고,
상기 제 2 이미지의 상기 일부에 오버랩된 상기 변환된 타겟 오브젝트를 제 3 이미지로서 상기 디스플레이 장치에 디스플레이하는 명령어들을 포함하며,
상기 복수의 컨볼루션 신경망 네트워크들은 제 1 및 제 2 컨볼루션 신경망 네트워크들을 포함하고,
상기 오버랩된 타겟 오브젝트를 상기 제 2 이미지와 연관하여 변환하는 것은,
상기 오버랩된 타겟 오브젝트 및 상기 제 2 이미지를 상기 제 1 컨볼루션 신경망 네트워크에 입력시켜 상기 제 1 컨볼루션 신경망 네트워크로부터 제 4 이미지를 획득하고,
상기 제 4 이미지 및 상기 제 2 이미지를 상기 제 2 컨볼루션 신경망 네트워크에 입력시켜 상기 제 2 컨볼루션 신경망 네트워크로부터 상기 제 3 이미지를 획득하는 것을 포함하는 저장 매체.In a computer-readable storage medium storing a program,
When the program is executed by the computer,
Detecting at least one target object from the first image in response to a first user input selecting a first image stored in the computer,
Displaying the target object overlapping the part of the second image on the display device in response to a second user input of overlapping the target object with a part of the second image displayed on the display device,
In response to a third user input, the overlapped target object and the second image are processed through a plurality of convolutional neural network networks to convert the overlapped target object in association with the second image, and the plurality of convolutional neural networks Each of the networks includes a plurality of convolutional encoder layers and at least one convolutional decoder layer,
And instructions for displaying the converted target object overlapped with the part of the second image as a third image on the display device,
The plurality of convolutional neural network networks include first and second convolutional neural network networks,
Transforming the overlapped target object in association with the second image,
Inputting the overlapped target object and the second image into the first convolutional neural network network to obtain a fourth image from the first convolutional neural network network,
And obtaining the third image from the second convolutional neural network network by inputting the fourth image and the second image to the second convolutional neural network network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190073498A KR102193469B1 (en) | 2019-06-20 | 2019-06-20 | Computer device and method to perform image conversion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190073498A KR102193469B1 (en) | 2019-06-20 | 2019-06-20 | Computer device and method to perform image conversion |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102193469B1 true KR102193469B1 (en) | 2020-12-21 |
Family
ID=74090425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190073498A KR102193469B1 (en) | 2019-06-20 | 2019-06-20 | Computer device and method to perform image conversion |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102193469B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474925A (en) * | 2023-12-28 | 2024-01-30 | 山东润通齿轮集团有限公司 | Gear pitting detection method and system based on machine vision |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090111945A (en) * | 2008-04-23 | 2009-10-28 | 주식회사 케이티테크 | Method of composing image and motion picture and device using the same |
KR20150091798A (en) * | 2014-02-04 | 2015-08-12 | 엘지전자 주식회사 | Terminal and method for combining images thereof |
-
2019
- 2019-06-20 KR KR1020190073498A patent/KR102193469B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090111945A (en) * | 2008-04-23 | 2009-10-28 | 주식회사 케이티테크 | Method of composing image and motion picture and device using the same |
KR20150091798A (en) * | 2014-02-04 | 2015-08-12 | 엘지전자 주식회사 | Terminal and method for combining images thereof |
Non-Patent Citations (1)
Title |
---|
Jianxin Lin ET AL:"Conditional Image-to-Image Translation", The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 5524-5532, 18-22 June 2018 (2018.06.18.) 1부.* * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474925A (en) * | 2023-12-28 | 2024-01-30 | 山东润通齿轮集团有限公司 | Gear pitting detection method and system based on machine vision |
CN117474925B (en) * | 2023-12-28 | 2024-03-15 | 山东润通齿轮集团有限公司 | Gear pitting detection method and system based on machine vision |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10733716B2 (en) | Method and device for providing image | |
CN108921225B (en) | Image processing method and device, computer equipment and storage medium | |
CN109409161B (en) | Graphic code identification method, device, terminal and storage medium | |
CN110088799B (en) | Image processing apparatus and image processing method | |
US11741578B2 (en) | Method, system, and computer-readable medium for improving quality of low-light images | |
CN105474622A (en) | Method and apparatus for generating an all-in-focus image | |
KR102385188B1 (en) | Electronic device and method for processing image data in the electronic device | |
CN112602088B (en) | Method, system and computer readable medium for improving quality of low light images | |
KR102557561B1 (en) | Method and system for determining depth of information of an image | |
WO2020093782A1 (en) | Method, system, and computer-readable medium for improving quality of low-light images | |
CN109977963B (en) | Image processing method, apparatus, device and computer readable medium | |
KR20190088406A (en) | Video playback device and controlling method thereof | |
CN112084959B (en) | Crowd image processing method and device | |
CN111967477A (en) | RGB-D image saliency target detection method, device, equipment and storage medium | |
CN112307976B (en) | Target detection method, target detection device, electronic equipment and storage medium | |
CN112016502B (en) | Safety belt detection method, safety belt detection device, computer equipment and storage medium | |
CN112991254A (en) | Disparity estimation system, method, electronic device, and computer-readable storage medium | |
KR102193469B1 (en) | Computer device and method to perform image conversion | |
US20230419452A1 (en) | Method and device for correcting image on basis of compression quality of image in electronic device | |
CN113642359B (en) | Face image generation method and device, electronic equipment and storage medium | |
CN113837980A (en) | Resolution adjusting method and device, electronic equipment and storage medium | |
CN116704200A (en) | Image feature extraction and image noise reduction method and related device | |
KR102605451B1 (en) | Electronic device and method for providing multiple services respectively corresponding to multiple external objects included in image | |
US20230325980A1 (en) | Electronic device and image processing method thereof | |
CN111373761A (en) | Display device, control system of the display device, and method of controlling the display device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |