KR20190074490A - 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법 - Google Patents

이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법 Download PDF

Info

Publication number
KR20190074490A
KR20190074490A KR1020170175890A KR20170175890A KR20190074490A KR 20190074490 A KR20190074490 A KR 20190074490A KR 1020170175890 A KR1020170175890 A KR 1020170175890A KR 20170175890 A KR20170175890 A KR 20170175890A KR 20190074490 A KR20190074490 A KR 20190074490A
Authority
KR
South Korea
Prior art keywords
image
images
region
polyhedron
processor
Prior art date
Application number
KR1020170175890A
Other languages
English (en)
Other versions
KR102442089B1 (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 KR1020170175890A priority Critical patent/KR102442089B1/ko
Priority to US16/771,031 priority patent/US11258938B2/en
Priority to PCT/KR2018/016370 priority patent/WO2019125017A1/ko
Publication of KR20190074490A publication Critical patent/KR20190074490A/ko
Application granted granted Critical
Publication of KR102442089B1 publication Critical patent/KR102442089B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06K9/00208
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/631Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • H04N23/635Region indicators; Field of view indicators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/67Focus control based on electronic image sensor signals
    • H04N23/675Focus control based on electronic image sensor signals comprising setting of focusing regions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums

Abstract

전자 장치가 개시된다. 전자 장치는, 복수의 카메라들 및 프로세서를 포함하고, 상기 프로세서는, 상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고, 상기 복수의 이미지들의 영역들 중에서 제1 지정 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하고, 상기 관심 영역의 위치가 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 상기 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정될 수 있다.

Description

이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법 {IMAGE PROCESSING APPARATUS AND METHOD FOR IMAGE PROCESSING THEREOF}
본 발명의 다양한 실시 예들은 영상 처리 장치 및 그 영상 처리 방법에 대한 것으로, 보다 상세하게는, 효율적인 영상 송수신을 위한 영상 처리 장치 및 그 영상 처리 방법에 대한 것이다.
전 방향(omnidirectional) 영상 카메라 시스템은 고정 시점을 기준으로 360도 전 방향을 촬영할 수 있는 카메라 시스템을 말한다. 여기서, 전 방향 영상은 관찰자가 제자리에서 한 바퀴 회전하면서 보이는 뷰(view)와 고개를 젖히거나 숙여서 바라보이는 뷰를 모두 포함하는 영상이다. 전 방향 영상 카메라 시스템은 카메라에 쌍곡면 거울과 같은 특수한 형태의 거울이나 어안렌즈와 같은 특수렌즈를 장착하거나 다수의 카메라를 이용하여 전 방향을 촬영한다.
전 방향 영상 카메라 시스템으로부터 생성된 영상 정보를 다른 전자장치에 전송하기 위한 전 방향 비디오 코딩 방법에 대한 연구가 활발하다.
특히, MPEG-4, H. 264와 같은 종래의 비디오 코덱을 이용하여 전 방향 영상을 더 효율적으로 압축하기 위한 방안이 연구되고 있다. 대표적으로, 전 방향을 다른 2차원 평면 영상으로 매핑하여 압축 영상의 데이터량을 줄이는 방안이 있다. 이러한 전 방향 영상의 매핑 방식의 예로는, 캘리브레이션(calibration) 파라미터와 같은 카메라 속성을 고려하여 2차원 평면 매핑을 수행하는 지도학적 투영(cartographical projection) 방식, 폴리곤 기반 투영(polygonal projection) 방식이 있다.
전 방향 영상은 모든 방향을 촬영한 영상으로 용량이 매우 크기 때문에 상술한 압축 방식을 이용한다고 하여 영상 송수신을 위한 시스템의 과부하(예를 들어, 과도한 대역폭 자원 사용, 영상 처리 속도 증가)를 충분히 해결하지 못하는 실정이다.
또한, 전 방향 영상에 포함되는 3차원 공간의 이미지를 2차원 평면 영상으로 매핑하는 과정에서 왜곡이 발생하는 문제가 있다.
이에 따라, 전 방향 영상의 사용자 관점에서의 QoS (quality of service)를 유지하면서 상술한 전 방향 영상의 송수신을 위한 시스템의 과부하 및 전 방향 영상의 왜곡을 최소화하기 위한 방안을 찾기 위한 노력이 필요하다.
본 발명은 상술한 필요성에 따른 것으로, 본 발명의 목적은, 전 방향 영상을 처리함에 있어 영상의 왜곡을 줄이고 대역폭 자원의 사용을 최소화하는 영상 처리 장치 및 그 영상 처리 방법을 제공함에 있다.
본 발명의 일 실시 예에 따른 전자 장치는, 복수의 카메라들 및 프로세서를 포함하고, 상기 프로세서는, 상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고, 상기 복수의 이미지들의 영역들 중에서 제1 지정 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하고, 상기 관심 영역의 위치가 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 상기 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정될 수 있다.
본 발명의 다른 실시 예에 따른 전자 장치는, 복수의 카메라들 및 프로세서를 포함하고, 상기 프로세서는, 상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고, 상기 복수의 이미지들의 영역들 중 제1 지정된 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하고, 상기 관심 영역의 위치가 제1 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 상기 제1 지정된 방식을 이용하여 다면체에 매핑하고, 상기 관심 영역의 위치가 제2 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 상기 제1 지정된 방식 또는 상기 제2 지정된 방식 중 하나의 방식으로 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정될 수 있다.
본 발명의 또 다른 실시 예에 따른 전자 장치는, 복수의 카메라들 및 프로세서를 포함하고, 상기 프로세서는, 상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고, 상기 복수의 이미지들을 제1 지정된 방식을 이용하여 다면체에 매핑하고, 상기 다면체에 매핑된 복수의 이미지들 중 관심 영역의 위치를 확인하고, 상기 위치가 상기 다면체에 매핑된 상기 복수의 이미지들과 관련하여 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 상기 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 상기 제2 지정된 방식으로 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정될 수 있다.
상술한 바와 같이 본 발명에 따르면, 전 방향 영상을 처리함에 있어 영상의 왜곡 및 대역폭 자원의 사용을 최소화할 수 있다.
도 1은 본 발명의 다양한 실시 예에 따른 네트워크 환경을 도시한 도면이다.
도 2는 다양한 실시 예들에 따른 카메라 모듈의 블럭도이다.
도 3은 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 구현 예를 설명하기 위한 도면이다.
도 4a는 본 발명의 일 실시 예에 따른 영상 처리 시스템의 영상 처리에 대한 순서도이다.
도 4b는 본 발명의 다른 실시 예에 따른 영상 처리 시스템의 영상 처리에 대한 순서도이다.
도 5는 본 발명의 다양한 실시 예에 따른 제1 영상 처리 장치의 블록도이다.
도 6a 내지 6c는 본 발명의 다양한 실시 예에 따른 OHP 방식을 설명하기 위한 도면이다.
도 7a 내지 7g는 본 발명의 다양한 실시 예에 따른 다면체의 매핑 방법을 설명하기 위한 도면이다.
도 8a 및 8b는 본 발명의 다양한 실시 예에 따른 관심 영역의 매핑을 도시한다.
도 9a 및 9b는 본 발명의 다양한 실시 예에 따른 관심 영역의 매핑을 도시한다.
도 11a 내지 11e는 본 발명의 다양한 실시 예에 따른 OHP 매핑 방식의 변경을 도시한다.
도 12는 본 발명의 다양한 실시 예에 따른 제2 영상 처리 장치의 블록도이다.
도 13은 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 순서도이다.
도 14는 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 블록도이다.
도 15는 본 발명의 다양한 실시 예에 따른 영상 처리 방법을 설명하기 위한 순서도이다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 이는 본 발명에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 발명에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 발명에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 발명에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 발명에 기재된 권리범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 또 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 또 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 발명에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는 (having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진 (made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는,"~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 발명에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다양한 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 발명에 기재된 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 발명에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 발명에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 발명에서 정의된 용어일지라도 본 발명의 실시 예들을 배제하도록 해석될 수 없다.
도 1은 본 발명의 다양한 실시 예에 따른 네트워크 환경을 도시한 도면이다.
도 1은, 다양한 실시 예들에 따른, 네트워크환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리무선 통신)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리무선통신)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향출력장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 및 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자장치(101)에는, 이 구성요소들 중 적어도 하나(예:표시 장치(160) 또는 카메라 모듈(180))가 생략되거나 다른 구성요소가 추가될 수 있다. 어떤 실시 예에서는, 예를 들면, 표시 장치(160)(예:디스플레이)에 임베디드된 센서 모듈(176)(예:지문 센서,홍채 센서,또는 조도 센서)의 경우와 같이, 일부의 구성요소들이 통합되어 구현될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예:프로그램(140))를 구동하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션프로세서), 및 이와는 독립적으로 운영되고, 추가적으로 또는 대체적으로, 메인프로세서(121) 보다 저전력을 사용하거나, 또는 지정된 기능에 특화된 보조프로세서(123)(예: 그래픽처리장치, 이미지시그널프로세서, 센서허브프로세서, 또는 커뮤니케이션프로세서)를 포함할 수 있다. 여기서, 보조 프로세서(123)는 메인 프로세서(121)와 별개로 또는 임베디드되어 운영될 수 있다.
이런 경우, 보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션수행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시장치(160), 센서모듈(176), 또는 통신모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련있는 다른 구성요소(예: 카메라모듈(180) 또는 통신 모듈(190))의 일부 구성요소로서 구현될 수 있다. 메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예:프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어(예:프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 저장할 수 있다. 메모리(130)는, 휘발성 메모리(132)또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 저장되는 소프트웨어로서, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예:프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예:사용자)로부터 수신하기 위한 장치로서, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향출력장치(155)는 음향신호를 전자장치(101)의 외부로 출력하기 위한 장치로서, 예를 들면, 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용되는 스피커와 전화수신 전용으로 사용되는 리시버를 포함할 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 일체 또는 별도로 형성될 수 있다.
표시 장치(160)는 전자 장치(101)의 사용자에게 정보를 시각적으로 제공하기 위한 장치로서, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 표시 장치(160)는 터치회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 유선 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 내부의 작동 상태(예:전력또는 온도), 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서,습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 외부 전자 장치(예: 전자 장치(102))와 유선 또는 무선으로 연결할 수 있는 지정된 프로토콜을 지원할 수 있다. 일 실시 예에 따르면,인터페이스(177)는HDMI(high definition multimedia interface), USB(universal serial bus)인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는 전자 장치(101)와 외부 전자 장치(예:전자 장치(102))를 물리적으로 연결시킬 수 있는 커넥터, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기자극장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면,카메라 모듈(180)은 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 또는 플래시를 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 유선 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신모듈(190)은 프로세서(120)(예: 어플리케이션프로세서)와 독립적으로 운영되는, 유선 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system)통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network)통신 모듈, 또는 전력선 통신 모듈)을 포함하고, 그 중 해당하는 통신 모듈을 이용하여 제1 네트워크(198)(예:블루투스, WiFi direct또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 모듈(190)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일 실시 예에 따르면, 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(101)를 구별 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부로 송신하거나 외부로부터 수신하기 위한 하나 이상의 안테나들을 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)(예:무선 통신 모듈(192))은 통신 방식에 적합한 안테나를 통하여 신호를 외부 전자 장치로 송신하거나,외부 전자 장치로부터 수신할 수 있다.
상기 구성요소들 중 일부 구성요소들은 주변 기기들 간 통신 방식(예: 버스,GPIO(general purpose input/output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되어 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시 예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102,104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 외부 전자장치에서 실행될 수 있다. 일 실시 예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 외부 전자 장치에게 요청할 수 있다. 상기 요청을 수신한 외부 전자 장치는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
일 실시 예에 따르면, 프로세서(120)는 카메라 모듈(180)을 이용하여 적어도 하나의 이미지를 획득할 수 있다. 프로세서(120)는 적어도 하나의 이미지의 영역 중에서 지정된 방식으로 다면체에 매핑될 관심 영역의 위치를 결정할 수 있다. 또한, 프로세서(120)는 관심 영역의 위치가 지정된 조건에 포함되는 경우, 적어도 하나의 이미지를 다른 지정된 방식을 이용하여 다면체에 매핑할 수 있다. 이 경우, 프로세서(120)는 적어도 하나의 이미지가 매핑된 다면체를 이용하여 이미지 데이터를 생성할 수 있다.
본 발명에서 제안된 다양한 실시 예에서는 전 방향 영상의 송수신을 효율적으로 수행하기 위하여, 2차원 영상으로 매핑된 전 방향 영상을 멀티 채널을 이용하여 송수신하는 방안을 마련할 것이다.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료기기, 카메라, 웨어러블 장치, 또는 가전 장치 중 적어도 하나를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에"(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장메모리(136) 또는 외장메모리(138))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램(140))로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예:전자 장치(101))를 포함할 수 있다. 상기 명령이 프로세서(예:프로세서(120))에 의해 실행될 경우, 프로세서가 직접,또는 상기 프로세서의 제어 하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서,‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따른 구성 요소(예:모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예:모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
도 2는 다양한 실시 예들에 따른, 카메라 모듈의 블럭도이다.
도 2를 참조하면, 카메라 모듈(180)은 렌즈 어셈블리(210), 플래쉬(220), 이미지 센서(230), 이미지 스태빌라이저(240), 메모리(250)(예: 버퍼 메모리), 또는 이미지 시그널 프로세서(260)를 포함할 수 있다. 렌즈 어셈블리(210)는 이미지 촬영의 대상인 피사체로부터 방출되는 빛을 수집할 수 있다. 렌즈 어셈블리(210)는 하나 또는 그 이상의 렌즈들을 포함할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 복수의 렌즈 어셈블리(210)들을 포함할 수 있다. 이런 경우, 카메라 모듈(280)은, 예를 들면, 듀얼 카메라, 360도 카메라, 또는 구형 카메라(spherical camera)일 수 있다. 복수의 렌즈 어셈블리(210)들은 동일한 렌즈 속성(예: 화각, 초점 거리, 자동 초점, f 넘버(f number), 또는 광학 줌)을 갖거나, 또는 적어도 하나의 렌즈 어셈블리는 다른 렌즈 렌즈 어셈블리와 적어도 하나의 다른 렌즈 속성을 가질 수 있다. 렌즈 어셈블리(210)는, 예를 들면, 광각 렌즈 또는 망원 렌즈를 포함할 수 있다. 플래쉬(220)는 피사체로부터 방출되는 빛을 강화하기 위하여 사용되는 광원을 방출할 수 있다. 플래쉬(220)는 하나 이상의 발광 다이오드들(예: RGB(red-green-blue) LED, white LED, infrared LED, 또는 ultraviolet LED), 또는 xenon lamp를 포함할 수 있다.
이미지 센서(230)는 피사체로부터 렌즈 어셈블리(210)를 통해 전달된 빛을 전기적인 신호로 변환함으로써, 상기 피사체에 대응하는 이미지를 획득할 수 있다. 일 실시 예에 따르면, 이미지 센서(230)는, 예를 들면, RGB센서, BW(black and white) 센서, IR 센서, 또는 UV 센서와 같이 속성이 다른 이미지 센서들 중 선택된 하나의 이미지 센서, 동일한 속성을 갖는 복수의 이미지 센서들, 또는 다른 속성을 갖는 복수의 이미지 센서들을 포함할 수 있다. 이미지 센서(230)에 포함된 각각의 이미지 센서는, 예를 들면, CCD(charged coupled device) 센서 또는 CMOS(complementary metaloxidesemiconductor) 센서로 구현될 수 있다.
이미지 스태빌라이저(240)는 카메라 모듈(180) 또는 이를 포함하는 전자 장치(101)의 움직임에 반응하여, 촬영되는 이미지에 대한 상기 움직임에 의한 부정적인 영향(예:이미지 흔들림)을 적어도 일부 보상하기 위하여 렌즈어셈블리(210)에 포함된 적어도 하나의 렌즈 또는 이미지센서(230)를 특정한 방향으로 움직이거나 제어(예: 리드 아웃(read-out) 타이밍을 조정 등)할 수 있다. 일 실시 예에 따르면, 이미지 스태빌라이저(240)는, 예를 들면, 광학식 이미지 스태빌라이저로 구현될 수 있으며, 카메라 모듈(180)의 내부 또는 외부에 배치된 자이로 센서(미도시) 또는 가속도 센서(미도시)를 이용하여 상기 움직임을 감지할 수 있다.
메모리(250)는 이미지 센서(230)을 통하여 획득된 이미지의 적어도 일부를 다음 이미지 처리 작업을 위하여 적어도 일시 저장할 수 있다. 예를 들어, 셔터에 따른 이미지 획득이 지연되거나, 또는 복수의 이미지들이 고속으로 획득되는 경우, 획득된 원본 이미지(예:높은 해상도의 이미지)는 메모리(250)에 저장이 되고, 그에 대응하는 사본 이미지(예:낮은 해상도의 이미지)는 표시 장치(#60)을 통하여 프리뷰될 수 있다. 이후, 지정된 조건이 만족되면(예:사용자 입력 또는 시스템 명령)메모리(250)에 저장되었던 원본 이미지의 적어도 일부가, 예를 들면, 이미지 시그널 프로세서(260)에 의해 획득되어 처리될 수 있다. 일 실시 예에 따르면, 메모리(250)는 메모리(130)의 적어도 일부로, 또는 이와는 독립적으로 운영되는 별도의 메모리로 구성될 수 있다.
이미지 시그널 프로세서(260)는 이미지 센서(230)을 통하여 획득된 이미지 또는 메모리(250)에 저장된 이미지에 대하여 이미지 처리(예: 깊이 지도(depth map) 생성, 3차원 모델링, 파노라마 생성, 특징점 추출, 이미지 합성, 또는 이미지 보상(예: 노이즈 감소, 해상도 조정, 밝기 조정, 블러링(blurring), 샤프닝(sharpening), 또는 소프트닝(softening))을 수행할 수 있다. 추가적으로 또는 대체적으로, 이미지 시그널 프로세서(260)는 카메라 모듈(180)에 포함된 구성 요소들 중 적어도 하나(예: 이미지 센서(230))에 대한 제어(예: 노출 시간 제어, 또는 리드 아웃 타이밍 제어 등)를 수행할 수 있다. 이미지 시그널 프로세서(260)에 의해 처리된 이미지는 추가 처리를 위하여 메모리(250)에 다시 저장되거나 카메라 모듈(180)의 외부 구성 요소(예:메모리(130), 표시 장치(160), 전자 장치(102), 전자 장치(104), 또는 서버(108))로 전달될 수 있다. 일 실시 예에 따르면, 이미지 시그널 프로세서(260)는 프로세서(120)의 적어도 일부로 구성되거나, 프로세서(120)와 독립적으로 운영되는 별도의 프로세서로 구성될 수 있다. 별도의 프로세서로 구성된 경우, 이미지 시그널 프로세서(260)에 의해 처리된 이미지들은 프로세서(120)에 의하여 그대로 또는 추가의 이미지 처리를 거친 후 표시 장치(160)를 통해 표시될 수 있다.
일 실시 예에 따르면, 전자 장치(101)는 각각 다른 속성 또는 기능을 가진 둘 이상의 카메라 모듈(180)들을 포함할 수 있다. 이런 경우, 예를 들면, 적어도 하나의 카메라 모듈(180)은 광각 카메라 또는 전면 카메라이고, 적어도 하나의 다른 카메라 모듈은 망원 카메라 또는 후면 카메라일 수 있다.
도 3은 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 구현 예를 설명하기 위한 도면이다.
영상 처리 시스템(30)은 전 방향으로 촬영된 영상을 송수신하고, 렌더링을 수행하여 사용자에게 제공하는 시스템이다.
영상 처리 시스템(30)은 제1 영상 처리 장치(300) 및 제2 영상 처리 장치(400)를 포함할 수 있다. 또는, 영상 처리 시스템(30)은 제1 영상 처리 장치(300), 제2 영상 처리 장치(400) 및 서버(500)를 포함할 수 있다.
제1 영상 처리 장치(300)는 전 방향 영상을 촬영하는 촬영 장치 또는, 외부로부터 전 방향 영상을 전달받아 처리하는 서버일 수도 있다. 물론 이에 제한되지 않으며, 제1 영상 처리 장치(300)는 상술한 전자 장치의 예들로 구현될 수도 있다.
일 예로, 제1 영상 처리 장치(300)는 촬영 장치(300)일 수 있다.
촬영 장치(300)는 전 방향(omnidirectional)으로 영상을 촬영할 수 있다. 보통 하나의 카메라로 전 방향으로 영상을 촬영하는 것은 쉽지 않다. 따라서, 촬영 장치(300)는 전 방향의 영상을 촬영하기 위해 복수의 렌즈 또는 복수의 카메라를 포함할 수 있다.
예를 들면, 어안 렌즈는 180도 이상의 화각을 가질 수 있다. 즉, 어안 렌즈를 하늘을 바라보게 하는 경우, 하늘의 별자리에서부터 지평선까지의 영역을 한 장의 이미지에 포착하는 것이 가능하다. 촬영 장치(300)는 이러한 어안 렌즈 복수 개를 구비하여 전 방향으로 영상을 촬영할 수 있다. 다른 예로, 촬영 장치(300)는 일정한 화각을 가지는 복수 개의 카메라를 구비하여 전 방향으로 영상을 촬영할 수 있다. 이 경우, 복수 개의 카메라는 하나의 점을 기준으로 전 방향을 커버 하도록 촬영 장치(300)에 구비될 수 있다. 또 다른 예로, 하나 이상의 카메라를 포함하는 촬영 장치(300)가 자동 및/또는 수동으로 움직여(pitch, yaw, roll 등의 방향으로) 전 방향을 촬영할 수도 있다. 다른 예로, 촬영 장치(300)는 사용자의 좌안 및 우안에 대응하여 일정한 화각을 가지는 복수 개의 카메라를 포함할 수 있다. 이 경우, 촬영 장치(300)는 전 방향으로 영상을 촬영함으로써 복수 개의 전 방향 영상을 포함하는 스테레오 스코픽 영상을 촬영할 수도 있다. 여기서, 촬영 장치(300)의 예는 상술한 예로 제한되지 않음은 물론이다.
한편, 촬영 장치(300)는 전 방향 영상뿐만 아니라, 일부 방향의 영상(예를 들어, 촬영 장치(300)의 렌즈를 기준으로 상하좌우 120도에 해당하는 사각형 영역)을 촬영할 수도 있다. 또한, 촬영 장치(300)는 전 방향 영상을 촬영하고, 전 방향의 영상 중 일부 방향에 대한 영상을 처리하여 제2 영상 처리 장치(400)에 송신할 수도 있다.
한편, 촬영 장치(300)는 촬영된 영상 및 관련되는 메타 데이터(예: 촬영 방향, 범위, 영역, 또는 위치)를 연관지어 기록할 수도 있다. 이 경우, 촬영 장치(300)는 메타데이터 즉, 센서(예: GPS, WiFi 지문 센서, 자이로 센서, 가속도 센서, 지자기 센서)를 통해 수신한 카메라 위치, 모션 정보, 또는 방향 정보 중 적어도 하나 이상을 카메라 특성 정보(예: 카메라 calibration parameter, 촬영상태 정보) 및 촬영된 영상 중 적어도 하나와 연관시킬 수 있다.
또한, 촬영 장치(300)는 촬영된 전 방향 영상을 2차원의 평면 영상으로 매핑하고, 매핑된 2차원 평면 영상을 인코딩하여 메모리에 저장하거나, 제2 영상 처리 장치(400)로 전송할 수 있다.
일 실시 예에 따르면, 매핑된 2차원 평면 영상은, 전 방향 영상을 삼각형 면으로 구성된 다면체에 매핑하였을 때, 상기 다면체의 삼각형 면들을 2차원 평면상에 배치한 영역을 포함할 수도 있다.
일 실시 예에 따르면, 전 방향 영상은 상기 2차원 평면 영상과 관련한 다면체와는 독립적인 영상일 수도 있다. 예를 들어, ERP(equirectangular projection), cube projection, cylindrical projection 기법에 의해 2차원 평면에 매핑된 영상일 수 있다. 다른 실시 예에 따르면, 전 방향 영상은 거리 센서(예: KinectTM 카메라, lidar, 스테레오 카메라, 레이저 거리측정 장치)를 통해 판별한 depth 정보와 연관된 영상일 수 있다.
다른 실시 예에 따르면, 촬영 장치(300)는 가상현실 공간(예: 게임에 구현된 3D 공간)에서 임의의 위치에 있는 가상의 카메라일 수 있다. 이 경우, 전 방향 영상은 가상 카메라의 특성(예: 위치, 지향 방향, 화각, 또는 범위)에 기반하여 가상현실 내의 가상 물체들과 연관되어 수신된 영상정보일 수도 있다. 예를 들어, 게임에서 아바타의 시야가 가상 카메라의 FoV(field of view)에 해당하며, 이를 통해 표시되는 가상현실 내의 물체 영상 영역이 전 방향 영상의 일부일 수 있다.
촬영 장치(300)는 매핑된 2차원 이미지를 인코딩하여 제2 영상 처리 장치(400)로 전송하는 경우, 복수의 전송 채널을 이용할 수 있다. 일 실시 예에 따르면, 매핑된 2차원 이미지는 기설정된 배열 속성을 가지는 복수의 이미지 영역을 포함할 수 있다. 이 경우, 촬영 장치(300)는 복수의 이미지 영역에 각각 매칭된 복수의 전송 채널 중 적어도 하나를 이용하여, 복수의 이미지 영역 중 적어도 하나의 이미지 영역의 이미지 데이터를 송신할 수 있다. 이 경우, 촬영 장치(300)는 기설정된 배열 속성을 포함하는 메타데이터를 함께 송신할 수도 있다.
여기서, 촬영 장치(300)는 시야각 정보에 기초하여 상기 복수의 이미지 영역 중 적어도 하나의 이미지 영역의 이미지 데이터를 송신할 수 있다. 일 예로, 촬영 장치(300)는 제2 영상 처리 장치(400)로부터 사용자의 시야각 정보를 수신하고, 수신된 시야각 정보에 대응되는 복수의 이미지 영역 중 적어도 하나의 이미지 영역을 결정하여 이를 제2 영상 처리 장치(400)로 송신할 수 있다.
서버(500)는 기저장된 전 방향 영상 또는 ERP 영상 등을 처리하고, 이를 전송할 수 있다.
한 실시 예에 따르면, 서버(500)는 촬영 장치(300)로부터 전 방향 영상 또는 ERP 영상을 수신하여 저장할 수 있다. 이 경우, 서버(500)는 전 방향 영상 또는 ERP 영상을 2차원 이미지로 매핑할 수 있다. 일 실시 예에 따르면, 서버는 매핑된 2차원 이미지를 인코딩하여 제2 영상 처리 장치(400)로 송신할 수 있다. 이 경우, 서버는 복수의 전송 채널을 이용하여 매핑된 2차원 이미지를 송신할 수도 있다. 여기서, 상술한 촬영 장치(300)에서 설명한 복수의 전송 채널에 대한 실시 예와 동일한 실시 예가 서버(500)에도 적용될 수 있음은 물론이다. 상술한 촬영 장치(300)와 중복되는 설명은 여기서 생략한다.
제2 영상 처리 장치(400)는 2차원 이미지로 매핑된 전 방향 영상을 수신하여 렌더링을 수행할 수 있다.
구체적으로, 제2 영상 처리 장치(400)는 제1 영상 처리 장치(300)로부터 매핑된 2차원 이미지의 비트스트림을 수신하여 디코딩을 수행할 수 있다. 제2 영상 처리 장치(400)는 디코딩된 2차원 이미지를 이용하여 렌더링을 수행할 수 있으며, 렌더링된 프레임을 표시 장치(160)에 디스플레이할 수 있다.
일 실시 예에 따르면, 제2 영상 처리 장치(400)는 2차원 이미지로 매핑된 전 방향 영상(이하, 매핑된 2차원 이미지) 전체를 수신할 수 있다. 이 경우, 제2 영상 처리 장치(400)는 2차원으로 매핑된 전 방향 영상 전체를 가상의 3차원 공간에 매핑하고, 사용자의 FoV에 대응되는 영역에 대하여 렌더링을 수행할 수 있다.
다른 실시 예에 따르면, 제2 영상 처리 장치(400)는 적어도 하나의 전송 채널을 이용하여, 매핑된 2차원 이미지의 일부만을 수신할 수도 있다.
예를 들어, 제2 영상 처리 장치(400)는 센서를 통하여 사용자의 시야각 및 시야각의 중심 위치를 센싱하고, 사용자의 시야각 및 시야각의 중심 위치를 제1 영상 처리 장치(400)로 송신할 수 있다.
여기서, 제2 영상 처리 장치(400)는 예를 들어 HMD(head mounted display)와 같은 VR(virtual reality) 기기, 휴대폰, PC, TV, 태블릿 PC 등 영상을 처리하는 다양한 전자 장치일 수 있다.
상술한 내용에 따르면, 제1 영상 처리 장치(300)는 매핑된 2차원 이미지에서, 사용자의 시야각 정보(예를 들어, 사용자의 시야각 및 시야각의 중심 위치)에 대응되는 이미지 영역을 복수의 전송 채널을 이용하여 전송할 수 있는데, 매핑된 2차원 이미지에 포함된 복수의 이미지 영역 중 일부를 선택적으로 전송함으로써 전송 효율을 크게 향상시킬 수 있다.
이하, 도 4a 및 4b를 참조하여, 제1 영상 처리 장치(300) 및 제2 영상 처리 장치(400) 에서 수행되는 과정을 설명한다.
도 4a는 본 발명의 일 실시 예에 따른 영상 처리 시스템의 영상 처리에 대한 순서도이다.
도 4a를 참조하면, 제1 영상 처리 장치(300)는 오브젝트 또는 주변 환경을 촬영할 수 있다(410). 일 예로, 제1 영상 처리 장치(300)는 전 방향을 커버하는 복수의 카메라를 포함할 수 있다. 이 경우, 제1 영상 처리 장치(300)는 복수의 카메라를 통해 복수의 이미지를 획득할 수 있다.
제1 영상 처리 장치(300)는 이미지 데이터를 생성할 수 있다. 구체적으로, 제1 영상 처리 장치(300)는 상기 복수의 이미지를 다면체에 매핑할 수 있다. 이 경우, 제1 영상 처리 장치(300)는 상기 복수의 이미지에 포함된 관심 영역(region of interest)이 상기 복수 이미지에서 차지하는 위치에 기초하여, 상기 복수의 이미지를 다면체에 매핑하는 방식을 결정할 수 있다. 여기서, 제1 영상 처리 장치(300)는 관심 영역의 위치에 대한 정보를 포함하는 메타데이터를 생성할 수 있다(420).
제1 영상 처리 장치(300)는 생성된 이미지 데이터 및 메타데이터를 제2 영상 처리 장치(400)로 송신할 수 있다(430).
제2 영상 처리 장치(400)는 수신된 이미지 데이터 및 메타데이터를 이용하여 출력 프레임을 렌더링할 수 있다(440). 이 경우, 제2 영상 처리 장치(400)는 메타데이터에 포함된 관심 영역의 위치에 대한 정보에 기초하여, 관심 영역을 포함하는 출력 프레임을 렌더링할 수 있다. 일 예로, 출력 프레임에 포함된 관심 영역은, 1 영상 처리 장치(300)에서 획득된 복수의 이미지에 포함된 관심 영역의 위치에 대응되는 영역에 렌더링될 수 있다.
도 4b는 본 발명의 다른 실시 예에 따른 영상 처리 시스템의 영상 처리에 대한 순서도이다.
도 4b를 참조하면, 제1 영상 처리 장치(300)는 오브젝트 또는 주변 환경을 촬영할 수 있다(510). 일 예로, 제1 영상 처리 장치(300)는 전방향을 커버하는 복수의 카메라를 포함할 수 있다. 이 경우, 제1 영상 처리 장치(300)는 복수의 카메라를 통해 복수의 이미지를 획득할 수 있다. 제1 영상 처리 장치(300)는 획득된 복수의 이미지를 서버(500)로 송신할 수 있다(520).
서버(500)는 이미지 데이터를 생성할 수 있다. 구체적으로, 서버(500)는 상기 복수의 이미지를 다면체에 매핑할 수 있다. 이 경우, 서버(500)는 상기 복수의 이미지에 포함된 관심 영역(region of interest)이 상기 복수 이미지에서 차지하는 위치에 기초하여, 상기 복수의 이미지를 다면체에 매핑하는 방식을 결정할 수 있다. 여기서, 서버(500)는 관심 영역의 위치에 대한 정보를 포함하는 메타데이터를 생성할 수 있다(530).
서버(500)는 생성된 이미지 데이터 및 메타데이터를 제2 영상 처리 장치(400)로 송신할 수 있다(540).
제2 영상 처리 장치(400)는 수신된 이미지 데이터 및 메타데이터를 이용하여 출력 프레임을 렌더링할 수 있다(550). 이 경우, 제2 영상 처리 장치(400)는 메타데이터에 포함된 관심 영역의 위치에 대한 정보에 기초하여, 관심 영역을 포함하는 출력 프레임을 렌더링할 수 있다. 일 예로, 출력 프레임에 포함된 관심 영역은, 영상 처리 장치(300)에서 획득된 복수의 이미지에 포함된 관심 영역의 위치에 대응되는 영역에 렌더링될 수 있다.
도 5는 본 발명의 다양한 실시 예에 따른 제1 영상 처리 장치의 블록도이다.
도 5를 참조하면, 제1 영상 처리 장치(300)는 카메라(310)(도 1의 카메라 모듈(180)) 및 프로세서(320)(예: 도 1의 프로세서(120))를 포함할 수 있다.
카메라(310)는 주변 환경 또는 오브젝트를 촬영할 수 있다. 여기서, 카메라(310)는 전방향 영상을 촬영하기 위하여 복수의 렌즈를 포함할 수 있다. 다양한 실시 예에 따르면, 카메라(310)는 전방향을 커버할 수 있도록, 화각을 달리하는 복수개의 카메라로 구성될 수도 있다.
프로세서(320)는 제1 영상 처리 장치(300)를 전반적으로 제어할 수 있다.
일 실시 예에 따르면, 프로세서(320)는 카메라(310)를 제어하여 주변 환경을 촬영할 수 있다. 이 경우, 프로세서(320)는 카메라(310)를 제어하여 하나 이상의 이미지(또는 복수의 이미지)를 획득할 수 있다.
일 실시 예에 따르면, 프로세서(320)는 획득된 복수의 이미지를 다면체에 매핑하고, 매핑된 다면체의 각 면을 2차원 이미지로 매핑할 수 있다. 이러한 매핑 방식은 이하 도 6a 내지 7g를 참조하여 상세히 설명한다.
프로세서(320)는 카메라(310)로부터 획득된 복수의 이미지들을 2차원 이미지로 매핑할 수 있다, 여기서, 복수의 이미지들의 합은 전 방향 이미지일 수 있다.
3차원 공간을 촬영한 영상을 2차원 이미지로 매핑하는 방법은 다양하게 알려져 있다. 이 중 대표적인 것이 ERP(equirectangular projection)이다. ERP는 구면 좌표계(spherical coordinates)를 직교 좌표계(cartesian coordinates)로 변환하는 정거원통도법(正距圓筒圖法, equidistant cylindrical projection)이다. 하지만, ERP를 이용하여 3차원의 구체 표면을 2차원 평면으로 매핑하는 경우, 구의 양 극(북극, 남극)에 가까운 영상일수록 2차원 평면에서 더 큰 왜곡이 발생할 수 있다. 따라서, ERP는 원래의 3차원 영상을 정확하게 표현하는 데에는 한계가 있을 수 있다.
본 발명의 다양한 실시 예에 따르면, 제1 영상 처리 장치(300)는 전 방향으로 촬영된 영상(이하, 전 방향 영상)을 다면체에 매핑하고, 다면체의 각 면에 매핑된 영상을 2차원 이미지로 매핑할 수 있다. 다양한 실시 예에 따르면, 제1 영상 처리 장치(300)는 전 방향 영상을 제1의 3차원 오브젝트의 표면에 매핑하고, 제1의 3차원 오브젝트를 제2의 3차원 오브젝트로 변환하는 연산을 통해 제1의 3차원 오브젝트 표면에 매핑된 영상을 제2의 3차원 오브젝트의 표면에 매핑시킬 수 있다. 그 후, 제1 영상 처리 장치(300)는 제2의 3차원 물체의 표면에 매핑된 영상을 2차원 평면으로 매핑할 수도 있다. 예를 들어, 제1 영상 처리 장치(300)는 전 방향으로 촬영된 영상을 소정의 반지름(예: 카메라 focal length, 혹은 depth 정보)을 가지는 3차원 구면체에 매핑하고, 3차원 구면체를 정팔면체의 각 면에 매핑할 수 있다. 그 후, 제1 영상 처리 장치(300)는 정팔면체의 각 면을 2차원 이미지로 매핑할 수 있다. 이러한 방법의 예로, OHP(octahedron projection) 방식이 있다.
상술한 예에서, 전 방향으로 촬영된 영상을 구면체로 매핑시킨 후 2차원 이미지로 매핑하는 과정에 대해 설명하였으나, 이에 한정되지는 않는다. 예를 들어, 어안 영상, ERP 영상, CPP 영상, 여러 종류의 다면체(예를 들어, 4면체, 12면체, 20면체 등)에 매핑된 영상 등에 OHP 방식을 바로 적용하여 2차원 이미지를 생성할 수도 있다. 또한, 여기서 구면체 또는 2차원 이미지로 매핑되는 영상은 반드시 카메라로 촬영된 영상일 필요는 없다. 예를 들어, 가상 영상을 구면체 또는 2차원 이미지로 매핑할 수도 있다.
본 발명의 다양한 실시 예에 따른 OHP 방식은 정팔면체(octahedron platonic solid)를 이용하여 3차원 구면을 2차원 평면으로 매핑하는 방법이다. 이하에서, 정팔면체를 이용한 매핑의 다양한 실시 예를 설명할 것이나, 이에 제한되지 않는다. 한 실시 예에 따르면, 정사면체, 정육면체, 정십이면체, 정이십면체와 같은 정다면체를 이용하여 3차원 구면을 2차원 평면으로 매핑할 수 있다. 다른 실시 예에 따르면, 형상이 상이한 복수의 면으로 이루어진 다면체를 이용하여 3차원 구면을 2차원 평면으로 매핑하는 경우도 가능할 수 있다.
도 6a 내지 6c는 본 발명의 다양한 실시 예에 따른 OHP 방식을 설명하기 위한 도면이다.
도 6a는 구면 좌표(61)를 어안 렌즈로 촬영된 영상(이하, 어안 영상)(63)의 좌표(이하, 어안 좌표)(62)로 변환하는 과정을 도시한다.
구면 좌표의 점
Figure pat00001
과 대응되는 어안 영상(63)의 어안 좌표(62)의 점을
Figure pat00002
이라고 가정하여 예를 들어 설명한다. 여기서, 구면 좌표(61)의
Figure pat00003
와 어안 좌표(62)의 r, u, v의 관계는 아래의 수학식 1과 같다.
Figure pat00004
상술한 수식 1을 이용하여, 어안 영상(63)의 점
Figure pat00005
은 구면 좌표(61)의 점
Figure pat00006
에 대응된다. 여기서, 점
Figure pat00007
뿐만 아니라, 어안 영상(62)에 포함되는 모든 점은 구면 좌표(71)에 대응될 수 있다. 이 경우, 상술한 점은 예를 들어 픽셀일 수 있다. 이에 따르면, 어안 영상(63)에 포함되는 모든 픽셀의 픽셀 값들은 구면 좌표(61)에 매칭될 수 있다.
다음으로, 제1 영상 처리 장치(300)는 구면 좌표(61)의 점들을 정팔면체의 면에 포함되는 좌표로 변환할 수 있다.
도 6b는 구면 좌표(61)의 점 p1을 정팔면체(64)의 면(64-1)에 포함되는 점 p2에 대응시키는 방법의 예를 보여준다.
예를 들어, 구면 좌표(61)의 중점에서부터 점 p1까지의 벡터를 벡터
Figure pat00008
라고 가정한다.
여기서, 벡터
Figure pat00009
상에 점 p1과 점 p2가 존재한다. 즉, 점 p2는 벡터
Figure pat00010
및 정팔면체의 면의 교점이다.
결론적으로, 어안 영상(63)의 점 p1'는 정팔면체(64)의 면(64-1) 상의 점 p2에 매칭된다. 예를 들어, 어안 영상의 점 p1'에 대응되는 픽셀의 픽셀 값은 정팔면체(64)의 면(64-1) 상의 점 p2에 대응되는 픽셀의 픽셀 값으로 설정될 수 있다.
다음으로, 정팔면체(64)의 면들을 2차원 평면(65)에 매핑시킬 수 있다.
예를 들어, 도 6c와 같이, 정팔면체(64)의 각 면들은 2차원 이미지(65)의 제1 영역(64-1 내지 64-8)에 매핑될 수 있다. 여기서, 제2 영역(65-1 내지 65-10)은 정팔면체(64)의 각 면들이 매핑되지 않은 영역이다.
제2 영역(65-1 내지 65-10)은 정 팔면체(64)의 면들이 매핑되지 않는 'no data' 영역에 해당하는 것으로 영상 데이터를 포함하고 있지 않다. 따라서, OHP 방식에 따라 렌즈 왜곡 등이 보정된 어안 영상(63)이 매핑된 2차원 이미지(65)는 어안 영상(63)을 3차원 구면체에 매핑한 후 구면체의 영상을 ERP 방식에 따라 매핑하여 얻어진 2차원 이미지와 비교하여, 훨씬 작은 실 영상 데이터 용량을 가진다. 이에 따라, OHP에 따라 어안 영상(63)이 매핑된 2차원 이미지(65)로 인코딩을 수행하면, ERP를 이용하는 경우보다 큰 압축효율을 얻을 수 있다.
한편, 구면 좌표(61)가 매핑된 정팔면체(64)의 각 면들을 2차원 이미지로 매핑하는 방법은 다양하다. 이러한 예들을 도 7a 내지 도 7g를 참조하여 설명한다. 정팔면체(64)를 2차원 이미지로 매핑하는 방법은 아래의 방법들로 제한되지 않음은 물론이다.
도 7a 내지 7g는 본 발명의 다양한 실시 예에 따른 다면체의 매핑 방법을 설명하기 위한 도면이다.
도 7a를 참조하면, 정팔면체(70)(예: 도 6b의 정팔면체(64))는 1부터 8까지 넘버링된 8개의 면을 포함한다. 여기서, 정팔면체(70)의 면 1 내지 면 4는 상반 면, 면 5 내지 면 8은 하반 면이라 정의한다. 이 경우, 상반 면의 수와 하반 면의 수는 전체 면수의 1/2로 같다. 또한, X축과 Z축으로 이뤄진 평면상에 놓인 삼각형들의 각 변은 다면체의 Y축을 중심으로 360/(N/2)(여기서, N은 다면체의 면의 수)의 방위를 가진다. 예를 들면, 정팔면체(70)의 각 면은 Y축을 기준으로 상반과 하반에서 y축을 둘러싸는 전 방향 즉, 360도를 90도씩 분할하고 있다. 다른 예로, 만약 상반 면과 하반 면 수가 8개이고 각각의 면이 이등변 삼각형으로 이뤄진 16면체인 경우, 16면체 각각의 면은 Y축을 기준으로 Y축을 둘러싸는 전 방향 즉, 360도를 45도씩 분할하고 있다. 이하에서, 도 7b 내지 7h를 참조하여, 도 7a의 정팔면체(70)의 각 면(면 1 내지 면 8)이 2차원 이미지에서 배열되는 방법을 설명한다.
도 7b를 참조하면, 정팔면체(70)의 상반 면은 시계 방향으로 면 1부터 면 4까지 2차원 이미지(71)의 상측에 좌에서 우로 배열될 수 있다. 또한, 정팔면체(70)의 하반 면도 시계 방향으로 면 5부터 면 8까지 2차원 이미지(71)의 하측에 좌에서 우로 배열될 수 있다.
도 7c를 참조하면, 정팔면체(70)의 상반 면은 시계 방향으로 면 1부터 면 4까지 2차원 이미지(72)의 상측의 좌에서 우로 배열될 수 있다. 정팔면체(70)의 하반 면이 정팔면체(70)의 Y축을 중심으로 시계 반대방향으로 45도 회전한 상태에서, 시계 방향으로 하반 면의 면 5부터 면 8까지 2차원 이미지(72)의 하측에 좌에서 우로 배열될 수 있다. 도 7c에서, 면 8L은 면 8의 좌측 면이고, 면 8R은 8의 우측 면이다.
한편, 2차원 이미지(72)에서 영상이 매핑되지 않는 영역('no data' 영역)이 최소화되도록 하는 배열 방법에 따라 정팔면체(70)의 각 면을 배열할 수도 있다. 이 경우, 'no data' 영역을 제거함으로써 2차원 이미지의 크기를 줄일 수 있어, 인코딩 효율 및 영상 전송 효율을 높일 수 있다. 다시 말해, 'no data' 영역은 비록 영상이 매핑되지 않았으나 소정의 픽셀 값(예: 흑색, 크로마키색, 투명도 중 하나 이상)을 가지는데, 'no data' 영역을 최소화할수록 인코딩하거나 전송할 데이터 용량을 줄일 수 있다. 한 실시 예에 따르면, 도 7d와 같이, 정팔면체(70)의 상반 면(면 1 내지 면 4) 및 하반 면(면 5 내지 면 8)이 2차원 이미지(73)에 교차로 배열될 수 있다.
도 7e를 참조하면, 정팔면체(70)의 면 8을 면 8L(left) 및 면 8R(right)로 분할하여 2차원 이미지(74)의 참조번호 84-1 및 84-2 영역에 매핑하는 방법이 있다.
도 7f는 3차원 입체 영상의 좌안 영상을 2차원 이미지로 매핑하는 방법을 도시한다. 도 7f를 참조하면, 좌안 영상이 2차원 이미지(75)의 상측(75-1)에 매핑되고, 우안 영상이 2차원 이미지(75)의 하측(75-2)에 매핑된다. 도 7f에 따르면, 면 1과 관련하여 면 1L은 좌안, 면 1R은 우안에 대응하는 영상이며, 8LL은 좌안에 대응하는 삼각형의 좌측 절반이고, 8RL은 우안에 대응하는 삼각형의 좌측 절반을 나타낸다. 도 7f는 좌안과 우안 이미지가 top-down 형태로 배열된 것이다. 이 경우, 2차원 이미지(75)의 메타 데이터로는 스테레오스코픽 영상임을 표시하는 정보를 포함하도록 생성될 수 있다. 일 예로, 도 7f와 같은 영상은 좌안과 우안 영상의 배치가 top-down 형태임을 표시하는 하나 이상의 식별자로 구별될 수 있다(예: stereoscopic = true, stereoscopic_type=top-down).
다양한 실시 예에 따르면, 정팔면체(70) 형상을 가지는 입체 형상의 좌안 영상 및 우안 영상의 상단 면들을 2차원 이미지의 상측에 매핑하고, 하단 면들을 2차원 이미지(미도시)의 하측에 매핑하는 방법도 가능할 수 있다. 즉, 정팔면체(70)의 면 1 내지 면 4에 대응하는 좌안 및 우안 영상 각각의 삼각형들을 상측에 배치하고, 면 5 내지 면 8에 해당하는 좌안 및 우안 영상 각각의 삼각형들을 하측에 배치할 수 있다(이하, mixed type이라고 명함). 이는, 상대적으로 유사한 영상이 포함된 삼각형들을 서로 인접시키는 효과가 있으므로, 인코딩시 압축효율 및 전송 효율을 향상시킬 수 있다. 한편, 3차원 영상을 2차원 이미지에 매핑시키는 경우 2차원 이미지의 폭(예: 가로 해상도, 행에 배치된 픽셀의 개수)을 줄이기 위한 방안도 고려해볼 수 있다. 전자 기기마다 렌더링하는데 이용되는 2차원 이미지의 폭에 제한이 있기 때문에, 2차원 이미지가 작은 폭을 가질수록 2차원 이미지는 다양한 전자 기기에서 렌더링이 가능할 수 있다.
예를 들어, 도 7g를 참조하면, 2차원 이미지(76)는 도 7e의 2차원 이미지와 동일한 양의 영상 데이터를 포함하지만, 그 2차원 이미지(76)의 폭은 도 7e의 2차원 이미지의 절반에 불과하다. 여기서, 매핑된 2차원 이미지의 폭을 조정하는 방법은, 좌안 및 우안 영상으로 구성되는 입체 영상을 2차원 이미지로 매핑하는 방법에도 동일하게 적용 가능할 수 있다.
이상에서, 복수의 이미지(또는 전 방향 이미지)를 2차원 이미지에 매핑하는 다양한 실시 예를 상세히 설명하였다, 이하에서는, 상술한 매핑에 대한 실시 예들에서, 관심 영역에 대한 위치가 고려되는 경우의 실시 예에 대하여 상세히 설명한다.
프로세서(320)는 획득된 복수의 이미지 영역 중에서 관심 영역을 설정할 수 있다. 일 예로, 프로세서(320)는 카메라(310)을 이용하여 촬영하는 동작에서 포커스(focus) 기능을 이용하여 관심 영역을 설정할 수 있다. 여기서, 포커스는 사용자가 관심을 가질 만한 오브젝트(object) 또는 배경을 주요한 포커싱 영역으로 설정하는 기능이다. 다른 예로, 프로세서(320)는 사용자로부터 관심 영역 설정을 위한 이미지의 영역 또는 객체에 대한 터치 입력을 수신하여 이를 관심 영역으로 설정할 수 있다. 또 다른 예로, 프로세서(320)는 예를 들어, 사물 인식 등으로 관심 피사체가 미리 지정된 경우, 관심 피사체에 대응되는 영역을 관심 영역으로 설정할 수 있다. 여기서, 관심 영역은 관심 영역 외 영역에 비해 고 퀄리티(high quality)로 처리될 수 있다.
본 발명의 일 실시 예에 따르면, 관심 영역이 전 방향 이미지(또는 카메라(310)으로부터 획득된 복수의 이미지) 또는 상기 전 방향 이미지가 매핑된 OHP 이미지의 적도 영역에 위치하는 경우, 극 영역에 위치하는 경우에 비해 왜곡 또는 데이터 손실이 적게 발생하기 때문에, 이 경우 관심 영역은 고 퀄리티로 매핑될 수 있다. 관심 영역의 매핑의 일 실시 예를 도 8a 및 8b를 참조하여 상세히 설명한다.
도 8a 및 8b는 본 발명의 다양한 실시 예에 따른 관심 영역의 매핑을 도시한다.
도 8a는 ERP 이미지(81)를 도시한다. ERP 이미지(81)는 관심 영역(81-1)을 포함할 수 있다. 이 경우, 관심 영역(81-1)은 ERP 이미지(81)의 적도 영역(81-2)에 위치할 수 있다.
도 8b는 ERP 이미지(81)가 매핑된 OHP 이미지(82)를 도시한다. 여기서, OHP 이미지(82)는 관심 영역(82-1)을 포함할 수 있다. 이 경우, 관심 영역(82-1)은 OHP 이미지(82)의 적도 영역(82-2)에 위치할 수 있다.
상술한 도 8a 및 8b의 경우와 같이, 관심 영역이 ERP 이미지 또는 OHP 이미지의 적도 영역에 포함된 경우, 관심 영역의 처리과정에서 손실되는 데이터는 최소화될 수 있다. 이 경우, 관심 영역의 열화는 최소화 될 수 있다.
도 9a 및 9b는 본 발명의 다양한 실시 예에 따른 관심 영역의 매핑을 도시한다.
도 9a는 ERP 이미지(91)를 도시한다. ERP 이미지(91)는 관심 영역(91-1)을 포함할 수 있다. 이 경우, 관심 영역(91-1)은 ERP 이미지(91)의 적도 영역(91-2)에서 벗어나, ERP 이미지(91)의 상단에 위치할 수 있다.
도 9b는 ERP 이미지(91)가 매핑된 OHP 이미지(92)를 도시한다. 여기서, OHP 이미지(92)는 관심 영역(92-1)을 포함할 수 있다. 이 경우, 관심 영역(92-1)은 OHP 이미지(92)의 적도 영역(91-2)에서 벗어나, OHP 이미지(92)의 상단에 위치할 수 있다.
도 9b의 경우, 매핑 특성으로 적도 영역 대비 극 영역의 왜곡이 크므로, ERP 이미지(91)의 원본의 관심 영역(91-1)에 비하여 관심 영역(92-1)의 데이터는 일부 손실될 수 있다.
이하에서는, 관심 영역이 ERP 이미지 또는 OHP 이미지의 적도 외의 영역에 포함되는 경우에도, 관심 영역의 처리과정에서 손실되는 데이터를 최소화하는 방법을 상세히 설명한다.
먼저, 프로세서(320)는 카메라(310)로부터 획득된 복수의 이미지로부터 OHP 이미지를 생성할 수 있다.
일 예로, 도 10을 참조하면, 프로세서(320)는 카메라(310)로부터 어안 이미지(1001)를 획득할 수 있다. 여기서, 프로세서(320)는 어안 이미지(1001)를 ERP 이미지(1002)로 변환하거나, 어안 이미지(1001)를 OHP 이미지(1003)로 변환할 수 있다. 또는, 프로세서(320)는 변환된 ERP 이미지(1002)를 OHP 이미지(1003)로 변환할 수 있다.
프로세서(320)는 포커스 영역이나 사용자의 터치 입력에 기초하여, 관심 영역을 설정할 수 있다.
일 예로, 도 11a를 참조하면, 관심 영역(region of interest, ROI)(1101-1)은 ERP 이미지(1101)의 상단부(또는, ERP 이미지(1101)의 구면 매핑을 기준으로 한 경우에는 구의 극 영역)에 포함된다.
도 11b는, 도 11a의 관심 영역(1101-1)이 OHP 이미지(1102)의 관심 영역(1102-1)에 매핑된 경우를 도시한다. 다만, 이 경우, 상술한 바와 같이 관심 영역(1102-1)의 데이터는 관심 영역(1101-1)의 데이터 대비 손실될 수 있다.
이러한 데이터 손실을 방지하기 위한 실시 예는, 도 11c를 참조하여 설명한다.
도 11c는 OHP 이미지(1103)를 도시한다. 프로세서(320)는 도 11a의 관심 영역(1101-1)을 OHP 이미지(1103)의 관심 영역(1103-1)으로 매핑할 수 있다.
이를 위해, 프로세서(320)는 매핑 방식(mapping scheme)과 관심 영역(1101-1)의 위치에 기초하여 새로운 매핑 방식을 결정할 수 있다. 여기서, 매핑 방식은 카메라(310)로부터 획득된 복수의 영상 또는 전 방향 이미지를 OHP 이미지로 매핑하는 방식으로 정의될 수 있다.
일 예로, 프로세서(320)는 매핑 방식이 도 11b의 OHP 이미지(1102)와 같고, 관심 영역(1101-1 또는 1102-1)이 ERP 이미지(1101) 또는 OHP 이미지(1102)의 상단에 위치한다고 판단되는 경우, 프로세서(320)는 기존의 매핑 방식을 도 11c의 OHP 이미지(1103)와 같은 새로운 매핑 방식(region-wise packing)으로 변경할 수 있다.
여기서, 기존의 매핑 방식에서 관심 영역(1102-1)이 다면체의 일 면에 대응되는 삼각형(1102-2)의 모서리 영역에 포함되는 반면, 새로운 매핑 방식에서는 관심 영역(1103-1)이 삼각형(1103-2)의 일 변의 영역에 포함될 수 있다.
이를 통해, 새로운 매핑 방식에서는 관심 영역(1102-1)의 데이터에 비해 관심 영역(1103-1)의 데이터는 고 퀄리티일 수 있다.
새로운 매핑 방식의 다른 예로, 도 11a의 ERP 이미지(1101)는 도 11d의 OHP 이미지(1104)로 매핑될 수 있다.
새로운 매핑 방식의 또 다른 예로, 도 11a의 ERP 이미지(1101)는 도 11e의 OHP 이미지(1105)로 매핑될 수도 있다.
상술한 예에서와 같이, 프로세서(320)는 지정된 방식(예를 들어, 도 11c 내지 11e의 OHP 이미지 매핑 방식)으로 획득된 복수의 이미지 영역들을 OHP 이미지 매핑 또는 다면체 이미지 매핑을 수행할 수 있다.
상기 매핑을 위한 매핑 방식을 결정하기 위해, 프로세서(320)는 매핑 방식에 따른 관심 영역의 위치를 판단할 수 있다. 또한, 프로세서(320)는 매핑 방식에 따른 관심 영역의 위치가 지정된 조건에 속하는지 여부를 판단할 수 있다.
본 발명의 일 실시 예에 따르면, 지정된 조건은 관심 영역이 복수의 이미지의 영역들 중 기설정된 영역에 대응되는 경우일 수 있다. 여기서, 기설정된 영역은, 일 예로, 도 11a의 ERP 이미지(1101)의 상단부의 일정 영역일 수 있다. 다른 예로, 기설정된 영역은 도 11b의 OHP 이미지(1102)의 상단부의 일정 영역일 수 있다. 또 다른 예로, 기설정된 영역은, 이미지 영역 압축률 또는 이미지 영역의 데이터 손실율에 기초하여 설정될 수도 있다.
본 발명의 다른 실시 예에 따르면, 지정된 조건은 관심 영역이 특정 매핑 방식으로 다면체에 매핑되는 경우, 상기 관심 영역이 상기 다면체의 일 면의 기설정된 영역에 대응되는 경우일 수도 있다.
관심 영역의 위치가 지정된 조건에 속하는 경우, 제1 지정 방식으로 다면체에 매핑되는 경우의 관심 영역의 제1 압축률(또는 압축손실률)은 제2 지정 방식으로 다면체에 매핑하는 경우의 관심 영역의 제2 압축률보다 클 수 있다.
일 예로, 도 11b의 OHP 이미지(1102)의 매핑 방식(제 1 지정 방식)의 경우의 관심 영역의 제1 압축률은 도 11c의 OHP(1103)의 매핑 방식(제2 지정 방식)의 경우의 관심 영역의 제2 압축률보다 클 수 있다.
여기서, OHP 이미지는 다면체의 각 면이 특정 매핑 방식으로 매핑된 이차원 이미지로 정의될 수 있다. 또한, 프로세서(320)는 OHP이미지를 이미지 데이터화하여 OHP이미지를 제2 영상 처리 장치(400)로 송신할 수 있다.
프로세서(320)는 카메라(310)로부터 획득된 복수의 영상들(또는 전 방향 영상)을 OHP 이미지(예를 들어, 2차원 영상)로 매핑시키고, 해당 매핑 방식에 대한 메타데이터를 생성할 수 있다. 일 예로, 프로세서(320)는 상기 제2 지정된 방식에 따른 다면체의 배열 속성 정보(상세히 후술함)를 포함하는 메타데이터를 생성하여 송신할 수 있다.
프로세서(320)는 OHP(octahedron projection) 방식을 이용하여 상기 전 방향 영상을 2차원 영상으로 매핑할 수 있다. 프로세서(320)는 전 방향 영상을 2차원 영상으로 매핑할 때의 좌표 값을 이용하여 메타데이터를 생성할 수 있다.
본 발명의 일 실시 예에 따르면, 프로세서(320)는 전 방향 영상을 정팔면체의 각 면에 매핑하고, 전 방향 영상이 매핑된 정팔면체의 각 면을 2차원 영상으로 매핑할 수 있다. 이때, 상기 프로세서(320)는 정팔면체의 각 면의 꼭지점의 좌표 및 매핑된 2차원 영상의 꼭지점 좌표를 매칭하고, 이러한 정보에 기초하여 메타데이터를 생성할 수 있다. 여기서, 전 방향 영상을 정팔면체에 매핑시키는 것으로 가정하였으나 전 방향 영상의 매칭 대상이 정팔면체로 제한되는 것은 물론 아니다. 일 예로, 프로세서(320)는 전 방향 영상을 팔면체에 매핑시킨 후, 매핑된 팔면체의 각 면을 2차원 영상으로 매핑시킬 수 있다. 이 경우, 팔면체의 각 면은 이등변 삼각형 또는 한 쌍의 등변을 가지지 않는 삼각형일 수수도 있다. 다른 예로, 프로세서(320)는 전 방향 영상을 16면체의 각 면에 매핑하고, 매핑된 16면체의 면들에 포함된 영역 중 일부를 2차원 영상으로 매핑할 수도 있다. 상술한 예들에서, 프로세서(320)는 팔면체 또는 16면체의 각 꼭지점 및 2차원 영상의 각 꼭지점을 매칭하고, 이러한 정보에 기초하여 메타데이터를 생성할 수도 있다.
본 발명의 일 실시 예에 따르면, 메타데이터는 다면체의 타입 정보와, 2차원 이미지(일 예로, OHP 이미지)에 포함되는 복수의 이미지 영역의 배열 속성 정보를 포함할 수 있다.
예를 들면, 다면체의 타입 정보는, 정팔면체인 경우는 '01', 정이십면체인 경우는'11'로 정의될 수 있다.
배열 속성 정보는, 다면체의 각 면과 복수의 이미지 영역 각각의 매핑 관계를 나타낼 수 있다.
일 예로, 다면체가 정팔면체인 경우, 양의 정수로 넘버링된 정팔면체의 면 1 내지 8이, 2차원 이미지 프레임에 포함된 복수의 이미지 영역 a 내지 h에 매핑된다고 가정한다. 이 경우, 배열 속성 정보는, 3차원 다면체의 각 면과 2차원 이미지 프레임에 포함된 복수의 이미지 영역 각각의 매핑 관계일 수 있다.
이러한 배열 속성은 다양할 수 있다. 다면체의 타입은 정사면체, 정팔면체 등으로 다양하고, 다면체의 각 면들은 2차원 프레임에 다양한 방식으로 매핑될 수 있기 때문이다.
예를 들면, 도 7b에서의 복수의 이미지 영역의 배열 방식은 배열 속성 '001'로 정의되고, 도 7c에서의 복수의 이미지 영역의 배열 속성은 '011'로 정의될 수 있다. 여기서, '001' 및 '011'은 서브 타입 정보로 메타데이터에 저장될 수 있다.
배열 속성 정보는, 좌표 정보(예를 들어, vertex 정보)를 더 포함할 수 있다. 즉, 배열 속성 정보는 좌표계 간의 매쉬(mesh) 정보를 포함할 수 있다. 일 실시 예에 따르면, 배열 속성 정보는, 다면체의 일 면의 각 꼭지점의 공간 좌표와 상기 다면체의 일 면이 매핑된 2차원 이미지의 일 이미지 영역의 꼭지점의 평면 좌표 각각을 매칭한 정보를 포함할 수 있다.
프로세서(320)는 관심 영역을 결정할 수 있다. 구체적으로, 프로세서(320)는 매핑 방식에 따른 관심 영역의 위치를 결정할 수 있다. 일 예로, 프로세서(320)는 매핑 방식에 따른 관심 영역의 위치가 기설정된 영역에 있다고 판된되는 경우, 카메라(310)로부터 획득된 복수의 이미지들의 영역들을 OHP 이미지로 매핑하기 위한 매핑 방식을 변경할 수 있다(상술한 도 11a 내지 11e에 대한 설명 참조). 이 경우, 메타데이터는 변경된 매핑 방식에 대한 정보(예를 들어, 다면체의 타입 정보, 서브 타입 정보, 2차원 이미지(일 예로, OHP 이미지)에 포함되는 복수의 이미지 영역의 배열 속성 정보 등 적어도 하나를 포함)를 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 메타데이터는 관심 영역에 대한 정보를 더 포함할 수 있다. 여기서, 관심 영역에 대한 정보는 관심 영역의 위치를 특정하기 위한 정보(또는 관심 영역의 위치 정보)일 수 있다.
일 예로, 관심 영역에 대한 정보는 카메라(310)로부터 획득된 복수의 이미지들을 기준으로 하는 관심 영역의 위치 정보(예를 들어, 좌표 정보)일 수 있다.
다른 예로, 관심 영역에 대한 정보는, 카메라(310)로부터 획득된 복수의 이미지들이 매핑된 ERP 이미지를 기준으로 하는 관심 영역의 위치정보일 수 있다.
또 다른 예로, 관심 영역에 대한 정보는, 카메라(310)로부터 획득된 복수의 이미지들이 매핑된 다면체를 기준으로 하는 관심 영역의 위치정보(예를 들어, 공간 좌표 정보)일 수 있다.
또 다른 예로, 관심 영역에 대한 정보는, 카메라(310)로부터 획득된 복수의 이미지들이 제1 매핑 방식으로 매핑된 제1 OHP 이미지를 기준으로 하는 관심 영역의 위치정보일 수 있다.
또 다른 예로, 관심 영역에 대한 정보는, 카메라(310)로부터 획득된 복수의 이미지들이 제1 매핑 방식으로 매핑된 제1 OHP 이미지에 포함된 관심 영역의 위치와 카메라(310)로부터 획득된 복수의 이미지들이 제2 매핑 방식으로 매핑된 제2 OHP 이미지에 포함된 관심 영역의 위치 간의 차이 정보(오프셋(offset) 정보, 예를 들어, 양 위치를 나타내는 좌표 간의 차이 값 정보)일 수 있다. 일 예로, 전방향에 대한 복수의 이미지를 오프셋 만큼 이동시킨 후 제1 매핑 방식으로 OHP 이미지를 생성할 수 있다. 이 경우, 매핑 방식 변경 없이, 관심 영역의 위치를 OHP 이미지의 고화질 영역에 위치시킬 수 있다.
또한, 관심 영역에 대한 정보는, 생성된 OHP 이미지에 관심 영역이 포함되었음을 지시하는 지시자를 포함할 수 있다.
상술한 메타데이터는 OHP 이미지가 인코딩된 영상 데이터에 대한 요청이 있을 경우 인코딩된 영상 데이터와 함께 또는 별도로 전달되거나, 영상 데이터에 대한 요청과는 별도로 특정 장치나 모듈로 전달될 수 있다.
프로세서(320)가 OHP 이미지에 대한 이미지 데이터를 생성하는 방법은 다양한 방법으로 구현 가능하다.
본 발명의 일 실시 예에 따르면, 프로세서(320)는 카메라(310)를 이용하여, 복수의 이미지를 획득할 수 있다. 프로세서(320)는 관심 영역의 위치가 제1 지정된 조건에 속하는 경우, 복수의 이미지들을 제1 지정된 방식을 이용하여 다면체에 매핑할 수 있다. 또는, 프로세서(320)는 관심 영역의 위치가 제2 지정된 조건에 속하는 경우, 복수의 이미지들을 제2 지정된 방식을 이용하여 다면체에 매핑할 수 있다. 이 경우, 프로세서(320)는 제1 지정된 방식 또는 제2 지정된 방식 중 하나의 방식으로 복수의 이미지들이 매핑된 다면체를 이용하여 OHP 이미지에 대한 이미지 데이터를 생성할 수 있다.
본 발명의 다른 실시 예에 따르면, 프로세서(320)는 카메라(310)를 이용하여, 복수의 이미지들을 회득할 수 있다. 프로세서(320)는 복수의 이미지들을 제1 지정된 방식을 이용하여 다면체에 매핑할 수 있다. 이 경우, 프로세서(320)는 다면체에 매핑된 복수의 이미지들 중 관심 영역의 위치를 확인하고, 관심 영역의 위치가 다면체에 매핑된 복수의 이미지들과 관련하여 지정된 조건에 속하는 경우, 복수의 이미지들을 제2 지정된 방식을 이용하여 다면체에 매핑할 수 있다. 여기서, 프로세서(320)는 제2 지정된 방식으로 복수의 이미지들이 매핑된 다면체를 이용하여 OHP 이미지에 대한 이미지 데이터를 생성할 수 있다.
도 12는 본 발명의 다양한 실시 예에 따른 제2 영상 처리 장치의 블록도이다.
도 12를 참조하면, 제2 영상 처리 장치(400)는 송수신부(410)(예: 도 1 의 통신 모듈(190)) 및 프로세서(420)(예: 도 1의 프로세서(120))를 포함할 수 있다.
송수신부(410)는 제1 영상 처리 장치(300)로부터 데이터를 수신한다. 일 예로, 송수신부(410)는 제1 영상 처리 장치(300)로부터 이미지 데이터와 이미지 데이터에 대한 메타데이터 중 적어도 하나를 수신할 수 있다.
프로세서(420)는 제2 영상 처리 장치(400)를 전반적으로 제어할 수 있다.
일 예로, 프로세서(420)는 제2 영상 처리 장치(400)로부터 수신된 이미지 데이터에 기초하여 출력 프레임을 렌더링할 수 있다.
출력 프레임을 렌더링하기 위하여, 프로세서 (420)는 메타데이터를 이용할 수 있다.
일 예로, 프로세서(420)는 수신된 이미지 데이터(예를 들어, OHP 이미지 데이터)에 대한 메타데이터에 포함된 타입 정보, 서브 타입 정보, 또는 배열 속성 정보에 기초하여 출력 프레임을 렌더링할 수 있다.
다른 예로, 프로세서(420)는 관심 영역에 대한 정보를 이용할 수 있다. 예를 들어, 프로세서(420)는 관심 영역에 대한 정보에 포함된 지시자(예를 들어, OHP 이미지에 관심 영역이 포함되었음을 지시함)에 기초하여, 관심 영역을 처리해야 함을 인지할 수 있다. 이 경우, 프로세서(430)는 관심 영역에 대한 정보에 포함된 관심 영역의 위치 정보에 기초하여 관심 영역의 위치를 판단할 수 있다. 이를 통해, 프로세서는(420) 관심 영역의 렌더링 중요도를 높게 판단하여, 관심 영역을 우선순위로 렌더링할 수 있다.
도 13은 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 순서도이다.
먼저, 제1 영상 처리 장치(300)는 예를 들어, 카메라(320)를 이용하여 획득한 이미지에서 관심 영역을 설정할 수 있다(1310). 제1 영상 처리 장치(300)는 관심 영역과 정다면체가 2차원 이미지에 매핑된 매핑 영역을 비교할 수 있다(1320). 이 경우, 제1 영상 처리 장치(300)는 비교 결과에 기초하여 매핑 방식을 결정할 수 있다(1330). 제1 영상 처리 장치(300)는 결정된 매핑 방식으로 OHP 이미지를 생성할 수 있다(1340). 제1 영상 처리 장치(300)는 결정된 매핑 방식에 대한 정보를 포함하는 메타데이터를 생성할 수 있다(1350). 제1 영상 처리 장치(300)는 OHP 이미지 및 메타데이터를 서버로 전송할 수 있다(1360). 서버는 OHP 이미지 및 메타데이터를 클라이언트 장치 예를 들어, 제2 영상 처리 장치(400)로 송신할 수 있다(1370). 클라이언트 장치는 서버로부터 OHP 이미지 및 메타데이터를 수신하고, 수신받은 OHP이미지에 대응하는 매핑 방식을 기반으로 렌더링을 수행할 수 있다(1380).
도 14는 본 발명의 다양한 실시 예에 따른 영상 처리 시스템의 블록도이다.
도 14를 참조하면, 영상 처리 시스템(1400)은 제1 영상 처리 장치(1410), 서버(1420) 및 제2 영상 처리 장치(1430)를 포함할 수 있다.
이하에서, 설명의 편의를 위해, 제1 영상 처리 장치(1410), 서버(1420) 및 제2 영상 처리 장치(1430)의 동작으로 실시 예를 설명할 것이나, 제1 영상 처리 장치(1410), 서버(1420) 및 제2 영상 처리 장치(1430)에 포함된 프로세서의 제어 의해 각 동작이 수행되는 것으로 이해되어도 무방하다.
제1 영상 처리 장치(1410)는 카메라로부터 전방향에 대한 복수의 이미지(예를 들어, 어안 영상)을 획득할 수 있다. 제1 영상 처리 장치(1410)는 획득된 복수의 이미지에 기초하여 ERP 이미지를 생성하거나, 플라토닉-솔리드 프로젝션(platonic-solid projection)을 통해 OHP 변환을 수행할 수도 있다. 여기서, 플라토닉-솔리드는 상기 ERP 이미지에 기초하여 수행될 수도 있다.
또한, 제1 영상 처리 장치(1410)의 ROI 인식부를 통해 관심 영역의 위치를 인식할 수 있다. 또한, 제1 영상 처리 장치(1410)는 비교부를 통해 관심 영역의 위치와 OHP 변환시 상기 관심 영역의 위치를 비교할 수 있다. 제1 영상 처리 장치(1410)는 상기 변환 결과에 기초하여 OHP 매핑 방식을 변경하고, 변경된 매핑 방식에 기초하여 OHP 변환을 수행할 수 있다. 일 예로, 제1 영상 처리 장치(1410)는 교변을 가지는 두 개의 삼각형에 기초하여 OHP를 매핑하는 방식에서, 교점을 가지는 두 개의 삼각형에 기초하여 OHP를 매핑하는 방식으로 변경할 수 있다. 여기서, 제1 영상 처리 장치(1410)는 매핑된 OHP 이미지를 no data 영역을 최소화하는 패키징 방식으로 리패키징할 수 있다. 제1 영상 처리 장치(1410)는 리패키징된 이미지 데이터와 리패키징된 이미지 데이터의 메타데이터를 서버(1420)로 송신할 수 있다.
상술한 예에서, 제1 영상 처리 장치(1410)는 전방향에 대한 복수의 이미지를 페어링된 단말을 통해 처리할 수도 있다.
일 예로, 제1 영상 처리 장치(1410)는 전방향에 대한 복수의 이미지를 획득하고, 이를 페어링된 단말로 송신할 수 있다. 이 경우, 단말은 획득된 복수의 이미지에 기초하여 ERP 이미지를 생성하거나, 플라토닉-솔리드 프로젝션을 통해 OHP 변환을 수행할 수도 있다. 여기서, 플라토닉-솔리드는 상기 ERP 이미지에 기초하여 수행될 수도 있다.
또한, 단말은 ROI 인식부를 통해 관심 영역의 위치를 인식할 수 있다. 또한, 단말은 비교부를 통해 관심 영역의 위치와 OHP 변환시 상기 관심 영역의 위치를 비교할 수 있다. 단말은 상기 변환 결과에 기초하여 OHP 매핑 방식을 변경하고, 변경된 매핑 방식에 기초하여 OHP 변환을 수행할 수 있다. 일 예로, 단말은 교변을 가지는 두 개의 삼각형에 기초하여 OHP를 매핑하는 방식에서, 교점을 가지는 두 개의 삼각형에 기초하여 OHP를 매핑하는 방식으로 변경할 수 있다. 여기서, 단말은 매핑된 OHP 이미지를 no data 영역을 최소화하는 패키징 방식으로 리패키징할 수 있다. 단말은 리패키징된 이미지 데이터와 리패키징된 이미지 데이터의 메타데이터를 서버(1420)로 송신하거나, 페어링된 제1 영상 처리 장치(1410)으로 송신할 수 있다.
서버(1420)의 트랜스 코더는 리패키징된 이미지 데이터 및 메타데이터에 기초하여 트랜스코딩을 수행할 수 있다. 서버는 트랜스코딩된 OHP 이미지 및 메타데이터를 제2 영상 처리 장치(1430)로 송신할 수 있다.
제2 영상 처리 장치(1430)는 수신된 OHP 이미지 및 메타데이터를 디코딩할 수 있다. 제2 영상 처리 장치(1430)는 메타데이터를 이용하여 OHP 이미지를 다면체에 매핑할 수 있다. 제2 영상 처리 장치(1430)의 GPU는 매핑된 다면체에 기초하여 출력 프레임을 렌더링하고 이를 디스플레이할 수 있다.
도 15는 본 발명의 다양한 실시 예에 따른 영상 처리 방법을 설명하기 위한 순서도이다.
먼저, 전자 장치(일 예로, 영상 처리 장치)는 복수의 카메라들을 이용하여 복수의 이미지들을 획득할 수 있다(1510). 전자 장치는 복수의 이미지들의 영역들 중에서 제1 지정 방식으로 다면체에 매핑될 관심 영역의 위치를 확인할 수 있다(1520). 전자 장치는 관심 영역의 위치가 지정된 조건에 속하는 경우, 복수의 이미지들을 제2 지정된 방식을 이용하여 다면체에 매핑할 수 있다(1530). 전자 장치는 복수의 이미지들이 매핑된 다면체를 이용하여 이미지 데이터를 생성할 수 있다(1540).
한편, 상술한 본 개시의 다양한 실시 예들에 다른 영상 처리 방법은 컴퓨터로 실행 가능한 프로그램 코드로 구현되어 다양한 비 일시적 판독 가능 매체(non-transitory computer readable medium)에 저장된 상태로 프로세서에 의해 실행되도록 각 서버 또는 기기들에 제공될 수 있다.
일 예로, 복수의 카메라들을 이용하여 복수의 이미지들을 획득하는 과정, 복수의 이미지들의 영역들 중에서 제1 지정 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하는 관정, 관심 영역의 위치가 지정된 조건에 속하는 경우, 복수의 이미지들을 제2 지정된 방식을 이용하여 다면체에 매핑하는 과정 및 복수의 이미지들이 매핑된 다면체를 이용하여 이미지 데이터를 생성하는 과정을 수행하는 프로그램이 저장된 비 일시적 판독 가능 매체(non-transitory computer readable medium)가 제공될 수 있다.
비 일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
300: 제1 영상 처리 장치 400: 제2 영상 처리 장치
310: 카메라 410: 송수신부
320: 프로세서 420: 프로세서

Claims (20)

  1. 전자 장치에 있어서,
    복수의 카메라들; 및
    프로세서;를 포함하고,
    상기 프로세서는,
    상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고,
    상기 복수의 이미지들의 영역들 중에서 제1 지정된 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하고,
    상기 관심 영역의 위치가 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 및
    상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정된, 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 복수의 이미지들의 획득과 관련한 포커스(focus) 영역 또는 상기 관심 영역 설정을 위한 상기 복수의 이미지들 중 적어도 일부에 대한 터치 입력에 적어도 기반하여 상기 관심 영역을 설정(set)하도록 설정된, 전자 장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 관심 영역이 상기 복수의 이미지들의 영역들 중 기설정된 영역에 대응되는 경우 상기 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  4. 제3항에 있어서,
    상기 기설정된 영역은,
    이미지 영역 압축률 또는 이미지 영역의 데이터 손실율에 기초하여 설정되는, 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 관심 영역이 상기 다면체의 일 면의 기설정된 영역에 대응되는 경우 상기 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  6. 제1항에 있어서,
    상기 관심 영역의 위치가 지정된 조건에 속하는 경우, 상기 제1 지정된 방식으로 상기 다면체에 매핑되는 경우의 상기 관심 영역의 제1 압축률은 상기 제2 지정된 방식으로 상기 다면체에 매핑하는 경우의 상기 관심 영역의 제2 압축률보다 큰, 전자 장치.
  7. 제1항에 있어서,
    상기 프로세서는,
    상기 지정된 방식에 따른 상기 다면체의 배열 속성 정보를 포함하는 메타데이터를 생성하도록 설정된, 전자 장치.
  8. 전자 장치에 있어서,
    복수의 카메라들; 및
    프로세서;를 포함하고,
    상기 프로세서는,
    상기 복수의 카메라들을 이용하여, 복수의 이미지들을 획득하고,
    상기 복수의 이미지들의 영역들 중 제1 지정된 방식으로 다면체에 매핑될 관심 영역의 위치를 확인하고,
    상기 관심 영역의 위치가 제1 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 상기 제1 지정된 방식을 이용하여 다면체에 매핑하고,
    상기 관심 영역의 위치가 제2 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고, 및
    상기 제1 지정된 방식 또는 상기 제2 지정된 방식 중 하나의 방식으로 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정된, 전자 장치.
  9. 제8항에 있어서,
    상기 프로세서는,
    상기 복수의 이미지들의 획득과 관련한 포커스(auto focus) 영역 또는 상기 관심 영역 설정을 위한 상기 복수의 이미지들 중 적어도 일부에 대한 터치 입력에 적어도 기반하여 상기 관심 영열을 지정(set)하도록 설정된, 전자 장치.
  10. 제8항에 있어서,
    상기 프로세서는,상기 관심 영역이 상기 복수의 이미지들의 영역들 중 기설정된 영역에 대응되지 않는 경우 상기 제 1 지정된 조건을 만족하는 것으로 결정하고, 및
    상기 관심 영역이 상기 복수의 이미지들의 영역들 중 상기 기설정된 영역에 대응되는 경우상기 제 2 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  11. 제10항에 있어서,
    상기 기설정된 영역은,
    이미지 영역 압축률 또는 이미지 영역의 데이터 손실율에 기초하여 설정되는, 전자 장치.
  12. 제8항에 있어서,
    상기 프로세서는,
    상기 관심 영역이 상기 다면체의 일 면의 제 1 영역에 대응되는 경우 상기 제1 지정된 조건을 만족하는 것으로 결정하고, 및
    상기 관심 영역이 상기 다면체의 일 면의 제 2 영역에 대응되는 경우 상기 제 2 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  13. 제8항에 있어서,
    상기 관심 영역의 위치가 상기 제2 지정된 조건에 속하는 경우, 상기 제1 지정 방식으로 상기 다면체에 매핑되는 경우의 상기 관심 영역의 제1 압축률은 상기 제2 지정 방식으로 상기 다면체에 매핑하는 경우의 상기 관심 영역의 제2 압축률보다 큰, 전자 장치.
  14. 제8항에 있어서,
    상기 프로세서는,
    상기 제2 지정된 방식에 따른 상기 다면체의 배열 속성 정보를 포함하는 메타데이터를 생성하도록 설정된, 전자 장치.
  15. 전자 장치에 있어서,
    복수의 카메라들; 및
    프로세서;를 포함하고,
    상기 프로세서는,
    상기 복수의 카메라들을 이용하여, 복수의 이미지들을 회득하고,
    상기 복수의 이미지들을 제1 지정된 방식을 이용하여 다면체에 매핑하고,
    상기 다면체에 매핑된 복수의 이미지들 중 관심 영역의 위치를 확인하고,
    상기 위치가 상기 다면체에 매핑된 상기 복수의 이미지들과 관련하여 지정된 조건에 속하는 경우, 상기 복수의 이미지들을 제2 지정된 방식을 이용하여 상기 다면체에 매핑하고,
    상기 제2 지정된 방식으로 상기 복수의 이미지들이 매핑된 상기 다면체를 이용하여 이미지 데이터를 생성하도록 설정된, 전자 장치.
  16. 제15항에 있어서,
    상기 프로세서는,
    상기 복수의 이미지들의 획득과 관련한 포커스(focus) 영역 또는 상기 관심 영역 설정을 위한 상기 복수의 이미지들 중 적어도 일부에 대한 터치 입력에 적어도 기반하여 상기 관심 영역을 지정(set)하도록 설정된, 전자 장치.
  17. 제15항에 있어서,
    상기 프로세서는,상기 관심 영역이 상기 복수의 이미지들의 영역들 중 기설정된 영역에 대응되는 경우 상기 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  18. 제17항에 있어서,
    상기 기설정된 영역은,
    이미지 영역 압축률 또는 이미지 영역의 데이터 손실율에 기초하여 설정되는, 전자 장치.
  19. 제15항에 있어서,
    상기 프로세서는,
    상기 관심 영역이 상기 다면체의 일 면의 제 1 영역에 대응되는 경우 상기 제1 지정된 조건을 만족하는 것으로 결정하고, 및
    상기 관심 영역이 상기 다면체의 일 면의 제 2 영역에 대응되는 경우 상기 제 2 지정된 조건을 만족하는 것으로 결정하도록 설정된, 전자 장치.
  20. 제15항에 있어서,
    상기 관심 영역의 위치가 상기 지정된 조건에 속하는 경우, 상기 제1 지정 방식으로 상기 다면체에 매핑되는 경우의 상기 관심 영역의 제1 압축률은 상기 제2 지정된 방식으로 상기 다면체에 매핑하는 경우의 상기 관심 영역의 제2 압축률보다 큰, 전자 장치.
KR1020170175890A 2017-12-20 2017-12-20 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법 KR102442089B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170175890A KR102442089B1 (ko) 2017-12-20 2017-12-20 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법
US16/771,031 US11258938B2 (en) 2017-12-20 2018-12-20 Apparatus for mapping image to polyhedron according to location of region of interest of image, and processing method therefor
PCT/KR2018/016370 WO2019125017A1 (ko) 2017-12-20 2018-12-20 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170175890A KR102442089B1 (ko) 2017-12-20 2017-12-20 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법

Publications (2)

Publication Number Publication Date
KR20190074490A true KR20190074490A (ko) 2019-06-28
KR102442089B1 KR102442089B1 (ko) 2022-09-13

Family

ID=66994941

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170175890A KR102442089B1 (ko) 2017-12-20 2017-12-20 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법

Country Status (3)

Country Link
US (1) US11258938B2 (ko)
KR (1) KR102442089B1 (ko)
WO (1) WO2019125017A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102398280B1 (ko) * 2021-10-08 2022-05-16 한아름 관심 영역에 대한 영상을 제공하기 위한 장치 및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180059210A (ko) * 2016-11-25 2018-06-04 삼성전자주식회사 영상 처리 장치 및 그 영상 처리 방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923334A (en) * 1996-08-05 1999-07-13 International Business Machines Corporation Polyhedral environment map utilizing a triangular data structure
US6879338B1 (en) * 2000-03-31 2005-04-12 Enroute, Inc. Outward facing camera system for environment capture
US20080291217A1 (en) * 2007-05-25 2008-11-27 Google Inc. Viewing and navigating within panoramic images, and applications thereof
US20090063419A1 (en) * 2007-08-31 2009-03-05 Jukka Kalevi Nurminen Discovering peer-to-peer content using metadata streams
US20100001997A1 (en) * 2007-01-04 2010-01-07 Hajime Narukawa Information Processing Method
US20140105597A1 (en) * 2010-11-01 2014-04-17 Calix, Inc. Network interface device synchronization
US20170358126A1 (en) * 2016-06-14 2017-12-14 Samsung Electronics Co., Ltd. Image processing apparatus and method
US20170374385A1 (en) * 2016-06-27 2017-12-28 Mediatek Inc. Method and Apparatus of Inter Coding for VR Video Using Virtual Reference Frames

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308131B2 (en) * 2002-12-03 2007-12-11 Ntt Docomo, Inc. Representation and coding of panoramic and omnidirectional images
JP4355535B2 (ja) 2003-08-07 2009-11-04 株式会社岩根研究所 360度画像変換処理装置
KR20140100656A (ko) 2013-02-06 2014-08-18 한국전자통신연구원 전방향 영상 및 3차원 데이터를 이용한 시점 영상 제공 장치 및 방법
KR101712108B1 (ko) 2013-07-16 2017-03-03 삼성전자 주식회사 비트 뎁스 및 컬러 포맷의 변환을 동반하는 업샘플링 필터를 이용하는 스케일러블 비디오 부호화 방법 및 장치, 스케일러블 비디오 복호화 방법 및 장치
KR101583646B1 (ko) 2014-05-12 2016-01-19 (주)헥스하이브 전 방위 평면 이미지를 생성하는 방법 및 장치
KR101682627B1 (ko) 2014-09-05 2016-12-05 삼성에스디에스 주식회사 영상 스트림 제공 방법 및 시스템과 중계 장치
US9918082B2 (en) 2014-10-20 2018-03-13 Google Llc Continuous prediction domain
US10147224B2 (en) * 2016-02-16 2018-12-04 Samsung Electronics Co., Ltd. Method and apparatus for generating omni media texture mapping metadata
WO2018044073A1 (en) * 2016-09-01 2018-03-08 Samsung Electronics Co., Ltd. Image streaming method and electronic device for supporting the same
US20180098090A1 (en) * 2016-10-04 2018-04-05 Mediatek Inc. Method and Apparatus for Rearranging VR Video Format and Constrained Encoding Parameters
KR102498598B1 (ko) * 2016-10-18 2023-02-14 삼성전자주식회사 영상 처리 장치 및 그 영상 처리 방법
KR20180091381A (ko) 2017-02-06 2018-08-16 삼성전자주식회사 다면체에 기반한 vr 이미지를 제공하는 전자 장치 및 그 이미지의 제공 방법
US10957009B2 (en) * 2017-05-04 2021-03-23 Electronics And Telecommunications Research Institute Image processing apparatus and method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923334A (en) * 1996-08-05 1999-07-13 International Business Machines Corporation Polyhedral environment map utilizing a triangular data structure
US6879338B1 (en) * 2000-03-31 2005-04-12 Enroute, Inc. Outward facing camera system for environment capture
US20100001997A1 (en) * 2007-01-04 2010-01-07 Hajime Narukawa Information Processing Method
US20080291217A1 (en) * 2007-05-25 2008-11-27 Google Inc. Viewing and navigating within panoramic images, and applications thereof
US20090063419A1 (en) * 2007-08-31 2009-03-05 Jukka Kalevi Nurminen Discovering peer-to-peer content using metadata streams
US20140105597A1 (en) * 2010-11-01 2014-04-17 Calix, Inc. Network interface device synchronization
US20170358126A1 (en) * 2016-06-14 2017-12-14 Samsung Electronics Co., Ltd. Image processing apparatus and method
US20170374385A1 (en) * 2016-06-27 2017-12-28 Mediatek Inc. Method and Apparatus of Inter Coding for VR Video Using Virtual Reference Frames

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102398280B1 (ko) * 2021-10-08 2022-05-16 한아름 관심 영역에 대한 영상을 제공하기 위한 장치 및 방법

Also Published As

Publication number Publication date
WO2019125017A1 (ko) 2019-06-27
US11258938B2 (en) 2022-02-22
KR102442089B1 (ko) 2022-09-13
US20210176391A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
US11700352B2 (en) Rectilinear viewport extraction from a region of a wide field of view using messaging in video transmission
US11128803B2 (en) Electronic device for correcting image and method for operating the same
CN110073662B (zh) 全景视频的建议视口指示方法及装置
CN109309796B (zh) 使用多个相机获取图像的电子装置和用其处理图像的方法
KR20170132669A (ko) 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
US20180276800A1 (en) Apparatus and methods for source dynamic range processing of panoramic content
CN109413399B (zh) 使用深度图合成对象的装置及其方法
JP2019534500A (ja) 没入型ビデオフォーマットのための方法、機器、及びシステム
CN110956583A (zh) 球面图像处理方法、装置及服务器
US20190266802A1 (en) Display of Visual Data with a Virtual Reality Headset
CN111788603A (zh) 用于以第二图像处理方案在外部电子设备中校正以第一图像处理方案校正的图像的电子设备和方法
US11258938B2 (en) Apparatus for mapping image to polyhedron according to location of region of interest of image, and processing method therefor
US11430178B2 (en) Three-dimensional video processing
US11102448B2 (en) Image capturing apparatus, image processing system, image processing method, and recording medium
KR20190065736A (ko) 3d 이미지를 생성하기 위한 전자 장치 및 방법
US11477443B2 (en) Electronic device for performing image compression and operating method of electronic device
US11928775B2 (en) Apparatus, system, method, and non-transitory medium which map two images onto a three-dimensional object to generate a virtual image
US20210192679A1 (en) Electronic device and omni-directional image display method of electronic device
US11380096B2 (en) Electronic device for performing image processing and method thereof
US11405521B2 (en) Electronic device for processing file including multiple related pieces of data
US20240114107A1 (en) Electronic apparatus and method thereof
KR101947799B1 (ko) 가상현실 콘텐츠 서비스를 위한 360도 vr 어안 렌더링 방법

Legal Events

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