KR20180082638A - 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치 - Google Patents

비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치 Download PDF

Info

Publication number
KR20180082638A
KR20180082638A KR1020187019655A KR20187019655A KR20180082638A KR 20180082638 A KR20180082638 A KR 20180082638A KR 1020187019655 A KR1020187019655 A KR 1020187019655A KR 20187019655 A KR20187019655 A KR 20187019655A KR 20180082638 A KR20180082638 A KR 20180082638A
Authority
KR
South Korea
Prior art keywords
frame
video sequence
bitstream
video
processed video
Prior art date
Application number
KR1020187019655A
Other languages
English (en)
Other versions
KR101960647B1 (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 KR20180082638A publication Critical patent/KR20180082638A/ko
Application granted granted Critical
Publication of KR101960647B1 publication Critical patent/KR101960647B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/04Diagnosis, testing or measuring for television systems or their details for receivers
    • H04N17/045Self-contained testing apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/02Diagnosis, testing or measuring for television systems or their details for colour television signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/04Diagnosis, testing or measuring for television systems or their details for receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/06Diagnosis, testing or measuring for television systems or their details for recorders
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N2017/006Diagnosis, testing or measuring for television systems or their details for television sound
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N2017/008Diagnosis, testing or measuring for television systems or their details for television teletext

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

본 발명은 비디오 디코더의 입력 비트 스트림을 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하기 위한 방법 및 장치에 관한 것이다.

Description

비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치{METHODS AND APPARATUSES FOR TEMPORAL SYNCHRONISATION BETWEEN THE VIDEO BIT STREAM AND THE OUTPUT VIDEO SEQUENCE}
본 발명은 비디오 디코더의 입력 비디오 비트 스트림을 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하기 위한 방법 및 장치에 관한 것이다.
수년간에 걸친 비디오 통신 어플리케이션의 확산은 사용자가 인지하는 서비스 품질로 정의되는 체감 품질(Quality of Experience: QoE)에 접근하기 위해 견고한 비디오 품질 수단의 발전을 필요로 하고 있다. 비디오 품질의 평가는 정보 제공자에 의한 효율적인 서비스 설계, 계획 및 모니터링을 위한 중요한 측면이다.
근래, 하이브리드 비디오 품질 평가 모델/시스템은 패킷 정보, 비트 스트림 정보 및 디코딩된 재구성 이미지의 조합을 이용한다. 통상, 하이브리드 비디오 품질 평가 알고리즘에 있어서, 비트 스트림으로부터 추출되거나 계산된 특성(예, 동작 벡터, 매크로블록 유형, 변환 계수, 양자화 파라미터 등)과 패킷 헤더에 의해 추출된 정보(예, 비트 전송 속도, 패킷 손실, 지연 등)가 화소 도메인의 출력 재구성 이미지로부터 추출된 특성과 결합된다. 그러나, 전자의 특성이 시간적 동기화에 기인하여 후자의 특성에 시간적으로 대응하지 않으면, 품질의 평가는 정확하지 않게 된다. 따라서, 모든 하이브리드 비디오 품질 평가 알고리즘에서 제1 단계는 비디오 비트 스트림과 디코딩된 재구성 이미지의 동기화이다.
하이브리드 비디오 품질 평가의 블록도가 도 1에 표현되어 있다. 최종 사용자 측에서, 프로브 디바이스는 들어오는 비트 스트림을 캡처한 후 소정의 특성을 추출 및 계산하기 위해 캡처된 비트 스트림을 구문 검토 및 분석한다. 이들 특성들은 비디오 비트 스트림을 출력 비디오 시퀀스와 시간적으로 동기화하는 역할을 하는 모듈에 입력된다.
더욱이, 디코딩 장치, 예컨대 셋톱 박스(set-top-box; STB)는 수신된 비트 스트림을 디코딩하여 출력 장치에 의해 디스플레이되는 처리된 비디오 시퀀스(processed video sequence; PVS)를 생성한다. PVS도 역시 비디오 비트 스트림과 시간적으로 동기화될 수 있도록 시간적 동기화 기능을 갖는 모듈에 입력된다.
일반적으로, 비트 스트림과 PVS 간의 시간적 동기화의 손실의 주요 이유는 지연이다. 비디오 스트림이 인터넷과 같은 최선형(best-effort) 네트워크를 통해 전송시, 각 패킷의 도달 시간은 일정하지 않고 크게 변동될 수 있다. 네트워크를 통한 패킷 대기의 시간에 대한 변동성은 지터(jitter)로 지칭된다. 순간 동작(jerkiness) 없는 원활한 시퀀스의 재생을 보장하기 위해, 대부분의 비디오 시스템은 디-지터(de-jitter) 버퍼를 채용한다. 수신된 비트 스트림은 각 패킷의 도달 시간에 기반하여 입력 버퍼에 기록되며, 프레임에 대응하는 픽쳐 데이터는 입력 버퍼로부터 프레임 기간에 대응하는 미리 정해진 시간 간격으로 디코더 내로 읽혀진다. 각 픽쳐의 디스플레이 타이밍은 패킷 헤더에 기록된 타임스탬프(timestamp) 필드에 의해 결정된다. 즉, 타임스탬프 값은 픽쳐 시작 코드의 검출로부터 픽쳐 디스플레이 타이밍까지 경과된 지연 시간 기간에 대응한다.
전술한 비디오 디코딩 시스템에서, 각 비디오 프레임의 디스플레이 타이밍은 디스플레이 타이밍의 결정을 위해 비디오 비트 스트림 내에 포함된 데이터에 따라 결정된다. 프레임의 디스플레이를 위한 시간은 고정되지 않으므로, PVS는 원시 비트 스트림에 정확하게 항상 매칭되는 것은 아닐 수 있다.
문헌상, 소스와 왜곡된 비디오 시퀀스 간의 시간적 동기화의 문제점이 이전에 연구되어 왔으며 비디오 정합(video registration)으로도 지칭된다. 2006년 1월 개최된 가전 제품용 비디오 처리 및 품질 측정에 대한 2차 국제 워크샵의 공식 기록에 기재된 M. Barkowsky, R. Bitto, J. Bialkowski 및 A. Kaup에 의한 "비디오 품질의 인지적 평가에서 시간적 프레임 정합을 위한 매칭 전략의 비교"에서, 비디오 정합을 위한 블록 매칭과 위상 상관 간의 비교가 제시되어 성능과 복잡성의 측면에서 검토되었다. 또한, 프레임 제거, 삽입, 셔플링(shuffling) 및 데이터 압축을 설명하는 프레임-매칭 알고리즘이 다이나믹 프로그래밍을 이용한 매칭 비용 함수의 최소화에 기반하여, 2009년 SPIE의 Journal of Electronic Imaging에 기고된 Y. Y. Lee, C. S. Kim, 및 S. U. Lee에 의한 "다이나믹 프로그래밍을 이용한 비디오 프레임-매칭 알고리즘"에 제시되었다. J. Lu에 의한 "패스트 비디오 시간 정렬 평가"(US-B1-6 751 360)에서, 왜곡된 비디오를 비디오 품질 측정을 위한 대응하는 소스 비디오와 시간적으로 정렬하는 신속한 시간적 정렬 평가 방법이 제시되었다. 각각의 비디오 시퀀스는 두 개의 후속 프레임 간의 상호 상관으로서 각 프레임에 대한 데이터 포인트를 계산하는 것에 의해 시그니처 곡선(signiture curve)으로 변환된다. 이후 검토된 비디오 시퀀스의 시그니처 곡선 간의 정규화된 상호 상관의 최대 값을 찾는 것에 의해 왜곡된 비디오의 시간적 오정렬이 결정된다. 두 개의 비디오 시퀀스 간의 공간적, 시간적 및 히스토그램 대응을 식별하기 위한 다른 방법이 H. Cheng에 의한 "국부적 예측 에러에 기반한 비디오 정합"(US-B2-7 366 361)에 기술되어 있다. PVS는 선택된 세트의 하나 이상의 원시 프레임으로부터 처리된 세트까지 매핑을 생성하여 각각의 매핑이 국부적 예측 에러를 최소화하는 것에 의해 기준 비디오 시퀀스에 정렬된다. K. Ferguson에 의한 "견고한 비디오 시간 정합을 위한 시스템 및 방법"(US-A-2008/0253689)에서는 기준 및 시험 비디오 시퀀스로부터 프레임 및 서브-이미지 정제 측정치가 얻어진다. 이후 이들 측정치는 프레임 간의 로컬 Pearson 상호 상관 계수를 이용하여 선형으로 정렬된다. 추가로, C. Souchard에 의한 "비디오 시퀀스의 공간적 및 시간적 정렬"(US-A-2007/0097266)에서는 시험 및 기준 비디오 시퀀스의 프레임 사이의 화소 세트의 동작을 기술하기 위해 동작 함수가 정의되고 두 개의 이미지의 정렬에 변환이 이용된다.
J. Baina 등에 의한 "디지털 텔레비전 계측 장비의 제어 방법"(US 6,618,077 B1, 2003년)에서, 동기화 신호의 발생을 위해 MPEG-2 Transport Stream으로부터 파라미터를 추출하기 위한 방법이 제안되었다. 그러나, 이 방법은 비디오 요소 스트림이 MPEG-2 Transport Stream으로 패킷화되어 어떤 전송 프로토콜에도 적용될 수 없을 때에만 적용 가능하다. 그에 반하여, 제안된 방법은 특정 전송 또는 어플리케이션 프로토콜을 필요로 하지 않고 임의의 비디오 비트스트림에 적용될 수 있다. 더욱이, 상기 방법은 비디오 신호 중 어떤 픽쳐(비디오 프레임)가 품질 예측에 사용되어야 하는지를 지시하기 위해 비디오 품질 감시 알고리즘에 동기화 신호를 제공한다. 이에 반하여, 제안된 방법은 외부 디코더로부터 고려중인 각 픽쳐에 대응하는 비트스트림의 일부를 식별한다. 결국, 이 방법은 비디오 비트스트림을 외부 비디오 디코더로부터의 픽쳐와 동기화하기 위해 비트스트림 정보를 활용하지 않는데 반해, 제안된 발명은 동기화의 수행을 위해 비트스트림을 이용한다. 비디오 비트스트림의 이용은 패킷 손실에 따른 효과를 고려할 수 있으며 전송 에러의 경우에 적용될 수 있다.
두 개의 데이터 신호의 정렬을 위한 다른 방법이 M. Keyhl, C. Schmidmer와 R. Bitto에 의한 "두 개의 데이터 신호의 시간적 정렬을 위한 데이터 결정 장치"(WO 2008/034632 A1, 2008)에 제시되었다. 이에 대해, 제안된 발명은 외부 비디오 디코더로부터의 픽쳐와 입력 비디오 비트스트림 간에 동기화를 제공한다. 더욱이, 상기 방법은 화소 도메인으로 동기화를 수행하므로, 입력 비디오 비트스트림의 완전 디코딩을 필요로 한다. 이에 대해, 제안된 방법은 완전 디코딩 없이, 그리고 패킷 헤더로부터 동기화가 수행되는 두 개의 실시예(제2 및 제3 실시예)를 제공한다.
디지털 신호를 동기화하기 위한 또 다른 방법이 J. Baina 등에 의한 "디지털 신호 동기화 방법"(US 2003/0179740 A1, 2003)에 제시되었다. 해당 방법은 전 기준적 방법(full-referencce method)인데, 다시 말해 동기화의 수행에 기준 신호를 필요로 한다. 이에 대해, 본 발명은 비디오 비트스트림과 외부 비디오 디코더로부터의 디코딩된 픽쳐 사이의 동기화를 위한 무-기준적 방법을 제안하므로, 기준 신호(비디오 시퀀스)가 필요하지 않다. 더욱이, 상기 방법은 동기화를 위해 비트스트림으로부터 파라미터의 추출을 필요로 하기 때문에 암호화된 비트스트림의 경우 적용될 수 없다. 이에 대해, 제안된 발명의 방법은 암호화된 비트스트림과 PVS의 동기화를 위한 실시예를 기술하고 있다.
본 발명의 목적은 예컨대 셋톱 박스(STB)와 같은 비디오 디코더의 입력 비디오 비트스트림을 처리된 비디오 시퀀스(PVS)와 시간적으로 동기화하고 그 동기화를 가능케 하는 방법 및 장치를 제공하는 것이다.
상기 목적은 특허청구범위의 특징에 의해 달성된다.
제1 측면에 따르면, 본 발명은 비디오 디코더의 입력 비디오 비트 스트림을 외부 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하는 방법을 제공하며, 해당 방법은:
a) 상기 입력 비트 스트림을 캡처하여 비트 스트림 분석기로 제공하는 단계와;
b) 상기 비트 스트림 분석기를 이용하여 상기 캡처된 입력 비트 스트림을 구문 검토 및 분석하는 단계와;
c) 상기 입력 비트 스트림을 디코딩하고 이로부터 재구성된 이미지(N rec )를 제공하는 단계와;
d) 상기 재구성된 이미지(N rec )를 버퍼 내에 저장하는 단계와;
e) 상기 비디오 디코더의 출력 측으로부터 수신된 처리된 비디오 시퀀스를 상기 저장된 재구성된 이미지와 비교하여, 상기 버퍼 내의 재구성된 이미지 세트로부터 매칭 프레임(n*)을 찾는 단계를 포함하는 것을 특징으로 한다.
상기 방법은 f) 상기 매칭 프레임(n*)과 이에 대응하는 비트 스트림의 부분을 비디오 품질 평가 유닛으로 제공하는 단계를 더 포함할 수 있다. 상기 비디오 품질 평가 유닛은 상기 비트 스트림과 상기 처리된 비디오 시퀀스로부터 얻어진 정보에 기반하여 주관적 품질 스코어를 추정할 수 있다.
상기 방법의 b) 단계는 상기 비트 스트림으로부터 각 이미지에 대해 전송 에러에 기인하여 손실된 패킷 및 상기 패킷 손실에 의해 영향을 받은 각각의 프레임 내의 대응하는 영역과; 각각의 프레임 중 어떤 화소들이 그 예측에 대해 잘못된 영역을 참조하고 그에 따라 상기 패킷 손실에 의해 영향을 받기 쉬운지를 지시하는, 동작 벡터와 매크로 블록 유형에 기반한 에러 전파 맵을 추출하는 단계를 더 포함할 수 있다.
또한, e) 단계는 상기 비트 스트림과 처리된 비디오 시퀀스(PVS)로부터 추출된 정보를 이용하는 것에 의해 상기 처리된 비디오 시퀀스와 상기 버퍼 내의 상기 재구성된 이미지 사이의 거리 값을 계산하는 단계를 포함할 수 있다. 상기 비트 스트림으로부터 추출된 정보는 패킷 손실에 기인한 손상의 공간적 및 시간적 위치를 포함할 수 있다.
제2 측면에 따르면, 본 발명은 비디오 디코더의 입력 비트 스트림을 화소 도메인에 대해 상기 비디오 비트스트림을 완전히 디코딩하지 않고 상기 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하는 방법을 제공하며, 해당 방법은:
a) 상기 입력 비트 스트림을 캡처하여 비트 스트림 분석기로 제공하는 단계와;
b) 상기 비트 스트림 분석기를 이용하여 상기 캡처된 입력 비트 스트림을 분석하여 에러 맵[I(x,y,t)]과 패킷 손실에 의해 영향을 받은 화소의 세트(A)를 생성하는 단계로, I(x,y,t)는 t번째 프레임의 위치[(x,y)]에서의 에러 맵 값을 나타내고, x=1, 2,...,M이고, y=1, 2,...,N이고, M과 N은 각각 비디오 시퀀스의 각 프레임의 수평 및 수직 크기인, 화소 세트 생성 단계와;
c) 상기 b) 단계에서 상기 비트 스트림 분석기에 의해 생성된 N rec 프레임의 에러 맵을 버퍼 내에 저장하는 단계와;
d) 상기 저장된 생성 N rec 프레임의 에러 맵을 현재 처리된 비디오 시퀀스의 대응하는 에러 맵과 비교하여, 상기 처리된 비디오 시퀀스의 현재 이미지와 매칭되는 상기 버퍼 내의 재구성 프레임 세트로부터의 매칭 프레임(n*)을 찾는 단계를 포함하는 것을 특징으로 한다.
상기 방법은 e) 상기 매칭 프레임(n*)과 이에 대응하는 비트 스트림의 부분을 비디오 품질 평가 유닛으로 제공하는 단계를 더 포함할 수 있다.
또한, 상기 c) 단계와 상기 d) 단계 사이에는:
상기 처리된 비디오 시퀀스의 현재 이미지의 엣지를 추출하는 단계;
상기 패킷 손실에 의해 영향을 받은 영역에 속하는 것으로 예상되는 엣지의 윤곽을 계산하는 단계;
상기 처리된 비디오 시퀀스의 엣지 윤곽을 상기 버퍼에 저장된 에러 맵의 엣지 윤곽과 비교하는 단계가 수행될 수 있다.
제3 측면에 따르면, 본 발명은 비디오 디코더의 암호화된 입력 비트 스트림을 상기 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하는 방법을 제공하되, 해당 방법은:
a) 상기 암호화된 입력 비트 스트림을 분석 모듈로 제공하는 단계;
b) 상기 분석 모듈에서 상기 암호화된 입력 비트 스트림의 패킷 헤더 정보를 분석하고 상기 비트 스트림 내에 포함된 픽쳐의 크기와 유형을 계산하는 단계;
c) 상기 계산된 픽쳐의 크기 및 유형에 기반하여 상기 비디오 픽쳐에 표현된 정보를 대표하는 특성(feature)을 추출하는 단계;
d) 상기 처리된 비디오 시퀀스의 픽쳐로부터의 정보를 대표하는 각각의 특성과 정보 유형을 추출하는 단계;
e) 상기 d) 단계에서 상기 처리된 비디오 시퀀스의 현재 픽쳐로부터 추출된 특성을 상기 c) 단계에서 상기 분석된 픽쳐로부터 추출된 특성과 비교하여 상기 현재 처리된 비디오 시퀀스에 대응하는 비트스트림의 부분을 계산하는 단계를 포함하는 것을 특징으로 한다.
상기 c) 단계와 상기 d) 단계에서 추출된 특성은 시변(time-varying) 특성인 것이 바람직하고, 이들 단계는 화소 도메인에서 수행될 수 있다.
바람직한 실시예에 따르면, 검토중인 처리된 비디오 시퀀스에 대응하는 비트스트림의 부분과 특성은 비디오 품질 평가 모듈에 추가 입력된다.
b) 단계는 추가로 패킷 손실에 의해 영향을 받은 프레임을 검출할 수 있고,
f) 패킷 손실에 기인하여 발생되는 아티팩트에 대해 상기 처리된 비디오 시퀀스의 현재 픽쳐를 조사하는 단계; 및
g) 상기 처리된 비디오 시퀀스를 상기 비트 스트림의 대응하는 프렘임과 매칭하는 단계로, 상기 처리된 비디오 시퀀스의 현재 픽쳐가 f) 단계에서 검출되었으면, 패킷 손실의 결과로 삽입된 아티팩트를 포함하고, 해당 픽쳐는 상기 패킷 손실을 포함하도록 b) 단계에서 발견된 프레임에 대응하는 비트 스트림의 부분과 매칭되는, 매칭 단계를 더 포함할 수 있다.
본 발명의 추가의 측면은 비디오 디코더의 입력 비트 스트림을 외부 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하기 위한 장치에 관한 것으로, 해당 장치는:
상기 입력 비트 스트림을 수신하고, 상기 입력 비트 스트림을 구문 검토하고 분석하도록 구성된 비트 스트림 분석기와,
상기 분석된 비트 스트림을 상기 처리된 비디오 시퀀스와 동기화하도록 구성된 동기화 모듈을 포함하되,
상기 동기화 모듈은:
상기 비트 스트림 분석기로부터 상기 분석된 비트 스트림을 수신하고, 해당 수신된 비트 스트림으로부터 재구성된 이미지(N rec )를 제공하도록 구성된 디코더와,
상기 처리된 비디오 시퀀스에 의해 표현된 출력 이미지가 이전에 재구성된 이미지의 해당 특정 갯수에 비교될 수 있도록 상기 디코더로부터의 상기 재구성 이미지(N rec )를 저장하도록 구성된 버퍼와,
상기 비트 스트림 분석기로부터의 상기 분석된 비트 스트림, 상기 버퍼로부터의 상기 재구성된 이미지 및 상기 처리된 비디오 시퀀스를 수신하되, 상기 처리된 비디오 시퀀스를 상기 버퍼 내의 재구성된 이미지 중 각각 하나의 이미지와 비교하고, 상기 비디오 버퍼 내에서 최선의 매칭 이미지를 결정하도록 구성된 화소-도메인 비교 유닛을 포함하는 것을 특징으로 한다.
상기 장치는 비트 스트림으로부터의 정보와 처리된 비디오 시퀀스를 결합하여 비디오 시퀀스의 품질을 평가하는 비디오 품질 평가 모듈을 포함하는 것이 바람직하다. 또한, 비교 유닛은 추가로 비트 스트림으로부터 추출된 정보를 이용하는 것에 의해 상기 처리된 비디오 시퀀스와 검토된 버퍼 내의 재구성 이미지 사이의 거리 값을 계산하도록 구성될 수 있다. 또한, 비교 유닛은 비트 스트림과 처리된 비디오 시퀀스로부터의 정보에 기반한 주관적 품질 스코어를 추정하기 위해 최적의 매칭 이미지를 비디오 품질 평가 모듈로 출력하도록 구성된다.
또한, 비트 스트림 분석기는 상기 비트 스트림으로부터, 각 이미지에 대해 전송 에러에 기인하여 손실된 패킷 및 상기 패킷 손실에 의해 영향을 받은 각각의 프레임 내의 대응하는 영역과; 각각의 프레임 중 어떤 화소들이 그 예측에 대해 잘못된 영역을 참조하고 그에 따라 상기 패킷 손실에 의해 영향을 받기 쉬운지를 지시하는 동작 벡터와 매크로 블록 유형에 기반한 에러 맵을 추출하도록 구성되는 것이 바람직하다.
추가의 측면에 따르면, 본 발명은 비디오 디코더의 입력 비디오 비트 스트림을, 상기 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하기 위한 장치로서,
암호화된 입력 비트 스트림의 패킷 헤더 정보에 대해 상기 입력 비트 스트림을 분석하기 위해 구성되어 상기 입력 비트 스트림을 수신하고 해당 비트 스트림 내에 포함된 프레임의 크기 및 유형을 계산하는 비트 스트림 분석기와,
상기 분석된 비트 스트림을 상기 처리된 비디오 시퀀스와 동기화하기 위해 구성된 동기화 모듈을 포함하고,
상기 동기화 모듈은,
상기 비트 스트림 분석기로부터 상기 분석된 비트 스트림을 수신하되 에러 맵[I(x,y,t)]과 패킷 손실에 의해 영향을 받은 화소의 세트(A)를 생성하도록 구성되며, I(x,y,t)는 t번째 프레임의 위치[(x,y)]에서의 에러 맵 값을 나타내고, x=1, 2,...,M이고, y=1, 2,...,N이고, M과 N은 각각 비디오 시퀀스의 각 프레임의 수평 및 수직 크기인, 추출 모듈과,
프로브 내의 비트 스트림 분석기에 의해 내부적으로 생성된 N rec 프레임의 에러 맵을 저장하도록 구성된 버퍼와,
상기 버퍼로부터 상기 재구성된 프레임 N rec 의 에러 맵과 상기 처리된 비디오 시퀀스의 대응하는 에러 맵을 수신하는 것으로, 재구성된 N rec 프레임의 저장된 에러 맵과 현재 처리된 비디오 시퀀스의 대응하는 에러 맵과 비교하고, 상기 처리된 비디오 시퀀스의 현재 이미지와 매칭되는 재구성 프레임의 세트로부터의 매칭 프레임(n*)을 결정하도록 구성된 에러 패턴 검색 모듈을 포함하는 것을 특징으로 한다.
추가의 측면에 따르면, 본 발명은 비디오 디코더의 암호화된 입력 비디오 비트 스트림을 상기 비디오 디코더에 의해 디코딩된 처리된 비디오 시퀀스와 시간적으로 동기화하기 위한 장치로서,
상기 암호화된 입력 비트 스트림을 수신하고, 상기 입력 비트 스트림을 구문 검토하고 분석하기 위해 구성된 비트 스트림 분석기와,
상기 분석된 비트 스트림을 상기 처리된 비디오 시퀀스와 동기화하기 위해 구성된 동기화 모듈을 포함하고,
상기 동기화 모듈은,
비디오 픽쳐에 표현된 정보를 대표하는 특성들을 계산된 픽쳐 크기 및 유형에 기반하여 추출하기 위해 구성된 제1 추출 모듈과,
상기 처리된 비디오 시퀀스로부터 정보의 유형과 해당 정보를 대표하는 각각의 특성들을 추출하기 위해 구성된 제2 추출 모듈과,
상기 제1 및 제2 추출 모듈에 연결되며, 상기 처리된 비디오 시퀀스의 현재 픽쳐로부터 추출된 특성들을 상기 분석된 픽쳐로부터 추출된 특성들과 비교하고, 현재 처리된 비디오 시퀀스에 대응하는 비트 스트림의 부분을 계산하도록 구성된 비교 유닛을 포함하는 것을 특징으로 한다.
다시 본 발명의 목적으로 돌아오면, 본 발명의 목적은 본 발명에 따라 입력 비트 스트림을 구문 분석하고 디코딩하기 위한 비트 스트림 분석기와 상기 비트 스트림을 처리된 비디오 시퀀스(PVS)와 시간적으로 동기화하는 역할의 동기화 모듈을 포함하는 장치(프로브)를 제공하는 것에 의해 달성될 수 있다.
비디오 비트 스트림과 PVS의 시간적 동기화를 위한 장치는 디코더로부터 출력되는 재구성된 이미지를 저장하는 버퍼를 포함한다. 버퍼는 프로브 내의 디코더로부터 특정 갯수의 재구성 이미지 N rec 를 저장할 수 있으며, 그에 따라 출력 이미지는 이전의 재구성된 이미지의 해당 특정 갯수에 비교될 수 있다.
PVS와 비디오 비트 스트림의 동기화를 위한 모듈은 다음의 동작을 수행한다:
a) PVS와 버퍼 내의 재구성 이미지 중 각각 하나의 이미지와 비교;
b) 비트 스트림으로부터 추출된 정보(예를 들어, 패킷 손실에 기인한 손상의 공간적 및 시간적 위치)를 이용하는 것에 의해 PVS와 검토된 버퍼 내 재구성 이미지 간의 거리 값의 계산;
c) 비디오 버퍼 내의 최적의 매칭 이미지를 결정하고, 비트 스트림과 PVS로부터의 정보에 기반한 해당 이미지를 주관적 스코어(MOS)를 추정하기 위한 역할의 비디오 품질 평가 모듈로 출력.
도 1은 처리된 비디오 시퀀스의 비트 스트림 및 디코딩된 이미지 데이터와의 시간적 동기화를 위한 종래의 프로브 장치를 예시하며;
도 2는 본 발명의 제1 바람직한 실시예에 따라 비트 스트림과 출력 이미지의 동기화를 위한 블록 다이어그램을 예시하며;
도 3은 비디오 비트 스트림과 처리된 비디오 시퀀스 간의 동기화를 위한 본 발명의 제2 바람직한 실시예의 블록 다이어그램을 예시하며;
도 4는 본 발명의 추가의 바람직한 실시예에 따라 비트 스트림과 암호화된 비디오 시퀀스의 디코딩된 이미지 간의 동기화를 예시하며;
도 5는 후속 프레임에 대한 에러 전파 맵의 예를 예시하며;
도 6은 시간적 (내부) 예측에 기인하여 내부 디코더에 에러 전파 맵의 생성을 예시하며;
도 7은 내부 예측에 기인하여 내부 디코더에 에러 전파 맵의 생성을 예시한다.
이하 본 발명을 보다 상세히 설명한다.
먼저, 비트 스트림과 처리된 비디오 시퀀스(Processed Video Sequence: PVS) 사이의 시간적 동기화에 대한 제1 실시예를 도 2를 참조로 설명한다.
비트 스트림과 디코딩된/처리된 비디오 시퀀스 간의 시간적 동기화는 2단계로 이루어진다. 먼저, 제1 단계에서, 본 발명에 따른 장치, 즉 프로브 장치는 비트 스트림을 캡처하여 그것을 각각의 픽쳐에 대해 다음의 정보를 추출하는 비트 스트림 분석기로 전송한다:
a. 전송 에러에 기인하여 손실된 패킷과 해당 패킷 손실에 의해 영향을 받은 각각의 프레임 내의 대응하는 영역; 및
b. 각각의 프레임 중 어떤 화소들이 그 예측에 대해 잘못된 영역을 (예측을 위해) 참조하고 그에 따라 상기 패킷 손실에 의해 영향을 받기 쉬운지를 지시하는, 동작 벡터와 매크로 블록 유형에 기반한 에러 전파 맵.
패킷 손실에 의해 영향을 받은 화소와 예측을 위해 손실된 화소를 참조하는 화소의 세트를 A로 나타낸다. 또한, t번째 프레임의 위치[(x,y)]에서의 에러 전파 맵 값을 I(x,y,t)로 나타내고, 여기서 x=1, 2,...,M이고, y=1, 2,...,N이고, M과 N은 각각 비디오 시퀀스의 각 프레임의 수평 및 수직 크기로 한다. 세트 A에 속한 화소에 대한 값은 1이고, 그렇지 않으면 그 값은 제로(0)이다. 따라서:
[수학식 1]
Figure pat00001
다시 말해, 세트 A는 상이한 에러 은닉(error concealment) 기법에 기인하여 처리된 비디오 시퀀스와 프로브 내의 디코더의 재구성 이미지 사이가 동일하지 않을 것인 모든 화소를 포함한다. 이러한 이유로, 세트 A에 속하는 모든 화소는 다음의 단계에서 시간적 동기화에 적절치 않은 것으로 나타난다. 에러 전파 맵의 도출의 예가 도 5에 표현된다. 패킷 손실은 제1 프레임(도 5에서, 우측의 픽쳐의 어두운 영역은 패킷 손실에 기인하여 손상된 매크로 블록을 나타낸다)에서 생기고, 예측 처리를 위해 제1 프레임의 손상된 영역을 참조하는 후속 프레임의 화소는 계산을 통해 동기화 처리에 유효하지 않은 것으로 나타난다. 이것은 프로브의 내부 비디오 디코더와 예컨대 셋톱 박스(STB)와 같은 디코딩 장치의 디코더 사이에 상이한 에러 은닉 기법의 적용에 기인하여 재구성 이미지와 처리된 비디오 시퀀스 간에 차이가 있을 수 있는 화소의 제거에 도움이 될 것이다.
다음에, 내부 디코더 내의 에러 전파 맵의 생성을 위한 추가 정보가 제공된다. 각각의 픽쳐의 경우, 프로브 분석기는 비트스트림에서 (예컨대, 네트워크 손상 및/또는 패킷 손실에 기인하여) 정확하게 수신되지 않은 매크로 블록의 갯수와 위치를 검출한다. 이러한 검출은 새로운 슬라이스(slice)의 시작을 나타내는 슬라이스 헤더의 구문 분석에 기반한다. 주의할 점은 현대의 인코딩 기법에서 슬라이스는 동일한 픽쳐로부터 다른 정보를 참조하지 않고 독자적으로 인코딩될 수 있는 인코딩 유닛으로서 정의된다는 것이다. 따라서, 패킷 손실이 일어난 장소와 슬라이스의 말단 사이의 모든 매크로 블록은 디코딩 불가한 것으로 나타난다. 예를 들면, 도 6에서 에러는 프레임(t)에서 생기고 손상된 매크로 블록은 회색으로 나타내는 것으로 가정한다. 해당 매크로 블록에 속하는 모든 좌표에 대한 에러 전파 맵의 값은 1로 설정되고 모든 여타의(정확하게 수신되고 디코딩된) 프레임에 대해 0으로 설정된다.
추가로, 인코더의 예측 특성에 기인하여, 후속 프레임의 매크로 블록은 디코딩되도록 이전 프레임을 참조할 수 있다. 상호 예측된 픽쳐(P, B 픽쳐)의 경우, 이전 프레임의 참조된 위치에 대한 정보는 각각의 매크로 블록에 대해 다음의 구문 요소에서의 비트스트림에 수용된다: (a) 사용될 기준 프레임을 나타내는 기준 지수, (b) 매크로 블록의 원래 위치로부터의 (수평적 및 수직적) 변위를 나타내는 동작 벡터. 예컨대 H.264/AVC와 같은 현대의 인코더의 경우, 기준 지수와 동작 벡터는 매크로 블록의 서브-파티션에 대해 상이할 수 있음을 유념해야 한다. 그러므로, 기준 프레임 내의 오류 영역을 참조하는 매크로 블록의 모든 좌표에 대한 에러 전파 맵은 1로 설정되고, 그외에는 0으로 설정된다.
이러한 절차의 예가 도 6에 보여진다. 도 6은 시간적 (상호) 예측에 기인하여 내부 디코더에 에러 전파 맵의 생성됨을 보여준다. 에러는 시초에 프레임 t(회색 매크로 블록)에 발생하여 프레임 t의 오류 매크로블록을 참조하는 위치((x1, y1)과 (x2, y2))에서의 매크로블록 내의 후속 프레임(t+1)으로 전파된다. 주의할 점은 프레임(t+1)에 혁신적 에러가 생기지 않지만 기준 프레임에서의 오류 정보의 참조에 기인하여 매크로블록은 오류라는 것이다. 즉, 프레임(t+1) 내의 매크로블록, (x1, y1)과 (x2, y2) 위치에서의 매크로블록은 프레임(t)에서의 오류 매크로블록을 참조하며, 그에 따라 오류인 것으로 나타난다(즉, 이러한 프레임에 대한 에러 전파 맵은 1로 설정된다).
그러므로, 시간적으로 예측된 매크로 블록의 경우:
[수학식 2]
Figure pat00002
여기서, x, y는 고려 대상의 매크로블록의 행과 열을 나타내고, t는 프레임 번호를 나타내고, mvx와 mvy는 매크로 블록의 수평 및 수직 동작 벡터를 나타내고, t+r은 기준으로 사용될 프레임에 대한 기준 지수를 나타낸다.
또한, 에러는 내부 예측, 즉 동일 프레임 내에서 인접하는 매크로블록으로부터의 매크로블록의 예측에 기인하여 전파될 수 있다. 주의할 점은 현대의 인코딩 기법의 경우, 매크로블록은 상호 예측된 픽쳐에 속한다고 해도 내부 모드로 인코딩될 수 있다는 것이다. 이것은 도 7에 예시되어 있는데, 여기서 매크로블록(A, B, C)은 오류이고(패킷 손실이 해당 위치에서 생겼거나 이들 매크로블록들이 시간적으로 예측됨으로써 이전에 디코딩된 픽쳐 내의 오류 영역을 참조하기 때문임), 따라서 디코더에 의해 은닉된다. 그러나, 이른바 D의 매크로블록이 내부 인코딩되고 매크로블록(A, B, C)를 기준으로 사용하면, 해당 매크로 블록으로 에러가 전파되고 에러 전파 맵은 1로 설정된다. 이와 달리, 매크로블록이 오류 매크로블록들을 기준으로 사용하지 않으면, 해당 매크로블록들의 좌표에 대한 에러 전파 맵은 0으로 설정된다. 매크로블록(F, D, E)은 정확하게 수신된다. 그러나, 매크로블록(E)은 매크로블록(D, B, C)을 참조하므로 에러는 그 매크로블록(E)으로 전파된다.
에러 전파 맵의 생성은 화소 레벨에서 비트스트림의 완전 디코딩을 필요로 하지 않음을 알아야 한다. 사실, 에러 전파 맵은 비트 스트림 분석기에 의해 비트스트림으로부터 추출되는 다음의 정보를 이용하는 것에 의해 생성될 수 있다: (a) 슬라이스 헤더, (b) 픽쳐 유형, (c) 매크로 블록 유형, (d) 시간적으로 예측된 매크로블록의 기준 지수.
또한, 프로브 장치 내의 별개의 디코더는 수신된 비트 스트림을 디코딩하고, 재구성된 픽쳐는 버퍼 내에 저장된다. 버퍼의 크기는 STB에 의해 생길 수 있는 지연을 처리할 정도로 커야 한다. 최대 예상되는 지연을 d(초)로 하고, 비디오 시퀀스의 프레임 속도를 f로 한다. 그러면, 버퍼는 총 N rec =d·f의 프레임을 저장할 수 있어야 한다.
두 번째 단계에서, 처리된 비디오 시퀀스는 버퍼 내의 재구성된 픽쳐 각각 하나와 비교된다. 이러한 비교의 목적은 다음의 수학식에 기반하여 버퍼 내의 재구성된 픽쳐의 세트로부터 매칭 프레임(n*)을 찾기 위함이다.
[수학식 3]
Figure pat00003
여기서, F'(x,y,t)는 검토중인 처리된 비디오 픽쳐의 t-프레임의 위치(x,y)의 화소 값이고, F(x,y,n)은 재구성된 픽쳐의 버퍼 내의 n-번째 프레임의 동일한 위치에서의 화소이고, n=0,1,...,N rec 이다. 패킷 손실에 의해 영향을 받은(직접적으로 또는 에러 전파에 기인하여) 화소를 배제하고 매칭 처리가 두 개의 픽쳐 간에 더 유사할 것으로 예상되는 화소로 제한되는 것을 보장하기 위해 각 픽쳐의 화소 값의 에러 전파 맵과의 곱셈이 적용된다. 또한 주의할 점은 최소화를 위해 여기 사용되는 특정 함수(소위 절대 차이의 합, SAD) 대신에 예컨대, 평균 제곱 에러와 같은 임의의 유사한 함수가 사용될 수 있다는 것이다.
매칭 처리가 완료된 후, 매칭된 프레임(n*)은 재구성된 픽쳐의 버퍼로부터 제거되고, 매칭된 프레임은 추가로 비트 스트림의 대응하는 부분과 함께 채용되어 예컨대 하이브리드 비디오 품질 평가를 위한 모듈로의 입력으로서 사용될 수 있다.
이하 비디오 비트 스트림과 디코딩된 비디오 시퀀스 간의 동기화에 대한 제2 실시예를 설명한다.
본 발명의 제2 실시예에서, 비트 스트림과 처리된 비디오 시퀀스 간의 동기화는 비트 스트림을 분석하고, 패킷 손실에 의해 영향을 받는 각 프레임의 영역에 대한 정보를 추출하고, 동일 패턴의 에러가 처리된 비디오 시퀀스에 보이는지를 조사하는 것에 의해 수행된다. 전체 절차의 블록 다이어그램이 도 3에 묘사된다.
제1 단계에서, 프로브 장치 내의 비트 스트림 분석기는 비트 스트림을 처리 및 분석하여, (각 프레임에 대해) 에러 맵[I(.,.,.)]과 그에 따라 제1 실시예의 내용에서 상기 정의되는 바와 같이 패킷 손실에 의해 영향을 받은 화소의 세트(A)를 생성한다. N rec 프레임의 에러 맵은 아래 설명되는 바와 같이 처리된 비디오 시퀀스의 대응하는 에러 맵과 추후 매칭될 수 있도록 버퍼 내에 저장된다.
다음 단계에서, 패킷 손실에 기인하여 손상된 처리된 비디오 시퀀스의 현재 픽쳐의 매크로블록이 추정되고, 제1 실시예의 내용에서 상기 정의된 바와 같이 에러 맵[Ipvs(...)]과 세트(Apvs)가 생성된다. 다음에, 에러 맵[Ipvs(...)]의 화소의 윤곽이 추정된다. 현재 픽쳐의 손상된 매크로블록과 이들 매크로블록에 속하는 화소의 윤곽의 추정 방법은 본 발명의 범위 밖이므로, 예컨대 2010년 QoMEX에서 G. Valenzise 등에 의한 "비트스트림 정보 없이 H.264/AVC 내의 채널 유도 왜곡의 추정"과 같은 당업자가 알고 있는 임의의 방법이 사용될 수 있다.
처리된 비디오 시퀀스의 윤곽의 엣지는 버퍼에 사전 저장된 에러 맵의 윤곽의 엣지와 비교된다. 윤곽 매칭이 세트 A에 속한 화소인 에러 맵에 의해 정의된 영역으로 제한되면, 처리된 비디오 시퀀스로부터 검출된 윤곽의 엣지는 고려되지 않는다. 또한, 검출된 영역을 처리된 비디오 시퀀스로부터 오류인 것으로 검출된 오류인 대응하는 영역으로서 통상적으로 약간 잘못 해석할 수 있으므로, 검색 영역은 디코더에 의해 검출된 윤곽의 엣지가 처리된 비디오 시퀀스에서 검출된 것보다 작지 않은 것을 보장하기 위해 k 화소만큼 증가된다. 본 실시예에서, k는 5가 되도록 선택된다. 그러나, 임의의 다른 값이 선택될 수 있다.
따라서, 패킷 손실에 기인한 윤곽의 엣지가 검출되는(전술한 바와 같이 증가되는) 영역에 속하는 화소의 세트(Apvs)가 형성되고, 에러 맵(Ipvs)이 생성된다. 위치[(x, y)]에서 t번째 처리된 비디오 시퀀스의 에러 맵 값을 Ipvs(x,y,t)로 나타내고, 여기서 x=1, 2,...,M이고, y=1, 2,...,N이고, M과 N은 각각 비디오 시퀀스의 각 프레임의 수평 및 수직 크기로 한다. 그러면,
[수학식 4]
Figure pat00004
세 번째 단계에서, 처리된 비디오 시퀀스의 현재 픽쳐의 에러 맵은 버퍼 내에 저장된 에러 맵(제1 단계에서, 비트 스트림을 분석하는 것에 의해 생성된 에러 맵) 중 각각 하나의 에러 맵과 비교된다. 이러한 비교의 목적은 다음의 수학식에 기반하여 처리된 비디오 시퀀스의 현재 픽쳐와 매칭되는 버퍼 내의 재구성 픽쳐의 세트로부터 매칭 프레임(n*)을 찾기 위함이다.
[수학식 5]
Figure pat00005
여기서, Ipvs(x,y,t)는 검토중인 PVS의 에러 맵의 t-프레임의 위치(x,y)의 값이고, I(x,y,n)은 재구성된 픽쳐의 버퍼 내의 n-번째 프레임에 대응하는 에러 맵의 동일한 위치에서의 화소이고, n=1,2,...,N rec 이다.
최종적으로, 비디오 시퀀스의 품질을 평가하기 위해 비트 스트림과 처리된 비디오 시퀀스로부터의 정보를 결합한 하이브리드 비디오 품질 평가 모듈이 도 3에 예시된 바와 같이 제시될 수 있다.
함수[f(.,.)]는 윤곽 패턴 매칭에 기반하여 두 개의 에러 맵 사이의 유사성을 결정하기 위해 사용될 수 있다. 윤곽-기반 패턴 매칭 알고리즘은 본 발명의 범위 밖이고, 예컨대, 2003년 멀티미디어 정보 검색(Multimedia Information Retrieval)에 기재된 T. Adamek와 N. O'Connor에 의한 "효율적인 윤곽-기반 형상 표현 및 매칭"에서의 방법와 같은 임의의 관련 방법이 사용될 수 있다.
이하, 본 발명의 추가 실시예에 따른 비트 스트림과 암호화된 비디오 시퀀스의 디코딩된 이미지 사이의 시간적 동기화를 설명한다.
프레임 동기화의 문제점은 비디오 시퀀스가 암호화될 때 더 분명해지며, 비트 스트림에 대한 유용한 정보만이 패킷 헤더로부터 추출될 수 있다. 패킷 헤더의 조사만에 기반하여 비트 스트림으로부터 추출될 수 있는 파라미터는 각 프레임의 크기와 유형이다.
프레임-기반 특성 매칭에 기반한 동기화
비디오 비트 스트림과 암호화된 비디오 시퀀스의 디코딩된 이미지 간의 동기화를 위한 제1 실시예의 방법은 비트 스트림에 패킷 손실이 없는 경우를 다루며, 도 4에 예시되어 있다.
제1 단계에서, 패킷 헤더 정보의 분석과 프레임의 크기와 유형[내부, 예측, 또는 양측-예측(bi-predictive)]의 계산을 담당하는 모듈로 비디오 비트 스트림이 전송된다. 크기에 기반한 암호화된 비디오의 프레임의 유형의 추출 방법은 본 특허의 범위를 벗어난다. 예컨대, 본 설명의 말미에 기술된 방법이 사용될 수 있다.
제2 단계에서, 프레임 크기와 유형에 대한 정보를 사용하여 비디오 프레임에 표현된 정보를 대표하는 특성(예컨대, 시변형(time-varying))을 추출한다. 페이로드(payload) 정보는 암호화에 기인하여 사용될 수 없으므로, 정보 클래스의 근사만이 추정될 수 있음이 분명하다. 프레임 크기와 프레임 유형에 기반한 정보 클래스 추정을 위한 방법은 본 발명의 범위 밖이다. 이러한 목적의 임의의 방법, 예컨대 A. Clark에 의한 WO 2009/012297 A1의 "패킷 비디오 스트림의 정보 추정을 위한 방법 및 시스템"이 사용될 수 있다.
유사하게, 정보의 유형과 정보를 나타내는 각각의 (예, 시변) 특성은 처리된 비디오 시퀀스의 픽쳐로부터 추출된다. 본 발명은 비트 스트림과 처리된 비디오 시퀀스 간의 동기화 측면에만 촛점을 맞추고 있으므로, (화소 도메인)에서 픽쳐로부터 특성의 추출 및 정보 유형의 검출을 위한 방법은 본 발명의 범위 내에 있지 않다.
제3 단계에서, 처리된 비디오 시퀀스의 현재 픽쳐로부터 추출된 특성들은 패킷 헤드 분석 모듈에 의해 분석된 프레임으로부터 추출된 특성들과 비교된다. 대응하는 특성과 검사중인 현재 PVS에 대응하는 비트 스트림의 부분에 대한 동기화 정보는 비디오 품질의 평가를 담당하는 모듈로의 입력으로서 사용될 수 있음을 유의해야 한다. 도 4에 예시된 바와 같이, 비디오 시퀀스의 품질을 평가하기 위해 비트 스트림과 처리된 비디오 시퀀스로부터 정보를 결합시키는 하이브리드 비디오 품질 평가 모듈이 제시될 수 있다.
패킷 손실 이벤트 발생에 기반한 시간적 동기화
본 발명의 본 실시예에서, 비트 스트림과 처리된 비디오 시퀀스는 이전의 서브 섹션에 기술된 방법에 기반하여 아무런 에러(예컨대, 패킷 손실에 기인한)도 생기지 않은 경우 동기화되며, 패킷 손실이 검출될 때 동기화가 요구되는 경우를 고려하는 것으로 가정한다.
제1 단계에서, 패킷 헤더 정보의 분석, 프레임 유형의 계산 및 패킷 손실에 의해 영향을 받은 프레임의 검출을 담당하는 모듈로 비디오 비트 스트림이 전송된다. 모든 프레임의 유형이 검출되고, 따라서 패킷 손실이 예측 처리에 기인하여 그 후속 프레임으로 전파되는지 여부가 결정된다.
다음 단계에서, 처리된 비디오 시퀀스의 현재 픽쳐가 패킷 손실에 기인하여 발생됐을 수 있는 왜곡에 대해 조사된다. 이러한 알고리즘은 패킷 손실에 기인한 왜곡과 원래의 비디오 시퀀스의 손실 압축의 결과로 생긴 왜곡 간을 구별할 수 있어야 함을 알아야 한다. 왜곡의 검출 및 구별을 위한 알고리즘은 본 발명의 범위 밖이다. 예를 들면, 예컨대 2010년 QoMEX에서 G. Valenzise 등에 의한 "비트스트림 정보 없이 H.264/AVC 비디오 내의 채널 유도 왜곡의 추정"에서의 방법이 이러한 목적으로 사용될 수 있다.
제3 단계에서, 처리된 비디오 시퀀스를 비트 스트림의 대응하는 프레임과 매칭하는 처리가 수행된다. 처리된 비디오 시퀀스의 현재 픽쳐가 패킷 손실의 결과로서 야기된 왜곡을 포함하는 것으로 검출되면, 해당 픽쳐는 패킷 손실을 포함하는 것으로 확인된(처음 단계에서) 프레임에 대응하는 비트 스트림의 부분과 매칭된다.
마지막으로, 동기화 정보(즉, 비디오 비트 스트림의 대응하는 부분과 함께 PVS의 현재 프레임)가 계산된다. 이러한 정보는 비디오 품질의 평가를 위한 모듈로 입력으로서 전송될 수 있다.
서두에 언급된 종래 기술은 오류 네트워크를 통한 비디오 시퀀스의 전송 또는 시퀀스의 처리에 기인할 수 있는 프레임 스킵, 반복, 삭제, 셔플링(shuffling) 및 데이터 압축에 기인한 두 개의 비디오 시퀀스 간의 시간적 동기화의 문제점을 고려한다. 이에 반해, 본 발명은 최종 사용자 측에서의 처리된 비디오 시퀀스와 비트 스트림의 동기화만을 고려하며, 따라서 동기화의 손실의 유일한 소스는 디코더 장치와 비트 스트림 분석기와, 디코더(STB)와 프로프 장치 내의 디코더에 의해 적용된 상이한 에러 은닉 기법에 의해 도입된 지연이다.
도 1은 처리된 비디오 시퀀스의 비트 스트림 및 디코딩된 이미지 데이터와의 시간적 동기화를 위한 종래의 프로브 장치를 예시하며;
도 2는 본 발명의 제1 바람직한 실시예에 따라 비트 스트림과 출력 이미지의 동기화를 위한 블록 다이어그램을 예시하며;
도 3은 비디오 비트 스트림과 처리된 비디오 시퀀스 간의 동기화를 위한 본 발명의 제2 바람직한 실시예의 블록 다이어그램을 예시하며;
도 4는 본 발명의 추가의 바람직한 실시예에 따라 비트 스트림과 암호화된 비디오 시퀀스의 디코딩된 이미지 간의 동기화를 예시하며;
도 5는 후속 프레임에 대한 에러 전파 맵의 예를 예시하며;
도 6은 시간적 (내부) 예측에 기인하여 내부 디코더에 에러 전파 맵의 생성을 예시하며;
도 7은 내부 예측에 기인하여 내부 디코더에 에러 전파 맵의 생성을 예시한다.
다음에는 전술한 바와 같이 크기에 기반한 암호화된 비디오의 프레임의 유형을 추출하기 위한 방법을 설명한다.
제1 단계에서, 각 비디오 프레임에 대한 바이트 수가 추정 또는 계산된다. 이 작업의 수행에 다른 방법들이 적절할 수 있다. 예를 들면, 전송층의 소정 타임 스탬프의 변화를 이용하여 새로운 프레임의 시작을 검출하거나 새로운 프레임을 알리는 데 사용되는 헤더 구조 내의 소정 비트가 사용될 수 있다. 일반적으로, 이들 비트 스트림 특성은 암호화된 비트 스트림에서도 유효한다. 그러므로, 프레임 크기는 정확히 계산된 바이트이거나 후속 단계들을 수행하기에 충분하게 추정될 수 있다.
제2 단계에서, 후속 GoP의 시작을 나타내는 후속 I-프레임의 확인시까지 비디오 비트 스트림이 스캐닝된다.
비 암호화된 스트림에서, 후속 I-프레임(모든 프레임 유형으로서)은 비디오 프레임 헤더의 조사를 통해 확인될 수 있다. 암호화된 스트림에서, 또는 프레임 경계가 페이로드 내의 알려지지 않은 지점에서 어느 정도 보이면, I-프레임을 "랜덤 액세스 포인트"로서 마킹하는 소정의 플래그가 대신 액세스될 수 있다. 여러 이유로 인해, 이들 플래그가 보이지 않으면, 여전히 대면한 프레임 크기의 분석이 사용되어 I-프레임을 검출할 수 있는데, 이는 그 크기가 전반적으로 P와 B-프레임에서보다 훨씬 크기 때문이다.
제3 단계에서, 다른 I-프레임까지의 모든 후속 비디오 프레임의 바이트의 크기는 다음 I-프레임을 만나서 GoP가 완료될 때까지 소정의 어레이로 캡처될 것이다.
제4 단계에서, 이들 어레이는 통상의 GoP 구조를 나타내는 다수의 미리 정해진 패턴에 매칭될 것이다. 최적의 매칭은 추후의 단계에서 다음의 GoPs에 대한 프로토유형으로서 작용하는 특정 GoP에 관련되며, 그에 따라 들어오는 프레임의 프레임 유형의 사전 추정을 용이하게 할 수 있다.
후속 GoPs의 경우, 프레임 크기의 어레이는 리셋될 수 있어서, 현재 GoP의 데이터만이 사용되거나 소정 갯수의 이전의 GoPs의 프레임 크기가 가산되어 평균 값을 얻을 수 있다. 후자의 경우, 어레이의 요소에 가산된 프레임 크기 값의 수를 알기 위해 추가의 어레이가 필요할 수 있다. 바람직하게, 다음을 적용하는 것에 의해 이동 평균을 계산할 수 있다:
Figure pat00006
여기서 M은 평균화될 GoPs의 갯수이다.
본 발명에 따라 다른 가중 방식이 사용될 수 있다.
가능한 GoP 패턴
전술한 바와 같이, GoP는 통상 GoP의 경계를 마킹하는 두 개의 I-프레임 간의 소정 시퀀스의 P- 및 B-프레임으로 이루어진 특정 구조를 가진다. 전형적인 GoP 구조는 다음과 같다:
Figure pat00007
("MPEG2로 알려진 "고전적인" GoP 구조)
Figure pat00008
(계층적 인코딩을 위한 가능한 GoP 구조, B= 기준 B-프레임, b=비 기준 B-프레임)
인터레이스된(interlaced) 비디오는 때로 하나의 비디오 프레임마다 두 개의 독립적 필드로 이루어진 "필드 시퀀스"로서 인코딩되는 것을 고려하여야 한다. 이 경우, 상기 구조는 다음과 같이 보일 수 있다:
Figure pat00009
이러한 구조는 정확히 검출되면 암호화된 스트림에서의 프레임과 필드 인코딩 간을 결정할 수 있게 하는 분명한 패턴을 형성한다. 여기서 필드 시퀀스에서는 키 프레임의 제1 필드만이 실제 인트라 필드로서 코딩됨을 알 것이다. 키-프레임의 제2 필드는 예측 필드일 수 있다. 상기 표기에서 이것은 I/P 프레임이 될 것이다. P/I-프레임도 가능하다.
상기 패턴은 "디스플레이 순서"로 가시화된다. 사실, 프레임은 다른 순서, 즉 "비트 스트림 순서" 또는 "디코딩 순서"로 전송된다. B-프레임은 과거와 미래의 기준을 가지므로, 이들 미래 기준이 미리 전송됨으로써 아래에 보여지는 바와 같은 비트 스트림이 얻어진다:
Figure pat00010
비트 스트림 순서
Figure pat00011
디스플레이 순서(비트 스트림 순서 지수를 가짐)
Figure pat00012
비트 스트림 순서
Figure pat00013
디스플레이 순서(비트 스트림 순서 지수를 가짐)
동일한 GoP 구조에 대해서도 다른 패턴도 가능하다. 이것은 "폐쇄된 GoP 전송"과 "개방된 GoP 전송"의 기술이 존재하기 때문이다.
폐쇄된 GoPs에서, 다른 GoPs의 정보의 전송은 결코 중복되지 않는다. 개방된 GoP 구조에서 제1 I-프레임은 디스플레이 순서로 선행하는 B-프레임(선행하는 GoP를 폐쇄함) 이전에 전송된다. 상기 예들은 폐쇄된 형태로 나타낸 것이다. 개방된 GoP 형태의 동일한 예는 다음과 같다:
Figure pat00014
디스플레이 순서(개방 GoP)
Figure pat00015
비트 스트림 순서
Figure pat00016
디스플레이 순서(개방 GoP)
Figure pat00017
비트 스트림 순서
여기서 첫 번째 2개(3개) B-프레임(여기서는 볼드체로 표기됨)은 선행하는 GoP에 속하고 이들은 현재 GoP의 I 프레임 이후에 전송된다.
쉽게 알 수 있는 바와 같이, 비트 스트림 순서와 그에 따라 얻어지는 GoP 패턴은 정확하게 검출되면 폐쇄된 GoP와 개방된 GoP 시퀀스 간의 결정을 허용하는 확실한 방식으로 상이하다.
다른 가능한 패턴은 다음을 포함한다:
Figure pat00018
(비디오 컨퍼런싱 및 기타 낮은 지연의 적용 등에 사용되는 B-프레임 없는 GoP 구조)
Figure pat00019
(단 하나의 B-프레임을 갖는 GoP 패턴)
완전히 판독 가능하거나 암호화되거나 패킷 손실에 의해 손상될 수 있는 임의의 분석된 비디오 스트림의 GoP 구조를 추정하는 것은 본 발명의 범위 내에 있다. 이러한 목적을 달성하기 위해 필요한 유일한 정보는 모든 대면된 비디오 프레임의 바이트의 크기와 어떤 프레임이 I- 프레임 유형인지에 대한 지식이다.
프레임 크기의 계산/추정
본 발명은 비디오 시퀀스의 모든 프레임의 바이트 크기의 분석에 기반하여 하므로, 이들 크기는 모든 프레임에 대해 비트 스트림으로부터 추출되어야 한다. 이러한 작업을 수행하기 위해 다른 동작을 요할 수 있는 여러 가지 상이한 전송 방식이 존재한다. 그러나, 현재까지 가장 중요한 IP 베이스 네트워크 상의 전송 방식은 실시간 프로토콜(real time protocol; RTP)"이다. 따라서 여기서는 프레임 크기 추출은 RTP만에 대해 설명되지만, 다른 전송 방식의 경우 유사하게 작동할 것이다. 당업자는 본 발명을 이러한 용도의 임의의 다른 전송 방식에 용이하게 적용할 수 있을 것이다.
RTP를 통해 비디오 정보의 전송 방식은 두 가지 주요 접근이 존재한다:
● 비디오는 RTP 패킷의 페이로드로서 직접 전달된다. 이 경우, 오디오 및 기타 가능한 정보("시스템" 정보)가 다른 포트 수를 갖는 다른 RTP-스트림으로 전달된다. 그러므로, 비트 스트림의 비디오 부분은 패킷의 나머지로부터 쉽게 분리될 수 있다.
하나의 비디오 프레임은 통상 각기 타임 스탬프를 전달하는 다수의 RTP 패킷의 페이로드로 이루어진다. 비디오의 경우, 이들 RTP-타임스탬프들(RTP-timestamps)은 이들이 가지는 상대적 디코딩 시간으로 설정된다. RTP 패킷은 각각 다른 크기를 가질 수 있으므로, 비디오 프레임은 대체로 다수의 완전한 RTP-패킷으로 존재할 것이다. 이 경우 비디오 프레임의 크기를 계산하기 위해, 동일한 타임 스탬프를 갖는 모든 RTP-패킷의 페이로드 크기만이 가산되어야 한다.
프레임 경계가 하나의 RTP-페이로드 내에 보이는 경우에도, 프레임 크기는 상기 값에 의해 매우 양호하게 추정될 수 있다. 암호화될 수 있는 페이로드 자체로의 액세스는 필요하지 않다.
RTP-패킷 손실을 검출하기 위해 RTP-헤더의 일부인 RTP-시퀀스 번호가 액세스될 수 있다. 손실된 패킷의 크기를 알 수 없으므로, 추정이 필요하다. 이것은 소정 종류의 평균 크기의 과거 패킷에 의해 행해질 수 있다.
● 비디오는 RTP를 통해 전달되지만, 페이로드는 "전송 스트림"(transport stream; TS)이다. TS에서, 비디오, 오디오 및 기타 정보가 하나의 스트림으로 멀티플렉싱된다. 멀티플렉스 패킷 각각은 작은 TS-헤더를 포함하는 188 바이트의 크기를 가진다. 하나의 RTP-패킷은 소위 "프로그램 ID"(PID)에 의해 특정 서브 스트림에 속하는 것으로 마킹되는 이들 TS-패킷 중 7개를 보유한다. 이들 서브 스트림 중 하나는 분석 대상 비디오이다. 암호화된 스트림에서도 TS-헤더는 대체로 암호화되지 않으며, 그에 따라 액세스될 수 있다. 이들 헤더는 프레임 크기의 정확한 측정을 가능케 한다. RTP-패킷 손실의 경우, 소위 TS 헤더 내의 "연속성 카운터(continuity counter)"가 사용되어 특정 RTP 손실에 대해 각 서브 스트림마다 별도로 손실된 서브 스트림-패킷의 수를 계산할 수 있다. TS-패킷은 RTP-패킷보다 훨씬 작고, 그리고 (드문 경우인 스터핑(stuffing)이 없는 경우) 동일한 페이로드 크기를 가지므로, 손실된 바이트의 수가 더 정확하게 추정될 수 있다. TS-헤더 내의 전술한 연속성 카운터는 4비트만을 가질 뿐이다. 그러므로, 16개까지의 손실된 TS-패킷이 검출될 수 있다. 공지의 손실된 RTP 패킷의 수 및 용이하게 계산될 수 있는 RTP 패킷 당 TS-서브 스트림 패킷의 평균 수에 대한 값과 함께, 16개 이상의 손실된 TS-패킷에 대한 정확한 추정이 추정될 수 있다.
RTP 타임 스탬프는 비디오 프레임이 가지는 비디오 프레임의 상대적인 디코팅 시간에 동기화되므로, 완벽한 손실 프레임조차 검출될 수 있는데, 이는 이러한 경우 RTP-타임 스탬프가 연속적인 프레임 간에 두 개 이상의 시간차에 의해 증분될 것이기 때문이다.
I-프레임의 검출
분석을 시작하기 위해, 비트 스트림은 새로운 GoP의 시작을 마킹하는 다음 I-프레임의 시작을 찾기 위해 스캐닝된다. I-프레임은 다른 수단에 의해 검출된다. 비 암호화된 스트림의 경우, 기본 스트림의 프레임 헤더는 모든 비디오 프레임에 대해 용이하게 액세스될 수 있다. 비디오 프레임 헤더는 프레임 유형을 명시적으로 담고 있다.
비디오가 RTP-페이로드로서 직접 전달되면, 프레임-헤더는 언제나 모든 RTP-패킷의 페이로드 내의 제1 바이트가 M-비트의 RTP-헤더가 1로 설정된 RTP-패킷 다음에 오는 것으로 보여야 한다. 프레임 헤더도 RTP-패킷의 페이로드 내에 있는 것으로 보일 수 있으면, 이들 헤더는 용이하게 검색될 수 있는데, 이는 특유의 바이트 시퀀스를 포함하고 있기 때문이다.
RTP를 통한 TS의 시용의 경우, 소위 TS-헤더의 적응-필드 내의 "랜덤_액세스_플래그"가 사용될 수 있다. 이것은 도착 프레임이 I-프레임으로서 코딩되었음을 나타낸다. 모든 암호화된 스트림에서 TS-헤더의 일부로서 적응 필드는 통상 암호화되지 않는다.
일단 프레임 경계가 알려지면, I-프레임은 경험적으로 검출될 수 있다. I-프레임의 평균 크기는 통상 P 및 B-프레임보다 훨씬 크다.
일단 I-프레임의 시작이 발견되면, 다음 GoP의 시작도 발견된다. 해당 시점으로부터 후속하는 모든 프레임의 크기는 다수의 가능한 방식으로 수집된다. 다음의 설명에서 이러한 수집 처리는 수집된 데이터의 분석이 시작될 때까지 완전한 GoP에 대해 계속된다. 본 발명의 다른 실시예에서, 수집 기간은 다른 길이를 가질 수 있다.
데이터 수집 및 패턴 매칭의 제1 실시예
하나의 긴 어레이의 프레임 크기
현재 GoP의 초기 I-프레임이 대면된 후, 모든 후속 프레임의 프레임 크기는 어레이로 된 요소 내로 저장되며, 어레이의 지수는 상기 I-프레임을 지난 프레임의 수와 같다. 이것은 다음 I-프레임이 검출되어 분석 대상인 제1 GoP의 종료를 지시할 때까지 행해지는 것이 바람직하다. 이렇게 구성된 프레임 크기의 어레이는 이러한 어레이를 통상의 패턴 세트에 비교하고 추정된 GoP-패턴과 그리고 적용 가능한 경우 다른 데이터를 출력하는 패턴 매칭 처리로의 입력이다.
분석된 비트 스트림이 암호화되지 않고, 그에 따라 프레임 유형이 알고리즘에 알려지면, 실제 프레임 크기는 비-기준 B-프레임의 경우 '1', 기준 B-프레임의 경우 '2', P-프레임의 경우 '4'와 같이 실제 프레임 크기와 동일한 목적을 제공하지만 임의의 통계적 불확실성을 도입하지 않는 표준화된 값으로 대체될 수 있다.
패턴 매칭
본 발명의 일 실시예에서, 프레임 크기의 어레이는 B-프레임의 경우 '0'이고 P-프레임의 경우 '1'인 이진 패턴에 매칭될 수 있다. 따라서 상기 GoP-구조의 예는 다음과 같은 패턴으로 매칭될 것이다:
0, 0, 1, 0, 0, 1 ... (개방 GoP를 갖는 I, b, b, P, b, b, P 구조)
1, 0, 0 1, 0, 0 ... (폐쇄 GoP를 갖는 I, b, b, P, b, b, P 구조)
0, 0, 0, 1, 0, 0, 0, 1 ... (개방 GoP를 갖는 I, b, B, b, P, b, B, b, P 구조)
1, 0, 0, 0 1, 0, 0, 0 ... (폐쇄 GoP를 갖는 I, b, B, b, P, b, B, b, P 구조)
본 발명의 해당 실시예에서, "프레임 크기의 어레이"는 이진 어레이로도 변환될 수 있다. 가장 용이한 경우로, 하나의 기준 값이 사용되어, 상기 어레이의 모든 요소의 값을 "작은 크기의 프레임(들)"의 경우 '0'으로, "큰 프레임(들)"의 경우 '1'로 대체할 수 있다. "큰 것"과 "작은 것" 사이를 결정하는 기준 값은 단순히 1보다 큰(>1) 요소를 곱한 모든 요소의 평균일 수 있다. 대안적인 실시예에서, 임계 값은 모든 어레이 요소의 중간 값 또는 요소의 최소값과 최대값의 가중 조합 또는 어레이 요소의 기타 조합일 수 있다. 또한, 임계값은 작은 수의 프레임 크기 값에 대해 적용될 수 있다. 이것은 소정의 인자 또는 추가적 항목에 의해 상기 기술된 임계값들 중 하나를 변화시키거나 현재 값의 소정의 인접부의 프레임 크기 값으로부터만 임계값을 계산하는 것에 의해 얻어질 수 있다.
전반적으로, 어레이에는 제1의 극소값을 사용하지 않는 것이 합당할 수 있는데, 이는 I-프레임 직후에 P- 및 B-프레임이 불규칙하게 작은 크기를 가질 수 있기 때문이다.
매칭 처리
GoP의 길이는 대체로 미리 알려지지 않는다. 통상의 값은 매 1초 또는 2초당 하나의 I-프레임으로, 25 프레임/초의 통상의 프레임 속도에 대해 예컨대 25-50 프레임(또는 "필드 코딩" 모드의 경우 50-100 필드)의 GoP 길이가 얻어진다. 통상, 인코더는 장면-컷 검출을 가지며, 모든 장면-컷 위치에 I-프레임을 배치한다. 그러므로, 장면-컷이 충돌하면, GoP는 2 프레임 또는 심지어 1 프레임까지 떨어진 임의의 크기를 가질 수 있다.
전체 길이에 비해, 가능한 GoP 구조 각각의 기본 패턴은 일정하면서도 짧다(예컨대, I, b,b,P,...의 예의 경우 0, 0, 1). 완전한 GoP의 요소와의 매칭을 위해, 이들 간단한 기본 패턴은 실제 GoP 크기에 도달하기까지 반복되어야 한다.
오직 이진 매칭이 적용되는 본 발명의 실시예에서, 매칭 처리 자체는 연결된 기본 패턴 요소의 변환된 어레이의 프레임 크기의 모든 요소에 대해 단순히 "배타적 부정 논리합(exclusive nor)" 연산일 수 있다. 이들 "배타적 부정 논리합"의 결과는 이후 사용된 패턴에 대해 매칭 스코어까지 가산된다. 이것은 모든 사용 가능한 미리 정해진 패턴으로 행해진다.
최고 스커어 수를 얻는 특정 패턴은 최적의 매칭으로 간주되고, 그 관련된 GoP 구조, 프레임/필드-상태, 개방/폐쇄-상태가 추가의 분석을 위해 채택된다.
계층적 코딩 및 통상의 B-프레임 코딩 간의 차별화
3개 이상의 연속하는 B-프레임이 최적 매칭의 GoP 패턴으로 추정되는 경우, 프레임의 시퀀스는 전술한 바와 같이 기준 B-프레임에 의한 "계층적 코딩(hierarchical coding)" 방법으로 코딩됐을 수 있다. 만일 그렇다면, 이들 기준 B-프레임은 비 기준 B-프레임(b-프레임으로 상기 표기됨)보다 바이트 프레임 크기가 크기 쉽다.
계층적 또는 비계층적 코딩의 사용 여부에 대한 신뢰성 있는 추정을 얻기 위해, 모든 서브 세트의 연속적 B-프레임(두 개의 P-프레임 사이)은 기준 B-프레임을 나타내는 서브 세트 내의 요소의 프레임 크기가 상기 서브 세트 내의 B-프레임을 나타내는 다른 모든 요소보다 상당히 큰지 여부에 대해 조사될 수 있다. 3개의 연속적 B-프레임의 경우, 이것은 제1 서브 세트 요소이고, 5개의 연속적 B-프레임의 경우, 이들은 제1 및 제2 서브 세트 요소이다. 7개의 연속적 B-프레임의 경우, 이들은 제1, 제2, 제3 서브 세트 요소이다(디코딩 순서로). 다른 조합은 계층적 코딩의 경우 매우 가능성이 작다. 이러한 조건이 연속하는 B-프레임의 세트의 크기에 대해 참이면, GoP, 계층적 코딩이 추정될 수 있다.
4개 이상의 B-프레임의 패턴의 경우, 계층적 코딩은 전술된 시험 없이도 추정될 수 있는데, 이는 계층적 코딩 없이 행 내에 4개 이상의 B-프레임은 극히 가능성이 낮기 때문이다.
얻어진 추정된 GoP-구조를 다음의 GoP의 프레임에 적용하는 것은 시퀀스가 암호화되거나 프레임 헤더가 패킷 손실로 인해 소실되는 경우 이들 프레임의 프레임 유형을 신뢰성 있게 추정할 수 있게 한다.
본 발명은 도면과 전술한 설명에 상세히 예시 및 기술되고 있지만, 이러한 예시와 기술은 실례를 보이거나 예시적인 것이고 제한적인 것은 아닌 것으로 간주되어야 한다. 이어지는 특허청구범위의 범위 내에서 당업자들에 의해 변경 및 변형이 이루어질 수 있음을 알 것이다. 특히, 본 발명은 설명된 상이한 실시예로부터의 특징들이 임의로 조합된 추가의 실시예들을 포괄한다.
또한, 특허청구범위에서 "가지는 또는 포함하는"이란 표현은 다른 요소 나 단계를 배제하지 않으며, 부정관사는 복수를 배제하지 않는다. 단일 유닛은 청구범위에 언급된 여러 특징의 기능들을 수행할 수 있다. 소정의 속성, 특히 소정의 값과 관련된 "필수적으로", "약", "대략" 등의 용어는 정확하게 그 속성이나 정확하게 그 값을 각각 정의한다. 청구범위에서 임의의 참조 부호는 범위를 제한하는 것으로 해석되어서는 안 된다.

Claims (4)

  1. 비디오 디코더의 암호화된 입력 비트스트림을 외부 비디오 디코더에 의해서 획득되는 처리된 비디오 시퀀스(PVS)와 시간적으로 동기화하여 비디오 시퀀스의 품질을 평가하는 방법으로서,
    a) 상기 암호화된 입력 비트스트림을 분석 모듈로 제공하는 단계;
    b) 상기 분석 모듈에서 상기 암호화된 입력 비트스트림의 패킷 헤더 정보를 분석하고, 상기 암호화된 입력 비트스트림 내에 포함된 픽쳐의 크기와 유형을 계산하는 단계;
    c) 상기 계산된 픽쳐의 크기 및 유형에 기반하여 상기 비디오 픽쳐에 표현된 정보(content)를 대표하는 특성(feature)을 추출하는 단계;
    d) 상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스의 픽쳐로부터의 정보를 대표하는 각각의 특성과 정보 유형을 추출하는 단계;
    e) 상기 d) 단계에서 상기 처리된 비디오 시퀀스의 현재 픽쳐로부터 추출된 특성을 상기 c) 단계에서 상기 분석된 픽쳐로부터 추출된 특성과 비교하여 상기 현재 처리된 비디오 시퀀스에 대응하는 상기 암호화된 입력 비트스트림의 부분을 계산하는 단계;
    f) 상기 현재 처리된 비디오 시퀀스에 대응하는 상기 암호화된 입력 비트스트림의 부분이 비디오 품질 평가 모듈에 추가로 입력되는 단계; 및
    g) 상기 비디오 품질 평가 모듈에 의해서, 상기 암호화된 입력 비트스트림과 상기 처리된 비디오 시퀀스로부터 얻어진 정보에 기반하여 주관적 품질 스코어를 추정하는 단계를 포함하되,
    상기 b) 단계는,
    추가로 패킷 손실에 의해 영향을 받은 프레임을 검출하고,
    h) 패킷 손실에 기인하여 발생되는 아티팩트에 대해, 상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스의 상기 현재 픽쳐를 조사하는 단계; 및
    i) 상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스를 상기 암호화된 입력 비트스트림에 대응되는 프레임과 매칭하는 단계를 포함하며,
    상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스의 상기 현재 픽쳐가 패킷 손실의 결과로서 삽입된 아티팩트를 포함하는 것이 h) 단계에서 검출된 경우, 해당 픽쳐는 상기 패킷 손실을 포함하도록 b) 단계에서 발견된 상기 프레임에 대응되는 상기 암호화된 입력 비트스트림의 부분과 매칭되는 것을 포함하는 방법.
  2. 제1항에 있어서,
    상기 c) 단계와 상기 d) 단계에서 추출된 특성(feature)들은 시변(time-varying) 특성들인 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 c) 단계와 상기 d) 단계는 화소 도메인에서 수행되는 것을 특징으로 하는 방법.
  4. 비디오 디코더의 암호화된 입력 비트스트림을 외부 비디오 디코더에 의해서 획득되는 처리된 비디오 시퀀스(PVS)와 시간적으로 동기화하여 비디오 시퀀스의 품질을 평가하는 장치로서,
    상기 암호화된 입력 비트스트림을 수신하고 상기 암호화된 입력 비트스트림을 구문 검토하고 분석하기 위해 구성된 비트스트림 분석기와,
    상기 분석된 암호화된 입력 비트스트림을 상기 처리된 비디오 시퀀스와 동기화하기 위해 구성된 동기화 모듈과,
    비디오 품질 평가 모듈을 포함하고,
    상기 동기화 모듈은,
    비디오 프레임에 표현된 정보를 대표하는 특성(feature)들을 계산된 픽쳐 크기 및 유형에 기반하여 추출하기 위해 구성된 제1 추출 모듈과,
    상기 처리된 비디오 시퀀스의 픽쳐로부터 정보의 유형과 해당 정보를 대표하는 특성들을 추출하기 위해 구성된 제2 추출 모듈과,
    상기 제1 추출 모듈 및 상기 제2 추출 모듈에 연결되는 비교 유닛을 포함하고,
    상기 비교 유닛은,
    상기 처리된 비디오 시퀀스의 현재 픽쳐로부터 추출된 특성들을 상기 분석된 프레임으로부터 추출된 특성들과 비교하고, 매칭 프레임(n*)을 결정하도록 구성되되,
    상기 비교 유닛은, 현재의 상기 처리된 비디오 시퀀스에 대응하는 상기 암호화된 입력 비트스트림의 부분을 상기 비디오 품질 평가 모듈에 입력하도록 구성되고,
    상기 비디오 품질 평가 모듈은, 상기 암호화된 입력 비트스트림과 상기 처리된 비디오 시퀀스로부터 얻어진 정보에 기반하여 주관적 품질 스코어를 추정하도록 구성되고,
    상기 동기화 모듈은,
    추가로 패킷 손실에 의해 영향을 받은 프레임을 검출하고,
    패킷 손실에 기인하여 발생되는 아티팩트에 대해, 상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스의 상기 현재 픽쳐를 조사하고,
    상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스를 상기 암호화된 입력 비트스트림에 대응되는 프레임과 매칭하되,
    상기 외부 비디오 디코더에 의해 획득된 상기 처리된 비디오 시퀀스의 상기 현재 픽쳐가 패킷 손실의 결과로서 삽입된 아티팩트를 포함하는 것이 검출된 경우, 해당 픽쳐는 상기 패킷 손실을 포함하는 것이 발견된 상기 프레임에 대응되는 상기 암호화된 입력 비트스트림의 부분과 매칭되는 것을 특징으로 하는 장치.
KR1020187019655A 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치 KR101960647B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10171454.1A EP2413612B1 (en) 2010-07-30 2010-07-30 Methods and apparatuses for temporal synchronization between the video bit stream and the output video sequence
EP10171454.1 2010-07-30
PCT/EP2011/062800 WO2012013656A1 (en) 2010-07-30 2011-07-26 Methods and apparatuses for temporal synchronisation between the video bit stream and the output video sequence

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020177033502A Division KR20170130633A (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180082638A true KR20180082638A (ko) 2018-07-18
KR101960647B1 KR101960647B1 (ko) 2019-03-20

Family

ID=43064606

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020187019655A KR101960647B1 (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치
KR1020127032630A KR101828628B1 (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치
KR1020177033502A KR20170130633A (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020127032630A KR101828628B1 (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치
KR1020177033502A KR20170130633A (ko) 2010-07-30 2011-07-26 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치

Country Status (10)

Country Link
US (1) US9131216B2 (ko)
EP (3) EP2866448B1 (ko)
JP (1) JP5955319B2 (ko)
KR (3) KR101960647B1 (ko)
CN (1) CN103026719B (ko)
ES (3) ES2536202T3 (ko)
HU (2) HUE027625T2 (ko)
PL (3) PL2413612T3 (ko)
PT (2) PT2413612E (ko)
WO (1) WO2012013656A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9042455B2 (en) * 2008-08-19 2015-05-26 Thomson Licensing Propagation map
CN102187673B (zh) * 2008-08-19 2014-07-30 汤姆森特许公司 亮度评估
KR101611375B1 (ko) * 2008-08-19 2016-04-11 톰슨 라이센싱 압축된 비디오에서 구문 요소의 cabac/avc 준수 워터마킹
CN102132564B (zh) * 2008-08-20 2013-09-11 汤姆森特许公司 用于压缩视频的水印制作的水印选取
BR112012019745B1 (pt) 2010-02-09 2020-11-10 Contentarmor Método de detecção de marca dágua utilizando um mapa de propagação
HUE039252T2 (hu) * 2010-12-10 2018-12-28 Deutsche Telekom Ag Eljárás és berendezés videojel minõségének megállapítására a videojel kódolása és átvitele folyamán
US9203708B2 (en) * 2011-09-26 2015-12-01 Telefonaktiebolaget L M Ericsson (Publ) Estimating user-perceived quality of an encoded stream
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
WO2015088265A1 (en) * 2013-12-13 2015-06-18 Samsung Electronics Co., Ltd. Storage medium, reproducing apparatus and method for recording and playing image data
US9883197B2 (en) 2014-01-09 2018-01-30 Qualcomm Incorporated Intra prediction of chroma blocks using the same vector
CN103778593B (zh) * 2014-01-14 2018-01-19 南昌大学 基于图像关联分解的量子图像加密方法
US9590952B2 (en) * 2014-09-05 2017-03-07 Microsoft Technology Licensing, Llc Lossy data stream decoder
CN104378630A (zh) * 2014-12-12 2015-02-25 国家电网公司 一种会议电视音视频质量分析系统
JP2016127390A (ja) * 2014-12-26 2016-07-11 富士通株式会社 情報処理システム、情報処理システムの制御方法、管理装置の制御プログラム
TWI600319B (zh) * 2016-09-26 2017-09-21 A method for capturing video and audio simultaneously for one-to-many video streaming
CN108124183B (zh) * 2016-11-29 2020-06-19 达升企业股份有限公司 以同步获取影音以进行一对多影音串流的方法
CN110300003B (zh) * 2018-03-21 2021-01-12 华为技术有限公司 数据处理方法以及客户端
CN108880927B (zh) * 2018-04-20 2021-05-11 武汉中元华电电力设备有限公司 一种时间同步信号异常自动记录方法
KR102187211B1 (ko) 2018-04-23 2020-12-04 코그넥스코오포레이션 스테레오-시간적 이미지 시퀀스들로부터 향상된 3-d 데이터 재구성을 위한 방법들 및 장치
CN112673625A (zh) * 2018-09-10 2021-04-16 华为技术有限公司 混合视频以及特征编码和解码
CN110392253B (zh) * 2019-06-25 2021-07-16 北京奇艺世纪科技有限公司 视频的质量评估方法、装置、设备及存储介质
CN110475117B (zh) * 2019-09-26 2022-03-29 北京迈格威科技有限公司 图像压缩的方法、装置、电子设备和计算机存储介质
KR20210067699A (ko) 2019-11-29 2021-06-08 삼성전자주식회사 전자 장치 및 그 제어 방법
WO2021171259A1 (en) * 2020-02-27 2021-09-02 Ssimwave Inc. Real-time latency measurement of video streams
EP3886441B1 (en) * 2020-03-24 2022-07-06 Axis AB Video camera and method for analyzing a video stream
CN112751983B (zh) * 2021-04-02 2021-06-18 湖北亿咖通科技有限公司 图像时间同步方法、装置、电子设备及存储介质
CN113271476B (zh) * 2021-05-12 2022-07-12 湖南泽天智航电子技术有限公司 一种提升视频数据流帧的同步方法、设备、装置及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000092522A (ja) * 1998-09-08 2000-03-31 Tektronix Inc 画像品質分析方法及び装置
US20090046595A1 (en) * 2007-07-16 2009-02-19 Alan Clark Method and system for content estimation of packet video streams
KR20090045941A (ko) * 2006-09-22 2009-05-08 옵티콤 게엠베하 두 개의 정보 신호들을 일시적으로 정렬시키기 위해 정보를결정하는 장치

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2772537B1 (fr) * 1997-12-17 2000-02-11 Telediffusion Fse Procede de pilotage d'un equipement de metrologie en television numerique
JP3583658B2 (ja) * 1999-07-30 2004-11-04 Kddi株式会社 圧縮伝送画像の品質評価装置およびそれに用いる送信装置および受信装置
FR2815805B1 (fr) * 2000-10-23 2005-09-02 Telediffusion De France Tdf Procede de synchronisation de signaux numeriques
US6751360B1 (en) 2000-11-14 2004-06-15 Tektronix, Inc. Fast video temporal alignment estimation
JP4081745B2 (ja) * 2002-03-07 2008-04-30 ソニー株式会社 復号装置および復号方法、学習装置および学習方法、並びにプログラムおよび記録媒体
US7366361B2 (en) 2003-03-05 2008-04-29 Sarnoff Corporation Video registration based on local prediction errors
US7912337B2 (en) 2005-11-02 2011-03-22 Apple Inc. Spatial and temporal alignment of video sequences
CA2604053C (en) * 2006-05-09 2012-07-10 Nippon Telegraph And Telephone Corporation Video quality estimation appartus, method, and program
US7965203B2 (en) * 2006-05-09 2011-06-21 Nippon Telegraph And Telephone Corporation Video quality estimation apparatus, method, and program
EP2137985A1 (en) 2007-04-16 2009-12-30 Tektronix, Inc. Systems and methods for robust video temporal registration
WO2009025357A1 (ja) * 2007-08-22 2009-02-26 Nippon Telegraph And Telephone Corporation 映像品質推定装置、映像品質推定方法、フレーム種別判定方法、および記録媒体
EP2114079B2 (en) * 2008-05-02 2018-01-24 Psytechnics Ltd Method and apparatus for aligning signals
US8456531B2 (en) * 2010-01-14 2013-06-04 Cheetah Technologies, L.P. Video alignment and calibration for video quality measurement

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000092522A (ja) * 1998-09-08 2000-03-31 Tektronix Inc 画像品質分析方法及び装置
KR20090045941A (ko) * 2006-09-22 2009-05-08 옵티콤 게엠베하 두 개의 정보 신호들을 일시적으로 정렬시키기 위해 정보를결정하는 장치
US20090046595A1 (en) * 2007-07-16 2009-02-19 Alan Clark Method and system for content estimation of packet video streams

Also Published As

Publication number Publication date
ES2536202T3 (es) 2015-05-21
PT2866447T (pt) 2016-07-13
HUE028719T2 (en) 2016-12-28
KR20130111225A (ko) 2013-10-10
PT2413612E (pt) 2015-04-15
EP2866448A1 (en) 2015-04-29
US9131216B2 (en) 2015-09-08
WO2012013656A1 (en) 2012-02-02
JP5955319B2 (ja) 2016-07-20
HUE027625T2 (en) 2016-11-28
ES2575869T3 (es) 2016-07-01
EP2866447B1 (en) 2016-05-25
US20130208814A1 (en) 2013-08-15
PL2866448T3 (pl) 2016-10-31
JP2013535908A (ja) 2013-09-12
EP2413612A1 (en) 2012-02-01
EP2413612B1 (en) 2015-02-25
PL2866447T3 (pl) 2016-11-30
CN103026719B (zh) 2015-09-02
KR20170130633A (ko) 2017-11-28
KR101960647B1 (ko) 2019-03-20
CN103026719A (zh) 2013-04-03
KR101828628B1 (ko) 2018-03-22
ES2586946T3 (es) 2016-10-19
EP2866447A3 (en) 2015-05-27
EP2866447A2 (en) 2015-04-29
EP2866448B1 (en) 2016-03-30
PL2413612T3 (pl) 2015-07-31

Similar Documents

Publication Publication Date Title
KR101960647B1 (ko) 비디오 비트 스트림과 출력 비디오 시퀀스 간의 시간적 동기화 방법 및 장치
JP6333792B2 (ja) 映像ストリームで複数の映像フレームのピクチャグループ構造のタイプを推定するための方法
CN109510919B (zh) 用于感知质量评估的场景变换检测的方法、设备和介质
US9232217B2 (en) Method and apparatus for objective video quality assessment based on continuous estimates of packet loss visibility
US20100238792A1 (en) Information acquisition system, transmit apparatus, data obtaining apparatus, transmission method, and data obtaining method
JP5911563B2 (ja) ビットストリームレベルで動画品質を推定する方法及び装置
JP2009159462A (ja) 客観品質評価方法、客観品質評価装置およびプログラム
Liu et al. Review of ITU-T parametric models for compressed video quality estimation
US11968383B2 (en) Quality-sparing code burn-in for video

Legal Events

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