KR20220155882A - 뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치 - Google Patents
뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치 Download PDFInfo
- Publication number
- KR20220155882A KR20220155882A KR1020210083974A KR20210083974A KR20220155882A KR 20220155882 A KR20220155882 A KR 20220155882A KR 1020210083974 A KR1020210083974 A KR 1020210083974A KR 20210083974 A KR20210083974 A KR 20210083974A KR 20220155882 A KR20220155882 A KR 20220155882A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- distortion
- deformed
- transformed
- relative
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 20
- 238000003672 processing method Methods 0.000 title claims description 18
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000012549 training Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000001131 transforming effect Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 15
- 238000004088 simulation Methods 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 7
- 230000006978 adaptation Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 239000004984 smart glass Substances 0.000 claims description 2
- 229920001690 polydopamine Polymers 0.000 claims 1
- 230000011218 segmentation Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G06T3/0018—
-
- 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
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
- G06T3/047—Fisheye or wide-angle transformations
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치가 개시된다. 개시된 프로세서에 의해 실행되는, 뉴럴 네트워크를 이용하는 데이터 처리 방법은 상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 제1 영상을 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상을 결정하는 단계, 제1 변형된 영상을 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상을 결정하는 단계 및 제1 재 변형된 영상과 제1 영상 간 로스(loss)에 기초하여, 제1 영상에서 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드를 결정하는 제1 왜곡 필드 생성기 및 제2 영상에서 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝하는 단계를 포함한다.
Description
아래 실시예들은 뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치에 관한 것이다.
지금까지의 머신 러닝(machine learning) 분야의 기술 발전과 함께, 영상과 어노테이션(annotation)의 지도감독(supervision)이 주어진 환경에서 영상 인식(image recognition)의 성능이 향상되었다. 이러한 영상 인식은 영상과 어노테이션의 확보가 중요하기에 보다 쉽게 접할 수 있는 직선형 영상(rectilinear image)을 기반으로 수행될 수 있다. 다만, 직선형 영상에는 화각(field of view)의 한계가 존재하고, 이를 극복하기 위해 어안 렌즈(fisheye lens)를 활용한 카메라가 등장하기 시작하였다. 어안 렌즈의 화각은 직선형 영상을 위한 일반 렌즈보다 화각의 제한에서 자유로울 수 있으나, 어안 렌즈를 통해 촬영된 영상에는 왜곡(deformation)이 존재할 수 있다.
이러한 왜곡이 존재하는 영상에 대한 추론 모델을 학습시키기 위해 필요한 어노테이션이 부족하며, 렌즈나 카메라로 인한 왜곡이 다양하기 때문에 그에 따른 어노테이션을 직접 생성하기 어려울 수 있다.
일 실시예에 따른 프로세서에 의해 실행되는, 뉴럴 네트워크를 이용하는 데이터 처리 방법은 상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 상기 제1 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상(first deformed image)을 결정하는 단계; 상기 제1 변형된 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상(first re-deformed image)을 결정하는 단계; 및 상기 제1 재 변형된 영상과 상기 제1 영상 간 로스(loss)에 기초하여, 상기 제1 영상에서 상기 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드(first relative deformation field)를 결정하는 제1 왜곡 필드 생성기 및 상기 제2 영상에서 상기 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝하는 단계를 포함한다.
일 실시예에 따른 데이터 처리 방법은 상기 제2 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제2 변형된 영상을 결정하는 단계; 상기 제2 변형된 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제2 재 변형된 영상을 결정하는 단계; 및 상기 제2 재 변형된 영상과 상기 제2 영상 간 로스에 기초하여, 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는 단계를 더 포함할 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 왜곡 필드 생성기의 초기 파라미터는 어안 시뮬레이션(fisheye simulation)에 기반하여 제1 영상으로부터 변형된 제3 변형된 영상 및 상기 제1 변형된 영상 간 로스에 기초한 트레이닝을 통해 결정될 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 상대적 왜곡 필드와 상기 제2 상대적 왜곡 필드는 역변환 관계 특성을 가질 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 변형된 영상을 결정하는 단계는 상기 제1 영상에 상기 제1 상대적 왜곡 필드를 적용하여 상기 제2 영상의 왜곡을 가진 상기 제1 변형된 영상을 결정할 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 재 변형된 영상을 결정하는 단계는 상기 제1 변형된 영상에 상기 제2 상대적 왜곡 필드를 적용하여 상기 제1 영상의 왜곡을 가진 상기 제1 재 변형된 영상을 결정할 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 영상과 상기 제2 영상은 상이한 컨텐츠 및/또는 장면을 포함한 언페어드 영상(unpaired image)일 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는 단계는 상기 제1 영상 및 상기 제2 영상 각각이 가진 왜곡에 대한 정보 없이, 비지도 학습(unsupervised learning)으로 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝할 수 있다.
일 실시예에 따른 데이터 처리 방법은 상기 제1 영상에 대응하는 레이블 영상을 상기 제2 영상이 가진 왜곡처럼 변형한 변형된 레이블 영상과 상기 제1 변형된 영상에 기반하여, 상기 제2 영상에 대한 추론 모델(inference model)을 트레이닝하는 단계를 더 포함할 수 있다.
일 실시예에 따른 데이터 처리 방법은 상기 제1 영상을 상기 제2 영상이 가진 왜곡 및 텍스처(texture)처럼 변형한 제4 변형된 영상, 상기 변형된 레이블 영상 및 상기 제2 영상을 이용한 비지도식 도메인 적응(unsupervised domain adaptation) 기법에 기초하여, 상기 제2 영상에 대한 추론 모델을 트레이닝하는 단계를 더 포함할 수 있다.
일 실시예에 따른 데이터 처리 방법에서 상기 제2 영상은 대응하는 레이블 영상이 없을 수 있다.
일 실시예에 따른 프로세서에 의해 실행되는, 뉴럴 네트워크를 이용한 데이터 처리 방법은 상이한 왜곡을 가진 소스 영상과 타겟 영상에 기반하여 상기 소스 영상에서 상기 타겟 영상으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드를 결정하는 단계; 및 상기 상대적 왜곡 필드를 상기 소스 영상에 적용하여 상기 타겟 영상의 왜곡을 가진 변형된 소스 영상을 결정하는 단계를 포함한다.
일 실시예에 따른 데이터 처리 장치는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 상기 제1 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상을 결정하고, 상기 제1 변형된 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상을 결정하며, 상기 제1 재 변형된 영상과 상기 제1 영상 간 로스에 기초하여, 상기 제1 영상에서 상기 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드를 결정하는 제1 왜곡 필드 생성기 및 상기 제2 영상에서 상기 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝한다.
도 1은 일 실시예에 따라 왜곡 필드 생성기를 이용하여 변환된 소스 영상을 생성하는 동작을 설명하기 위한 도면이다.
도 2 및 도 3은 일 실시예에 따라 왜곡 필드 생성기를 트레이닝하는 동작을 설명하기 위한 도면이다.
도 4 및 도 6은 일 실시예에 따라 추론 모델을 트레이닝하는 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 방법을 나타낸 도면이다.
도 8 및 도 9는 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 장치를 설명하기 위한 도면이다.
도 2 및 도 3은 일 실시예에 따라 왜곡 필드 생성기를 트레이닝하는 동작을 설명하기 위한 도면이다.
도 4 및 도 6은 일 실시예에 따라 추론 모델을 트레이닝하는 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 방법을 나타낸 도면이다.
도 8 및 도 9는 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 장치를 설명하기 위한 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 일 실시예에 따라 왜곡 필드 생성기를 이용하여 변환된 소스 영상을 생성하는 동작을 설명하기 위한 도면이다.
도 1을 참조하면, 상이한 왜곡을 가진 소스 영상 IB(110)과 타겟 영상 IA(130)이 주어질 수 있다.
소스 영상 IB(110)는 일반적인 카메라로 촬영된 직선형 영상(rectilinear image)으로, 예를 들어, 왜곡이 없는 평면 영상을 포함할 수 있다. 소스 영상 IB(110)에는 대응하는 소스 레이블 영상(source label image)(120)이 존재할 수 있다. 소스 레이블 영상(120)은 소스 영상 IB(110)에 포함된 객체를 분류하거나 검출한 결과를 나타내는 것으로, 수행하고자 하는 추론 동작에 따라 다양한 유형의 레이블을 포함할 수 있다.
타겟 영상 IA(130)는 어안 렌즈(fisheye lens)가 장착된 카메라로 촬영된 어안 영상으로, 예를 들어, 왜곡이 존재하는 영상을 포함할 수 있다. 화각이 180도를 초과하는 어안 렌즈를 통해 촬영된 영상이 2차원 영상으로 표현되기 때문에, 왜곡이 필연적으로 발생할 수 있다. 이러한 왜곡은 렌즈나 카메라에 대한 다양한 파라미터에 의해 영향을 받을 수 있고, 이로 인해 해당 왜곡을 가진 타겟 영상 IA(130)에 대응하는 타겟 레이블 영상이 존재하지 않을 수 있다. 타겟 영상 IA(130)에 대한 추론 모델을 트레이닝하기 위해서는 타겟 영상 IA(130)뿐만 아니라 해당 영상에 대응하는 타겟 레이블 영상이 요구될 수 있다. 타겟 영상 IA(130)의 왜곡을 가지면서도 대응하는 레이블 영상이 존재하는 영상을 생성하는 동작에 대해 아래에서 설명한다.
왜곡 필드 생성기(140)는 입력된 두 영상들 간 상대적인 왜곡을 나타내는 상대적 왜곡 필드를 추정하는 뉴럴 네트워크일 수 있다. 뉴럴 네트워크는 노드들과 에지들을 이용하여 수학적 모델로 표현될 수 있다. 뉴럴 네트워크는 딥 뉴럴 네트워크(Deep Neural Network, DNN) 또는 n-계층 뉴럴 네트워크(n-layers neural networks)의 아키텍처일 수 있다. DNN 또는 n-계층 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(Convolutional Neural Networks, CNN), 리커런트 뉴럴 네트워크(Recurrent Neural Networks, RNN), Deep Belief Networks, Restricted Boltzman Machines 등에 해당될 수 있다.
도 1에서, 왜곡 필드 생성기(140)는 소스 영상 IB(110)에서 타겟 영상 IA(130)으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (150)를 추정(predict)할 수 있다. 상대적 왜곡 필드 (150)는 소스 영상 IB(110)를 타겟 영상 IA(130)의 왜곡을 가지도록 변형하기 위해 소스 영상 IB(110) 내 각 픽셀이 타겟 영상 IA(130)의 어느 위치의 픽셀로 이동해야 하는지를 나타낼 수 있다.
소스 영상 IB(110) 및 상대적 왜곡 필드 (150)에 기반하여 공간적 워핑(spatial warping)(160)이 수행될 수 있다. 공간적 워핑(160)은 그리드-기반 샘플링(grid-based sampling) 변환을 수행하는 것일 수 있다. 그 결과, 타겟 영상 IA(130)의 왜곡을 가진 변환된 소스 영상 (170)이 소스 영상 IB(110)으로부터 생성될 수 있다.
마찬가지로, 소스 레이블 영상(120)에 상대적 왜곡 필드 (150)를 적용하여 공간적 워핑(160)을 수행하면, 타겟 영상 IA(130)의 왜곡을 가진 변환된 소스 레이블 영상(180)이 생성될 수 있다. 변환된 소스 레이블 영상(180)은 변환된 소스 영상 (170)과 함께 타겟 영상 IA(130)에 대한 추론 모델의 트레이닝에 활용될 수 있다.
소스 영상 IB(110)처럼 왜곡이 없는 직선형 영상에 대해서는 어노테이션(예: 레이블 영상)이 충분하므로, 상대적 왜곡 필드 (150)에 기반한 공간적 워핑(160)을 통해 타겟 영상 IA(130)의 왜곡에 대해서도 충분한 어노테이션을 손쉽게 획득할 수 있다. 이를 통해, 다양한 왜곡에 대해 어노테이션을 생성하는 데 소요되는 상당한 비용을 효과적으로 방지할 수 있다.
상술된 동작들은 소스 영상 IB(110) 및 타겟 영상 IA(130) 각각이 가진 왜곡에 대한 정보(예: 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter), 외부 파라미터(extrinsic parameter), 캘리브레이션 파라미터 등) 없이도, 왜곡 필드 생성기(140)에서 추정한 상대적 왜곡 필드 (150)에 기반하여 수행될 수 있다.
소스 영상 IB(110) 및 타겟 영상 IA(130)은 서로 다른 컨텐츠 및/또는 장면을 포함한 언페이드 영상일 수 있다. 또한, 도 1에서는 설명의 편의를 위해 소스 영상 IB(110)은 왜곡이 없는 영상이고, 타겟 영상 IA(130)은 왜곡이 있는 영상으로 설명하였으나, 이외에도 및 타겟 영상 IA(130)뿐만 아니라 소스 영상 IB도 왜곡이 있는 영상으로, 소스 영상 IB이 타겟 영상 IA과 다른 왜곡을 가지며 대응하는 레이블 영상이 있는 경우라면 본 명세서의 설명이 제한 없이 적용될 수 있다. 이처럼, 본 명세서의 설명은 핀홀 카메라(pinhole camera)에서부터 어안 카메라까지 카메라를 이용하는 다양한 어플리케이션에 적용될 수 있다.
왜곡 필드 생성기(140)를 트레이닝하는 동작에 대해서는 도 2 및 도 3을 통해 상세히 설명한다.
도 2 및 도 3은 일 실시예에 따라 왜곡 필드 생성기를 트레이닝하는 동작을 설명하기 위한 도면이다.
도 2를 참조하면, 두 영상들에 대한 왜곡 정보 없이 역변환 관계에 기반하여 왜곡 필드 생성기 G1(203) 및 왜곡 필드 생성기 G2(213)가 트레이닝될 수 있다. 왜곡 필드 생성기 G1(203) 및 왜곡 필드 생성기 G2(213)의 트레이닝에는 상이한 왜곡을 가지며, 둘 중 하나에 레이블 영상이 존재하는 소스 영상과 타겟 영상이 이용될 수 있다. 예를 들어, 왜곡 필드 생성기 G1(203)로 입력되는 소스 영상 IB(201)는 레이블 영상이 존재하고, 왜곡이 없는 평면 영상이고, 타겟 영상 IA(202)는 레이블 영상이 없는 왜곡된 영상일 수 있다. 다만, 소스 영상 IB(201)과 타겟 영상 IA(202)의 예시를 한정하는 것은 아니며, 이외에도 상이한 왜곡을 가지고, 둘 중 하나에 레이블 영상이 존재하는 경우라면 본 명세서의 설명이 적용될 수 있다.
왜곡 필드 생성기 G1(203)는 소스 영상 IB(201)에서 타겟 영상 IA(202)로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (204)를 추정할 수 있다. 소스 영상 IB(201) 및 상대적 왜곡 필드 (204)에 기반한 공간적 워핑(205)이 수행됨으로써, 변환된 소스 영상 (206)이 결정될 수 있다. 변환된 소스 영상 (206)은 소스 영상 IB(201)을 타겟 영상 IA(202)이 가진 왜곡처럼 변형한 영상일 수 있다.
변환된 소스 영상 (206) 및 상대적 왜곡 필드 (214)에 기반한 공간적 워핑(207)이 수행될 수 있다. 여기서, 상대적 왜곡 필드 (214)는 왜곡 필드 생성기 G2(213)에서 추정된 것으로, 왜곡 필드 생성기 G1(203)와 반대로 왜곡 필드 생성기 G2(213)는 왜곡이 있는 소스 영상 IA(211)에서 왜곡이 없는 타겟 영상 IB(212)로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (214)를 추정할 수 있다. 다시 말해, 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)는 역변환 관계에 있다고 말할 수 있다. 변환된 소스 영상 (206) 및 상대적 왜곡 필드 (214)에 기반한 공간적 워핑(207)을 통해, 재 변환된 소스 영상(도면 미도시)이 결정될 수 있다. 재 변환된 소스 영상은 변환된 소스 영상 (206)을 소스 영상 IB(201)이 가진 왜곡, 다시 말해 왜곡이 0인 평면 영상처럼 재 변환한 영상일 수 있다.
재 변환된 소스 영상과 소스 영상 IB(208) 간 로스(209)가 계산될 수 있으며, 이러한 로스(209)가 최소화되도록 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)가 트레이닝될 수 있다. 로스(209)는 재 변환된 소스 영상과 소스 영상 IB(208) 간 차이를 나타내는 것으로, 예를 들어, L1-로스를 포함할 수 있으나, 실시예가 이로 한정되는 것은 아니다.
왜곡 필드 생성기 G2(213)에는 왜곡 필드 생성기 G1(203)에 입력된 소스 영상과 타겟 영상이 반대로 입력될 수 있다. 왜곡 필드 생성기 G2(213)는 소스 영상 IA(211)에서 타겟 영상 IB(212)으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (214)를 추정할 수 있다. 상대적 왜곡 필드 (214) 및 소스 영상 IA(211)에 기초하여 공간적 워핑(215)가 수행됨으로써, 변환된 소스 영상 (216)이 결정될 수 있다. 변환된 소스 영상 (216)은 소스 영상 IA(211)을 타겟 영상 IB(212)이 가진 왜곡처럼 변형한 영상일 수 있다. 다시 말해, 타겟 영상 IB(212)처럼 왜곡이 0인 평면 영상처럼 소스 영상 IA(211)의 왜곡을 제거한 영상이 변환된 소스 영상 (216)일 수 있다.
변환된 소스 영상 (216) 및 상대적 왜곡 필드 (204)에 기반한 공간적 워핑(217)이 수행되어 재 변환된 소스 영상(도면 미도시)이 결정될 수 있다. 재 변환된 소스 영상은 변환된 소스 영상 (216)을 소스 영상 IA(211)의 왜곡, 다시 말해 왜곡이 존재하는 어안 영상처럼 재 변환한 영상일 수 있다.
재 변환된 소스 영상과 소스 영상 IA(218) 간 로스(219)가 계산될 수 있으며, 이러한 로스(219)가 최소화되도록 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)가 트레이닝될 수 있다. 로스(219)는 재 변환된 소스 영상과 소스 영상 IA(218) 간 차이를 나타내는 것으로 예를 들어, L1 로스를 포함할 수 있으나, 실시예가 이로 한정되는 것은 아니다.
이처럼, 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)는 역변환 관계 특성을 이용하여 아래의 로스가 최소화되도록 동시에 트레이닝될 수 있다.
위의 수학식 1에서, 은 공간적 워핑을 나타내는 것으로, 는 공간적 워핑(207)으로 결정된 재 변환된 소스 영상을 나타내고, 는 공간적 워핑(217)으로 결정된 재 변환된 소스 영상을 나타낼 수 있다.
이를 통해, 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)는 왜곡 정보가 주어지지 않은 상황에서도 상대적인 왜곡을 표현하는 상대적 왜곡 필드를 추정하도록 학습될 수 있다.
학습 동작이 역변환 관계 특성에 기반한 것을 고려했을 때, 왜곡 필드 생성기 G1(203)와 왜곡 필드 생성기 G2(213)의 초기 파라미터는 랜덤하게 설정되기 보다는 학습 안정성을 확보할 수 있도록 설정될 수 있으며, 이에 대해서는 도 3을 통해 상세히 설명한다.
도 3을 참조하면, 왜곡 필드 생성기의 초기 파라미터를 결정하는 동작을 설명하기 위한 블록도가 도시된다.
어안 시뮬레이션(fisheye simulation)에 기반하여, 왜곡 없는 평면 영상인 소스 영상 IB(301)으로부터, 변환된 소스 영상 (307)이 결정될 수 있다. 왜곡이 존재하는 어안 영상인 타겟 영상 IA(302)는 어안 시뮬레이션에 기반하여 소스 영상 IB(301)과 다른 평면 영상으로부터 결정될 수 있다. 변환된 소스 영상 (307)과 타겟 영상 IA(302)는 동일한 파라미터가 적용된 어안 시뮬레이션에 기반하여 결정됨으로써, 동일한 왜곡을 가질 수 있다. 또는, 타겟 영상 IA(302)는 어안 카메라에서 촬영된 영상으로, 해당 카메라에 관련된 파라미터나 타겟 영상 IA(302)의 왜곡 관련 파라미터가 적용된 어안 시뮬레이션에 기반하여 변환된 소스 영상 (307)이 소스 영상 IB(301)으로부터 생성될 수도 있다. 이 경우에도 변환된 소스 영상 (307)과 타겟 영상 IA(302)는 동일한 왜곡을 가질 수 있다.
왜곡 필드 생성기 G(303)는 소스 영상 IB(301)에서 타겟 영상 IA(302)으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (304)를 결정할 수 있다. 상대적 왜곡 필드 (304) 및 소스 영상 IB(301)에 기반한 공간적 워핑(305)이 수행됨으로써, 변환된 소스 영상 (306)이 생성될 수 있다. 변환된 소스 영상 (306)은 소스 영상 IB(301)이 타겟 영상 IA(302)의 왜곡처럼 변형된 영상일 수 있다. 변환된 소스 영상 (306) 및 변환된 소스 영상 (307) 간 로스(308)가 계산될 수 있으며, 로스(308)가 최소화되도록 왜곡 필드 생성기 G(303)가 트레이닝될 수 있다. 로스(308)는 변환된 소스 영상 (306) 및 변환된 소스 영상 (307) 간 차이를 나타내는 것으로, 예를 들어, L1-로스를 포함할 수 있으나, 실시예가 이로 한정되는 것은 아니다.
왜곡 필드 생성기 G(303)의 사전 트레이닝을 통해 왜곡 필드 생성기 G(303)의 초기 파라미터가 결정될 수 있으며, 초기 파라미터를 기준으로 왜곡 필드 생성기 G(303)에 대한 트레이닝이 도 2에서 설명한 바와 같이 수행될 수 있다.
도 3에서는 설명의 편의를 위하여 소스 영상 IB(301)에서 타겟 영상 IA(302)으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (304)를 추정하는 왜곡 필드 생성기 G(303)를 기준으로 설명하였으나, 도 2의 영상 IA(211)에서 타겟 영상 IB(212)으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드 (214)를 추정하는 왜곡 필드 생성기 G2(213)의 초기 파라미터 결정에도 본 명세서의 설명이 마찬가지로 적용될 수 있다.
도 4 및 도 6은 일 실시예에 따라 추론 모델을 트레이닝하는 동작을 설명하기 위한 도면이다.
앞서 설명한 왜곡 필드 생성기를 이용하면 어떤 왜곡에 대해서도 촬영 영상과 그에 대응한 레이블 영상을 포함한 학습 데이터를 생성할 수 있으며, 학습 데이터를 이용해 해당 왜곡 영상에 대한 인식을 수행하는 추론 모델을 학습시킬 수 있다. 추론 모델은 입력 영상에 대한 추론을 수행하는 뉴럴 네트워크로서, 예를 들어, 분할 모델, 객체 검출 모델 등을 포함할 수 있다. 이하 도면을 참조하여 추론 모델의 트레이닝 동작을 자세히 설명한다.
도 4를 참조하면, 입력 영상(410) 및 레이블 영상(420)에 기반하여 추론 모델(430)이 트레이닝될 수 있다.
입력 영상(410)은 추론 모델(430)을 통해 추론하고자 하는 대상 영상과 동일한 왜곡을 가지도록 변환된 영상일 수 있다. 대상 영상은 어안 렌즈를 통해 촬영된 영상으로 어안 렌즈 및/또는 카메라에 의한 왜곡을 포함할 수 있다. 앞서 설명한 왜곡 필드 생성기를 이용하면, 대응하는 레이블 영상을 가진 다양한 영상들을 대상 영상과 동일한 왜곡으로 변환할 수 있다. 레이블 영상(420)은 대상 영상과 동일한 왜곡을 가지도록 변환된 영상으로, 입력 영상(410)에 대응할 수 있다. 추론 모델(430)은 입력 영상(410)에 대해 추론을 수행한 결과와 레이블 영상(420) 간 로스가 최소화되도록 트레이닝될 수 있다. 이를 통해, 추론을 수행하고자 하는 대상 영상의 왜곡이나 해당 영상을 촬영한 카메라에 대한 어떠한 정보 없이도 대상 영상을 추론하는 추론 모델(430)을 효과적으로 트레이닝할 수 있다.
도 5를 참조하면, 왜곡 필드 생성기 및 UDA(unsupervised domain adaptation)를 활용하여 분할 모델(521)이 트레이닝될 수 있다. 분할 모델(521)의 트레이닝 동작은 왜곡 및 텍스처 풀림(disentangling distortion and texture) 단계와 분할 적응적 모델 학습(segmentation adaptation model learning) 단계로 구분될 수 있다.
왜곡 필드 생성기(513)는 소스 영상(511)에서 타겟 영상(512)으로의 상대적 왜곡을 표현하는 상대적 왜곡 필드(514)를 추정할 수 있다. 소스 영상(511)은 대응하는 레이블 영상이 존재하는 영상이고, 타겟 영상(512)은 대응하는 레이블 영상이 존재하지 않지만, 분할 모델(521)이 추론하고자 하는 영상과 동일한 왜곡을 가진 영상일 수 있다. 추론 대상 텍스처-인식 변환기(texture-aware translator)(515)는 소스 영상(511)과 타겟 영상(512) 간 텍스처 차이를 인식하고, 소스 영상(511)의 텍스처(예: 색상, 밝기)를 타겟 영상(512)처럼 변환함으로써, 텍스처 변환 데이터(516)를 결정할 수 있다. 텍스처 변환 데이터(516)와 상대적 왜곡 필드(514)에 기초한 공간적 워핑(517)이 수행되어, 변환된 소스 영상(518)이 결정될 수 있다. 다시 말해, 변환된 소스 영상(518)은 타겟 영상(512)의 왜곡과 텍스처를 가지도록 소스 영상(511)을 변환한 영상일 수 있다.
변환된 소스 영상(518)과 타겟 영상(519)은 분할 모델(521)의 트레이닝에 이용될 수 있다. 분할 모델(521)은 입력된 영상에 포함된 객체들을 구분하는 모델로서, 예를 들어, 영상 내 사람, 도로, 차량, 표지판 등을 구분할 수 있다. 분할 모델(521)은 변환된 소스 영상(518)에 대해 추론을 수행하여 소스 확률들(522)을 결정할 수 있다. 분할 모델(521)은 구분하고자 하는 클래스 별로 소스 확률을 결정할 수 있다. 예를 들어, 첫 번째 소스 확률은 변환된 소스 영상(518) 내 각 픽셀이 사람에 해당할 확률을 나타낼 수 있으며, 두 번째 소스 확률은 변환된 소스 영상(518) 내 각 픽셀이 도로에 해당할 확률을 나타낼 수 있다. 소스 확률들(522)의 개수는 분할 모델(521)에서 구분하고자 하는 클래스 개수와 동일할 수 있다. 마찬가지로, 분할 모델(521)은 타겟 영상(519)에 대하 추론을 수행하여 타겟 확률들(523)을 결정할 수 있다.
소스 확률들(522)과 타겟 확률들(523)에 기반하여 분할 모델(521)에 대한 적대적 학습(adversarial learning)이 수행될 수 있다. 분할 모델(521)에서 출력된 확률이 변환된 소스 영상(518)의 추론에 기반한 것인지, 또는 타겟 영상(519)의 추론에 기반한 것인지가 판별자(discriminator)(도면 미도시)에 의해 판단될 수 있으며, 분할 모델(521)은 판별자를 속이도록 학습될 수 있다.
소스 예측(source prediction)(524)은 변환된 소스 영상(518)에서 각 픽셀이 가장 높은 확률로 어떤 클래스에 해당하는지를 나타내는 것으로, 소스 확률들(522) 중에서 가장 큰 확률을 가지는 클래스를 한 장으로 나타낸 영상일 수 있다. 마찬가지로, 타겟 예측(525)은 타겟 영상(519)에서 각 픽셀이 가장 높은 확률로 어떤 클래스에 해당하는지를 나타내는 영상일 수 있다.
소스 레이블(526)은 소스 영상(511)에 대응하는 레이블 영상을 타겟 영상(512)과 동일한 왜곡을 가지도록 변환된 영상일 수 있다. 소스 예측(524)과 소스 레이블(526) 간 차이에 기반하여 분할 모델(521)이 학습될 수 있다. 분할 모델(521)의 추론 결과로 생성된 소스 예측(524)이 소스 레이블(526)과 유사하도록 학습될 수 있다.
타겟 의사 레이블(target pseudo label)(527)은 타겟 예측(525)에서 미리 설정된 임계치 이상인 레이블을 선택함으로써 결정될 수 있다. 이를 통해, 타겟 예측(525)에서 상대적으로 확률이 높지 않은 불확실한 정보를 제거할 수 있다. 타겟 의사 레이블(527)에 기반하여 분할 모델(521)이 학습될 수 있다.
왜곡 및 텍스처 풀림 단계와 분할 적응적 모델 학습 단계는 교대로 반복해서 수행되거나, 또는 동시에 수행됨으로써, 레이블이 없더라도 타겟 영상(512)과 동일한 왜곡을 가진 영상에 대해 강인한 추론을 수행하는 분할 모델(521)이 높은 정확도로 트레이닝될 수 있다.
동작들(530)은 도 1 내지 도 3의 설명들이 마찬가지로 적용될 수 있다. 동작들(540)은 UDA에 기반한 추론 모델 학습을 위한 부분일 수 있다.
도 6을 참조하면, 왜곡 필드 생성기 및 UDA를 활용하여 객체 검출 모델(610)이 트레이닝될 수 있다. 앞서 도 5의 설명이 객체 검출 모델(610)의 트레이닝에도 적용될 수 있으므로, 객체 검출 모델(610)의 트레이닝에 대한 상세한 설명을 생략한다.
앞서 설명한 것처럼 추론 모델을 트레이닝시킴으로써, 추론하고자 하는 대상 영상에 대한 레이블이 없고, 대상 영상과 왜곡 및/또는 텍스처가 상이한 영상에 레이블이 존재하며 두 영상들 간 왜곡 관련 정보가 없고 상이한 장면을 포함하는 경우에도 대상 영상을 추론하는 추론 모델을 효과적으로 학습시킬 수 있다.
도 7은 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 방법을 나타낸 도면이다.
이하 실시예에서 각 단계들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 단계들의 순서가 변경될 수도 있으며, 적어도 두 단계들이 병렬적으로 수행될 수도 있다. 동작(710) 내지 동작(730)은 전자 장치(예: 데이터 처리 장치)의 적어도 하나의 구성요소(예: 프로세서)에 의해 수행될 수 있다.
단계(710)에서, 데이터 처리 장치는 상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 제1 영상을 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상을 결정한다. 데이터 처리 장치는 제1 영상에 제1 상대적 왜곡 필드를 적용하여 제2 영상의 왜곡을 가진 제1 변형된 영상을 결정할 수 있다. 제1 영상과 제2 영상은 상이한 컨텐츠 및/또는 장면을 포함한 언페어드 영상일 수 있다. 제2 영상은 대응하는 레이블 영상이 없을 수 있다.
단계(720)에서, 데이터 처리 장치는 제1 변형된 영상을 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상을 결정한다. 데이터 처리 장치는 제1 변형된 영상에 제2 상대적 왜곡 필드를 적용하여 제1 영상의 왜곡을 가진 제1 재 변형된 영상을 결정할 수 있다.
단계(730)에서, 데이터 처리 장치는 제1 재 변형된 영상과 제1 영상 간 로스에 기초하여, 제1 영상에서 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드를 결정하는 제1 왜곡 필드 생성기 및 제2 영상에서 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝한다. 제1 상대적 왜곡 필드와 제2 상대적 왜곡 필드는 역변환 관계 특성을 가질 수 있다. 데이터 처리 장치는 제1 영상 및 제2 영상 각각이 가진 왜곡에 대한 정보 없이, 비지도 학습으로 제1 왜곡 필드 생성기 및 제2 왜곡 필드 생성기를 트레이닝할 수 있다.
또한, 데이터 처리 장치는 제2 영상을 제1 영상이 가진 왜곡처럼 변형하여 제2 변형된 영상을 결정하고, 제2 변형된 영상을 제2 영상이 가진 왜곡처럼 변형하여 제2 재 변형된 영상을 결정하며, 제2 재 변형된 영상과 제2 영상 간 로스에 기초하여, 제1 왜곡 필드 생성기 및 제2 왜곡 필드 생성기를 트레이닝할 수 있다.
제1 왜곡 필드 생성기의 초기 파라미터는 어안 시뮬레이션에 기반하여 제1 영상으로부터 변형된 제3 변형된 영상 및 제1 변형된 영상 간 로스에 기초한 트레이닝을 통해 결정될 수 있다.
데이터 처리 장치는 제1 영상에 대응하는 레이블 영상을 제2 영상이 가진 왜곡처럼 변형한 변형된 레이블 영상과 제1 변형된 영상에 기반하여, 제2 영상에 대한 추론 모델을 트레이닝할 수 있다. 또한, 데이터 처리 장치는 제1 영상을 제2 영상이 가진 왜곡 및 텍스처처럼 변형한 제4 변형된 영상, 변형된 레이블 영상 및 제2 영상을 이용한 비지도식 도메인 적응 기법에 기초하여, 제2 영상에 대한 추론 모델을 트레이닝할 수 있다.
추론하고자 하는 영상의 왜곡 특성이 주어지지 않고, 해당 영상에 대한 레이블이 없는 경우에도 레이블이 존재하며 다른 왜곡 특성을 가진 영상을 활용하여 왜곡에 강인한 추론 모델을 획득할 수 있다.
도 8 및 도 9는 일 실시예에 따른 뉴럴 네트워크를 이용한 데이터 처리 장치를 설명하기 위한 도면이다.
도 8를 참조하면, 데이터 처리 장치(800)는 프로세서(810), 메모리(820), 카메라(830), 저장 장치(840), 입력 장치(850), 출력 장치(860) 및 네트워크 인터페이스(870)를 포함할 수 있으며, 이들은 통신 버스 또는 PCIe(Peripheral Component Interconnect Express), NoC(Network on a Chip) 등(880)를 통해 서로 통신할 수 있다. 예를 들어, 데이터 처리 장치(800)는 이동 전화, 스마트 폰, PDA, 넷북, 태블릿 컴퓨터, 랩톱 컴퓨터 등과 같은 모바일 장치, 스마트 워치, 스마트 밴드, 스마트 안경 등과 같은 웨어러블 디바이스, 데스크탑, 서버 등과 같은 컴퓨팅 장치, 텔레비전, 스마트 텔레비전, 냉장고 등과 같은 가전 제품, 도어 락 등과 같은 보안 장치, 자율주행 차량, 스마트 차량 등과 같은 차량의 적어도 일부로 구현될 수 있다.
프로세서(810)는 데이터 처리 장치(800) 내에서 실행하기 위한 기능 및 명령어들을 실행한다. 예를 들어, 프로세서(810)는 메모리(820) 또는 저장 장치(840)에 저장된 명령어들을 처리할 수 있다. 프로세서(810)는 도 1 내지 도 7을 통하여 설명된 하나 이상의 동작을 수행할 수 있다. 메모리(820)는 컴퓨터 판독가능한 저장 매체 또는 컴퓨터 판독가능한 저장 장치를 포함할 수 있다. 메모리(820)는 프로세서(810)에 의해 실행하기 위한 명령어들을 저장할 수 있고, 데이터 처리 장치(800)에 의해 소프트웨어 및/또는 애플리케이션이 실행되는 동안 관련 정보를 저장할 수 있다.
카메라(830)는 사진 및/또는 비디오를 촬영할 수 있다. 저장 장치(840)는 컴퓨터 판독가능한 저장 매체 또는 컴퓨터 판독가능한 저장 장치를 포함할 수 있다. 저장 장치(840)는 메모리(820)보다 더 많은 양의 정보를 저장하고, 정보를 장기간 저장할 수 있다. 예를 들어, 저장 장치(840)는 자기 하드 디스크, 광 디스크, 플래쉬 메모리, 플로피 디스크 또는 이 기술 분야에서 알려진 다른 형태의 비휘발성 메모리를 포함할 수 있다.
입력 장치(850)는 키보드 및 마우스를 통한 전통적인 입력 방식, 및 터치 입력, 음성 입력, 및 이미지 입력과 같은 새로운 입력 방식을 통해 사용자로부터 입력을 수신할 수 있다. 예를 들어, 입력 장치(850)는 키보드, 마우스, 터치 스크린, 마이크로폰, 또는 사용자로부터 입력을 검출하고, 검출된 입력을 데이터 처리 장치(800)에 전달할 수 있는 임의의 다른 장치를 포함할 수 있다. 출력 장치(860)는 시각적, 청각적 또는 촉각적인 채널을 통해 사용자에게 데이터 처리 장치(800)의 출력을 제공할 수 있다. 출력 장치(860)는 예를 들어, 디스플레이, 터치 스크린, 스피커, 진동 발생 장치 또는 사용자에게 출력을 제공할 수 있는 임의의 다른 장치를 포함할 수 있다. 네트워크 인터페이스(870)는 유선 또는 무선 네트워크를 통해 외부 장치와 통신할 수 있다.
도 9를 참조하면, 차량(900)은 도로나 선로 위를 달리는 모든 형태의 이동수단을 포함할 수 있다. 차량(900)은 예를 들면 자동차, 원동기장치 자전거 등을 포함하고, 자동차는 승용차, 화물차, 이륜 자동차 등 다양한 형태를 포함할 수 있다. 차량(900)은 자율주행 차량, 지능형 자동차 및 주행보조시스템이 탑재된 차량을 포함할 수 있다. 본 명세서에서 차량(900)은 데이터 처리 장치(910)가 장착된 차량을 지칭할 수 있다.
캘리브레이션 장치(910)는 메모리(911), 프로세서(913) 및 카메라(915)를 포함할 수 있다.
메모리(911)는 컴퓨터에서 읽을 수 있는 명령어를 포함할 수 있다. 프로세서(913)는 메모리(911)에 저장된 명령어가 프로세서(913)에서 실행됨에 따라 이후에 설명할 동작들을 수행할 수 있다. 메모리(911)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(913)는 명령어들, 혹은 프로그램들을 실행하거나, 캘리브레이션 장치(910)를 제어하는 장치로서, 예를 들어, CPU(Central Processing Unit) 및/또는 GPU(Graphic Processing Unit) 등을 포함할 수 있다.
프로세서(913)는 카메라(915)로부터 획득된 영상에 대해 추론을 수행할 수 있다. 카메라(915)는 차량(900)의 전방, 후방, 측방과 같이 일 방향을 촬영하는 카메라로서, 차량(900)에는 하나 이상의 카메라가 설치될 수 있다. 예를 들어, 4대의 어안 카메라들이 90도 간격으로 차량(900)에 배치되어, 차량(900)의 주변 360도를 촬영할 수 있다. 차량(900)에 설치된 카메라(915)는 차량(900)의 크기, 형태, 유형에 따라 다양해질 수 있고, 그에 따른 촬영 영상에 나타나는 왜곡 및/또는 텍스처도 각양각색일 수 있다. 앞서 설명한 방법을 이용하면, 카메라(915)를 통해 촬영된 영상이 어떤 왜곡 및/또는 텍스처를 가지더라도 강인하게 추론을 수행하는 추론 모델을 획득할 수 있고, 이를 통해 카메라(915)의 촬영 영상에 대해 높은 정확도로 추론을 수행할 수 있다.
이처럼, 본 명세서에서 설명한 내용은 SVM(Surround View Monitor) 시스템, RVC(Rear View Camera) 시스템, ADAS(advanced driver assistance systems) 또는 IVI(in-vehicle infotainment) 칩에 제한 없이 적용될 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 저장할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (20)
- 프로세서에 의해 실행되는, 뉴럴 네트워크를 이용하는 데이터 처리 방법에 있어서,
상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 상기 제1 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상(first deformed image)을 결정하는 단계;
상기 제1 변형된 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상(first re-deformed image)을 결정하는 단계; 및
상기 제1 재 변형된 영상과 상기 제1 영상 간 로스(loss)에 기초하여, 상기 제1 영상에서 상기 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드(first relative deformation field)를 결정하는 제1 왜곡 필드 생성기 및 상기 제2 영상에서 상기 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝하는 단계
를 포함하는
데이터 처리 방법.
- 제1항에 있어서,
상기 제2 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제2 변형된 영상을 결정하는 단계;
상기 제2 변형된 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제2 재 변형된 영상을 결정하는 단계; 및
상기 제2 재 변형된 영상과 상기 제2 영상 간 로스에 기초하여, 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는 단계
를 더 포함하는
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 왜곡 필드 생성기의 초기 파라미터는
어안 시뮬레이션(fisheye simulation)에 기반하여 제1 영상으로부터 변형된 제3 변형된 영상 및 상기 제1 변형된 영상 간 로스에 기초한 트레이닝을 통해 결정되는,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 상대적 왜곡 필드와 상기 제2 상대적 왜곡 필드는 역변환 관계 특성을 가지는,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 변형된 영상을 결정하는 단계는
상기 제1 영상에 상기 제1 상대적 왜곡 필드를 적용하여 상기 제2 영상의 왜곡을 가진 상기 제1 변형된 영상을 결정하는,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 재 변형된 영상을 결정하는 단계는
상기 제1 변형된 영상에 상기 제2 상대적 왜곡 필드를 적용하여 상기 제1 영상의 왜곡을 가진 상기 제1 재 변형된 영상을 결정하는,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 영상과 상기 제2 영상은
상이한 컨텐츠 및/또는 장면을 포함한 언페어드 영상(unpaired image)인,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는 단계는
상기 제1 영상 및 상기 제2 영상 각각이 가진 왜곡에 대한 정보 없이, 비지도 학습(unsupervised learning)으로 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는,
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 영상에 대응하는 레이블 영상을 상기 제2 영상이 가진 왜곡처럼 변형한 변형된 레이블 영상과 상기 제1 변형된 영상에 기반하여, 상기 제2 영상에 대한 추론 모델(inference model)을 트레이닝하는 단계
를 더 포함하는
데이터 처리 방법.
- 제1항에 있어서,
상기 제1 영상을 상기 제2 영상이 가진 왜곡 및 텍스처(texture)처럼 변형한 제4 변형된 영상, 상기 변형된 레이블 영상 및 상기 제2 영상을 이용한 비지도식 도메인 적응(unsupervised domain adaptation) 기법에 기초하여, 상기 제2 영상에 대한 추론 모델을 트레이닝하는 단계
를 더 포함하는
데이터 처리 방법.
- 제1항에 있어서,
상기 제2 영상은 대응하는 레이블 영상이 없는,
데이터 처리 방법.
- 프로세서에 의해 실행되는, 뉴럴 네트워크를 이용한 데이터 처리 방법에 있어서,
상이한 왜곡을 가진 소스 영상과 타겟 영상에 기반하여 상기 소스 영상에서 상기 타겟 영상으로의 상대적인 왜곡을 표현하는 상대적 왜곡 필드를 결정하는 단계; 및
상기 상대적 왜곡 필드를 상기 소스 영상에 적용하여 상기 타겟 영상의 왜곡을 가진 변형된 소스 영상을 결정하는 단계
를 포함하는
데이터 처리 방법.
- 제1항 내지 제12항 중에서 어느 한 항의 방법을 실행하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기록매체.
- 하나 이상의 프로세서를 포함하고,
상기 하나 이상의 프로세서는
상이한 왜곡을 가진 제1 영상과 제2 영상 중에서 상기 제1 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제1 변형된 영상을 결정하고,
상기 제1 변형된 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제1 재 변형된 영상을 결정하며,
상기 제1 재 변형된 영상과 상기 제1 영상 간 로스에 기초하여, 상기 제1 영상에서 상기 제2 영상으로의 상대적인 왜곡을 표현하는 제1 상대적 왜곡 필드를 결정하는 제1 왜곡 필드 생성기 및 상기 제2 영상에서 상기 제1 영상으로의 상대적인 왜곡을 표현하는 제2 상대적 왜곡 필드를 결정하는 제2 왜곡 필드 생성기를 트레이닝하는,
데이터 처리 장치.
- 제14항에 있어서,
상기 하나 이상의 프로세서는
상기 제2 영상을 상기 제1 영상이 가진 왜곡처럼 변형하여 제2 변형된 영상을 결정하고, 상기 제2 변형된 영상을 상기 제2 영상이 가진 왜곡처럼 변형하여 제2 재 변형된 영상을 결정하며, 상기 제2 재 변형된 영상과 상기 제2 영상 간 로스에 기초하여, 상기 제1 왜곡 필드 생성기 및 상기 제2 왜곡 필드 생성기를 트레이닝하는,
데이터 처리 장치.
- 제14항에 있어서,
상기 제1 왜곡 필드 생성기의 초기 파라미터는
어안 시뮬레이션(fisheye simulation)에 기반하여 제1 영상으로부터 변형된 제3 변형된 영상 및 상기 제1 변형된 영상 간 로스에 기초한 트레이닝을 통해 결정되는,
데이터 처리 장치.
- 제14항에 있어서,
상기 제1 상대적 왜곡 필드와 상기 제2 상대적 왜곡 필드는 역변환 관계 특성을 가지는,
데이터 처리 장치.
- 제14항에 있어서,
상기 하나 이상의 프로세서는
상기 제1 영상에 상기 제1 상대적 왜곡 필드를 적용하여 상기 제2 영상의 왜곡을 가진 상기 제1 변형된 영상을 결정하는,
데이터 처리 장치.
- 제14항에 있어서,
상기 하나 이상의 프로세서는
상기 제1 변형된 영상에 상기 제2 상대적 왜곡 필드를 적용하여 상기 제1 영상의 왜곡을 가진 상기 제1 재 변형된 영상을 결정하는,
데이터 처리 장치.
- 제14항에 있어서,
상기 데이터 처리 장치는
이동 전화, 스마트 폰, PDA, 넷북, 태블릿 컴퓨터, 랩톱 컴퓨터, 모바일 장치, 스마트 워치, 스마트 밴드, 스마트 안경, 웨어러블 디바이스, 데스크탑, 서버, 컴퓨팅 장치, 텔레비전, 스마트 텔레비전, 냉장고, 가전 제품, 도어 락, 보안 장치, 차량 중 어느 하나인,
데이터 처리 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/575,002 US20220366548A1 (en) | 2021-05-17 | 2022-01-13 | Method and device with data processing using neural network |
CN202210328210.8A CN115358933A (zh) | 2021-05-17 | 2022-03-30 | 使用神经网络进行数据处理的方法和装置 |
EP22166297.6A EP4092612A1 (en) | 2021-05-17 | 2022-04-01 | Method and device with data processing using neural network background |
JP2022080230A JP2022176920A (ja) | 2021-05-17 | 2022-05-16 | ニューラルネットワークを使用するデータ処理方法及び装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210063699 | 2021-05-17 | ||
KR20210063699 | 2021-05-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220155882A true KR20220155882A (ko) | 2022-11-24 |
Family
ID=84235691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210083974A KR20220155882A (ko) | 2021-05-17 | 2021-06-28 | 뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220155882A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102647934B1 (ko) * | 2023-11-29 | 2024-03-15 | 한국전자기술연구원 | Xr 기기 가시화 품질 향상을 위한 장치 및 방법 |
-
2021
- 2021-06-28 KR KR1020210083974A patent/KR20220155882A/ko unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102647934B1 (ko) * | 2023-11-29 | 2024-03-15 | 한국전자기술연구원 | Xr 기기 가시화 품질 향상을 위한 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10713491B2 (en) | Object detection using spatio-temporal feature maps | |
US10503999B2 (en) | System for detecting salient objects in images | |
CN108027885B (zh) | 空间变换器模块 | |
CN113313064B (zh) | 字符识别方法、装置、可读介质及电子设备 | |
JP7051267B2 (ja) | 画像検出方法、装置、電子設備、記憶媒体、及びプログラム | |
CN110276346B (zh) | 目标区域识别模型训练方法、装置和计算机可读存储介质 | |
US9760800B2 (en) | Method and system to detect objects using block based histogram of oriented gradients | |
KR20200044171A (ko) | 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치 | |
JP6678246B2 (ja) | 大域的最適化に基づく意味的セグメント化 | |
CN112668588B (zh) | 车位信息生成方法、装置、设备和计算机可读介质 | |
US11804043B2 (en) | Detecting objects in a video using attention models | |
CN117499658A (zh) | 使用神经网络生成视频帧 | |
WO2023005386A1 (zh) | 模型训练方法和装置 | |
JP2023507248A (ja) | 物体検出および認識のためのシステムおよび方法 | |
KR20220114209A (ko) | 연사 영상 기반의 영상 복원 방법 및 장치 | |
US20220207861A1 (en) | Methods, devices, and computer readable storage media for image processing | |
US20220207866A1 (en) | Method, device, and computer readable storage medium for image processing | |
US20240282027A1 (en) | Method, apparatus, device and storage medium for generating animal figures | |
US11301716B2 (en) | Unsupervised domain adaptation for video classification | |
CN111639591A (zh) | 轨迹预测模型生成方法、装置、可读存储介质及电子设备 | |
KR20220155882A (ko) | 뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치 | |
CN117315758A (zh) | 面部表情的检测方法、装置、电子设备及存储介质 | |
EP3635631A2 (en) | System for detecting salient objects in images | |
JP2021528736A (ja) | ドローンビデオにおける人間の行動認識 | |
US20220237884A1 (en) | Keypoint based action localization |