KR20200027426A - 컨벌루션 뉴럴 네트워크로부터 복수의 출력들의 앙상블을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치 - Google Patents
컨벌루션 뉴럴 네트워크로부터 복수의 출력들의 앙상블을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR20200027426A KR20200027426A KR1020190105472A KR20190105472A KR20200027426A KR 20200027426 A KR20200027426 A KR 20200027426A KR 1020190105472 A KR1020190105472 A KR 1020190105472A KR 20190105472 A KR20190105472 A KR 20190105472A KR 20200027426 A KR20200027426 A KR 20200027426A
- Authority
- KR
- South Korea
- Prior art keywords
- feature maps
- transform
- inverse transform
- cnn
- learning
- Prior art date
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 121
- 238000000034 method Methods 0.000 title claims abstract description 118
- 230000006870 function Effects 0.000 claims abstract description 126
- 230000009466 transformation Effects 0.000 claims abstract description 53
- 230000001131 transforming effect Effects 0.000 claims abstract description 28
- 238000012360 testing method Methods 0.000 claims description 125
- 230000011218 segmentation Effects 0.000 claims description 73
- 230000008569 process Effects 0.000 claims description 70
- 238000012549 training Methods 0.000 claims description 26
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 7
- 238000010998 test method Methods 0.000 claims description 4
- 238000013135 deep learning Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
-
- G06K9/00624—
-
- G06K9/6256—
-
- G06K9/6262—
-
- G06K9/6271—
-
- 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
-
- 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V10/7747—Organisation of the process, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
본 발명은 컨벌루션 뉴럴 네트워크(Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치에 관한 것이다. 보다 상세하게는, (a) CNN 장치가, 입력 이미지를 수신하고, 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 단계; (b) 상기 CNN 장치가, 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 단계; (c) 상기 CNN 장치가, 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계; 및 (d) 상기 CNN 장치가, 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 단계;를 포함하는 것을 특징으로 하는 방법 및 이를 이용한 장치에 관한 것이다.
Description
본 발명은 컨벌루션 뉴럴 네트워크(Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치에 관한 것이다. 보다 상세하게는, (a) CNN 장치가, 입력 이미지를 수신하고, 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 단계; (b) 상기 CNN 장치가, 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 단계; (c) 상기 CNN 장치가, 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계; 및 (d) 상기 CNN 장치가, 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 단계;를 포함하는 것을 특징으로 하는 방법 및 이를 이용한 장치에 관한 것이다.
딥러닝은 사물이나 데이터를 군집화하거나 분류하는 데 사용하는 기술이다. 예를 들어 컴퓨터는 사진만으로 개와 고양이를 구분하지 못한다. 하지만 사람은 아주 쉽게 구분할 수 있다. 이를 위해 '기계학습(Machine Learning)'이라는 방법이 고안됐다. 많은 데이터를 컴퓨터에 입력하고 비슷한 것끼리 분류하도록 하는 기술이다. 저장된 개 사진과 비슷한 사진이 입력되면, 이를 개 사진이라고 컴퓨터가 분류하도록 한 것이다.
데이터를 어떻게 분류할 것인가를 놓고 이미 많은 기계학습 알고리즘이 등장했다. '의사결정나무'나 '베이지안망', '서포트벡터머신(SVM)', '인공신경망' 등이 대표적이다. 이 중 딥러닝은 인공신경망의 후예다.
딥 컨벌루션 뉴럴 네트워크(Deep Convolution Neural Networks; Deep CNNs)는 딥 러닝 분야에서 일어난 놀라운 발전의 핵심이다. CNNs은 글자 인식 문제를 풀기 위해 90년대에 이미 사용되었지만, 현재처럼 널리 쓰이게 된 것은 최근의 연구 결과 덕분이다. 이러한 딥 CNN은 2012년 ImageNet 이미지 분류 시합에서 다른 경쟁자들을 이기고 우승을 차지했다. 그리고 나서 컨벌루션 뉴럴 네트워크는 머신러닝(Machine Learning) 분야에서 매우 유용한 툴이 되었다. 한편, 이미지 세그멘테이션은 입력으로 이미지(트레이닝 이미지 또는 테스트 이미지)를 받아서 출력으로 라벨 이미지를 생성하는 방법이다. 최근 딥러닝(Deep learning) 기술이 각광을 받으면서 세그멘테이션을 수행할 때에도 딥러닝을 많이 사용하는 추세이다.
한편, 이러한 세그멘테이션 성능 향상을 위한 다양한 방법이 제시되고 있다.
이러한 방법 중 하나로서, 세그멘테이션을 수행할 때, CNN을 여러 개 사용하여 세그멘테이션의 정확도를 높이고자 할 수 있다. 즉, 동일한 입력 데이터에 대해 복수 개의 CNN 장치로 입력한 후, 복수 개의 CNN 장치 각각의 출력을 합쳐서 사용하는데, 이러한 경우 복수 개의 CNN 장치의 파라미터들의 초기 값들도 매번 랜덤하게 설정하고, 하나의 세그멘테이션 결과 값을 얻기 위해서 복수의 CNN 장치를 개별적으로 학습시켜야 한다는 문제점이 존재한다.
본 발명은 상술한 문제점들을 모두 해결하는 것을 그 목적으로 한다.
본 발명의 다른 목적은 CNN 장치의 개수를 1개만 사용하면서도 하나의 입력 이미지로부터 다양한 정보를 얻을 수 있으므로, 세그멘테이션 성능을 향상시킬 수 있는 방법을 제공하는 것을 목적으로 한다.
본 발명의 일 태양에 따르면, 컨벌루션 뉴럴 네트워크(Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 방법에 있어서, (a) CNN 장치가, 입력 이미지를 수신하고, 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 단계; (b) 상기 CNN 장치가, 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 단계; (c) 상기 CNN 장치가, 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계; 및 (d) 상기 CNN 장치가, 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 단계;를 포함하는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 아핀 변환 알고리즘(affine transform algorithm) 및 박판 스플라인 알고리즘(thin-plate spline algorithm) 중 적어도 하나를 이용하여 상기 입력 이미지(I)를 변형하는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 각각의 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 복수의 역변환 특징 맵들은 각 픽셀 별로 각각의 세그멘테이션 스코어를 가지며, 상기 (d) 단계에서, 상기 CNN 장치는, 상기 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 통합된 특징 맵을 획득하는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 (d) 단계에서, 상기 CNN 장치는, 상기 통합된 특징 맵에서 픽셀 별 채널 값들 중 가장 높은 채널에 대응하는 라벨(label)을 해당 픽셀에 부여함으로써 세그멘테이션 출력 이미지를 획득하는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 (c) 단계에서, 상기 CNN장치는, 상기 역변환 함수를 이용하여, 상기 변형 입력 이미지들의 세그멘테이션의 결과인 상기 변형 특징 맵들의 각 픽셀을 상기 입력 이미지의 세그멘테이션의 결과에 대응하는 위치로 이동시켜, 상기 복수의 역변환 특징 맵들을 생성하는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, (e) 상기 CNN 장치가, (i) 상기 통합된 특징 맵을 참조로 획득된 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, (ii) 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 적어도 하나의 파라미터를 최적화하는 단계;를 더 포함하는 것을 특징으로 하는 방법이 제공된다.
본 발명의 다른 태양에 따르면, 입력 이미지로서의 테스트 이미지에 대한 CNN 테스트 방법에 있어서, (a) CNN 장치를 이용하여 (i) 트레이닝 이미지로서의 학습용 입력 이미지를 수신하고 상기 학습용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 학습용 변형 입력 이미지들을 생성하는 프로세스; (ii) 상기 학습용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 학습용 변형 입력 이미지 각각에 대응하는 학습용 변형 특징 맵 각각을 획득하는 프로세스; (iii) 상기 학습용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 학습용 변형 특징 맵 각각에 대응하는 학습용 역변환 특징 맵 각각을 생성하는 프로세스; (iv) 상기 학습용 역변환 특징 맵들 중 적어도 일부를 통합하여 학습용 통합 특징 맵을 획득하는 프로세스; 및 (v) 상기 학습용 통합 특징 맵을 참조로 획득된 학습용 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 파라미터를 최적화하는 프로세스;를 거쳐 학습된 상기 CNN 장치의 파라미터가 획득된 상태에서, 상기 학습된 상기 CNN 장치의 최적화된 파라미터를 포함하는 테스트 장치가, 상기 테스트용 입력 이미지를 획득하는 단계; (b) 상기 테스트 장치가, 상기 획득된 테스트용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지 들을 생성하는 단계; (c) 상기 테스트 장치가, 상기 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득하는 단계; (d) 상기 테스트 장치가, 상기 테스트용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 테스트용 변형 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계; 및 (e) 상기 테스트 장치가, 상기 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득하는 단계;를 포함하는 방법이 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 방법이 제공된다.
일 실시예에서, 상기 복수의 학습용 역변환 특징 맵 및 상기 복수의 테스트용 역변환 특징 맵은 각 픽셀 별로 각각의 세그멘테이션 스코어를 가지며, 상기 (iv) 프로세스에서, 상기 CNN 장치는, 상기 복수의 학습용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 복수의 학습용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 학습용 통합 특징 맵을 획득하고, 상기 (e) 단계에서, 상기 테스트 장치는, 상기 테스트용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 테스트용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 테스트용 통합 특징 맵을 획득하는 것을 특징으로 하는 방법이 제공된다.
본 발명의 또 다른 태양에 따르면, 컨벌루션 뉴럴 네트워크 (Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 장치에 있어서, 트레이닝 이미지로서의 입력 이미지를 수신하는 통신부; 및 (1) 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 프로세스; (2) 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 프로세스; (3) 상기 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 프로세스;를 수행하는 프로세서;를 포함하는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수 (T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 아핀 변환 알고리즘(affine transform algorithm) 및 박판 스플라인 알고리즘(thin-plate spline algorithm) 중 적어도 하나를 이용하여 상기 입력 이미지(I)를 변형하는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 복수의 역변환 특징 맵들은 각 픽셀 별로 세그멘테이션 스코어를 가지며, 상기 (4) 프로세스에서, 상기 프로세서는, 상기 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 통합된 특징 맵을 획득하는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 (4) 프로세스에서, 상기 프로세서는, 상기 통합된 특징 맵에서 픽셀 별 채널 값들 중 가장 높은 채널에 대응하는 라벨(label)을 해당 픽셀에 부여함으로써 세그멘테이션 출력 이미지를 획득하는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 (3) 프로세스에서, 상기 프로세서는, 상기 역변환 함수를 이용하여, 상기 변형 입력 이미지들의 세그멘테이션의 결과인 상기 변형 특징 맵들의 각 픽셀을 상기 입력 이미지의 세그멘테이션 결과에 대응하는 위치들로 이동시켜, 상기 복수의 역변환 특징 맵들을 생성하는 것을 특징으로 하는 CNN 장치가 제공된다.
일 실시예에서, 상기 프로세서가, (5) 상기 통합된 특징 맵을 참조로 획득된 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 적어도 하나의 파라미터를 최적화하는 프로세스;를 더 수행하는 것을 특징으로 하는 CNN 장치가 제공된다.
본 발명의 또 다른 태양에 따르면, 입력 이미지로서의 테스트 이미지에 대한 CNN 테스트 장치에 있어서, CNN 장치를 이용하여 (i) 트레이닝 이미지로서의 학습용 입력 이미지를 수신하고 상기 학습용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 학습용 변형 입력 이미지들을 생성하는 프로세스; (ii) 상기 학습용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 학습용 변형 입력 이미지 각각에 대응하는 학습용 변형 특징 맵 각각을 획득하는 프로세스; (iii) 상기 학습용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 상기 학습용 변형 특징 맵 각각에 대응하는 학습용 역변환 특징 맵 각각을 생성하는 프로세스; (iv) 상기 학습용 역변환 특징 맵들 중 적어도 일부를 통합하여 학습용 통합 특징 맵을 획득하는 프로세스; 및 (v) 상기 학습용 통합 특징 맵을 참조로 획득된 학습용 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 파라미터를 최적화하는 프로세스;를 거쳐 학습된 상기 CNN 장치의 파라미터가 획득된 상태에서, 상기 학습된 상기 CNN 장치의 최적화된 파라미터를 포함하는 테스트 장치가, 상기 테스트용 입력 이미지를 수신하는 통신부; 및 (1) 상기 획득된 테스트용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지 들을 생성하는 프로세스; (2) 상기 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득하는 프로세스; (3) 상기 테스트용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 테스트용 변형 특징 맵 각각에 대응하는 테스트용 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득하는 프로세스;를 수행하는 프로세서;를 포함하는 테스트 장치가 제공된다.
일 실시예에서, 상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 에서 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 테스트 장치가 제공된다.
일 실시예에서, 상기 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 테스트 장치가 제공된다.
일 실시예에서, 상기 복수의 학습용 역변환 특징 맵 및 상기 복수의 테스트용 역변환 특징 맵은 각 픽셀 별로 세그멘테이션 스코어를 가지며, 상기 (iv) 프로세스에서, 상기 CNN 장치는, 상기 복수의 학습용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 복수의 학습용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 학습용 통합 특징 맵을 획득하고, 상기 (4) 프로세스에서, 상기 테스트 장치는, 상기 테스트용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여 상기 테스트용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 테스트용 통합 특징 맵을 획득하는 것을 특징으로 하는 테스트 장치가 제공된다.
본 발명에 따르면, CNN 장치, 학습 장치, 또는 테스트 장치를 1개만 사용하면서도 하나의 입력 이미지로부터 복수개의 다른 특징 맵을 획득하는 효과가 있다.
또한, 본 발명에 따르면, 하나의 입력 이미지로부터 많은 다양한 결과를 얻고 이를 통합함으로써 세그멘테이션의 성능이 뛰어난 CNN 장치, 학습 장치, 또는 테스트 장치를 구현할 수 있는 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 학습을 수행하는 방법을 나타내는 흐름도이다.
도 2는 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 세그멘테이션을 수행하는 과정을 나타내는 도면이다.
도 3 내지 도 6은 도 2에 도시된 세그멘테이션의 과정을 각 단계별로 나타낸 도면이다.
도 7은 본 발명에 따라 CNN의 전체 연산 과정을 나타내는 도면이다.
도 1은 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 학습을 수행하는 방법을 나타내는 흐름도이다.
도 2는 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 세그멘테이션을 수행하는 과정을 나타내는 도면이다.
도 3 내지 도 6은 도 2에 도시된 세그멘테이션의 과정을 각 단계별로 나타낸 도면이다.
도 7은 본 발명에 따라 CNN의 전체 연산 과정을 나타내는 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 발명에서 언급하는 각종 이미지는 포장 또는 비포장 도로 관련 이미지를 포함할 수 있으며, 이 경우 도로 환경에서 등장할 수 있는 객체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니며, 본 발명에서 언급하는 각종 이미지는 도로와 상관 없는 이미지(가령, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내와 관련된 이미지)일 수도 있으며, 이 경우, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내 환경에서 등장할 수 있는 객체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, "포함하다"라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 학습을 수행하는 방법을 나타내는 흐름도이고, 도 2는 본 발명에 따라 입력 이미지의 변형을 통해 획득된 다수의 이미지 세트를 사용하여 세그멘테이션을 수행하는 과정을 나타내는 도면이며, 도 3 내지 도 6은 도 2에 도시된 세그멘테이션의 과정을 각 단계별로 나타낸 도면이고, 도 7은 본 발명에 따라 CNN의 전체 연산 과정을 나타내는 도면이다.
도 1을 참조하면, 본 발명에 따른 CNN 학습 방법은, (i) 입력 이미지를 수신하고, 입력 이미지를 변형시키는 복수의 변형 함수를 적용하여 복수의 변형 입력 이미지를 생성하는 단계(S01), (ii) 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 단계(S02), (iii) 변형된 특징 맵 각각에 대해 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계(S03), (iv) 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 단계(S04), (v) 통합된 특징 맵을 참조로 세그멘테이션의 결과를 획득하는 단계(S05) 및 (vi) 출력 값 즉, 세그멘테이션 결과 값 및 GT 값 사이의 차를 바탕으로 로스를 산출하고, CNN을 학습하는 단계(S06)를 포함한다. 여기서, S06 단계가 필수적인 것은 아니며, S01 단계부터 S05단계까지 수행하여 세그멘테이션의 결과를 얻는 과정도 본 발명의 중요한 특징이라 할 것이다.
이러한 과정은 CNN 장치에서 수행될 수 있다. 이 CNN 장치의 통신부에서는 입력 이미지를 수신하며, CNN 장치의 프로세서에서는 (1) 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 프로세스; (2) 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 프로세스; (3) 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 프로세스를 수행한다.
물론, 이러한 CNN을 학습하는 학습 장치(미도시)의 프로세서는, (1) 트레이닝 이미지로서의 입력 이미지를 수신하고, 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 프로세스; (2) 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 프로세스; (3) 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 생성하여 세그멘테이션 결과(출력 값)를 획득하는 프로세스를 수행한 후, 세그멘테이션 결과(출력 값)와 GT 값의 차이를 바탕으로 로스를 산출하고, 로스를 최소화하도록 백프로파게이션을 수행함으로써, CNN 장치의 적어도 하나의 파라미터를 최적화하는 프로세스를 수행하는 것을 특징으로 한다.
한편, 본 발명에 따른 CNN 테스트 방법에서는 상기 학습 과정에 의해 최적화된 적어도 하나의 파라미터를 가지는 CNN 장치를 사용하되, 상기에서 언급한 S01 단계에서 S05 단계를 수행할 수 있다.
구체적으로, 본 발명에 따른 CNN 테스트 방법은, 로스를 줄이도록 백프로파게이션을 수행함으로써, CNN 장치의 적어도 하나의 파라미터를 최적화하는 프로세스를 거쳐 학습된 상기 CNN 장치의 파라미터가 획득된 상태에서, 학습된 CNN 장치의 최적화된 파라미터를 포함하는 테스트 장치가, 테스트용 입력 이미지를 획득하면, (i) 획득된 테스트용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지들을 생성하고, (ii) 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득한 후, (iii) 테스트용 변형 특징 맵 각각에 대해 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 테스트용 변형 특징 맵 각각에 대응하는 테스트용 역변환 특징 맵 각각을 생성한다. 그리고, 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득하고, 세그멘테이션 결과를 획득하게 된다. 이러한 장치는 테스트 장치를 통해 수행될 수 있으며, 테스트 장치의 통신부는, 테스트용 입력 이미지를 수신하는 기능을 하고, 테스트 장치의 프로세서는 위에서 언급한 각 단계에 해당하는 프로세스를 수행한다.
이하, 도 2 내지 도 7을 참조하여, 본 발명에 따른 CNN을 이용한 세그멘테이션 과정 및 이를 이용한 학습 과정 및 테스트 과정을 좀 더 구체적으로 설명한다. 물론, 본 발명은 세그멘테이션에 이용되는 것에 한정되는 것은 아니며, 상기의 통합 특징 맵이 다양한 경우에 적용될 수 있음은 물론이라 할 것이다.
도 2 및 도 3에 도시된 바와 같이, S01 단계에서, CNN 장치가 하나의 입력 이미지를 획득하면(또는 테스트 장치가 테스트 이미지를 획득), 이 입력 이미지(I)를 변형시키는 복수의 변형 함수(Ti)들을 적용하여 복수의 변형 입력 이미지들(Ti (I))을 생성한다. 예를 들어, 도 3을 참조하면, 변형 함수(Ti)가 4 가지 방법으로 입력 이미지(I)를 변형시켜 4 개의 변형 입력 이미지(Ti (I))를 생성하고 있음을 알 수 있다. 일반화하면, 상기 변형 함수(Ti)는 입력 이미지(I)를 n 개의 변형 입력 이미지(Ti(I))로 변형시키는 함수이며, 여기서 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 이와 대응하는 역변환 함수(T-1 i)를 가지고 있다. 즉, T-1 i(Ti(I))=I 이다.
이때, 변형 함수(Ti)는 스케일링 함수(scaling function)이나 트랜지션 함수(transition function)일 수도 있고, 아핀 변환 알고리즘(affine transform algorithm) 및 박판 스플라인 인터폴레이션 알고리즘(thin-plate spline interpolation algorithm) 등 다양한 알고리즘이 사용될 수 있다. 또한, 각각의 변형 함수(Ti)는 다양한 알고리즘을 사용할 수도 있지만, 하나의 알고리즘을 적용하되, 이에 적용되는 세부 파라미터는 차이가 있는 함수일 수도 있다.
이와 같이, 변형 함수(Ti)를 통해 생성되는 변형 입력 이미지들(Ti (I))을 비교하면 세그멘테이션 하려는 각각의 객체의 위치나 크기가 미세하게 다름을 알 수 있다.
그리고 도 4에 도시된 바와 같이, S02 단계에서, CNN 장치가, 변형된 입력 이미지 각각(Ti(I))에 대하여 컨벌루션 연산을 적용하여 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각(Si = CNN(Ti(I))을 획득한다.
도 7은 CNN 연산을 통해 특징 맵을 생성하는 과정을 예시적으로 도시한다.
도 7을 참조하여, CNN 연산을 통해 변형된 특징 맵(Si)을 생성하는 과정(S02)을 구체적으로 설명하면, 복수의 변형 입력 이미지들(Ti(I))를 CNN 장치에 입력하고, 컨벌루션 레이어에 포함된 복수 개의 컨벌루션 필터에서 여러 번의 컨벌루션 연산을 수행하여 컨볼루션 K 레이어의 출력을 각각 획득한다. 그리고 나서 생성된 컨볼루션 K 레이어의 출력 각각을 다시 디컨벌루션 레이어에 포함된 복수 개의 디컨볼루션 필터에서 여러 번의 디컨볼루션 연산을 수행하여 디컨볼루션 1 레이어의 출력을 각각 획득한다. 즉, 변형된 특징 맵(Si) 각각을 획득한다. 그리고 추가 연산을 통해 변형된 특징 맵(Si) 각각으로부터 세그멘테이션 결과를 얻는다. 여기서, 추가 연산은 이미 공지된 기술로 당업자에게 알려져 있는 것이므로, 구체적으로 설명하지 않는다. 한편, 도 7에서는 편의상 하나의 변형된 입력 이미지를 도시하였지만, 복수의 변형된 입력 이미지 각각에 적용할 수 있을 것이다.
다음으로, 본 발명에서 세그멘테이션 과정은 S03 단계 및 S04 단계 이후에 진행된다. 여기서, 적어도 하나의 컨볼루션 연산으로 이미지를 인코딩하여 특징 맵을 획득하고, 특징 맵을 디코딩하여 다시 세그멘테이션 이미지를 획득하는 구조를 인코딩-디코딩 네트워크, 또는 U-Net이라고 한다. 인코딩 과정에서 각 컨볼루션 연산을 수행할 때마다 입력 이미지의 크기가 예를 들어 1/2로 줄어지게 되는데, 이는 이미지 사이즈를 줄여서 연산량을 줄이고자 하기 위함이다. 또한 인코딩 과정에서 컨볼루션 필터를 통해 입력된 이미지의 채널 수는 증가하지만, 이는 줄여진 연산량의 이득을 활용하면서도 늘어난 채널을 통해 복잡한 패턴을 얻어내기 위함이다. 가령, 인코딩 과정에서 각각의 컨볼루션 필터를 거칠 때마다 이미지 사이즈는 1/2로 줄어들고 채널 수는 2배로 늘어나는 경우, 이렇게 줄어든 특징 맵은 고주파 영역이 많이 제거되고 저주파 영역 위주의 정보를 가지게 되는데, 이러한 저주파 영역은 이미지의 의미있는 (meaningful) 부분, 즉, 하늘, 도로, 건물, 자동차 등 유의미한 부분을 의미한다. 디컨볼루션 연산 즉, 디코딩 연산을 통해 출력된 특징 맵을 통해 이러한 의미있는 부분에 대한 세그멘테이션 결과를 획득하게 된다.
다음으로, 도 5에 도시된 바와 같이, S03 단계에서, CNN 장치가, 변형된 특징 맵(Si) 각각에 대응하는 역변환 함수(T-1 i)를 각각 적용하여 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 (T-1 i (Si)) 각각을 생성한다. 이때, 역변환 특징 맵 (T-1 i (Si)) 각각은 각 픽셀 별로 각각의 세그멘테이션 스코어를 갖는다. 이 단계는, 역변환 함수를 이용하여, 복수의 변형 입력 이미지들(Ti (I))의 세그멘테이션 결과인 변형된 특징 맵(Si)들의 각 픽셀을 입력 이미지(I)의 세그멘테이션 결과상에서 각 대응하는 위치들로 이동시킴으로써, 복수의 역변환 특징 맵(T-1 i (Si))을 생성하는 과정이다. 즉, 입력 이미지에서 어떤 객체의 픽셀 위치가 (x, y)였는데, 이 위치에 변형 함수(Ti)가 적용됨으로써 (x', y')로 변경되었다면, 변형된 특징 맵(Si)에서의 상기 픽셀의 대응 위치도 (x', y')에 대응하는 위치에 존재하게 된다. 이 위치에 CNN 장치가 역변환 함수(T-1 i)를 적용하여 해당 픽셀의 위치를 (x, y)에 대응하는 위치로 다시 이동시키는 것이다.
S04 단계에서, 도 6에 도시된 바와 같이, 역변환 특징 맵 (T-1 i (Si)) 중 적어도 일부를 통합하여 통합된 특징 맵을 획득한다. 예를 들어, 이 단계는 역변환 특징 맵(T-1 i (Si)) 각각의 각 픽셀들의 각 스코어를 합하는 연산을 수행하고, 아래와 같은 수학식으로 표현될 수 있다.
또한, 이 단계는, 역변환 특징 맵(T-1 i (Si)) 각각의 각 픽셀 별로 각 스코어의 평균 값을 구할 수도 있으며, 각 픽셀 별 각 스코어의 중앙 값을 구하여 얻을 수도, 각 픽셀 별 각 스코어의 최대값을 구하여 얻을 수도 있을 것이다. 여기서, 중앙 값은 n개 중에서 (n/2)번째 값이 갖는 값을 의미한다.
이 과정을 통해 CNN 장치는, 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 참조로 하여, 역변환 특징 맵 각각에 대응하는 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 통합 특징 맵을 획득할 수 있다.
여기서, 통합된 특징 맵에서 픽셀 별 채널 값들 중 가장 높은 채널값에 대응하는 라벨(label)을 해당 픽셀에 부여함으로써 세그멘테이션 라벨을 얻을 수 있다. 즉, S04 단계에서, 특징 맵을 통합하여, 각 이미지 별로 세그멘테이션 스코어 맵을 획득하는데, 이 세그멘테이션 스코어 맵은 얻고자 하는 클래스에 대응하는 채널(예를 들어 클래스가 N개 이면, 각각 하나의 클래스에 대응하는 N 개의 채널과 배경(background)에 대응하는 채널 1개를 합한 N+1개의 채널)로 이루어져 있고, 각 픽셀 별로 N+1개의 채널 값들 중 가장 높은 값을 가지는 채널에 대응하는 라벨을 해당 픽셀에 부여하여 세그멘테이션 출력 이미지를 생성한다. 또한, 세그멘테이션 출력 이미지를 구하는데 필요한 여러 선형 또는 비선형 연산을 더 수행할 수도 있을 것이다.
그리고, S06 단계에서, CNN 장치가, 통합 특징 맵을 참조로 획득된 출력 값(즉, 세그멘테이션 결과)과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, CNN 장치의 적어도 하나의 파라미터를 최적화한다. 이를, 도 7을 참조하여 설명하면, CNN 장치는 학습하는 과정에서, 입력 이미지를 트레이닝 이미지로서 획득하여, 산출된 세그멘테이션 이미지와 GT 이미지와의 차이인 로스를 계산한다. 그리고 세그멘테이션 이미지를 구하는 과정과 반대 방향으로 거슬러올라가는 백프로파게이션 과정을 통해, 상기 CNN 장치의 파라미터를 최적화하는 학습을 하게 된다.
본 발명에 의하면, CNN 장치를 하나만 학습을 하되, 하나의 입력 이미지를 여러 변형된 입력 이미지로 바꾼 다음 이 여러 변형된 입력 이미지에서 나온 결과들을 합하게 되면, 하나의 입력 이미지로부터 많은 특징 맵을 획득하고 아울러 다양한 결과를 얻을 수 있다. 이를 통해, 세그멘테이션을 포함한 CNN 장치의 성능이 향상될 수 있게 된다. 즉, a 이미지를 넣었을 때 세그멘테이션 결과가 좋을 수 있고, a로부터 조금 변형된 이미지인 a' 이미지를 넣으면 세그멘테이션 결과가 좋지 않을 수 있는 등, 입력 이미지가 조금씩 다르면 세그멘테이션 결과가 다를 수 있는데, 이러한 조금씩 다른 변형 이미지들을 고려하여 통합된 특징 맵을 획득하게 되면, 더욱 정확한 세그멘테이션 결과를 얻을 수 있게 된다.
이러한 과정은 CNN 학습 과정 후 얻은 실제 테스트 과정에서도 동일하게 적용될 수 있을 것이다. 즉, 앞서 설명한 바와 같이, 테스트 장치가, (i) 테스트용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지들을 생성하고, (ii) 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득한 후, (iii) 테스트용 변형 특징 맵 각각에 대해 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 테스트용 변형 특징 맵 각각에 대응하는 테스트용 역변환 특징 맵 각각을 생성하고, (iv) 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득한다. 여기서, 통합 특징 맵을 획득하고 난 후에 세그멘테이션 결과를 얻으면, 더 정확한 세그멘테이션 결과를 얻을 수 있게 된다.
본 발명 기술분야의 통상의 기술자에게 이해될 수 있는 바로서, (i) 위에서 설명된 이미지, 예컨대 트레이닝 이미지, 테스트 이미지와 같은 이미지 데이터의 송수신이 CNN 장치, 학습 장치 및 테스트 장치의 통신부들에 의하여 이루어질 수 있으며, (ii) 특징 맵과 연산을 수행하기 위한 데이터가 CNN 장치, 학습 장치 및 테스트 장치의 프로세서(및/또는 메모리)에 의하여 보유/유지될 수 있고, (iii) 컨벌루션 연산, 디컨벌루션 연산, 로스 값 연산 과정이 주로 CNN 장치, 학습 장치 및 테스트 장치의 프로세서에 의하여 수행될 수 있으나, 본 발명이 이에 한정되지는 않을 것이다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
Claims (24)
- 컨벌루션 뉴럴 네트워크(Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 방법에 있어서,
(a) CNN 장치가, 입력 이미지를 수신하고, 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 단계;
(b) 상기 CNN 장치가, 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 단계;
(c) 상기 CNN 장치가, 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 단계; 및
(d) 상기 CNN 장치가, 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 단계;
를 포함하는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며,
상기 i는 1 내지 n 의 자연수이며,
상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 방법. - 제 2 항에 있어서,
상기 변형 함수(Ti)는 아핀 변환 알고리즘(affine transform algorithm) 및 박판 스플라인 알고리즘(thin-plate spline algorithm) 중 적어도 하나를 이용하여 상기 입력 이미지(I)를 변형하는 것을 특징으로 하는 방법. - 제 2 항에 있어서,
상기 각각의 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 복수의 역변환 특징 맵들은 각 픽셀 별로 각각의 세그멘테이션 스코어를 가지며,
상기 (d) 단계에서,
상기 CNN 장치는, 상기 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 통합된 특징 맵을 획득하는 것을 특징으로 하는 방법. - 제 5 항에 있어서,
상기 (d) 단계에서,
상기 CNN 장치는, 상기 통합된 특징 맵에서 픽셀 별 채널 값들 중 가장 높은 채널에 대응하는 라벨(label)을 해당 픽셀에 부여함으로써 세그멘테이션 출력 이미지를 획득하는 것을 특징으로 하는 방법. - 제 6 항에 있어서,
상기 (c) 단계에서,
상기 CNN장치는, 상기 역변환 함수를 이용하여, 상기 변형 입력 이미지들의 세그멘테이션의 결과인 상기 변형 특징 맵들의 각 픽셀을 상기 입력 이미지의 세그멘테이션의 결과상의 대응하는 위치로 이동시켜, 상기 복수의 역변환 특징 맵들을 생성하는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
(e) 상기 CNN 장치가, (i) 상기 통합된 특징 맵을 참조로 획득된 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, (ii) 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 적어도 하나의 파라미터를 최적화하는 단계;
를 더 포함하는 것을 특징으로 하는 방법. - 입력 이미지로서의 테스트 이미지에 대한 CNN 테스트 방법에 있어서,
(a) CNN 장치를 이용하여 (i) 트레이닝 이미지로서의 학습용 입력 이미지를 수신하고 상기 학습용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 학습용 변형 입력 이미지들을 생성하는 프로세스; (ii) 상기 학습용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 학습용 변형 입력 이미지 각각에 대응하는 학습용 변형 특징 맵 각각을 획득하는 프로세스; (iii) 상기 학습용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 학습용 변형 특징 맵 각각에 대응하는 학습용 역변환 특징 맵 각각을 생성하는 프로세스; (iv) 상기 학습용 역변환 특징 맵들 중 적어도 일부를 통합하여 학습용 통합 특징 맵을 획득하는 프로세스; 및 (v) 상기 학습용 통합 특징 맵을 참조로 획득된 학습용 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 파라미터를 최적화하는 프로세스;를 거쳐 학습된 상기 CNN 장치의 파라미터가 획득된 상태에서, 상기 학습된 상기 CNN 장치의 최적화된 파라미터를 포함하는 테스트 장치가, 상기 테스트용 입력 이미지를 획득하는 단계;
(b) 상기 테스트 장치가, 상기 획득된 테스트용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지 들을 생성하는 단계;
(c) 상기 테스트 장치가, 상기 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득하는 단계;
(d) 상기 테스트 장치가, 상기 테스트용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 테스트용 변형 특징 맵 각각에 대응하는 테스트용 역변환 특징 맵 각각을 생성하는 단계; 및
(e) 상기 테스트 장치가, 상기 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득하는 단계;
를 포함하는 방법. - 제 9 항에 있어서,
상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 방법. - 제 10 항에 있어서,
상기 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 방법. - 제 9 항에 있어서,
상기 복수의 학습용 역변환 특징 맵 및 상기 복수의 테스트용 역변환 특징 맵은 각 픽셀 별로 각각의 세그멘테이션 스코어를 가지며,
상기 (iv) 프로세스에서,
상기 CNN 장치는, 상기 복수의 학습용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 복수의 학습용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 학습용 통합 특징 맵을 획득하고,
상기 (e) 단계에서,
상기 테스트 장치는, 상기 테스트용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 테스트용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 테스트용 통합 특징 맵을 획득하는 것을 특징으로 하는 방법. - 컨벌루션 뉴럴 네트워크(Convolutional Neural Network)로부터 복수의 출력들의 앙상블(ensemble)을 이용하여 통합된 특징 맵을 제공하기 위한 장치에 있어서,
트레이닝 이미지로서의 입력 이미지를 수신하는 통신부; 및
(1) 상기 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 변형 입력 이미지들을 생성하는 프로세스; (2) 상기 변형된 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 변형된 입력 이미지 각각에 대응하는 변형된 특징 맵 각각을 획득하는 프로세스; (3) 상기 변형된 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 변형된 특징 맵 각각에 대응하는 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 역변환 특징 맵들 중 적어도 일부를 통합하여 통합된 특징 맵을 획득하는 프로세스;를 수행하는 프로세서;
를 포함하는 것을 특징으로 하는 CNN 장치. - 제 13 항에 있어서,
상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 내지 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수 (T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 CNN 장치. - 제 14 항에 있어서,
상기 변형 함수(Ti)는 아핀 변환 알고리즘(affine transform algorithm) 및 박판 스플라인 알고리즘(thin-plate spline algorithm) 중 적어도 하나를 이용하여 상기 입력 이미지(I)를 변형하는 것을 특징으로 하는 CNN 장치. - 제 14 항에 있어서,
상기 변형 함수(Ti)는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 CNN 장치. - 제 13 항에 있어서,
상기 복수의 역변환 특징 맵들은 각 픽셀 별로 세그멘테이션 스코어를 가지며,
상기 (4) 프로세스에서,
상기 프로세서는, 상기 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 통합된 특징 맵을 획득하는 것을 특징으로 하는 CNN 장치. - 제 17 항에 있어서,
상기 (4) 프로세스에서,
상기 프로세서는, 상기 통합된 특징 맵에서 픽셀 별 채널 값들 중 가장 높은 채널값에 대응하는 라벨(label)을 해당 픽셀에 부여함으로써 세그멘테이션 출력 이미지를 획득하는 것을 특징으로 하는 CNN 장치. - 제 18 항에 있어서,
상기 (3) 프로세스에서,
상기 프로세서는, 상기 역변환 함수를 이용하여, 상기 변형 입력 이미지들의 세그멘테이션의 결과인 상기 변형 특징 맵들의 각 픽셀을 상기 입력 이미지의 세그멘테이션 결과상의 대응하는 위치들로 이동시켜, 상기 복수의 역변환 특징 맵들을 생성하는 것을 특징으로 하는 CNN 장치. - 제 13 항에 있어서,
상기 프로세서가, (5) 상기 통합된 특징 맵을 참조로 획득된 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 적어도 하나의 파라미터를 최적화하는 프로세스;
를 더 수행하는 것을 특징으로 하는 CNN 장치. - 입력 이미지로서의 테스트 이미지에 대한 CNN 테스트 장치에 있어서,
CNN 장치를 이용하여 (i) 트레이닝 이미지로서의 학습용 입력 이미지를 수신하고 상기 학습용 입력 이미지를 변형시키는 복수의 변형 함수들을 적용하여 복수의 학습용 변형 입력 이미지들을 생성하는 프로세스; (ii) 상기 학습용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 학습용 변형 입력 이미지 각각에 대응하는 학습용 변형 특징 맵 각각을 획득하는 프로세스; (iii) 상기 학습용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여 상기 학습용 변형 특징 맵 각각에 대응하는 학습용 역변환 특징 맵 각각을 생성하는 프로세스; (iv) 상기 학습용 역변환 특징 맵들 중 적어도 일부를 통합하여 학습용 통합 특징 맵을 획득하는 프로세스; 및 (v) 상기 학습용 통합 특징 맵을 참조로 획득된 학습용 출력 값과 GT 값의 차이를 바탕으로 로스를 산출하고, 상기 로스를 최소화하도록 백프로파게이션을 수행함으로써, 상기 CNN 장치의 파라미터를 최적화하는 프로세스;를 거쳐 학습된 상기 CNN 장치의 파라미터가 획득된 상태에서, 상기 학습된 상기 CNN 장치의 최적화된 파라미터를 포함하는 테스트 장치가, 상기 테스트용 입력 이미지를 수신하는 통신부; 및
(1) 상기 획득된 테스트용 입력 이미지를 변형시키는 상기 복수의 변형 함수들을 적용하여 복수의 테스트용 변형 입력 이미지들을 생성하는 프로세스; (2) 상기 테스트용 변형 입력 이미지 각각에 대하여 컨벌루션 연산을 적용하여 상기 테스트용 변형 입력 이미지 각각에 대응하는 테스트용 변형 특징 맵 각각을 획득하는 프로세스; (3) 상기 테스트용 변형 특징 맵 각각에 대해 상기 변형 함수 각각에 대응하는 역변환 함수를 각각 적용하여, 상기 테스트용 변형 특징 맵 각각에 대응하는 테스트용 역변환 특징 맵 각각을 생성하는 프로세스; 및 (4) 상기 테스트용 역변환 특징 맵들 중 적어도 일부를 통합하여 테스트용 통합 특징 맵을 획득하는 프로세스;를 수행하는 프로세서;
를 포함하는 테스트 장치. - 제 21 항에 있어서,
상기 변형 함수(Ti)는 상기 입력 이미지(I)를 n개의 변형 입력 이미지 (Ti(I))로 변형시키는 함수이며, 상기 i는 1 에서 n 의 자연수이며, 상기 변형 함수(Ti)는 역변환 함수(T-1 i(Ti(I))=I)가 존재하는 함수인 것을 특징으로 하는 테스트 장치. - 제 22 항에 있어서,
상기 변형 함수는 동일한 변형 알고리즘을 사용하되, 이에 적용되는 세부 파라미터는 차이가 있는 것을 특징으로 하는 테스트 장치. - 제 21 항에 있어서,
상기 복수의 학습용 역변환 특징 맵 및 상기 복수의 테스트용 역변환 특징 맵은 각 픽셀 별로 세그멘테이션 스코어를 가지며,
상기 (iv) 프로세스에서,
상기 CNN 장치는, 상기 복수의 학습용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여, 상기 복수의 학습용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 학습용 통합 특징 맵을 획득하고,
상기 (4) 프로세스에서,
상기 테스트 장치는, 상기 테스트용 역변환 특징 맵들의 각 픽셀들의 상대적인 위치를 각각 참조로 하여 상기 테스트용 역변환 특징 맵 각각의 각 픽셀들의 세그멘테이션 스코어들을 각각 합산함으로써, 상기 테스트용 통합 특징 맵을 획득하는 것을 특징으로 하는 테스트 장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/121,031 | 2018-09-04 | ||
US16/121,031 US10311337B1 (en) | 2018-09-04 | 2018-09-04 | Method and device for providing integrated feature map using ensemble of multiple outputs from convolutional neural network |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200027426A true KR20200027426A (ko) | 2020-03-12 |
KR102313133B1 KR102313133B1 (ko) | 2021-10-18 |
Family
ID=66673551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190105472A KR102313133B1 (ko) | 2018-09-04 | 2019-08-27 | 컨벌루션 뉴럴 네트워크로부터 복수의 출력들의 앙상블을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10311337B1 (ko) |
EP (1) | EP3620987A1 (ko) |
JP (1) | JP6863619B2 (ko) |
KR (1) | KR102313133B1 (ko) |
CN (1) | CN110874563B (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3981012A4 (en) * | 2019-07-10 | 2023-07-19 | Jiang, Ruowei | SYSTEMS AND METHODS FOR PROCESSING IMAGES FOR SKIN ANALYSIS AND FOR VISUALIZING SKIN ANALYSIS |
CN110324664B (zh) * | 2019-07-11 | 2021-06-04 | 南开大学 | 一种基于神经网络的视频补帧方法及其模型的训练方法 |
US11631163B2 (en) | 2020-02-11 | 2023-04-18 | Samsung Electronics Co., Ltd. | Mobile data augmentation engine for personalized on-device deep learning system |
US11501107B2 (en) * | 2020-05-07 | 2022-11-15 | Adobe Inc. | Key-value memory network for predicting time-series metrics of target entities |
US11823353B2 (en) | 2020-07-28 | 2023-11-21 | Samsung Electronics Co., Ltd. | System and method for generating bokeh image for DSLR quality depth-of-field rendering and refinement and training method for the same |
US11330196B2 (en) * | 2020-10-12 | 2022-05-10 | Microsoft Technology Licensing, Llc | Estimating illumination in an environment based on an image of a reference object |
US11449968B2 (en) | 2020-12-31 | 2022-09-20 | Samsung Electronics Co., Ltd. | System and method for synthetic depth-of-field effect rendering for videos |
US20220383037A1 (en) * | 2021-05-27 | 2022-12-01 | Adobe Inc. | Extracting attributes from arbitrary digital images utilizing a multi-attribute contrastive classification neural network |
KR20220163635A (ko) * | 2021-06-03 | 2022-12-12 | 삼성전자주식회사 | 뉴럴 네트워크의 양자화 방법 및 이를 수행하는 장치 |
JP7561379B2 (ja) | 2021-06-08 | 2024-10-04 | 日本電信電話株式会社 | 学習装置、学習方法及びプログラム |
CN113393468A (zh) * | 2021-06-28 | 2021-09-14 | 北京百度网讯科技有限公司 | 图像处理方法、模型训练方法、装置和电子设备 |
US20230077353A1 (en) * | 2021-08-31 | 2023-03-16 | University Of South Florida | Systems and Methods for Classifying Mosquitoes Based on Extracted Masks of Anatomical Components from Images |
WO2024057543A1 (ja) * | 2022-09-16 | 2024-03-21 | 日本電信電話株式会社 | 画像データ生成装置、画像データ生成方法、および、画像データ生成プログラム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102130162B1 (ko) * | 2015-03-20 | 2020-07-06 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 인공 신경망들에 대한 관련성 스코어 할당 |
JP2017004350A (ja) * | 2015-06-12 | 2017-01-05 | 株式会社リコー | 画像処理装置、画像処理方法、及びプログラム |
US10204299B2 (en) * | 2015-11-04 | 2019-02-12 | Nec Corporation | Unsupervised matching in fine-grained datasets for single-view object reconstruction |
CN108475415B (zh) * | 2015-12-21 | 2022-05-27 | 商汤集团有限公司 | 用于图像处理的方法和系统 |
US10303977B2 (en) * | 2016-06-28 | 2019-05-28 | Conduent Business Services, Llc | System and method for expanding and training convolutional neural networks for large size input images |
CN106339753A (zh) * | 2016-08-17 | 2017-01-18 | 中国科学技术大学 | 一种有效提升卷积神经网络稳健性的方法 |
US9965863B2 (en) * | 2016-08-26 | 2018-05-08 | Elekta, Inc. | System and methods for image segmentation using convolutional neural network |
JP6929047B2 (ja) * | 2016-11-24 | 2021-09-01 | キヤノン株式会社 | 画像処理装置、情報処理方法及びプログラム |
JP2018092610A (ja) * | 2016-11-28 | 2018-06-14 | キヤノン株式会社 | 画像認識装置、画像認識方法及びプログラム |
KR20180065498A (ko) * | 2016-12-08 | 2018-06-18 | 한국항공대학교산학협력단 | 딥 신경망 학습 방법 및 그를 이용한 다음 예측 영상 생성 방법 |
CN108345827B (zh) * | 2017-01-24 | 2021-11-30 | 富士通株式会社 | 识别文档方向的方法、系统和神经网络 |
US10147019B2 (en) * | 2017-03-20 | 2018-12-04 | Sap Se | Small object detection |
CN108416318A (zh) * | 2018-03-22 | 2018-08-17 | 电子科技大学 | 基于数据增强的合成孔径雷达图像目标深度模型识别方法 |
-
2018
- 2018-09-04 US US16/121,031 patent/US10311337B1/en active Active
-
2019
- 2019-07-03 EP EP19184054.5A patent/EP3620987A1/en active Pending
- 2019-08-27 KR KR1020190105472A patent/KR102313133B1/ko active IP Right Grant
- 2019-08-29 CN CN201910806630.0A patent/CN110874563B/zh active Active
- 2019-09-03 JP JP2019160238A patent/JP6863619B2/ja active Active
Non-Patent Citations (2)
Title |
---|
Bohao Huang et al., "Tiling and Stitching Segmentation Output for Remote Sensing: Basic Challenges and Recommendations." In: arXiv: Computer Vision and Pattern Recognition (2018)(2018.05.30.)* * |
Liang-Chieh Chen et al., "Attention to Scale: Scale-aware Semantic Image Segmentation," arXiv:1511.03339v2 [cs.CV] 2 Jun 2016 (2016.06.02.)* * |
Also Published As
Publication number | Publication date |
---|---|
EP3620987A1 (en) | 2020-03-11 |
CN110874563B (zh) | 2023-10-17 |
CN110874563A (zh) | 2020-03-10 |
JP2020038664A (ja) | 2020-03-12 |
JP6863619B2 (ja) | 2021-04-21 |
KR102313133B1 (ko) | 2021-10-18 |
US10311337B1 (en) | 2019-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20200027426A (ko) | 컨벌루션 뉴럴 네트워크로부터 복수의 출력들의 앙상블을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치 | |
JP6856851B2 (ja) | イメージエンコーディングのための方法及び装置そしてこれを利用したテスト方法及びテスト装置 | |
JP6853560B2 (ja) | 高精度イメージを分析するディープラーニングネットワークの学習に利用するためのトレーニングイメージをオートラベリングするための方法、及びこれを利用したオートラベリング装置{method for auto−labeling training images for use in deep learning network to analyze images with high precision, and auto−labeling device using the same} | |
JP6865363B2 (ja) | ラプラシアンピラミッドネットワークを利用して自律走行自動車レベル4及びレベル5を満足させるために要求される道路障害物検出におけるセグメンテーション性能向上のための学習方法及び学習装置、並びにこれを利用したテスト方法及びテスト装置 | |
KR20200027428A (ko) | 에지 이미지를 이용하여 객체를 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치 | |
JP6793411B2 (ja) | 自律走行状況で障害物検出のための学習用データセットの生成方法及びこれを利用したコンピューティング装置、学習方法及び学習装置 | |
KR20200027427A (ko) | 차선 후보 픽셀의 분류를 통해 차선을 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치 | |
JP6865364B2 (ja) | エッジロスを利用して歩行者イベント、自動車イベント、フォーリングイベント、フォールンイベントを含むイベントを検出するにおいて利用されるセグメンテーション性能向上のための学習方法及び学習装置、並びにそれを利用したテスト方法及びテスト装置 | |
CN110879960B (zh) | 生成卷积神经网络学习用图像数据集的方法及计算装置 | |
CN111476341B (zh) | 转换cnn的卷积层的方法及装置 | |
KR20200091318A (ko) | 자율주행 자동차의 레벨 4를 충족시키기 위해 요구되는 hd 맵 업데이트에 이용될 적어도 하나의 어댑티브 로스 가중치 맵을 이용한 어텐션 드리븐 이미지 세그먼테이션 학습 방법 및 학습 장치, 그리고 이를 이용한 테스팅 방법 및 테스팅 장치 | |
KR102316593B1 (ko) | 군사적 목적, 드론 또는 로봇에 이용되기 위해, 하나 이상의 이전 배치를 추가적으로 참조하여 모바일 장치 또는 iot 장치에 적용 가능한 온라인 배치 노말라이제이션, 온-디바이스 학습, 및 연속학습을 수행하는 방법 및 장치 그리고 이를 이용한 테스팅 방법과 테스팅 장치 | |
KR20200031992A (ko) | 멀티 피딩을 적용한 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치 | |
US10373004B1 (en) | Method and device for detecting lane elements to plan the drive path of autonomous vehicle by using a horizontal filter mask, wherein the lane elements are unit regions including pixels of lanes in an input image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |