KR20230060029A - 평면 검출 장치 및 방법 - Google Patents

평면 검출 장치 및 방법 Download PDF

Info

Publication number
KR20230060029A
KR20230060029A KR1020210144225A KR20210144225A KR20230060029A KR 20230060029 A KR20230060029 A KR 20230060029A KR 1020210144225 A KR1020210144225 A KR 1020210144225A KR 20210144225 A KR20210144225 A KR 20210144225A KR 20230060029 A KR20230060029 A KR 20230060029A
Authority
KR
South Korea
Prior art keywords
pixel
image
plane
network
segment
Prior art date
Application number
KR1020210144225A
Other languages
English (en)
Inventor
김승언
장현성
이원희
장석환
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210144225A priority Critical patent/KR20230060029A/ko
Priority to US17/698,577 priority patent/US20230132106A1/en
Priority to EP22169094.4A priority patent/EP4174774A1/en
Priority to CN202210543523.5A priority patent/CN116051448A/zh
Priority to JP2022115416A priority patent/JP2023065296A/ja
Publication of KR20230060029A publication Critical patent/KR20230060029A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20224Image subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20228Disparity calculation for image-based rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)

Abstract

평면 검출 장치 및 방법에 관한 것이다. 일 실시 예에 따른 평면 검출 방법은 입력 영상의 픽셀 별 평면 파라미터를 획득하는 단계, 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계, 세그먼트 별 평면 파라미터를 획득하는 단계, 및 입력 영상에 포함된 평면을 검출하는 단계를 포함할 수 있다.

Description

평면 검출 장치 및 방법{PLANAR SURFACE DETECTION APPARATUS AND METHOD}
아래의 개시는 평면 검출 장치 및 방법에 관한 것이다.
평면은 영상에서 중요한 기하학적 특징으로, 영상의 평면 검출 기술은 장면 이해, 영상 재구축, 물체 인식 등 다양한 컴퓨터 비전 분야에서 활용되는 기술이다. 영상에서 평면을 검출하기 위하여 영상의 깊이 정보에 기초한 다양한 방법이 개발되고 있으며, 딥러닝 기술의 발달에 따라 뉴럴 네트워크를 이용하여 영상에서 평면을 검출하는 방법 역시 다양하게 개발되고 있다. 영상에 대응하는 깊이 정보, 법선 벡터 혹은 평면에 대한 정답 레이블이 포함된 학습 데이터를 이용하여, 지도 학습 방식을 통해 평면 검출을 위한 뉴럴 네트워크를 구현할 수 있으나, 정답 레이블이 포함된 영상 데이터를 획득함에 어려움이 있으며, 정답 레이블이 없는 실제 환경에 적용하기에 뚜렷한 한계가 있다.
아래 실시 예들은 정답 데이터 없이, 비지도 학습 방법으로 학습된 뉴럴 네트워크를 이용하여 영상에서 평면을 검출하는 기술을 제공하기 위한 것이다.
아래 실시 예들은 정답 데이터 없이 영상의 깊이를 추정하고, 추정된 깊이 정보를 이용하여 영상을 평면 단위로 분할하기 위한 뉴럴 네트워크 학습 방법을 제공하기 위한 것이다.
일 실시 예에 따른 평면 검출 방법은 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하는 단계; 영상의 세그멘테이션(segmentation)을 수행하도록 학습된 제2 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계; 상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하는 단계; 및 상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는 단계를 포함한다.
상기 입력 영상에 포함된 평면을 검출하는 단계는 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 세그먼트 클러스터링 정보를 획득하는 단계; 및 상기 세그먼트 별 평면 파라미터 및 상기 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는 단계를 포함할 수 있다.
상기 세그먼트 별 평면 파라미터를 획득하는 단계는 상기 제2 네트워크에 기초한 상기 입력 영상 내 세그먼트들 각각에 대응하여, 해당 세그먼트에 대응하는 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 상기 픽셀 별 평면 파라미터를 가중 합하는 단계; 및 상기 가중 합된 평면 파라미터에 기초하여, 상기 해당 세그먼트에 대응하는 평면 파라미터를 획득하는 단계를 포함할 수 있다.
상기 제1 네트워크 및 상기 제2 네트워크는 상기 제2 네트워크에 기초하여 클러스터링된 각 세그먼트에 대응하는 평면 파라미터의 확률 분포에 기초하여 계산된, 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스; 및 제1 영상에 대응하여 상기 제1 네트워크에서 추정된 시차에 기초하여 상기 제1 영상에 대응하는 제2 영상을 변환한 영상 및 상기 제1 영상의 차이에 관한 제2 로스 중 적어도 하나에 기초하여 학습될 수 있다.
상기 픽셀 별 평면 파라미터를 획득하는 단계는 상기 제1 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 시차를 추정하는 단계; 및 상기 입력 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter)에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따른 평면 검출 모델의 학습 방법은 학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 상기 제1 영상의 픽셀 별 시차에 기초하여, 상기 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계; 상기 제1 영상을 제2 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계; 및 상기 제1 영상의 픽셀 별 평면 파라미터 및 상기 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함한다.
상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률은 미리 정해진 개수의 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포 및 상기 픽셀 별 평면 파라미터에 기초하여 계산될 수 있다.
상기 미리 정해진 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포는 상기 픽셀 별 세그먼트 대응 확률 및 상기 픽셀 별 평면 파라미터에 기초하여 계산된 상기 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값; 및 상기 픽셀 별 세그먼트 대응 확률, 상기 픽셀 별 평면 파라미터 및 상기 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값에 기초하여 계산된, 상기 세그먼트들 각각에 대응하는 평면 파라미터의 분산을 포함할 수 있다.
상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계는 상기 제1 네트워크에서 상기 제1 영상에 대응하여 추정된 깊이에 기초하여, 상기 제1 영상과 다른 시점에서 촬영된 제2 영상을 변환하는 단계; 및 상기 변환된 영상과 상기 제1 영상의 차이에 관한 제2 로스 및 상기 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함할 수 있다.
상기 학습 데이터는 스테레오 영상의 제1 단안 영상인 상기 제1 영상 및 상기 스테레오 영상의 제2 단안 영상인 제2 영상; 및 비디오 영상의 제1 프레임인 상기 제1 영상 및 상기 비디오 영상의 제2 프레임인 제2 영상 중 적어도 하나를 포함할 수 있다.
상기 픽셀 별 평면 파라미터를 획득하는 단계는 상기 제1 영상을 상기 제1 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 시차를 추정하는 단계; 및 상기 제1 영상을 촬영한 카메라의 내부 파라미터에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따른 평면 검출 장치는 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하고, 영상의 세그멘테이션(segmentation)을 수행하도록 학습된 제2 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하고, 상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하며, 상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는, 적어도 하나의 프로세서를 포함한다.
상기 프로세서는, 상기 입력 영상에 포함된 평면을 검출함에 있어서, 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 세그먼트 클러스터링 정보를 획득하고, 상기 세그먼트 별 평면 파라미터 및 상기 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 상기 입력 영상에 포함된 평면을 검출할 수 있다.
상기 프로세서는, 상기 세그먼트 별 평면 파라미터를 획득함에 있어서, 상기 제2 네트워크에 기초한 상기 입력 영상 내 세그먼트들 각각에 대응하여, 해당 세그먼트에 대응하는 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 상기 픽셀 별 평면 파라미터를 가중 합하고, 상기 가중 합된 평면 파라미터에 기초하여, 상기 해당 세그먼트에 대응하는 평면 파라미터를 획득할 수 있다.
상기 제1 네트워크 및 상기 제2 네트워크는 상기 제2 네트워크에 기초하여 클러스터링된 각 세그먼트에 대응하는 평면 파라미터의 확률 분포에 기초하여 계산된, 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스; 및 제1 영상에 대응하여 상기 제1 네트워크에서 추정된 시차에 기초하여 상기 제1 영상에 대응하는 제2 영상을 변환한 영상 및 상기 제1 영상의 차이에 관한 제2 로스 중 적어도 하나에 기초하여 학습될 수 있다.
상기 프로세서는, 상기 픽셀 별 평면 파라미터를 획득함에 있어서, 상기 제1 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 시차를 추정하고, 상기 입력 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter)에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득할 수 있다.
일 실시 예에 따른 평면 검출 장치는 입력된 영상의 시차를 추정하는 제1 네트워크 및 입력된 영상의 세그멘테이션을 수행하는 제2 네트워크를 포함하는 평면 검출 모델이 기록된 메모리를 포함하고, 상기 평면 검출 모델은 학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 상기 제1 영상의 픽셀 별 시차에 기초하여, 상기 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계; 상기 제1 영상을 제2 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계; 및 상기 제1 영상의 픽셀 별 평면 파라미터 및 상기 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함하는 상기 평면 검출 모델의 학습 방법에 의해 제조된다.
상기 평면 검출 모델의 학습 방법에 포함된 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계는 상기 제1 네트워크에서 상기 제1 영상에 대응하여 추정된 깊이에 기초하여, 상기 제1 영상과 다른 시점에서 촬영된 제2 영상을 변환하는 단계; 및 상기 변환된 영상과 상기 제1 영상의 차이에 관한 제2 로스 및 상기 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함할 수 있다.
상기 평면 검출 장치는 입력 영상을 상기 제1 네트워크에 인가하여, 상기 제1 네트워크에서 추정된 상기 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하고, 상기 입력 영상을 상기 제2 네트워크에 인가하여, 상기 제2 네트워크에서 추정된 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 획득하고, 상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하며, 상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는, 적어도 하나의 프로세서를 더 포함한다.
도 1 은 일 실시 예에 따른 평면 검출 방법의 동작 흐름도이다.
도 2는 일 실시 예에 따른 평면 검출을 설명하기 위한 도면이다.
도 3은 일 실시 예에 따른 평면 검출 모델의 프레임워크를 예시한 도면이다.
도 4는 일 실시 예에 따른 평면 검출 모델의 학습 방법의 동작 흐름도이다.
도 5는 일 실시 예에 따른 평면 검출 모델의 학습을 위한 로스를 설명하기 위한 도면이다.
도 6은 일 실시 예에 따른 평면 검출 모델의 학습 방법을 설명하기 위한 도면이다.
도 7은 일 실시 예에 따른 평면 검출 모델의 학습 방법을 설명하기 위한 도면이다.
도 8은 일 실시 예에 따른 학습된 제2 네트워크를 활용한 평면 추출 모델의 프레임워크를 예시한 도면이다.
도 9는 일 실시 예에 따른 장치의 구성의 예시도이다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
도 1 은 일 실시 예에 따른 평면 검출 방법의 동작 흐름도이다.
도 1을 참조하면, 일 실시 예에 따른 평면 검출 방법은 입력 영상의 픽셀 별 평면 파라미터를 획득하는 단계(110), 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계(120), 세그먼트 별 평면 파라미터를 획득하는 단계(130), 및 입력 영상에 포함된 평면을 검출하는 단계(140)를 포함할 수 있다.
평면을 검출하는 것은 영상에 포함된 객체를 이루는 서로 다른 평면 혹은 면을 검출하는 것을 의미할 수 있다. 검출 대상이 되는 평면은 수학적 정의에 따른 모든 지점에서의 곡률이 0인 완전한 평면 뿐 아니라, 어느 정도의 곡률 혹은 굴곡을 갖는 평면과 유사한 면을 포함할 수 있다. 예를 들어, 도 2를 참조하면, 바닥면에 놓인 직육면체를 피사체로 포함하는 이미지(200)의 경우, 평면 검출에 의해 바닥면에 대응하는 평면(210), 객체를 구성하는 제1 평면(220), 객체를 구성하는 제2 평면(230) 및 객체를 구성하는 제3 평면(240)이 검출될 수 있다.
일 실시 예에 따른 단계(110)는 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 입력 영상의 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따르면, 제1 네트워크는 입력 영상의 시차 혹은 깊이를 추정하도록 학습된 뉴럴 네트워크(neural network)를 포함할 수 있다. 입력 영상은 단안 영상(monocular image)을 포함할 수 있다. 단안 영상은 하나의 시점에서 촬영된 영상으로, 깊이 정보 혹은 시차 정보가 포함되지 않은 영상에 해당할 수 있다. 다시 말해, 제1 네트워크는 깊이 정보를 포함하지 않는 단안 영상을 입력 받아, 영상의 시차 혹은 깊이를 추정하도록 학습된 뉴럴 네트워크를 포함할 수 있다.
영상의 깊이는 영상을 구성하는 픽셀에 투사된 피사체와 영상을 촬영한 카메라 사이의 거리에 대응될 수 있으며, 임의의 베이스라인(base line)의 거리를 두고 배치된 두 개의 카메라를 통해 촬영된 두 개 영상에서의 피사체 간 거리차인 시차(disparity)로부터 획득될 수 있다. 깊이(r)는 시차(d)와 카메라 렌즈의 초점 거리(f) 및 베이스 라인(b)으로부터 아래의 수학식 1과 같이 계산될 수 있다.
Figure pat00001
즉, 시차와 깊이는 역수 관계에 있으므로, 시차를 추정한다는 것은 깊이를 추정한다는 것을 의미할 수 있다.
일 실시 예에 따른 평면 파라미터는 평면을 특정하기 위한 파라미터로, 예를 들어 평면의 법선 벡터 및 기준점으로부터의 거리 정보를 포함할 수 있다. 예를 들어, 카메라의 위치를 원점으로 하는 3차원의 좌표계에서 ax + by + cz + d = 0에 대응되는 평면을 특정하기 위한 평면 파라미터는 법선 벡터 (a, b, c)와 원점과의 거리 정보에 대응하는 d를 포함하는 벡터 [a, b, c, d]를 포함할 수 있다.
일 실시 예에 따르면, 픽셀 별 평면 파라미터는 영상에 포함된 각 픽셀의 평면 파라미터로, 픽셀이 속한 평면의 법선 벡터 및 기준점으로부터의 거리 정보를 포함할 수 있다.
일 실시 예에 따르면, 픽셀 별 평면 파라미터를 획득하는 단계(110)는 제1 네트워크에 기초하여, 입력 영상의 픽셀 별 시차를 추정하는 단계 및 입력 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter)에 기초하여, 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다. 카메라의 내부 파라미터는 카메라의 내부 설정에 관한 값으로, 예를 들어 카메라 렌즈의 초점 거리 및 베이스 라인 값을 포함할 수 있다.
일 실시 예에 따르면, 제1 네트워크에서 추정된 픽셀들의 시차와 카메라의 내부 파라미터를 이용하여 픽셀들의 3차원 포인트 클라우드가 계산될 수 있고, 포인트 클라우드로부터 픽셀 별 법선 벡터 및 미리 정해진 기준점으로부터의 거리가 계산될 수 있다. 다시 말해, 픽셀 별 평면 파라미터는 제1 네트워크에서 추정된 픽셀 별 시차 및 카메라의 내부 파라미터로부터 계산을 통해 획득될 수 있다.
일 실시 예에 따른 단계(120)는 영상의 세그멘테이션(segmentation)을 수행하도록 학습된 제2 네트워크에 기초하여, 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계를 포함할 수 있다.
일 실시 예에 따르면, 제2 네트워크는 입력된 영상의 세그멘테이션을 수행하도록 학습된 뉴럴 네트워크를 포함할 수 있다. 세그멘테이션은 영상의 픽셀을 미리 정해진 개수의 그룹으로 클러스터링(clustering)하는 것을 의미할 수 있다. 세그멘테이션에 의해 클러스터링된 픽셀들의 그룹 혹은 클러스터(cluster)는 세그먼트(segment)로 지칭될 수 있다.
일 실시 예에 따르면, 제2 네트워크는 동일한 평면에 속하는 영상의 픽셀을 동일한 세그먼트로 클러스터링하도록 학습된 뉴럴 네트워크를 포함할 수 있다. 이하에서 상술하겠으나, 제2 네트워크는 영상의 픽셀의 세그먼트에 대한 정답 데이터 없이 제1 네트워크에 기초하여 획득된 픽셀 별 평면 파라미터의 값 및 제2 네트워크의 출력에 기초하여, 픽셀을 동일한 평면에 속하는 세그먼트로 클러스터링하도록 학습될 수 있다. 또한, 제2 네트워크는 제1 네트워크에 기초하여 획득된 픽셀 별 평면 파라미터의 값에 픽셀 별 추가 정보가 부가된 데이터 및 제2 네트워크의 출력에 기초하여, 픽셀을 동일한 평면에 속하는 세그먼트로 클러스터링하도록 학습될 수 있다.
일 실시 예에 따르면, 제2 네트워크는 입력 영상의 픽셀 별 세그먼트 대응 확률을 출력할 수 있다. 특정 픽셀의 세그먼트 대응 확률은 세그먼트 각각에 대응하여 해당 픽셀이 해당 세그먼트에 대응될 확률 혹은 해당 세그먼트로 클러스터링될 확률을 포함할 수 있다. 세그먼트의 개수는 임의의 값으로 미리 정해질 수 있다. 예를 들어, 세그먼트의 개수가 K개로 정해진 경우, 특정 픽셀 n의 세그먼트 대응 확률 γn은 픽셀 n이 K개의 세그먼트 각각에 대응될 확률을 포함하는 집합 {
Figure pat00002
}에 해당할 수 있다.
일 실시 예에 따르면, 평면 파라미터 값이 유사한 두 픽셀은 대응될 확률이 높은 세그먼트의 종류가 동일할 수 있다. 다시 말해, 동일한 평면에 속하는 복수의 픽셀들은 해당 평면에 해당하는 세그먼트에 대응될 확률이 높게 나타날 수 있다.
일 실시 예에 따르면, 제1 네트워크 및 제2 네트워크 중 적어도 하나는 제1 로스(loss) 및 제2 로스 중 적어도 하나에 기초하여 학습될 수 있다. 제1 로스는 제2 네트워크에 기초하여 클러스터링된 각 세그먼트에 대응하는 평면 파라미터의 확률 분포에 기초하여 계산된, 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 로스를 포함할 수 있다. 제2 로스는 제1 영상에 대응하여 제1 네트워크에서 추정된 시차에 기초하여 제1 영상에 대응하는 제2 영상을 변환한 영상 및 제1 영상의 차이에 관한 로스를 포함할 수 있다. 일 실시 예에 따른 제1 네트워크 및 제2 네트워크의 학습 방법은 이하에서 상술한다.
일 실시 예에 따른 단계(130)는 픽셀 별 평면 파라미터 및 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따르면, 세그먼트 별 평면 파라미터를 획득하는 단계(130)는 제2 네트워크에 기초한 입력 영상 내 세그먼트들 각각에 대응하여, 해당 세그먼트에 대응하는 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 평면 파라미터를 가중 합하는 단계 및 가중 합된 평면 파라미터에 기초하여, 해당 세그먼트에 대응하는 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따르면, 픽셀 별 평면 파라미터를 가중 합하는 단계는 픽셀들의 특정 세그먼트에 대응될 확률을 가중치로 하여, 픽셀들의 평면 파라미터를 가중 합하는 단계를 포함할 수 있다. 예를 들어, 아래의 수학식 2와 같이 모든 픽셀 각각의 평면 파라미터에 세그먼트 k에 대응될 확률을 곱하여 합한 값이 세그먼트 k의 평면 파라미터 yk로 획득될 수 있다.
Figure pat00003
수학식 2에서, n은 픽셀의 인덱스로, 1이상 N 이하의 자연수에 해당하며, N은 영상에 포함된 픽셀의 총 개수에 해당할 수 있다.
Figure pat00004
는 픽셀 n이 세그먼트 k에 대응될 확률로, 제2 네트워크에서 출력된 픽셀 n의 세그먼트 대응 확률 γn에 포함될 수 있다. xn은 픽셀 n의 평면 파라미터로, 제1 네트워크에 기초하여 획득된 값에 해당할 수 있다.
일 실시 예에 따르면, 세그먼트 별 평면 파라미터의 정규화를 위해, 수학식 1에 따른 yk에 1/Nk를 곱한 값을 세그먼트 k의 평면 파라미터로 이용할 수 있다. Nk는 아래 수학식 3과 같이 정의될 수 있다.
Figure pat00005
상기 수학식 2에 따라 모든 픽셀들의 평면 파라미터의 가중 합으로 세그먼트 별 평면 파라미터를 획득하는 방법은 픽셀 별 평면 파라미터 및 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하는 방법의 일 예일 뿐, 세그먼트 별 평면 파라미터를 획득하는 방법은 수학식 2에 따른 방법으로 한정되지 않는다.
일 예로, 특정 세그먼트의 평면 파라미터는 세그먼트 대응 확률 중에서 해당 세그먼트에 대응할 확률이 최대인 픽셀들의 평면 파라미터의 단순 합 혹은 가중 합으로 결정될 수 있다. 다시 말해, γn= {
Figure pat00006
} 중 세그먼트 k에 대응하는
Figure pat00007
가 최대 값인 픽셀 n에 대한 평면 파라미터의 단순 합에 따른 평균 혹은 해당 세그먼트에 대응될 확률을 가중치로 하여 합한 값으로 세그먼트 k의 평면 파라미터가 결정될 수 있다.
또 일 예로, 특정 세그먼트의 평면 파라미터는 해당 세그먼트에 대응할 확률이 미리 정해진 임계 값 이상인 픽셀들의 평면 파라미터의 가중 합으로 결정될 수 있다. 예를 들어, 미리 정해진 임계 값이 0.5인 경우,
Figure pat00008
가 0.5 이상인 픽셀 n에 대한 평면 파라미터의 가중 합으로 세그먼트 k의 평면 파라미터가 결정될 수 있다.
일 실시 예에 따른 단계(140)는 세그먼트 별 평면 파라미터에 기초하여, 입력 영상에 포함된 평면을 검출하는 단계를 포함할 수 있다. 세그먼트 별 평면 파라미터에 기초하여, 입력 영상에서 각 세그먼트에 대응하는 평면이 검출될 수 있다. 세그먼트 별 평면 파라미터는 각 세그먼트에 대응하는 평면을 특정하기 위한 정보를 포함할 수 있으며, 예를 들어 각 세그먼트에 대응하는 평면의 법선 벡터 및 기준점과의 거리 정보를 포함할 수 있다. 다시 말해, 세그먼트 별 평면 파라미터에 의해 입력 영상에서 각 세그먼트에 대응하는 평면이 특정될 수 있다.
일 실시 예에 따르면, 입력 영상에 포함된 평면을 검출하는 단계(140)는 입력 영상의 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 세그먼트 클러스터링 정보를 획득하는 단계 및 세그먼트 별 평면 파라미터 및 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 입력 영상에 포함된 평면을 검출하는 단계를 포함할 수 있다. 픽셀 별 세그먼트 클러스터링 정보는 각 픽셀에 대응되는 세그먼트를 지시하는 정보를 포함할 수 있다. 픽셀의 세그먼트 클러스터링 정보는 해당 픽셀의 세그먼트 대응 확률에 기초하여, 해당 픽셀이 대응될 확률이 가장 큰 세그먼트를 지시하는 정보를 포함할 수 있다. 예를 들어, 특정 픽셀 n의 세그먼트 대응 확률 γn = {
Figure pat00009
}에서 세그먼트 k에 대응될 확률인
Figure pat00010
가 가장 큰 경우, 픽셀의 세그먼트 클러스터링 정보는 세그먼트 k를 지시하는 정보를 포함할 수 있다. 다시 말해, 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 입력 영상에 포함된 픽셀들의 세그먼트 클러스터링 정보가 제공되고, 세그먼트 별 평면 파라미터에 기초하여, 각 세그먼트에 대응하는 평면에 관한 정보가 제공됨으로써, 입력 영상에 포함된 평면이 검출될 수 있다.
도 3은 일 실시 예에 따른 평면 검출 모델의 프레임워크를 예시한 도면이다.
도 3을 참조하면, 일 실시 예에 따른 평면 검출 모델(300)은 영상을 입력으로 받아 세그먼트 평면 파라미터 및 세그먼트 클러스터링 정보를 평면 검출의 결과로 출력하는 모델로, 도 1을 통해 상술한 평면 검출 방법의 동작들을 수행하는 모델에 해당할 수 있다. 상술한 바와 같이, 입력되는 영상은 단안 영상을 포함할 수 있다.
일 실시 예에 따른 평면 검출 모델(300)은 깊이 추정 모듈(310), 세그멘테이션 모듈(320), 대표 평면 파라미터 계산 모듈(330) 및 세그먼트 선택 모듈(340)을 포함할 수 있다. 평면 검출 모델(300)에 포함된 모듈들(310 내지 340)은 설명의 편의를 위하여 평면 검출 모델(300)에서 수행되는 논리적 동작에 따라 임의로 구분한 것으로, 평면 검출 모델(300)의 구조를 한정하기 위한 것은 아니다. 일 예로, 평면 검출 모델(300)은 장치로 구현될 수 있으며, 장치의 적어도 하나의 프로세서에서 평면 검출 모델(300)의 동작을 수행할 수 있다. 평면 검출 모델이 구현된 장치의 구체적인 구성은 이하에서 상술한다.
일 실시 예에 따르면, 깊이 추정 모듈(310)은 영상을 입력 받아 입력된 영상의 픽셀 별 평면 파라미터를 출력하는 모듈에 해당할 수 있다. 상술한 바와 같이, 픽셀의 평면 파라미터는 픽셀에 대응하는 평면을 특정하기 위한 파라미터로, 픽셀에 대응하는 평면의 법선 벡터 및 기준점으로부터의 거리 정보를 포함할 수 있다. 깊이 추정 모듈(310)은 입력된 영상의 픽셀 별 시차를 추정하는 뉴럴 네트워크인 제1 네트워크를 포함할 수 있으며, 제1 네트워크에서 출력된 시차에 기초하여 픽셀 별 평면 파라미터를 계산하는 모듈을 포함할 수 있다. 깊이 추정 모듈(310)은 제1 네트워크에서 추정된 영상의 픽셀 별 시차 및 입력된 영상을 촬영한 카메라의 내부 파라미터에 기초하여 각 픽셀의 포인트 클라우드를 계산할 수 있으며, 각 포인트에서 인접한 포인트와의 관계를 고려하여 법선 벡터 및 기준점으로부터의 거리를 계산하는 동작을 수행할 수 있다.
일 실시 예에 따르면, 세그멘테이션 모듈(320)은 영상을 입력 받아 입력된 영상의 픽셀 별 세그먼트 대응 확률을 출력하는 모듈에 해당할 수 있다. 세그멘테이션 모듈(320)은 영상을 입력 받아 입력된 영상의 픽셀 별 세그먼트 대응 확률을 출력하도록 학습된 제2 네트워크를 포함할 수 있다. 상술한 바와 같이, 픽셀의 세그먼트 대응 확률은 세그먼트 각각에 대응하여 해당 픽셀이 해당 세그먼트에 대응될 확률 혹은 해당 세그먼트로 클러스터링될 확률을 포함할 수 있다. 세그멘테이션 모듈(320)은 입력된 영상의 각 픽셀 별 특정 세그먼트에 대응될 확률을 계산하는 동작을 수행할 수 있다.
일 실시 예에 따르면, 대표 평면 파라미터 계산 모듈(330)은 픽셀 별 평면 파라미터 및 픽셀 별 세그먼트 대응 확률을 입력 받아 세그먼트 별 평면 파라미터를 출력하는 모듈에 해당할 수 있다. 대표 평면 파라미터 계산 모듈(330)은 깊이 추정 모듈(310) 및 세그멘테이션 모듈(320)에서 출력된 결과를 이용하여 제2 네트워크에 기초한 상기 입력 영상 내 세그먼트 별로, 각 세그먼트에 대응되는 픽셀들의 평면 파라미터들의 대표 값을 계산하는 동작을 수행할 수 있다. 예를 들어, 상술한 바와 같이 특정 세그먼트의 평면 파라미터는 픽셀들의 해당 세그먼트에 대응될 확률을 가중치로 하여, 픽셀들의 평면 파라미터를 가중 합한 값으로 결정될 수 있으며, 혹은 세그먼트 대응 확률 중에서 해당 세그먼트에 대응할 확률이 최대인 픽셀들의 평면 파라미터의 단순 합 혹은 가중 합으로 결정될 수도 있다.
일 실시 예에 따르면, 세그먼트 선택 모듈(340)은 픽셀 별 세그먼트 대응 확률을 입력 받아 세그멘테이션의 결과로 픽셀 별 세그멘테이션 클러스터링 정보를 출력하는 모듈에 해당할 수 있다. 세그먼트 선택 모듈(340)은 픽셀 별 각 세그먼트에 속할 확률의 최대 값에 대응하는 세그먼트를 지시하는 정보를 해당 픽셀의 세그멘테이션 클러스터링 정보로 출력할 수 있다. 세그먼트 선택 모듈(340)은 맥스(max) 함수를 포함할 수 있으며, 입력된 픽셀 별 세그먼트 대응 확률에서 최대 값을 추출하고, 최대 값에 대응하는 세그먼트를 지시하는 정보를 출력하도록 동작할 수 있다.
도 4는 일 실시 예에 따른 평면 검출 모델의 학습 방법의 동작 흐름도이다.
일 실시 예에 따르면, 평면 검출 모델은 도 3을 통해 상술한 평면 검출 모델(300)에 대응될 수 있다. 보다 구체적으로 평면 검출 모델의 학습 방법은 평면 검출 모델에 포함된 뉴럴 네트워크의 학습 방법에 해당할 수 있으며, 상술한 바와 같이 평면 검출 모델에 포함된 뉴럴 네트워크는 제1 네트워크 및 제2 네트워크를 포함할 수 있다.
도 4를 참조하면, 일 실시 예에 따른 평면 검출 모델의 학습 방법은 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계(410), 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계(420) 및 제1 로스에 기초하여, 제1 네트워크 및 제2 네트워크를 학습시키는 단계(430)를 포함할 수 있다.
일 실시 예에 따르면, 학습 데이터는 스테레오 영상(stereo image)의 제1 단안 영상인 제1 영상 및 스테레오 영상의 제2 단안 영상인 제2 영상을 포함할 수 있다. 예를 들어, 제1 영상이 스테레오 영상의 왼쪽 단안 영상인 경우, 제2 영상은 동일한 스테레오 영상의 오른쪽 단안 영상에 해당할 수 있다.
일 실시 예에 따르면, 학습 데이터는 비디오 영상의 제1 프레임인 제1 영상 및 비디오 영상의 제2 프레임인 제2 영상을 포함할 수 있다. 다시 말해, 제1 영상 및 제2 영상은 동일한 비디오 영상의 서로 다른 프레임에 대응하는 이미지에 해당할 수 있다.
일 실시 예에 따른 단계(410)는 학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 제1 영상의 픽셀 별 시차에 기초하여, 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다. 일 실시 예에 따른 단계(410)는 상술한 도 1의 단계(110)에 대응될 수 있으며, 도 3의 깊이 추정 모듈(310)에서 수행되는 동작에 대응될 수 있다.
일 실시 예에 따른 픽셀 별 평면 파라미터를 획득하는 단계(410)는 제1 영상을 제1 네트워크에 인가하여, 제1 영상의 픽셀 별 시차를 추정하는 단계 및 제1 영상을 촬영한 카메라의 내부 파라미터에 기초하여, 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 픽셀 별 평면 파라미터를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따른 단계(420)는 제1 영상을 제2 네트워크에 인가하여, 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계를 포함할 수 있다. 일 실시 예에 따른 단계(420)는 상술한 도 1의 단계(120)에 대응될 수 있으며, 도 3의 세그멘테이션 모듈(420)에서 수행되는 동작에 대응될 수 있다.
일 실시 예에 따른 단계(430)는 제1 영상의 픽셀 별 평면 파라미터 및 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함할 수 있다.
일 실시 예에 따르면, 제1 로스는 클러스터링을 위한 비지도 학습 방식에서 이용되는 우도 로스(likelihood loss)에 해당할 수 있다. 제1 네트워크 및 제2 네트워크는 제1 로스에 기초하여, 비지도 학습(unsupervised learning) 방식으로 학습될 수 있다.
일 실시 예에 따른 우도는 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의될 수 있으며, 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률은 미리 정해진 개수의 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포 및 픽셀 별 평면 파라미터에 기초하여 계산될 수 있다. 제2 네트워크에 관하여 세그멘테이션 수행에 의해 클러스터링되는 세그먼트의 개수는 임의의 값으로 설정될 수 있다.
일 실시 예에 따르면, 미리 정해진 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포는 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값 및 세그먼트들 각각에 대응하는 평면 파라미터의 분산을 포함할 수 있다. 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값은 픽셀 별 세그먼트 대응 확률 및 픽셀 별 평면 파라미터에 기초하여 계산될 수 있다. 세그먼트들 각각에 대응하는 평면 파라미터의 분산은 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값 및 픽셀 별 세그먼트 대응 확률, 픽셀 별 평면 파라미터 및 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값에 기초하여 계산될 수 있다.
일 실시 예에 따르면, 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률인 우도는 픽셀 별 평면 파라미터에 픽셀 별 추가 정보가 부가된 데이터 및 미리 정해진 개수의 세그먼트들 각각에 대응하는 픽셀 별 평면 파라미터 및 추가 정보에 관한 확률 분포에 기초하여 계산될 수 있다. 픽셀 별 평면 파라미터에 픽셀 별 추가 정보가 부가된 데이터는 픽셀 별 평면 파라미터에 픽셀 별로 추출된 픽셀에 관한 정보를 포지셔널 인코딩(positional encoding)과 같은 기법을 이용하여 부가한 데이터를 포함할 수 있다. 픽셀 별 추가 정보는 예를 들어, 픽셀 별 영상 내 좌표 값, 픽셀 별 딥러닝 모델에 의해 추출된 피처와 같은 픽셀 별로 추출 가능한 픽셀에 관한 다양한 형태의 정보를 포함할 수 있다.
예를 들어, 우도는 픽셀 별 평면 파라미터 [a, b, c. d]에 픽셀 별 영상 내 좌표 값 (x, y)를 부가한 데이터 [a, b, c, d, x, y]에 기초하여 획득될 수 있다. 이 경우, 각 세그먼트에 대응하는 픽셀의 좌표 값의 대표 값이 추가로 정의될 수 있으며, 이에 기반한 새로운 우도가 계산될 수 있다. 다시 말해, 픽셀 별 평면 파라미터의 유사도 뿐 아니라 픽셀 별 좌표 값의 유사도까지 반영하여 우도에 관한 제1로스가 계산될 수 있다. 제1 로스에 관하여는 이하에서 보다 구체적으로 상술한다.
일 실시 예에 따르면, 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계(430)는 제1 로스 및 제2 로스에 기초하여 제1 네트워크 및 제2 네트워크를 학습시키는 단계를 포함할 수 있다. 예를 들어, 제1 로스 및 제2 로스의 합이 감소되도록 제1 네트워크 및 제2 네트워크의 가중치(weight)가 업데이트될 수 있다.
일 실시 예에 따르면, 제2 로스는 제1 영상에 대응하여 제1 네트워크에서 추정된 시차에 기초하여 제1 영상에 대응하는 제2 영상을 변환한 영상 및 제1 영상의 차이에 관한 로스에 해당할 수 있다. 다시 말해, 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계(430)는 제1 네트워크에서 제1 영상에 대응하여 추정된 깊이에 기초하여, 제1 영상과 다른 시점에서 촬영된 제2 영상을 변환하는 단계 및 변환된 영상과 제1 영상의 차이에 관한 제2 로스 및 제1 로스에 기초하여, 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계를 포함할 수 있다. 제2 로스에 관하여는 이하에서 보다 구체적으로 상술한다.
도 5는 일 실시 예에 따른 평면 검출 모델의 학습을 위한 로스를 설명하기 위한 도면이다.
도 5를 참조하면, 제1 로스(530)는 제1 네트워크(510)의 출력인 영상의 픽셀 별 시차(511)에서 획득된 픽셀 별 평면 파라미터(512) 및 제2 네트워크(520)의 출력인 픽셀 별 세그먼트 대응 확률(521)에 기초하여 정의될 수 있다. 상술한 바와 같이 제1 로스(530)는 픽셀 별 평면 파라미터(512)에 픽셀 별 추가 정보가 부가된 데이터에 기초하여 정의될 수도 있으나, 이하에서는 설명의 편의를 위하여 픽셀 별 평면 파라미터(512)에 기초하여 제1 로스가 정의되는 경우를 예로 들어 설명한다.
예를 들어, 제1 로스(530)는 각 세그먼트에 대응하는 픽셀의 평면 파라미터가 가우시안 분포를 따르는 것을 가정하여, 각 픽셀이 각 세그먼트에 대응될 확률로 정의된 우도에 기초하여 결정될 수 있다. 우도는 아래의 수학식 4와 같이 정의될 수 있다.
Figure pat00011
수학식 4에서, k는 세그먼트의 인덱스로, 1이상 K 이하의 자연수에 해당하며, K는 미리 정해진 세그먼트의 개수에 해당할 수 있다. n은 픽셀의 인덱스로, 1이상 N 이하의 자연수에 해당하며, N은 영상에 포함된 픽셀의 총 개수에 해당할 수 있다.
Figure pat00012
은 정규 분포(normal distribution) 혹은 가우시안 분포(Gaussian distribution)를 의미할 수 있다. xn은 픽셀 n의 평면 파라미터로, 제1 네트워크(510)에 기초하여 획득된 픽셀 별 평면 파라미터(512)에 포함될 수 있다. μk는 세그먼트 k에 대응하는 평면 파라미터의 평균 혹은 대표 값, Σk는 세그먼트 k에 대응하는 평면 파라미터의 분산, πk는 혼합 계수(mixing coefficient)로, 각각 수학식 5 내지 수학식 7과 같이 정의될 수 있다.
Figure pat00013
Figure pat00014
Figure pat00015
수학식 5 내지 7에서,
Figure pat00016
는 픽셀 n이 세그먼트 k에 대응될 확률로, 제2 네트워크(520)에서 출력된 픽셀 별 세그먼트 대응 확률(521)에 포함될 수 있다.
다시 말해, 각 세그먼트에 대응하는 평면 파라미터가 가우시안 분포를 따르는 것으로 가정할 때, 각 세그먼트에 대응하는 평면 파라미터의 평균과 분산에 기초하여, 각 픽셀의 평면 파라미터 값에 따라 각 세그먼트에 대응될 확률이 계산될 수 있다.
일 실시 예에 따르면, 제1 로스(530)는 우도가 클수록 작아지도록 정의될 수 있으며, 제1 네트워크(510) 및 제2 네트워크(520)는 제1 로스(530)가 감소하는 방향으로 학습될 수 있다.
일 실시 예에 따르면, 제2 로스(540)는 합성 영상(503) 및 제1 영상(501)의 차이에 관한 로스에 해당할 수 있다. 합성 영상은 제1 영상(501)에 대응하여 제1 네트워크(510)에서 추정된 시차에 기초하여 제1 영상(501)에 대응하는 제2 영상(502)을 변환하여 합성된 영상에 해당할 수 있다. 제2 로스(540)는 합성 영상(503)과 제1 영상(501)의 차이가 작을수록 작아지도록 정의될 수 있으며, 제1 네트워크(510)는 제2 로스(540)가 감소하는 방향으로 학습될 수 있다.
일 실시 예에 따르면, 제2 로스(540)는 제1 네트워크(510)에서 추정된 시차(511)의 정확도를 보정하기 위한 것으로, 제1 네트워크(510)는 입력된 영상의 시차에 관한 정답 데이터에 기초한 로스에 기초하여 학습될 수 있다.
일 예로, 도 6을 참조하면, 제1 네트워크의 시차 추정의 정확도를 향상시키기 위하여 RGB-D 영상 데이터베이스(610)에 기초하여 영상 검출 모델(300)이 학습될 수 있다. 도 3에서 상술한 바와 같이, 영상 검출 모델(300)은 깊이 추정 모듈(310)을 포함할 수 있으며, 깊이 추정 모듈(310)은 뉴럴 네트워크인 제1 네트워크를 포함할 수 있다. 다시 말해, RGB-D 영상 데이터베이스(610)에 기초하여 영상 검출 모델(300)의 제1 네트워크가 학습될 수 있다.
RGB-D 영상은 깊이 정보가 포함된 영상에 해당할 수 있다. 제1 네트워크는 RGB-D 영상을 입력 받아 입력된 영상의 깊이 혹은 시차를 추정할 수 있다. 제1 네트워크에서 추정된 결과와 RGB-D 영상의 실제 깊이 정보를 비교하여, 그 차이가 감소하는 방향으로 제1 네트워크가 학습될 수 있다. 일 실시 예에 따르면, 제1 네트워크는 상술한 제2 로스 대신 깊이에 관한 정답 데이터에 기초하여 정의된 로스와 제1 로스에 기초하여 학습될 수 있다. 다시 말해, 제1 네트워크의 출력인 시차에 관한 정답 데이터를 포함하는 영상을 학습 데이터로 이용하여, 제1 네트워크에서 출력된 시차와 정답 데이터의 차이에 관한 로스를 정의하여 제1 네트워크가 학습될 수 있다.
또 일 예로, 도 7을 참조하면, 제1 네트워크의 시차 추정의 정확도를 향상시키기 위하여 멀티 뷰(multi-view) 영상 데이터베이스(710)에 기초하여 영상 검출 모델(300)이 학습될 수 있다. 도 3에서 상술한 바와 같이, 영상 검출 모델(300)은 깊이 추정 모듈(310)을 포함할 수 있으며, 깊이 추정 모듈(310)은 뉴럴 네트워크인 제1 네트워크를 포함할 수 있다. 다시 말해 멀티 뷰 영상 데이터베이스(710)에 기초하여 영상 검출 모델(300)의 제1 네트워크가 학습될 수 있다.
멀티 뷰 영상은 복수의 서로 다른 각도에서 촬영한 복수의 영상(예를 들어, 스테레오 영상)을 포함할 수 있다. 멀티 뷰 영상에 포함된 복수의 영상 사이의 매칭 관계에 기초하여 멀티 뷰 영상이 촬영된 환경에 관한 3차원 정보가 획득될 수 있으며, 획득된 3차원 정보에 기초하여 보다 정확한 영상의 시차 혹은 깊이 값이 획득될 수 있다. 제1 네트워크는 멀티 뷰 영상을 입력 받아 입력된 영상의 깊이 혹은 시차를 추정할 수 있다. 제1 네트워크에서 추정된 결과와 멀티 뷰 영상의 매칭 관계에 기초하여 계산된 깊이 정보를 비교하여, 그 차이가 감소하는 방향으로 1 네트워크가 학습될 수 있다.
일 실시 예에 따르면, 제1 네트워크 및 제2 네트워크는 동시에 학습될 수 있다. 예를 들어, 제1 네트워크 및 제2 네트워크는 제1 로스 및 제2 로스에 기초하여, 제1 로스 및 제2 로스의 합이 감소하는 방향으로 동시에 학습될 수 있다. 제2 네트워크는 제1 네트워크의 출력인 시차 추정의 정확도가 높아질수록 정확도가 높은 픽셀 별 평면 파라미터를 사용할 수 있어 세그멘테이션의 정확도가 향상될 수 있다. 제1 네트워크는 제2 네트워크의 출력인 세그멘테이션의 정확도가 높아질수록, 다시 말해 픽셀이 속하는 평면에 따라 클러스터링을 정확하게 수행할수록 동일한 세그먼트에 대응되는 픽셀의 평면 파라미터가 유사해지는 효과를 받아 시차 추정의 정확도를 향상시킬 수 있다.
일 실시 예에 따르면, 제1 네트워크 및 제2 네트워크는 순차적으로 학습될 수도 있다. 예를 들어, 제1 로스 및 제2 로스에 기초하여 제1 네트워크가 먼저 학습되고, 제1 로스에 기초하여 제2 네트워크가 학습될 수 있다.
도 8은 일 실시 예에 따른 학습된 제2 네트워크를 활용한 평면 추출 모델의 프레임워크를 예시한 도면이다.
일 실시 예에 따르면, 도 4 내지 도 7을 통해 상술한 학습 방법에 따라 학습된 제2 네트워크는 입력된 영상에서 특정 평면을 추출하는 평면 추출 모델에 이용될 수 있다. 다시 말해, 도 4 내지 도 7을 통해 상술한 학습 방법에 따라 제1 네트워크와 함께 학습된 제2 네트워크는 입력된 영상에서 특정 세그먼트에 대응하는 평면을 추출하기 위한 평면 추출 모델에 활용될 수 있다.
도 8을 참조하면, 평면 추출 모델(800)은 영상을 입력으로 받아 세그먼트 마스킹 정보를 평면 추출의 결과로 출력하는 모델에 해당할 수 있다. 입력되는 영상은 단안 영상을 포함할 수 있다. 평면 추출은 영상에서 특정 평면을 분리해내는 것으로, 예를 들어 영상에서 특정 평면을 다른 부분과 구분하여 표시하거나, 특정 평면에 포함된 픽셀들의 정보를 출력하여, 영상에서 특정 평면이 추출될 수 있다.
일 실시 예에 따른 평면 추출 모델(800)은 세그멘테이션 모듈(320), 세그먼트 선택 모듈(340) 및 세그먼트 마스킹 모듈(810)을 포함할 수 있다. 평면 추출 모델(800)에 포함된 모듈들(320, 340, 810)은 설명의 편의를 위하여 평면 검출 모델(300)에서 수행되는 논리적 동작에 따라 임의로 구분한 것으로, 평면 추출 모델(800)의 구조를 한정하기 위한 것은 아니다. 일 예로, 평면 추출 모델(300)은 장치로 구현될 수 있으며, 장치의 적어도 하나의 프로세서에서 평면 검출 모델(300)의 동작을 수행할 수 있다.
일 실시 예에 따른 세그멘테이션 모듈(320) 및 세그먼트 선택 모듈(340)은 도 3에서 상술한 평면 검출 모델(300)의 구성에 해당할 수 있다. 상술한 바와 같이 세그멘테이션 모듈(320)은 학습된 제2 네트워크를 포함하며, 영상을 입력 받아 입력된 영상의 픽셀 별 세그먼트 대응 확률을 출력할 수 있다. 상술한 바와 같이 세그먼트 선택 모듈(340)은 픽셀 별 세그먼트 대응 확률을 입력 받아 세그멘테이션의 결과로 픽셀 별 세그멘테이션 클러스터링 정보를 출력할 수 있다.
일 실시 예에 따른 세그먼트 마스킹 모듈(810)은 세그먼트를 지시하기 위한 세그먼트 ID(801)를 입력 받아, 픽셀 별 세그먼트 클러스터링 정보에 기초하여 입력된 세그먼트 ID(801)에 대응하는 평면을 입력 영상에서 마스킹 혹은 추출할 수 있다. 평면 추출 모델(800)의 출력인 세그먼트 마스킹 정보는 입력 영상에서 세그먼트 ID에 대응하는 평면을 다른 부분과 구분될 수 있도록 표시된 영상 혹은 세그먼트 ID에 대응하는 평면에 포함된 픽셀의 정보를 포함할 수 있다. 예를 들어, 입력된 세그먼트 ID가 바닥면에 대응하는 세그먼트를 지시하는 경우, 입력 영상에서 바닥면에 해당하는 부분이 다른 부분과 구분될 수 있도록 표시되어 출력되거나, 바닥면에 해당하는 픽셀의 정보가 출력될 수 있다.
일 실시 예에 따른 평면 추출 모델(800)은 다양한 컴퓨터 비전 기반 3차원 모델링 어플리케이션에서 특정 평면에 대한 정보를 제공하기 위하여 이용될 수 있고, 일 예로, AR 어플리케이션에서 AR 객체를 배치하기 위한 특정 평면(예를 들어, 바닥면 혹은 특정 객체의 상단 면)을 추출하기 위하여 이용될 수 있다.
도 9는 일 실시 예에 따른 장치의 구성의 예시도이다.
도 9를 참조하면, 일 실시 예에 따른 장치(900)는 프로세서(901), 메모리(903) 및 입출력 장치(905)를 포함할 수 있다. 장치(900)는 예를 들어, 사용자 디바이스(예: 스마트폰, 퍼스널 컴퓨터, 태블릿 PC 등), AR 글라스(AR glasses), 센서, 서버를 포함할 수 있다.
일 실시 예에 따른 장치(900)는 평면 검출 모델이 기록된 메모리(903)를 포함할 수 있다. 평면 검출 모델은 도 1 내지 도 7을 통하여 상술한 평면 검출 모델을 포함할 수 있다. 일 실시 예에 따른 메모리(703)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
일 실시 예에 따르면, 메모리(903)는 상술한 평면 검출 모델이 구현된 프로그램을 저장할 수 있으며, 프로세서(901)는 메모리(903)에 저장된 프로그램을 실행하고, 장치(900)를 제어할 수 있다. 일 예로, 프로세서(901)는 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차에 기초하여, 입력 영상의 픽셀 별 평면 파라미터를 획득하고, 영상의 세그멘테이션을 수행하도록 학습된 제2 네트워크에 기초하여, 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하고, 픽셀 별 평면 파라미터 및 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하며, 세그먼트 별 평면 파라미터에 기초하여, 입력 영상에 포함된 평면을 검출하는 동작을 수행할 수 있다.
일 측에 따른 장치(900)는 입출력 장치(905)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터, 서버 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다. 예를 들어, 장치(900)는 입출력 장치(905)를 통해 영상을 수신할 수 있으며, 평면 검출 모델의 결과를 출력할 수 있다.
상술한 바와 같이, 평면 검출 모델은 뉴럴 네트워크인 제1 네트워크 및 제2 네트워크를 포함할 수 있다. 제1 네트워크 및 제2 네트워크를 포함하는 평면 검출 모델은 도 4 내지 도 7을 통해 상술한 학습 방법에 의해 생성 및 제조될 수 있다.
예를 들어, 평면 검출 모델은 학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 제1 영상의 픽셀 별 시차에 기초하여, 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계, 제1 영상을 제2 네트워크에 인가하여, 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계, 및 제1 영상의 픽셀 별 평면 파라미터 및 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 제1 네트워크 및 제2 네트워크를 학습시키는 단계에 의해 제조 혹은 생성될 수 있다. 제1 네트워크 및 제2 네트워크의 학습에 의해 갱신된 제1 네트워크 및 제2 네트워크의 파라미터는 메모리(903)에 저장될 수 있다.
일 실시 예에 따른 프로세서(901)는 도 4 내지 도 7을 통해 상술한 학습 방법의 적어도 하나의 동작을 수행할 수 있으며, 학습 과정에서 갱신된 제1 네트워크 및 제2 네트워크의 파라미터를 메모리(903)에 저장하는 동작을 수행할 수 있다.
일 실시 예에 따른 장치(900)는 도 8을 통해 상술한 평면 추출 모델이 구현된 프로그램을 저장할 수 있으며, 프로세서(901)는 메모리(903)에 저장된 프로그램을 실행하고, 장치(900)를 제어할 수 있다. 다시 말해, 프로세서(901)는 입력 영상을 제2 네트워크에 인가하여, 입력 영상의 픽셀 별 세그먼트 대응 확률을 획득할 수 있고, 획득된 픽셀 별 세그먼트 대응 확률을 세그먼트 선택 모듈에 입력하여 픽셀 별 세그먼트 클러스터링 정보를 획득할 수 있으며, 세그먼트를 지시하기 위한 세그먼트 ID를 입력 받아, 픽셀 별 세그먼트 클러스터링 정보에 기초하여 입력 영상에서 입력된 세그먼트 ID에 대응하는 평면을 마스킹 혹은 추출할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 저장할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하는 단계;
    영상의 세그멘테이션(segmentation)을 수행하도록 학습된 제2 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계;
    상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하는 단계; 및
    상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는 단계
    를 포함하는,
    평면 검출 방법.
  2. 제1항에 있어서,
    상기 입력 영상에 포함된 평면을 검출하는 단계는
    상기 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 세그먼트 클러스터링 정보를 획득하는 단계; 및
    상기 세그먼트 별 평면 파라미터 및 상기 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는 단계
    를 포함하는,
    평면 검출 방법.
  3. 제1항에 있어서,
    상기 세그먼트 별 평면 파라미터를 획득하는 단계는
    상기 제2 네트워크에 기초한 상기 입력 영상 내 세그먼트들 각각에 대응하여,
    해당 세그먼트에 대응하는 상기 픽셀 별 세그먼트 대응 확률에 기초 하여, 상기 픽셀 별 평면 파라미터를 가중 합하는 단계; 및
    상기 가중 합된 평면 파라미터에 기초하여, 상기 해당 세그먼트에 대 응하는 평면 파라미터를 획득하는 단계
    를 포함하는,
    평면 검출 방법.
  4. 제1항에 있어서,
    상기 제1 네트워크 및 상기 제2 네트워크는
    상기 제2 네트워크에 기초하여 클러스터링된 각 세그먼트에 대응하는 평면 파라미터의 확률 분포에 기초하여 계산된, 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스; 및
    제1 영상에 대응하여 상기 제1 네트워크에서 추정된 시차에 기초하여 상기 제1 영상에 대응하는 제2 영상을 변환한 영상 및 상기 제1 영상의 차이에 관한 제2 로스
    중 적어도 하나에 기초하여 학습된
    평면 검출 방법.
  5. 제1항에 있어서,
    상기 픽셀 별 평면 파라미터를 획득하는 단계는
    상기 제1 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 시차를 추정하는 단계; 및
    상기 입력 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter)에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득하는 단계
    를 포함하는,
    평면 검출 방법.
  6. 학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 상기 제1 영상의 픽셀 별 시차에 기초하여, 상기 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계;
    상기 제1 영상을 제2 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계; 및
    상기 제1 영상의 픽셀 별 평면 파라미터 및 상기 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계
    를 포함하는,
    평면 검출 모델의 학습 방법.
  7. 제6항에 있어서,
    상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률은
    미리 정해진 개수의 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포 및 상기 픽셀 별 평면 파라미터에 기초하여 계산되는,
    평면 검출 모델의 학습 방법.
  8. 제7항에 있어서,
    상기 미리 정해진 세그먼트들 각각에 대응하는 평면 파라미터에 관한 확률 분포는
    상기 픽셀 별 세그먼트 대응 확률 및 상기 픽셀 별 평면 파라미터에 기초하여 계산된 상기 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값; 및
    상기 픽셀 별 세그먼트 대응 확률, 상기 픽셀 별 평면 파라미터 및 상기 세그먼트들 각각에 대응하는 평면 파라미터의 대표 값에 기초하여 계산된, 상기 세그먼트들 각각에 대응하는 평면 파라미터의 분산
    을 포함하는,
    평면 검출 모델의 학습 방법.
  9. 제6항에 있어서,
    상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계는
    상기 제1 네트워크에서 상기 제1 영상에 대응하여 추정된 깊이에 기초하여, 상기 제1 영상과 다른 시점에서 촬영된 제2 영상을 변환하는 단계; 및
    상기 변환된 영상과 상기 제1 영상의 차이에 관한 제2 로스 및 상기 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계
    를 포함하는,
    평면 검출 모델의 학습 방법.
  10. 제6항에 있어서,
    상기 학습 데이터는
    스테레오 영상의 제1 단안 영상인 상기 제1 영상 및 상기 스테레오 영상의 제2 단안 영상인 제2 영상; 및
    비디오 영상의 제1 프레임인 상기 제1 영상 및 상기 비디오 영상의 제2 프레임인 제2 영상
    중 적어도 하나를 포함하는,
    평면 검출 모델의 학습 방법.
  11. 제6항에 있어서,
    상기 픽셀 별 평면 파라미터를 획득하는 단계는
    상기 제1 영상을 상기 제1 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 시차를 추정하는 단계; 및
    상기 제1 영상을 촬영한 카메라의 내부 파라미터에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득하는 단계
    를 포함하는,
    평면 검출 모델의 학습 방법.
  12. 하드웨어와 결합되어 제1항 내지 제11항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  13. 제1 네트워크에서 추정된 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하고,
    영상의 세그멘테이션(segmentation)을 수행하도록 학습된 제2 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 추정하고,
    상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하며,
    상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는,
    적어도 하나의 프로세서
    를 포함하는,
    평면 검출 장치.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 입력 영상에 포함된 평면을 검출함에 있어서,
    상기 픽셀 별 세그먼트 대응 확률에 기초하여, 픽셀 별 세그먼트 클러스터링 정보를 획득하고,
    상기 세그먼트 별 평면 파라미터 및 상기 픽셀 별 세그먼트 클러스터링 정보에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는,
    평면 검출 장치.
  15. 제13항에 있어서,
    상기 프로세서는,
    상기 세그먼트 별 평면 파라미터를 획득함에 있어서,
    상기 제2 네트워크에 기초한 상기 입력 영상 내 세그먼트들 각각에 대응하여,
    해당 세그먼트에 대응하는 상기 픽셀 별 세그먼트 대응 확률에 기초 하여, 상기 픽셀 별 평면 파라미터를 가중 합하고,
    상기 가중 합된 평면 파라미터에 기초하여, 상기 해당 세그먼트에 대 응하는 평면 파라미터를 획득하는,
    평면 검출 장치.
  16. 제13항에 있어서,
    상기 제1 네트워크 및 상기 제2 네트워크는
    상기 제2 네트워크에 기초하여 클러스터링된 각 세그먼트에 대응하는 평면 파라미터의 확률 분포에 기초하여 계산된, 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스; 및
    제1 영상에 대응하여 상기 제1 네트워크에서 추정된 시차에 기초하여 상기 제1 영상에 대응하는 제2 영상을 변환한 영상 및 상기 제1 영상의 차이에 관한 제2 로스
    중 적어도 하나에 기초하여 학습된,
    평면 검출 장치.
  17. 제13항에 있어서,
    상기 프로세서는,
    상기 픽셀 별 평면 파라미터를 획득함에 있어서,
    상기 제1 네트워크에 기초하여, 상기 입력 영상의 픽셀 별 시차를 추정하고,
    상기 입력 영상을 촬영한 카메라의 내부 파라미터(intrinsic parameter)에 기초하여, 상기 픽셀 별 시차로부터 법선 벡터 및 거리 정보를 포함하는 상기 픽셀 별 평면 파라미터를 획득하는,
    평면 검출 장치.
  18. 평면 검출 장치에 있어서,
    입력된 영상의 시차를 추정하는 제1 네트워크 및 입력된 영상의 세그멘테이션을 수행하는 제2 네트워크를 포함하는 평면 검출 모델이 기록된 메모리를 포함하고,
    상기 평면 검출 모델은
    학습 데이터에 포함된 제1 영상을 제1 네트워크에 인가하여 획득된 상기 제1 영상의 픽셀 별 시차에 기초하여, 상기 제1 영상의 픽셀 별 평면 파라미터를 획득하는 단계;
    상기 제1 영상을 제2 네트워크에 인가하여, 상기 제1 영상의 픽셀 별 세그먼트 대응 확률을 추정하는 단계; 및
    상기 제1 영상의 픽셀 별 평면 파라미터 및 상기 제1 영상의 픽셀 별 세그먼트 대응 확률에 기초하여 계산된, 상기 제1 영상의 각 픽셀이 각 세그먼트에 대응될 확률로 정의되는 우도(likelihood)에 관한 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계
    를 포함하는 상기 평면 검출 모델의 학습 방법에 의해 제조되는,
    평면 검출 장치.
  19. 제18항에 있어서,
    상기 평면 검출 모델의 학습 방법에 포함된 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계는
    상기 제1 네트워크에서 상기 제1 영상에 대응하여 추정된 깊이에 기초하여, 상기 제1 영상과 다른 시점에서 촬영된 제2 영상을 변환하는 단계; 및
    상기 변환된 영상과 상기 제1 영상의 차이에 관한 제2 로스 및 상기 제1 로스에 기초하여, 상기 제1 네트워크 및 상기 제2 네트워크를 학습시키는 단계
    를 포함하는,
    평면 검출 장치.
  20. 제18항에 있어서,
    입력 영상을 상기 제1 네트워크에 인가하여, 상기 제1 네트워크에서 추정된 상기 입력 영상의 픽셀 별 시차(disparity)에 기초하여, 상기 입력 영상의 픽셀 별 평면 파라미터를 획득하고,
    상기 입력 영상을 상기 제2 네트워크에 인가하여, 상기 제2 네트워크에서 추정된 상기 입력 영상의 픽셀 별 세그먼트 대응 확률을 획득하고,
    상기 픽셀 별 평면 파라미터 및 상기 픽셀 별 세그먼트 대응 확률에 기초하여, 세그먼트 별 평면 파라미터를 획득하며,
    상기 세그먼트 별 평면 파라미터에 기초하여, 상기 입력 영상에 포함된 평면을 검출하는,
    적어도 하나의 프로세서
    를 더 포함하는,
    평면 검출 장치.

KR1020210144225A 2021-10-27 2021-10-27 평면 검출 장치 및 방법 KR20230060029A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020210144225A KR20230060029A (ko) 2021-10-27 2021-10-27 평면 검출 장치 및 방법
US17/698,577 US20230132106A1 (en) 2021-10-27 2022-03-18 Planar surface detection apparatus and method
EP22169094.4A EP4174774A1 (en) 2021-10-27 2022-04-20 Planar surface detection apparatus and method
CN202210543523.5A CN116051448A (zh) 2021-10-27 2022-05-17 平坦表面检测装置和方法
JP2022115416A JP2023065296A (ja) 2021-10-27 2022-07-20 平面検出装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210144225A KR20230060029A (ko) 2021-10-27 2021-10-27 평면 검출 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20230060029A true KR20230060029A (ko) 2023-05-04

Family

ID=81344281

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210144225A KR20230060029A (ko) 2021-10-27 2021-10-27 평면 검출 장치 및 방법

Country Status (5)

Country Link
US (1) US20230132106A1 (ko)
EP (1) EP4174774A1 (ko)
JP (1) JP2023065296A (ko)
KR (1) KR20230060029A (ko)
CN (1) CN116051448A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117237360B (zh) * 2023-11-15 2024-03-01 宁德思客琦智能装备有限公司 一种基于3d视觉的铸件毛刺检测方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11328476B2 (en) * 2019-11-14 2022-05-10 Qualcomm Incorporated Layout estimation using planes

