KR20160124891A - 모델을 사용하여 비디오 전달시 레이턴시를 감소시키는 방법 및 시스템 - Google Patents
모델을 사용하여 비디오 전달시 레이턴시를 감소시키는 방법 및 시스템 Download PDFInfo
- Publication number
- KR20160124891A KR20160124891A KR1020167026325A KR20167026325A KR20160124891A KR 20160124891 A KR20160124891 A KR 20160124891A KR 1020167026325 A KR1020167026325 A KR 1020167026325A KR 20167026325 A KR20167026325 A KR 20167026325A KR 20160124891 A KR20160124891 A KR 20160124891A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- video data
- original video
- information data
- model
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000005540 biological transmission Effects 0.000 claims abstract description 23
- 230000003139 buffering effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 239000000872 buffer Substances 0.000 description 19
- 238000007796 conventional method Methods 0.000 description 7
- 230000001934 delay Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000014616 translation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G06T3/0093—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
-
- G06T7/0032—
-
- G06T7/2046—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/251—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
- G06T7/344—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H04L65/607—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/537—Motion estimation other than block-based
- H04N19/54—Motion estimation other than block-based using feature points or meshes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
Abstract
네트워크를 통한 송신을 위한 낮은-레이턴시 비디오를 생성하는 방법 및 시스템이 개시된다. 낮은-레이턴시 비디오는 원래의 비디오 데이터의 선택 부분들을 추정하기 위해 원래의 비디오 데이터의 하나의 선택 부분을 모델링하고 모델의 현재 프레임을 모델의 이전 프레임들에 대해 비교함으로써 생성될 수 있다. 원래 비디오 데이터의 추정된 선택 부분들은 낮은-레이턴시 비디오를 생성하기 위해 원래 비디오 데이터의 나머지(예컨대 배경 이미지들)와 조합될 수 있다. 모델 데이터 및 원래 비디오 데이터는 모델 데이터가 가능한 한 빨리 송신되는 것을 보장하기 위해 상이한 경로들을 사용하여 네트워크를 통해 송신될 수 있어서, 모델을 원래 비디오 데이터와 조합하기 전에 모델 데이터를 처리하기 위한 충분한 시간을 모퍼에 대해 허용한다.
Description
예시적인 실시예들은 일반적으로 무선 통신에 관한 것이고, 특히 무선(및/또는 유선) 네트워크를 통해 2방향 비디오 변환들에서 레이턴시를 감소시키기 위한 방법 및/또는 시스템에 관한 것이다. 네트워크 지연 및 비디오 인코딩/디코딩에 의한 레이턴시에 의해 야기된 지터는 비디오 이미지의 부분들을 비디오의 낮은-레이턴시 버전으로 모델링함으로써, 및 이러한 낮은-레이턴시 버전을 종래의(큰-레이턴시) 비디오로 모핑(morphing)함으로써 감소될 수 있다.
2방향 비디오 변환들 동안, 비디오 인코딩/디코딩을 위해 요구된 네트워크 지연들 및 시간은 레이턴시 및 지터를 초래할 수 있다. 상당한 왕복 지연에 의한 인식가능한 정지들이 또한 발생하여 화상 회의를 불유쾌하게 하고 혼란스럽게 할 수 있다.
비디오 송신 지연은: 카메라 획득 및 디스플레이 시간에 의해 야기된 고유 지연들과 함께, a) 프리-코딩 장면 분석, b) 코딩 시간, c) 압축된 프레임들의 가변 크기들의 송신을 원활하게 하도록 설계된 큰 선입, 선출(FIFO) 버퍼들(VBV), 및 d) 디코딩 시간의 조합에 의해 야기된다. 이들 지연들은 조합하여 화상 회의의 양 측들상에 송신 및 수신중인 비디오에서 1초의 큰 부분(1초의 절반까지)의 시간 기간을 갖는 지연들을 생성할 수 있다. 이러한 지연의 구성 요소들의 일부는 다소 더 작게 처리될 수 있고, 이미지 품질, 시스템 복잡성, 처리력 및 입력 신호 변경들에 대한 취약성을 포함한 팩터들 사이의 균형 타협이 존재한다.
네트워크 송신 시간은 비디오 송신 지연을 악화시키는 다른 지연이다. 네트워크 송신 시간 문제들은 송신 레이턴시 및 지터의 조합을 포함할 수 있다. 비디오가 고정된 프레임 레이트에서 상이하게 코딩되기 때문에, 각각의 프레임은 관습적으로 다음 프레임에 대해 시작하기 전에 수신 및 디코딩되어야 한다(그렇지 않으면 최종 이미지의 에러들이 초래될 수 있다). 이러한 이유 때문에, 버퍼링 지연의 추가의 레벨은 패킷들이 디코더에 도달하기 전에 도입된다. 버퍼링의 양이 감소되는 경우, 지터에 의한 비디오에서 인식가능한 에러들의 횟수의 증가가 증가된다. 네트워크 레이턴시 및 지터를 감소시키는 것에 대한 종래의 방식은, 예를 들면, 4G 네트워크에서 제공될 수 있는 더 높은 서비스 품질(QoS) 네트워크 경로(존재하는 경우)를 사용하는 것이다. 그러나, 이러한 높은-QoS 경로들은 일반적으로 네트워크 자원들 및 관리 구성들에 의해 비교적 제한되고 많은 비용이 든다.
오디오 스트림이 일반적으로 비디오 스트림들이 경험하는 높은-레이턴시 문제들의 동일한 영향들을 겪지 않지만, 수신된 오디오-비디오 스트림은 말하는 사람의 이미지가 오디오 채널에 정확히 매칭하지 않는 "립-싱크로나이제이션(lip-synchronization)" 문제들을 겪을 수 있다.
근래에, 인체의 컴퓨터 분석에서 큰 진보들이 행해졌다. 예를 들면, 잘 알려진 3-D 카메라들, 또는 2-D 이미지-플러스-깊이 카메라들은 한 프레임보다 짧은 시간에 객체의 얼굴(100 개가 넘는 얼굴 "랜드마크들"을 사용하여) 및 골격의 신체 위치의 상세한 모델들을 생성할 수 있다. 도 1은 종래 기술의 일 예를 도시하고, 여기서 사람의 얼굴의 로우 이미지(raw image; 100)가 랜드마크들(102)에 할당된다(1 내지 86으로 라벨링된 번호들로 표시됨). 모델 정보는 또한, 도 2에 도시되는, 종래 방법들에 따라 모델 정보를 사용하여 사람의 얼굴(104)의 모델을 생성하기 위해 로우 비디오(100)로부터 수집될 수 있다. 도 3에 도시된 바와 같이, 사람의 신체 위치는 또한 종래 방법들을 사용하여 랜드마크들을 사람의 골격의 관절들에 할당함으로써 모델링될 수 있다(106).
도 6은 2차원 객체를 모핑 및 텍스처 맵핑하는 종래의 방법의 일 예를 도시한다. 구체적으로, 2차원 객체(500)는 원래 이미지로부터 추출될 수 있고, 이미지(500)는 이후 배경 이미지(502)상에 맞출 수 있는 다른 형상(즉, 모핑된 객체(500a))으로 왜곡될 수 있다. 모핑된 객체(500a)의 텍스처는 또한 배경(502)과 함께 조정 및/또는 융합될 수 있다(따라서, 모핑된/텍스처 맵핑된 이미지(500a)를 생성한다). 모핑된/텍스처 맵핑된 이미지(500a)는 또한 "비틀어진" 이미지라고 불릴 수 있다.
본 발명의 목적은 무선(및/또는 와이어라인) 네트워크를 통해 2방향 비디오 변환들에서 레이턴시를 감소시키기 위한 방법 및/또는 시스템을 제공하는 것이다.
예시적인 실시예들은 비디오 장면의 부분들을 모델링함으로써 무선 네트워크를 통해 2방향 비디오 변환들에서 레이턴시를 감소시키는 방법 및/또는 시스템을 제공한다. 모델링은 비디오의 일 부분만을 기술할 수 있는 비디오 장면의 소량의 형상 정보를 생성함으로써 달성될 수 있다(또는 대안적으로, 모델링이 전체 비디오에 대해 사용될 수 있다). 이러한 모델 정보 데이터의 송신은 낮은-레이턴시 경로를 통해 발생할 수 있다. 모핑은 최종의, 낮은-레이턴시 비디오를 생성하기 위해 모델 정보 데이터(비디오의 일 부분을 기술하는)와 종래에 송신된 (큰 레이턴시) 비디오를 혼합하기 위해 사용될 수 있다.
적어도 하나의 실시예는 낮은-레이턴시 비디오를 생성하는 방법을 포함하고, 상기 방법은, 모델 정보를 생성하기 위해, 하나 이상의 프로세서들에 의해, 프레임마다에 기초하여, 원래 비디오 데이터의 선택 부분을 모델링하는 단계, 및 네트워크를 통해 원래 비디오 데이터 및 모델 정보 데이터를 송신하는 단계를 포함한다.
적어도 또 다른 실시예는 낮은-레이턴시 비디오를 생성하는 방법을 포함하고, 상기 방법은, 원래 비디오 데이터 및 모델 정보 데이터를 수신하는 단계로서, 모델 정보 데이터는 원래 비디오 데이터의 선택 부분의, 프레임마다에 기초한 모델 정보인, 상기 수신 단계, 하나 이상의 프로세서들에 의해 모델 정보 데이터의 현재 프레임 및 모델 정보 데이터의 하나 이상의 이전 프레임들에 기초하여 차이 정보 데이터를 생성하는 단계, 및 차이 정보 데이터에 기초하여 낮은-레이턴시 비디오를 생성하는 단계를 포함한다.
적어도 또 다른 실시예는, 네트워크의 제 1 채널을 통한 송신을 위한 원래 비디오 데이터를 생성하도록 구성된 카메라, 및 네트워크의 제 2 채널을 통한 송신을 위한 모델 정보를 생성하기 위해, 프레임마다에 기초하여, 원래 비디오 데이터의 선택 부분을 모델링하도록 구성된 모델러를 포함하는 시스템을 포함하고, 제 2 채널은 제 1 채널보다 높은 서비스 품질(QoS)을 갖는다.
적어도 또 다른 실시예는 모퍼, 및 제어기를 포함하는 디바이스를 포함하고, 상기 제어기는 모퍼가 원래 비디오 데이터 및 원래 비디오 데이터의 선택 부분의, 프레임마다에 기초한, 모델 정보인, 모델 정보 데이터를 수신하게 하고, 모델 정보 데이터의 현재 프레임 및 모델 정보 데이터의 하나 이상의 이전 프레임들에 기초한 차이 정보 데이터를 생성하게 하고, 차이 정보 데이터에 기초하여 낮은-레이턴시 비디오를 생성하게 하도록 구성된다.
적어도 또 다른 실시예는 컴퓨터가 상기에 기술된 방법들 중 어느 하나를 수행하게 하기 위한 명령들을 포함하는 프로그램을 구비하는 비-일시적 컴퓨터-판독가능한 매체를 포함한다.
적어도 또 다른 실시예는 이전에 언급된 방법 실시예들을 수행하도록 적응된 컴퓨터 프로그램에 관한 것이다.
네트워크 지연 및 비디오 인코딩/디코딩에 의한 레이턴시에 의해 야기된 지터는 비디오 이미지의 부분들을 비디오의 낮은-레이턴시 버전으로 모델링함으로써, 및 이러한 낮은-레이턴시 버전을 종래의(큰-레이턴시) 비디오로 모핑함으로써 감소될 수 있다.
도 1은 종래의 방법들을 사용하여, 이미지에 할당되는 덧붙여진 랜드마크들을 갖는 사람의 얼굴의 로우 비디오 이미지를 도시하는 도면.
도 2는 종래의 방법들을 사용하여, 사람의 얼굴의 모델 다음에 로우 비디오 이미지의 이미지를 도시하는 도면.
도 3은 종래의 방법들을 사용하여, 사람의 골격 위치의 모델을 도시하는 도면.
도 4a는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 시스템을 도시하는 도면.
도 4b는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템을 도시하는 도면.
도 4c는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템을 도시하는 도면.
도 5는 일 예시적인 실시예에 따라 중첩하지 않은 삼각형 영역들을 한정하는 이미지 화소 위치들을 사용하여 사람의 얼굴의 모델을 도시하는 도면.
도 6은 2차원 이미지를 모핑 및 텍스처 맵핑하는 종래의 방법을 도시하는 도면.
도 7은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 플로차트.
도 8은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 다른 플로차트.
도 2는 종래의 방법들을 사용하여, 사람의 얼굴의 모델 다음에 로우 비디오 이미지의 이미지를 도시하는 도면.
도 3은 종래의 방법들을 사용하여, 사람의 골격 위치의 모델을 도시하는 도면.
도 4a는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 시스템을 도시하는 도면.
도 4b는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템을 도시하는 도면.
도 4c는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템을 도시하는 도면.
도 5는 일 예시적인 실시예에 따라 중첩하지 않은 삼각형 영역들을 한정하는 이미지 화소 위치들을 사용하여 사람의 얼굴의 모델을 도시하는 도면.
도 6은 2차원 이미지를 모핑 및 텍스처 맵핑하는 종래의 방법을 도시하는 도면.
도 7은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 플로차트.
도 8은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 다른 플로차트.
예시적인 실시예들의 상기 및 다른 특징들 및 이점들은 첨부된 도면들을 참조하여 예시적인 실시예들을 상세히 기술함으로써 더 명백해질 것이다. 첨부하는 도면들은 예시적인 실시예들을 도시하도록 의도되고 청구항들의 의도된 범위를 제한하도록 해석되지 않아야 한다. 첨부하는 도면들은 명확히 언급되지 않으면 비례적으로 도시되는 것으로 생각되지 않는다.
예시적인 실시예들은 다양한 변경들 및 대안적인 형태들이 가능하지만, 그의 실시예들은 도면들에 예로서 도시되고 여기에 상세히 기술될 것이다. 그러나, 예시적인 실시예들을 개시된 특정 형태들로 제한하도록 의도되지 않지만, 반대로, 예시적인 실시예들은 청구항들의 범위 내에 속하는 모든 변경들, 동등물들, 및 대체물들을 포함하는 것이라는 것이 이해되어야 한다. 유사한 번호들은 도면들의 기술의 전체에 걸쳐 유사한 요소들을 말한다.
예시적인 실시예들을 더 상세히 논의하기 전에, 몇몇 예시적인 실시예들은 플로차트들에 도시되는 프로세서들 또는 방법들로서 기술된다는 것이 주의된다. 플로차트들이 동작들을 순차적인 프로세스들로서 기술할지라도, 동작들 중 많은 것이 병렬로, 함께 또는 동시에 수행될 수 있다. 또한, 동작들의 순서는 재배열될 수 있다. 프로세스들은 그들의 동작들이 완료될 때 종료될 수 있지만, 도면에 포함되지 않은 추가의 단계들을 또한 가질 수 있다. 프로세스들은 방법들, 기능들, 절차들, 서브루틴들, 서브프로그램들, 등에 대응할 수 있다.
일부가 프로차트들에 의해 도시되는, 이하에 논의된 방법들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어들, 또는 그의 임의의 조합에 의해 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어 또는 마이크로코드에서 구현될 때, 필요한 태스크들을 수행하기 위한 프로그램 코드 또는 코드 세그먼트들은 비일시적 저장 매체와 같은 저장 매체와 같은 머신 또는 컴퓨터 판독가능한 매체에 저장될 수 있다. 프로세서(들)는 필요한 태스크들을 수행할 수 있다.
여기에 개시된 특정한 구조적 및 기능적 상세들은 예시적인 실시예들을 기술하는 목적들을 위해 단순히 나타낸다. 그러나, 본 발명은 많은 대안적인 형태들로 구현될 수 있고 여기에 설명된 실시예들로만 제한되는 것으로 해석되지 않아야 한다.
용어들, 제 1, 제 2, 등이 다양한 요소들을 기술하기 위해 여기에 사용될 수 있지만, 이들 요소들은 이들 용어들로 제한되지 않아야 한다는 것이 이해될 것이다. 이들 용어들은 요소들마다 구별하기 위해서만 사용된다. 예를 들면, 예시적인 실시예들의 범위로부터 벗어나지 않고, 제 1 요소는 제 2 요소를 말할 수 있고, 유사하게, 제 2 요소는 제 1 요소를 말할 수 있다. 여기서 사용되는, 용어 "및/또는"은 연관된 나열 요소들 중 하나 이상의 임의의 조합 및 모든 조합들을 포함한다.
요소가 다른 요소에 "연결" 또는 "결합"된다고 말해질 때, 이는 다른 요소에 직접 연결 또는 결합될 수 있거나 개재 요소들이 존재할 수 있다는 것이 이해될 것이다. 반대로, 요소가 다른 요소에 "직접 연결" 또는 "직접 결합"된다고 말해질 때, 개재 요소들이 존재하지 않는다. 요소들 사이의 관계를 기술하기 위해 사용된 다른 단어들은 유사한 방식으로 해석되어야 한다(예를 들면, "~ 사이에" 대 "직접 그 사이에", "인접한" 대 "직접 인접한", 등).
여기에 사용된 용어는 단지 특정한 실시예들을 기술하는 목적을 위한 것이고, 예시적인 실시예들을 제한하는 것으로 의도되지 않는다. 여기에 사용되는, 단수 형태들은, 내용이 명확하게 나타내지 않으면, 복수 형태들을 또한 포함하도록 의도된다. 여기에서 사용될 때, 용어 "포함한다" 및/또는 "포함하는"은 진술된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 혼합물들의 존재를 명시하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 혼합물들 및/또는 그의 그룹들의 존재 또는 추가를 배제하지 않는다는 것이 또한 이해될 것이다.
몇몇 대안적인 구현들에서, 언급된 기능들/동작들이 도면들에 언급된 순서 외에 발생할 수 있다는 것이 또한 주의되어야 한다. 예를 들면, 연속하여 도시된 두 개의 도면들은 사실상 함께 실행될 수 있거나, 또는 포함된 기능/동작들에 종속하여, 때때로 역순으로 실행될 수 있다.
그와 달리 규정되지 않으면, 여기에 사용된 모든 용어들(기술 및 과학 용어들을 포함하여)은 예시적인 실시예들이 속하는 것으로 당업자에 의해 일반적으로 이해되는 동일한 의미를 갖는다. 용어들, 예를 들면, 사전들에 공통으로 사용되어 규정되는 것들이 관련 기술의 맥락에서 그들의 의미와 일치하는 의미를 갖는 것으로 해석되어야 하고 분명하게 여기에 그렇게 규정되지 않으면 이상화되거나 너무 관례적인 의미로 해석되지 않을 것이 또한 이해될 것이다.
예시적인 실시예들 및 대응하는 상세한 설명의 부분들은 소프트웨어 또는 알고리즘, 및 컴퓨터 메모리 내 데이터 비트들에 대한 동작의 심볼 표현들에 의해 나타내진다. 이들 기술들 및 표현들은 당업자들이 다른 당업자들에게 그들의 작업의 실체를 효과적으로 전달하는 것들이다. 여기에 사용되는 용어이고, 일반적으로 사용되는 알고리즘은 원하는 결과를 초래하는 단계들의 일관성 있는 시퀀스들인 것이 이해된다. 단계들은 물리적 양의 물리적 조작들을 요구하는 것들이다. 일반적으로, 반드시는 아니지만, 이들 양들은 저장, 이동, 조합, 비교, 및 그 외의 조작될 수 있는 광학, 전기, 또는 자기 신호들의 형태를 취한다. 이들 신호들을 비트들, 값들, 요소들, 심볼들, 문자들, 용어들, 숫자들, 등으로 나타내는 것이, 주로 공통 사용의 이유들 때문에, 때때로 편리하다는 것이 입증되었다.
다음의 기술에서, 예시적인 실시예들은 특정한 태스크들을 수행하거나 특정한 추상 데이터형들을 구현하는 루틴들, 프로그램들, 객체들, 구성 요소들, 데이터 구조들, 등을 포함하는 기능 프로세스들 또는 프로그램 모듈들로서 구현될 수 있고 기존 네트워크 요소들에서 기존 하드웨어를 사용하여 구현될 수 있는 동작들 및 동작들의 심볼 표현들(예를 들면, 플로차트들의 형태로)을 참조하여 기술될 것이다. 이러한 기존 하드웨어는 하나 이상의 중앙 처리 장치들(CPUs), 디지털 신호 프로세서들(DSPs), 주문형 집적 회로들, 필드 프로그램 가능한 게이트 어레이들(FPGAs) 컴퓨터들 등을 포함할 수 있다.
그러나, 이들 및 유사한 용어들 모두가 적절한 물리적 양들과 연관되는 것이고 이들 양들에 적용된 단순히 편리한 라벨들이라는 것이 유념되어야 한다. 특별히 그와 달리 언급되거나, 또는 논의로부터 명백하지 않으면, "처리" 또는 "컴퓨팅" 또는 "계산" 또는 "디스플레이"의 "결정", 등과 같은 용어들은 컴퓨터 시스템, 또는 컴퓨터 시스템의 레지스터들 및 메모리들 내 물리적, 전자적 양들로 나타낸 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 이러한 정보 저장, 송신 또는 디스플레이 디바이스들 내 물리량들로서 유사하게 나타낸 다른 데이터로 조작 및 변환하는 유사한 전자 컴퓨팅 디바이스 또는 컴퓨터 시스템의 동작 및 프로세스들을 말한다.
예시적인 실시예들의 소프트웨어 구현 양태들이 몇몇 형태의 프로그램 저장 매체상에 일반적으로 인코딩되거나 몇몇 형태의 송신 매체를 통해 구현된다는 것을 또한 주의하라. 프로그램 저장 매체는 자기적(예를 들면, 플로피 디스크 또는 하드 드라이브) 또는 광학적(예를 들면, 컴팩트 디스크 판독 전용 메모리, 즉, "CD ROM")과 같은 임의의 비일시적 저장 매체일 수 있고, 판독 전용 또는 랜덤 액세스일 수 있다. 유사하게, 송신 매체는, 연선쌍들, 동축 케이블들, 광섬유, 또는 본 기술에 알려진 몇몇 다른 적절한 송신 매체일 수 있다. 예시적인 실시예들은 임의의 주어진 구현의 이들 양태들에 의해 제한되지 않는다.
도 4a는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 시스템이다. 시스템은 시간 t에서 로우 비디오 이미지(202)를 생성할 수 있는 비디오 카메라(200)를 포함할 수 있다. 로우 비디오는 네트워크(204)(무선 네트워크일 수 있는)를 통한 송신을 위해 두 개의 기본 경로들로 분할될 수 있다: 1) 정규 네트워크 채널을 통해 종래의 (큰 레이턴시) 비디오 데이터를 포함할 수 있는 정규 경로(206), 및 2) 네트워크(204)의 더 빠른 네트워크 채널을 통해 로우 비디오(202)로부터 수집되는 모델 정보 데이터를 포함할 수 있는 빠른 경로(208). 더 빠른 네트워크 채널은 정규 채널과 비교될 때 더 높은 품질의 서비스(QoS) 채널일 수 있거나, 더 큰 송신 전력을 사용하여 송신될 수 있거나, 더 큰 송신 레이트로 송신될 수 있거나, 또는 일반적으로 정규 채널보다 더 신뢰할 수 있을 수 있다. 정규 경로(206)는 (H.264와 같은 압축 표준들을 사용하여) 로우 비디오의 화소 데이터를 인코딩 및 압축하는 비디오 인코더(210)를 포함할 수 있다. 선입, 선출(FIFO) 버퍼일 수 있는 압축된 비디오 버퍼(212)는 정규 경로(206)를 통해 송신을 위해 로우 비디오 데이터를 준비하기 위해 인코딩된 비디오를 수신할 수 있다. 수신기측상에, 정규 경로(206)는 FIFO 압축된 비디오 버퍼(214)를 포함할 수 있다. 압축된 비디오 버퍼(214)로부터의 버퍼링된 비디오 데이터는 로우 비디오 데이터를 디코딩 및 압축 해제하는 비디오 디코더(216)로 전송될 수 있다. 레이턴시(Lt)는 디코더(216)를 떠나기 전에 로우 비디오 데이터(202)가 카메라(200)를 떠나서 정규 경로(206)를 따라 이동하는 시간의 지속 기간이다. 따라서, 디코더를 떠난 디코딩된 로우 비디오(217)는 시간(t + Lt)에 디코딩되는 로우 비디오의 비디오 이미지(시간(t)에 카메라(200)를 통해 원래 캡처되는)이다.
빠른 경로(208)는 랜드마크들(도 1에 도시된 랜드마크들과 같은)을 로우 비디오 데이터에 할당하기 위해 로우 비디오(202)의 화소 데이터를 분석하는 모델링 프로세서(모델러)(218)를 포함할 수 있다. 모델러(218)는, 예를 들면, 로우 비디오 데이터(202)에 포함될 수 있는 사람의 얼굴에 초점을 맞추는 얼굴 분석 모델러일 수 있다. 얼굴 분석 모델러를 대체하여, 모델러(218)는 대신 전체 로우 비디오 데이터(202)의 다른 특정 부분들(사람의 얼굴 이외에, 또는 다수의 사람의 얼굴들에 또한 잠재적으로 초점을 맞추는 것에 더하여)에 초점을 맞추도록 설계될 수 있다.
모델러(218)를 떠난 모델 정보(220)는 여러 형태들로 송신될 수 있다. 첫째로, 이러한 모델 정보(220)는 x/y-축 좌표들을 사용하여 기술되는 이미지 화소 위치들(즉, x/y 축 위치들)일 수 있다. 둘째로, 모델 정보(220)는, 카메라 파라미터들의 정보(해상도, 배향, 초점 길이)가 이용 가능한 경우, 기본 기하학적 구조를 사용하여 이미지 화소 위치들로 변환될 수 있는 x/y/z-축 좌표들을 사용하는, 3차원 공간 장소들의 형태일 수 있다. 셋째로, 이러한 모델 정보(220)는, 이후 이미지 화소 위치들로 번역되는 얼굴 랜드마크들의 3차원 공간 장소들로 재해석될 수 있는 http://www.icg.isy.liu.se/candide/에 규정된 모델링 방법들과 같이 잘 알려진 방법들을 사용하여, 애니메이션 유닛들(AU), 및 형상 유닛들(SU)로 규정될 수 있는 얼굴 모델 파라미터들의 리스트의 형태일 수 있다. 얼굴 랜드마크들의 장소들이 주어지면, 중첩하지 않은 삼각형 영역들(300n)(n은 1 내지 N인 정수일 수 있고, N은 삼각형 영역들의 총 수이다)은 도 5에 도시된 사람의 얼굴(예를 들면, 사람의 전체 얼굴이 모델링되는 경우)을 한정하기 위해 사용될 수 있다. 도 5의 각각의 삼각형 영역(300n)은 사람의 얼굴 면적을 전체적으로 모델링하기 위해 세 개의 이미지 화소 위치들(302m)(m은 1 내지 M인 정수일 수 있고, M은 이미지 화소 위치들의 총 수이다)로 한정된다.
모델러(218)는 사람의 얼굴의 전체 모델 정보 데이터(220) 내에서 발견되는 사람의 입의 형상에 관련하는 데이터만을 선택적으로 패킷화하는 패킷화기(222)로 모델 정보 데이터(220)를 출력할 수 있다. 패킷화기(222)는 대안적으로 사람의 눈들과 같이, 사람의 입의 형상(또는 사람의 입의 형상에 더하여), 그들의 머리, 손들, 및 사람의 신체의 나머지의 움직임과 다른 전체 모델 정보 데이터(220)의 다른 선택 부분들을 패킷화할 수 있다. 추가로, 패킷화기(222)는 사람의 얼굴 또는 심지어 그들의 전체 신체에 관한 모델 정보 데이터(220)의 전부를 패킷화할 수 있고(사람의 신체 뒤의 배경이 모델링될 필요가 있을 수 있거나 필요하지 않을 수 있지만), 더 큰 대역폭 지연 기간이 패킷화기(222)에 의해 패킷화 및 송신되는 더 큰 양의 모델 정보 데이터에 대해 요구될 수 있다는 것을 이해한다(모델 정보가 일반적으로 IP 패킷의 크기보다 상당히 작고, 따라서 요구될 수 있는 임의의 추가 대역폭은 여분의 지연들을 야기하는데 꽤 무시할만한 영향을 갖지만).
패킷화기(222)를 떠난 데이터는 빠른 경로(208)를 통해 네트워크(204)를 거쳐 송신될 수 있다. 빠른 경로(208)는 정규 경로(206)와 비교될 때 더 신뢰할 수 있고, 더 낮은-레이턴시 경로일 수 있다. 추가로, 빠른 경로(208)는 인코더/디코더 및 비디오 버퍼를 포함하지 않아서(정규 경로(206)와 달리), 그에 의해 빠른 경로(208)를 따라 데이터 송신의 속도를 또한 증가시킨다. 빠른 경로(208)에 걸쳐 송신된 데이터는 역패킷화기(224)에 의해 역패킷화되고, 그래서 모델 정보는 이후 모델링된 형상 정보가 선입, 선출(FIFO)에 기초하여 버퍼링될 수 있는 형상 버퍼(228)로 전송될 수 있다. 패킷화기(222), 빠른 경로(208), 및 역패킷화기(224)를 통해 비디오 데이터를 처리하는 것에 연관된 레이턴시 지속 기간(lt)이 존재하기 때문에, 역패킷화기(224)를 떠난 모델 정보(226)는 시간(t + lt)에 역패킷화기(224)로부터 송신된다. 빠른 경로(208)가 정규 경로(206)보다 빠르게 데이터를 송신할 수 있기 때문에, 및 빠른 경로(208)를 통해 송신되는 데이터의 총량이 정규 경로(206)를 통해 송신되는 데이터량보다 작을 수 있기 때문에(그에 의해 인코딩/디코딩 시간을 감소시킴), 레이턴시(lt)(빠른 경로 레이턴시)는 레이턴시(Lt)(정규 경로 레이턴시)보다 작을 수 있다는 것이 이해되어야 한다. 형상 FIFO(228)는 모핑 프로세서(모퍼)(230)에 의한 사용을 위해 가장 최근에 이용 가능한 모델 정보(232)(시간(t + Lt)에 대응하는)를 저장할 수 있다.
비선형 이미지 구성 모퍼(240)(Tomas Akenine-Moller & Eric Haines, 2002(ISBN 1-56881-182-9, Chapter 5, p. 117-180)의 "Real-Time Rendering", 2nd edition에 기술된 방법들과 같은 모핑/텍스처 맵핑의 잘 알려진 방법들을 사용하는)는 이후 낮은-레이턴시 비디오(250)를 생성하기 위해 사용될 수 있다(모핑/텍스처 맵핑의 일 예에 대하여 도 6을 참조하라). 낮은-레이턴시 비디오(250)는 로우 비디오의 선택 부분의 프레임마다의 추정(모델들(226/232)의 비교에서 발견됨)과 실제 로우 비디오 데이터(217)의 혼합(melding)이다. 따라서, 모퍼(230)의 목적은 모델링 정보 데이터의 사용을 통해 현재 및 이전 모델들(또는 이미지 모델들)의 비교를 사용하여 비디오 데이터의 일 부분의 추정을 생성하는 것이다. 구체적으로, 모퍼(230)는 현재 모델링된 이미지(역패킷화기(224)를 떠난 모델(t+lt)(226))에 대한 하나 이상의 이전에 모델링된 이미지들(예를 들면, 버퍼(228)를 떠난 모델(t+Lt)(232))에서 주요 얼굴 랜드마크들의 장소들 사이의 차이를 결정함으로써 획득되는 로우 비디오의 선택 부분에 대한 정보와 로우 비디오 데이터의 이전 이미지(디코더(216)를 떠난 이미지(t+Lt)(217))를 조합함으로써 낮은-레이턴시 비디오(250)의 각각의 프레임마다의 낮은 레이턴시 이미지를 생성한다. 로우 데이터의 선택 부분의 차이 정보는, 현재 얼굴의 랜드마크들로 규정된 삼각형 영역들에 대응하는 추정된 화소 위치들의 일 세트(상기에 기술된 도 5에 관한 화소들의 논의를 참조하라)를 생성하는 '와핑(warping)'(모핑 및 텍스처 맵핑) 동작을 통해, 프레임마다의 이미지(오직 사람의 머리, 또는 사람의 입술들의) 중 이러한 선택 부분만이 추정되게 한다. 따라서, '와핑' 동작(소스 이미지가 객체의 표면을 나타내도록 왜곡되는 컴퓨터 그래픽들의 텍스처 맵핑에서 종래에 사용되는)은 2차원 변형과 함께 2차원 스큐(skew)에 대응하는 행렬 변환으로 나타낼 수 있는 삼각형 영역들을 시작 및 종료하는 것으로 규정된다. 따라서, 모퍼(230)는 낮은-레이턴시 비디오(250)를 생성하기 위해 디코딩된 로우 비디오(217)와 (모델 정보 데이터의 사용을 통해) 비디오의 추정된 부분들을 조합한다.
도 4b는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템이다. 도 4b는 도 4a와 거의 동일하고, 이러한 이유 때문에, 도 4b의 중복된 요소들은 간결성을 위해 여기에 다시 기술되지 않는다. 그러나, 도 4b의 실시예는 비디오 디코더(216) 전에 비디오 버퍼를 포함하지 않는다(비교를 위해, 도 4a의 비디오 버퍼(214)를 참조하라). 버퍼를 제거함으로써, (FIFO 버퍼의 정규 동작들을 통해) 비디오 데이터 패킷들의 수집 및 순서화와 연관된 지연이 회피될 수 있다. 따라서, (정규 경로(206)를 따라) 디코더(216)를 통해 인코더(210)로부터 비디오 데이터의 흐름은 더 적은 전체 레이턴시를 갖고 더 빠르게 발생할 수 있다. 정규 경로(206)를 따른 비디오 데이터의 흐름이 일반적으로 빠른 경로(208)를 따라 이동하는 모델 정보 데이터보다 큰 레이턴시를 경험하기 때문에, (도 4a에 도시된 바와 같이) 버퍼(214)의 제거를 통해 비디오 데이터 송신의 증가된 속도는 낮은-레이턴시 비디오(250)의 전체 생성에 대해 더 적은 레이턴시 지연들을 제공한다. 그러나, 정규 경로(206)를 따른 전파 문제들이 디코더(216)에 도착하는 비순차적 비디오 데이터 패킷들의 상당한 경우들을 야기하는 경우, 버퍼(214)의 제거가 모델링되지 않는 비디오(250)의 부분의 품질을 열화시킬 수 있기 때문에(버퍼(214)가 보통 수신된 패킷들을 재순서화함으로써 지터를 감소시키기 때문에), 비디오(250)의 전체 레이턴시에서 이러한 감소는 잠재적인 균형 타협을 포함한다. 그러나, 모델링되는 비디오(250)의 부분들이 지터에 의해 영향받지 않아서, 비디오(250)의 전체 품질은 얼마나 많은 비디오(250)가 예측된 모델인지에 의존한다.
도 4c는 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하기 위한 다른 시스템이다. 도 4c는 도 4b와 거의 동일하고, 이러한 이유 때문에 도 4c의 중복된 요소들은 간결성을 위해 여기에 다시 기술되지 않는다. 그러나, 도 4c의 실시예는 네트워크(204)를 통해 이동하는 별개의 빠른 경로(도 4b에서 빠른 경로(208)를 참조)를 포함하지 않는다. 대신, 패킷화기(222)는 정규 경로(206)를 통해 이후 역패킷화기(224)상에 모델 정보 데이터를 송신한다. 본 실시예는 심지어 네트워크(204)가 더 신뢰할 수 있는 고품질 서비스(QoS) 빠른 경로(도 4a/b의 빠른 경로(208)와 유사)를 제공하지 않는 경우조차 로우 비디오 이미지(202)의 선택 부분들의 모델링을 허용한다. 빠른 경로를 제거함으로써, 패킷화기(222)로부터 송신된 모델 정보 데이터는 더 느리고 덜 신뢰가능하게 모퍼(230)에 도달한다. 그러나, 모델 정보 데이터가 더 작은 양의 데이터 정보(인코더(210)로부터 디코더(216)를 지나서 이동하는 비디오 데이터와 비교될 때)일 수 있기 때문에, 및 모델 정보가 인코더/디코더 및 비디오 버퍼를 지나가지 않기 때문에(모델링되지 않은 비디오의 부분들과 달리), 모델 정보 데이터는 여전히 비디오 데이터보다 빨리 모퍼(230)에 도달한다. 따라서, 본 실시예는 추정치들이 (역패킷화기(224)를 떠난 모델 데이터 정보를 사용하여 추정될 수 있는) 낮은-레이턴시 비디오(250)의 부분들을 선택하도록 여전히 허용할 수 있다.
도 4c의 실시예는, (상당한 양의 비순차적 비디오 데이터가 디코더(216)에서 수신되는 경우) 낮은-레이턴시 비디오(250)에서 그 외에 발생할 수 있는 지터의 가능성을 더욱 감소시키기 위해, 비디오 디코더(216)의 업스트림에 비디오 버퍼(도 4a에서 비디오 버퍼(214)와 유사한)를 선택적으로 포함할 수 있다.
도 7은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 다른 플로차트이다. 방법은 모델 정보 데이터(모델(t)(220))를 생성하기 위해 원래 비디오 데이터의 선택 부분을 모델링하는 단계(S400)(도 4a의 모델러(218)에서)를 포함할 수 있다. 이러한 모델링은 프레임마다에 기초하여 성취될 수 있다. 단계(S402)에서, 원래 비디오 데이터 및 모델 정보 데이터는 네트워크를 거쳐 송신될 수 있다. 원래 비디오 데이터 및 모델 정보 데이터의 송신은 동일한 네트워크 채널을 거쳐(도 4c이 도시되는 바와 같이), 또는 두 개의 별개의 채널들을 거쳐(도 4a/b에 도시되는 바와 같이) 발생할 수 있다. 두 개의 별개의 채널들이 사용되는 경우, 모델 정보 데이터의 송신은 원래 비디오 데이터를 송신하기 위해 사용되는 채널에 비교할 때 더 높은 QoS를 갖고 채널을 통해 전송될 수 있다.
도 7은 일 예시적인 실시예에 따라 낮은-레이턴시 비디오를 생성하는 방법의 다른 플로차트이다. 방법은 원래 비디오 데이터 및 모델 정보 데이터를 수신하는 단계(S500)를 포함할 수 있고(모퍼(230)에서), 모델 정보는 (프레임마다에 기초하여) 원래 비디오 데이터의 선택 부분의 모델일 수 있다. 방법은 모델 정보 데이터의 현재 프레임(모델(t+lt)(226)) 및 모델 정보 데이터의 하나 또는 그 이상의 이전 프레임들(모델(t+Lt)(232))에 기초하여 차이 정보 데이터를 생성하는 단계(S502)를 포함할 수 있다(모퍼(230)에서). 단계(S504)에서(모퍼(230)에서), 낮은-레이턴시 비디오(250)는 차이 정보에 기초하여 생성될 수 있다.
상기에 언급된 바와 같이, 도 7 및 도 8의 방법들은 모든 비디오 데이터를 모델링하기 위해 변경될 수 있다(다시 말해서, 비디오 데이터의 선택 부분은 모든 비디오 데이터를 포함할 수 있다).
예시적인 실시예들이 이와 같이 기술되었지만, 동일한 것이 많은 방식들로 변경될 수 있다는 것이 분명할 것이다. 이러한 변동들은 예시적인 실시예들의 의도된 정신 및 범위로부터의 벗어나는 것으로서 생각되지 않는 것이고, 당업자에게 분명한 모든 이러한 변경들은 다음의 청구항들의 범위 내에 포함되도록 의도된다.
200 : 카메라
204 : 네트워크
206 : 정규 경로 208 : 빠른 경로
210 : 비디오 인코더 212, 214 : 압축된 비디오 버퍼
216 : 비디오 디코더 218 : 모델링 프로세서(모델러)
222 : 패킷화기 224 : 역패킷화기
228 : 형상 FIFO 230 : 모핑 프로세서(모퍼)
206 : 정규 경로 208 : 빠른 경로
210 : 비디오 인코더 212, 214 : 압축된 비디오 버퍼
216 : 비디오 디코더 218 : 모델링 프로세서(모델러)
222 : 패킷화기 224 : 역패킷화기
228 : 형상 FIFO 230 : 모핑 프로세서(모퍼)
Claims (10)
- 낮은-레이턴시 비디오(low-latency video)를 생성하는 방법에 있어서,
모델 정보(220)를 생성하기 위해, 하나 이상의 프로세서들(218)에 의해, 프레임마다에 기초하여 원래 비디오 데이터(202)의 선택 부분을 모델링하는 단계; 및
네트워크(204)를 통해 상기 원래 비디오 데이터 및 상기 모델 정보 데이터를 송신하는 단계를 포함하는, 낮은-레이턴시 비디오를 생성하는 방법. - 제 1 항에 있어서,
상기 원래 비디오 데이터를 송신하는 단계는 상기 네트워크의 제 1 채널(206)을 통해 달성되고,
상기 모델 정보 데이터를 송신하는 단계는 상기 네트워크의 제 2 채널(208)을 통해 달성되는, 낮은-레이턴시 비디오를 생성하는 방법. - 제 2 항에 있어서,
상기 제 2 채널은 상기 제 1 채널보다 높은 서비스 품질(QoS)을 갖는, 낮은-레이턴시 비디오를 생성하는 방법. - 제 2 항에 있어서,
상기 제 1 채널 및 상기 제 2 채널은 동일 채널인, 낮은-레이턴시 비디오를 생성하는 방법. - 제 2 항에 있어서,
상기 네트워크의 상기 제 1 채널을 통해 상기 원래 비디오 데이터를 전송하기 전에 상기 원래 비디오 데이터를 인코딩하는 단계(210) 및 버퍼링하는 단계(212)를 추가로 포함하고,
상기 모델 데이터는 상기 네트워크의 상기 제 2 채널을 통해 상기 모델 정보 데이터를 송신하기 전에 인코딩되지 않고 버퍼링되지 않고,
상기 원래 비디오 데이터의 상기 선택 부분을 모델링하는 단계는,
상기 원래 비디오 데이터의 화소 데이터를 분석하는 단계,
랜드마크들을 상기 화소 데이터에 할당하는 단계, 및
상기 비디오 데이터의 상기 선택 부분을 이미지 화소 위치들에 의해 한정된 하나 이상의 중첩하지 않은 모델 영역들로 분할하는 단계를 포함하는, 낮은-레이턴시 비디오를 생성하는 방법. - 낮은-레이턴시 비디오를 생성하는 방법에 있어서,
원래 비디오 데이터(202) 및 모델 정보 데이터(220)를 수신하는 단계로서, 상기 모델 정보 데이터는 상기 원래 비디오 데이터의 선택 부분의 프레임마다에 기초한 모델 정보인, 상기 수신 단계;
하나 이상의 프로세서들(230)에 의해, 상기 모델 정보 데이터의 현재 프레임(226) 및 상기 모델 정보 데이터의 하나 이상의 이전 프레임들(232)에 기초하여 차이 정보 데이터를 생성하는 단계; 및
상기 차이 정보 데이터에 기초하여 상기 낮은-레이턴시 비디오(250)를 생성하는 단계를 포함하는, 낮은-레이턴시 비디오를 생성하는 방법. - 제 6 항에 있어서,
상기 낮은 레이턴시-비디오를 생성하는 단계는,
비디오 데이터의 상기 선택 부분에 대해 추정된 정보 데이터를 생성하기 위해 상기 차이 정보 데이터에 기초하여 상기 원래 비디오 데이터의 상기 선택 부분을 추정하는 단계; 및
상기 하나 이상의 프로세서들에 의해, 상기 낮은-레이턴시 비디오를 생성하기 위해 상기 원래 비디오 데이터와 상기 추정된 정보 데이터를 조합하는 단계를 추가로 포함하고,
상기 모델 정보 데이터는 이미지 화소 위치들에 의해 한정된 하나 이상의 중첩하지 않은 모델 영역들을 포함하는, 낮은-레이턴시 비디오를 생성하는 방법. - 시스템에 있어서,
네트워크(204)의 제 1 채널(206)을 통해 송신을 위한 원래 비디오 데이터(202)를 생성하도록 구성된 카메라(200); 및
네트워크의 제 2 채널(208)을 통해 송신을 위한 모델 정보(220)를 생성하기 위해, 프레임마다에 기초하여 상기 원래 비디오 데이터의 선택 부분을 모델링하도록 구성된 모델러(218)를 포함하고,
상기 제 2 채널은 상기 제 1 채널보다 높은 서비스 품질(QoS)을 갖는, 시스템. - 디바이스에 있어서,
모퍼(morpher; 230); 및
제어기(230)로서, 상기 모퍼가
원래 비디오 데이터(202) 및 상기 원래 비디오 데이터의 선택 부분의 프레임마다에 기초한 모델 정보인 모델 정보 데이터(220)를 수신하게 하고,
상기 모델 정보 데이터의 현재 프레임(226) 및 상기 모델 정보 데이터의 하나 이상의 이전 프레임들(232)에 기초하여 차이 정보 데이터를 생성하게 하고,
상기 차이 정보 데이터에 기초하여 낮은-레이턴시 비디오(250)를 생성하게 하도록 구성되는, 상기 제어기를 포함하는, 디바이스. - 제 9 항에 있어서,
상기 제어기는 또한,
비디오 데이터의 상기 선택 부분에 대해 추정된 정보 데이터를 생성하기 위해 상기 차이 정보 데이터에 기초하여 상기 원래 비디오 데이터의 상기 선택 부분을 추정하고,
상기 낮은-레이턴시 비디오를 생성하기 위해 상기 추정된 정보 데이터를 상기 원래 비디오 데이터와 조합하도록 구성되는, 디바이스.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/188,868 | 2014-02-25 | ||
US14/188,868 US9258525B2 (en) | 2014-02-25 | 2014-02-25 | System and method for reducing latency in video delivery |
PCT/US2015/012117 WO2015130412A1 (en) | 2014-02-25 | 2015-01-21 | System and method for reducing latency in video delivery using model |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160124891A true KR20160124891A (ko) | 2016-10-28 |
Family
ID=52463166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167026325A KR20160124891A (ko) | 2014-02-25 | 2015-01-21 | 모델을 사용하여 비디오 전달시 레이턴시를 감소시키는 방법 및 시스템 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9258525B2 (ko) |
EP (1) | EP3111646A1 (ko) |
JP (1) | JP6328784B2 (ko) |
KR (1) | KR20160124891A (ko) |
CN (1) | CN106105211A (ko) |
WO (1) | WO2015130412A1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018105771A1 (ko) * | 2016-12-07 | 2018-06-14 | 주식회사 이에스엠연구소 | 실시간 동영상 재생파일 전송장치 및 방법 |
KR20180129339A (ko) * | 2017-05-26 | 2018-12-05 | 라인 가부시키가이샤 | 영상 압축 방법 및 영상 복원 방법 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10708545B2 (en) * | 2018-01-17 | 2020-07-07 | Duelight Llc | System, method, and computer program for transmitting face models based on face data points |
US10225516B2 (en) | 2017-06-23 | 2019-03-05 | Cisco Technology, Inc. | Latency mitigation through intelligent extrapolation in multimedia systems |
US11200786B1 (en) | 2018-04-13 | 2021-12-14 | Objectvideo Labs, Llc | Canine assisted home monitoring |
CN109302598B (zh) * | 2018-09-30 | 2021-08-31 | Oppo广东移动通信有限公司 | 一种数据处理方法、终端、服务器和计算机存储介质 |
GB2584637B (en) * | 2019-06-03 | 2021-12-29 | Surrey Satellite Tech Ltd | Communication system and method |
US11373406B2 (en) * | 2019-06-28 | 2022-06-28 | Intel Corporation | Transmission, caching, and searching of video streams based on frame dependencies and content |
CN112394810A (zh) * | 2019-08-19 | 2021-02-23 | 富士施乐株式会社 | 捕获和渲染远程呈现文档图像上的手部骨架的系统和方法 |
JP2021033454A (ja) * | 2019-08-20 | 2021-03-01 | 富士ゼロックス株式会社 | テレプレゼンス用の文書画像上に手の骨格を取得、描画するシステムと方法、計算実行方法、プログラム、および計算機システム |
WO2021099003A1 (en) * | 2019-11-18 | 2021-05-27 | Wolfprint 3D Oü | Methods and system for generating 3d virtual objects |
JP7017596B2 (ja) * | 2020-03-17 | 2022-02-08 | 本田技研工業株式会社 | 情報処理装置、情報処理システム、情報処理方法およびプログラム |
CN112052074B (zh) * | 2020-09-29 | 2024-05-03 | 上海兆芯集成电路股份有限公司 | 处理器建模系统及处理器建模方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02196585A (ja) * | 1989-01-26 | 1990-08-03 | Ricoh Co Ltd | 音声信号通信装置 |
JPH05316491A (ja) * | 1992-05-07 | 1993-11-26 | Seiko Epson Corp | 顔画像符号化方式 |
US5861920A (en) | 1996-11-08 | 1999-01-19 | Hughes Electronics Corporation | Hierarchical low latency video compression |
US7084877B1 (en) | 2000-06-06 | 2006-08-01 | General Instrument Corporation | Global motion estimation for sprite generation |
US6774869B2 (en) * | 2000-12-22 | 2004-08-10 | Board Of Trustees Operating Michigan State University | Teleportal face-to-face system |
US6771303B2 (en) * | 2002-04-23 | 2004-08-03 | Microsoft Corporation | Video-teleconferencing system with eye-gaze correction |
US7106358B2 (en) * | 2002-12-30 | 2006-09-12 | Motorola, Inc. | Method, system and apparatus for telepresence communications |
WO2010042486A1 (en) * | 2008-10-07 | 2010-04-15 | Euclid Discoveries, Llc | Feature-based video compression |
JP2008521347A (ja) * | 2004-11-17 | 2008-06-19 | ユークリッド・ディスカバリーズ・エルエルシー | ビデオデータを処理する装置および方法 |
US9030486B2 (en) * | 2008-08-22 | 2015-05-12 | University Of Virginia Patent Foundation | System and method for low bandwidth image transmission |
US8502859B2 (en) * | 2010-04-27 | 2013-08-06 | Lifesize Communications, Inc. | Determining buffer size based on forward error correction rate |
ES2675802T3 (es) | 2011-02-18 | 2018-07-12 | Alcatel Lucent | Procedimiento y aparato para transmitir y recibir un flujo de video panorámico |
US8917322B2 (en) | 2011-04-01 | 2014-12-23 | Lockheed Martin Corporation | Method and apparatus for digital video latency reduction by real-time warping |
CN104285411A (zh) * | 2012-06-11 | 2015-01-14 | 英特尔公司 | 在多个无线电链路上分发分层多媒体流 |
-
2014
- 2014-02-25 US US14/188,868 patent/US9258525B2/en not_active Expired - Fee Related
-
2015
- 2015-01-21 KR KR1020167026325A patent/KR20160124891A/ko not_active Application Discontinuation
- 2015-01-21 JP JP2016553898A patent/JP6328784B2/ja not_active Expired - Fee Related
- 2015-01-21 WO PCT/US2015/012117 patent/WO2015130412A1/en active Application Filing
- 2015-01-21 EP EP15703368.9A patent/EP3111646A1/en not_active Withdrawn
- 2015-01-21 CN CN201580009931.0A patent/CN106105211A/zh not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018105771A1 (ko) * | 2016-12-07 | 2018-06-14 | 주식회사 이에스엠연구소 | 실시간 동영상 재생파일 전송장치 및 방법 |
KR20180129339A (ko) * | 2017-05-26 | 2018-12-05 | 라인 가부시키가이샤 | 영상 압축 방법 및 영상 복원 방법 |
KR20210060411A (ko) * | 2017-05-26 | 2021-05-26 | 라인 가부시키가이샤 | 영상 압축 방법 및 영상 복원 방법 |
US11039155B2 (en) | 2017-05-26 | 2021-06-15 | Line Corporation | Image compression method and image decompression method |
US11463718B2 (en) | 2017-05-26 | 2022-10-04 | Line Corporation | Image compression method and image decompression method |
Also Published As
Publication number | Publication date |
---|---|
US20150244980A1 (en) | 2015-08-27 |
US9258525B2 (en) | 2016-02-09 |
JP2017512420A (ja) | 2017-05-18 |
EP3111646A1 (en) | 2017-01-04 |
WO2015130412A1 (en) | 2015-09-03 |
JP6328784B2 (ja) | 2018-05-23 |
CN106105211A (zh) | 2016-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20160124891A (ko) | 모델을 사용하여 비디오 전달시 레이턴시를 감소시키는 방법 및 시스템 | |
TWI847965B (zh) | 用於數位實境之影像壓縮 | |
US9270941B1 (en) | Smart video conferencing system | |
CN111567052B (zh) | 用于将vr 360视频下发给远程终端用户的可缩放fov+ | |
US10567464B2 (en) | Video compression with adaptive view-dependent lighting removal | |
US10341650B2 (en) | Efficient streaming of virtual reality content | |
JP6501904B2 (ja) | 球面ビデオのストリーミング | |
JP6410918B2 (ja) | パノラマ映像コンテンツの再生に使用するシステム及び方法 | |
KR102343700B1 (ko) | 독립적으로 인코딩된 배경 업데이트들에 기초한 비디오 송신 | |
EP2999221A1 (en) | Image processing method and device | |
CN107211081B (zh) | 基于独立编码的背景更新的视频传输 | |
US9148463B2 (en) | Methods and systems for improving error resilience in video delivery | |
CN103460242A (zh) | 信息处理装置、信息处理方法、以及位置信息的数据结构 | |
CN108370416A (zh) | 从视频流生成输出视频 | |
TWI848978B (zh) | 影像合成 | |
JP2019537294A (ja) | 全方位ビデオのための補正された動き補償方法および装置 | |
KR101629746B1 (ko) | 움직임 보상 기반 비디오 코딩을 보조하는 깊이 정보의 사용 | |
US9967581B2 (en) | Video quality adaptation with frame rate conversion | |
US20210192681A1 (en) | Frame reprojection for virtual reality and augmented reality | |
TWI559748B (zh) | 用於視訊編解碼器的延伸預測模式及效能之方法及系統 | |
US20170155967A1 (en) | Method and apparatus for facilitaing live virtual reality streaming | |
CN109862019B (zh) | 数据处理方法、装置以及系统 | |
EP3639517B1 (en) | Intra-prediction for video coding using perspective information | |
Ilola et al. | Real-time Delivery of Visual Volumetric Video-based Coding Data | |
US11910034B2 (en) | Network-based assistance for receiver processing of video data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |