KR20190143186A - 360도 영상을 처리하는 방법 및 장치 - Google Patents

360도 영상을 처리하는 방법 및 장치 Download PDF

Info

Publication number
KR20190143186A
KR20190143186A KR1020180070821A KR20180070821A KR20190143186A KR 20190143186 A KR20190143186 A KR 20190143186A KR 1020180070821 A KR1020180070821 A KR 1020180070821A KR 20180070821 A KR20180070821 A KR 20180070821A KR 20190143186 A KR20190143186 A KR 20190143186A
Authority
KR
South Korea
Prior art keywords
image
degree image
distortion
correction information
processing apparatus
Prior art date
Application number
KR1020180070821A
Other languages
English (en)
Other versions
KR102435519B1 (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 KR1020180070821A priority Critical patent/KR102435519B1/ko
Priority to US17/052,057 priority patent/US11989849B2/en
Priority to PCT/KR2019/007444 priority patent/WO2019245299A1/ko
Priority to CN201980041461.4A priority patent/CN112313947B/zh
Priority to EP19823527.7A priority patent/EP3764641A4/en
Publication of KR20190143186A publication Critical patent/KR20190143186A/ko
Application granted granted Critical
Publication of KR102435519B1 publication Critical patent/KR102435519B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/12Panospheric to cylindrical image transformations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/011Head-up displays characterised by optical features comprising device for correcting geometrical aberrations, distortion
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0112Head-up displays characterised by optical features comprising device for genereting colour display
    • G02B2027/0116Head-up displays characterised by optical features comprising device for genereting colour display comprising devices for correcting chromatic aberration
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • 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
    • G06T2207/10012Stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/261Image signal generators with monoscopic-to-stereoscopic image conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

본 개시는, 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하고, 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터를 기초로 예측된 360도 영상의 왜곡에 따라 왜곡 보정 정보를 획득하며, 결정된 처리 순서 및 획득된 왜곡 보정 정보에 따라 360도 영상의 적어도 일부 영역의 데이터를 처리하는, 360도 영상을 처리하는 방법에 관한 것이다.

Description

360도 영상을 처리하는 방법 및 장치 {METHOD AND APPARATUS FOR PROCESSING 360 DEGREE IMAGE}
본 개시는 360도 영상을 처리하는 방법, 360도 영상을 처리하는 장치 및 360도 영상을 처리하는 방법을 수행하는 컴퓨터 프로그램에 관한 것이다.
영상 처리 기술이 발달함에 따라, 사용자에게 보다 실감나는 영상을 제공하기 위한 기술 중 하나로 360도 영상을 제공하는 방법에 대한 연구가 활발하게 이루어지고 있다. 360도 영상을 제공하기 위해서는 실시간으로 사용자의 시선에 대응되는 360도 영상의 부분이 사용자의 양안에 투사될 수 있도록 영상 데이터를 처리하는 기술이 필요하다.
한편, 360도 영상의 경우 투사 시, 이를 투사하는 광학 시스템의 특성 및 비선형적 특성으로 인해 처리되어야 하는 데이터가 방대함에 따라, 영상 처리에 많은 시간이 소요될 수 있다. 이로 인해, 실시간으로 360도 영상을 처리하기 위해서는 고성능의 GPU가 요구되거나, 다수의 프로세서가 요구될 수 있다.
이에 따라, 360도 영상 처리에 소요되는 시간 및 하드웨어로 인한 비용을 줄이기 위해 보다 효율적으로 영상 처리를 수행할 수 있는 기술 개발이 필요한 실정이다.
본 개시의 일 실시예는 360도 영상의 처리 효율을 향상시킴으로써 360도 영상 처리에 소요되는 시간을 최소화할 수 있는 360도 영상을 처리하는 방법 및 장치를 제공하고자 한다. 또한, 본 개시의 다른 실시예는 360도 영상 처리에 이용되는 데이터를 최소화함으로써 하나의 하드웨어 칩에서도 영상 처리를 수행할 수 있는 360도 영상을 처리하는 방법 및 장치를 제공하고자 한다.
일 실시예에 따른 360도 영상을 처리하는 방법은, 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하는 단계; 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터로부터 예측된 360도 영상의 왜곡을 기초로 왜곡 보정 정보를 획득하는 단계; 및 결정된 처리 순서 및 획득된 왜곡 보정 정보에 따라 360도 영상의 적어도 일부 영역의 데이터를 처리하는 단계를 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 처리 순서를 결정하는 단계는, 360도 영상을 복수의 세그먼트로 분할하는 단계를 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 분할하는 단계는, 360도 영상을 사분면(quadrant)으로 분할하는 단계; 및 분할된 사분면 각각을 복수의 세그먼트로 분할하는 단계를 포함하고, 처리 순서는, 사분면 상에서의 세그먼트의 위치 및 카메라의 피치(pitch) 값에 기초하여 결정될 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 처리 순서를 결정하는 단계는, 복수의 세그먼트 각각에 포함된 픽셀들 중 경계 영역에 위치한 픽셀이 다른 픽셀보다 우선적으로 처리되도록 처리 순서를 결정할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 왜곡 보정 정보를 획득하는 단계는, 광학 장치의 파라미터를 기초로 배럴 왜곡(barrel distortion) 및 핀쿠션 왜곡(pincushion distortion) 중 적어도 하나를 예측하는 단계를 포함하고, 왜곡 보정 정보는, 배럴 왜곡 및 핀쿠션 왜곡 중 적어도 하나를 상쇄할 수 있는 픽셀 보정 정보를 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법은, 기 결정된 좌안 영상과 우안 영상의 변환 정보에 따라 360도 영상의 적어도 일부 영역에 포함된 픽셀의 좌표 변환 값을 결정하는 단계를 더 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 왜곡 보정 정보를 획득하는 단계는, 광학 장치의 파라미터를 기초로 360도 영상에 포함된 픽셀의 색 수차를 예측하는 단계를 포함하고, 왜곡 보정 정보는, 예측된 색 수차를 상쇄할 수 있는 색상 별 픽셀 보정 정보를 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법에 있어서, 처리하는 단계는, 메모리에 기 저장된 영상의 적어도 일부 영역의 데이터를 결정된 처리 순서에 따라 획득(read)하는 단계를 포함할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 방법은, 카메라의 파라미터에 기초하여, 360도 영상의 적어도 일부 영역에 포함된 픽셀의 구면(sphere) 상에서의 좌표를 결정하는 단계를 더 포함하고, 처리하는 단계는, 결정된 좌표를 결정된 처리 순서 및 획득된 왜곡 정보에 따라 처리할 수 있다.
일 실시예에 따른 360도 영상을 처리하는 장치는 하나 이상의 인스트럭션들을 저장하는 메모리; 및 메모리에 저장된 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 프로세서는 하나 이상의 인스트럭션들을 실행함으로써, 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하고, 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터로부터 예측된 360도 영상의 왜곡을 기초로 왜곡 보정 정보를 획득하며, 결정된 처리 순서 및 획득된 왜곡 보정 정보에 따라 360도 영상의 적어도 일부 영역의 데이터를 처리할 수 있다.
도 1은 일 실시예에 따른 360도 영상을 처리하는 방법을 설명하기 위한 개념도이다.
도 2는 일 실시예에 따른 360도 영상의 처리 방법을 설명하기 위한 흐름도이다.
도 3a 내지 도 3e는 일 실시예에 따른 영상 처리 장치가 360도 영상을 복수의 세그먼트로 분할하여 처리 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 영상 처리 장치가 세그먼트 내의 픽셀 처리 순서를 결정하기 위해 정의하는 탑 버텍스를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 영상 처리 장치가 세그먼트 내의 픽셀을 처리하는 방법을 설명하기 위한 도면이다.
도 6a 및 도 6b는 일 실시예에 따른 영상 처리 장치가 세그먼트 내의 픽셀 처리 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 영상 처리 장치가 360도 영상이 촬영된 카메라의 파라미터에 기초하여 영상 벡터를 결정하는 방법을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 영상 처리 장치가 360도 영상 처리를 위해 기하학 수차를 보정하는 방법을 설명하기 위한 도면이다.
도 9a 및 도 9b는 일 실시예에 따른 영상 처리 장치가 스테레오스코픽 효과를 얻기 위해 360도 영상을 처리하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 영상 처리 장치가 360도 영상 처리를 위해 색 수차를 보정하는 방법을 수행하는 방법을 설명하기 위한 도면이다.
도 11a는 일 실시예에 따른 영상 처리 장치가 영상의 픽셀 벡터를 결정하는 방법을 설명하기 위한 도면이다.
도 11b는 일 실시예에 따른 영상 처리 장치가 영상 내의 픽셀이 구에 투사되는 경우 투사 지점을 결정하는 방법을 설명하기 위한 도면이다.
도 12a 및 도 12b는 일 실시예에 따른 영상 처리 장치가 360도 영상을 처리하는 방법을 보다 구체적으로 설명하기 위한 흐름도이다.
도 13 및 도 14는 일 실시예에 따른 영상 처리 장치의 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되지는 않는다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 항목들의 조합 또는 복수의 관련된 항목들 중의 어느 하나의 항목을 포함한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 특성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 360도 영상을 처리하는 방법을 설명하기 위한 개념도이다.
도 1을 참조하면, 360도 영상을 처리하는 장치(100, 이하, 영상 처리 장치)는 사용자가 360도 영상을 통해 가상 현실을 체험하도록 하기 위해, 사용자의 양안에 각각 영상을 투사하여, 사용자의 시선에 대응되는 360도 영상의 부분(110)을 인지하도록 할 수 있다.
한편, 360도 영상 처리의 경우, 처리되어야 하는 데이터의 양이 방대함에 따라, 고성능의 GPU(Graphic Processing Unit)가 필수적으로 요구된다는 단점이 있다. 뿐만 아니라, 방대한 데이터 양으로 인하여 이에 대한 처리 응답 시간(processing response time)이 길어짐에 따라, 360도 영상을 처리함에 있어서, 실시간으로 사용자의 시선에 반응하기 어렵다는 문제점이 존재한다.
본 개시에 따른 영상 처리 장치(100)는 360도 영상의 처리 속도를 높이기 위해, 360도 영상에 존재하는 비선형성 특성을 보다 효율적으로 처리할 수 있는 방법을 제공할 수 있다.
예를 들어, 영상 처리 장치(100)는 360도 영상을 비선형성 방향에 따라 복수의 영역으로 분할하고, 분할된 각 영역 별로 처리 순서를 결정할 수 있다. 여기에서, 처리 순서는 360도 영상에서의 각 영역의 위치 및 360도 영상을 촬영한 카메라 등의 촬영 장치의 파라미터에 따라 결정될 수 있다.
다른 예에 따라, 영상 처리 장치(100)는 360도 영상의 적어도 일부 영역의 투사 시 발생되는 기하학 수차 및 색수차 등을 보정 하기 위해, 픽셀 별로 왜곡 보정 정보를 결정할 수 있다. 예를 들어, 영상 처리 장치(100)는 투사되는 영상에 포함된 각 픽셀에 대해 투사 시 발생되는 왜곡을 상쇄시킬 수 있는 값을 미리 적용할 수 있다.
또 다른 예에 따라, 영상 처리 장치(100)는 360도 영상의 적어도 일부 영역을 사용자의 양안에 각각 투사하는 경우, 사용자가 입체감을 느낄 수 있도록 좌안과 우안에 투사되는 영상을 별도로 생성할 수 있다. 영상 처리 장치(100)는 인간의 좌안과 우안의 시각 인지 특성을 고려하여, 좌안 영상 및 우안 영상의 생성 시 필요한 픽셀 변환 값인 스테레오스코픽 델타값을 결정할 수 있다.
일 실시예에 따른 영상 처리 장치(100)는 결정된 처리 순서에 따라 360도 영상으로부터 세그먼트 데이터 또는 픽셀 데이터를 로딩하고, 로딩된 데이터에 왜곡 보정 정보 및 스테레오스코픽 델타값 등을 적용하여 영상을 처리함으로써 영상 처리에 소요되는 시간 및 메모리 등을 줄일 수 있다.
한편, 본 개시에서 360도 영상은 어안 영상(fisheye image), 구형 파노라마 영상(spherical panoramic image) 및 실린더형 파노라마 영상(cylindrical panoramic image) 중 적어도 하나를 포함할 수 있다. 다만, 이는 일 예일 뿐, 360도 영상이 전술한 예에 한정되는 것은 아니다.
도 2는 일 실시예에 따른 360도 영상의 처리 방법을 설명하기 위한 흐름도이다.
단계 S210에서, 영상 처리 장치는 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정할 수 있다.
일 실시예에 따른 영상 처리 장치는 화면을 기 설정된 크기의 복수의 세그먼트로 분할하는 세그멘테이션을 수행할 수 있다. 세그멘테이션 수행 시, 360도 영상의 투사의 비선형성에 따라, 세그먼트의 위치 및 카메라의 위치 중 적어도 하나에 기초하여 세그먼트 처리 순서가 결정될 수 있다.
또한, 영상 처리 장치는 세그먼트 내에 포함된 복수의 픽셀에 대해 바이패싱 순서를 결정할 수 있다. 이 때, 영상 처리 장치는 레이턴시를 최소화하기 위해, 세그먼트의 경계 지점에 위치한 픽셀을 우선적으로 로딩할 수 있다. 이후, 영상 처리 장치는 설정된 탑 버텍스에서부터 기 설정된 방향에 따라 픽셀들을 바이패싱할 수 있다.
단계 S220에서, 영상 처리 장치는 360도 영상의 적어도 일부 영역이 출력되는 광학 장치의 파라미터를 기초로 예측된 360도 영상의 왜곡에 따라 왜곡 보정 정보를 획득할 수 있다.
일 실시예에 따른 영상 처리 장치는 360도 영상의 적어도 일부 영역이 투사되는 광학 시스템을 구성하는 렌즈의 파라미터를 기초로 영상 투사 시 발생되는 기하학 왜곡을 예측할 수 있다. 영상 처리 장치는 예측된 기하학 왜곡이 상쇄되도록 360도 영상의 적어도 일부 영역에 포함된 픽셀들 각각을 반대 방향으로 미리 왜곡시킬 수 있다.
다른 실시예에 따른 영상 처리 장치는 360도 영상의 적어도 일부 영역에 포함된 픽셀을 각각 구성하는 RGB 컴포넌트에 대한 색수차를 예측할 수 있다. 영상 처리 장치는 예측된 색수차를 상쇄시켜, 하나의 초점에 RGB 컴포넌트들의 상이 맺힐 수 있도록 색상 별 컴포넌트를 미리 왜곡시킬 수 있다.
한편, 추가적으로 영상 처리 장치는 시각 인지 특성(vision perception characteristic)을 기초로 기 결정된 좌안 영상과 우안 영상의 변환 정보에 따라 360도 영상의 적어도 일부 영역에 포함된 픽셀의 좌표 변환 값을 결정할 수 있다. 이에 대해서는, 도 9a 및 도 9b를 참조하여 보다 구체적으로 후술하도록 한다.
단계 S230에서, 영상 처리 장치는 결정된 처리 순서 및 획득된 왜곡 보정 정보에 따라 360도 영상의 적어도 일부 영역의 데이터를 처리할 수 있다.
일 실시예에 따른 영상 처리 장치는 결정된 처리 순서에 따라, 360도 영상의 적어도 일부 영역에 포함된 세그먼트 데이터 및 세그먼트에 포함된 각 픽셀들의 데이터를 로딩할 수 있다. 또한, 영상 처리 장치는 왜곡 보정 정보에 따라 로딩된 데이터를 변환할 수 있다.
도 3a 내지 도 3e는 일 실시예에 따른 영상 처리 장치가 360도 영상을 복수의 세그먼트로 분할하여 처리 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 3a를 참조하면, 영상 처리 장치는 360도 영상(300)을 360도 영상(300)의 촬영 장치인 카메라의 중심축에 따라 4분면(quadrant)으로 분할할 수 있다.
도 3b를 참조하면, 영상 처리 장치가 360도 영상(300)으로부터 분할된 4분면 각각(310, 320, 330, 340)은 서로 다른 방향의 비선형성(non-linearity)을 가짐을 확인할 수 있다. 360도 영상(300)의 4분면 각각(310, 320, 330, 340)은 구(sphere)에 투사되는 경우, 형태 및 크기가 왜곡될 수 있다.
이러한 왜곡을 방지하기 위해, 360도 영상(300)의 4분면 각각(310, 320, 330, 340)에 세그먼테이션(segmentation)이 수행될 수 있다. 예를 들어, 영상 처리 장치는 360도 영상(300)의 4분면 각각(310, 320, 330, 340)을 7x7의 복수의 세그먼트로 분할하는 세그먼테이션을 수행할 수 있다.
360도 영상(300)이 투사되는 경우, 이를 구성하는 복수의 세그먼트 각각은 서로 오버랩될 수 있다. 이에 따라, 이미 로딩된 세그먼트의 이용을 최대화하고, 세그먼트를 요청하고 이를 읽어들이는 횟수를 줄이기 위해, 일 실시예에 따른 영상 처리 장치는 세그먼테이션을 수행한 후에, 복수의 세그먼트가 바이패스(bypass)되는 순서를 결정할 수 있다. 예를 들어, 영상 처리 장치는 세그먼트의 위치 및 360도 영상(300)이 촬영된 카메라의 파라미터에 기초하여 복수의 세그먼트가 바이패스되는 순서를 결정할 수 있다. 이에 대해서는 도 3c 내지 도 3e를 참조하여 후술하도록 한다.
도 3c를 참조하면, 카메라의 피치 값이 π/4 이상이고 3π/4 이내의 범위에 해당하는 경우, 영상 처리 장치에서 결정되는 복수의 세그먼트의 바이패스 순서가 도시되어 있다. 본 실시예에서, 영상 처리 장치는 제 1 사분면(310) 및 제 4 사분면(340)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 왼쪽 방향으로 결정할 수 있다. 또한, 영상 처리 장치는 제 2 사분면(320) 및 제 3 사분면(330)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 오른쪽 방향으로 결정할 수 있다.
도 3d를 참조하면, 카메라의 피치 값이 π/4 미만인 경우, 복수의 세그먼트의 바이패스 순서가 도시되어 있다. 본 실시예에서, 영상 처리 장치는 제 1 사분면(310) 및 제 3 사분면(330)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 왼쪽 방향으로 결정할 수 있다. 또한, 영상 처리 장치는 제 2 사분면(320) 및 제 4 사분면(340)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 오른쪽 방향으로 결정할 수 있다.
도 3e를 참조하면, 카메라의 피치 값이 3π/4를 초과하는 경우, 복수의 세그먼트의 바이패스 순서가 도시되어 있다. 본 실시예에서, 영상 처리 장치는 제 1 사분면(310) 및 제 3 사분면(330)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 오른쪽 방향으로 결정할 수 있다. 또한, 영상 처리 장치는 제 2 사분면(320) 및 제 4 사분면(340)에 포함되는 복수의 세그먼트가 바이패스되는 순서를 왼쪽 방향으로 결정할 수 있다.
도 4는 일 실시예에 따른 영상 처리 장치가 세그먼트 내의 픽셀 처리 순서를 결정하기 위해 정의하는 탑 버텍스(top vertex)를 설명하기 위한 도면이다.
일 실시예에 따라, 세그먼트 내에서 픽셀이 처리되는 순서는 도 3을 참조하여 전술한 4분면 및 카메라의 피치에 기초할 수 있다. 각 세그먼트에서 픽셀 처리는 탑 버텍스로부터 개시될 수 있다. 도 4를 참조하면, 세그먼트 (400)내에서 탑 버텍스들인 V0(410), V1(420), V2(430) 및 V3(440) 중 어느 하나로부터 픽셀 처리가 개시될 수 있다.
도 5는 일 실시예에 따른 영상 처리 장치가 세그먼트(400) 내의 픽셀을 처리하는 방법을 설명하기 위한 도면이다.
도 5를 참조하면, 일 실시예에 따른 영상 처리 장치는 레이턴시(latency)를 줄이기 위해, 세그먼트(400)의 경계 영역(510)을 우선적으로 처리할 수 있다. 예를 들어, 영상 처리 장치는 픽셀 처리가 개시되는 탑 버텍스가 V3(440)로 결정된 경우, V3(440)를 시작지점으로 하여 세그먼트(400)의 경계 영역(510)을 우선적으로 처리할 수 있다. 영상 처리 장치는 세그먼트(400)의 경계 영역(510)을 우선적으로 처리함으로써 세그먼트(400)의 픽셀 처리에 필요한 데이터를 미리 로드(load)할 수 있다.
도 6a 및 도 6b는 일 실시예에 따른 영상 처리 장치가 세그먼트(400) 내의 픽셀 처리 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 6a를 참조하면, 영상 처리 장치는 세그먼트(400) 내에서 픽셀 처리가 개시되는 탑 버텍스를 V0(410)로 결정할 수 있다. 영상 처리 장치는 세그먼트의 바이패스 순서 및 카메라 피치 중 적어도 하나를 기초로 픽셀 처리가 개시되는 탑 버텍스를 결정할 수 있으나, 이는 일 예일 뿐, 다른 예에 따라, 임의로 픽셀 처리가 개시되는 탑 버텍스가 결정될 수도 있다. 영상 처리 장치는 세그먼트(400) 내에 포함된 10x10의 픽셀들의 처리 순서를 V0(410)를 시작점으로 하여 오른쪽 방향으로 결정할 수 있다.
다른 예에 따라, 도 6b를 참조하면, 영상 처리 장치는 세그먼트(400) 내에서 픽셀 처리가 개시되는 탑 버텍스를 V3(440)로 결정할 수 있다. 영상 처리 장치는 세그먼트(400) 내에 포함된 10x10의 픽셀들의 처리 순서를 V3(440)를 시작점으로 하여 왼쪽 방향으로 결정할 수 있다.
도 7은 일 실시예에 따른 영상 처리 장치가 360도 영상이 촬영된 카메라의 파라미터에 기초하여 영상 벡터를 결정하는 방법을 설명하기 위한 도면이다.
도 7을 참조하면, 영상 처리 장치는 360도 영상이 투사되는 구(700)를 가정할 때, 카메라의 위치 정보에 기초하여 360도 영상이 투사되는 구의 중심(710)으로부터 영상의 중심(750)까지의 벡터인 영상 벡터를 결정할 수 있다. 이하에서는, 영상 벡터를 결정하는 방법을 보다 구체적으로 설명하도록 한다.
영상 처리 장치는 카메라의 위치를 요(yaw), 피치(pitch) 및 롤(roll)의 값으로 정의할 수 있다. 본 실시예에서, 카메라의 요, 피치 및 롤의 값은 각각
Figure pat00001
,
Figure pat00002
Figure pat00003
인 것으로 가정한다.
영상 처리 장치는 카메라의 위치를 기초로 구의 중심(710)으로부터 영상의 평면에 수직 방향에 해당하는 카메라 방향 벡터인
Figure pat00004
(720)의 (X, Y, Z) 좌표를 하기의 수학식 1에 따라 결정할 수 있다.
[수학식 1]
Figure pat00005
Figure pat00006
Figure pat00007
또한, 영상 처리 장치는 영상 평면의 중심(750)으로부터 시작되는 카메라의 상측 방향 벡터인
Figure pat00008
(730)의 (X, Y, Z) 좌표를 하기의 수학식 2에 따라 결정할 수 있다.
[수학식 2]
Figure pat00009
Figure pat00010
Figure pat00011
상기의 수학식 2에서,
Figure pat00012
은 카메라의 FOV(Field of View)에 의존하는(depending on) 수직 계수를 나타낸다.
영상 처리 장치는 영상 평면의 중심(750)으로부터 시작되는 카메라의 우측 방향 벡터인
Figure pat00013
(740)의 (X, Y, Z) 좌표를 하기의 수학식 3에 따라 결정할 수 있다.
[수학식 3]
Figure pat00014
Figure pat00015
Figure pat00016
상기의 수학식 3에서,
Figure pat00017
은 카메라의 FOV(Field of View)에 의존하는(depending on) 수평 계수를 나타낸다.
영상 처리 장치는
Figure pat00018
(720),
Figure pat00019
(730) 및
Figure pat00020
(740)의 값을 기초로 구의 중심(710)으로부터 이미지의 중심(750) 방향을 향하는 영상 벡터인
Figure pat00021
를 다음의 수학식 4에 따라 결정할 수 있다.
[수학식 4]
Figure pat00022
Figure pat00023
도 8은 일 실시예에 따른 영상 처리 장치가 360도 영상 처리를 위해 기하학 수차(geometric aberration)를 보정하는 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 360도 영상 중 적어도 일부 영역(810)을 사용자의 양안에 투사하는데 이용되는 광학 시스템(820)은 한 쌍의 렌즈로 구성될 수 있다. 한편, 광학 시스템을 구성하는 한 쌍의 렌즈로 인해, 배럴 왜곡(barrel distortion) 또는 핀쿠션 왜곡(pincushion distortion) 등의 기하학 수차가 발생될 수 있다.
일 실시예에 따른 영상 처리 장치는 라그랑쥬 불변치(Lagrange invariant) 또는 스미스-헬름홀츠 불변치(Smith-Helmholtz invariant)와 같은 광학 불변치(optical invariant)에 기초하여 기하학 수차를 보정할 수 있다.
예를 들어, 영상 처리 장치는 360도 영상 중 적어도 일부 영역(810)이 광학 시스템(820)을 통해 투사됨에 따라 기하학 수차가 발생된 영상(830)을 획득할 수 있다. 영상 처리 장치는 광학 역전파(optical back propagation) 접근 방식에 따라, 360도 영상 중 적어도 일부 영역(810)에 포함된 복수의 픽셀들 각각의 값을 미리 보정할 수 있다. 즉, 영상 처리 장치는 왜곡이 발생되는 반대 방향으로 픽셀들을 선-왜곡시킬 수 있다.
영상 처리 장치에서 선-왜곡된 영상이 광학 시스템(820)을 통해 투사되는 경우, 광학 시스템(820)에 의해 발생되는 왜곡이 상쇄되어, 기하학 수차가 발생되지 않은 투사 영상(840)이 획득될 수 있다.
도 9a 및 도 9b는 일 실시예에 따른 영상 처리 장치가 스테레오스코픽(stereoscopic) 효과를 얻기 위해 360도 영상을 처리하는 방법을 설명하기 위한 도면이다.
영상 처리 장치는 360도 영상의 적어도 일부 영역(910)을 사용자의 양안에 각각 투사하여 입체감을 지각하도록 할 수 있다. 이 때, 사용자가 입체감을 지각할 수 있도록 사용자의 양안에 투사되는 각각의 영상은 서로 상이할 수 있다.
예를 들어, 도 9a를 참조하면, 사용자의 양안에 각각 360도 영상의 적어도 일부 영역(910)이 투사되는 경우, 좌안의 중심(930)을 기초로 360도 영상의 적어도 일부 영역이 투사되는 범위(935)와 우안의 중심(940)을 기초로 360도 영상의 적어도 일부 영역이 투사되는 범위(945)가 상이할 수 있다. 이에 따라 영상 처리 장치는 좌안과 우안에 각각 투사되는 영상을 상이하게 생성함으로써, 스테레오스코픽 효과를 얻을 수 있다.
도 9b를 참조하면, 일 실시예에 따른 영상 처리 장치는 스테레오스코픽 효과를 얻기 위해, 타겟 영상(910)에 포함된 픽셀
Figure pat00024
(912)이 왼쪽 눈과 오른쪽 눈에 대해 각각 어느 지점에 투사되는지 여부를 결정할 수 있다. 예를 들어, 구의 중심을 기초로 타겟 영상(910)에 포함된 픽셀
Figure pat00025
(912)이 투사되는 지점이 P(927)인 경우, 영상 처리 장치는 왼쪽 눈에 투사되는 영상에서
Figure pat00026
(912)에 대응되는 픽셀이
Figure pat00027
(937)에 투사되도록 처리하고 오른쪽 눈에 투사되는 영상에서
Figure pat00028
(912)에 대응되는 픽셀은
Figure pat00029
(947)에 투사되도록 처리하여 양안 시차가 적용된 좌안 영상 및 우안 영상을 생성할 수 있다.
한편, 영상 처리 장치는 좌안과 우안의 특성에 기초하여 기 생성된 룩업 테이블을 기초로 양안 시차가 적용된 좌안 영상 및 우안 영상을 보다 효율적으로 생성할 수 있다.
도 10은 일 실시예에 따른 영상 처리 장치가 360도 영상 처리를 위해 색 수차를 보정하는 방법을 수행하는 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 픽셀을 구성하는 각각의 색상이 광학 시스템(1010)을 통해 투사되는 경우, 색상 별로 파장 값이 상이함에 따라 서로 다른 지점에 상이 맺히는 것을 확인할 수 있다. 예를 들어, 픽셀이 RGB(Red, Green, Blue) 컴포넌트로 구성되는 경우, Green 컴포넌트의 상이 맺히는 지점(1020)을 기준으로, Blue 컴포넌트의 상이 맺히는 지점(1030)은 앞쪽에 위치하고 Red 컴포넌트의 상이 맺히는 지점(1040)은 뒤쪽에 위치함을 확인할 수 있다.
일 실시예에 따른 영상 처리 장치는 도 9b를 참조하여 전술한 바와 같이, 사용자의 좌안과 우안에 각각 투사되는 영상이 결정된 경우, 결정된 좌안 영상 및 우안 영상 각각의 픽셀에 포함된 RGB 컴포넌트를 색 수차 값을 고려하여 보정할 수 있다. 이 때, 색 수차가 발생하는 것을 보정하기 위해 광학 시스템의 파라미터를 기초로 역전파(back-propagation) 방법이 적용될 수 있다. 즉, 영상 처리 장치는 R 컴포넌트 및 B 컴포넌트의 상이 G 컴포넌트의 상이 맺히는 지점에 맺힐 수 있도록 R 컴포넌트 및 B 컴포넌트의 값을 미리 왜곡시킬 수 있다. 본 실시예에서, 광학 시스템의 파라미터는 광학 시스템(1010)을 구성하는 적어도 하나의 렌즈의 굴절률, 초점 거리 및 곡률 반지름 등을 포함할 수 있다.
도 11a는 일 실시예에 따른 영상 처리 장치가 영상의 픽셀 벡터를 결정하는 방법을 설명하기 위한 도면이다.
도 11a에서는, 도 7을 참조하여 전술한 바와 같이, 카메라의 위치 정보를 기초로
Figure pat00030
(1120),
Figure pat00031
(1130),
Figure pat00032
(1140) 및 구의 중심(1110)으로부터 이미지의 중심(1150) 방향을 향하는 영상 벡터인
Figure pat00033
가 획득된 것으로 가정한다. 도 11의
Figure pat00034
(1120),
Figure pat00035
(1130),
Figure pat00036
(1140) 및
Figure pat00037
은 도 7의
Figure pat00038
(720),
Figure pat00039
(730),
Figure pat00040
(740) 및
Figure pat00041
와 각각 대응될 수 있다.
일 실시예에 따른 영상 처리 장치는 영상에서, 예를 들어 좌표(i, j)에 위치한 픽셀 P(1160)에 대한 픽셀 벡터인
Figure pat00042
(1170)를 다음의 수학식 5에 기초하여 결정할 수 있다.
[수학식 5]
Figure pat00043
상기의 수학식 5에서,
Figure pat00044
Figure pat00045
는 영상에서의 픽셀의 상대적인 위치를 나타내며, 다음의 수학식 6에 기초하여 결정될 수 있다.
[수학식 6]
Figure pat00046
Figure pat00047
상기의 수학식 6에서,
Figure pat00048
Figure pat00049
는 각각 영상의 폭(width)과 높이(height)를 나타낸다.
한편, 도 11a에서의 픽셀 P(1160)는 blue 색상에 대한 픽셀을 타겟으로 한다. Red 색상 및 Green 색상에 대한 픽셀 벡터는 도 10을 참조하여 전술한 색차수를 고려하여, 이를 보정한 픽셀의 위치를 기준으로 결정될 수 있다.
도 11b는 일 실시예에 따른 영상 처리 장치가 영상 내의 픽셀이 구에 투사되는 경우 투사 지점을 결정하는 방법을 설명하기 위한 도면이다.
도 11b를 참조하면, 일 실시예에 따른 영상 처리 장치는 도 11a를 참조하여 전술한 픽셀 P(1160)가 구(1100)에 투사되는 경우 구(1100) 상에서의 투사 지점
Figure pat00050
(1180)을 다음의 수학식 7에 기초하여 결정할 수 있다.
[수학식 7]
Figure pat00051
,
Figure pat00052
상기의 수학식 7에서,
Figure pat00053
(1160)는 도 11a를 참조하여 전술한 픽셀 벡터에 대응될 수 있으며,
Figure pat00054
,
Figure pat00055
Figure pat00056
Figure pat00057
(1160)의 카르테시안(cartesian) 좌표를 나타낸다. 또한, 수학식 7에서
Figure pat00058
Figure pat00059
은 라디안(radian)의 각도 단위(angular unit)로부터 픽셀 단위(pixel unit)로의 변환을 위한 스케일 팩터를 나타낸다.
도 12a 및 도 12b는 일 실시예에 따른 영상 처리 장치가 360도 영상을 처리하는 방법을 보다 구체적으로 설명하기 위한 흐름도이다.
단계 S1210에서, 영상 처리 장치는 입력 데이터를 획득할 수 있다. 여기에서, 입력 데이터에는 소스 영상(1211), 카메라 파라미터(1212) 및 광학 시스템 파라미터(1213)가 포함될 수 있다. 소스 영상(1211)은 360도 영상일 수 있다. 또한, 카메라 파라미터(1212)는 카메라의 위치 정보 등을 포함할 수 있고, 광학 시스템 파라미터(1213)는 광학 시스템을 구성하는 적어도 하나의 렌즈의 굴절률, 초점 거리 및 곡률 반지름 등을 포함할 수 있다.
단계 S1215에서, 영상 처리 장치는 카메라의 위치를 결정할 수 있다. 이에 따라, 영상 처리 장치는 3차원 카메라 좌표(1216)를 획득할 수 있다.
단계 S1220에서, 영상 처리 장치는 영상을 준비(prepare)할 수 있다.
영상을 준비하는 단계는 세그멘테이션(S1221) 및 세그먼트 내의 픽셀 바이패싱 단계(S1222)로 구성될 수 있다.
단계 S1221에서, 영상 처리 장치는 화면을 기 설정된 크기의 복수의 세그먼트로 분할하는 세그멘테이션을 수행할 수 있다. 세그멘테이션 수행 시, 360도 영상의 투사의 비선형성에 따라, 세그먼트의 위치 및 카메라의 위치 중 적어도 하나에 기초하여 세그먼트 처리 순서가 결정될 수 있다.
단계 S1222에서, 영상 처리 장치는 세그먼트 내에 포함된 복수의 픽셀에 대해 바이패싱 순서를 결정할 수 있다. 이 때, 영상 처리 장치는 레이턴시를 최소화하기 위해, 세그먼트의 경계 지점에 위치한 픽셀을 우선적으로 로딩할 수 있다. 이후, 영상 처리 장치는 설정된 탑 버텍스에서부터 기 설정된 방향에 따라 픽셀들을 바이패싱할 수 있다.
한편, 단계 S1220의 화면 준비 단계가 수행됨에 따라 세그먼트 내의 픽셀들의 좌표(1223)가 획득될 수 있다.
단계 S1225에서, 영상 처리 장치는 기하학 수차를 보정할 수 있다. 영상 처리 장치는 광학 시스템의 파라미터에 기초하여 영상에 발생될 수 있는 기하학 수차를 예측할 수 있다. 여기에서, 기하학 수차는 예를 들어, 배럴 왜곡 및 핀쿠션 왜곡 등을 포함할 수 있다.
일 실시예에 따른 영상 처리 장치는 예측된 기하학 수차의 역 방향으로 픽셀의 좌표를 미리 왜곡시킬 수 있다. 이에 따라, 영상 처리 장치는 선-왜곡된 픽셀 좌표(1226)를 획득할 수 있다.
단계 S1230에서, 영상 처리 장치는 영상 내의 픽셀 벡터를 획득할 수 있다. 여기에서, 픽셀 벡터는 영상이 투사되는 구의 중심으로부터 선-왜곡된 픽셀 좌표(1226)까지의 벡터일 수 있다. 이에 따라 영상 처리 장치는 픽셀 벡터의 3차원 좌표(1231)를 획득할 수 있다.
단계 S1235에서, 영상 처리 장치는 영상을 구에 투사할 수 있다.
일 실시예에 따른 영상 처리 장치는 영상이 구에 투사되는 경우, 구 상에서의 픽셀의 위치를 나타내는 구형 좌표를 획득할 수 있다. 이는 도 11b를 참조하여 전술한 바와 대응될 수 있다. 이에 따라, 영상 처리 장치는 투사된 픽셀의 구형 좌표(1236)를 획득할 수 있다.
단계 S1240에서, 영상 처리 장치는 픽셀에 대한 델타값을 결정할 수 있다. 여기에서, 델타값은 스테레오스코픽 효과를 위한 델타값 및 색수차 보정을 위한 델타값 중 적어도 하나를 포함할 수 있다.
예를 들어, 단계 S1241에서, 영상 처리 장치는 스테레오스코픽 델타값을 결정할 수 있다. 일 실시예에 따른 영상 처리 장치는 영상을 시청하는 사용자가 3차원 깊이감을 느낄 수 있도록, 좌안 영상과 우안 영상을 서로 상이하게 생성할 수 있다. 이 때, 영상에 포함된 픽셀들 각각을 인간의 시각적 특성에 따라 이동시킴으로써 좌안 영상 및 우안 영상이 생성될 수 있다. 영상 처리 장치는 좌안 영상 및 우안 영상을 생성하기 위해 픽셀을 이동시키기 위한 스테레오스코픽 델타값을 결정할 수 있다. 여기에서, 좌안 영상 및 우안 영상을 위한 스테레오스코픽 델타값(1242)은 룩업테이블 형태로 제공될 수도 있다.
또한, 단계 S1243에서, 영상 처리 장치는 색상 델타값을 결정할 수 있다. 영상에 포함된 픽셀들 각각을 구성하는 서로 다른 색상 컴포넌트(component)들은 광학 시스템의 렌즈를 통과하는 경우, 파장에 따른 굴절률의 차이에 의해 초점 거리가 서로 상이할 수 있다. 영상 처리 장치는 색상 별로 서로 초점이 맺히는 위치가 상이한 점을 보정하기 위해, 색상 델타값을 결정할 수 있다. 이 때, 영상 처리 장치는 픽셀이 Red, Green, Blue 색상으로 구성된 경우, Green 컴포넌트를 기준으로 Red 컴포넌트 및 Blue 컴포넌트에 대한 델타값(1244)을 결정할 수 있다.
단계 S1250에서, 영상 처리 장치는 픽셀의 구형 좌표(1236) 및 좌안 영상과 우안 영상을 위한 스테레오스코픽 델타값(1242)을 기초로 스테레오스코픽 효과를 생성할 수 있다.
스테레오스코픽 효과를 생성하는 단계는 좌안 영상의 좌표를 보정하는 단계(S1251) 및 우안 영상의 좌표를 보정하는 단계(S1252)로 구성될 수 있다. 단계 S1251에서, 영상 처리 장치는 픽셀의 구형 좌표(1236)를 좌안 영상을 위한 스테레오스코픽 델타값을 기초로 보정할 수 있다. 또한, 단계 S1252에서, 영상 처리 장치는 픽셀의 구형 좌표(1236)를 우안 영상을 위한 스테레오스코픽 델타값을 기초로 보정할 수 있다.
영상 처리 장치는 스테레오스코픽 효과를 생성한 결과, Green 컴포넌트에 대한 좌안 영상 및 우안 영상의 픽셀의 구형 좌표(1253)를 획득할 수 있다.
단계 S1255에서, 영상 처리 장치는 Green 컴포넌트에 대한 좌안 영상 및 우안 영상의 픽셀의 구형 좌표(1253)를 기초로 색 수차를 보정할 수 있다.
색 수차를 보정하는 단계는 좌안 영상의 색상을 선-왜곡(pre-distort)하는 단계(S1256) 및 우안 영상의 색상을 선-왜곡하는 단계(S1257)로 구성될 수 있다.
단계 S1256에서, 영상 처리 장치는 Green 컴포넌트에 대한 좌안 영상의 픽셀의 구형 좌표를 Blue 컴포넌트 및 Red 컴포넌트에 대한 델타값을 기초로 보정할 수 있다. 이 때, 도 10을 참조하여 전술한 역전파법이 이용될 수 있다.
단계 S1257에서, 영상 처리 장치는 Green 컴포넌트에 대한 우안 영상의 픽셀의 구형 좌표를 Blue 컴포넌트 및 Red 컴포넌트에 대한 델타값을 기초로 보정할 수 있다.
단계 S1260에서, 영상 처리 장치는 색수차 보정을 수행한 결과 획득된 RGB 색상에 대한 세그먼트 경계의 구형 좌표(1258)를 기초로 세그먼트 경계를 분석할 수 있다.
단계 S1265에서, 영상 처리 장치는 데이터 요청을 생성할 수 있다. 영상 처리 장치는 레이턴시를 줄이기 위해, 데이터 요청 생성 시, 세그먼트 경계에 위치한 픽셀에 대한 데이터 요청의 순서를 우선적으로 생성할 수 있다. 또한, 영상 처리 장치는 세그먼트의 위치 및 카메라의 위치 등을 고려하여 데이터 요청 순서를 결정할 수 있다.
단계 S1270에서, 영상 처리 장치는 데이터 요청에 따라 소스 영상(1211)으로부터 획득한 데이터를 저장할 수 있다.
단계 S1275에서, 영상 처리 장치는 소스 영상의 세그먼트(1271) 및 RGB 색상에 대한 좌안 영상 및 우안 영상의 픽셀의 구형 좌표(1259)를 기초로 출력 영상을 생성할 수 있다.
영상 처리 장치가 출력 영상을 생성하는 단계는 좌안 영상을 생성하는 단계(S1276) 및 우안 영상을 생성하는 단계(S1277)로 구성될 수 있다.
단계 S1280에서, 영상 처리 장치는 생성된 영상을 출력할 수 있다.
한편, 도 12를 참조하여 전술한 각 단계들은 설명의 편의를 위해 시계열적으로 설명하였을 뿐, 각 단계들이 수행되는 순서가 전술한 예에 한정되는 것은 아니다.
도 13 및 도 14는 일 실시예에 따른 영상 처리 장치(1300)의 블록도이다.
도 13에 도시된 바와 같이, 일 실시예에 따른 영상 처리 장치(1300)는 프로세서(1310) 및 메모리(1320)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 영상 처리 장치(1300)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 영상 처리 장치(1300)는 구현될 수 있다.
예를 들어 일 실시예에 따른 영상 처리 장치(1300)는, 프로세서(1310) 및 메모리(1320) 이외에 출력부(1330), 입력부(1340), 통신부(1350) 및 A/V 입력부(1360)를 더 포함할 수도 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
프로세서(1310)는 통상적으로 영상 처리 장치(1300)의 전반적인 동작 및 영상 처리 장치(1300)의 내부 구성 요소들 사이의 신호 흐름을 제어하고, 데이터를 처리하는 기능을 수행한다. 예를 들어, 프로세서(1310)는, 메모리(1320)에 저장된 프로그램들(하나 이상의 인스트럭션들)을 실행함으로써, 출력부(1330), 입력부(1340), 통신부(1350) 및 A/V 입력부(1360) 등을 전반적으로 제어할 수 있다.
일 실시예에 따른 프로세서(1320)는 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정할 수 있다. 또한, 프로세서(1320)는 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터로부터 예측된 360도 영상의 왜곡을 기초로 왜곡 보정 정보를 획득할 수 있다. 프로세서(1320)는 결정된 처리 순서 및 획득된 왜곡 보정 정보에 따라 360도 영상의 적어도 일부 영역의 데이터를 처리할 수 있다.
메모리(1320)는 프로세서(1310)의 처리 및 제어를 위한 프로그램들(예를 들어, 하나 이상의 인스트럭션들, 학습 네트워크 모델)을 저장할 수 있고, 영상 처리 장치(1300)로 입력되거나 영상 처리 장치(1300)로부터 출력되는 데이터(예를 들어, 부가 정보)를 저장할 수도 있다.
출력부(1330)는 프로세서(1310)에서 처리된 360 영상의 적어도 일부 영역에 관한 정보를 오디오 신호 또는 비디오 신호의 형태로 출력할 수 있으며, 출력부(1330)는 디스플레이부(1331) 및 음향 출력부(1332)를 포함할 수 있다.
디스플레이부(1331)는 영상 처리 장치(1300)에서 처리되는 정보를 표시 출력한다. 디스플레이부(1331)와 터치 패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(1331)는 출력 장치 이외에 입력 장치로도 사용될 수 있다.
음향 출력부(1332)는 통신부(1350)로부터 수신되거나 메모리(1320)에 저장된 오디오 데이터를 출력한다. 음향 출력부(1332)는 360도 영상의 적어도 일부 영역에 대응되는 사운드 데이터를 출력할 수 있다.
입력부(1340)는 사용자가 영상 처리 장치(1300)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 입력부(1340)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.
일 실시예에 따른 통신부(1350)는 카메라 등의 촬영 장치에서 촬영된 360도 영상을 수신할 수 있다.
또한, 통신부(1350)는 외부 서버 및 기타 외부 장치(예를 들어, 객체)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(1350)는 근거리 통신부(1351) 및 이동 통신부(1352)를 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(1351)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, NFC(Near Field Communication)/RFID(Radio-Frequency Identification) 통신부, WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(1352)는 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다.
A/V(Audio/Video) 입력부(1360)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1361)와 마이크로폰(1362) 등이 포함될 수 있다.
카메라(1361)는 카메라 인식 범위에서 360도 영상을 촬영한다. 일 실시예에 따라 카메라(1361)에 의해 촬영된 360도 영상은, 프로세서(1310)에 의해 처리되어 디스플레이부(1331)를 통해 표시될 수 있다.
마이크로폰(1362)은 360도 영상의 처리와 관련된 사용자의 음성 입력 등을 수신할 수 있다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
실시 예에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
도면에 도시된 실시 예들에서 참조 부호를 기재하였으며, 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 실시 예는 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 또한, 실시예는 동종의 또는 서로 다른 종류의 코어들, 서로 다른 종류의 CPU들을 채용할 수도 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단", "구성"과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
실시 예에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 실시 예의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, "필수적인", "중요하게" 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
실시 예의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 실시 예에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 실시 예에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 실시 예들이 한정되는 것은 아니다. 실시 예에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 실시 예를 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 실시 예의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.

Claims (19)

  1. 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 상기 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하는 단계;
    상기 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터를 기초로 예측된 상기 360도 영상의 왜곡에 따라 왜곡 보정 정보를 획득하는 단계; 및
    상기 결정된 처리 순서 및 상기 획득된 왜곡 보정 정보에 따라 상기 360도 영상의 적어도 일부 영역의 데이터를 처리하는 단계를 포함하는, 360도 영상을 처리하는 방법.
  2. 제 1 항에 있어서, 상기 처리 순서를 결정하는 단계는,
    상기 360도 영상을 상기 복수의 세그먼트로 분할하는 단계를 포함하는, 360도 영상을 처리하는 방법.
  3. 제 2 항에 있어서, 상기 분할하는 단계는,
    상기 360도 영상을 사분면(quadrant)으로 분할하는 단계; 및
    상기 분할된 사분면 각각을 상기 복수의 세그먼트로 분할하는 단계를 포함하고,
    상기 처리 순서는,
    상기 사분면 상에서의 상기 세그먼트의 위치 및 상기 카메라의 피치(pitch) 값에 기초하여 결정되는, 360도 영상을 처리하는 방법.
  4. 제 1 항에 있어서, 상기 처리 순서를 결정하는 단계는,
    상기 복수의 세그먼트 각각에 포함된 픽셀들 중 경계 영역에 위치한 픽셀이 다른 픽셀보다 우선적으로 처리되도록 처리 순서를 결정하는, 360도 영상을 처리하는 방법.
  5. 제 1 항에 있어서, 상기 왜곡 보정 정보를 획득하는 단계는,
    상기 광학 장치의 파라미터를 기초로 배럴 왜곡(barrel distortion) 및 핀쿠션 왜곡(pincushion distortion) 중 적어도 하나를 예측하는 단계를 포함하고,
    상기 왜곡 보정 정보는,
    상기 배럴 왜곡 및 상기 핀쿠션 왜곡 중 적어도 하나를 상쇄할 수 있는 픽셀 보정 정보를 포함하는, 360도 영상을 처리하는 방법.
  6. 제 1 항에 있어서,
    기 결정된 좌안 영상과 우안 영상의 변환 정보에 따라 상기 360도 영상의 적어도 일부 영역에 포함된 픽셀의 좌표 변환 값을 결정하는 단계를 더 포함하는, 360도 영상을 처리하는 방법.
  7. 제 1 항에 있어서, 상기 왜곡 보정 정보를 획득하는 단계는,
    상기 광학 장치의 파라미터를 기초로 상기 360도 영상에 포함된 픽셀의 색 수차를 예측하는 단계를 포함하고,
    상기 왜곡 보정 정보는,
    상기 예측된 색 수차를 상쇄할 수 있는 색상 별 픽셀 보정 정보를 포함하는, 360도 영상을 처리하는 방법.
  8. 제 1 항에 있어서, 상기 처리하는 단계는,
    메모리에 기 저장된 상기 영상의 적어도 일부 영역의 데이터를 상기 결정된 처리 순서에 따라 획득(read)하는 단계를 포함하는, 360도 영상을 처리하는 방법.
  9. 제 1 항에 있어서,
    상기 카메라의 파라미터에 기초하여, 상기 360도 영상의 적어도 일부 영역에 포함된 픽셀의 구면(sphere) 상에서의 좌표를 결정하는 단계를 더 포함하고,
    상기 처리하는 단계는,
    상기 결정된 좌표를 상기 결정된 처리 순서 및 상기 획득된 왜곡 정보에 따라 처리하는, 360도 영상을 처리하는 방법.
  10. 하나 이상의 인스트럭션들을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 상기 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하고,
    상기 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터로부터 예측된 상기 360도 영상의 왜곡을 기초로 왜곡 보정 정보를 획득하며,
    상기 결정된 처리 순서 및 상기 획득된 왜곡 보정 정보에 따라 상기 360도 영상의 적어도 일부 영역의 데이터를 처리하는, 360도 영상을 처리하는 장치.
  11. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 360도 영상을 상기 복수의 세그먼트로 분할하는 단계를 포함하는, 360도 영상을 처리하는 장치.
  12. 제 11 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 360도 영상을 사분면(quadrant)으로 분할하고,
    상기 분할된 사분면 각각을 상기 복수의 세그먼트로 분할하며,
    상기 처리 순서는,
    상기 사분면 상에서의 상기 세그먼트의 위치 및 상기 카메라의 피치(pitch) 값에 기초하여 결정되는, 360도 영상을 처리하는 장치.
  13. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 복수의 세그먼트 각각에 포함된 픽셀들 중 경계 영역에 위치한 픽셀이 다른 픽셀보다 우선적으로 처리되도록 처리 순서를 결정하는, 360도 영상을 처리하는 장치.
  14. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 광학 장치의 파라미터를 기초로 배럴 왜곡(barrel distortion) 및 핀쿠션 왜곡(pincushion distortion) 중 적어도 하나를 예측하고,
    상기 왜곡 보정 정보는,
    상기 배럴 왜곡 및 상기 핀쿠션 왜곡 중 적어도 하나를 상쇄할 수 있는 픽셀 보정 정보를 포함하는, 360도 영상을 처리하는 장치.
  15. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    기 결정된 좌안 영상과 우안 영상의 변환 정보에 따라 상기 360도 영상의 적어도 일부 영역에 포함된 픽셀의 좌표 변환 값을 결정하는, 360도 영상을 처리하는 장치.
  16. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 광학 장치의 파라미터를 기초로 상기 360도 영상에 포함된 픽셀의 색 수차를 예측하고,
    상기 왜곡 보정 정보는,
    상기 예측된 색 수차를 상쇄할 수 있는 색상 별 픽셀 보정 정보를 포함하는, 360도 영상을 처리하는 장치.
  17. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    메모리에 기 저장된 상기 영상의 적어도 일부 영역의 데이터를 상기 결정된 처리 순서에 따라 획득(read)하는, 360도 영상을 처리하는 장치.
  18. 제 10 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
    상기 카메라의 파라미터에 기초하여, 상기 360도 영상의 적어도 일부 영역에 포함된 픽셀의 구면(sphere) 상에서의 좌표를 결정하고,
    상기 결정된 좌표를 상기 결정된 처리 순서 및 상기 획득된 왜곡 정보에 따라 처리하는, 360도 영상을 처리하는 장치.
  19. 360도 영상을 구성하는 복수의 세그먼트 각각의 처리 순서를 세그먼트의 위치 및 상기 360도 영상이 촬영된 카메라의 파라미터에 기초하여 결정하는 동작;
    상기 360도 영상의 적어도 일부 영역이 투사되는 광학 장치의 파라미터를 기초로 예측된 상기 360도 영상의 왜곡에 따라 왜곡 보정 정보를 획득하는 동작; 및
    상기 결정된 처리 순서 및 상기 획득된 왜곡 보정 정보에 따라 상기 360도 영상의 적어도 일부 영역의 데이터를 처리하는 동작을 수행하도록 하는 프로그램이 저장된 기록매체를 포함하는 컴퓨터 프로그램 제품.

KR1020180070821A 2018-06-20 2018-06-20 360도 영상을 처리하는 방법 및 장치 KR102435519B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180070821A KR102435519B1 (ko) 2018-06-20 2018-06-20 360도 영상을 처리하는 방법 및 장치
US17/052,057 US11989849B2 (en) 2018-06-20 2019-06-20 Method and device for processing 360-degree image
PCT/KR2019/007444 WO2019245299A1 (ko) 2018-06-20 2019-06-20 360도 영상을 처리하는 방법 및 장치
CN201980041461.4A CN112313947B (zh) 2018-06-20 2019-06-20 用于处理360度图像的方法及设备
EP19823527.7A EP3764641A4 (en) 2018-06-20 2019-06-20 METHOD AND DEVICE FOR PROCESSING A 360 DEGREE IMAGE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180070821A KR102435519B1 (ko) 2018-06-20 2018-06-20 360도 영상을 처리하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190143186A true KR20190143186A (ko) 2019-12-30
KR102435519B1 KR102435519B1 (ko) 2022-08-24

Family

ID=68983308

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180070821A KR102435519B1 (ko) 2018-06-20 2018-06-20 360도 영상을 처리하는 방법 및 장치

Country Status (5)

Country Link
US (1) US11989849B2 (ko)
EP (1) EP3764641A4 (ko)
KR (1) KR102435519B1 (ko)
CN (1) CN112313947B (ko)
WO (1) WO2019245299A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020229995A1 (en) * 2019-05-10 2020-11-19 Roderick Victor Kennedy Reduction of the effects of latency for extended reality experiences
KR102522892B1 (ko) * 2020-03-12 2023-04-18 한국전자통신연구원 가상 시점 영상을 합성하기 위한 입력 영상을 제공하는 카메라 선별 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170067767A (ko) * 2014-09-15 2017-06-16 리모트리얼리티 코포레이션 컴팩트 파노라마 카메라: 광학 시스템, 장치, 이미지 형성 방법
KR20170095035A (ko) * 2016-02-12 2017-08-22 삼성전자주식회사 360도 영상 처리 방법 및 장치

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2135180A1 (en) 1992-05-08 1993-11-25 Gavin S. P. Miller Textured sphere and sperical environment map rendering using texture map double indirection
JP3711707B2 (ja) 1997-08-07 2005-11-02 ブラザー工業株式会社 画像2値化方法、画像2値化装置および記録媒体
US6486908B1 (en) 1998-05-27 2002-11-26 Industrial Technology Research Institute Image-based method and system for building spherical panoramas
JP4004346B2 (ja) 2002-07-31 2007-11-07 富士フイルム株式会社 撮像装置及びディストーション補正方法
JP4324435B2 (ja) * 2003-04-18 2009-09-02 三洋電機株式会社 立体視用映像提供方法及び立体映像表示装置
US8538134B2 (en) 2007-10-04 2013-09-17 Samsung Electronics Co., Ltd. Method and apparatus for receiving and generating image data stream including parameters for displaying local three dimensional image
KR101390810B1 (ko) 2007-10-04 2014-05-26 삼성전자주식회사 로컬 3차원 영상을 재생하기 위한 파라미터를 포함하는영상 데이터스트림을 수신하는 방법 및 장치, 그리고 로컬3차원 영상을 재생하기 위한 파라미터를 포함하는 영상데이터스트림을 생성하는 방법 및 장치
US8217956B1 (en) 2008-02-29 2012-07-10 Adobe Systems Incorporated Method and apparatus for rendering spherical panoramas
JP4857297B2 (ja) 2008-03-11 2012-01-18 株式会社日立製作所 映像処理装置
JP5790345B2 (ja) 2011-09-07 2015-10-07 株式会社リコー 画像処理装置、画像処理方法、プログラムおよび画像処理システム
CN111182311A (zh) 2012-04-25 2020-05-19 浙江大学 三维视频序列辅助信息的解码方法、编码方法及装置
EP2870751A4 (en) 2012-07-04 2016-03-09 Intel Corp PANORAMIC 3D VIDEO CODING
WO2014043814A1 (en) 2012-09-21 2014-03-27 Tamaggo Inc. Methods and apparatus for displaying and manipulating a panoramic image by tiles
JP2014123908A (ja) 2012-12-21 2014-07-03 Jvc Kenwood Corp 画像処理装置、画像切り出し方法、及びプログラム
US9451162B2 (en) * 2013-08-21 2016-09-20 Jaunt Inc. Camera array including camera modules
CN106416239B (zh) * 2014-05-29 2019-04-09 奈克斯特Vr股份有限公司 用于交付内容和/或回放内容的方法和装置
US20150346812A1 (en) 2014-05-29 2015-12-03 Nextvr Inc. Methods and apparatus for receiving content and/or playing back content
US10204658B2 (en) 2014-07-14 2019-02-12 Sony Interactive Entertainment Inc. System and method for use in playing back panorama video content
US10368011B2 (en) * 2014-07-25 2019-07-30 Jaunt Inc. Camera array removing lens distortion
US9363569B1 (en) * 2014-07-28 2016-06-07 Jaunt Inc. Virtual reality system including social graph
US9600929B1 (en) 2014-12-01 2017-03-21 Ngrain (Canada) Corporation System, computer-readable medium and method for 3D-differencing of 3D voxel models
WO2016168913A1 (en) * 2015-04-22 2016-10-27 Esight Corp. Methods and devices for optical aberration correction
US10038887B2 (en) 2015-05-27 2018-07-31 Google Llc Capture and render of panoramic virtual reality content
US10217189B2 (en) 2015-09-16 2019-02-26 Google Llc General spherical capture methods
US10062151B2 (en) 2016-01-21 2018-08-28 Samsung Electronics Co., Ltd. Image deblurring method and apparatus
CN106991650B (zh) 2016-01-21 2020-09-15 北京三星通信技术研究有限公司 一种图像去模糊的方法和装置
US10433025B2 (en) * 2016-05-10 2019-10-01 Jaunt Inc. Virtual reality resource scheduling of process in a cloud-based virtual reality processing system
US10650526B2 (en) 2016-06-28 2020-05-12 Canon Kabushiki Kaisha Image processing apparatus, image capturing apparatus, image processing method, and storage medium
WO2018009746A1 (en) * 2016-07-08 2018-01-11 Vid Scale, Inc. 360-degree video coding using geometry projection
US10437545B2 (en) * 2016-12-28 2019-10-08 Ricoh Company, Ltd. Apparatus, system, and method for controlling display, and recording medium
CN108259782A (zh) * 2016-12-28 2018-07-06 株式会社理光 图像处理装置、摄影系统、图像处理方法
US20190289206A1 (en) * 2018-03-15 2019-09-19 Keiichi Kawaguchi Image processing apparatus, image capturing system, image processing method, and recording medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170067767A (ko) * 2014-09-15 2017-06-16 리모트리얼리티 코포레이션 컴팩트 파노라마 카메라: 광학 시스템, 장치, 이미지 형성 방법
KR20170095035A (ko) * 2016-02-12 2017-08-22 삼성전자주식회사 360도 영상 처리 방법 및 장치

Also Published As

Publication number Publication date
KR102435519B1 (ko) 2022-08-24
CN112313947B (zh) 2023-07-18
WO2019245299A1 (ko) 2019-12-26
EP3764641A1 (en) 2021-01-13
EP3764641A4 (en) 2021-04-14
CN112313947A (zh) 2021-02-02
US20210142442A1 (en) 2021-05-13
US11989849B2 (en) 2024-05-21

Similar Documents

Publication Publication Date Title
CN113412614B (zh) 使用深度图像的三维定位
KR102644273B1 (ko) 상이한 fov를 갖는 카메라들을 이용한 시차 추정 시스템 및 방법
US11533489B2 (en) Reprojecting holographic video to enhance streaming bandwidth/quality
CN107660337B (zh) 用于从鱼眼摄像机产生组合视图的系统及方法
KR101978896B1 (ko) 스테레오 렌더링 시스템
EP2774022B1 (en) Amplifying audio-visual data based on user's head orientation
CN106846410B (zh) 基于三维的行车环境成像方法及装置
US10962772B2 (en) Method of removing reflection area, and eye tracking method and apparatus
CN110809786A (zh) 校准装置、校准图表、图表图案生成装置和校准方法
US10948730B2 (en) Dynamic panel masking
CN107911621A (zh) 一种全景图像的拍摄方法、终端设备以及存储介质
KR102637901B1 (ko) 전자 장치에 의한 돌리 줌 효과 제공 방법 및 상기 방법에서 사용되는 전자 장치
IL275047B2 (en) Install a complex display in mind
US20190266802A1 (en) Display of Visual Data with a Virtual Reality Headset
WO2020048461A1 (zh) 三维立体显示方法、终端设备及存储介质
KR102435519B1 (ko) 360도 영상을 처리하는 방법 및 장치
US20220383467A1 (en) Dirty lens image correction
CN110874868A (zh) 数据处理方法、装置、终端设备及存储介质
CN110874135B (zh) 光学畸变的校正方法、装置、终端设备及存储介质
CN109582134B (zh) 信息显示的方法、装置及显示设备
RU2020126876A (ru) Устройство и способ формирования изображений вида
CN110874867A (zh) 显示方法、装置、终端设备及存储介质
US10915736B2 (en) Image processing method and apparatus
KR20220045799A (ko) 전자 장치 및 그 동작 방법
CN113848644B (zh) Ar眼镜的焦距调节方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right