Also Published As

Publication number Publication date
CN116051448A (zh) 2023-05-02
US20230132106A1 (en) 2023-04-27
JP2023065296A (ja) 2023-05-12
EP4174774A1 (en) 2023-05-03

Similar Documents

Publication Publication Date Title
US11727661B2 (en) Method and system for determining at least one property related to at least part of a real environment
US9858472B2 (en) Three-dimensional facial recognition method and system
CN110799991B (zh) 用于使用卷积图像变换执行同时定位和映射的方法和系统
CN108961327B (zh) 一种单目深度估计方法及其装置、设备和存储介质
US20170161591A1 (en) System and method for deep-learning based object tracking
US11443454B2 (en) Method for estimating the pose of a camera in the frame of reference of a three-dimensional scene, device, augmented reality system and computer program therefor
US9008439B2 (en) Image processing method and system
JP6489551B2 (ja) 画像のシーケンスにおいて前景を背景から分離する方法およびシステム
KR20180087994A (ko) 스테레오 매칭 방법 및 영상 처리 장치
CN112200056B (zh) 人脸活体检测方法、装置、电子设备及存储介质
CN111476806B (zh) 图像处理方法、装置、计算机设备和存储介质
CN110243390B (zh) 位姿的确定方法、装置及里程计
US11651581B2 (en) System and method for correspondence map determination
WO2023016182A1 (zh) 位姿确定方法、装置、电子设备和可读存储介质
KR20230060029A (ko) 평면 검출 장치 및 방법
CN116630423A (zh) 一种基于orb特征的微小型机器人多目标双目定位方法及系统
CN113450457B (zh) 道路重建方法、装置、计算机设备和存储介质
KR20230049969A (ko) 글로벌 측위 장치 및 방법
CN114842466A (zh) 目标检测方法、计算机程序产品和电子设备
WO2017042852A1 (en) Object recognition appratus, object recognition method and storage medium
KR102540290B1 (ko) 이종 센서 카메라 기반 사람 재식별 장치 및 방법
KR102540015B1 (ko) 엔트로피를 이용한 스테레오 정합의 불확실성 추정 및 불확실성 기반의 3차원 지도 매핑
CN112395912B (zh) 一种人脸分割方法、电子设备及计算机可读存储介质
CN116957999A (zh) 深度图优化方法、装置、设备及存储介质
JP2024020677A (ja) 情報処理装置、情報処理方法及びプログラム