KR102130902B1 - 360도 영상을 2d 영상으로 변환하는 방법 및 장치 - Google Patents

360도 영상을 2d 영상으로 변환하는 방법 및 장치 Download PDF

Info

Publication number
KR102130902B1
KR102130902B1 KR1020180148187A KR20180148187A KR102130902B1 KR 102130902 B1 KR102130902 B1 KR 102130902B1 KR 1020180148187 A KR1020180148187 A KR 1020180148187A KR 20180148187 A KR20180148187 A KR 20180148187A KR 102130902 B1 KR102130902 B1 KR 102130902B1
Authority
KR
South Korea
Prior art keywords
image
importance
viewpoint
path
converting
Prior art date
Application number
KR1020180148187A
Other languages
English (en)
Other versions
KR20200062595A (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 KR1020180148187A priority Critical patent/KR102130902B1/ko
Publication of KR20200062595A publication Critical patent/KR20200062595A/ko
Application granted granted Critical
Publication of KR102130902B1 publication Critical patent/KR102130902B1/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/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • G06T3/073Transforming surfaces of revolution to planar images, e.g. cylindrical surfaces to planar images
    • G06T3/0043
    • G06T3/0087
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/16Spatio-temporal transformations, e.g. video cubism

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

일 실시예에 따른 영상을 변환하는 방법은 360도 영상의 프레임 별로 중요도를 결정하고, 프레임들의 재생 시간의 역순으로 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성하고, 중간 영상을 기초로 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정하며, 시점 추적을 위한 경로를 기초로 360도 영상을 2D 영상으로 변환한다.

Description

360도 영상을 2D 영상으로 변환하는 방법 및 장치{METHOD AND APPARATUS OF CONVERTING 360 DEGREE PANORAMIC IMAGE TO 2D IMAGE}
아래 실시예들은 360도 영상을 2D 영상으로 변환하는 방법 및 장치에 관한 것이다.
360도 파노라마 영상은 장면의 정면에서 전체 주변 영역으로 확장된 스토리텔링 캔버스를 통해 한 프레임에 주변 환경을 담을 수 있으며, 추가 정보 등과 같이 풍부한 정보를 제공할 수 있다. 하지만, 사람의 눈에 의한 제한된 시야로 인해 시청자가 360도 파노라마 영상을 전체적으로 즐기는 것은 용이하지 않다. 다시 말해, 시청자는 한 번에 360도 파노라마 영상을 전부 볼 수는 없고, 일부만 볼 수 있다. 따라서, 시청자의 시점이 위치하지 않은 영역에서 재생되는 장면에서는 중요한 이벤트가 누락될 가능성 또한 존재한다는 문제점이 있다.
일 측에 따르면, 영상을 변환하는 방법은 360도 영상의 프레임 별로 중요도를 결정하는 단계; 상기 프레임들의 재생 시간의 역순으로 상기 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성하는 단계; 상기 중간 영상을 기초로, 상기 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정하는 단계; 및 상기 시점 추적을 위한 경로를 기초로, 상기 360도 영상을 2D 영상으로 변환하는 단계를 포함한다.
상기 중요도를 결정하는 단계는 상기 360도 영상의 프레임 별로 중요도 볼륨(importance volume)을 결정하는 단계; 및 상기 중요도 볼륨에 기초하여, 상기 중요도를 결정하는 단계를 포함할 수 있다.
상기 중요도 볼륨을 결정하는 단계는 상기 360도 영상의 이미지 공간에 포함된 각 픽셀의 위도 및 경도에 기초한 해상도(resolution)에 의해 상기 중요도를 샘플링하여 등거리 이미지 공간(equirectangular image spaces)을 생성하는 단계를 포함할 수 있다.
상기 중요도를 결정하는 단계는 상기 중요도 볼륨에서의 공간적 이미지 현저도(spatial image saliency), 시간적 움직임 현저도(temporal motion saliency), 및 객체 현저도(object saliency) 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정 하는 단계; 및 상기 중요 영역에 기초하여, 상기 프레임 별로 상기 중요도를 결정하는 단계를 더 포함할 수 있다.
상기 중요 영역을 설정하는 단계는 상기 공간적 이미지 현저도, 상기 시간적 움직임 현저도, 및 객체 현저도의 가중합에 따른 에너지 최적화(energy optimization)를 통해 상기 중요 영역을 설정하는 단계를 포함할 수 있다.
상기 중요도를 결정하는 단계는 상기 적어도 하나의 현저도에, 상기 적어도 하나의 현저도의 공간 분포(spatial distribution)에 따른 클러스터링에 기초한 가중치를 적용하여 상기 중요도를 결정하는 단계를 포함할 수 있다.
상기 가중치를 적용하여 상기 중요도를 결정하는 단계는 상기 적어도 하나의 현저도의 공간 분포를 고려하여 상기 적어도 하나의 현저도에 대응하는 바이너리 맵(binary map)을 생성하는 단계; 상기 바이너리 맵을 클러스터링(clustering) 하는 단계; 상기 클러스터링 결과에 따른 클러스터(cluster)를 기초로, 가우시안 분포(Gaussian distribution)를 따르는 가중치 맵(weight map)을 생성하는 단계; 및 상기 가중치 맵에 따른 가중치를, 상기 가중치 맵에 대응하는 적어도 하나의 현저도에 적용하여 상기 중요도를 결정하는 단계를 포함할 수 있다.
상기 가중치 맵은 상기 바이너리 맵 상의 어느 한 점과 상기 클러스터의 중심 간의 거리에 반비례하는 가중치 값을 가질 수 있다.
상기 중간 영상을 생성하는 단계는 상기 중요도 볼륨을 기초로, 최대 중요도를 갖는 경로를 찾기 위한 에너지 함수를 정의 하는 단계; 및 상기 에너지 함수에 따른 누적 에너지(cumulative energy)를 산출하는 동적 프로그래밍(dynamic programming) 기법을 이용하여 상기 중간 영상을 생성하는 단계를 포함할 수 있다.
상기 시점 추적을 위한 경로를 결정하는 단계는 상기 중요도 볼륨에서의 어느 한 포인트(point)에 인접한 복수 개의 인접포인트들 중 최대 누적 에너지를 갖는 인접 포인트를 선택하는 단계; 및 상기 선택된 인접 포인트에 기초하여, 상기 시점 추적을 위한 경로를 결정하는 단계를 포함할 수 있다.
상기 영상을 변환하는 방법은 사용자 인터랙션(user interaction)에 의해 상기 360도 영상으로부터 상기 사용자에 의해 선택된 포인트를 입력받는 단계를 더 포함하고, 상기 시점 추적을 위한 경로를 결정하는 단계는 상기 중간 영상 및 상기 입력된 포인트를 기초로, 상기 프레임들의 재생 시간 순으로 상기 시점 추적을 위한 경로를 결정하는 단계를 포함할 수 있다.
상기 시점 추적을 위한 경로를 결정하는 단계는 상기 360도 영상에 대응하는 비디오 공간에서 인접한 포인트들 사이의 최대 중요도를 추적함으로써 상기 중간 영상의 중요 영역을 통과하는 초기 최적 경로를 생성하는 단계; 및 큐빅 스플라인 곡선(cubic spline curve)을 상기 초기 최적 경로에 피팅하는 커브 피팅(curve fitting)을 통해 상기 시점 추적을 위한 경로를 실시간으로 스무딩하는 단계를 포함할 수 있다.
상기 2D 영상으로 변환하는 단계는 가상 카메라를 상기 스무딩된 경로에 따라 회전시킴으로써 상기 360도 파노라도 영상을 2D 영상으로 변환하는 단계를 포함할 수 있다.
상기 시점 추적을 위한 경로를 결정하는 단계는 상기 시점 추적을 위한 경로 상의 어느 한 포인트에 대한 커브 피팅 에너지(curve fitting energy)와 비선형 에너지(non-linear energy)의 합이 최소가 되도록 하는 에너지 최소화 방정식에 기초하여, 상기 시점 추적을 위한 경로를 결정하는 단계를 포함할 수 있다.
상기 영상을 변환하는 방법은 사용자의 시점 변화에 따른 현재 프레임에서의 시점의 변화량을 기초로, 상기 사용자가 현재 보고 있는 영역을 전면으로 회전시키는 복원 가이던스를 활성화하는 단계를 더 포함할 수 있다.
일 측에 따르면, 영상을 변환하는 장치는 360도 영상을 수신하는 통신 인터페이스; 및 상기 360도 영상의 프레임 별로 중요도를 결정하고, 상기 프레임들의 재생 시간의 역순으로 상기 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성하고, 상기 중간 영상을 기초로, 상기 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정하며, 상기 시점 추적을 위한 경로를 기초로 상기 360도 영상을 2D 영상으로 변환하는 프로세서를 포함한다.
상기 영상을 변환하는 장치는 상기 변환된 2D 영상을 디스플레이하는 디스플레이 장치를 더 포함할 수 있다. 상기 프로세서는 상기 360도 영상의 프레임 별로 중요도 볼륨을 결정하고, 상기 중요도 볼륨에 기초하여 상기 중요도를 결정할 수 있다.
상기 프로세서는 상기 360도 영상의 프레임 별로 상기 중요도 볼륨에서의 공간적 이미지 현저도, 시간적 움직임 현저도, 및 객체 현저도 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정하고, 상기 중요 영역에 기초하여, 상기 프레임 별 중요도를 결정할 수 있다.
도 1은 일 실시예에 따른 360도 영상으로부터 자동 변환된 2D 영상들을 도시한 도면.
도 2는 일 실시예에 따른 영상을 변환하는 방법을 나타낸 흐름도.
도 3은 일 실시예에 따른 영상을 변환하는 방법을 설명하기 위한 도면.
도 4는 일 실시예에 따른 현저도 계산 결과를 도시한 도면.
도 5는 도 4의 현저도 계산 결과에 기초한 현저도 맵들에 대응하는 바이너리 맵들을 도시한 도면.
도 6은 도 5에 도시된 바이너리 맵들에 대한 클러스터링 결과를 도시한 도면.
도 7을 일 실시예에 따른 가중치 맵들과 가중화된 중요도 맵을 도시한 도면.
도 8은 일 실시예에 따른 등거리 이미지 공간에서 어느 한 포인트에 인접한 복수개의 인접 포인트들을 찾는 방법을 설명하기 위한 도면.
도 9는 일 실시예에 따라 커브 피팅에 의한 스무딩을 수행한 결과를 설명하기 위한 도면.
도 10은 일 실시예에 따른 사용자 인터랙션에 의해 경로를 결정하는 방법을 설명하기 위한 도면.
도 11은 일 실시예에 따라 모션 플랫폼에 자동 안내를 적용한 결과를 설명하기 위한 도면.
도 12는 일 실시예에 따른 영상을 변환하는 장치의 블록도.
본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실시예들은 다양한 다른 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의에"와 "바로~간의에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 일 실시예에 따른 360도 영상으로부터 자동 변환된 2D 영상들을 도시한 도면이다. 도 1의 (a)를 참조하면, 입력된 원본 영상인 360도 영상으로부터 획득한 이미지 시퀀스가 도시된다. 이하에서 '360도 영상'과 '360도 파노라마 영상'은 동일한 의미로 이해될 수 있다. 도 1의 (a)에 표시된 영역(110)은 360도 파노라마 영상을 시청하는 시청자의 시야(viewing area)를 나타낸다. 이때, 가장 중요한 이벤트는 주로 영상의 가운데에 표시될 수 있다.
도 1의 (b)를 참조하면, 원본 영상을 정면 시점(front viewpoint)에서 렌더링한 결과를 캡쳐한 2D 영상들이 도시된다. 도 1의 (b)는 시청자의 시야를 고려하지 않고 시점을 영상의 중앙에 고정한 경우에 얻어지는 2D 영상들에 해당할 수 있다. 이와 같이 사용자의 시야를 고려하지 않은 채 시점을 정면으로 고정하는 경우, 시청자는 정면이 아닌 영역에서 재생되는 주요 캐릭터의 움직임 등과 같은 중요 이벤트를 제대로 인식하기 어려울 수 있다.
도 1의 (c)를 참조하면, 일 실시예에 따른 자동 안내에 의해 변화되는 시점의 경로에 따라 캡쳐한 2D 영상들이 도시된다. 일 실시예에 따른 영상을 변환하는 장치(이하, '변환 장치')는 시청자가 360도 파노라마 영상을 시청하는 중에 360 동영상 플레이어의 가상 카메라를 자동으로 회전하여 동영상의 중요 영역을 시청자에게 안내할 수 있다. 이를 통해, 시청자는 장면에서 중요한 이벤트를 찾기 위한 최소한의 노력으로 360도 파노라마 영상에서의 주요 이벤트를 빠짐없이 파악할 수 있다.
이하, 본 명세서에서 '자동 안내'는 전술한 바와 같이 360도 파노라마 영상의 중요 영역을 자동으로 시청자에게 안내하는 기능으로 이해될 수 있다. 아래에서 보다 구체적으로 설명하겠지만, 자동 안내는 사용자의 시점 추적 및/또는 사용자 인터랙션 등을 반영하여 수행될 수 있다.
일 실시예에서는 각 시야 방향의 중요도를 평가하기 위해 공간 현저도 및/또는 시간 현저도를 클러스터 기반의 가중치와 결합할 수 있다. 공간 현저도 및/또는 시간 현저도에 대하여는 아래의 도 3을 참조하여 구체적으로 설명한다.
변환 장치는 비디오 공간에서 각 시선 방향의 중요도를 누적함으로써 가이던스 볼륨(guidance volume)을 구성할 수 있다. 변환 장치는 360도 파노라마 영상의 재생 중에 가이던스 볼륨을 통한 역방향 추적에 의해 시청자의 시야 방향(viewing direction)에 따른 초기 최적 경로(initial optimal path)를 결정할 수 있다. 변환 장치는 예를 들어, 패널라이즈드 커브 피팅(penalized curve fitting)을 사용하여 경로를 스무딩할 수 있다. 변환 장치는 스무딩된 경로에 따라 가상 카메라(virtual camera)를 회전시킴으로써 360도 파노라마 영상에 포함된 중요 영역 또는 중요 이벤트를 나타내는 2D 영상을 획득할 수 있다.
도 2는 일 실시예에 따른 영상을 변환하는 방법을 나타낸 흐름도이다. 도 2를 참조하면, 일 실시예에 따른 변환 장치는 360도 영상의 프레임 별로 중요도를 결정한다(210). 변환 장치는 예를 들어, 360도 영상의 프레임 별로 도 3의 323에 도시된 것과 같이 해당 프레임에서의 중요한 움직임 또는 중요한 객체가 표시된 중요도 볼륨(importance volume)을 결정할 수 있다. 이때, 변환 장치는 360도 영상의 이미지 공간에 포함된 각 픽셀의 위도 및 경도에 기초한 해상도(resolution)에 의해 중요도를 샘플링하여 등거리 이미지 공간(equirectangular image spaces)을 생성함으로써 중요도 볼륨을 결정할 수 있다.
변환 장치는 예를 들어, 아래의 도 4에 도시된 것과 같이, 중요도 볼륨에서의 공간적 이미지 현저도(spatial image saliency), 시간적 움직임 현저도(temporal motion saliency), 및 객체 현저도(object saliency) 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정할 수 있다. 변환 장치는 예를 들어, 공간적 이미지 현저도, 시간적 움직임 현저도, 및 객체 현저도의 가중합에 따른 에너지 최적화(energy optimization)를 통해 중요 영역을 설정할 수 있다.
변환 장치는 중요 영역에 기초하여, 프레임 별로 중요도를 결정할 수 있다. 변환 장치는 적어도 하나의 현저도에, 적어도 하나의 현저도의 공간 분포(spatial distribution)에 따른 클러스터링에 기초한 가중치를 적용하여 중요도를 결정할 수 있다. 변환 장치는 예를 들어, 적어도 하나의 현저도의 공간 분포를 고려하여 도 5에 도시된 것과 같이 적어도 하나의 현저도에 대응하는 바이너리 맵(binary map)을 생성하고, 도 6에 도시된 것과 같이 바이너리 맵을 클러스터링(clustering)할 수 있다. 변화 장치는 클러스터링 결과에 따른 클러스터(cluster)를 기초로, 가우시안 분포(Gaussian distribution)를 따르는 가중치 맵(weight map)을 생성할 수 있다. 변환 장치는 가중치 맵에 따른 가중치를, 가중치 맵에 대응하는 적어도 하나의 현저도에 적용하여 중요도를 결정할 수 있다. 이때, 중요도는 예를 들어, 도 7에 도시된 것과 같은 중요도 맵의 형태로 표현될 수 있다. 가중치 맵은 바이너리 맵 상의 어느 한 점과 클러스터의 중심 간의 거리에 반비례하는 가중치 값을 가질 수 있다. 변환 장치가 프레임 별로 중요도를 결정하는 구체적인 방법은 아래의 도 5 내지 도 7을 참조하여 구체적으로 설명한다.
변환 장치는 프레임들의 재생 시간의 역순으로 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성한다(220). 변환 장치는 예를 들어, 중요도 볼륨을 기초로, 최대 중요도를 갖는 경로를 찾기 위한 에너지 함수를 정의하고, 에너지 함수에 따른 누적 에너지(cumulative energy)를 산출하는 동적 프로그래밍(dynamic programming) 기법을 이용하여 중간 영상을 생성할 수 있다. 중간 영상은 '가이던스 볼륨(guidance volume)'이라 부를 수 있으며, 예를 들어, 도 3의 326과 같이 표현될 수 있다. 변환 자치가 중간 영상을 생성하는 방법은 아래의 도 8을 참조하여 구체적으로 설명한다.
변환 장치는 중간 영상을 기초로, 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정한다(230). 변환 장치는 중요도 볼륨에서의 어느 한 포인트(point)에 인접한 복수 개의 인접 포인트들 중 최대 누적 에너지를 갖는 인접 포인트를 선택할 수 있다. 변환 장치는 선택된 인접 포인트에 기초하여, 시점 추적을 위한 경로를 결정할 수 있다. 여기서 결정되는 경로는 시점 추적을 위해 자동적으로 결정되는 안내 경로(guidance path)에 해당할 수 있다. 변환 장치는 360도 영상에 대응하는 비디오 공간에서 인접한 포인트들 사이의 최대 중요도를 추적함으로써 중간 영상의 중요 영역(들)을 통과하는 초기 최적 경로를 생성할 수 있다. 변환 장치는 예를 들어, 큐빅 스플라인 곡선(cubic spline curve)을 초기 최적 경로에 피팅하는 커브 피팅(curve fitting)을 통해 시점 추적을 위한 경로를 실시간으로 스무딩(smoothing)할 수 있다. 또한, 변환 장치는 시점 추적을 위한 경로 상의 어느 한 포인트에 대한 커브 피팅 에너지(curve fitting energy)와 비선형 에너지(non-linear energy)의 합이 최소가 되도록 하는 에너지 최소화 방정식에 기초하여, 시점 추적을 위한 경로를 결정할 수 있다. 변환 장치가 시점 추적을 위한 경로를 결정하는 방법은 아래의 도 9를 참조하여 구체적으로 설명한다.
변환 장치는 시점 추적을 위한 경로를 기초로, 360도 영상을 2D 영상으로 변환한다(240). 변환 장치는 예를 들어, 가상 카메라를 스무딩된 경로에 따라 회전시킴으로써 360도 파노라마 영상을 2D 영상으로 변환할 수 있다.
도 3은 일 실시예에 따른 영상을 변환하는 방법을 설명하기 위한 도면이다. 도 3을 참조하면, 원본 영상(310)의 중요 영역을 통해 안내(guidance)가 자동적으로 생성되는 과정이 도시된다. '중요 영역'은 예를 들어, 해당 영상에서 주인공의 움직임, 새로운 객체의 출현 등과 같이 해당 영상의 내용을 파악하는 데에 필요한 영역에 해당하며, 영상에서 공간적 및 시간적으로 가장 두드러진 현저도(saliency)를 나타내는 영역에 해당할 수 있다.
변환 장치는 원본 영상(예를 들어, 360도 파노라마 영상)의 시청자에게, 현재 시점을 중요 영역에 최대한 가깝게 인도하는 안내(guidance)를 제공할 수 있다. 이를 위해 변환 장치는 가이던스 볼륨을 생성하는 단계 및 경로(안내 경로)를 검색하는 단계를 수행할 수 있다. 여기서, 가이던스 볼륨을 생성하는 단계는 전처리(pre-processing)(320) 과정에 해당하고, 경로를 검색하는 단계는 실시간 처리(real-time processing)(330, 340) 과정에 해당할 수 있다.
변환 장치는 입력된 원본 영상(310)에 대한 전처리(320) 과정 및 실시간 처리(330, 340) 과정을 거친 결과를 기초로 가상 카메라를 회전시켜 360도 영상을 2D 영상으로 변환(350)할 수 있다.
변환 장치는 전처리(320) 과정에서 중요도 볼륨(importance volume)(323) 및 가이던스 볼륨(guidance volume)(326)을 생성할 수 있다.
중요도 볼륨(323)은 공간적 및 시간적으로 영상에서 가장 두드러진 현저도(saliency)를 나타내는 영역(즉, 중요 영역)을 포함할 수 있다. 변환 장치는 예를 들어, 다양한 현저도들의 가중합에 따른 에너지 최적화(energy optimization)를 통해 중요 영역을 설정할 수 있다. 중요도 볼륨(323) 및 가이던스 볼륨(326)에서 가장 밝게 표시되는 부분은 각 볼륨에서 중요도가 가장 높은 중요 영역에 해당할 수 있다. 중요도 볼륨(323)의 값은 각 프레임에서 정규화(normalization)되고, 가이던스 볼륨(326)의 값은 플로팅(plotting)을 위해 전체 볼륨에서 정규화될 수 있다.
변환 장치는 다양한 현저도 검출(saliency detection) 방법을 결합함으로써 시공간 영역에서 고려된 등거리 360도 파노라마 영상으로부터 중요도를 산출(결정)하여 중요도 볼륨(importance volume)(323)을 생성할 수 있다. 보다 구체적으로, 변환 장치는 360도 영상(310)의 이미지 공간에 포함된 각 픽셀의 위도(Rφ) 및 경도(Rθ)에 기초한 해상도(resolution)에 의해 중요도를 샘플링하여 등거리 이미지 공간(equirectangular image spaces)을 생성할 수 있다. 등거리 이미지 공간에서 각 픽셀은 경도와 위도(θ,φ)로 표현될 수 있다. 등거리 이미지 공간에서 밝게 표시되는 부분은 중요도가 높은 영역, 다시 말해 중요 영역에 해당할 수 있다.
다양한 현저도 검출 방법은 예를 들어, 공간적 이미지 현저도(spatial image saliency), 시간적 움직임 현저도(temporal motion saliency), 및 객체 현저도(object saliency) 검출 방법 등을 포함할 수 있다.
변환 장치는 동적 프로그래밍 기법을 사용하여 중요도 볼륨(323)으로부터 가이던스 볼륨(326)을 구성할 수 있다. 보다 구체적으로, 변환 장치는 중요도 볼륨(323)을 기초로, 최대 중요도를 갖는 경로를 찾기 위한 에너지 함수를 정의하고, 에너지 함수에 따른 누적 에너지(cumulative energy)를 산출하는 동적 프로그래밍(dynamic programming) 기법을 이용하여 가이던스 볼륨(326)을 생성할 수 있다.
변환 장치는 가능한 모든 시점에서 비디오 공간을 통해 인접 시점들 사이의 최대 중요도를 추적함으로써 가이던스 볼륨(326)의 중요 영역을 통과하는 초기 최적 경로를 생성하는 초기 최적 경로 생성 과정(330)을 수행할 수 있다. 변환 장치는 예를 들어, 심 카빙(seam carving) 기법에 의해 초기 최적 경로를 생성할 수 있다.
변환 장치는 실시간으로 스무딩된 안내 경로를 얻기 위해, 큐빅 스플라인 곡선(cubic spline curve)을 초기 최적 경로에 피팅하는 커브 피팅 과정(340)을 수행할 수 있다. 변환 장치는 영상을 재생하는 동안 실시간으로 초기 최적 경로에서 시청자의 시야 방향을 기반으로 스무딩된 경로를 유도할 수 있다.
가상 카메라는 커브 피팅 과정을 통해 출력된 안내 경로에 따라 자동으로 회전하는 과정(350)을 통해, 360도 영상을, 360도 영상의 중요 영역을 포함하는 2D 영상으로 변환할 수 있다.
Importance Measurement
도 4는 일 실시예에 따른 현저도 계산 결과를 도시한 도면이다. 도 4의 (a)는 공간적 이미지 현저도(spatial image saliency)를 나타낸 공간 현저도 맵을 나타내고, 도 4의 (b)는 시간적 움직임 현저도(temporal motion saliency)를 나타낸 시간 현저도 맵을 나타내며, 도 4의 (c)는 객체 현저도(object saliency)를 나타낸 객체 현저도 맵을 나타낸다.
도 4의 (d)는 예를 들어, 사용자 매개 변수 α = β = γ = 1.0 인 경우의 결과적인 중요도를 나타낸 맵에 해당할 수 있다. 각 현저도 맵에서의 현저도 값은 예를 들어, 파란색에서 노란색으로 변화되는 것과 같이 각 영역의 변화된 색상에 의해 구분될 수 있다.
공간적 이미지 현저도는 예를 들어, 영상 현저도 검출 방법에 의해 획득될 수 있다. 또한, 객체 현저도는 예를 들어, 사람의 얼굴, 새로 출현한 객체, 또는 주인공의 얼굴을 포함하는 영역에서 높게 나타날 수 있다. 객체 현저도는 예를 들어, 얼굴 검출 방법에 의해 획득될 수 있다. 시간적 움직임 현저도는 예를 들어, 360도 영상에서의 광흐름(optical flow)을 계산하고, 플로우 잔량(flow magnitudes)에 스펙트럼 잔여 방법(spectral residual method)을 적용함으로써 획득할 수 있다. 일 실시예에서는 로그 스케일을 사용하여 대규모 움직임에서 발생하는 노이즈를 억제할 수 있다.
전술한 현저도들은 중요도를 정의하는 데 사용될 수 있다. 중요도는 아래의 수학식 1과 같이 정의될 수 있다.
Figure 112018118153653-pat00001
여기서,
Figure 112018118153653-pat00002
는 중요도(importance)를 나타내고,
Figure 112018118153653-pat00003
는 공간적 이미지 현저도를,
Figure 112018118153653-pat00004
는 임의의 뚜렷한 움직임과 같은 시간적 움직임 현저도를,
Figure 112018118153653-pat00005
는 예를 들어, 사람의 얼굴과 같은 객체 현저도를 나타낸다.
Figure 112018118153653-pat00006
는 프레임 번호를 나타내고, x는 경도와 위도의 페어(θ,φ)를 구성하는 포인트를 나타낸다. α, β, 및 γ 는 현저도를 혼합(blend)하기 위한 사용자 파라미터에 해당할 수 있다.
View-weighted Importance Measurement
도 5는 도 4의 현저도 계산 결과에 기초한 현저도 맵들에 대응하는 바이너리 맵들을 도시한 도면이다. 도 5의 (a)는 공간적 바이너리 맵(binary map)을 나타내고, 도 5의 (b)는 시간적 바이너리 맵을 나타내며, 도 5의 (c)는 객체 바이너리 맵을 나타낸다.
하나의 프레임은 여러 객체들을 포함하므로 현저도는 공간적으로 분산될 수 있다. 따라서, 의미론적 분석없이 프레임에 시점을 배치하는 것은 용이하지 않다. 일 실시예에서는 시청자에게 가장 현저한 영역(중요 영역)을 제공하는 것을 목적으로 하므로, 하나의 객체에 집중하는 대신에 현저도의 공간 분포를 추가적으로 고려하여 중요도를 결정할 수 있다. 일 실시예에서, 변환 장치는 현저도의 공간 분포에 따른 클러스터링에 기초한 가중치를 적용하여 중요도를 계산할 수 있다.
보다 구체적으로, 일 실시예에 따른 변환 장치는 현저도의 공간 분포를 고려하여 각 현저도 맵으로부터, 예를 들어, 도 5에 도시된 것과 같은 바이너리 맵을 획득할 수 있다. 각 바이너리 맵은 각 현저도에 대응될 수 있으며, 중요한 현저도에 대한 정보를 포함할 수 있다.
공간적 바이너리 맵은 예를 들어, 임계 기반 마스킹(threshold based masking)을 사용함으로써 공간 현저도 맵으로부터 획득될 수 있다. 시간적 바이너리 맵은 예를 들어, 시간 현저도 맵에서 별개의 움직임이 있는 영역으로부터 획득될 수 있다. 객체 바이너리 맵은 객체 현저도 맵과 동일하다.
도 6은 도 5에 도시된 바이너리 맵들에 대한 클러스터링 결과를 도시한 도면이다. 도 6의 (a)를 참조하면, 공간적 바이너리 맵을 클러스터링한 클러스터 맵이 도시된다. 도 6의 (b)를 참조하면, 시간적 바이너리 맵을 클러스터링한 클러스터 맵이 도시된다. 또한, 도 6의 (c)를 참조하면, 객체 바이너리 맵을 클러스터랑한 클러스터 맵이 도시된다.
일 실시예에 따른 변환 장치는 예를 들어, 플러드 필 알고리즘(flood fill algorithm)을 사용하여 각 바이너리 맵을 클러스터링할 수 있다. 각 클러스터 맵에서 같은 색의 포인트들은 같은 클러스터에 속할 수 있다.
도 7은 일 실시예에 따른 가중치 맵들에 의해 가중화된 중요도 맵을 도시한 도면이다. 도 7의 (a)는 공간적 이미지 현저도 및 시간적 움직임 현저도에 대한 가중치 맵
Figure 112018118153653-pat00007
를 나타내고, 도 7의 (b)는 사람의 얼굴과 같은 객체 현저도에 대한 가중치 맵
Figure 112018118153653-pat00008
을 나타내며, 도 7의 (c)는 전술한 가중치 맵들에 의해 가중화된 중요도 맵을 나타낸다.
일 실시예에 따른 변환 장치는 클러스터의 중심에 가까운 지점에 더 높은 가중치를 할당할 수 있다. 변환 장치는 각 프레임 별로 중요도 맵을 생성할 수 있다. 도 7의 (c)에 도시된 중요도 맵은 전술한 도 4의 (d)에 도시된 맵보다 노이즈가 더 적고, 중심에서 더 높은 가중치를 가질 수 있다.
변환 장치는 클러스터링 결과에 따른 클러스터들을 기초로, 가우시안 분포(Gaussian distribution)를 따르는 가중치 맵(weight map)을 생성할 수 있다. 변환 장치는 예를 들어, 아래의 수학식 2를 사용하여 클러스터들의 형태들(shapes)에 기초하여 가우시안 분포를 따르는 가중치 맵을 생성할 수 있다. 수학식 2는 클러스터의 중심에 가까운 포인트들에 높은 값(가중치)를 할당할 수 있다.
Figure 112018118153653-pat00009
여기서, K는 가우시안 분포 커널(Gaussian distribution kernel)을 나타내고, W는 각각의 현저도에 대한 가중치 맵에 나타내며, H는 프레임
Figure 112018118153653-pat00010
내의 클러스터들의 집합을 나타낸다. 또한, 
Figure 112018118153653-pat00011
는 계수이고,
Figure 112018118153653-pat00012
Figure 112018118153653-pat00013
는 각 클러스터의 중심(경도(φ), 위도(φ))를 나타내며,
Figure 112018118153653-pat00014
는 포인트들의 중심으로부터 클러스터의 중심까지의 거리의 표준 편차(standard deviation)를 나타낸다.
변환 장치는 각 현저도 맵(saliency map)에 대응하는 가중치 맵을 곱함으로써 시점을 클러스터의 중앙에 배치할 수 있다. 변환 장치는 움직이는 물체에 높은 가중치를 할당하고, 카메라 움직임으로 인한 영향을 억제하며, 배경에서 비롯된 공간적 현저도를 모두 동시에 억제하기 위해, 시간적 현저도 및 공간적 현저도를 동시에 고려할 수 있다. 시간적 현저도 및 공간적 현저도를 동시에 고려하는 경우, 전술한 수학식 1은 아래의 수학식 3과 같이 수정될 수 있다.
Figure 112018118153653-pat00015
실시예에 따라서, 변환 장치는 전술한 과정을 통해 각 프레임에 대한 중요도가 결정된 후, 360도 영상의 프레임들에 포함된 어느 하나의 픽셀을 예를 들어, 4개의 서브 픽셀들로 재샘플링(resampling)할 수 있다. 변환 장치는 360도 영상의 프레임들에 포함된 모든 픽셀들에 대하여 재샘플링을 수행할 수 있다. 재샘플링 과정을 통해 360도 영상에 어느 하나의 픽셀에 대응하는 객체의 위치는 360도 영상에 대응되는 2D 영상에서 4개의 서브 픽셀들 중 어느 한 곳으로 위치할 수 있다.
Guidance Volume generation
도 8은 일 실시예에 따른 등거리 이미지 공간에서 어느 한 포인트에 인접한 복수개의 인접 포인트들을 찾는 방법을 설명하기 위한 도면이다. 도 8에 도시된 등거리 이미지 공간(equirectangular image space)(810)에서 수평 방향(horizontal direction)은 경도(θ)에 의해 표현되고, 수직 방향(vertical direction)은 위도(φ)에 의해 표현될 수 있다. f는 프레임 전파(frame propagation)의 방향을 나타낸다.
등거리 이미지 공간(equirectangular image space)(810)에서 임의의 한 포인트(point)는 예를 들어, 9 개의 인접하는 인접 포인트들의 집합(이하, '이웃 집합')을 가질 수 있다. 도 8의 우측 이미지(830)는 가로 축에서의 인접 포인트들을 나타낸다. 예를 들어, 화살표(831)는 가이던스 볼륨의 생성 중에 고려되는 이웃 집합을 나타내며, 화살표(833)는 역순 추적(backward tracing) 중에 고려되는 이웃 집합을 나타낸다.
변환 장치는 시청자의 시야 방향(viewing direction)이 주어진 중요 영역(important region)을 향해 시점(viewpoint)을 회전(rotate)시켜서 자동으로 경로, 즉 안내 경로(guidance path)를 생성할 수 있다. 안내 경로는 아래의 수학식 4와 같이 설정 포인트들에 의해 나타낼 수 있다.
Figure 112018118153653-pat00016
여기서,
Figure 112018118153653-pat00017
는 프레임 f 에서 n 번째의 프레임들 중 시점
Figure 112018118153653-pat00018
에서 시작하는 시점들을 포함할 수 있다. n은 마지막 프레임을 나타낸다.
일 실시예에 따른 변환 장치는 실시간으로 현재 시점에서 시작하여 최대 중요도를 갖는 영역을 통과하는 최적 경로를 찾는 것을 목적으로 한다. 이러한 목적을달성하기 위해, 변환 장치는 예를 들어, 심 카빙(seam carving) 기법을 이용할 수 있다. 일 실시예에서는 중요도 볼륨이 주어지면 최대 중요도의 경로를 찾기 위해 예를 들어, 아래의 도 5와 같이 최대화된 에너지 함수( E(
Figure 112018118153653-pat00019
) )를 정의할 수 있다.
Figure 112018118153653-pat00020
여기서, i는 프레임 f 에서 n 번째 프레임까지 하나의 시점 x에서 시작하는 시점들 중 어느 하나의 시점 i를 나타내고, Ii는 수학식 3으로부터 도출된 중요도를 나타낸다.
주어진 시점에서 시작하는 최적의 경로를 효율적으로 찾기 위해, 일 실시예에서는 아래의 수학식 6과 같이 누적 에너지(cumulative energy)를 계산하는 동적 프로그래밍(dynamic programming)을 이용하여 가이드 볼륨을 구성할 수 있다.
Figure 112018118153653-pat00021
여기서,
Figure 112018118153653-pat00022
는 프레임 f 에서의 누적 에너지를 나타내고, N은 포인트(point) x의 9개의 인접 포인트들의 집합(이웃 집합)을 나타낸다. 인접 포인트들은 도 8에서와 같이 조건
Figure 112018118153653-pat00023
Figure 112018118153653-pat00024
을 만족하는 인접 프레임에 대해 정의될 수 있다.
에너지의 누적은 마지막 프레임부터 시작 프레임까지 수학식 6을 사용하여 인접 포인트들 중 최대 중요도 값을 가진 포인트를 선택하는 동안 수행될 수 있다. 가이던스 볼륨(즉, 누적 에너지 볼륨)이 얻어지면, 가이던스 볼륨의 주어진 시점에서 시작하는 역방향 추적은 시청자를 안내하는 초기 최적 경로를 생성할 수 있다. 일 실시예에서는 역추적 동안, 최대 누적 에너지를 가진 인접 포인트를 선택할 수 있다.)
INTERACTIVE VIEWPOINT FINDING
경로가 매끄럽지 않기 때문에 초기 최적 경로를 직접 사용하여 시점을 중요 영역으로 유도하는 것은 용이하지 않을 뿐만 아니라, 영상을 시청 중인 관객에게 멀미를 유발할 수 있다. 일 실시예에서는 커브 피팅 방법을 이용하여 매끄러운 경로(smooth path)를 획득함으로써 전술한 문제를 완화할 수 있다.
Guidance Path Generation
도 9는 일 실시예에 따라 커브 피팅에 의한 스무딩을 수행한 결과를 설명하기 위한 도면이다. 도 9의 (a)를 참조하면, 샘플 영상에 대해 커브 피팅을 수행하지 않는 원본 경로(예를 들어, 초기 최적 경로)가 도시된다. 초기 최적 경로에는 들쭉날쭉한 아티팩트(artifacts)가 존재할 수 있다. 도 9의 (b)를 참조하면, 윈도우 샘플링과 함께, 수학식 7에서 λ = 10-3.1인 페널라이즈드 큐빅 스플라인 피팅을 사용함으로써 초기 안내 경로(initial guidance path)가 효과적으로 스무딩된 결과(안내 경로)가 도시된다. 도 9의 (c)를 참조하면, λ =10-1인 페널라이즈드 큐빅 스플라인 피팅을 사용함으로써 전체 경로를 스무딩한 결과(안내 경로)가 도시된다. 도 9의 그래프에서 X 축은 프레임들을 나타내고, Y축은 경도(
Figure 112018118153653-pat00025
)를 나타낸다.
안내 경로는, 예를 들어, 도 9의 (a)에 도시된 원본 경로의 전체 모양을 유지하지만, 스무딩된 결과의 품질은 도 9의 (c)와 같이 전체 커브 피팅에 의해 생성된 스무딩 결과의 품질과 유사할 수 있다.
일 실시예에서 커브 피팅(curve fitting) 방법을 사용하면, 전체 경로에 대해 부드러운 곡선을 만들 수 있다. 그러나 계산 시간이 제어점의 수와 사용된 기저 함수(basis functions)에 비례하기 때문에 모든 프레임에서 현재 시점으로부터 곡선을 계산하는 것은 불가능한다. 또한, 전체 곡선의 형태가 알려지지 않았기 때문에 사용된 기저 함수들의 수를 정확하게 결정하는 것은 어렵다. 따라서 실시간 인터랙션을 통해 전체 길이의 비디오에 직접 커브 피팅 방법을 사용하기가 용이하지 않다.
따라서, 일 실시예에서는 참여 포인트들(participating points)의 수를 제한하는 윈도우 커브 피팅(windowed curve fitting) 방법을 이용할 수 있다. 또한, 일 실시예에서는 커브 피팅에 페널라이즈드 큐빅 스플라인(penalized cubic spline)을 채택할 수 있다. 커브는 아래의 수학식 7과 같이 최소 자승(least squares sense)에 피팅될 수 있다.
Figure 112018118153653-pat00026
여기서, x는 주어진 경로 상의 포인트를 나타내고, C는 큐빅 스플라인 커브(cubic spline curve)에 데이터를 맞추기 위해 통상적으로 사용되는 에너지 최소화 방정식(energy minimization equation)에 해당한다. 또한, Ed는 커브 피팅 에너지(curver fitting energy)를, Es는 비선형 에너지(non-linear energy)를 나타내며,
Figure 112018118153653-pat00027
는 포인트(point) xi에 해당하는 가중치를 나타낸다. λ는 비선형 에너지를 스케일링하는 사용자 파라미터에 해당할 수 있다.
일 실시예에서, 가중치는 중요도 값이고 가중치의 범위는 예를 들어, [0.01, 1.0]일 수 있다. 가중치는 경로가 덜 중요 영역으로부터 중요 영역으로 신속하게 도달하게 할 수 있다.
일 실시예에서는 윈도우 커브 피팅 방법을 사용하므로,
Figure 112018118153653-pat00028
Figure 112018118153653-pat00029
로 교체될 수 있다. 마지막으로, 참여 포인트들의 집합은 아래의 수학식 8과 같이 나타낼 수 있다.
Figure 112018118153653-pat00030
여기서,
Figure 112018118153653-pat00031
은 윈도우의 크기를 나타내고,
Figure 112018118153653-pat00032
는 재생 중에 실제로 선택된 시점들의 집합에 해당할 수 있다. 윈도우의 크기는 이전에 선택된 시점들의 개수의 절반(예를 들어, 100)에 해당할 수 있다. 실시예에 따라서는 커브의 부드러움을 유지하기 위해 실제로 선택한 시점들(예를 들어, 1000)에 높은 가중치를 할당할 수도 있다.
Interactive Path Generation
도 10은 일 실시예에 따른 사용자 인터랙션에 의해 경로를 결정하는 방법을 설명하기 위한 도면이다. 도 10을 참조하면, 시청자의 인터랙션을 통합하여 자동 안내에 의해 생성된 이미지 시퀀스들이 도시된다. 도 10의 (a)는 사용자 인터랙션(user interaction)의 방향을 나타내며, 사용자 인터랙션을 예를 들어, 화살표 및/또는 점 등과 같은 형태로 표현될 수 있다. 도 10의 (b)는 도 10의 (a)에 표현된 사용자 인터랙션에 대응하는 시야 영역들(1010, 1020, 1030, 1040)을 포함하는 영상들에 해당할 수 있다.
일 실시예에 따른 변환 장치는 사용자 인터랙션에 의해 360도 영상으로부터 사용자에 의해 선택된 포인트를 입력받을 수 있다. 변환 장치는 중간 영상 및 인터랙션에 의해 입력된 포인트를 기초로, 프레임들의 재생 시간 순으로 안내 경로를 결정할 수 있다.
일 실시예에서 시점은 현재 시점에 인접한 하나의 중요 영역의 주변에 머무르거나, 또는 시점은 다른 시점으로 이동하는 시청자의 머리 회전에 따라 이동할 수 있다.
시청자는 최적의 시청 중에 머리를 자유롭게 회전시킬 수 있다. 이로 인해 이미 계산된 부드러운 곡선이 불연속하게 될 수 있다. 곡선에 불연속점을 미리 적용하기는 용이하지 않다. 또한, 초기 최적 경로와 시청자의 인터랙션 모두를 고려하여 비선형성의 스케일을 제어하는 것도 용이하지 않다. 따라서, 곡선을 부드럽게 유지하면서 시청자의 인터랙션(interaction)인 머리 움직임을 곡선에 반영하는 방법이 요구된다.
일 실시예에서는 시점의 이전과 현재 회전 간의 차이를 이전 포인트들에 적용할 수 있다. 이후, 재생 중에 실제로 선택된 시점들의 집합
Figure 112018118153653-pat00033
는 아래의 수학식 9와 같이 수정될 수 있다.
Figure 112018118153653-pat00034
여기서,
Figure 112018118153653-pat00035
는 시청자의 머리 회전에 의해 야기되는 시점들 간의 차이를 나타낸다. 이는 부드러운 커브를 생성하는 데에 시청자의 머리 회전을 매끄럽게 통합할 수 있도록 한다. 이에 따라 변환 장치는 도 9의 (c)에서 전술한 것과 같이 안내를 위한 부드러운 곡선을 획득할 수 있다.
최적의 시점
Figure 112018118153653-pat00036
은 부드러운 곡선으로부터 현재 프레임에 대해 결정될 수 있다. 최적의 시점은 3D에서 회전 행렬(rotation matrix)로 변환될 수 있다. 회전 행렬은 자동 회전을 위해 가상 카메라에 곱해질 수 있다.
일 실시예에서는 영상 처리를 위해 예를 들어, C ++과 OpenCV, 커브 피팅을 위한 Alglib, 비디오 처리를 위한 FFmpeg를 사용할 수 있다. 데이터 세트는 인터넷을 통해 수집될 수 있다.
Figure 112018118153653-pat00037
[표 1]은 데이터 세트의 비디오 해상도와 프레임 당 중요도 측정을 위해 요구되는 (평균) 계산 시간을 나타낸다. 중요도 측정을 위한 계산 시간은 각 프레임의 해상도 복잡도에 따라 달라질 수 있다. 반면, 가이던스 볼륨의 생성 및 사용자의 인터랙션에 따른 경로 검색에는 일정한 시간이 소요될 수 있다. 이는 계산을 위한 기본 데이터의 해상도가 360 Х 180으로 고정되어 있기 때문이다. 시점은 부드러운 곡선으로부터 획득되므로, 해상도 360 Х 180는 적절한 회전 각도를 계산하기에 충분하다. 가이던스 볼륨의 생성을 위한 평균 계산 시간은 예를 들어, 57.1ms 일 수 있다. 가이던스 볼륨의 생성을 위한 계산아 빠르기 때문에 전술한 수학식 3에서 사용자 파라미터에 대한 값을 찾는 것도 빠를 수 있다. 프레임 당 인터랙션에 의한 경로를 찾는 데에 소요되는 평균 계산 시간은 예를 들어, 17.6ms 일 수 있으며, 이는 실시간 처리에 충분한 시간에 해당할 수 있다.
일 실시예에 따른 자동 안내는 예를 들어, 시청자가 360도 영상의 재생 중에 특정 장면, 또는 특정 인물을 탐색하기를 원할 경우 등에는 자동으로 안내되는 시점에 의해 시청자의 의도를 방해할 수 있다. 따라서, 이하에서는 자동 안내의 활성화 여부를 제어할 수 있는 방법들에 대해 설명한다.
Interactive Guidance Switch(IGS)
일 실시예에서는 시청자의 시점 변화에 따라 토글(toggle)되는 스위치(예를 들어, Interactive Guidance Switch(IGS))를 제공할 수 있다.
변환 장치는 전술한 스위치(IGS)를 이용하여 예를 들어, 시청자가 시점을 이동할 때에 자동 안내가 비활성화 되도록 하고, 시청자가 동일한 시점에 머무르면 자동 안내가 현재 시점에서 재활성화 되도록 할 수 있다.
변환 장치는 예를 들어, 아래의 수학식 10을 이용하여 시청자의 시점의 변화를 측정할 수 있다.
Figure 112018118153653-pat00038
여기서,
Figure 112018118153653-pat00039
는 현재 프레임에서 시점의 변화량을 나타내고,
Figure 112018118153653-pat00040
는 이전 프레임에서의 시점의 변화량을 나타낸다.
Figure 112018118153653-pat00041
는 시청자의 머리 회전 양을 나타낸다. k1과 k2는 사용자 파라미터를 나타낸다. k1과 k2는 0에서 1까지의 값을 가질 수 있다. 예를 들어, PC 환경에서 k1 = 0.9 이고, k2 = 0.1 이며, 임계값은 0.01 일 수 있다. 또한, HMD 환경에서 k1 = 0.95이고, k2 = 0.2 이며, 임계값은 1.0 일 수 있다.
변환 장치는 현재 프레임에서의 시점의 변화량
Figure 112018118153653-pat00042
이 미리 설정된 임계값보다 높은 경우, 자동 안내를 비활성화할 수 있다. 예를 들어, 시청자가 동일한 시점에 머무르고 있으면 시점의 변화량인
Figure 112018118153653-pat00043
값은 시간이 지남에 따라 감소할 수 있다. 변환 장치는 시점의 변화량
Figure 112018118153653-pat00044
가 임계값보다 작아지면 자동 안내를 다시 활성화할 수 있다.
Restoring Rotation(RR)
도 11은 일 실시예에 따라 모션 플랫폼에 자동 안내를 적용한 결과를 설명하기 위한 도면이다. 도 11의 (a)는 사용자가 자동 안내를 통해 360도 파노라마 영상을 보면서 모션 플랫폼을 타고 있는 장면들을 도시한다. 또한, 도 11의 (b)에 도시된 장면들 각각에 표시된 시야 영역들(1110, 1120, 1130, 1140)은 360도 영상에서 도 11의 (a)에 도시된 모션 플랫폼을 타고 있는 사용자가 바라보는 현재 시점을 나타낼 수 있다. 시야 영역들(1110, 1120, 1130, 1140)에 포함된 객체는 사용자의 시점의 변화에 따라 변화되는 것을 볼 수 있다.
일 실시예에서는 시점의 변경 사항을 적절하게 복원하여 사용자가 예를 들어, 헤드 마운티드 디스플레이 또는 모션 플랫폼과 같은 변환 장치를 착용한 채 소파나 책상에 앉아 360도 비디오를 편안하게 시청하도록 할 수 있다. 이를 위해, 일 실시예에서는 안내된 머리 회전 방법(guided head rotation scheme)을 이용할 수 있다. 안내된 머리 회전 방법은 예를 들어, 시청자가 가상 현실(VR) 컨텐츠를 보면서 불편한 위치에 있을 때, 가상 공간을 정면 방향으로 회전시켜 자연스럽게 시청자를 편안한 위치로 안내하는 방법일 수 있다. 시청자가 머리를 회전하는 동안 일 실시예에 따른 자동 안내는 비활성화될 수 있다. 시청자가 동일한 시점에 머무르면서 시점을 고정하면, 변환 장치는 복원 가이던스(restoration guidance)를 활성화할 수 있다. '복원 가이던스'는 시청자가 현재 보고 있는 영역을 전면으로 회전시킴으로써 시청자를 자연스럽게 편안한 위치로 안내하는 것에 해당할 수 있다.
예를 들어, 시청자가 복원 가이던스를 따르지 않는 경우, 또는 시청자의 의도가 현재 위치에서 시점을 고정하지 않는다는 것을 암시하는 경우, 변환 장치는 복원 가이던스를 비활성화하고, 자동 안내가 재활성화되기를 기다릴 수 있다.
예를 들어, 시청자가 복원 가이던스를 따라 편안한 위치에 도달하면, 변환 장치는 현재 시점에서 자동 안내를 재활성화할 수 있다. 이러한 자동 안내의 재활성화를 위해, 전술한 수학식 10은 아래의 수학식 11과 같이 확장될 수 있다.
Figure 112018118153653-pat00045
여기서,
Figure 112018118153653-pat00046
는 현재 프레임에서 시점의 변화량을 나타내고, Z는 복원 가이던스에 대한 시청자의 저항을 나타내고,
Figure 112018118153653-pat00047
는 시청자의 머리 회전 양을 나타낸다. k1, k2 및 k3은 사용자 파라미터에 해당하며, 예를 들어, 0에서 1까지의 값을 가질 수 있다. 일 실시예에서 사용자 파라미터는 예를 들어, k1 = 0.9, k2= 0.2, k3 = 1.0일 수 있다.
수평 방향에서, 복원 가이던스에 대한 시청자의 저항은 아래의 수학식 12와 같이 결정될 수 있다.
Figure 112018118153653-pat00048
여기서, Q는 복원 가이던스(restoring guidance)를 나타낸다. 복원 가이던스 Q는 예를 들어, 아래의 수학식 13과 같이 결정될 수 있다.
Figure 112018118153653-pat00049
여기서,
Figure 112018118153653-pat00050
는 정면 방향(의 위도, 경도 좌표)을 나타내고,
Figure 112018118153653-pat00051
는 시청자의 현재 머리 회전(각도)을 나타낸다. 또한,
Figure 112018118153653-pat00052
는 자동 안내를 비활성화하는 임계값을 나타내고,
Figure 112018118153653-pat00053
는 자동 안내를 활성화하기 위한 값을 나타낸다. 여기서,
Figure 112018118153653-pat00054
는 복원량을 나타낸다.
Figure 112018118153653-pat00055
일 실시예에서 정면 방향의 좌표 Fc = (180, 90)이고,
Figure 112018118153653-pat00056
= 1.0 이며,
Figure 112018118153653-pat00057
= 30일 수 있다.
Figure 112018118153653-pat00058
는 복원 속력을 결정하기위한 값으로 이용될 수 있다. 예를 들어
Figure 112018118153653-pat00059
는 10/24 이고, 비디오의 프레임이 24일 경우 복원 속력은 10°/초일 수 있다.
일 실시예에서는 설명의 편의를 위하여, 모션 플랫폼을 일 예로 들어 설명하였으나, 반드시 이에 한정되는 것은 아니며, 헤드 마운티드 디스플레이(Head Mounted Display; HMD), FMD(Face Mounted Display) 등과 같이 다양한 형태의 윈도우 혼합 현실(Mixed Reality, MR) 헤드셋에 전술한 방법들이 적용될 수 있다.
도 12는 일 실시예에 따른 영상을 변환하는 장치의 블록도이다. 도 12를 참조하면, 일 실시예에 따른 영상을 변환하는 장치(이하, '변환 장치')(1200)는 통신 인터페이스(1210), 및 프로세서(1220)를 포함한다. 변환 장치(1200)는 메모리(1230) 및 디스플레이 장치(1240)를 더 포함할 수 있다. 통신 인터페이스(1210), 프로세서(1220), 메모리(1230) 및 디스플레이 장치(1240)는 통신 버스(1205)를 통해 서로 연결될 수 있다.
통신 인터페이스(1210)는 360도 영상을 수신한다.
프로세서(1220)는 360도 영상의 프레임 별로 중요도를 결정한다. 프로세서(1220)는 프레임들의 재생 시간의 역순으로 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성한다. 프로세서(1220)는 중간 영상을 기초로, 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정한다. 프로세서(1220)는 시점 추적을 위한 경로를 기초로 360도 영상을 2D 영상으로 변환한다.
프로세서(1220)는 360도 영상의 프레임 별로 중요도 볼륨을 결정할 수 있다. 프로세서(1220)는 중요도 볼륨에 기초하여 중요도를 결정할 수 있다. 프로세서(1220)는 360도 영상의 프레임 별로 중요도 볼륨에서의 공간적 이미지 현저도, 시간적 움직임 현저도, 및 객체 현저도 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정할 수 있다. 프로세서(1220)는 중요 영역에 기초하여, 프레임 별 중요도를 결정할 수 있다.
메모리(1230)는 360도 영상을 저장할 수 있다. 또한, 메모리(1230)는 프로세서(1220)에 의해 변환된 2D 영상을 저장할 수 있다. 메모리(1230)는 예를 들어, DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), DDR RAM(Double data rate synchronous dynamic random access memory) 또는 다른 고속 액세스 고체 상태 메모리 장치 등과 같은 고속 랜덤 액세스 메모리(high-speed random access memory)를 포함할 수 있다. 메모리(1230)는 휘발성 메모리 및 비휘발성 메모리를 포함할 수 있다. 메모리(1230)는 프로세서(1220)로부터 원격에 위치하는 적어도 하나의 저장 장치를 선택적으로 포함할 수 있다.
디스플레이 장치(1240)는 프로세서(1220)에 의해 변환된 2D 영상을 디스플레이할 수 있다.
이 밖에도, 프로세서(1220)는 도 1 내지 도 11을 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(1220)는 프로그램을 실행하고, 변환 장치(1200)를 제어할 수 있다. 프로세서(1220)에 의하여 실행되는 프로그램 코드는 메모리(1230)에 저장될 수 있다.
변환 장치(1200)는 예를 들어, 사용자의 스마트 폰, 각종 웨어러블 디바이스, 기타 컴퓨팅 장치, 및 프로젝터(projector)를 포함할 수 있다. 또는 변환 장치(1200)는 예를 들어, 단일의 서버 컴퓨터 또는 이와 유사한 시스템이거나, 또는 하나 이상의 서버 뱅크들(server banks) 또는 그 외 다른 배열들로 배열되는 복수의 서버들일 수 있다. 변환 장치(1200)는 단일 시설에 놓일 수도 있고, 혹은 많은 서로 다른 지리적 위치들 간에 분산된 서버 "클라우드(cloud)"일 수도 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 중앙 처리 장치(Central Processing Unit; CPU), 그래픽 프로세싱 유닛(Graphics Processing Unit; GPU), ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 주문형 집적 회로(Application Specific Integrated Circuits; ASICS), 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 비록 한정된 도면에 의해 실시예들이 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 360도 영상의 프레임 별로 중요도를 결정하는 단계;
    상기 프레임들의 재생 시간의 역순으로 상기 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성하는 단계;
    상기 중간 영상을 기초로, 상기 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정하는 단계; 및
    상기 시점 추적을 위한 경로를 기초로, 상기 360도 영상을 2D 영상으로 변환하는 단계
    를 포함하고,
    상기 중요도를 결정하는 단계는
    상기 360도 영상의 프레임 별로 중요도 볼륨(importance volume)을 결정하는 단계
    를 포함하며,
    상기 중간 영상을 생성하는 단계는
    상기 360도 영상의 프레임 별 중요도 볼륨을 기초로 정의되는 에너지 함수에 따른 누적 에너지(cumulative energy)를 산출함으로써, 상기 중간 영상을 생성하는 단계
    를 포함하는, 영상을 변환하는 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 중요도 볼륨을 결정하는 단계는
    상기 360도 영상의 이미지 공간에 포함된 각 픽셀의 위도 및 경도에 기초한 해상도(resolution)에 의해 상기 중요도를 샘플링하여 등거리 이미지 공간(equirectangular image spaces)을 생성하는 단계
    를 포함하는, 영상을 변환하는 방법.
  4. 제1항에 있어서,
    상기 중요도를 결정하는 단계는
    상기 중요도 볼륨에서의 공간적 이미지 현저도(spatial image saliency), 시간적 움직임 현저도(temporal motion saliency), 및 객체 현저도(object saliency) 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정하는 단계; 및
    상기 중요 영역에 기초하여, 상기 프레임 별로 상기 중요도를 결정하는 단계
    를 더 포함하는, 영상을 변환하는 방법.
  5. 제4항에 있어서,
    상기 중요 영역을 설정하는 단계는
    상기 공간적 이미지 현저도, 상기 시간적 움직임 현저도, 및 객체 현저도의 가중합에 따른 에너지 최적화(energy optimization)를 통해 상기 중요 영역을 설정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  6. 제4항에 있어서,
    상기 중요도를 결정하는 단계는
    상기 적어도 하나의 현저도에, 상기 적어도 하나의 현저도의 공간 분포(spatial distribution)에 따른 클러스터링에 기초한 가중치를 적용하여 상기 중요도를 결정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  7. 제6항에 있어서,
    상기 가중치를 적용하여 상기 중요도를 결정하는 단계는
    상기 적어도 하나의 현저도의 공간 분포를 고려하여 상기 적어도 하나의 현저도에 대응하는 바이너리 맵(binary map)을 생성하는 단계;
    상기 바이너리 맵을 클러스터링(clustering)하는 단계;
    상기 클러스터링 결과에 따른 클러스터(cluster)를 기초로, 가우시안 분포(Gaussian distribution)를 따르는 가중치 맵(weight map)을 생성하는 단계
    상기 가중치 맵에 따른 가중치를, 상기 가중치 맵에 대응하는 적어도 하나의 현저도에 적용하여 상기 중요도를 결정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  8. 제7항에 있어서,
    상기 가중치 맵은
    상기 바이너리 맵 상의 어느 한 점과 상기 클러스터의 중심 간의 거리에 반비례하는 가중치 값을 가지는, 영상을 변환하는 방법.
  9. 제1항에 있어서,
    상기 중간 영상을 생성하는 단계는
    상기 중요도 볼륨을 기초로, 최대 중요도를 갖는 경로를 찾기 위한 에너지 함수를 정의하는 단계; 및
    상기 에너지 함수에 따른 누적 에너지(cumulative energy)를 산출하는 동적 프로그래밍(dynamic programming) 기법을 이용하여 상기 중간 영상을 생성하는 단계
    를 포함하는, 영상을 변환하는 방법.
  10. 제1항에 있어서,
    상기 시점 추적을 위한 경로를 결정하는 단계는
    상기 중요도 볼륨에서의 어느 한 포인트(point)에 인접한 복수 개의 인접포인트들 중 최대 누적 에너지를 갖는 인접 포인트를 선택하는 단계; 및
    상기 선택된 인접 포인트에 기초하여, 상기 시점 추적을 위한 경로를 결정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  11. 제1항에 있어서,
    사용자 인터랙션(user interaction)에 의해 상기 360도 영상으로부터 상기 사용자에 의해 선택된 포인트를 입력받는 단계
    를 더 포함하고,
    상기 시점 추적을 위한 경로를 결정하는 단계는
    상기 중간 영상 및 상기 입력된 포인트를 기초로, 상기 프레임들의 재생 시간 순으로 상기 시점 추적을 위한 경로를 결정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  12. 제1항에 있어서,
    상기 시점 추적을 위한 경로를 결정하는 단계는
    상기 360도 영상에 대응하는 비디오 공간에서 인접한 포인트들 사이의 최대 중요도를 추적함으로써 상기 중간 영상의 중요 영역을 통과하는 초기 최적 경로를 생성하는 단계; 및
    큐빅 스플라인 곡선(cubic spline curve)을 상기 초기 최적 경로에 피팅하는 커브 피팅(curve fitting)을 통해 상기 시점 추적을 위한 경로를 실시간으로 스무딩하는 단계
    를 포함하는, 영상을 변환하는 방법.
  13. 제12항에 있어서,
    상기 2D 영상으로 변환하는 단계는
    가상 카메라를 상기 스무딩된 경로에 따라 회전시킴으로써 상기 360도 영상을 2D 영상으로 변환하는 단계
    를 포함하는, 영상을 변환하는 방법.
  14. 제1항에 있어서,
    상기 시점 추적을 위한 경로를 결정하는 단계는
    상기 시점 추적을 위한 경로 상의 어느 한 포인트에 대한 커브 피팅 에너지(curve fitting energy)와 비선형 에너지(non-linear energy)의 합이 최소가 되도록 하는 에너지 최소화 방정식에 기초하여, 상기 시점 추적을 위한 경로를 결정하는 단계
    를 포함하는, 영상을 변환하는 방법.
  15. 제1항에 있어서,
    사용자의 시점 변화에 따른 현재 프레임에서의 시점의 변화량을 기초로, 상기 사용자가 현재 보고 있는 영역을 전면으로 회전시키는 복원 가이던스를 활성화하는 단계
    를 더 포함하는, 영상을 변환하는 방법.
  16. 하드웨어와 결합되어 제1항 및 제3항 내지 제15항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.
  17. 360도 영상을 수신하는 통신 인터페이스; 및
    상기 360도 영상의 프레임 별로 중요도를 결정하고, 상기 프레임들의 재생 시간의 역순으로 상기 중요도를 누적하여 경로 추적을 위한 중간 영상을 생성하고, 상기 중간 영상을 기초로, 상기 프레임들의 재생 시간 순으로 시점 추적을 위한 경로를 결정하며, 상기 시점 추적을 위한 경로를 기초로 상기 360도 영상을 2D 영상으로 변환하는 프로세서
    를 포함하고,
    상기 프로세서는
    상기 360도 영상의 프레임 별로 중요도 볼륨(importance volume)을 결정하며, 상기 360도 영상의 프레임 별 중요도 볼륨을 기초로 정의되는 에너지 함수에 따른 누적 에너지를 산출함으로써 상기 중간 영상을 생성하는, 영상을 변환하는 장치.
  18. 제17항에 있어서,
    상기 변환된 2D 영상을 디스플레이하는 디스플레이 장치
    를 더 포함하는, 영상을 변환하는 장치.
  19. 삭제
  20. 제17항에 있어서,
    상기 프로세서는
    상기 360도 영상의 프레임 별로 상기 중요도 볼륨에서의 공간적 이미지 현저도, 시간적 움직임 현저도, 및 객체 현저도 중 적어도 하나의 현저도에 기초하여 중요 영역을 설정하고, 상기 중요 영역에 기초하여, 상기 프레임 별 중요도를 결정하는, 영상을 변환하는 장치.
KR1020180148187A 2018-11-27 2018-11-27 360도 영상을 2d 영상으로 변환하는 방법 및 장치 KR102130902B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180148187A KR102130902B1 (ko) 2018-11-27 2018-11-27 360도 영상을 2d 영상으로 변환하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180148187A KR102130902B1 (ko) 2018-11-27 2018-11-27 360도 영상을 2d 영상으로 변환하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200062595A KR20200062595A (ko) 2020-06-04
KR102130902B1 true KR102130902B1 (ko) 2020-07-06

Family

ID=71081390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180148187A KR102130902B1 (ko) 2018-11-27 2018-11-27 360도 영상을 2d 영상으로 변환하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102130902B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102686A (ja) * 2015-12-01 2017-06-08 日本電信電話株式会社 情報取得装置、情報取得方法及び情報取得プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170096082A (ko) * 2016-02-15 2017-08-23 엘지전자 주식회사 2차원 비디오 생성 장치 및 그 생성 방법
KR20170103365A (ko) * 2016-03-04 2017-09-13 한국전자통신연구원 고속 동작 물체의 객체 궤적 추적장치 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102686A (ja) * 2015-12-01 2017-06-08 日本電信電話株式会社 情報取得装置、情報取得方法及び情報取得プログラム

Also Published As

Publication number Publication date
KR20200062595A (ko) 2020-06-04

Similar Documents

Publication Publication Date Title
Serrano et al. Motion parallax for 360 RGBD video
US10645371B2 (en) Inertial measurement unit progress estimation
US10958887B2 (en) Free-viewpoint photorealistic view synthesis from casually captured video
Sun et al. Mapping virtual and physical reality
US10810798B2 (en) Systems and methods for generating 360 degree mixed reality environments
JP7125992B2 (ja) 現実世界の仮想現実マップを用いた仮想現実(vr)ゲーム環境の構築
DeCamp et al. An immersive system for browsing and visualizing surveillance video
US10701282B2 (en) View interpolation for visual storytelling
US10659686B2 (en) Conversion of an interactive multi-view image data set into a video
US20130321396A1 (en) Multi-input free viewpoint video processing pipeline
US20100156907A1 (en) Display surface tracking
CN111464834B (zh) 一种视频帧处理方法、装置、计算设备及存储介质
US11823334B2 (en) Efficient capture and delivery of walkable and interactive virtual reality or 360 degree video
US11656682B2 (en) Methods and systems for providing an immersive virtual reality experience
JP7425196B2 (ja) ハイブリッドストリーミング
Langlotz et al. AR record&replay: situated compositing of video content in mobile augmented reality
CN116097316A (zh) 用于非模态中心预测的对象识别神经网络
US20120308116A1 (en) Head rotation tracking from depth-based center of mass
Nishiyama et al. Synthesizing realistic image-based avatars by body sway analysis
KR102130902B1 (ko) 360도 영상을 2d 영상으로 변환하는 방법 및 장치
CN107248138B (zh) 虚拟现实环境中的人类视觉显著性预测方法
Comino Trinidad et al. Easy authoring of image-supported short stories for 3d scanned cultural heritage
US20230316675A1 (en) Traveling in time and space continuum
Simões et al. C-space: Fostering new creative paradigms based on recording and sharing “casual” videos through the internet
US20230217001A1 (en) System and method for generating combined embedded multi-view interactive digital media representations

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant