KR101642212B1 - 패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템 - Google Patents

패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템 Download PDF

Info

Publication number
KR101642212B1
KR101642212B1 KR1020147027169A KR20147027169A KR101642212B1 KR 101642212 B1 KR101642212 B1 KR 101642212B1 KR 1020147027169 A KR1020147027169 A KR 1020147027169A KR 20147027169 A KR20147027169 A KR 20147027169A KR 101642212 B1 KR101642212 B1 KR 101642212B1
Authority
KR
South Korea
Prior art keywords
pixel data
video
auxiliary information
video quality
video encoder
Prior art date
Application number
KR1020147027169A
Other languages
English (en)
Other versions
KR20140140052A (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 인텔 코포레이션
Publication of KR20140140052A publication Critical patent/KR20140140052A/ko
Application granted granted Critical
Publication of KR101642212B1 publication Critical patent/KR101642212B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/66Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving data partitioning, i.e. separation of data into packets or partitions according to importance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2404Monitoring of server processing errors or hardware failure

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

시스템 및 방법은, 비디오 인코더에 의해, 복수의 픽셀 데이터 블록과 연관된 보조 정보(side information)를 생성하되, 픽셀 데이터 블록이 네트워크에서 손실되는 경우, 상기 보조 정보는 각 픽셀 데이터 블록에 비디오 품질 영향(a video quality impact)의 표시를 제공한다.

Description

패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템{METHOD AND SYSTEM FOR GENERATING SIDE INFORMATION AT A VIDEO ENCODER TO DIFFERENTIATE PACKET DATA}
네트워크를 통해 비디오 및 멀티미디어 데이터를 전송하도록 비디오 시스템이 어느 정도 개발되었다. 일부 실례에서, 네트워크는 유선 또는 무선일 수 있으며, 또한 텔레비전 방송, 위성, 셀룰러, 및 WiFi 네트워크를 포함할 수 있다. 비디오 경험(video experience)에 있어서 중요한 것은 사용자가 보기 위해 수신되는 비디오의 품질이다. 비디오 전송의 수신단에서 수신된 비디오의 부분들이 데이터의 전송시에 손실되는 경우(예를 들어, 손실이 많은 네트워크), 비디오 열화로 인해 사용자의 비디오 시청 경험은 악화될 수 있다.
비디오 전송 링크의 수신단에서 조정을 행함으로써 손실된 비디오 데이터를 보상하는 데 다수의 기술들이 제안되었다. 다수의 관점에서, 이러한 이전의 기술들은 비디오 전송 채널을 통해 전송된 데이터에 대한 평균 패킷 손실률을 고려함으로써 또한 전송된 비디오에 대한 평균 패킷 손실률에 기초하여 그 평균 패킷 손실률을 보상함으로써 동작한다.
비디오 전송 채널에 대한 평균 패킷 손실률을 고려하는 기술은 몇몇의 광범위한 비디오 품질의 문제까지 다루거나 혹은 다루지 않을 수 있는 반면에, 이러한 방법 및 시스템은 통상적으로 비디오의 다양한 전송 형태에 대해 맞추어져 있지 않거나 대응하지 못한다. 따라서, 전송된 데이터에 특정된 정보에 기초하여 다른 데이터 및 비디오 전송의 효과 및 효율성을 개선하는 것이 중요하다고 보여진다.
여기서의 본 개시물의 측면은 예로써 설명되는 것이며 첨부 도면으로 제한되는 것은 아니다. 제한이 아닌 설명의 단순성 및 명확성을 위해, 도면에 도시된 측면은 반드시 일정한 비율로 그려지진 않는다. 또한, 적절한 경우에, 대응 또는 유사한 요소를 표시하기 위해 참조 라벨들이 도면들 중에서 반복되었다.
도 1은 여기서의 실시예에 따른 프로세스의 흐름도이다.
도 2는 일 실시예에 따른 프로세스의 흐름도이다.
도 3은 실시예에 따른 시스템의 개략적인 블록도이다.
도 4는 여기서의 일부 실시예에 따른 비디오 장면의 예시적 그림이다.
이하의 기재는 비디오 비트스트림의 각 패킷의 손실로 인한 패킷 손실 영향을 추정하는 메카니즘을 제공함으로써 비디오 전송의 효과 및 효율을 개선하는 프로세스 및 동작을 지원할 수 있는 방법 및 시스템을 설명한다. 여기서의 개시물은 프로세스 및 동작을 구현하는 그러한 시스템에 관한 다수의 특정 세부사항을 제공한다. 그러나, 본 개시물의 실시예들이 그러한 특정 세부사항 없이 실시될 수 있음을 당업자는 이해할 것이다. 따라서, 일부 예에서 제어 메카니즘 및 완전한 소프트웨어 인스트럭션 시퀀스와 같은 측면은 본 개시물의 다른 측면을 모호하게 하지 않기 위해서 상세하게 나타내지 않는다. 당업자는 여기에 포함된 기재에 주어지는 과도한 실험 없이 적절한 기능을 구현할 수 있을 것이다.
"일 실시예", "일부 실시예들", "일시예", "예시적 실시예", "실례", "일부 실례들"에 대한 본 개시물에서의 언급은 설명되는 실시예가 특정한 특징, 구조, 또는 특성을 포함할 수 있지만, 모든 실시예가 반드시 특정한 특징, 구조, 또는 특성을 포함하지 않을 수도 있음을 나타낸다. 게다가, 이러한 구절들은 반드시 동일한 실시예를 지칭하지는 않는다. 또한, 특정한 특징, 구조, 또는 특성이 실시예와 관련하여 설명되는 경우, 명시적으로 설명되거나 또는 설명되지 않는 다른 실시예와 관련하여 이러한 특징, 구조, 또는 특성에 영향을 미치는 것은 당업자에게 자명한 것이다.
여기서의 일부 실시예들은 하드웨어, 펌웨어, 소프트웨어, 또는 그것들의 임의의 조합으로 구현될 수 있다. 실시예들은 하나 이상의 프로세서에 의해 판독 및 실행될 수 있는 머신 판독가능 매체에 저장된 실행가능 인스트럭션으로서 구현될 수도 있다. 머신 판독가능 저장 매체는 머신(예를 들어, 컴퓨팅 장치)에 의해 판독가능한 형태로 정보를 저장하기 위한 임의의 유형의 비일시적 메카니즘을 포함할 수 있다. 일부 측면들에서, 머신 판독가능 저장 매체는 ROM, RMA, 자기 디스크 저장 매체, 광 저장 매체, 플래시 메모리 장치, 및 전기 및 광학 형태의 신호들을 포함할 수 있다. 펌웨어, 소프트웨어, 루틴, 및 인스트럭션이 소정의 동작들을 수행하는 것으로 여기서 설명될 수 있지만, 이러한 기재는 단지 편의를 위한 것이며 또한 이러한 동작들이 사실상 펌웨어, 소프트웨어, 루틴, 및 인스트럭션을 실행하는 컴퓨팅 장치, 프로세서, 제어기, 및 다른 장치로부터 발생하는 것임을 이해해야 한다.
도 1은 여기서의 실시예에 따른 프로세스(100)의 예시적인 흐름도이다. 프로세스(100)는 인코딩된 비디오 비트스트림(여기서는 "비디오" 또는 "비디오 비트스트림"이라고도 불림)과 연관된 보조 정보(side information)를 제공하기 위한 메카니즘 또는 기술을 제공할 수 있다. 여기서 사용되는 바와 같이, 보조 정보는 인코딩된 비디오 비트스트림에 관련될 수 있고 또한 임의의 추가적인 정보 또는 데이터를 포함할 수 있다. 일부 측면들에서, 보조 정보는 비디오 인코더에서 생성될 수 있고 및 상기 인코딩된 비디오 비트스트림과 연관될 수 있다. 일부 실시예들에서, 비디오 인코더에 의해 인코딩된 비디오 시퀀스는 그 인코딩된 비디오 비트스트림을 위해 비디오 인코더에 의해 생성된 보조 정보를 가질 수 있다.
동작 105에서, 인코딩된 비디오 비트스트림을 포함하는 복수의 픽셀 데이터 블록이 생성된다. 복수의 픽셀 데이터 블록은 비디오 인코더에 의해 생성될 수 있다. 생성된 픽셀 데이터 블록은 하나 이상의 비디오 전송 프로토콜에 따라 데이터 패킷으로서 구성될 수 있다. 패킷의 사이즈 및 구조는 사용되는 특정한 비디오 전송 프로토콜에 부분적으로 기초할 수 있다. 복수의 픽셀 데이터 블록은 통상적으로 비디오 수신기로의 전송 채널을 거쳐 네트워크 상에서 전송될 수 있다. 비디오 수신기는 인코딩된 비디오 비트스트림을 디코딩하는 비디오 디코더를 포함할 수 있다.
비디오 인코더에 의해 인코딩된 비디오 시퀀스는 그 비디오 시퀀스를 위해 비디오 인코더에 의해 생성된 보조 정보를 가질 수 있다. 동작 110에서, 복수의 픽셀 데이터 블록과 연관된 보조 정보가 생성된다. 일부 측면들에서, 보조 정보는적어도 부분적으로 그와 연관되는 비디오 시퀀스를 기술할 수 있다. 일부 측면들에서, 적어도 부분적으로 보조 정보 내의 데이터에 기초하여 비디오를 전송 및 처리하는 것을 포함해서, 인코딩된 비디오 비트스트림을 강화하거나 또는 처리하는 것에 보조 정보가 사용될 수 있다. 일부 측면들에서, 비디오의 처리는 전송 링크의 수신단에서 디코더에 의해 수행되는 처리 동작들을 포함할 수 있다. 일부 실시예들에서, 보조 정보는 관련 비디오의 헤더의 일부를 형성하거나 포함할 수 있고, 메타데이터 또는 다른 데이터 구조들을 포함할 수 있다.
일반적으로, 여기서의 보조 정보는 인코딩된 비디오 비트스트림 이외의 임의의 추가적인 정보를 포함할 수 있다. 일부 측면들에서, 보조 정보는 비디오와 함께 캡슐화되거나(예를 들어, 전송된 비디오의 헤더 내에 삽입되거나) 또는 플랫폼 상의 다른 기능 블록 또는 동작 블록과 보조 정보를 공유함으로써 플랫폼 레벨에서 제공될 수 있다. 일부 측면들에서, 보조 정보는 인코딩된 비디오 비트스트림을 기술하고 그에 연관된 메타데이터를 포함할 수 있다.
도 2는 여기서의 일부 실시예들에 따른 프로세스(200)의 흐름도이다. 프로세스(200)는 인코딩된 비디오 비트스트림으로부터 비디오의 개개의 패킷 손실의 영향을 구별하는 일부 실시예들에 관한 것이다. 네트워크 상에서 전송된 비디오 비트스트림은 비디오 패킷의 손실로 인해 품질 열화를 경험할 수 있다. 상이한 형태의 패킷 손실이 비디오 품질 열화에 상이한 영향을 가질 수 있음을 유의한다. 일부 실시예들에서, 본 개시물은 개개의 패킷 손실의 영향을 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 것을 포함한다. 일부 측면들에서, 다수의 상이한 우선순위 레벨로 비디오 패킷을 분류하는 데 개개의 패킷에 대한 추정 결과가 사용될 수 있다. 상이한 우선순위 분류는 손실이 많은 네트워크 상에서 엔드 투 엔드 비디오 품질을 개선하기 위해 적응형 채널 선택과 같은 계층간 최적화(cross-layer optimization) 기술과 통합될 수 있다.
도 2의 흐름도는 여기서의 일부 측면들에 따라 비디오 인코더의 개략적인 블록도를 참조하여 이해될 수 있다. 일부 실시예들에서, 각각의 패킷 손실에 의해 야기되는 비디오 품질 열화를 추정하기 위해 3개의 기능 구성요소가 비디오 인코더에 포함될 수 있다. 따라서, 도 2는 도 3에 도시되는 바와 같은 비디오 인코더(300)와 함께 설명될 것이다. 시스템(300)은 하드웨어, 소프트웨어, 펌웨어 및 이들의 조합으로서 구현될 수 있다. 일부 실시예들에서, 시스템(300)은 도 3에 도시된 기능 모듈을 구현하기 위한 프로세서 및 관련 메모리(도시되지 않음)를 포함한다.
동작 205에서, 비디오가 수신된다. 비디오는 프로세스(200)의 다른 동작들을 구현하기 위한 기능 구성요소를 포함하는 비디오 인코더(300)에 의해 수신될 수 있다. 비디오 시퀀스의 인코딩된 비트스트림의 전송시에 손실된 매크로블록(MB)을 은닉하는 디코더에서 에러 은닉 블록이 일반적으로 구현될 수 있음을 유의한다. 여기서의 일부 실시예들에서, 에러 은닉 모듈은, 동작 210에서 표현되는 바와 같이, 인코딩 프로세스시에 각 MB에서의 은닉된 픽셀 값들을 추정하는 인코더에 포함될 수 있다. 특히, 비디오 인코더(300)는 개개의 비디오 패킷이 비디오 비트스트림의 전송시에 손실되었으면 비디오 패킷이 어떻게 은닉될 것인지를 계산하는 에러 은닉 모듈(310)을 포함할 수 있다.
예로서, 손실된 픽셀을 은닉하기 위한 에러 은닉 방법으로서 프레임 복제 은닉이 사용되면, 손실된 픽셀은 이전 프레임 내의 배열된 픽셀로부터 복제됨으로써 은닉된다. 즉, 은닉 픽셀 값
Figure 112016029770657-pct00001
(프레임 n 내의 픽셀 i)=
Figure 112016029770657-pct00002
이고, 여기서
Figure 112016029770657-pct00003
는 프레임 n-1(즉, 이전 프레임) 내의 픽셀 i에 대해 압축된 픽셀 값이며 프레임 버퍼로부터 획득될 수 있는 것이다.
동작 215에서, 왜곡 계산이 결정된다. 일부 실시예들에서, 동작 210의 추정된 은닉 픽셀 값 및 압축된 픽셀 값에 기초하여, 패킷 손실에 의해 야기된 왜곡에 대해 픽셀 레벨에서 값이 계산된다. 즉, (현재의) 비디오 패킷이 손실되었으면 왜곡이 도입될 것을 결정하기 위해 계산이 이루어진다. 예컨대, 왜곡 계산 모듈(315)은 은닉된 비디오 간의 왜곡을 계산할 수 있다. 예로서, 상이한 왜곡 측정 기준(distortion metrics)이 여기서 적용되어 왜곡을 계산할 수 있다. 일부 실시예들에서, 평균 제곱 오차(MSE; mean square error)가 적용된다. 이러한 실시예들에서, 프레임 n 내의 픽셀 i에 대한 왜곡은
Figure 112014091899263-pct00004
이다. MS-SSIM(Multi-scale Structural SIMilarity) 및 VQM(Video Quality Metric)뿐만 아니라 다른 참조 및 비참조 측정 기준을 포함해서, 다른 왜곡 측정 기준이 사용될 수도 있다.
동작 215에서, 현재의 비디오 패킷의 손실이 미래의 비디오 프레임 품질에 얼마나 영향을 미칠지에 대한 추정이 결정된다. 도 3을 참조하면, 패킷화 모듈(305)로부터의 출력이 패킷 손실 영향 추정 모듈(320)에 의해 수신됨을 알 수 있다. 따라서, 비디오 인코더는 어떤 MB가 비디오 패킷으로 인코딩될지를 안다. 따라서, 현재의 비디오 프레임의 각각의 패킷 손실에 대한 왜곡이 예를 들어 수학식
Figure 112014091899263-pct00005
에 의해 계산될 수 있고, 여기서 픽셀 i는 패킷 p에서 인코딩된 픽셀 값을 나타내고, 패킷 p는 프레임 n 내의 MB를 포함한다.
일부 실시예들에서, 프레임 n의 프레임 형태 및 프레임 인덱스 역시 인코더에게 알려져 있다. 이와 같이, 비디오의 픽쳐 그룹(GOP; group of pictures)에 대한 개개의 패킷 손실 영향은 상기 정보 및 에러 전파 패턴에 기초하여 추정될 수 있다. 예컨대, I(즉, "인트라 코딩된(intra-coded) 픽쳐") 또는 P(즉, "예측된(predicted) 픽쳐) 프레임에 있어서, 하나의 프레임 내의 에러들은 일반적으로 GOP 내의 모든 프레임에 전파되는 반면에, B(즉, "쌍방향 예측된(Bi-predictive) 픽쳐") 프레임에 있어서, 패킷 손실은 단지 현재 프레임에서의 왜곡을 야기한다. 본 개시물에서, GOP에 대한 패킷 손실 영향을 추정하기 위해 모델이 구축된다. 모델은, 하나의 프레임 내의 에러들이 GOP 내의 이후의 프레임들로 일정하게 전파될 것이고 또한 P 프레임에서의 패킷 손실이 인접한 B 프레임에 대한 상당한 왜곡을 야기한다고 가정한다. 따라서, GOP로의 패킷 p의 패킷 손실 영향은
Figure 112014091899263-pct00006
에 의해 추정될 수 있고, 여기서 ptype은 패킷 p의 프레임 형태이고, pindex는 패킷 p의 GOP에서의 프레임 인덱스이고, kp
Figure 112014091899263-pct00007
와 같이 정의되는 손실된 패킷 p에 의해 영향을 받는 프레임의 개수이고, Doffset은 인접한 B 프레임에 대한 왜곡을 캡처하기 위한 상수이다:
Figure 112014091899263-pct00008
일부 실시예들에서, 여기서의 패킷 손실 영향 추정을 결정하는 데 사용되는 특정한 알고리즘은, 예를 들어 에러 은닉 모듈(310)에 의해 사용되는 다른 에러 은닉 기술에 대응하도록 변화될 수 있다. 그러나, 여기서 개시되는 일반적인 프레임워크는 다양한 용도에 걸쳐 적용가능하다.
패킷 손실 영향이 각 패킷에 대해 계산되거나 추정됨을 유의한다. 따라서, 패킷 손실 영향 추정 모듈(320)에 의해 출력되는 보조 정보는 패킷 손실 가시성(visibility)에 기초하여 각각의 비디오 패킷에 대한 중요성의 표시를 제공한다.
프로세스 220으로 돌아가서, 프로세스는 동작 220으로 진행할 수 있다. 동작 220에서, 동작 215에서 결정된 개개의 패킷 손실 영향은 비디오 비트스트림의 전송시에 보고되고, 저장되며, 또는 사용될 수 있다. 개개의 패킷 손실 영향은, 비디오의 전송을 동적으로 조절하는 일부 실례에서, 손실된 비디오 패킷으로부터 발생하는 비디오 열화를 최소화하거나 없애기 위한 방법의 일환으로 사용될 수 있다. 따라서, 비디오 전송 방법은 수신기단에서의 비디오 품질에 상당히 영향을 미치는 동작들 205-215에서 결정된 비디오 패킷들의 우선순위를 정하는 것으로 구현될 수 있다.
출원인은 여기에 개시된 방법들에 기초하여 추정치를 결정하고 또한 상이한 비트 레이트 하에서 공개적으로 이용가능한 "파크런(Parkrun)", "스톡홀롬(Stockholm)" 및 "실즈(Shields)" 비디오 시퀀스를 포함한 3개의 비디오 시퀀스에 대한 추정의 성능을 평가함으로써 그 방법들의 효율성을 실현하였다. 사용되는 비디오 시퀀스는 1280×720의 비디오 해상도 및 30fps의 프레임 레이트를 가졌다. Vanguard H.264 Codec은 30의 GOP 사이즈를 갖는 IBPBP 코딩 구조의 비디오를 인코딩하는 데 사용되었다. PSNR(peak signal-to-noise ratio) 및 MS-SSIM(Multi-Scale Structural SIMilarity)은 추정 방법에서 비디오 품질 척도로 사용되었다. 2.277Mbps로 스톡홀롬 인코딩된 비디오의 제 1 GOP에 대한 추정된 패킷 손실 영향과 실제의 패킷 손실 영향을 비교하면, 여기서의 추정 방법은 정확히 실제의 패킷 손실 영향과 일치하고, 여기서 PSNR 및 MS-SSIM 추정 에러는 각각 0.14 및 0.0008이다.
이하의 표 1(a) 및 1(b)는 상이한 비트 레이트 하에서 스톡홀롬, 실즈 및 파크런 비디오 시퀀스에 대한 평균 추정 에러(즉, 실제 결과와 추정된 결과 사이의 평균 절대값 차(mean absolute difference)를 포함한다. 표 1(a)는 비디오 품질 기준으로서 PSNR을 사용하고, 표 1(b)는 비디오 품질 기준으로서 MS-SSIM을 사용한다. 표 1(a) 및 1(b)에서 증명되는 바와 같이, 여기에 개시된 방법 및 프로세스에 의해 결정되는 추정은 실제 관찰되는 손실과 매우 바람직하게 비교된다.
[표 1(a)]
Figure 112014091899263-pct00009
[표 1(b)]
Figure 112014091899263-pct00010
일부 측면들에서, 여기서의 방법 또는 프로세스에 의해 결정된 패킷 손실 영향 추정은 네트워크의 비디오 전송을 개선 또는 향상시키는 데 사용될 수 있다. 일부 실시예들에서, 예를 들어 비디오 인코더(300)의 출력은 320에서 엔드 유저의 비디오 품질 경험을 개선하기 위한 비디오 적응 방식에 사용될 수 있다.
본 개시물의 방법 및 시스템의 효율성을 검증하기 위한 예로서, 여기서의 패킷 손실 영향 추정을 적응형 채널 선택과 통합하는 사용 사례가 제시된다. 본 예에서, 0%, 1% 및 5%의 패킷 손실률을 갖는 3개의 채널이 비디오 전송에 이용가능하다고 가정된다. 기본적인 방식에서, 3개의 이용가능한 채널 각각은 비디오 패킷의 3분의 1의 전송을 위해 랜덤하게 선택된다. 여기서의 패킷 손실 영향 추정을 이용하는 적응형 채널 선택 방식(예를 들어, 도 2의 동작 220을 포함할 수 있는 프로세스)에 의하면, 비디오 패킷은 여기서의 패킷 손실 영향 방식에 의해 추정되는 패킷 손실 영향에 기초하여 3개의 우선순위 레벨로 동등하게 나누어질 수 있다. 적응형 채널 선택 방식은, 보다 낮은 우선순위 레벨에 할당될 보다 작은 품질 영향을 갖는 패킷의 우선순위를 매기는 것이 아니라 보다 높은 우선순위 레벨에 패킷을 할당함으로써 보다 큰 품질 영향을 갖는 패킷의 우선순위를 매길 수 있다. 비디오 패킷의 우선순위를 매긴 후에, 비디오 패킷은 그들의 우선순위 레벨에 기초하여 3개의 상이한 채널을 통해 전송될 수 있다. 일부 실시예들에서, 보다 높은 우선순위의 비디오 패킷은 보다 낮은 패킷 손실률을 갖는 채널을 통해 전송될 수 있다.
이러한 사용 사례에서, 스톡홀롬(300 프레임) 시퀀스는 기본적인 방식 및 적응형 채널 선택 방식을 이용하여 3개의 채널을 통해 인코딩 및 전송된다. 기본적인 방식 및 제안된 방식에서의 20번의 실행에 걸친 평균 PSNR은 각각 30.19dB 및 31.30dB이다. 따라서, 여기에 개시된 패킷 손실 영향 추정은 엔드 투 엔드 비디오 품질을 개선하기 위해 채널 적응 방법과 통합될 수 있다고 보여진다.
도 4(a) 및 4(b)는 기본적인 방식 및 제안된 적응형 채널 선택 방식으로부터 발생되는 스크린 샷을 각각 나타낸다. 예컨대, 적응형 채널 선택 방식을 이용하여 획득된 도 4(b)의 비디오(비디오 전송의 향상을 위해 보조 정보가 생성 및 사용됨)가 도 4(a)(비디오 전송의 향상을 위해 보조 정보가 생성 또는 사용되지 않음)와 비교해서 열화되어 있지 않기 때문에, 제안된 적응형 채널 방식이 사용자의 비디오 품질 경험을 향상시킴을 스크린 샷이 증명한다.
여기서 논의된 모든 시스템 및 프로세스는 하나 이상의 컴퓨터 판독가능 매체에 저장된 프로그램 코드로 구현될 수 있다. 예컨대, 이러한 매체는 플로피 디스크, CD-ROM, DVD-ROM, 한 종류의 이상의 "디스크", 자기 테이프, 메모리 카드, 플래시 드라이브, 고체 상태 드라이브, 및 고체 상태 RAM, ROM 저장 유닛, 및 다른 비일시적 매체를 포함할 수 있다. 또한, 범용, 전용, 및 분산 컴퓨팅 장치, 프로세서, 프로세싱 코어, 및 마이크로프로세서를 포함해서, 여기에 개시 또는 참조되는 시스템 및 장치(예를 들어, 시스템(200))는 하드웨어, 소프트웨어, 및 펌웨어를 포함할 수 있다. 일부 측면들에서, 여기에 개시된 프로세스 및 방법은 서비스로서 전달 및 제공될 수 있다. 따라서, 실시예들은 하드웨어 및 소프트웨어의 임의의 특정한 조합으로 제한되지 않는다.
실시예들은 오로지 설명을 위해서 여기에 설명되었다. 실시예들이 설명된 것들로 제한되지 않지만, 첨부된 청구항들의 정신 및 범위만으로 제한되는 변형물 및 대체물로 실시될 수 있음을 당업자는 본 기재로부터 인지할 것이다.

Claims (19)

  1. 비디오 인코더에서 보조 정보를 생성하는 방법으로서,
    비디오 인코더에 의해, 복수의 픽셀 데이터 블록과 연관된 보조 정보(side information)를 생성하는 단계를 포함하되,
    상기 보조 정보는 각 픽셀 데이터 블록에 비디오 품질 영향(a video quality impact)의 표시를 제공하고,
    상기 비디오 품질 영향의 표시는 상기 연관된 픽셀 데이터 블록의 손실로 인한 추정된 비디오 품질 저하를 식별하며,
    상기 추정된 비디오 품질 저하의 판단은,
    상기 비디오 인코더에 의한 인코딩 프로세스에서 상기 복수의 픽셀 데이터 블록에 대한 은닉된(concealed) 픽셀 값을 추정하는 것과,
    상기 추정된 은닉된 픽셀 값에 기초하여, 상기 복수의 픽셀 데이터 블록 각각의 손실에 의해 야기되는 왜곡을 계산하는 것과,
    현재의 픽쳐 그룹을 포함하는 상기 복수의 픽셀 데이터 블록 각각에 대한 상기 계산된 왜곡에 기초하여 상기 현재의 픽쳐 그룹에 대한 왜곡을 계산하는 것을 포함하는
    비디오 인코더에서 보조 정보를 생성하는 방법.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 픽쳐 그룹은 I-프레임으로 시작하는 연속적인 비디오 프레임들의 그룹인
    비디오 인코더에서 보조 정보를 생성하는 방법.
  5. 제 1 항에 있어서,
    각 픽셀 데이터 블록에 대한 상기 보조 정보 내의 상기 비디오 품질 영향의 표시에 기초하여 상기 복수의 픽셀 데이터 블록 각각에 복수의 우선순위 레벨 중 하나를 할당하는 단계를 더 포함하는
    비디오 인코더에서 보조 정보를 생성하는 방법.
  6. 제 5 항에 있어서,
    보다 큰 비디오 품질 영향을 갖는 픽셀 데이터 블록은 보다 낮은 비디오 품질 영향을 갖는 픽셀 데이터 블록보다 높은 우선순위 레벨을 할당받는
    비디오 인코더에서 보조 정보를 생성하는 방법.
  7. 제 1 항에 있어서,
    각 픽셀 데이터 블록에 대한 상기 보조 정보 내의 상기 비디오 품질 영향의 표시에 적어도 부분적으로 기초하여, 적응형 채널 선택 프로세스를 이용해 비디오 비트스트림을 전송하는 단계를 더 포함하는
    비디오 인코더에서 보조 정보를 생성하는 방법.
  8. 복수의 픽셀 데이터 블록과 연관된 보조 정보를 생성하는 보조 정보 생성기 - 상기 보조 정보는 각 픽셀 데이터 블록에 비디오 품질 영향의 표시를 제공하고, 상기 비디오 품질 영향의 표시는 상기 연관된 픽셀 데이터 블록의 손실로 인한 추정된 비디오 품질 저하를 식별함 - 와,
    비디오 인코더에 의한 인코딩 프로세스에서 상기 복수의 픽셀 데이터 블록에 대한 은닉된 픽셀 값을 추정하는 에러 은닉 모듈과,
    상기 추정된 은닉된 픽셀 값에 기초하여, 상기 복수의 픽셀 데이터 블록 각각의 손실에 의해 야기되는 왜곡을 계산하는 왜곡 계산 모듈과,
    현재의 픽쳐 그룹을 포함하는 상기 복수의 픽셀 데이터 블록 각각에 대한 상기 계산된 왜곡에 기초하여 상기 현재의 픽쳐 그룹에 대한 왜곡을 계산하는 패킷 손실 영향 추정 모듈을 포함하는
    비디오 인코더에서 보조 정보를 생성하는 시스템.
  9. 삭제
  10. 삭제
  11. 제 8 항에 있어서,
    상기 픽쳐 그룹은 I-프레임으로 시작하는 연속적인 비디오 프레임들의 그룹인
    비디오 인코더에서 보조 정보를 생성하는 시스템.
  12. 제 8 항에 있어서,
    상기 보조 정보 생성기는 각 픽셀 데이터 블록에 대한 상기 보조 정보 내의 상기 비디오 품질 영향의 표시에 기초하여 상기 복수의 픽셀 데이터 블록 각각에 복수의 우선순위 레벨 중 하나를 할당하는
    비디오 인코더에서 보조 정보를 생성하는 시스템.
  13. 제 12 항에 있어서,
    보다 큰 비디오 품질 영향을 갖는 픽셀 데이터 블록은 보다 낮은 비디오 품질 영향을 갖는 픽셀 데이터 블록보다 높은 우선순위 레벨을 할당받는
    비디오 인코더에서 보조 정보를 생성하는 시스템.
  14. 제 8 항에 있어서,
    각 픽셀 데이터 블록에 대한 상기 보조 정보 내의 상기 비디오 품질 영향의 표시에 적어도 부분적으로 기초하여, 적응형 채널 선택을 이용해 비디오 비트스트림이 전송되는
    비디오 인코더에서 보조 정보를 생성하는 시스템.
  15. 내부에 저장된 프로세서 실행가능 인스트럭션을 갖는 컴퓨터 판독가능 기록 매체로서,
    복수의 픽셀 데이터 블록과 연관된 보조 정보를 생성하기 위한 인스트럭션을 포함하고,
    상기 보조 정보는 각 픽셀 데이터 블록에 비디오 품질 영향의 표시를 제공하고,
    상기 비디오 품질 영향의 표시는 상기 연관된 픽셀 데이터 블록의 손실로 인한 추정된 비디오 품질 저하를 식별하고,
    상기 추정된 비디오 품질 저하의 판단은,
    비디오 인코더에 의한 인코딩 프로세스에서 상기 복수의 픽셀 데이터 블록에 대한 은닉된 픽셀 값을 추정하는 것과,
    상기 추정된 은닉된 픽셀 값에 기초하여, 상기 복수의 픽셀 데이터 블록 각각의 손실에 의해 야기되는 왜곡을 계산하는 것과,
    현재의 픽쳐 그룹을 포함하는 상기 복수의 픽셀 데이터 블록 각각에 대한 상기 계산된 왜곡에 기초하여 상기 현재의 픽쳐 그룹에 대한 왜곡을 계산하는 것을 포함하는
    컴퓨터 판독가능 기록 매체.
  16. 삭제
  17. 삭제
  18. 제 15 항에 있어서,
    각 픽셀 데이터 블록에 대한 상기 보조 정보 내의 상기 비디오 품질 영향의 표시에 기초하여 상기 복수의 픽셀 데이터 블록 각각에 복수의 우선순위 레벨 중 하나를 할당하기 위한 인스트럭션을 더 포함하는
    컴퓨터 판독가능 기록 매체.
  19. 제 18 항에 있어서,
    보다 큰 비디오 품질 영향을 갖는 픽셀 데이터 블록은 보다 낮은 비디오 품질 영향을 갖는 픽셀 데이터 블록보다 높은 우선순위 레벨을 할당받는
    컴퓨터 판독가능 기록 매체.
KR1020147027169A 2012-03-29 2013-02-06 패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템 KR101642212B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/433,821 2012-03-29
US13/433,821 US9661348B2 (en) 2012-03-29 2012-03-29 Method and system for generating side information at a video encoder to differentiate packet data
PCT/US2013/024864 WO2013147997A1 (en) 2012-03-29 2013-02-06 Method and system for generating side information at a video encoder to differentiate packet data

Publications (2)

Publication Number Publication Date
KR20140140052A KR20140140052A (ko) 2014-12-08
KR101642212B1 true KR101642212B1 (ko) 2016-07-22

Family

ID=49235011

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147027169A KR101642212B1 (ko) 2012-03-29 2013-02-06 패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템

Country Status (6)

Country Link
US (1) US9661348B2 (ko)
EP (1) EP2832097A4 (ko)
KR (1) KR101642212B1 (ko)
CN (1) CN104205833B (ko)
TW (1) TWI568238B (ko)
WO (1) WO2013147997A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9661348B2 (en) * 2012-03-29 2017-05-23 Intel Corporation Method and system for generating side information at a video encoder to differentiate packet data
CN103379360B (zh) * 2012-04-23 2015-05-27 华为技术有限公司 一种视频质量评估方法和装置
EP2936804A4 (en) * 2012-12-21 2016-06-01 Thomson Licensing VIDEO QUALITY MODEL, METHOD FOR DEVELOPING A VIDEO QUALITY MODEL AND METHOD FOR DETERMINING THE VIDEO QUALITY USING A VIDEO QUALITY MODEL

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169312A1 (en) 2004-01-30 2005-08-04 Jakov Cakareski Methods and systems that use information about a frame of video data to make a decision about sending the frame
US20070160137A1 (en) 2006-01-09 2007-07-12 Nokia Corporation Error resilient mode decision in scalable video coding
WO2012013777A2 (en) * 2010-07-30 2012-02-02 Deutsche Telekom Ag Method and apparatus for assessing the quality of a video signal during encoding or compressing of the video signal

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5631920A (en) 1993-11-29 1997-05-20 Lexmark International, Inc. Spread spectrum clock generator
US6175259B1 (en) 1999-02-09 2001-01-16 Cypress Semiconductor Corp. Clock generator with programmable two-tone modulation for EMI reduction
JP2001189713A (ja) * 1999-12-28 2001-07-10 Toshiba Corp データ伝送装置およびデータ伝送方法
TW494636B (en) 2001-02-26 2002-07-11 Realtek Semiconductor Co Ltd Spread spectrum phase-locked loop circuit with adjustable spread bandwidth
WO2003041055A1 (en) * 2001-11-02 2003-05-15 The Regents Of The University Of California End-to-end distortion estimation for streaming of pre-compressed video
US7042258B2 (en) 2004-04-29 2006-05-09 Agere Systems Inc. Signal generator with selectable mode control
EP1839445A2 (en) * 2005-01-18 2007-10-03 Thomson Licensing Method and apparatus for estimating channel induced distortion
US20070030894A1 (en) 2005-08-03 2007-02-08 Nokia Corporation Method, device, and module for improved encoding mode control in video encoding
WO2007084475A2 (en) 2006-01-17 2007-07-26 Thomson Licensing Methods and apparatus for low complexity error resilient motion estimation and coding mode selection
US7894564B2 (en) 2006-11-07 2011-02-22 Via Technologies, Inc. Phase modulation method for spread spectrum clock generator
US20090103635A1 (en) * 2007-10-17 2009-04-23 Peshala Vishvajith Pahalawatta System and method of unequal error protection with hybrid arq/fec for video streaming over wireless local area networks
WO2010063881A1 (en) 2008-12-03 2010-06-10 Nokia Corporation Flexible interpolation filter structures for video coding
US9124874B2 (en) 2009-06-05 2015-09-01 Qualcomm Incorporated Encoding of three-dimensional conversion information with two-dimensional video sequence
US8477846B2 (en) 2009-10-07 2013-07-02 Ittiam Systems (P) Ltd. System and method for adaptive intra refresh rate setting in a video encoder
GB2481653A (en) 2010-07-02 2012-01-04 Xconnect Global Networks Ltd Telephone registry for routing a telephone call
HUE026522T2 (en) * 2010-12-10 2016-06-28 Deutsche Telekom Ag Procedure and equipment for objective evaluation of video quality based on continuous pack loss visibility estimation
CN102346949B (zh) * 2011-07-18 2013-12-18 广东长实通信股份有限公司 一种通信设备安全服务系统
US9661348B2 (en) * 2012-03-29 2017-05-23 Intel Corporation Method and system for generating side information at a video encoder to differentiate packet data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169312A1 (en) 2004-01-30 2005-08-04 Jakov Cakareski Methods and systems that use information about a frame of video data to make a decision about sending the frame
US20070160137A1 (en) 2006-01-09 2007-07-12 Nokia Corporation Error resilient mode decision in scalable video coding
WO2012013777A2 (en) * 2010-07-30 2012-02-02 Deutsche Telekom Ag Method and apparatus for assessing the quality of a video signal during encoding or compressing of the video signal

Also Published As

Publication number Publication date
CN104205833A (zh) 2014-12-10
TW201347552A (zh) 2013-11-16
TWI568238B (zh) 2017-01-21
US9661348B2 (en) 2017-05-23
EP2832097A4 (en) 2016-12-07
WO2013147997A1 (en) 2013-10-03
EP2832097A1 (en) 2015-02-04
KR20140140052A (ko) 2014-12-08
CN104205833B (zh) 2018-06-19
US20130259136A1 (en) 2013-10-03

Similar Documents

Publication Publication Date Title
US8856624B1 (en) Method and apparatus for dynamically generating error correction
US8229983B2 (en) Channel switch frame
CA2440154C (en) Picture encoding method and apparatus and picture decoding method and apparatus
KR101380505B1 (ko) 무선 채널을 통한 멀티미디어 데이터의 송신을 위한 보호 및 압축 파라미터들의 결정 방법
US20070183495A1 (en) Multi-view video encoding apparatus and method
KR20160007564A (ko) 높은 프레임 레이트 및 가변 프레임 레이트 캡처를 위한 비디오 압축 튜닝
US20150296224A1 (en) Perceptually driven error correction for video transmission
KR20080086764A (ko) 패킷 기반의 영상 프레임 전송 방법 및 장치
JP5502798B2 (ja) チャネル交換フレーム
KR101642212B1 (ko) 패킷 데이터를 구별하기 위해 비디오 인코더에서 보조 정보를 생성하는 방법 및 시스템
CN112291566A (zh) H.264视频编码方法、装置、芯片、存储设备及电子设备
Carreira et al. Selective motion vector redundancies for improved error resilience in HEVC
Midya et al. Scene transition based adaptive GOP selection for increasing coding efficiency & resiliency
Kim et al. A quality ratio-based novel unequal loss protection scheme in Wi-Fi broadcasting system
Díaz et al. Adaptive protection scheme for MVC-encoded stereoscopic video streaming in IP-based networks
Schier et al. Selective packet discard in mobile video delivery based on macroblock-based distortion estimation
Zhao et al. RD-Based Adaptive UEP for H. 264 Video Transmission in Wireless Networks
WO2014198062A1 (en) Method and apparatus for video quality measurement
Song et al. Improved H. 264 rate control over wireless channel
Fumagalli et al. A sequence-based error-concealment algorithm for an unbalanced multiple description video coding system
Wang et al. Error-resilient slice interleaving for robust video transmission over bursty loss channels
Wang et al. Error-resilient packet reordering for compressed video transmission over error-prone networks
Ai et al. Predictive picture refresh based on scene-context reference picture for video transmission
Kim et al. Unequal Loss Protection Mechanism for Wi-Fi based Broadcasting system using a Video Quality Prediction Model
Li et al. Modeling of distortion for arbitrary packet loss patterns in video transmission

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant