KR20200015147A - 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치 - Google Patents

딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치 Download PDF

Info

Publication number
KR20200015147A
KR20200015147A KR1020180090565A KR20180090565A KR20200015147A KR 20200015147 A KR20200015147 A KR 20200015147A KR 1020180090565 A KR1020180090565 A KR 1020180090565A KR 20180090565 A KR20180090565 A KR 20180090565A KR 20200015147 A KR20200015147 A KR 20200015147A
Authority
KR
South Korea
Prior art keywords
camera
cnn
parameter
image
camera calibration
Prior art date
Application number
KR1020180090565A
Other languages
English (en)
Other versions
KR102227583B1 (ko
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 KR1020180090565A priority Critical patent/KR102227583B1/ko
Priority to US16/277,214 priority patent/US10977831B2/en
Publication of KR20200015147A publication Critical patent/KR20200015147A/ko
Application granted granted Critical
Publication of KR102227583B1 publication Critical patent/KR102227583B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble 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
    • G06N3/0454
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)

Abstract

본 실시예는, 딥 러닝에 기반한 카메라 캘리브레이션 방법으로서, 파노라마 평면 영상을 3D 지오메트리(geometry)에 프로젝션(projection)하여 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 생성하는 단계, 카메라의 내부 파라미터(intrinsic parameter)가 출력되도록 상기 복수의 학습 영상들을 이용하여 신경망 모듈을 학습시키는 단계, 및 상기 카메라로부터 획득된 영상을 이용하여 상기 신경망 모듈을 실행시켜 상기 카메라의 내부 파라미터를 예측하는 단계를 포함하는 카메라 캘리브레이션 방법을 제공한다.

Description

딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치{METHOD AND APPARATUS FOR CAMERA CALIBRATION BASED ON DEEP LEARNING}
본 발명은 카메라 캘리브레이션 방법 및 장치에 관한 것으로서, 보다 구체적으로는 캘리브레이션 타겟, 선 또는 소실점(vanishing points) 등을 사용하지 않고도 자동으로 카메라를 캘리브레이션 할 수 있는 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치에 관한 것이다.
카메라 캘리브레이션이란 초점거리(focal length)나 렌즈 왜곡(lens distortion)과 같은 카메라의 내부 파라미터를 추정하는 것을 말한다. 카메라 캘리브레이션은 카메라 움직임 추정, 3D 영상 복원, 영상 편집, 영화의 특수 효과, 영상 왜곡 보정 등을 위한 다양한 어플리케이션에서 기본적이고 가장 중요한 작업 중 하나이다. 따라서, 카메라 캘리브레이션 기법은 로봇, 자율주행 차량, 무인 항공기, 영화 등의 엔터테인먼트 산업, 가상현실 및 증강현실(VR/AR), 의학, 영상감시 등 다양한 분야의 어플리케이션 및 컨텍스트에서 이용된다.
어안렌즈(fisheye lens) 카메라, 스마트폰의 클립-온 렌즈(smartphone clip-on lens) 카메라, 카타디옵트릭(catadioptric) 카메라나 액션(action) 카메라 등과 같은 카메라에는 자체 왜곡(distortion)이 존재한다.
이러한 카메라 왜곡을 보정하기 위한 종래 기법으로 수동 캘리브레이션 기법과 자동 캘리브레이션 기법이 존재한다.
수동(manual) 캘리브레이션 기법은, 약 20 ~ 30장 가량의 연속된 체커보드(checkerboard) 영상을 획득한 후, 해당 영상을 특정 소프트웨어를 이용하여 한 장씩 처리하는 것을 특징으로 한다. 따라서, 이러한 수동 캘리브레이션 기법은 숙련된 사용자라도 통상 30분에서 1시간 정도가 소요될 정도로 복잡하고 번거롭다는 문제가 있다.
자동(automatic) 캘리브레이션 기법은 (1) 특수 마커(special marker)를 포함하는 평면 타겟(planar target) 또는 구(sphere)와 같은 캘리브레이션 객체(예: 체커보드 등)를 이용하고, (2) 장면 내의 평행선이나 소실점 등을 이용한 특정 구조(specific structure)를 관찰하며, (3) 연속된 이미지 내의 카메라 모션(motion)을 통해 카메라 파라미터를 추정함으로써 카메라 캘리브레이션을 수행하는 것을 특징으로 한다. 이러한 자동 캘리브레이션 기법은 아래와 같은 문제들이 있다.
첫째, 특정 캘리브레이션 객체(calibration object)를 획득해야하는 불편이 따른다.
둘째, 장면 내 특정 구조를 관찰하는 기법은 야외 사진, 인물 사진, 풍경 사진 등과 같은 일반적인 장면(general scenes)에는 적용되기 어렵다.
셋째, 카메라 모션을 추정하기 위해 다수의 이미지가 필요하다.
본 실시예는 상술한 기존 카메라 캘리브레이션 기법의 문제점을 해결하기 위하여 착안된 것으로, 딥 러닝에 기반하여 자동으로 카메라 왜곡을 보정할 수 있는 카메라 캘리브레이션 방법 및 장치를 제공하고자 한다.
본 실시예의 일 측면에 의하면, 딥 러닝에 기반한 카메라 캘리브레이션 방법으로서, 파노라마 평면 영상을 3D 지오메트리(geometry)에 프로젝션(projection)하여 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 생성하는 단계; 카메라의 내부 파라미터(intrinsic parameter)가 출력되도록 상기 복수의 학습 영상들을 이용하여 신경망 모듈을 학습시키는 단계; 및 상기 카메라로부터 획득된 영상을 이용하여 상기 신경망 모듈을 실행시켜 상기 카메라의 내부 파라미터를 예측하는 단계를 포함하는 카메라 캘리브레이션 방법을 제공한다.
본 실시예의 다른 측면에 의하면, 딥 러닝에 기반한 카메라 캘리브레이션 장치로서, 파노라마 평면 영상을 3D 지오메트리(geometry)에 프로젝션(projection)하여 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 생성하는 학습 영상 생성부; 및 카메라의 내부 파라미터(intrinsic parameter)가 출력되도록 상기 복수의 학습 영상들을 이용하여 신경망 모듈을 학습시키고, 상기 카메라로부터 획득된 영상을 이용하여 상기 신경망 모듈을 실행시켜 상기 카메라의 내부 파라미터를 예측하는 영상 처리부를 포함하는 카메라 캘리브레이션 장치를 제공한다.
본 실시예에 의하면, 한 장의 평면 이미지로부터 생성된 대규모 학습 영상을 이용하여 신경망을 학습시키고, 학습된 신경망을 이용하여 카메라 캘리브레이션을 수행함으로써, 간편하고 정확하게 내부 파라미터를 예측할 수 있는 효과가 있다.
또한, 본 실시예에 의하면, 실제 사진은 물론 왜곡된 그림에도 적용될 수 있는 효과가 있다.
또한, 본 실시예에 의하면, 다양한 종류의 영상들에 대해서 안정적으로 내부 파라미터를 예측할 수 있는 효과가 있다.
또한, 본 실시예에 의하면, 광각(wide field-of-view) 카메라는 물론, 기하학적 왜곡에 영향을 받지 않는 퍼스펙티브(perspective) 카메라의 캘리브레이션에도 적용될 수 있는 효과가 있다.
또한, 본 실시예에 의하면, 모션 블러(motion blur) 현상에 대해 로버스트(robust)한 카메라 캘리브레이션을 수행할 수 있는 효과가 있다.
도 1은 본 실시예에 따른 카메라 캘리브레이션 장치의 구성을 나타내는 블록도이다.
도 2는 본 실시예에 따른 CNN 모듈의 구조를 나타내는 도면이다.
도 3은 본 실시예에 따른 학습 영상 생성부의 구성을 나타내는 블록도이다.
도 4는 도 3의 학습 영상 생성부의 입출력 이미지를 나타내는 예시도이다.
도 5는 카메라의 자세를 변경하기 위한 피치 각도, 롤 각도 및 요 각도를 나타내는 예시도이다.
도 6은 본 실시예에 따른 딥 러닝 기반의 영상 처리부를 나타내는 도면이다.
도 7은 본 개시의 기술들에 적용될 수 있는 CNN 구조를 나타내는 예시도이다.
도 8은 분류 모델과 회귀 모델간 카메라 내부 파라미터의 예측 정확도를 비교한 시뮬레이션 결과를 나타내는 그래프이다.
도 9는 본 실시예에 따른 영상 처리부가 CNN을 기반으로 카메라 캘리브레이션을 수행하는 과정의 일 예를 나타내는 흐름도이다.
도 10은 본 실시예에 따른 영상 처리부가 CNN을 기반으로 카메라 캘리브레이션을 수행하는 과정의 일 예를 나타내는 흐름도이다.
도 11 내지 도 13은 본 실시예에 따른 카메라 캘리브레이션 동작의 수행 결과 영상들을 나타내는 예시도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의하여야 한다. 또한, 본 발명의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부,' '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이하, 본 발명의 일 실시예들을 예시적인 도면을 통해 상세하게 설명하기로 한다.
도 1은 본 실시예에 따른 카메라 캘리브레이션 장치의 구성을 나타내는 블록도이고, 도 2는 본 실시예에 따른 CNN 모듈의 구조를 나타내는 도면이다.
우선, 도 1을 참조하면, 본 실시예에 따른 카메라 캘리브레이션 장치(100)는 학습 영상 생성부(110) 및 영상 처리부(130)를 포함할 수 있다.
학습 영상 생성부(110)
학습 영상 생성부(110)는 3D 지오메트리 매핑 알고리즘(3D geometry mapping algorithm)을 이용하여 한 개의 평면 영상으로부터 딥 러닝의 학습 영상으로 이용될 다수 영상들을 획득할 수 있다. 본 실시예의 일 측면에 따르면, 상술한 평면 영상은 가로 360도 및 세로 360도의 파노라마 평면 영상일 수 있다.
딥 러닝에 기반한 카메라 캘리브레이션(camera calibration)의 정확도를 향상시키기 위해서는, 대규모 학습 영상을 이용하여 신경망을 학습시킬 필요가 있다. 그러나, 대규모 학습 영상을 획득하기 위해서는 많은 시간과 노력 그리고 비용이 필요하기 때문에 현실적으로 대규모 학습 영상을 획득하기 어렵다. 따라서, 본 실시예는 3D 지오메트리 매핑 알고리즘(3D geometry mapping algorithm)을 이용하여 한 개의 파노라마 평면 영상으로부터 대규모 학습 영상을 획득하는 방법을 제공하고자 한다.
한편, 딥 러닝(deep learning)이란 인간 뇌의 동작 구조를 공학적으로 모델링한 심층 신경망 알고리즘을 말한다. 딥 러닝은 CNN(Convolutional Neural Network), RNN(Recurrent Neural Netwok), RBM(Restricted Boltzmann Machine) 등을 포함할 수 있다.
영상 처리부(130)
영상 처리부(130)는 학습 영상 생성부(110)에 의해 생성된 복수의 영상들을 이용하여 신경망 모듈을 학습시키고, 입력 영상(원본 이미지) 및 해당 입력 영상을 촬영한 카메라에 대한 사전 정보(예: 영상 왜곡 정도나 카메라의 초점거리 등) 없이 신경망 모듈을 이용하여 해당 입력 영상에 대해 카메라 캘리브레이션을 수행할 수 있다. 이 때, 입력 영상의 주점(principle point)은 해당 입력 영상의 중심에 위치할 수 있다.
본 실시예에 따른 신경망 모듈은 각각 별개의 내부 파라미터를 출력하도록 학습된 n개의 신경망(즉, 제1 내지 제n 신경망)으로 구성될 수 있다. 여기서, n은 1 이상의 정수로서, 카메라 캘리브레이션을 위한 내부 파라미터의 클래스 갯수에 비례할 수 있다.
본 실시예에 따른 신경망 모듈의 구조는 도 2에 도시된 바와 같다. 구체적으로, 도 2는 2개의 CNN으로 구성된 신경망 모듈을 나타내며, 제1 CNN은 카메라의 초점거리(focal length)를 출력하고 제2 CNN은 왜곡계수(distortion coefficient)를 출력한다. 이와 같이, 본 실시예에 따른 신경망 모듈은 1개의 신경망이 복수개의 내부 파라미터를 출력하도록 구성된(즉, 'single network and dual output') 기존 신경망 모듈과는 달리, 각각 별개의 내부 파라미터를 출력하는 하나 이상으로 신경망들을 포함할 수 있다.
이하, 신경망 모듈은 2개의 CNN으로 구성된 것을 전제로 본 실시예를 설명하기로 한다. 다만, 이는 예시적인 것일 뿐 본 실시예를 한정하는 것은 아니라는 점에 유의하여야 한다.
도 3은 본 실시예에 따른 학습 영상 생성부의 구성을 나타내는 블록도이고, 도 4는 도 3의 학습 영상 생성부의 입출력 이미지를 나타내는 예시도이며, 도 5는 카메라의 자세를 변경하기 위한 피치 각도, 롤 각도 및 요 각도를 나타내는 예시도이다.
우선 도 3을 참조하면, 본 실시예에 따른 학습 영상 생성부(110)는 프로젝션부(310) 및 영상 획득부(330)를 포함할 수 있다.
프로젝션부(310)
프로젝션부(310)는 파노라마(panorama) 평면(planar) 영상(즉, 가로 360도× 세로 360도의 직사각형 영상)을 입력받고, 해당 파노라마 평면 영상을 3D 지오메트리(3D geometry)에 프로젝션(projection)하여 360도 3D 영상으로 재구성할 수 있다.
예컨대, 프로젝션부(310)는 입력된 파노라마 평면 영상을 복수의 사각형 영역들로 분할할 수 있다. 이 때, 복수의 사각형 영역들은 각각 3D 지오메트리 표면의 서로 다른 영역들에 매핑될 수 있다. 프로젝션부(310)로 입력되는 파노라마 평면 영상의 일 예는 도 4의 (a)에 도시된 바와 같다.
그리고, 프로젝션부(310)는 파노라마 평면 영상을 분할하여 생성된 각 사각형 영상을 3D 지오메트리 표면의 대응 영역에 프로젝션함으로써 360도 3D 영상을 생성할 수 있다. 여기서, 3D 지오메트리는 3차원의 입체 도형으로서, 구(sphere), 원통(cylinder), 돔(dome), 정다면체(plastonic solid) 등을 포함할 수 있다. 프로젝션 과정으로 통해 생성된 360도 3D 영상의 일 예는 도 4의 (b)에 도시된 바와 같다. 이하, 본 명세서에서는 3D 지오메트리가 구인 것을 전제로 본 실시예를 설명하기로 한다. 다만, 이는 설명의 편의를 위한 것일 뿐, 본 실시예를 한정하는 것은 아니라는 점에 유의하여야 한다.
영상 획득부(330)
영상 획득부(330)는 파노라마 평면 영상으로부터 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 획득할 수 있다.
예컨대, 영상 획득부(330)는 3D 지오메트리의 중심에 가상 카메라(이하, '가상 카메라'라고 칭함)를 위치시킨 후, 해당 가상 카메라의 자세(orientation)를 변경해 가면서 복수의 학습영상들을 획득할 수 있다. 이 때, 해당 가상 카메라의 자세는 도 5에 도시된 바와 같이 해당 가상 카메라의 피치(pitch) 각도, 롤(roll) 각도 및 요(yaw) 각도에 따라 변경될 수 있다. 도 5에서, 피치 각도는 카메라의 x축 회전 각도(즉, 기울기(tilt) 값)를 의미하고, 롤 각도는 카메라의 y축 회전 각도(즉, 회전(rotation) 값)를 의미하며, 요 각도는 카메라의 z축 회전 각도(즉, 수평 회전(pan) 값)을 의미한다.
또한, 영상 획득부(330)는 가상 카메라의 내부 파라미터(intrinsic parameter)를 조절하여 복수의 학습 영상들을 획득할 수 있다. 여기서, 복수의 영상들을 획득하기 위해 변경될 내부 파라미터는 초점 거리(focal length, f) 및 왜곡계수(distortion coefficient, ζ)일 수 있다. 가상 카메라의 초점 거리 및 왜곡계수를 변경해가면서 획득한 복수의 영상들의 일 예는 도 4의 (c)에 도시된 바와 같다. 구체적으로, 도 4의 (c)에 도시된 이미지들은, 가상 카메라의 초점거리 f를 '80 mm 이상 300 mm 이하 범위'에서 조절하고 해당 가상 카메라의 왜곡계수 ζ를 '0에서 1 범위(즉, 배럴 왜곡(barrel distortion) 범위)'에서 조절하면서 획득한 이미지들을 나타낸다. 참고로, 배럴 왜곡은 촬영 이미지의 가장자리 부분이 바깥쪽으로 휘어지는 왜곡 현상을 말하며, 광각렌즈나 초점거리의 차이가 큰 줌렌즈(예컨대, 18 ~ 200 mm 렌즈)에서 많이 발생한다. 또한, 왜곡계수의 절대값이 커질수록(즉, 도 3의 (c)에서 왜곡계수 ζ가 1에 가까워질 수록), 왜곡의 정도도 이에 비례하여 커지게 된다.
가상 카메라를 이용하여 360도 3D 영상으로부터 획득된 복수의 영상들은 왜곡된 이미지(distorted image)로서, 카메라 캘리브레이션을 위한 기준값으로 이용되는 그라운드 트루스(ground truth) 파라미터(초점거리 f 및 왜곡계수 ζ)를 갖는다. 또한, 해당 복수의 영상들은 신경망 모듈의 학습 영상으로서 이용될 수 있다.
도 6은 본 실시예에 따른 딥 러닝 기반의 영상 처리부를 나타내는 도면이고, 도 7은 본 개시의 기술들에 적용될 수 있는 CNN의 구조를 나타내는 예시도이며, 도 8은 분류 모델과 회귀 모델간 카메라 내부 파라미터의 예측 정확도를 비교한 시뮬레이션 결과를 나타내는 그래프이다.
우선, 도 6을 참조하면, 본 실시예에 따른 영상 처리부(130)는 CNN 학습부(610) 및 CNN 실행부(630)를 포함할 수 있다.
CNN 학습부(610)
CNN 학습부(610)는 파노라마 평면 영상으로부터 획득된 다수의 학습 영상을 기반으로 CNN 모듈을 학습시킬 수 있다.
구체적으로, CNN 학습부(610)는 다수의 학습 영상을 이용하여 카메라의 초점거리(focal length) 파라미터를 출력하도록 제1 CNN을 학습시킬 수 있다. 또한, CNN 학습부(610)는 다수의 학습 영상을 이용하여 카메라의 왜곡 계수(distortion coefficient) 파라미터를 출력하도록 제2 CNN을 학습시킬 수 있다. 이 때, 제1 CNN의 학습 영상 및 제2 CNN의 학습 영상은 도 2를 참조하여 전술한 학습 영상 생성부(110)에 의해 생성된 영상 데이터로서, 서로 동일할 수 있다. CNN 학습부(610)는 제1 CNN 및 제2 CNN을 학습시키기 위하여 오류 역전파 알고리즘(error back propagation algorithm)을 이용할 수 있다.
본 개시의 기술들에 적용될 수 있는 CNN 구조의 일 예는 도 7에 도시된 바와 같다. 도 7을 참조하면, CNN은 입력 레이어(710), 히든 레이어(730) 및 출력 레이어(750)를 포함할 수 있다.
입력 레이어(710)는 영상 데이터를 입력 받는다.
히든 레이어(730)는 하나 이상의 컨볼루션(convolution) 레이어 및 풀링(pooling) 레이어로 구성될 수 있다. 히든 레이어(630)는 각 구성 레이어에 입력된 영상에 대해 컨볼루션 연산 및 서브 샘플링 연산을 반복 수행함으로써, 해당 입력 영상의 다양한 특징들이 표현된 특징 맵(feature map)을 생성할 수 있다. 이 때, 컨볼루션 연산에 이용되는 컨볼루션 필터의 가중치 매트릭스(weight matrix)는 이미 정답(label)이 알려진 학습 영상을 이용한 학습 과정을 통해 미리 산출될 수 있다.
출력 레이어(750)는 컨볼루션 레이어에 의해 생성된 특징 맵에 표현된 다양한 특징들을 조합하여 소정의 출력 데이터를 생성할 수 있다. 이 때, 출력 레이어(750)는 하나 이상의 완전 연결 레이어(fully connected layer)로 구성될 수 있다. 본 실시예의 일 측면에 따르면, 출력 레이어(730)의 마지막 완전 연결 레이어는 원하는 출력 데이터(즉, 그라운드 트루스(Ground Truth))와 실제 출력 데이터 간의 유사도에 대한 확률을 예측하여 출력하기 위한 분류 레이어(classification layer)로 구성될 수 있다.
참고로, 분류(classification) 모델과 회귀(regression) 모델 간 카메라 왜곡 보정을 위한 파라미터(이하, '왜곡 파라미터'라고 칭함)에 대한 예측 정확도를 비교해보면 도 8에 도시된 바와 같다. 도 8의 그래프에서, 가로축은 왜곡 오차(Distortion error)를 나타내고, 세로축은 이미지 비율(Percentage of images)을 나타낸다. 여기서, 왜곡 오차란 예측된 왜곡 파라미터와 그라운드 트루스 값과의 차이를 의미한다.
도 8의 시뮬레이션에서는, 분류 모델과 회귀 모델을 각각 이용하여 약 22,000 장의 이미지들의 내부 파라미터(intrinsic parameter)를 예측하고, 왜곡 오차에 따른 이미지 비율을 산출하였다. 또한, 분류 모델과 회귀 모델 모두 'Adam optimizer'를 이용하여 동일한 횟수만큼 학습시켰으며, 분류 모델은 교차 엔트로피 손실(cross entropy loss) 함수를 이용하고 회귀 모델은 로그-코쉬 손실(log-cosh loss) 함수를 이용하였다.
도 8을 참조하면, 분류 모델을 이용하는 것이 회귀 모델을 이용하는 것보다 왜곡 오차가 작은 이미지들의 비율이 높다는 것을 확인할 수 있다. 구체적으로, 왜곡 오차가 0.1인 경우, 분류 모델에 의한 이미지 비율은 약 90%인 반면, 회귀 모델에 의한 이미지 비율은 80% 이하인 것을 확인할 수 있다. 도 7의 시뮬레이션 결과를 통해, 분류 모델을 이용하는 것이 회귀 모델을 이용하는 경우보다 카메라 캘리브레이션을 위한 내부 파라미터의 예측 정확도가 높다는 것을 알 수 있다.
CNN 실행부(630)
다시 도 6으로 돌아와, CNN 실행부(630)는 카메라 영상을 입력 데이터로 하여 CNN 모듈을 실행시킴으로써, 해당 카메라 영상의 특징 데이터(feature data)를 추출하고 추출된 특징 데이터를 기초로 내부 파라미터(intrinsic parameter)를 확률적으로 예측하여 생성할 수 있다.
구체적으로, CNN 실행부(630)는 제1 CNN을 실행시켜, 입력된 카메라 영상으로부터 카메라 캘리브레이션을 위한 초점거리 파라미터를 생성할 수 있다. 또한, CNN 실행부(630)는 제2 CNN을 실행시켜, 입력된 카메라 영상으로부터 카메라 캘리브레이션을 위한 왜곡계수 파라미터를 생성할 수 있다.
CNN 실행부(630)는 카메라 캘리브레이션을 위한 내부 파라미터를 생성하기 위해 제1 CNN 및 제2 CNN을 병렬적으로 또는 순차적으로 실행시킬 수 있다. 본 실시예의 일 측면에 따르면, 제1 CNN 및 제2 CNN이 순차적으로 실행되는 경우, CNN 실행부(630)는 제1 CNN의 출력 데이터(즉, 초점거리 파라미터)로 구성된 적어도 하나의 맵(map)을 제2 CNN의 어느 한 레이어, 예컨대 마지막 완전 연결 레이어(fully connected layer)에 연접(concatenation)시킨 후, 해당 제2 CNN을 실행시켜 왜곡계수 파라미터를 생성할 수 있다.
이하, 도 9 및 도 10을 참조하여, 본 실시예에 따른 카메라 캘리브레이션 장치가 (1) 대규모 학습 영상을 생성하여 CNN을 학습시키는 과정 및 (2) 학습된 CNN을 기반으로 카메라 캘리브레이션을 수행하는 과정을 설명하기로 한다.
도 9는 본 실시예에 따른 카메라 캘리브레이션 장치가 대규모 학습 영상을 생성하여 CNN을 학습시키는 과정을 나타내는 흐름도이다.
도 1 및 도 9를 참조하면, 단계 S910에서, 학습 영상 생성부(110)는 파노라마(panorama) 평면(planar) 영상(즉, 가로 360도× 세로 360도의 직사각형 영상)을 입력받고, 해당 파노라마 평면 영상을 3D 지오메트리(3D geometry)에 프로젝션(projection)하여 360도 3D 영상으로 재구성할 수 있다.
구체적으로, 학습 영상 생성부(110)는 입력된 파노라마 평면 영상을 분할하여 생성된 각 사각형 영상을 3D 지오메트리 표면의 대응 영역에 프로젝션함으로써 360도 3D 영상을 생성할 수 있다. 여기서, 3D 지오메트리는 3차원의 입체 도형으로서, 구(sphere), 원통(cylinder), 돔(dome), 정다면체(plastonic solid) 등을 포함할 수 있다.
단계 S920에서, 학습 영상 생성부(110)는 파노라마 평면 영상으로부터 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 획득할 수 있다.
구체적으로, 학습 영상 생성부(110)는 3D 지오메트리의 중심에 가상 카메라(이하, '가상 카메라'라고 칭함)를 위치시킨 후, 해당 가상 카메라의 자세(orientation)를 변경해 가면서 복수의 학습영상들을 획득할 수 있다.
또한, 학습 영상 생성부(110)는 가상 카메라의 내부 파라미터 예컨대, 초점거리 및 왜곡계수를 조절하여 복수의 학습 영상들을 획득할 수 있다.
가상 카메라를 이용하여 360도 3D 영상으로부터 획득된 복수의 영상들은 왜곡된 이미지(distorted image)로서, 카메라 캘리브레이션을 위한 기준값으로 이용되는 그라운드 트루스(ground truth) 파라미터를 갖는다. 또한, 해당 복수의 영상들은 신경망 모듈의 학습 영상으로서 이용될 수 있다.
단계 S930에서, 영상 처리부(130)는 2개의 CNN(제1 CNN 및 제2 CNN)에 입력될 영상 데이터(입력 데이터)를 설정할 수 있다. 본 실시예의 일 측면에 따르면, 해당 2개의 CNN에 입력되는 영상 데이터는 학습 영상 생성부(110)에 의해 1개의 파노라마 평면 영상으로부터 획득된 다수의 학습영상들로서, 서로 동일할 수 있다.
단계 S940에서, 영상 처리부(130)는 단계 S930에서 설정된 입력 데이터를 이용하여 제1 CNN의 출력 레이어에서 카메라의 초점거리(focal length) 파라미터가 출력되도록 제1 CNN을 학습시킬 수 있다.
또한, 영상 처리부(130)는 단계 S930에서 설정된 입력 데이터를 이용하여 제2 CNN의 출력 레이어에서 카메라의 왜곡계수(distortion coefficient) 파라미터가 출력되도록 제2 CNN을 학습시킬 수 있다. 이 때, 제1 CNN 및 제2 CNN의 학습 과정은 역전파 알고리즘(Back Propagation Algorithm)을 이용하여 수행될 수 있다.
이와 같이, 본 실시예는 두 개의 CNN 각각의 출력 레이어에서 카메라의 초점거리 파라미터와 왜곡계수 파라미터가 별도로 출력되도록 CNN 모듈을 구성한 것을 특징으로 한다.
도 10은 본 실시예에 따른 영상 처리부가 CNN을 기반으로 카메라 캘리브레이션을 수행하는 과정의 일 예를 나타내는 흐름도이다.
도 1 및 도 10을 참조하면, 단계 S1010에서, 영상 처리부(130)는 학습된 2개의 CNN(즉, 제1 CNN 및 제2 CNN)에 입력될 영상 데이터(즉, 입력 데이터)를 설정할 수 있다. 이 때, 입력 데이터는 카메라 캘리브레이션을 수행하고자 하는 카메라에 의해 촬영된 왜곡된 영상 데이터(distorted image)로서, 서로 동일할 수 있다.
단계 S1020에서, 영상 처리부(130)는 제1 CNN을 실행시켜 추론과정을 수행함으로써 카메라 캘리브레이션을 위한 초점거리(focal length) 파라미터를 생성(또는 예측)할 수 있다.
단계 S1030에서, 영상 처리부(130)는 단계 S1020에서 생성된 초점거리 파라미터로 구성된 하나 이상의 맵을 제2 CNN의 마지막 완전 연결 레이어에 연접시킬 수 있다.
단계 S1040에서, 영상 처리부(130)는 제2 CNN을 실행시켜 추론과정을 수행함으로써 카메라 캘리브레이션을 위한 왜곡계수(distortion coefficient) 파라미터를 생성(또는 예측)할 수 있다.
이상 도 9 및 도 10에서는, 복수의 과정을 순차적으로 수행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서, 도 9 및 도 10에 기재된 순서를 변경하여 수행하거나 상기 복수의 과정 중 일부를 병렬적으로 수행하는 것으로 다양하게 수정 및 변경하여 적용 가능할 것이므로, 도 9 및 도 10은 시계열적인 순서로 한정되는 것은 아니다.
한편, 도 9 및 도 10에 도시된 과정들은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 즉, 컴퓨터가 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
본 실시예에 따른 카메라 캘리브레이션 동작의 수행 결과 영상들은 도 11 내지 도 13에 도시된 바와 같다.
도 11 및 도 12에서, (a)는 원본 영상을 나타내고, (b)는 본 실시예에 따라 왜곡 보정된 영상을 나타낸다. 또한, 도 13에서, (a)는 광각의 원본 그림을 나타내고, (b)는 본 실시예에 따라 왜곡 보정된 그림을 나타낸다. 도 13을 참조하면, 본 실시예에 따른 카메라 캘리브레이션 기법은 실제 사진은 물론 왜곡된 그림에도 적용될 수 있음을 확인할 수 있다.
이상의 본 실시예에 따른 카메라 캘리브레이션 기법은 다양한 종류의 영상들(예: 풍경사진, 텍스처 존재 여부 등)에 대해서 안정적으로 내부 파라미터를 예측하여 카메라 캘리브레이션을 수행할 수 있는 효과가 있다.
또한, 본 실시예는 광각(wide field-of-view) 카메라는 물론, 기하학적 왜곡에 영향을 받지 않는 퍼스펙티브(perspective) 카메라의 캘리브레이션에도 적용될 수 있다.
또한, 본 실시예는 낮은 조명 조건(예: 실내 환경, 늦은 저녁시간 등)을 보상하기 위해 카메라의 노출 시간(exposure time)을 길게 함으로써 발생되는 모션 블러(motion blur) 현상에 대해, 로버스트(robust)한 카메라 캘리브레이션을 수행할 수 있는 효과가 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (14)

  1. 딥 러닝에 기반한 카메라 캘리브레이션 방법으로서,
    파노라마 평면 영상을 3D 지오메트리(geometry)에 프로젝션(projection)하여 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 생성하는 단계;
    카메라의 내부 파라미터(intrinsic parameter)가 출력되도록 상기 복수의 학습 영상들을 이용하여 신경망 모듈을 학습시키는 단계; 및
    상기 카메라로부터 획득된 영상을 이용하여 상기 신경망 모듈을 실행시켜 상기 카메라의 내부 파라미터를 예측하는 단계를 포함하는
    카메라 캘리브레이션 방법.
  2. 제1항에 있어서,
    상기 내부 파라미터는,
    상기 카메라의 초점거리(focal length) 파라미터 및 왜곡계수(distortion coefficient) 파라미터를 포함하는
    카메라 캘리브레이션 방법.
  3. 제1항에 있어서,
    상기 복수의 학습영상들을 생성하는 단계는,
    분류 모델(classification model)을 이용하여 그라운드 트루스(ground truth) 파라미터와 상기 신경망 모듈의 출력 데이터 간의 유사도에 대한 확률을 산출함으로써 수행되는 것을 특징으로 하는
    카메라 캘리브레이션 방법.
  4. 제1항에 있어서,
    상기 복수의 학습영상들을 생성하는 단계는,
    상기 3D 지오메트리의 중심에 위치한 가상의 카메라의 초점거리 파라미터 및 왜곡 파라미터를 변경하면서 수행되는 것을 특징으로 하는
    카메라 캘리브레이션 방법.
  5. 제1항에 있어서,
    상기 신경망 모듈은,
    상기 카메라의 서로 다른 내부 파라미터를 각각 출력하는 제1 CNN 및 제2 CNN으로 구성되는 것을 특징으로 하는
    카메라 캘리브레이션 방법.
  6. 제5항에 있어서,
    상기 카메라의 내부 파라미터를 예측하는 단계는,
    상기 제1 CNN을 실행시켜 제1 내부 파라미터를 예측하는 단계;
    상기 제1 내부 파라미터로 구성된 적어도 하나의 맵(map)을 상기 제2 CNN의 완전 연결 레이어 중 어느 하나에 연접시키는 단계; 및
    상기 제2 CNN을 실행시켜 제2 내부 파라미터를 예측하는 단계를 포함하는
    카메라 캘리브레이션 방법.
  7. 제5항에 있어서,
    상기 제1 CNN은 상기 카메라의 초점거리(focal length) 파라미터를 출력하고,
    상기 제2 CNN은 상기 카메라의 왜곡계수(distortion coefficient)를 출력하는 것을 특징으로 하는
    카메라 캘리브레이션 방법.
  8. 딥 러닝에 기반한 카메라 캘리브레이션 장치로서,
    파노라마 평면 영상을 3D 지오메트리(geometry)에 프로젝션(projection)하여 생성된 360도 3D 영상으로부터 복수의 학습 영상들을 생성하는 학습 영상 생성부; 및
    카메라의 내부 파라미터(intrinsic parameter)가 출력되도록 상기 복수의 학습 영상들을 이용하여 신경망 모듈을 학습시키고, 상기 카메라로부터 획득된 영상을 이용하여 상기 신경망 모듈을 실행시켜 상기 카메라의 내부 파라미터를 예측하는 영상 처리부를 포함하는
    카메라 캘리브레이션 장치.
  9. 제8항에 있어서,
    상기 내부 파라미터는,
    상기 카메라의 초점거리(focal length) 파라미터 및 왜곡계수(distortion coefficient) 파라미터를 포함하는
    카메라 캘리브레이션 장치.
  10. 제8항에 있어서,
    상기 영상 처리부는,
    분류 모델(classification model)을 이용하여 그라운드 트루스(ground truth) 파라미터와 상기 신경망 모듈의 출력 데이터 간의 유사도에 대한 확률을 산출함으로써 상기 카메라의 내부 파라미터를 예측하는 것을 특징으로 하는
    카메라 캘리브레이션 장치.
  11. 제8항에 있어서,
    상기 학습 영상 생성부는,
    상기 3D 지오메트리의 중심에 위치한 가상의 카메라의 각 자세(orientation) 별로 초점거리 파라미터 및 왜곡 파라미터를 변경하면서 상기 복수의 학습 영상을 생성하는 것을 특징으로 하는
    카메라 캘리브레이션 장치.
  12. 제8항에 있어서,
    상기 신경망 모듈은,
    상기 카메라의 서로 다른 내부 파라미터를 각각 출력하는 제1 CNN 및 제2 CNN으로 구성되는 것을 특징으로 하는
    카메라 캘리브레이션 장치.
  13. 제12항에 있어서,
    상기 영상 처리부는,
    상기 제1 CNN을 실행시켜 제1 내부 파라미터를 예측하고, 상기 제1 내부 파라미터로 구성된 적어도 하나의 맵(map)을 상기 제2 CNN의 완전 연결 레이어 중 어느 하나에 연접시킨 후, 상기 제2 CNN을 실행시켜 제2 내부 파라미터를 예측하는 것을 특징으로 하는
    카메라 캘리브레이션 장치.
  14. 제12항에 있어서,
    상기 제1 CNN은 상기 카메라의 초점거리(focal length) 파라미터를 출력하고,
    상기 제2 CNN은 상기 카메라의 왜곡계수(distortion coefficient)를 출력하는 것을 특징으로 하는
    카메라 캘리브레이션 장치.
KR1020180090565A 2018-08-03 2018-08-03 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치 KR102227583B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180090565A KR102227583B1 (ko) 2018-08-03 2018-08-03 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치
US16/277,214 US10977831B2 (en) 2018-08-03 2019-02-15 Camera calibration method and apparatus based on deep learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180090565A KR102227583B1 (ko) 2018-08-03 2018-08-03 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200015147A true KR20200015147A (ko) 2020-02-12
KR102227583B1 KR102227583B1 (ko) 2021-03-15

Family

ID=69229810

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180090565A KR102227583B1 (ko) 2018-08-03 2018-08-03 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치

Country Status (2)

Country Link
US (1) US10977831B2 (ko)
KR (1) KR102227583B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022163877A1 (ko) * 2021-01-27 2022-08-04 삼성전자 주식회사 영상을 처리하는 방법 및 이를 수행하는 전자 장치
KR20220144917A (ko) * 2021-04-20 2022-10-28 주식회사 에이치엘클레무브 차량의 주행을 보조하는 장치 및 그 방법
KR102614102B1 (ko) * 2022-11-24 2023-12-14 주식회사 버넥트 실물 객체에 대한 정밀한 추적을 위한 자동화된 캘리브레이션 시스템, 캘리브레이션 방법 및 캘리브레이션 방법을 기초로 이미지 내에서 실물 객체를 추적하고 실물 객체에 가상 모델을 증강하는 방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10802489B1 (en) 2017-12-29 2020-10-13 Apex Artificial Intelligence Industries, Inc. Apparatus and method for monitoring and controlling of a neural network using another neural network implemented on one or more solid-state chips
US11221671B2 (en) * 2019-01-31 2022-01-11 Toyota Research Institute, Inc. Opengaze: gaze-tracking in the wild
US11405547B2 (en) * 2019-02-01 2022-08-02 Electronics And Telecommunications Research Institute Method and apparatus for generating all-in-focus image using multi-focus image
WO2020187723A1 (en) * 2019-03-15 2020-09-24 Mapillary Ab, Methods for analysis of an image and a method for generating a dataset of images for training a machine-learned model
US11367290B2 (en) 2019-11-26 2022-06-21 Apex Artificial Intelligence Industries, Inc. Group of neural networks ensuring integrity
US10691133B1 (en) * 2019-11-26 2020-06-23 Apex Artificial Intelligence Industries, Inc. Adaptive and interchangeable neural networks
US10956807B1 (en) 2019-11-26 2021-03-23 Apex Artificial Intelligence Industries, Inc. Adaptive and interchangeable neural networks utilizing predicting information
US11366434B2 (en) 2019-11-26 2022-06-21 Apex Artificial Intelligence Industries, Inc. Adaptive and interchangeable neural networks
CN111784586B (zh) * 2020-05-25 2022-10-18 清华大学 自监督学习的全景图像水平矫正方法及系统
JP7446643B2 (ja) * 2020-05-26 2024-03-11 マプサス テクノロジー ホールディング リミテッド 視覚測位方法、装置、機器及び可読記憶媒体
US11928799B2 (en) * 2020-06-29 2024-03-12 Samsung Electronics Co., Ltd. Electronic device and controlling method of electronic device
US11562504B1 (en) 2022-01-26 2023-01-24 Goodsize Inc. System, apparatus and method for predicting lens attribute
CN117197224B (zh) * 2023-08-16 2024-02-06 广东工业大学 一种基于残差网络的拉曼光谱仪自适应聚焦装置和方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109531A (ja) * 2000-09-28 2002-04-12 Tateyama R & D:Kk 画像の歪みを補正するためのニューラル・ネットワークを用いたパノラマ画像ナビゲーションシステム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1780651A1 (en) * 2005-10-25 2007-05-02 Bracco Imaging, S.P.A. Method and system for automatic processing and evaluation of images, particularly diagnostic images
US11282287B2 (en) * 2012-02-24 2022-03-22 Matterport, Inc. Employing three-dimensional (3D) data predicted from two-dimensional (2D) images using neural networks for 3D modeling applications and other applications
US20170127045A1 (en) * 2015-10-28 2017-05-04 Toppano Co., Ltd. Image calibrating, stitching and depth rebuilding method of a panoramic fish-eye camera and a system thereof
US10049307B2 (en) * 2016-04-04 2018-08-14 International Business Machines Corporation Visual object recognition
DE102016223422B4 (de) * 2016-11-25 2024-05-08 Continental Autonomous Mobility Germany GmbH Verfahren zur automatischen Ermittlung extrinsischer Parameter einer Kamera eines Fahrzeugs
US10733697B2 (en) 2016-12-27 2020-08-04 Intel IP Corporation Convolutional neural network for wide-angle camera images
US10515460B2 (en) * 2017-11-29 2019-12-24 Adobe Inc. Neural network-based camera calibration
US11669724B2 (en) * 2018-05-17 2023-06-06 Raytheon Company Machine learning using informed pseudolabels
CN113591754B (zh) * 2018-11-16 2022-08-02 北京市商汤科技开发有限公司 关键点检测方法及装置、电子设备和存储介质
US11037051B2 (en) * 2018-11-28 2021-06-15 Nvidia Corporation 3D plane detection and reconstruction using a monocular image
US20200234467A1 (en) * 2019-01-18 2020-07-23 Nec Laboratories America, Inc. Camera self-calibration network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109531A (ja) * 2000-09-28 2002-04-12 Tateyama R & D:Kk 画像の歪みを補正するためのニューラル・ネットワークを用いたパノラマ画像ナビゲーションシステム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SU Yu-Chuan 등, "Learning Spherical Convolution for Fast Features from 360° Imagery", Advances in Neural Information Processing Systems 30 (NIPS 2017)* *
TU Razvan, et al: "Automatic extrinsic camera parameters calibration using convolutional neural networks", 2017 13th IEEE ICCP *
Yannick Hold-Geoffroy et al: "A Perceptual Measure for Deep Single Image Camera Calibration", Submitted on 2 Dec 2017 (v1), last revised 22 Apr 2018 (this version, v3) (2018.04.22.) 1부.* *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022163877A1 (ko) * 2021-01-27 2022-08-04 삼성전자 주식회사 영상을 처리하는 방법 및 이를 수행하는 전자 장치
KR20220144917A (ko) * 2021-04-20 2022-10-28 주식회사 에이치엘클레무브 차량의 주행을 보조하는 장치 및 그 방법
KR102614102B1 (ko) * 2022-11-24 2023-12-14 주식회사 버넥트 실물 객체에 대한 정밀한 추적을 위한 자동화된 캘리브레이션 시스템, 캘리브레이션 방법 및 캘리브레이션 방법을 기초로 이미지 내에서 실물 객체를 추적하고 실물 객체에 가상 모델을 증강하는 방법

Also Published As

Publication number Publication date
US10977831B2 (en) 2021-04-13
KR102227583B1 (ko) 2021-03-15
US20200043197A1 (en) 2020-02-06

Similar Documents

Publication Publication Date Title
KR102227583B1 (ko) 딥 러닝 기반의 카메라 캘리브레이션 방법 및 장치
CN108335353B (zh) 动态场景的三维重建方法、装置和系统、服务器、介质
US10425638B2 (en) Equipment and method for promptly performing calibration and verification of intrinsic and extrinsic parameters of a plurality of image capturing elements installed on electronic device
CN107705333B (zh) 基于双目相机的空间定位方法及装置
JP6563609B2 (ja) 中間ビューからの効率的なキャンバスビューの生成
CN109003311B (zh) 一种鱼眼镜头的标定方法
CN110191326B (zh) 一种投影系统分辨率扩展方法、装置和投影系统
CN112819944B (zh) 三维人体模型重建方法、装置、电子设备及存储介质
CN101916455B (zh) 一种高动态范围纹理三维模型的重构方法及装置
WO2019164498A1 (en) Methods, devices and computer program products for global bundle adjustment of 3d images
CN106709865B (zh) 一种深度图像合成方法及装置
US9756260B1 (en) Synthetic camera lenses
CN110874818A (zh) 图像处理和虚拟空间构建方法、装置、系统和存储介质
TW202143120A (zh) 圖像產生裝置、圖像產生方法、記錄媒體產生方法、學習模型產生裝置、學習模型產生方法、學習模型、資料處理裝置、資料處理方法、推論方法、電子機器產生方法、程式及非暫存性電腦可讀媒體
CN103247020A (zh) 一种基于径向特征的鱼眼图像展开方法
US20180293805A1 (en) Methods and apparatuses for determining positions of multi-directional image capture apparatuses
WO2021104308A1 (zh) 全景深度测量方法、四目鱼眼相机及双目鱼眼相机
CN111866523B (zh) 全景视频合成方法、装置、电子设备和计算机存储介质
CN112215880A (zh) 一种图像深度估计方法及装置、电子设备、存储介质
CN112819937B (zh) 一种自适应多对象光场三维重建方法、装置及设备
WO2018100230A1 (en) Method and apparatuses for determining positions of multi-directional image capture apparatuses
WO2018150086A2 (en) Methods and apparatuses for determining positions of multi-directional image capture apparatuses
JP2005063012A (ja) 全方位カメラ運動と3次元情報の復元方法とその装置及びプログラム並びにこれを記録した記録媒体
JP7336346B2 (ja) フレーミング情報生成装置及びそのプログラム
CN117596482A (zh) 一种视频抖动去除方法、电子设备、系统和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant