KR20140050107A - 3d 비디오의 포맷 타입의 식별에 기초하여 3d 비디오를 2d 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2d 또는 3d 비디오 중 하나를 제공하는 장치 및 방법 - Google Patents

3d 비디오의 포맷 타입의 식별에 기초하여 3d 비디오를 2d 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2d 또는 3d 비디오 중 하나를 제공하는 장치 및 방법 Download PDF

Info

Publication number
KR20140050107A
KR20140050107A KR1020147007088A KR20147007088A KR20140050107A KR 20140050107 A KR20140050107 A KR 20140050107A KR 1020147007088 A KR1020147007088 A KR 1020147007088A KR 20147007088 A KR20147007088 A KR 20147007088A KR 20140050107 A KR20140050107 A KR 20140050107A
Authority
KR
South Korea
Prior art keywords
video
format
video frames
frames
type
Prior art date
Application number
KR1020147007088A
Other languages
English (en)
Inventor
데바르가 무커리지
조나단 후앙
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20140050107A publication Critical patent/KR20140050107A/ko

Links

Images

Classifications

    • 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/139Format conversion, e.g. of frame-rate or size
    • 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/189Recording image signals; Reproducing recorded image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2213/00Details of stereoscopic systems
    • H04N2213/007Aspects relating to detection of stereoscopic image format, e.g. for adaptation to the display format

Abstract

본 발명의 양상들은 3D 비디오로부터 2D 비디오를 추출하는 기법들에 관한 것이다. 소스에 의해 업로드되는 3D 비디오는 3D 포맷 타입, 예를 들어, 사이드-바이-사이드, 상부 및 하부, 또는 프레임 교대 포맷을 식별하기 위해 분석된다. 3D 포맷 타입의 식별시, 2D 포맷 정보는 2D 비디오를 생성하기 위해 3D 비디오의 프레임들로부터 추출된다. 3D 비디오 및 2D 비디오 모두 데이터베이스에 저장된다. 디바이스가 비디오를 요청할 때, 디바이스가 3D 또는 2D 디스플레이 디바이스 타입과 관련되는지가 결정되며, 상기 결정에 기초하여 2D 또는 3D 비디오 중 하나가 디바이스에 제공된다.

Description

3D 비디오의 포맷 타입의 식별에 기초하여 3D 비디오를 2D 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2D 또는 3D 비디오 중 하나를 제공하는 장치 및 방법{CONVERTING 3D VIDEO INTO 2D VIDEO BASED ON IDENTIFICATION OF FORMAT TYPE OF 3D VIDEO AND PROVIDING EITHER 2D OR 3D VIDEO BASED ON IDENTIFICATION OF DISPLAY DEVICE TYPE}
본 출원은, 2011년 8월 17일에 출원되고 "3D 비디오의 포맷 타입의 식별에 기초하여 3D 비디오를 2D 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2D 또는 3D 비디오 중 하나를 제공하는 것"의 명칭을 갖는 미국 가특허 출원 번호 61/524,667 및 2012년 4월 18일에 출원되고 "3D 비디오의 포맷 타입의 식별에 기초하여 3D 비디오를 2D 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2D 또는 3D 비디오 중 하나를 제공하는 것"의 명칭을 갖는 미국 특허 출원 일련 번호 13/450,413에 대한 우선권을 청구한다. 상기 출원들의 전체 내용은 참조로써 본 명세서에 포함된다.
본 발명은 3차원 비디오들에 관한 것으로, 특히, 3차원(3D) 비디오들을 2차원(2D) 비디오들로 변환하는 것 및 디스플레이 디바이스의 성능들에 기초하여 렌더링하기 위해 2D 또는 3D 비디오 중 하나를 제공하는 것에 관한 것이다.
종래에는, 대형 극장들 또는 값비싼 전문적인 장비를 통해 3D 비디오를 보기위해서는 3D 비디오는 일반적으로 메이저 영화 스튜디오 또는 전문적인 제작소에 의해 만들어졌다. 하지만, 최근의 3D 비디오의 인기는, 기술력 있는 회사에게 보통의 소비자들도 3D 비디오들을 녹화하고 시청할 수 있는 저렴한 장비를 만들도록 동기를 부여한다. 예를 들어, 소매상에서 판매되는 휴대전화, 카메라들, 캠코더들 및 다른 소비자 디바이스들은 이제 가정의 텔레비전 또는 다른 소비자 3D 디스플레이 디바이스 상에서 시청될 수 있는 3D 비디오를 녹화할 수 있다. 그와 같이, 인기있는 소셜 미디어 공유 사이트들은 가족, 친구들 및/또는 대중들과 공유하기 위해 사용자들이 만든 3D 비디오의 업로드들을 수신하고 있다. 3D 가능한 디스플레이 장치를 가진 사용자들은 의도된 3D 포맷으로 업로드된 3D 비디오를 용이하게 다운로드하고 시청할 수 있다.
하지만, 대다수의 디스플레이 장치들은 여전히 2D이다. 따라서, 2D 디스플레이 상에서 3D 비디오를 시청하는 것을 시도하는 사용자는 때로는 3D 비디오 프레임들에서 3D 비디오 프레임들에서 겹쳐진 좌측 및 우측 이미지들에서의 차이점들 또는 3D 시각 효과를 생성하기 위해 사용되는 연속적인 3D 비디오 프레임들에서의 교대로 인해 흐릿한 이미지를 볼 것이다.
상세한 설명 및 첨부된 도면들에 개시되는 예시적이고, 비제한적인 실시예들의 다양한 양상들의 기본적이거나 일반적인 이해를 가능하게 하도록 돕는 간략화된 요약이 본 명세서에서 제공된다. 하지만, 본 요약은 아주 넓거나 완전한 관점으로 의도되지 않는다. 대신, 본 요약의 목적은 본 발명에 나타나는 다양한 실시예들에 대한 서론으로서 간략화된 예시적이고 비제한적인 일정한 실시예들에 관한 개념들에 관련된 일정한 개념들을 나타내는 것이다.
비제한적인 구현에 따라, 포맷 인식 컴포넌트는 3D 비디오의 3D 포맷 타입을 식별하고, 추출 컴포넌트는 식별된 3D 포맷 타입에 기초하여 3D 비디오로부터 3D 비디오 프레임들에 대응하는 2D 비디오 프레임들을 추출한다. 수집 컴포넌트는 추출된 2D 비디오 프레임들로부터 2D 비디오를 생성하고, 디바이스 인식 컴포넌트는 디바이스에 관련된 디스플레이 디바이스 타입을 식별하고 식별된 디스플레이 디바이스 타입에 따라 2D 비디오 또는 3D 비디오 중 하나를 디바이스에 전달한다.
다른 비제한적인 구현에 따라, 3D 비디오의 3D 포맷 타입은 식별되고, 3D 비디오 프레임들에 대응하는 2D 비디오 프레임들은 식별된 3D 포맷 타입에 기초하여 3D 비디오로부터 추출된다. 2D 비디오는 추출된 2D 비디오 프레임들로부터 생성되고, 식별된 디스플레이 디바이스 타입에 따라 2D 비디오 또는 3D 비디오 중 하나를 디바이스에 전달한다.
상기 및 다른 구현 및 실시예는 아래에서 더 상세하게 서술된다.
도 1은 본 발명의 구현에 따라 예시적이고 비제한적인 3차원 3D 비디오 캡처 시스템의 블록도를 도시한다.
도 2는 본 발명의 구현에 따라 예시적이고 비제한적인 3D 비디오의 2D 비디오로의 변환 및 분배 시스템의 블록도를 도시한다.
도 3a는 본 발명의 구현에 따라 예시적이고 비제한적인 2D 비디오 프레임을 도시한다.
도 3b는 본 발명의 구현에 따라 사이드-바이-사이드 포맷 타입을 갖는 예시적이고 비제한적인 3D 비디오 프레임을 도시한다.
도 3c는 본 발명의 구현에 따라 상부 및 하부 포맷 타입을 갖는 예시적이고 비제한적인 3D 비디오 프레임을 도시한다.
도 4a는 본 발명의 구현에 따라 3D 비디오를 2D 비디오로 변환하고 3D 및 2D 비디오를 저장하는 예시적이고 비제한적인 흐름도를 도시한다.
도 4b는 본 발명의 구현에 따라 요청되는 비디오의 수신자로 의도된 디바이스와 관련하여 디스플레이 디바이스 타입에 의존하여 3D 또는 2D 비디오 중 하나를 제공하는 흐름도를 도시한다.
도 5는 본 발명의 구현에 따라 3D 비디오를 2D 비디오로 변환하는 예시적이고 비제한적인 흐름도를 도시한다.
도 6a 및 도 6b는 본 발명의 구현에 따라 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 포함하는지를 결정하는 예시적인 방법을 도시한다.
도 7은 여러 실시예들이 구현될 수 있는 예시적이고 비제한적인 네트워크형 환경을 나타내는 블록도이다.
도 8은 여러 실시예들이 구현될 수 있는 예시적이고 비제한적인 컴퓨팅 시스템 또는 동작 환경을 나타내는 블록도이다.
본 발명의 여러 양상들 및 특징들은 도면들을 참조하여 서술되고, 동일한 참조 번호들은 동일한 요소들을 나타내기 위해 사용된다. 이러한 명세서에서, 많은 구체적인 세부사항들이 본 발명의 전체적인 이해를 제공하기 위해 명시된다. 하지만, 본 발명의 일부 양상들은 이러한 구체적인 세부사항들 없이, 또는 다른 방법들, 컴포넌트들, 자료들 등 없이 실행될 수 있음을 이해되어야 한다. 다른 예에서, 잘알려진 구조들 및 디바이스들은 본 발명을 서술하는데 용이한 블록도 형태로 도시된다.
도 1은 3D 비디오를 캡처하는 예시적인 시스템(100)을 도시한다. 3D 비디오는 시청자들로 하여금 입체 효과(stereoscopic effect)를 갖는 비디오 콘텐트 경험하도록 하는 디스플레이 기술에 대한 일반적인 용어이다. 3D 비디오는, 통상적으로 높이 및 너비(2D) 만으로 제한되는 현재의 비디오 디스플레이 기술에 3차원의 일루전(예를 들어, 깊이)을 제공한다. 3D 디바이스는 영화관에서의 3D와 같이 작동한다. 3D 콘텐트를 보여주는 스크린은 동일한 객체(102)의 2개의 격리된 이미지들을 동시에 디스플레이한다. 하나의 이미지(우측 이미지)는 시청자의 우측 눈(R)에 대해 의도되고, R-카메라(106)를 사용함으로써 캡처된다. 다른 이미지(좌측 이미지)는 좌측 눈(L)에 대해 의도되고 L-카메라(104)를 사용함으로써 캡처된다. 좌측 및 우측 이미지는 실질적으로 동시에 캡처될 수 있지만, 반드시 요구되지는 않는 것으로 이해된다. 예를 들어, 장면 내의 객체의 움직임이 존재하는 캡처된 장면에서, 좌측 및 우측 이미지들은 실질적으로 동시에 캡처될 수 있다. 다른 예에서, 장면에서 어떤 움직임도 존재하지 않으면, 좌측 및 우측 이미지는 다른 시간들에서 캡쳐될 수 있다.
L 및 R 카메라들(104 및 106)에 의해 캡처된 2개의 이미지들(108 및 110)은, 각각, 전체 스크린을 차지하고 서로 섞여 나타나는 3D 프레임을 포함한다. 이미지들(108 및 110)은 3D 프레임에서 압축되거나 압축해제될 수 있다. 구체적으로, 특별한 3D 안경들의 도움없이 시청할 때, 하나의 이미지 내의 객체들은 다른 이미지 내의 대응하는 객체들의 좌측(또는 우측)에 반복되거나 경미하게 왜곡된다. 시청자들이 3D 안경들을 착용할 때, "퓨징(fusing)"으로 알려진 프로세스로 인해, 상기 2개의 이미지들을 단일 3D 이미지로 받아들인다. 그와 같은 3D 시스템(들)은 입체시(stereopsis)라고 불리는 시각적 수용의 현상에 의존한다. 성인의 눈은 일반적으로 약 2.5인치 떨어져 존재하고, 이는 각각의 눈이 다른 것과 다른 각도로부터 객체들을 볼 수 있도록 한다. 3D 비디오에서의 좌측 및 우측 이미지들은 몇 센티미터만큼 서로 떨어져 있을 뿐 아니라 2개의 다른 각도들로부터 객체(102)를 캡처할 수 있다. 이미지들은 안경들의 도움으로 시청자의 생각에서 결합할 때, 깊이의 일루전이 생성된다.
3D 비디오를 생성하는 디바이스들은 많은 양의 3D 비디오 콘텐트의 생성을 제공하는 기준 소매 가격에 도달하고 있다. 그와 같은 3D 비디오는 2D 디바이스들 상에서 정확하게 디스플레이하지 않는 특정 포맷들로 3D 카메라들로부터 빈번하게 업로딩된다. 2D 디바이스들은 소비자 소매 시장에서 여기저기서 흔히 볼 수 있고, 3D 비디오의 깊이의 일루전을 제공하는 포맷은 결과적으로 2D 디바이스를 사용하여 볼 때 왜곡(예를 들어, 흐릿함, 얼룩짐, 하나 대신 2개의 이미지들로 나타남 등)을 발생시킨다. 본 명세서에서 서술된 실시예들은 콘텐트를 다시포맷팅함으로써 앞서 언급한 문제점을 완화시켜 3D 디스플레이 디바이스 타입을 갖는 디바이스들에 대해 3D 비디오를 전달하고 2D 디스플레이 디바이스 타입을 갖는 디바이스들에 대해 3D 비디오를 2D 비디오로 변환함으로써 2D 디바이스들과 함께 3D 디바이스들 상에 정확하게 자동적으로 디스플레이할 수 있게 한다.
여러 개시된 양상들에 따라, 3D 비디오의 3D 포맷 타입을 검출하고, 검출된 3D 포맷 타입에 기초한 3D 비디오로부터 2D 비디오를 생성하는 메커니즘이 제공된다. 더욱이, 디바이스와 관련된 디스플레이 디바이스 타입을 검출하고 검출된 디스플레이 타입에 기초한 3D 또는 2D 비디오를 나타내는 메커니즘이 제공된다. 비제한적인 예로서, 사용자는 3D 비디오를 업로드할 수 있고, 다른 사용자들은 렌더링 디바이스의 디스플레이 성능들에 기초한 3D 또는 2D에서 비디오를 시청할 수 있다. 예를 들어, 소셜 미디어 사이트에 업로딩되는 3D 비디오는 2D 포맷으로 변환되고 저장되는 것처럼, 3D 포맷으로 저장될 수 있다. 비디오를 시청할 것을 요구할 때, 소셜 미디어 사이트는 테블릿 디바이스와 같은 요청 디바이스의 디스플레이 디바이스 타입을 결정할 수 있고, 2D 포맷 비디오가 디바이스에 나타내어지는 것과 달리, 디바이스가 3D 포맷을 렌더링할 수 있으면 3D 포맷 비디오를 나타낼 수 있다. 다른 예에서, 가입된 영화 스트리밍 서비스는 디바이스와 관련된 디스플레이 디바이스 타입을 검출할 수 있다. 예를 들어, 영화 스트리밍 서비스를 갖는 DVD 플레이어는 3D 케이블 텔레비전 또는 2D 케이블 텔레비전과 관련될 수 있다. 영화 스트리밍 서비스는 관련된 텔레비전의 디스플레이 디바이스 타입을 결정할 수 있고 DVD 플레이어에 적합한 3D 또는 2D 포맷을 나타낼 수 있다.
도 2는 일 실시예에 따라 시스템(200)을 도시한다. 시스템(200)은 3D 비디오들(204)을 수신하고 디바이스들(230)에 3D 또는 2D 비디오들을 제공하는 비디오 서비스 컴포넌트(206)를 포함한다. 비디오 서비스 컴포넌트(206) 및 디바이스들(230)은 도 8을 참조하여 알 수 있는 비제한적인 예들인, 예를 들어, 입력 디바이스들을 사용하여 비디오 서비스 컴포넌트(206) 및 디바이스들(230) 상의 표현과 상호작용을 제어할 수 있도록 사용자들로부터 입력을 수신할 수 있다.
비디오 서비스 컴포넌트(206)는, 도 8을 참조하여 알 수 있는 비제한적인 예로서, 컴퓨터 실행가능한 컴포넌트들을 저장하는 메모리 및 상기 메모리에 저장되는 컴퓨터 실행가능한 컴포넌트들을 실행하는 프로세서를 포함한다. 일 실시예에서, 비디오 서비스 컴포넌트(206)는, 네트워크, 유선 또는 무선을 통해 디바이스(230)와 통신하는 서버에 위치될 수 있다. 예를 들어, 비디오 서비스 컴포넌트(206)는 디바이스들(230)에 비디오들을 제공하는 (예를 들어, 소셜 매체 공유 웹사이트, 케이블 텔레비전 제공자, 위성 텔레비전 제공자, 가입 매체 서비스 제공자, 인터넷 서비스 제공자, 디지털 가입자 배선 제공자, 모바일 통신 제공자, 셀룰러 제공자, 무선 제공자, 또는 유선 또는 무선 매체들을 통해 비디오들 또는 비디오 스트림들을 제공하는 임의의 다른 타입의 시스템의) 비디오 서버에 통합될 수 있다. 다른 실시예에서, 비디오 서비스 컴포넌트(206)는 디바이스(230)에 통합될 수 있다. 더욱이, 비디오들은 비디오 서비스 컴포넌트(206)에 국한하여 저장될 수 있거나 비디오 서비스 컴포넌트(206)로부터 원격으로 저장될 수 있다.
디바이스(230)는 국부적으로, 또는 모바일 디바이스, 모바일 폰, PDA(personal data assistant), 랩톱 컴퓨터, 태블릿 컴퓨터, 데스크톱 컴퓨터, 서버 시스템, 케이블 셋 탑 박스, 위성 셋 탑 박스, 케이블 모뎀, 텔레비전 세트, 미디어 익스텐더 디바이스, 블루-레이 디바이스, DVD(digital versatile disc 또는 digital video disc) 디바이스, 콤팩트 디스크 디바이스, 비디오 게임 디바이스, 오디오/비디오 수신기, 무선 디바이스, 휴대용 음악 플레이어, 네비게이션 시스템, 카 스테레오 등을 포함하는 비제한적인 예들로서, 유선 또는 무선 통신 링크를 통해 비디오들과 상호대화하는 임의의 적합한 타입의 디바이스일 수 있다.
도 2를 계속하여 참조하여, 비디오 서비스 컴포넌트(206)는, 3D 비디오(204)와 관련된 3D 포맷 타입을 식별하는 포맷 인식 컴포넌트(202)를 포함한다. 비디오 서비스 컴포넌트(206)는 식별되는 3D 포맷 타입에 기초한 3D 비디오(204)로부터 2D 프레임들을 추출하는 추출 컴포넌트(208)를 또한 포함한다. 비디오 서비스 컴포넌트(206)는 데이터 저장소(216) 내의 2D 포맷된 비디오로서 추출된 2D 프레임들을 집합적으로 저장하는 수집 컴포넌트(210)를 더 포함한다. 부가하여, 비디오 서비스 컴포넌트(206)는 디바이스의 디바이스 디스플레이 타입을 식별할 수 있는 디바이스 인식 컴포넌트(232)를 포함한다. 비디오 서비스 컴포넌트(206)는 포맷 인식 컴포넌트(202), 추출 컴포넌트(208), 수집 컴포넌트(210), 또는 디바이스 인식 컴포넌트(232)에 의해 생성되는 데이터와 함께 비디오들을 저장할 수 있는 데이터 저장소(216)를 포함한다. 데이터 저장소(120)는, 도 7 및 도 8을 참조하여 알 수 있는 비제한적인 예로서, 임의의 적합한 타입의 저장 디바이스 상에 저장될 수 있다.
비디오 서비스 컴포넌트(206)는, 사용자 업로드, 디바이스, 서버, 방송 서비스, 매체 스트림 서비스, 비디오 라이브러리, 휴대용 저장 디바이스를 포함하는 비제한적인 예들인 하나 이상의 소스들, 또는 유선 또는 무선 통신 매체를 통해 비디오 서비스 컴포넌트(206)에 제공될 수 있는 3D 비디오로부터의 임의의 다른 적합한 소스로부터 하나 이상의 3D 비디오들(204)을 수신한다. 비디오 서비스 컴포넌트(206)는 복수의 소스들로부터 동시에 복수의 3D 비디오들을 수신하고 처리할 수 있는 것으로 이해된다. 비디오 서비스 컴포넌트(206)는 오리지널 업로드된 포맷으로 또는 데이터 저장소(216)로부터 압축되는 형식으로 수신된 3D 비디오(204)를 저장할 수 있다. 부가하여, 비디오의 2D 버전은 3D 비디오(204)에 대해 생성되지 말아야하고 비디오 서비스 컴포넌트(206)는 3D 만으로 3D 비디오(204)를 마크할 수 있고 2D로 변환을 수행하지 못한다. 예를 들어, 3D 비디오(204)의 생성자는 창조적인 무결성을 유지하기 위해 3D 비디오의 2D 버전을 원하지 않을 수 있다.
포맷 인식 컴포넌트(202)는 3D 비디오의 3D 포맷 타입을 결정하기 위해 3D 비디오(204)를 분석할 수 있다. 3D 포맷 타입들의 제한적인 예들은 사이드-바이-사이드 포맷, 상부 및 하부, 또는 인터레이스되는(프레임 대안 또는 대안의) 포맷이다. 도 4는 2D 비디오 프레임, 사이드-바이-사이드 비디오 프레임, 상부 및 하부 비디오 프레임을 도시한다. 사이드-바이-사이드 포맷은, 장면의 관련된 좌측(좌측 프레임) 및 우측(우측 프레임) 캡처된 2D 이미지가 사이드-바이-사이드 2D 이미지들로서 단일 3D 프레임에 포함되는 일련의 3D 프레임들을 포함한다. 예를 들어, 장면의 좌측에 캡쳐된 이미지는 크기조정되어 3D 프레임의 좌측 ~ 50%에 포함될 수 있고, 동일한 장면의 우측에 캡처된 이미지는 크기조정되어 동일한 3D 프레임의 우측 ~ 50%에 포함될 수 있으며, 그 반대도 가능하다. 마찬가지로, 동일한 또는 상이한 장면의 후속 캡처된 좌측 및 우측 이미지들은 조정되고 3D 비디오의 일련의 3D 프레임들 내의 대응하는 후속 단일 3D 프레임들에 나란히 포함된다. 상부 및 하부 포맷은, 장면의 관련된 좌측(좌측 프레임) 및 우측(우측 프레임) 캡처된 이미지가 상부 및 하부 2D 프레임들로서 단일 3D 프레임에 포함되는 일련의 3D 프레임들을 포함한다. 예를 들어, 장면의 좌측에 캡쳐된 이미지는 크기조정되어 3D 프레임의 상부 ~ 50%에 포함될 수 있고, 동일한 장면의 우측에 캡처된 이미지는 크기조정되어 동일한 3D 프레임의 하부 ~ 50%에 포함될 수 있으며, 그 반대도 가능하다. 마찬가지로, 동일한 또는 상이한 장면의 후속 캡처된 좌측 및 우측 이미지들은 조정되고 3D 비디오의 일련의 3D 프레임들 내의 대응하는 후속 단일 3D 프레임들에 상부 및 하부가 포함된다. 대안의 포맷은, 장면의 관련된 좌측(좌측 프레임) 및 우측(우측 프레임) 캡처된 이미지가 2개의 연속되는 3D 프레임들에 포함되는 일련의 3D 프레임들을 포함한다. 3D 프레임들은 좌측 및 우측 캡처된 이미지들 사이를 연속적으로 교대하는 2D 프레임이될 수 있다. 예를 들어, 장면의 좌측에 캡처된 이미지는 제1 3D 프레임 내의 2D 좌측 프레임으로서 포함될 수 있고, 동일한 장면의 우측에 캡처된 이미지는 일련의 프레임들 내의 바로 다음의 제2 3D 프레임 내의 2D 우측 프레임으로 포함될 수 있으며, 그 반대도 가능하다. 상응하여, 동일한 또는 상이한 장면의 후속 캡처된 좌측 및 우측 이미지들은 3D 비디오의 일련의 3D 프레임들 내의 연속적으로 교대하는 3D 프레임들에 포함될 수 있다.
포맷 인식 컴포넌트(202)는 3D 포맷 타입을 결정하기 위해 3D 프레임 또는 한 쌍의 연속적인 프레임들의 3D 비디오(204)를 검사할 수 있다. 예를 들어, 포맷 인식 컴포넌트(202)는, 제1 및 제2 2D 프레임이 장면의 좌측 및 우측 이미지 캡처들을 나타내는지를 결정하기 위해 3D 프레임의 좌측 부분으로부터 추출된 제1 2D 프레임과 3D 프레임의 우측 부분으로부터 추출된 제2 2D 프레임을 비교할 수 있다. 비제한적인 예로서, 컬러 히스토그램은 3D 프레임의 제1 2D 프레임에 대해 생성될 수 있고, 이 컬러 히스토그램은 3D 프레임의 제2 2D 프레임의 컬러 히스토그램과 비교될 수 있다. 다른 제한되지 않은 예로서, 움직임 추정 비교는 3D 프레임의 제1 2D 프레임과 제2 2D 프레임간 수행될 수 있다. 다른 적합한 비교는 제1 2D 프레임과 제2 2D 프레임이 매칭하는 정도를 결정하기 위해 3D 프레임의 제1 2D 프레임과 제2 2D 프레임 사이에서 수행될 수 있는 것으로 이해될 것이다. 비교에 기초하여, 포맷 인식 컴포넌트(202)는 3D 프레임의 제1 2D 프레임과 제2 2D 프레임이 매칭하는 정도를 나타내는 사이드-바이-사이드 측정을 할당할 수 있다. 3D 포맷 타입이 사이드-바이-사이드 인 것이라는 신뢰를 제공하는 레벨로 3D 프레임의 제1 2D 프레임 및 제2 2D 프레임이 충분히 매칭하는지를 결정하기 위해 포맷 인식 컴포넌트(202)는 매칭 신뢰 임계치와 사이드-바이-사이드 측정을 비교할 수 있다. 사이드-바이-사이드 측정이 매칭 신뢰 임계치를 초과하면, 포맷 인식 컴포넌트(202)는 3D 비디오(204)에 대한 3D 포맷 타입으로서 나란히 할당할 수 있다. 그렇지 않으면, 사이드-바이-사이드 측정이 매칭 신뢰 임계치를 초과하거나 미리 결정된 수의 프레임들이 검사될 때까지 3D 비디오(204)의 추가적인 3D 프레임들은 검사될 수 있다. 예를 들어, 미리 결정된 수의 프레임들이 3D 포맷 타입을 사이드-바이-사이드로서 할당하지 않고 충족되었다면, 포맷 인식 컴포넌트(202)는 불명확하게 3D 포맷 타입으로서 할당할 수 있다. 사이드-바이-사이드 측정은 평균, 중앙값 또는 임의의 다른 확률론적 또는 통계적 측정을 포함하는 비제한적인 예인 일련의 프레임들 대한 누적되는 측정이 될 수 있는 것으로 이해된다. 미리결정된 수의 프레임들은, 하나의 프레임, 프레임들의 서브세트, 프레임들의 백분율, 모든 프레임들을 포함하는 제한되지 않은 예들인 3D 비디오(204) 내의 임의의 적합한 프레임들이 될 수 있다. 더욱이, 미리결정된 수의 프레임들은, 예를 들어, 시스템에 의해 미리정의되고, 관리자나 사용자에 의해 설정될 수 있거나, 예를 들어, 하드웨어 처리 기능들, 하드웨어 처리 로드, 3D 비디오(204) 크기, 또는 임의의 적합한 범위에 기초하여 동적으로 조절될 수 있다.
다른 제한되지 않은 예에서, 포맷 인식 컴포넌트(202)는 상기에서 논의된 사이드-바이-사이드 분석과 유사한 상부 및 하부 비교를 수행할 수 있다. 예를 들어, 포맷 인식 컴포넌트(202)는, 제1 2D 프레임 및 제2 2D 프레임이 장면의 좌측 및 우측 이미지 캡처들을 나타내는지를 결정하기 위해 3D 프레임의 상부 부분으로부터 추출된 제1 2D 프레임과 3D 프레임의 하부 부분으로부터 추출된 제2 2D 프레임을 비교할 수 있다. 컬러 히스토그램 및 움직임 추정을 포함하는 비제한적인 예들인, 2개의 부분들이 매칭하는 정도를 결정하기 위해 3D 프레임의 제1 2D 프레임과 제2 2D 프레임 사이에서 임의의 적합한 비교가 수행될 수 있는 것으로 이해될 것이다. 비교에 기초하여, 3D 프레임의 제1 2D 프레임 및 제2 2D 프레임이 매칭하는 정도를 나타내는 상부 및 하부 측정을 포맷 인식 컴포넌트(202)가 할당할 수 있다. 3D 포맷 타입이 상부 및 하부인 것이라는 신뢰를 제공하는 레벨로 3D 프레임의 제1 2D 프레임 및 제2 2D 프레임이 충분히 매칭하는지를 결정하기 위해 포맷 인식 컴포넌트(202)는 매칭 신뢰 임계치와 상부 및 하부 측정을 비교할 수 있다. 상부 및 하부 측정이 매칭 신뢰 임계치를 초과하면, 포맷 인식 컴포넌트(202)가 3D 비디오(204)에 대한 3D 포맷 타입으로서 상부 및 하부를 할당할 수 있다. 그렇지 않으면, 상부 및 하부 측정이 매칭 신뢰 임계치를 초과하거나 미리 결정된 수의 프레임들이 검사될 때까지 3D 비디오(204)의 추가적인 3D 프레임들은 검사될 수 있다. 예를 들어, 미리 결정된 수의 프레임들이 상부 및 하부로서 3D 포맷 타입을 할당하지 않고 달성되지 않고 충족되었다면, 포맷 인식 컴포넌트(202)는 3D 포맷 타입으로서 불명료하게 할당할 수 있다. 상부 및 하부 측정은 평균, 중앙값 또는 임의의 다른 확률론적 또는 통계적 측정을 포함하는 비제한적인 예인 일련의 프레임들 대한 누적되는 측정이 될 수 있는 것으로 이해된다.
다른 비제한적인 예에서, 포맷 인식 컴포넌트(202)는 상기에서 논의된 사이드-바이-사이드, 및 상부 및 하부 분석들과 유사한 교대 비교를 수행할 수 있다. 예를 들어, 연속적인 쌍들의 3D 프레임들 내의 제1 및 제2 3D 프레임이 장면의 좌측 및 우측 이미지 캡처들을 나타내면, 상기 연속적인 쌍들의 3D 프레임들 내의 제1 3D 프레임과 상기 연속적인 쌍들의 3D 프레임들 내의 제2 3D 프레임을 비교할 수 있다. 임의의 적합한 비교는, 컬러 히스토그램 및 움직임 추정을 포함하는 비제한적인 예들인, 2개의 프레임들이 매칭하는 정도를 결정하기 위해 제1 및 제2 3D 프레임들 사이에서 수행될 수 있다. 비교에 기초하여, 포맷 인식 컴포넌트(202)는 제1 및 제2 프레임들이 매칭하는 정도를 나타내는 교대 측정을 할당할 수 있다. 포맷 인식 컴포넌트(202)는, 상기 3D 포맷 타입이 교대하고 있다는 신뢰를 제공하는 레벨로 상기 제1 및 제2 3D 프레임들이 충분히 매칭하는지를 결정하기 위해 매칭 신뢰 임계치와 교대 측정을 비교할 수 있다. 교대 측정이 매칭 신뢰 임계치를 초과하면, 포맷 인식 컴포넌트(202)는 3D 비디오(204)에 대한 3D 포맷 타입으로 교대하는 것을 할당할 수 있다. 그렇지 않으면, 교대 측정이 매칭 신뢰 임계치를 초과하거나 미리결정된 수의 프레임들이 검사될 때까지, 일련의 3D 프레임들 내의 2개의 연속적인 프레임들의 슬라이딩 윈도우가 하나 또는 두 개의 프레임들에 의해 증분될 수 있는 것처럼, 3D 비디오(204)의 추가적인 연속적인 쌍들의 3D 프레임들이 검사될 수 있다. 예를 들어, 미리결정된 수의 프레임들이 3D 포맷 타입을 교대로서 할당하지 않고 달성되지 않은채 충족되었다면, 포맷 인식 컴포넌트(202)는 3D 포맷 타입으로서 명확하지 않게 달성할 수 있다. 교대 측정은 평균, 중앙값 또는 임의의 다른 확률론적 또는 통계적 측정을 포함하는 비제한적인 예인 일련의 프레임들 대한 누적되는 측정이 될 수 있는 것으로 이해된다.
포맷 인식 컴포넌트(202)는, 예를 들어, 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정 중 하나가 매칭 신뢰 임계치를 초과할 때, 3D 포맷 타입이 3D 비디오(204)에 대해 동시에 사이드-바이-사이드, 상부 및 하부, 또는 교대에 대한 분석을 수행할 수 있다. 더욱이, 3D 비디오(204)에 대해 동시에 사이드-바이-사이드, 상부 및 하부, 교대에 대한 분석은 연속해서 수행될 수 있다. 부가적으로, 연속해서 수행되면, 순서는, 예를 들어, 관리자 구성, 또는 임의의 다른 적합한 범주에 기초하여 포맷 인식 컴포넌트(202)에 의해 가장 자주 인식되는 3D 포맷 타입, 가장 공통적으로 사용되는 3D 포맷 타입에 기초하여 변할 수 있다. 더욱이, 2개 이상의 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정이 매칭 신뢰 임계치를 초과하고 있으면, 타이브레이커(tiebreaker) 매커니즘이 이용될 수 있다. 예를 들면, 추가의 매칭 신뢰 임계치가, 매칭 신뢰 임계치보다 높다고 사용될 수 있다. 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정 중 하나가 추가의 매칭 신뢰 임계치를 초과할 때, 3D 비디오(204)의 3D 포맷 타입은 그에 따라 설정될 수 있다. 추가의 예로서, 가장 큰 양에 의한 매칭 신뢰 임계치를 초과하는 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정은 3D 비디오(204)에 대한 3D 포맷 타입으로 선택될 수 있다. 다른 예에서, 2개 이상의 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정이 매칭 신뢰 임계치 또는 추가의 매칭 신뢰 임계치를 초과하고 있으면, 포맷 인식 부품(202)은 불명확하게 3D 비디오(204)에 대한 3D 포맷 타입으로 할당할 수 있다. 타이브레이커 매커니즘은, 예를 들어, 관리자에 의해 미리정의되거나 구성가능하다고 이해될 것이다. 더욱이, 3개의 모든 측정들이 매칭 신뢰 임계치 또는 추가의 매칭 신뢰 임계치를 초과하지 않으면, 포맷 인식 컴포넌트(202)는 불명확하게 3D 비디오(204)에 대한 3D 포맷 타입으로 할당할 수 있다. 매칭 신뢰 임계치는 사이드-바이-사이드 측정, 상부 및 하부 측정, 또는 교대 측정의 각각에 대해 변할 수 있는 것으로 이해될 것이다.
포맷 인식 컴포넌트(202)는, 3D 비디오의 수신시 자동적으로 트리거링될 수있거나, 수동으로 트리거링될 수 있거나, 또는 3D 비디오가 수신되는 특별한 소스의 식별을 포함하는 비제한적인 예인, 사건 또는 조건의 검출시 트리거하기 위해 프로그래밍될 수 있다.
추출 컴포넌트(208)는, 3D 프레임 타입이 할당되는 것에 기초하여, 3D 비디오(204)의 대응하는 3D 프레임들로부터 각각의 2D 프레임들을 추출한다. 3D 포맷 타입이 불명료하면, 추출 컴포넌트(208)는 3D 비디오(204)로부터 2D 프레임들을 추출하지 않는다. 3D 포맷이 사이드-바이-사이드라면, 추출 컴포넌트(208)는 3D 비디오(204) 내의 모든 연속적인 프레임들에 대해 좌측 또는 우측 부분 중 하나로부터 2D 프레임들을 추출하고 그들의 순서를 유지할 것이다. 더욱이, 추출 컴포넌트(208)는 추출된 2D 프레임을 전체 2D 프레임의 크기로 조정할 수 있다. 비제한적인 예에서, 추출된 2D 프레임은 ~100%까지 수평적으로 늘어날 수 있다. 하나의 예에서, 3D 비디오(204) 내의 모든 3D 프레임들의 좌측 부분으로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다. 다른 예에서, 3D 비디오(204) 내의 모든 3D 프레임들의 좌측 부분으로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다. 이러한 예가 모든 3D 프레임들로부터의 2D 프레임들을 추출하는 동안, 2D 프레임들은, 예를 들어, 특별한 2D 비디오 품질을 충족하기 위해, 3D 프레임들의 서브세트로부터 추출될 수 있는 것으로 이해된다. 예를 들어, 2D 프레임들은 매 j 3D 프레임들로부터 추출될 수 있고, 여기서 j는 저품질의 2D 비디오를 생성하기 위한 정수이다. 3D 포맷 타입이 상부 및 하부라면, 추출 컴포넌트(208)는 3D 비디오(204) 내의 3D 프레임들에 대해 상부 또는 하부 중 하나로부터 2D 프레임들을 추출하고 그들의 순서를 유지할 것이다. 더욱이, 추출 컴포넌트(208)는 추출된 2D 프레임들을 전체 2D 프레임의 크기로 조정할 수 있다. 비제한적인 예에서, 추출된 2D 프레임은 100%까지 수직적으로 늘어날 수 있다. 하나의 예에서, 3D 비디오(204) 내의 모든 3D 프레임들의 상부 부분으로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다. 다른 예에서, 3D 비디오(204) 내의 모든 3D 프레임들의 하부 부분으로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다. 3D 포맷 타입이 교대이면, 추출 컴포넌트(208)는 3D 비디오(204) 내의 연속적으로 넘버링되는 3D 프레임들로부터 홀수의 또는 짝수의 3D 프레임들 중 하나로부터 2D 프레임들을 추출하고 그들의 순서를 유지할 것이다. 하나의 예에서, 3D 비디오(204) 내의 홀수의 3D 프레임들로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다. 다른 예에서, 3D 비디오(204) 내의 짝수의 3D 프레임들로부터의 2D 프레임들은 2D 비디오를 생성하기 위해 추출된다.
선택적으로, 추출 컴포넌트(208)는 2D 프레임 품질을 향상시키기 위해 프레임 일관성을 이용할 수 있다. 하나의 실시예에서, 추출 컴포넌트(208)는 고품질의 2D 프레임들을 생성하기 위해 좌측 및 우측 프레임들 모두를 사용하여 표준 선형 보간법을 이용할 수 있다. 마찬가지로, 우측 프레임은 좌측 프레임으로부터 생성되는 2D 프레임의 품질을 향상시키기 위해 이용될 수 있고, 그 반대도 가능하다.
수집 컴포넌트(210)는 데이터 저장소(216)에 2D 포맷된 비디오(218)로서 추출된 2D 프레임들을 집합적으로 저장할 수 있다. 예를 들어, 수집 컴포넌트는 2D 비디오(218)를 생성하기 위해 추출된 2D 프레임들 상에 비디오 인코딩 알고리즘을 수행할 수 있다. 하나의 예에서, 3D 비디오(204) 및 3D 비디오(204)로부터 생성된 대응하는 2D 비디오(218)는 수집 컴포넌트(210)에 의해 단일 비디오 파일에 저장될 수 있다. 예를 들어, 이러한 것은 3D 및 2D 비디오의 휴대성에 대해 유리할 수 있다. 대안의 예에서, 수집 컴포넌트(210)는 2D 비디오(218) 및 (예를 들어, 요청된 시간에서 전반적인 계산을 완화시키기 위해) 분리된 파일들로서 대응하는 3D 비디오(204)를 저장할 수 있다.
비디오 제공 컴포넌트(206)는 N 디바이스들(230)(N 정수)에 비디오를 제공하기 위해 비디오 요청(242)를 수신할 수 있고, N은 임의의 수의 디바이스들일 수 있다. 비디오 서비스 컴포넌트(206)는 복수의 비디오 요청들(242)을 동시에 수신하고 처리할 수 있다. 더욱이, 도 2가 디바이스(230)으로부터 인입하는 비디오 요청(242)을 도시하는 동안, 비디오 요청(232)은 임의의 소스로부터 발생할 수 있다. 예를 들어, 비디오 구독 서비스는 하나 이상의 디바이스(230)에 비디오를 넣기 위해 비디오 서비스 컴포넌트(206)에 대한 비디오 요청(204)을 개시할 수 있다. 각각의 디바이스들(230)은 상이한 기능들을 가질 수 있다(예를 들어, 2D 비디오만을 처리할 수 있거나, 3D 비디오만을 처리할 수 있거나, 다수의 타입들의 비디오를 처리할 수 있다...). 2D 비디오만을 처리할 수 있는 디바이스는 3D 비디오를 디스플레이하는 것은 어려울 것이다. 따라서, 디바이스 인식 컴포넌트(232)는 디바이스(230)와 관련된 디스플레이 디바이스 타입을 식별할 수 있다. 비제한적인 예에서, 디스플레이 디바이스 타입은 3D 비디오에 대해 설계되거나 3D 비디오 및 2D 비디오에 대해 설계되는 디바이스들에 대한 3D 디스플레이, 및 3D 비디오에 대해 설계되지 않은 디바이스들에 대한 2D 디스플레이가 될 수 있다. 하나의 실시예에서, 디바이스(230)에 대한 비디오 요청(242)은 디바이스에 관련된 디스플레이 디바이스 타입를 식별하는 정보를 포함할 수 있다. 다른 예에서, 비디오 요청(242)은, 디바이스 인식 컴포넌트(232)가 디바이스(230)의 디스플레이 디바이스 타입을 추론하는 것을 허용하는 정보를 제공할 수 있다. 예를 들어, 비디오 요청(232)은, 디바이스 인식 컴포넌트(232)가 디바이스 프로필, 디바이스 라이브러리 내의 또는 인터넷 상의 디바이스 특성들을 찾기 위해 사용할 수 있는, 제품, 모델 또는 일련 번호와 같은 디바이스 타입을 제공할 수 있다. 다른 예에서, 디바이스(230)에 대한 비디오 포맷 선호들을 식별하기 위해 사용자와 관련된 프로파일을 찾기 위해 사용할 수 있는, 디바이스(230)와 관련된 사용자를 식별하는 정보를 비디오 요청(242)이 제공할 수 있다. 또 다른 예에서, 디바이스 인식 컴포넌트(232)는 디바이스(230)와 관련된 디스플레이 디바이스 타입을 식별하기 위한 정보에 대해 디바이스(230)에 질의할 수 있다. 예를 들어, 디바이스 인식 컴포넌트(232)는 디스플레이 디바이스 타입을 결정하기 위해 디바이스(230)에 접속된 텔레비전과 관련한 정보에 대해 질의할 수 있다.
디바이스(230)의 디스플레이 디바이스 타입이 3D 디스플레이인 것을 디바이스 인식 컴포넌트(232)가 결정하면, 비디오 서비스 컴포넌트(206)는 요청된 비디오의 3D 비디오를 디바이스(230)에 공급할 수 있다. 디바이스(230)의 디스플레이 디바이스 타입이 2D 디스플레이인 것을 디바이스 인식 컴포넌트(232)가 결정하면, 비디오 서비스 컴포넌트(206)는 요청된 비디오의 2D 비디오를 디바이스(230)에 공급할 수 있다. 하지만, 디바이스(230)의 디스플레이 타입이 2D 디스플레이 타입이 2D 디스플레이이고 3D 비디오의 2D 비디오가 생성되지 않았다고 디바이스 인식 컴포넌트(232) 결정하면, 예를 들어, 소스 사양이 2D 비디오를 생성하기 않기 때문이거나 3D 포맷 타입이 불명확한 것으로 설정되기 때문에, 에러 메시지가 디바이스(230)에 전송될 수 있거나, 3D 비디오가 디바이스(230)에 전송될 수 있거나 2D 비디오가 이용가능하지 않다는 것을 디바이스(230)에 알려주고 3D가 요구되는지를 묻는 질의가 디바이스(230)에 전송될 수 있다. 비디오 요청(242)이 요청된 비디오 포맷으로서 2D 포맷 또는 3D 포맷을 특정할 수 있는 것으로 이해된다. 예를 들어, 비디오 요청(242)이 2D 비디오를 특정할 수 있고, 3D 비디오의 2D 비디오가 생성되지 않았다면, 에러 메시지는 디바이스(230)에 전송될 수 있거나, 3D 비디오가 디바이스(230)에 전송될 수 있거나 2D 비디오가 이용가능하지 않다는 것을 디바이스(230)에 알려주고 3D가 공급되어야하는지를 묻는 질의가 디바이스(230)에 전송될 수 있다. 다른 예에서, 비디오 요청(242)은 2D 비디오를 특정할 수 있고, 디바이스(230)의 디스플레이 디바이스 타입이 3D 디스플레이인 것을 디바이스 인식 컴포넌트(232)가 결정하면, 3D 비디오가 디바이스(230)에 전송될 수 있거나 3D 비디오가 이용가능한 것을 디바이스(230)에 알려주고 3D가 공급되어야하는지를 묻는 질의가 디바이스(230)에 전송될 수 있다. 2D 비디오가 3D 비디오에 대해 이용가능하지 않으면, 비디오 서비스 컴포넌트(206)는 디스플레이 디바이스 타입을 결정하기 위해 디바이스 인식 컴포넌트(232)를 이용하는 것을 중지하고, 디바이스(230)에 3D 비디오를 전송할 수 있다. 더욱이, 비제한적인 예에서, 디바이스 인식 컴포넌트(232)가 디바이스(230)에 관련된 디스플레이 디바이스 타입을 결정할 수 없으면, 디바이스 인식 컴포넌트(232)가 요청된 비디오 포맷이 3D인지 2D인지에 관하여 디바이스에 질의할 수 있다. 대안의 예에서, 디바이스 인식 컴포넌트(232)가 디바이스(230)와 관련된 디스플레이 디바이스 타입을 결정할 수 없으면, 비디오 서비스 컴포넌트(206)는 비디오 요청(242)에 표시된 비디오 포맷 또는 예를 들어, 관리자에 의해 시스템에서 미리정의된 디폴트 비디오 포맷을 제공할 수 있다.
도 3a 내지 도 3c를 참조하면, 예시적인 비디오 프레임들이 도시된다. 도 3a는 예시적인 2D 비디오 프레임(302) 도시한다. 2D 비디오 프레임(302)은 픽셀들의 수에 의해 통상적으로 정의된 높이 및 폭을 가진다. 예를 들어, 2D 비디오 프레임(302)은 640 픽셀들의 폭 및 480 픽셀들의 높이를 가질 수 있다. 다른 예에서, 2D 비디오 프레임은 420 픽셀들의 폭 및 240 픽셀들의 높이를 가질 수 있다. 도 3B는 사이드-바이-사이드 3D 포맷 타입을 갖는 예시적인 3D 비디오 프레임(304)을 도시한다. 3D 비디오 프레임(304)은 좌측 및 우측 프레임들(306 및 308)로, 나란히 위치하는 것으로 구성되지만, 2D 비디오 프레임(302)과 비교하여 ~50%폭까지 압축된다. 도 3c는 상부 및 하부 3D 포맷 타입에서 좌측 및 우측 프레임들(306 및 308)을 갖는 예시적인 3D 비디오 프레임(310)을 도시한다.
대상 개시물의 양상에 따라, 추출 컴포넌트는 전체 프레임을 생성하기 위해 ~ 100%까지 좌측 프레임(306) 또는 우측 프레임(308) 중 하나를 늘림으로써(또는 크기조절함으로써) 3D 비디오 프레임(304)으로부터 2D프레임을 추출할 수 있다. 추출 컴포넌트는 또한 좌측 프레임(306) 및 우측 프레임(308)으로부터 데이터를 결합함으로써 3D 프레임(304)으로부터 2D 프레임을 추출할 수 있다. 예를 들어, 대응하는 2D 프레임을 생성하기 위해 좌측 이미지를 다시 샘플링할 때, 추출 컴포넌트에 의해 이용되는 크기조정 알고리즘은 크기조정을 돕기 위해 대응하는 우측 프레임으로부터 프레임 일관성을 활용할 수 있거나 그 반대도 가능하다. 대상 개시물의 다른 양상에 따라, 특정 방향으로 고정된 거리, 예를 들어 5센티미터 만큼 격리되어 나란히 위치하는 2대의 카메라들을 갖는 알려진 3D 카메라에 의해 찍힌 이미지들의 경우에서, 재크기조정 알고리즘은 고정된 거리를 사용하는 2D 프레임의 추출 프로세스 동안 좌측 프레임에서 빠진 정보를 채우기 위해 우측 프레임으로부터 샘플링할 수 있다. 5센티미터 예에서, 5센티미터가 50 픽셀들과 매핑하면, 스칼라에 기초한 2중 선형 보간법은 더 정확한 2D 프레임을 생성하기 위해 특정 방향으로 50 픽셀들의 오프셋에 의해 좌측 프레임의 픽셀들을 우측 프레임의 픽셀들과 관련시킴으로써 좌측 및 우측 프레임 모두로부터 선택되는 색 관련 데이터의 평균을 계산할 수 있다.
도 4a 내지 도 6b는 일정하게 개시된 양상들에 따라 여러 방법론들을 도시한다. 설명의 간략함을 위해, 방법론들이 일련의 행위들로서 도시되고 서술되는 반면에, 일부 행위들이 본 명세서에서 도시되고 서술된 다른 행위들과 다른 순서들 및/또는 동시에 발생할 수 있는 것처럼, 개시된 양상들은 행위들의 순서에 의해 제한되지 않은 것으로 이해 및 인식된다. 예를 들어, 당업자는 상태 다이어그램과 같은 인터레이스된 상태들 또는 이벤트들처럼 대안적으로 표시될 수 있다. 더욱이, 모든 예시된 행위들이 일정하게 개시된 양상들에 따른 방법론을 구현하기 위해 요구될 필요는 없다. 부가적으로, 이후에 그리고 본 발명의 통해 개시된 방법론들은 컴퓨터들에 그와 같은 방법론들을 전송하고 전달하는 것을 용이하도록 제조물 상에 저장될 수 있다.
도 4a는 3D 비디오를 2D 비디오로 변환하고 3D 및 2D 비디오들을 저장하는 예시적인 방법(400a)을 도시한다. 참조 번호 410에서, 3D 비디오가 (예를 들어, 비디오 서비스 컴포넌트(206)에 의해) 수신되고 저장된다. 참조 번호 412에서, 3D 비디오의 3D 포맷 타입은 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 결정된다. 참조 번호 414에서, 비디오에 대한 3D 포맷 타입이 (추출 컴포넌트(208)에 의해) 불명확한 것으로 설정되는지에 대해 결정된다. 414에서의 결정이 참 또는 3D 포맷 타입이 불명확한 것으로 설정되는 것을 나타내는 "예(YES)"라면, 그때 방법은 종료한다. 414에서의 결정이 거짓 또는 3D 포맷 타입이 불명확한 것으로 설정되지 않 것을 나타내는 "아니오(YES)"라면, 그때 방법은 참조 번호 416으로 진행한다. 참조 번호(416)에서, 2D 프레임들은 (추출 컴포넌트(208)에 의해) 참조 번호(412)에서 결정되는 3D 포맷 타입에 따라 3D 비디오로부터 추출된다. 참조 번호 418에서, 추출되는 2D 프레임들은 (예를 들어, 수집 컴포넌트(210)에 의해) 3D 비디오의 2D 비디오를 생성하고 저장하기 위해 사용될 수 있다.
도 4b는, 요청되는 비디오의 수신자로 의도된 디바이스와 관련하여 디스플레이 디바이스 타입에 따라 3D 또는 2D 비디오를 제공하는 예시적인 방법(400b)을 도시한다. 참조 번호 420에서, 디바이스에 제공하는 비디오에 대한 요청이 (예를 들어, 비디오 서비스 컴포넌트(206)에 의해) 결정된다. 참조 번호 422에서, 디바이스와 관련된 디스플레이 디바이스 타입이 (예를 들어, 디바이스 인식 컴포넌트(232)에 의해) 결정된다. 참조 번호 424에서, 적합한 3D 또는 2D 비디오가 (예를 들어, 디바이스 인식 컴포넌트(232)에 의해) 참조 번호 422에서 결정되는 디바이스에 관련하여 디스플레이 디바이스 타입에 기초한 디바이스에 제공된다.
도 5는 3D 비디오를 2D 비디오로 변환하는 예시적인 방법(500)을 도시한다. 502에서, 3D 비디오가 (예를 들어, 비디오 서비스 컴포넌트(206)에 의해) 소스로부터 저장을 위해 수신된다. 일 실시예에서, 3D 비디오는 2D 비디오로 변환을 위해 자동적으로 처리된다. 504에서, 3D 비디오가 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 사이드-바이-사이드 3D 포맷 타입을 포함하는지를 결정한다. 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 포함하면, 506에서, 3D 비디오는 (예를 들어, 추출 컴포넌트(208) 및/또는 수집 컴포넌트(210)에 의해) 사이드-바이-사이드 3D 비디오에 대한 적합한 기법들을 적용함으로써 2D 비디오로 변환된다. 3D 포맷 타입이 불명확하거나 504에서 사이드-바이-사이드가 아닌 것으로 결정되면, 3D 비디오가 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 상부 및 하부 3D 포맷 타입을 포함하는 것으로 결정된다. 3D 비디오가 506에서 상부 및 하부 3D 포맷 타입을 포함하면, 3D 비디오는 (예를 들어, 추출 컴포넌트(208) 및/또는 수집 컴포넌트(210)에 의해) 상부 및 하부 3D 비디오에 대한 적합한 기법들을 적용함으로써 2D 비디오로 변환된다. 3D 포맷 타입이 불명확하거나 508에서 상부 및 하부가 아닌 것으로 결정되면, 3D 비디오가 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 대체 3D 포맷 타입을 포함하는 것으로 결정된다. 3D 비디오가 510에서 교대 3D 포맷 타입을 포함하면, 3D 비디오는 (예를 들어, 추출 컴포넌트(208) 및/또는 수집 컴포넌트(210)에 의해) 교대 3D 비디오에 대한 적합한 기법들을 적용함으로써 2D 비디오로 변환된다. 3D 포맷 타입이 불명확하거나 510에서 상부 및 하부가 아닌 것으로 결정되면, 512에서 3D 비디오는 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 2D 비디오로 변환될 수 없다.
도 6a 및 도 6b은, 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 포함하는지를 (예를 들어, 포맷 인식 컴포넌트(202)에 의해) 결정하는 예시적인 방법을 도시한다. 602에서, 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 포함하는지를 결정하기 위해 제1 테스트가 수행된다. 602에서 수행되는 테스팅의 예 그리고 일반적으로 방법 600 내의 608, 612 및 616에서 수행되는 테스팅의 예는, 3D 비디오의 3D 프레임을 이등분으로 분할하고, 3D 프레임들의 이등분이 매칭하거나 실질적인 유사성을 가지는지를 결정하기 위해 상기 이등분의 대응하는 컬러 히스토그램들을 비교하는 것을 포함한다. 상기 테스팅은, 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 가지고 따라서 3D 프레임이 2개의 수평한 이등분들 내에서 거의 동일한 이미지들을 포함하는 동일한 객체의 L 및 R 이미지들을 포함한다. 방법 600에서 수행되는 테스팅의 다른 예는 좌측 및 우측의 이등분과 관련하여 후속 3D 프레임들 내의 움직임 추정 데이터를 비교하는 것을 포함한다. 방법 600에서 수행되는 테스팅의 다른 예는 좌측 및 우측의 이등분들과 관련하여 후속 3D 프레임들 내의 전체 움직 컴포넌트 분석을 비교하고, 예를 들어, 전체 움직임이 각각의 이등분에 대해 변형되는지를 관측하는 것을 포함한다. 604의 일 구현에서, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제1 테스트가 나타내면, 그 후 제2 테스트는 608에서 수행된다. 다른 구현에서, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제1 테스트가 나타내면, 그 후 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 가진다고 결론지어질 수 있다. 하지만, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제1 테스트가 나타내지 않으면, 그 후, 606에서 3D 비디오는 사이드-바이-사이드 3D 포맷 타입을 가진다고 결론지어질 수 있다.
610의 일 구현에서, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제2 테스트가 또한 나타낸다고 결정되면, 그 후 제3 테스트는 612에서 수행된다. 다른 구현에서, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제2 테스트가 또한 나타내면, 그 후 3D 비디오는 사이드-바이-사이드 3D 포맷 타입을 가진다고 결론지어진다. 하지만, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘는다고 제2 테스트가 나타내지 않으면, 그 후, 606에서 3D 비디오는 사이드-바이-사이드 3D 포맷 타입을 가진다고 결론지어질 수 있다.
일 구현에서, 상기의 테스팅 프로세스는 612 및 614에서 3번 반복된다. 다른 구현에서, 상기의 테스팅 프로세스는 616 및 618에서 반복된다. 일 구현에서, 사이드-바이-사이드 3D 포맷 타입을 갖는 3D 비디오의 확률이 미리결정된 임계치를 넘어선다고 K 테스트들(여기서 K는 정수) 중 매 하나가 나타내면, 620에서, 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 포함한다고 결론지어질 수 있다. 그러한 경우에서, 3D 비디오의 2D 비디오의 추출은 사이드-바이-사이드 포맷 타입 3D 비디오에 대해 적합한 기법들을 사용함으로써 수행된다. 양상에 따라, 각 테스트는 3D 비디오의 많은 프레임들, 예를 들어, 백 프레임들 또는 천 프레임들 상에서 수행된다.
3D 비디오가 상부 및 하부 또는 교대하는 3D 포맷 타입을 포함하는지 결정하기 위해 방법(600)과 유사한 방법이 이용될 수 있는 것으로 인식된다. 하나의 실시예에서, 비디오가, 예를 들어, 비디오의 소스에 기초하여 사이드-바이-사이드 3D 포맷 타입을 가질 확률이 있기 때문에 3D 비디오가 사이드-바이-사이드 3D 포맷 타입을 가지는 지를 결정하기 위해 초기 테스팅은 수행된다. 다른 실시예에서, 비디오가, 예를 들어, 비디오의 소스에 기초하여 상부 및 하부 3D 포맷 타입을 가질 확률이 있기 때문에 3D 비디오가 상부 및 하부 3D 포맷 타입을 가지는 지를 결정하기 위해 초기 테스팅은 수행된다. 추가의 실시예에서, 비디오가, 예를 들어, 비디오의 소스에 기초하여 교대하는 3D 포맷 타입을 가질 확률이 있기 때문에 3D 비디오가 교대하는 3D 포맷 타입을 가지는 지를 결정하기 위해 초기 테스팅은 수행된다.
예시적인 네트워크형 및 분산형 환경들
본 명세서에서 서술되는 동적 컴포넌트의 여러 실시예들은, 컴퓨터 네트워크의 부분으로서 또는 분산형 컴퓨팅 환경에서 이용될 수 있고, 매체가 발견될 수 있는 임의의 종류의 데이터 저장소에 접속될 수 있는 임의의 컴퓨터 또는 다른 클라이언트 또는 서버 디바이스에 접속되어 구현될 수 있다. 이와 관련하여, 본 명세서에서 서술되는 여러 실시예들은 임의의 컴퓨터 시스템 또는 임의의 수의 메모리 또는 저장 유닛들을 갖는 환경에서, 그리고 임의의 수의 저장 유닛들에 걸쳐 발생하는 임의의 수의 애플리케이션들 및 프로세스들에서 실시될 수 있다. 이러한 것은 원거리 또는 근거리 저장 장치를 갖는 네트워크 환경 또는 분산된 컴퓨터 환경에서 이용되는 클라이언트 컴퓨터들 및 서버 컴퓨터들을 구비한 환경을 포함하지만, 이에 비제한적인다.
분산형 컴퓨팅은 컴퓨팅 디바이스들 및 시스템들 사이에서의 통신 교환에 의해 컴퓨터 리소스들 및 서비스들의 공유를 제공한다. 이러한 리소스들 및 서비스들은 정보의 교환, 캐시 저장 및 파일들과 같은 객체들에 대한 디스크 저장을 포함한다. 이러한 리소스들 및 서비스들은 또한 부하 분산, 리소스들의 확장, 처리의 특화 등을 위해 다수의 처리 유닛들에 걸쳐 처리 전력의 공유를 제공한다. 분산형 컴퓨팅은, 클라이언트들로 하여금 전체 기업에 이익을 주도록 그들의 모아진 힘을 나누게 하여 네트워크 접속의 이점을 가진다. 이와 관련하여, 다양한 장치들은 대상 개시물의 여러 실시예들에 대해 서술된 것처럼 매끄러운 스트리밍 매커니즘들에 참여할 수 있는 애플리케이션, 객체들 또는 리소스들을 가질 수 있다.
도 7은 예시적인 네트워크형 또는 분산형 컴퓨팅 환경의 개략도를 도시한다. 분산형 컴퓨팅 환경은 컴퓨팅 객체들(710, 712) 등,및 프로그램들, 방법들, 데이터 저장들, 프로그램가능 로직 등을 포함할 수 있고 애플리케이션들(730, 732, 734, 736, 738)에 의해 나타내어지는 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등을 포함한다. 컴퓨팅 객체들(710, 712) 등 및 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등은 PDA들, 오디오/비디오 디바이스들, 모바일 폰들, MP3 플레이어들, 개인용 컴퓨터들, 랩톱들 등과 같이 상이한 디바이스들을 포함할 수 있다.
각각의 컴퓨팅 객체(710, 712) 등 및 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728)은 직접 또는 간접적으로 통신 네트워크(740)에 의해 하나 이상의 다른 컴퓨팅 객체들(710, 712) 및 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728)과 통신할 수 있다. 도 7에서 단일 요소로 도시되어 지고 있지만, 네트워크(740)는 다른 컴퓨팅 객체들 및 도 7의 시스템에 서비스들을 제공하는 컴퓨팅 디바이스들을 포함할 수 있고, 및/또는 도시되지는 않지만, 다수의 상호접속된 네트워크들을 나타낼 수 있다. 각각의 컴퓨팅 객체(710, 712) 등 또는 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728)은, 대상 개시물의 여러 실시예들에 따라 제공된 매끄러운 스트리밍과 통신하거나 매끄러운 스트리밍을 구현하기에 적합한 API 또는 다른 객체, 소프트웨어, 펌웨어 및/또는 하드웨어의 사용을 가능하게 하는 애플리케이션들(730, 732, 734, 736, 738)과 같은 애플리케이션을 포함할 수 있다.
분산형 컴퓨팅 환경들을 지원하는 다양한 시스템들, 컴포넌트들 및 네트워크 구성들이 존재한다. 예를 들어, 컴퓨팅 디바이스들은 로컬 네트워크들 또는 광역 분산형 네트워크들에 의해 유선 또는 무선 시스템들에 의해 함께 접속될 수 있다. 임의의 네트워크 구조는 여러 실시예들에서 서술되는 동적 구성 시스템들에 따라 행해지는 예시적인 통신들에 대해 사용될 수 있지만, 현재, 많은 네트워크들은 광역 분산형 컴퓨팅을 위한 구조를 제공하고 많은 다른 네트워크들을 포함하는 인터넷에 연결된다.
따라서, 네트워크 위상들의 호스트 및 클라이언트/서버, 피어-투-피어, 또는 하이브리드 아키텍쳐들과 같은 네트워크 구조들이 사용될 수 있다. "클라이언트(client)"는 관련 없는 다른 클래스 또는 그룹의 서비스들을 사용하는 클래스 또는 그룹의 구성원이다. 클라이언트는 다른 프로그램 또는 프로세스에 의해 제공되는 서비스를 요청하는 프로세스, 예를 들어, 개략적인 명령들 또는 테스크들의 세트일 수 있다.
클라이언트/서버 아키텍처, 특히 네트워크형 시스템에서, 클라이언트는 일반적으로, 다른 컴퓨터, 예를 들어, 서버에 의해 제공되는 공유된 네트워크 리소스들에 액세스하는 컴퓨터일 수 있다. 비제한적인 예로서, 도 7의 설명에서, 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등은 클라이언트들로서 고려될 수 있고, 임의의 컴퓨터가 환경들에 따라 클라이언트, 서버 또는 둘 모두로 고려될 수 있지만, 컴퓨팅 객체들(710, 712) 등은, 클라이언트 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등으로부터 데이터를 수신하는 것, 데이터를 저장하는 것, 데이터를 처리하는 것, 데이터를 클라이언트 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728)에 전송하는 것과 같이, 컴퓨팅 객체들(710, 712) 등이 데이터 서비스들을 제공하는 서버들로서 고려될 수 있다. 임의의 이러한 컴퓨팅 디바이스들은 데이터를 처리할 수도 있고, 하나 이상의 실시예들에 대해 본 명에서 서술되는 동적인 구성 시스템들에 대한 기법들을 시사할 수 있는 트랜잭션 서비스들 또는 태스크들을 요청하는 중일 수 있다.
서버는 통상적으로 인터넷 또는 무선 네트워크 구조들과 같은 원격 또는 로컬 네트워크를 통해 접급가능한 원격 컴퓨터 시스템이다. 클라이언트 프로세스는 제1 컴퓨터 프로세스에서 활성화되고, 서버 프로세스는, 통신 매체를 통해 서로 통신하고 분산 기능을 제공하며, 다수의 클라이언트들이 서버의 정보 수집 기능들의 이점을 가지도록 하는 제2 컴퓨터 시스템에서 활성화될 수 있다. 판독 집합 타당성 검증 또는 팬덤 검사를 수행하는 기술들에 따라 사용되는 임의의 소프트웨어 객체들은 홀로 제공될 수 있거나 다수의 컴퓨팅 디바이스들 또는 객체들에 걸쳐 분산될 수 있다.
통신 네트워크/버스(740)가 인터넷인 네트워크 환경에서, 예를 들어, 컴퓨팅 객체들(710, 712) 등은, 클라이언트 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등이 HTTP(hypertext transfer protocol)과 같은 임의의 수의 알려진 프로토콜들을 통해 통신하는 웹 서버들이 될 수 있다. 객체들(710, 712) 등은 또한 분산형 컴퓨팅 환경의 특성을 가질 수 있는 클라이언트 컴퓨팅 객체들 또는 디바이스들(720, 722, 724, 726, 728) 등으로 동작할 수 있다.
예시적인 컴퓨팅 디바이스
언급된 것처럼, 유리하게, 본 명세서에 서술된 기법들은 동적 구성을 수행하는데 적합한 임의의 디바이스 들에 적용될 수 있다. 따라서, 핸드헬드, 휴대용 및 다른 컴퓨팅 디바이스들 및 모든 종류의 컴퓨팅 객체들은 여러 실시예들, 즉, 디바이스가 데이터 저장소로부터 또는 데이터 저장소에 트랜잭션들을 판독 또는 기입하기 원할 수 있는 모든 곳과 관련하여 사용하는 것으로 고려된다. 따라서, 도 8에서 아래에서 서술되는 범용 원격 컴퓨터는 단지 컴퓨팅 디바이스의 하나의 예이다. 부가적으로, 데이터베이스 서버는 동적 구성 기법들을 위한 매체 서버 또는 소비 디바이스와 같은 아래의 범용 컴퓨터, 또는 다른 매체 관리 서버 구성들의 하나 이상의 양상들을 포함할 수 있다.
요구되지는 않았지만, 실시예들은 부분적으로 디바이스 또는 객체에 대한 서비스들의 개발자에 의한 사용을 위해 운영 시스템을 통해 구현될 수 있거나 및/또는 본 명세서에 서술된 여러 실시예들의 하나 이상의 기능적인 양상들을 수행하기 위해 동작하는 애플리케이션 내에 포함될 수 있다. 소프트웨어는 클라이언트 워크스테이션들, 서버들 또는 다른 디바이스들과 같은 하나 이상의 컴퓨터들에 의해 실행되고 있는 프로그램 모듈들처럼 컴퓨터 실행가능한 명령들의 일반적인 콘텍스트로 서술될 수 있다. 데이터를 통신하기 위해 사용될 수 있는 다양한 구성들 및 프로토콜들을 컴퓨터 시스템들이 갖고, 따라서, 어떤 특별한 구성 또는 프로토콜도 비제한적인 것을 당업자는 인식할 것이다.
따라서, 본 명세서에서 서술된 실시예들의 하나 이상의 양상들이 구현될 수 있는 적합한 컴퓨팅 시스템 환경(800)을 도 8이 도시하고 있고, 위에서 명확하게 하였지만, 컴퓨팅 시스템 환경(800)은 단지 적합한 컴퓨팅 환경의 예이고 기능의 사용 범위로서 어떤 제한도 하지 않도록 의도된다. 컴퓨팅 환경(800)은 예시적인 동작 환경(800)에서 도시된 임의의 컴포넌트 또는 컴포넌트들의 조합에 관하여 어떤 종속 또는 요건도 가지지 않는 것으로 해석된다.
도 8을 참조하여, 하나 이상의 실시예들을 구현하는 예시적인 원격 디바이스는 컴퓨터(810)의 형태에서 범용 컴퓨팅 디바이스를 포함한다. 컴퓨터(810)의 컴포넌트들은 프로세싱 유닛(820), 시스템 메모리(830), 및 시스템 메모리를 포함하는 여러 시스템 컴포넌트들을 처리 유닛(820)에 결합하는 시스템 버스(822)를 포함할 수 있다.
컴퓨터(810)는 통상적으로 다양한 컴퓨터 판독가능 매체를 포함하고, 컴퓨터(810)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있다. 시스템 메모리(830)는 판독 전용 메모리(ROM) 및/또는 랜덤 액세스 메모리(RAM)과 같은 휘발성 및/또는 비휘발성 메모리의 형태의 컴퓨터 저장 매체를 포함할 수 있다. 예로서, 메모리(830)는 또한 운영 시스템, 애플리케이션 프로그램들, 다른 프로그램 모듈들, 및 프로그램 데이터를 포함할 수 있다.
사용자는 입력 디바이스들(840)을 통해 컴퓨터(810)에 명령들 및 정보를 입력한다. 모니터 또는 다른 타입의 디스플레이 디바이스는 또한 출력 인터페이스(850)과 같은 인터페이스를 통해 시스템 버스(822)에 접속된다. 모니터에 추가하여, 컴퓨터들은 또한 출력 인터페이스(850)를 통해 접속될 수 있는 스피커들 및 프린터들과 같은 다른 주변 출력 디바이스들을 포함할 수 있다.
컴퓨터(810)는 원격 컴퓨터(870)과 같은 하나 이상의 다른 원격 컴퓨터들에 논리 접속들을 사용하는 네트워크형 또는 분산형 환경에서 동작할 수 있다. 원격 컴퓨터(870)는 개인용 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 디바이스(peer device) 또는 다른 공통 네트워크 노드, 또는 임의의 다른 원격 매체 소비 또는 전송 디바이스가 될 수 있고, 컴퓨터(810)와 관련하여 상기에서 서술된 임의의 또는 모든 요소들을 포함할 수 있다. 도 8에서 도시된 논리 접속들은 LAN(local area node) 또는 WAN(wide area network)과 같은 네트워크(872)를 포함하지만, 다른 네트워크/버스들을 포함할 수 있다. 그와 같은 네트워크 환경들은 가정들, 사무실들, 전사적 컴퓨터 네트워크들, 인트라넷들 및 인터넷에서 흔하다.
상기에서 언급한 것처럼, 예시적인 실시예들은 여러 컴퓨팅 디비아스들 및 네트워크 아키텍처들과 관련하여 서술되는 반면에, 아래의 개념들은 유연한 방법으로 매체를 공표하거나 소비하는 것이 바람직한 임의의 네트워크 시스템 및 임의의 컴퓨팅 디바이스 또는 시스템에 적용될 수 있다.
또한, 애플리케이션들 및 서비스들이 동적인 구성 기법들의 이점들을 갖도록 동일한 또는 유사한 기능들, 예를 들어, 적합한 API, 툴 킷, 드라이버 코드, 운영 시스템, 제어, 자립형 또는 다운로드가능한 소프트웨어 객체를 구현하기 위한 다양한 방법들이 존재한다. 따라서, 본 명세서의 실시예들은, 본 명세서의 서술된 매끄러운 스트리밍의 하나 이상의 양상들을 구현하는 소프트웨어 또는 하드웨어 객체로부터 뿐만 아니라 API(또는 다른 소프트웨어 객체)의 관점으로부터 고려된다. 따라서, 본 명세서에서 서술된 여러 실시예들은 전적으로 하드웨어, 부분적으로 하드웨어 및 부분적으로 소프트웨어, 그리고 소프트웨어에서의 여러 양상들을 가질 수 있다.
컴퓨팅 디바이스들은 통상적으로 컴퓨터-판독가능 저장 매체 및/또는 통신 매체를 포함할 수 있는 다양한 매체를 포함하고, 이들 두 용어들은 아래에서처럼 본 명세서에서 서로 상이하게 사용된다. 컴퓨터-판독가능 저장 매체는 컴퓨터에 의해 액세스가능한 임의의 이용가능한 저장 매체일 수 있고, 통상적으로 비일시적인 특성을 가지고, 휘발성 및 비휘발성 매체, 착탈가능 및 착탈가능하지 않은 매체를 모두 포함할 수 있다. 예로서, 컴퓨터 판독가능한 저장 매체는 컴퓨터-판독가능 명령들, 프로그램 모듈들, 구조화된 데이터 또는 구조화되지 않은 데이터와 같은 임의의 정보의 저장 방법 또는 기술과 관련하여 구현될 수 있다. 컴퓨터-판독가능한 매체는 RAM, ROM, EEPROM, 플래쉬 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disk), 또는 다른 광학적 디스크 저장장치, 마크네틱 카세트들, 마그네틱 테이프들, 마그네틱 디스크 저장장치 또는 다른 마그네틱 저장장치, 또는 요구된 정보를 저장하기 위해 사용될 수 있는 다른 유형의 및/또는 비일시적인 매체를 포함할 수 있지만, 이에 한정되지 않는다. 컴퓨터 판독가능한 저장 매체는, 예를 들어, 매체에 의해 저장되는 정보에 관련하여 다양한 동작들에 대해 액세스 요청들, 질의들 또는 다른 데이터 검색 프로토콜들을 통해 하나 이상의 국부적인 또는 원격 컴퓨팅 장치에 의해 액세스될 수 있다.
반면에, 통신 매체는 통상적으로 컴퓨터 판독가능한 명령들, 데이터 구조들, 프로그램 모듈들 또는 변조된 데이터 신호들, 예를 들어, 반송파 또는 다른 전송 매커니즘과 같은 데이터 신호 내의 다른 구조화된 또는 구조화되지 않은 데이터를 실시하고 임의의 정보 전달 또는 전송 매체를 포함한다. 용어 "변조된 데이터 신호" 또는 신호들은 하나 이상의 신호들 내의 정보를 인코딩하는 그와 같은 방식으로 설정되거나 변경된 하나 이상의 특성들을 갖는 신호를 언급할 수 있다. 예로서, 통신 매체는 유선 네트워크 또는 직접적인 유선 접속과 같은 유선 매체, 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함함다.
언급한 것처럼, 본 명세서에서 서술된 여러 기법들은 하드웨어 또는 소프트웨어, 또는 적합한 곳에서는 다른 조합에 관련하여 구현될 수 있다. 본 명세서에서 서술된 것처럼, 용어 "컴포넌트", "시스템" 등은 하드웨어, 하드웨어 및 소프트웨어의 조합, 또는 소프트웨어 중 하나인 컴퓨터관련 엔티티를 언급하는 것과 같다. 예를 들어, 컴포넌트는 프로세서상에서 구동하는 프로세스, 프로세서, 객체, 실행, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만, 이에 비제한적인다. 실례로서, 컴퓨터상에서 구동하는 애플리케이션 및 애플리케이션 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트들은 프로세스 내에 존재할 수 있고 및/또는 실행 스레드 및 컴포넌트는 하나의 컴퓨터상에 국한될 수 있고 및/또는 2개 이상의 컴퓨터들 사이에서 분산될 수 있다.
앞서 언급한 시스템들은 여러 컴포넌트들 사이의 상호작용과 관련하여 서술되고 있다. 그와 같은 시스템들 및 컴포넌트들은 그러한 컴포넌트들 또는 특정된 서브-컴포넌트들, 특정된 컴포넌트들 또는 서브-컴포넌트들의 일부 및/또는 추가의 컴포넌트들, 및 앞의 것들의 여러 치환들 및 조합들을 포함할 수 있는 것으로 이해될 수 있다. 서브-컴포넌트들은 또한 부 컴포넌트(계층적)들 내에 포함되는 것보다는 다른 컴포넌트들과 통신적으로 결합되는 컴포넌트들로서 구현될 수 있다. 부가적으로, 하나 이상의 컴포넌트들은 집합적인 기능을 제공하는 단일 컴포넌트로 결합되거나 여러 분리된 서브-컴포넌트들로 분할되는 수 있고, 관리층과 같은 임의의 하나 이상의 중간 층들은 통합된 기능을 제공하기 위해 그와 같은 서브-컴포넌트가 통신적으로 결합하기 위해 제공될 수 있음을 알 수 있다. 본 명세서에서 서술된 임의의 컴포넌트들은 또한 본 명세서에서 구체적으로 기술되지는 않았지만 당업자에 의해 일반적으로 알려진 하나 이상의 다른 컴포넌트들과 상호작용할 수 있다.
앞선 언급된 예시적인 시스템들의 관점에서, 서술된 대상에 따라 구현될 수 있는 방법론들은 여러 도면들의 흐름도들을 참조하여 더 양호하게 인식될 것이다. 설명의 간략화를 위해, 방법론들이 일련의 블록들로 도시되고 서술되는 반면, 청구된 대상은 블록들의 순서에 의해 제한되지 않고, 일부 블록들은 다른 순서들 및/또는 본 명세서에서 도시되고 서술된 다른 블록들과 동시에 발생할 수 있는 것으로 이해될 것이다. 비순차적이거나 분기된 흐름이 흐름도에 의해 도시되어지더라도 여러 다른 분기들, 흐름 경로들 및 블록들의 순서들은 동일하거나 유사한 결과들을 얻기 위해 구현될 수 있다. 더욱이, 이후에서 서술되는 방법론들을 구현하기 위해 모든 도시된 블록들이 요구되지는 않을 수 있다.
본 명세서에서 서술된 실시예들에 부가하여, 다른 유사한 실시예들이 사용될 수 있거나 변형들 및 부가들이 본 발명을 벗어나지 않은 채 대응하는 실시예(들)의 동일하거나 동등한 기능을 수행하는 서술된 실시예(들)로 행해질 수 있음이 이해된다. 또한, 다수의 처리 칩들 또는 다수의 장치들은 본 명세서에 서술된 하나 이상의 기능들의 수행을 공유할 수 있고, 유사하게, 저장 장치는 복수의 디바이스들에 걸쳐 영향을 받을 수 있다. 본 발명은 임의의 단일 실시예로 한정되지 않고, 오히려 첨부된 청구범위들에 따른 폭, 정신 및 범위로 해석될 수 있다.
"하나의 양상", "양상" 등에 대한 본 명세서 전반에 걸친 참조는, 그런 양상에 관련하여 서술되는 특별한 특징, 구조 및 특성이 적어도 하나의 양상에 포함되는 것을 의미한다. 따라서, 본 명세서 전반에 걸친 여러 곳 들에서 어구 "하나의 양상", "한 양상" 등의 표현은 반드시 동일한 양상 모두를 언급할 필요가 없다. 더욱이, 특별한 특징들, 구조들, 또는 특성들은 하나 이상의 양상들에 대해 임의의 적합한 방식으로 결합될 수 있다.
본 출원에서 사용되는 것으로, 용어 "컴포넌트", "시스템" 등은 일반적으로 하드웨어(예를 들어, 회로), 하드웨어 및 소프트웨어의 조합, 소프트웨어, 실행중이 소프트웨어 중 하나인 컴퓨터관련 엔티티 또는 하나 이상의 구체적인 기능들을 갖는 동작적인 기계와 관련된 엔티티를 언급하도록 의도된다. 예를 들어, 컴포넌트는 프로세서상에서 구동하는 프로세스, 프로세서, 객체, 실행, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만, 이에 비제한적인다. 실례로서, 컴퓨터상에서 구동하는 애플리케이션 및 애플리케이션 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트들은 프로세스 내에 존재할 수 있고 및/또는 실행 스레드 및 컴포넌트는 하나의 컴퓨터상에 국한될 수 있고 및/또는 2개 이상의 컴퓨터들 사이에서 분산될 수 있다.
더욱이, 단어 "예시" 또는 "예시적인"은 예, 사례, 또는 실례로서의 역할을 한다. 본 명세서에서 서술된 양상 또는 설계는 반드시 다른 양상들 또는 설계들에 대해 바람직하거나 유리한 것으로 이해되지 않는다. 오히려, 단어 "예시" 또는 "예시적인"은 구체적인 방식으로 개념들을 나타내도록 의도된다. 본 출원에서 사용되는 것으로, 용어 "또는"는 배타적인 "또는"이 아닌 포괄적인 "또는"을 의미하도록 의도된다. 즉, 다르게 특정되지 않거나 콘텍스트로부터 명확하지 않으면, "X는 A 또는 B를 이용한다"는 임의의 포괄적인 치환들을 의미하도록 의도된다. 즉, X가 A를 이용하고; X가 B를 이용하고; 또는 X가 A 및 B를 모두 이용하면, 그때 "X는 A 또는 B를 이용한다"는 임의의 이전 사례하에서 만족된다. 부가하여, 본 출원 및 첨부된 청구범위에서 사용되는 용어 "하나"는, 일반적으로, 다르게 특정되지 않거나 콘텍스트로부터 단일 형태에 관한 것으로 명확하지 않으면, "하나 이상"을 의미하는 것으로 해석되어야 한다. 또한, 단어 "결합된"은 직접적 또는 간접적인 전기 또는 기계 결합을 의미하도록 본 명세서에서 사용된다.
본 명세서에서 서술되는 시스템들 및 프로세스들은 단일 집적 회로(IC) 칩, 다중 IC들, ASIC(application specific integrated circuit) 등과 같은 하드웨어 내에서 실시될 수 있다. 일부 또는 모든 프로세스 블록들이 각 프로세스에서 나타나는 순서는 제한하는 것으로 여겨지지 않아야한다. 오히려, 일부 프로세스 블록들은 본 명세서에서 설명되지 않는 다양한 순서들로 실행될 수 있는 것으로 이해되어야 한다.
상기에서 서술된 예시적인 시스템들의 관점에서, 서술된 대상에 따라에 구현될 수 있는 방법론들은 또한 여러 도면들의 흐름도들을 참조하여 이해될 수 있다. 설명의 간략함을 위해, 방법론들이 일련의 블록들로서 도시되고 서술되는 반면에, 일부 블록들이 본 명세서에서 도시되고 서술되는 다른 블록들과 다른 순서들 및/또는 동시에 발생할 수 있는 것처럼, 여러 실시예들은 블록들의 순서에 의해 제한되지 않은 것으로 이해 및 인식된다. 비순차적이거나 분기된 흐름이 흐름도에 의해 도시되어지더라도 여러 다른 분기들, 흐름 경로들 및 블록들의 순서들은 동일하거나 유사한 결과들을 얻기 위해 구현될 수 있다. 더욱이, 이후에서 서술되는 방법론들을 구현하기 위해 모든 도시된 블록들이 요구되지는 않을 수 있다.
위에서 서술되는 것은 개시된 양상들의 실시예들을 포함한다. 물론, 청구된 대상을 서술할 목적으로 매 수용가능한 컴포넌트들 또는 방법들의 조합을 기술하는 것은 가능하지 않다. 따라서, 청구된 대상은 첨부된 청구 범위의 정신 및 범위 내에 존재하는 모든 그와 같은 변경들, 수정들 및 변화들을 포함하도록 의도된다. 더욱이, 요약에서 서술되는 것을 포함하는 대상 개시물의 예시된 양상들의 상기 서술은 개시된 정확한 형태들에 대한 개시된 양상들을 한정하거나 제한하도록 의도되지 않는다. 특정 양상들 및 예시들이 예시의 목적으로 본 명세서에서 서술되는 반면에, 당업자가 인식할 수 있는 것과 같은 그와 같은 양상들 및 예시들의 범위 내에서 고려되는 여러 변형들이 가능하다.
특히, 상기에서 서술되는 컴포넌트들, 디바이스들, 회로들, 시스템들 등에 의해 수행되는 여러 기능들에 관련하여, 그와 같은 컴포넌트들을 서술하기 위해 사용되는 용어들은, 다르게 표시되지 않으면, 개시된 구조와 구조적으로 동일하지 않더라도, 청구된 대상의 예시적인 양상들을 나타내는 본 명세서의 기능을 수행하는 서술된 컴포넌트(예를 들어, 기능적인 균등물)의 특정 기능을 수행하는 임의의 컴포넌트에 대응하도록 의도된다. 이와 관련하여, 상기의 혁신은 청구된 대상의 여러 방법들의 일부 행위들 및/또는 사건들을 수행하기 위한 컴퓨터 실행가능한 명령들을 갖는 컴퓨터-판독가능한 저장매체와 함께 시스템을 포함하는 것으로 인식될 것이다.
앞서 언급된 시스템들, 회로들, 모듈들 등은 여러 컴포넌트들 및/또는 블록들 사이의 상호작용에 관련하여 서술된다. 그와 같은 시스템들, 회로들, 컴포넌트들, 블록들 등은 그러한 컴포넌트들 또는 특정된 서브-컴포넌트들, 특정된 컴포넌트들 또는 서브-컴포넌트들의 일부 및/또는 추가의 컴포넌트들, 및 앞의 것들의 여러 치환들 및 조합들을 포함할 수 있는 것으로 이해될 수 있다. 서브-컴포넌트들은 또한 부 컴포넌트(계층적)들 내에 포함되는 것보다는 다른 컴포넌트들과 통신적으로 결합되는 컴포넌트들로서 구현될 수 있다. 하나 이상의 컴포넌트들은 집합적인 기능을 제공하는 단일 컴포넌트로 결합되거나 여러 분리된 서브-컴포넌트들로 분할되는 수 있고, 관리층과 같은 임의의 하나 이상의 중간 층들은 통합된 기능을 제공하기 위해 그와 같은 서브-컴포넌트가 통신적으로 결합하기 위해 제공될 수 있다. 본 명세서에서 서술된 임의의 컴포넌트들은 또한 본 명세서에서 구체적으로 기술되지는 않았지만 당업자에 의해 일반적으로 알려진 하나 이상의 다른 컴포넌트들과 상호작용할 수 있다.
본 발명의 넓은 범위를 설정하는 숫자적인 범위들 및 파라미터들은 대략적인 것임에도 불구하고, 특정 예시들에서의 숫자적인 값들은 가능한 정확하게 기록된다. 하지만, 임의의 수는, 각각의 테스트 측정들에서 발견되는 표준 편차로부터 반드시 발생하는 어떤 에러들을 반드시 포함한다. 더욱이, 본 명세서에서 개시되는 모든 범위들은 본 명세서에서 포함되는 임의의 및 모든 하위 범위들을 포괄하도록 이해된다. 예를 들어, "10보다 작은"의 범위는 최소값 0 및 최대값 10 사이(최소값 0 및 최대값 10을 포함하는) 임의의 및 모든 하위 범위들, 즉, 0 이상의 최소값 및 10 이하의 최대값, 예를 들어, 1 내지 5를 갖는 임의의 및 모든 하위 범위들을 포함할 수 있다. 일정 경우들에서, 파라미터에 대해 언급된 숫자 값들은 음의 값들을 가질 수 있다. 이 경우에서, "10보다 작은"과 같이 언급된 숫자 값들은 음의 값, 예를 들어, -1, -2, -3, -10, -20, -30 등을 추정할 수 있다.
부가하여, 개시된 양상들의 특정 특징은 여러 실시예들 중 하나에만 관련하여 개시될 수 있는 반면, 그와 같은 특징은 임의의 주어진 또는 특정 애플리케이션에 대해 요구되고 유리할 수 있는 것처럼 다른 구현들의 하나 이상의 다른 특징들과 결합될 수 있다. 더욱이, 용어들 "포함하다", "포함하는", "갖다", "구비하다"등 및 상세한 설명 또는 청구범위 중 하나에서 사용되는 다른 유사한 단어들의 범위까지, 이러한 용어들은 임의의 추가적이거나 다른 요소들을 배제하지 않고 개방된 변형 단어로서 용어 "포함하는"과 유사한 방식으로 포괄되도록 의도된다.

Claims (21)

  1. 디바이스에 있어서,
    컴퓨터 실행가능한 컴포넌트들을 저장하는 메모리와; 그리고
    상기 메모리에 저장되는 컴퓨터 실행가능한 컴포넌트들을 실행하는 마이크로프로세서를 포함하고, 상기 컴퓨터 실행가능한 컴포넌트들은,
    3D 비디오의 3D 포맷 타입을 식별하는 포맷 인식 컴포넌트와;
    상기 식별된 3D 포맷 타입에 기초하여 상기 3D 비디오로부터 3D 비디오 프레임들에 대응하는 2D 비디오 프레임들을 추출하는 추출 컴포넌트와;
    상기 추출된 2D ㅂ디오 프레임들로부터 2D 비디오를 생성하는 수집 컴포넌트와;
    디바이스와 관련된 디스플레이 디바이스 타입을 식별하며, 상기 식별된 디스플레이 타입에 따라 상기 2D 비디오 또는 상기 3D 비디오 중 하나를 상기 디바이스에 전달하는 디바이스 인식 컴포넌트를 포함하는 것을 특징으로 하는, 디바이스.
  2. 제 1 항에 있어서,
    상기 포맷 인식 컴포넌트는, 상기 3D 포맷 타입이 사이드-바이-사이드 포맷(side-by-side format), 상부 및 하부 포맷(top and bottom format), 또는 교대 포맷(alternating format) 중 적어도 하나인지를 식별하는 것을 특징으로 하는, 디바이스.
  3. 제 2 항에 있어서,
    상기 3D 포맷 타입이 상기 사이드-바이-사이드 포맷인 것으로 식별하는 것에 응답하여, 상기 추출 컴포넌트는 상기 3D 비디오의 3D 비디오 프레임들의 좌측 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 우측 부분으로부터 상기 2D 비디오 프레임들을 추출하는 것을 특징으로 하는, 디바이스.
  4. 제 2 항에 있어서,
    상기 3D 포맷 타입이 상기 상부 및 하부 포맷인 것으로 식별하는 것에 응답하여, 상기 추출 컴포넌트는 상기 3D 비디오의 3D 비디오 프레임들의 상부 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 하부 부분으로부터 상기 2D 비디오 프레임들을 추출하는 것을 특징으로 하는, 디바이스.
  5. 제 2 항에 있어서,
    상기 3D 포맷 타입이 상기 교대 포맷인 것으로 식별하는 것에 응답하여, 상기 추출 컴포넌트는 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 홀수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하거나 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 짝수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하는 것을 특징으로 하는, 디바이스.
  6. 제 1 항에 있어서,
    상기 디바이스 인식 컴포넌트는 상기 3D 비디오에 관련된 비디오 요청에 기초하여 상기 디바이스와 관련된 상기 디스플레이 디바이스 타입을 결정하는 것을 특징으로 하는, 디바이스.
  7. 제 1 항에 있어서,
    상기 디바이스 인식 컴포넌트는 상기 3D 비디오에 관련된 비디오 요청에 포함되는 정보에 기초하여 상기 디바이스와 관련된 상기 디스플레이 디바이스 타입을 추론(infer)하는 것을 특징으로 하는, 디바이스.
  8. 제 1 항에 있어서,
    상기 디바이스 인식 컴포넌트는 상기 디바이스와 관련된 상기 디스플레이 디바이스 타입에 관한 정보에 대해 상기 디바이스에 질의하는 것을 특징으로 하는, 디바이스.
  9. 방법에 있어서,
    3D 비디오의 3D 포맷 타입을 식별하는 것과;
    상기 식별된 3D 포맷 타입에 기초하여 상기 3D 비디오로부터 3D 비디오 프레임들에 대응하는 2D 비디오 프레임들을 추출하는 것과;
    상기 추출된 2D 비디오 프레임들로부터 2D 비디오를 생성하는 것과;
    디바이스와 관련된 디스플레이 타입을 식별하는 것과; 그리고
    상기 식별된 디스플레이 디바이스 타입에 따라, 상기 2D 비디오 또는 상기 3D 비디오 중 하나를 상기 디바이스에 전달하는 것을 수행하도록 컴퓨터 판독가능한 매체에 저장되는 컴퓨터 실행가능한 명령들을 실행하기 위해 프로세서를 이용하는 단계를 포함하는 것을 특징으로 하는, 방법.
  10. 제 9 항에 있어서,
    상기 3D 포맷 타입이 사이드-바이-사이드 포맷, 상부 및 하부 포맷, 또는 교대 포맷 중 적어도 하나인지를 식별하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  11. 제 10 항에 있어서,
    상기 3D 포맷 타입이 상기 사이드-바이-사이드 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 3D 비디오 프레임들의 좌측 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 우측 부분으로부터 상기 2D 비디오 프레임들을 추출하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  12. 제 10 항에 있어서,
    상기 3D 포맷 타입이 상기 상부 및 하부 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 3D 비디오 프레임들의 상부 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 하부 부분으로부터 상기 2D 비디오 프레임들을 추출하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  13. 제 2 항에 있어서,
    상기 3D 포맷 타입이 상기 교대 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 홀수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하거나 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 짝수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  14. 제 9 항에 있어서,
    상기 3D 비디오에 관련된 비디오 요청에 기초하여 상기 디바이스와 관련된 상기 디스플레이 디바이스 타입을 결정하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  15. 제 9 항에 있어서,
    상기 3D 비디오에 관련된 비디오 요청에 포함되는 정보에 기초하여 상기 디바이스와 관련된 상기 디스플레이 디바이스 타입을 추론하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  16. 제 9 항에 있어서,
    상기 디바이스와 관련된 상기 디스플레이 디바이스 타입에 관한 정보에 대해 상기 디바이스에 질의하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  17. 실행에 응답하여, 적어도 하나의 디바이스로 하여금 다음 동작들을 수행하도록 하는 명령들이 저장된 비일시적 컴퓨터-판독가능한 매체로서,
    상기 동작들은:
    3D 비디오의 3D 포맷 타입을 식별하는 것과;
    상기 식별된 3D 포맷 타입에 기초하여 상기 3D 비디오로부터 3D 비디오 프레임들에 대응하는 2D 비디오 프레임들을 추출하는 것과;
    상기 추출된 2D 비디오 프레임들로부터 2D 비디오를 생성하는 것과;
    디바이스와 관련된 디스플레이 타입을 식별하는 것과; 그리고
    상기 식별된 디스플레이 디바이스 타입에 따라, 상기 2D 비디오 또는 상기 3D 비디오 중 하나를 상기 디바이스에 전달하는 것
    을 포함하는 것을 특징으로 하는, 비일시적 컴퓨터-판독가능한 매체.
  18. 제 17 항에 있어서,
    상기 동작들은 상기 3D 포맷 타입이 사이드-바이-사이드 포맷, 상부 및 하부 포맷, 또는 교대 포맷 중 적어도 하나인지를 식별하는 것을 더 포함하는 것을 특징으로 하는, 비일시적 컴퓨터-판독가능한 매체.
  19. 제 18 항에 있어서,
    상기 동작들은, 상기 3D 포맷 타입이 상기 사이드-바이-사이드 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 3D 비디오 프레임들의 좌측 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 우측 부분으로부터 상기 2D 비디오 프레임들을 추출하는 것을 더 포함하는 것을 특징으로 하는, 비일시적 컴퓨터-판독가능한 매체.
  20. 제 18 항에 있어서,
    상기 동작들은, 상기 3D 포맷 타입이 상기 상부 및 하부 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 3D 비디오 프레임들의 상부 부분으로부터 상기 2D 비디오 프레임들을 추출하거나 상기 3D 비디오의 3D 비디오 프레임들의 하부 부분으로부터 상기 2D 비디오 프레임들을 추출하는 것을 더 포함하는 것을 특징으로 하는, 비일시적 컴퓨터-판독가능한 매체.
  21. 제 18 항에 있어서,
    상기 동작들은, 상기 3D 포맷 타입이 상기 교대 포맷인 것으로 식별하는 것에 응답하여, 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 홀수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하거나 상기 3D 비디오의 연속되는 일련의 3D 비디오 프레임들 중 짝수 3D 비디오 프레임들을 상기 2D 비디오 프레임들로서 추출하는 것을 더 포함하는 것을 특징으로 하는, 비일시적 컴퓨터-판독가능한 매체.
KR1020147007088A 2011-08-17 2012-08-16 3d 비디오의 포맷 타입의 식별에 기초하여 3d 비디오를 2d 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2d 또는 3d 비디오 중 하나를 제공하는 장치 및 방법 KR20140050107A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161524667P 2011-08-17 2011-08-17
US61/524,667 2011-08-17
US13/450,413 US20130044192A1 (en) 2011-08-17 2012-04-18 Converting 3d video into 2d video based on identification of format type of 3d video and providing either 2d or 3d video based on identification of display device type
US13/450,413 2012-04-18
PCT/US2012/051232 WO2013025949A2 (en) 2011-08-17 2012-08-16 Converting 3d video into 2d video based on identification of format type of 3d video and providing either 2d or 3d video based on identification of display device type

Publications (1)

Publication Number Publication Date
KR20140050107A true KR20140050107A (ko) 2014-04-28

Family

ID=47712373

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147007088A KR20140050107A (ko) 2011-08-17 2012-08-16 3d 비디오의 포맷 타입의 식별에 기초하여 3d 비디오를 2d 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2d 또는 3d 비디오 중 하나를 제공하는 장치 및 방법

Country Status (5)

Country Link
US (1) US20130044192A1 (ko)
EP (1) EP2745508A4 (ko)
KR (1) KR20140050107A (ko)
CN (1) CN103875242A (ko)
WO (1) WO2013025949A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170054146A (ko) 2015-11-09 2017-05-17 에스케이텔레콤 주식회사 증강 현실 제공 방법

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011072016A1 (en) * 2009-12-08 2011-06-16 Broadcom Corporation Method and system for handling multiple 3-d video formats
US9491432B2 (en) * 2010-01-27 2016-11-08 Mediatek Inc. Video processing apparatus for generating video output satisfying display capability of display device according to video input and related method thereof
US9407904B2 (en) 2013-05-01 2016-08-02 Legend3D, Inc. Method for creating 3D virtual reality from 2D images
EP2742693A4 (en) * 2011-08-12 2015-04-08 Motorola Mobility Inc METHOD AND DEVICE FOR CODING AND TRANSMITTING 3D VIDEO SEQUENCES IN A WIRELESS COMMUNICATION SYSTEM
JP5817639B2 (ja) * 2012-05-15 2015-11-18 ソニー株式会社 映像フォーマット判別装置及び映像フォーマット判別方法、並びに映像表示装置
CN102740158B (zh) * 2012-07-04 2013-06-19 合一网络技术(北京)有限公司 一种供用户上传3d视频到视频网站的系统和方法
US9547937B2 (en) 2012-11-30 2017-01-17 Legend3D, Inc. Three-dimensional annotation system and method
CN103905625A (zh) * 2012-12-28 2014-07-02 腾讯科技(深圳)有限公司 一种于移动终端间发送电子名片的方法及装置
US9438878B2 (en) 2013-05-01 2016-09-06 Legend3D, Inc. Method of converting 2D video to 3D video using 3D object models
CN103702193A (zh) * 2013-12-23 2014-04-02 乐视致新电子科技(天津)有限公司 标识、识别智能电视类型的方法及装置
EP2963924B1 (en) * 2014-07-01 2017-05-24 Advanced Digital Broadcast S.A. A method and a system for determining a video frame type
CN105872515A (zh) * 2015-01-23 2016-08-17 上海乐相科技有限公司 一种视频播放控制方法及装置
KR102321364B1 (ko) * 2015-03-05 2021-11-03 삼성전자주식회사 3차원 배경 콘텐트를 합성하는 방법 및 디바이스
US9609307B1 (en) * 2015-09-17 2017-03-28 Legend3D, Inc. Method of converting 2D video to 3D video using machine learning
CN105323595B (zh) * 2015-10-28 2018-09-25 北京小鸟看看科技有限公司 基于网络的视频类型识别方法、客户端及服务器
CN105791799B (zh) * 2016-03-10 2018-04-10 新港海岸(北京)科技有限公司 一种电视机工作模式的转换方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254265B2 (en) * 2000-04-01 2007-08-07 Newsight Corporation Methods and systems for 2D/3D image conversion and optimization
KR100828358B1 (ko) * 2005-06-14 2008-05-08 삼성전자주식회사 영상 디스플레이 모드 전환 방법, 장치, 및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
CN101662677B (zh) * 2008-08-29 2011-08-10 华为终端有限公司 码流转换系统及方法、码流识别单元和方案确定单元
KR20100040563A (ko) * 2008-10-10 2010-04-20 삼성전자주식회사 방송 표시장치 및 그의 2차원 영상 표시 방법
US20100182404A1 (en) * 2008-12-05 2010-07-22 Panasonic Corporation Three dimensional video reproduction apparatus, three dimensional video reproduction system, three dimensional video reproduction method, and semiconductor device for three dimensional video reproduction
CN102292996B (zh) * 2009-01-20 2014-09-17 皇家飞利浦电子股份有限公司 3d图像数据的传输
CN102326395A (zh) * 2009-02-18 2012-01-18 皇家飞利浦电子股份有限公司 3d观看者元数据的传送
US20110032333A1 (en) * 2009-08-07 2011-02-10 Darren Neuman Method and system for 3d video format conversion with inverse telecine
WO2011072016A1 (en) * 2009-12-08 2011-06-16 Broadcom Corporation Method and system for handling multiple 3-d video formats
JP5450118B2 (ja) * 2010-01-14 2014-03-26 ソニー株式会社 映像伝送装置、映像表示装置、映像表示システム、映像伝送方法及びコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170054146A (ko) 2015-11-09 2017-05-17 에스케이텔레콤 주식회사 증강 현실 제공 방법

Also Published As

Publication number Publication date
EP2745508A4 (en) 2014-08-13
WO2013025949A3 (en) 2013-09-06
WO2013025949A2 (en) 2013-02-21
CN103875242A (zh) 2014-06-18
EP2745508A2 (en) 2014-06-25
US20130044192A1 (en) 2013-02-21

Similar Documents

Publication Publication Date Title
KR20140050107A (ko) 3d 비디오의 포맷 타입의 식별에 기초하여 3d 비디오를 2d 비디오로 변환하고 디스플레이 디바이스 타입의 식별에 기초하여 2d 또는 3d 비디오 중 하나를 제공하는 장치 및 방법
JP6248172B2 (ja) 改善された画像処理およびコンテンツ送達のための画像メタデータ生成
JP6735927B2 (ja) ビデオコンテンツの要約処理
Moorthy et al. Visual quality assessment algorithms: what does the future hold?
EP2153669B1 (en) Method, apparatus and system for processing depth-related information
US20140292746A1 (en) Clustering crowdsourced videos by line-of-sight
US9508023B1 (en) Transformation invariant media matching
US9998684B2 (en) Method and apparatus for virtual 3D model generation and navigation using opportunistically captured images
US8565557B2 (en) Free view generation in ray-space
US9973694B1 (en) Image stitching to form a three dimensional panoramic image
CN104618803A (zh) 信息推送方法、装置、终端及服务器
US11122314B2 (en) Bitrate optimizations for immersive multimedia streaming
US9208819B1 (en) Dynamic split-frame preview of video editing effects
AU2014283266A1 (en) Concept for determining the quality of a media data stream with varying quality-to-bit rate
Zhou et al. Reduced-reference stereoscopic image quality assessment based on view and disparity zero-watermarks
Solh et al. A no-reference quality measure for DIBR-based 3D videos
CN109997175A (zh) 确定虚拟对象的大小
WO2011017308A1 (en) Systems and methods for three-dimensional video generation
KR20170137634A (ko) 통신장치, 통신 제어방법 및 통신 시스템
US10116911B2 (en) Realistic point of view video method and apparatus
WO2017113735A1 (zh) 一种视频格式区分方法及系统
US9674498B1 (en) Detecting suitability for converting monoscopic visual content to stereoscopic 3D
Croci et al. Sharpness mismatch detection in stereoscopic content with 360-degree capability
TW201514844A (zh) 雲端影像資料輸出方法及雲端伺服器
TWI825892B (zh) 立體格式影像偵測方法與使用該方法的電子裝置

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid