KR101703133B1 - 실시간 소스-채널 복합부호화 방법 및 그 장치 - Google Patents

실시간 소스-채널 복합부호화 방법 및 그 장치 Download PDF

Info

Publication number
KR101703133B1
KR101703133B1 KR1020100117978A KR20100117978A KR101703133B1 KR 101703133 B1 KR101703133 B1 KR 101703133B1 KR 1020100117978 A KR1020100117978 A KR 1020100117978A KR 20100117978 A KR20100117978 A KR 20100117978A KR 101703133 B1 KR101703133 B1 KR 101703133B1
Authority
KR
South Korea
Prior art keywords
channel
unit
source
test
code rate
Prior art date
Application number
KR1020100117978A
Other languages
English (en)
Other versions
KR20120056443A (ko
Inventor
권재철
정요원
김재균
박규호
Original Assignee
주식회사 케이티
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티, 한국과학기술원 filed Critical 주식회사 케이티
Priority to KR1020100117978A priority Critical patent/KR101703133B1/ko
Publication of KR20120056443A publication Critical patent/KR20120056443A/ko
Application granted granted Critical
Publication of KR101703133B1 publication Critical patent/KR101703133B1/ko

Links

Images

Classifications

    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods 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
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption

Landscapes

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

Abstract

본 발명은 채널 특성이 시간에 따라 변화하는 유/무선 환경에서 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행하는 실시간 소스-채널 복합부호화 방법 및 그 장치에 관한 것으로, 테스트-런 방식을 사용하여 장면-의존적인 모델 파라미터를 실시간으로 트레이닝시켜 채널에서 패킷 손실 상태가 변화할 때마다 항상 최적부호율을 결정하여 실시간으로 소스-채널 복합부호화를 수행하는 실시간 소스-채널 복합부호화 방법 및 그 장치를 제공하고자 한다.
이를 위하여, 본 발명은 소스 및 채널 복합부호화 장치에 있어서, 테스트 런을 수행하여 장면 의존적인 모델 파라미터를 트레이닝시키기 위한 테스트 런 수행부; 상기 테스트 런 수행부로부터의 테스트-런 수행 결과를 이용하여 최적부호율을 결정하기 위한 최적부호율 결정부; 및 상기 최적부호율 결정부로부터의 최적부호율에 따라 소스 부호율과 채널 부호율을 결정하여 소스 및 채널 복합부호화를 수행하기 위한 복합부호화부를 포함한다.

Description

실시간 소스-채널 복합부호화 방법 및 그 장치{Method and Apparatus for Real-time Joint Source-Channel Coding}
본 발명은 실시간 소스-채널 복합부호화 방법 및 그 장치에 관한 것으로, 더욱 상세하게는 채널 특성이 시간에 따라 변화하는 유/무선 환경에서 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행하는 실시간 소스-채널 복합부호화 방법 및 그 장치에 관한 것이다.
종래에는 시간에 따라 변화하는 채널 특성에 따라 최적부호율을 구하기 위해 많은 모델 변수를 사용하는 복잡한 채널 왜곡 모델을 사용하였다. 이러한 종래 기술이 실용적으로 사용되기 위해서는 장면 전환이 발생하거나 주기적으로 모델 변수를 훈련(training)시키는 과정이 필요한데 이는 많은 계산량을 필요로 한다.
따라서 상기와 같은 종래 기술은 많은 계산량을 필요로 하기 때문에 영상 전화나 영상 회의 등과 같은 실시간 비디오 응용에는 적용할 수 없을 뿐만 아니라 채널 특성이 변화할 때 최적의 비디오 화질을 얻기 어려운 문제점이 있으며, 이러한 문제점을 해결하고자 하는 것이 본 발명의 과제이다.
따라서 본 발명은 채널 특성이 시간에 따라 변화하는 유/무선 환경에서 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행하는 실시간 소스-채널 복합부호화 방법 및 그 장치를 제공하는 데 그 목적이 있다.
즉, 본 발명은 테스트-런 방식을 사용하여 장면-의존적인 모델 파라미터를 실시간으로 트레이닝시켜 채널에서 패킷 손실 상태가 변화할 때마다 항상 최적부호율을 결정하여 실시간으로 소스-채널 복합부호화를 수행하는 실시간 소스-채널 복합부호화 방법 및 그 장치를 제공하는 데 그 목적이 있다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시 예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 장치는, 소스 및 채널 복합부호화 장치에 있어서, 테스트 런을 수행하여 장면 의존적인 모델 파라미터를 트레이닝시키기 위한 테스트 런 수행부; 상기 테스트 런 수행부로부터의 테스트-런 수행 결과를 이용하여 최적부호율을 결정하기 위한 최적부호율 결정부; 및 상기 최적부호율 결정부로부터의 최적부호율에 따라 소스 부호율과 채널 부호율을 결정하여 소스 및 채널 복합부호화를 수행하기 위한 복합부호화부를 포함하되, 상기 테스트 런 수행부는, 반복 테스팅을 통해 평균 채널 왜곡량을 구한 후에 상기 구한 평균 채널 왜곡량을 이용하여 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득한다.
삭제
이를 위하여, 상기 테스트 런 수행부는, 현재 부호화되어 전송되는 비디오 프레임을 저장하기 위한 저장 수단; 상기 저장 수단에 저장되어 있는 비디오 프레임을 부호화하여 비트스트림으로 생성하기 위한 테스트 인코딩부; 상기 테스트 인코딩부에서 생성된 비트스트림을 패킷화하기 위한 제 1 패킷화부; "상기 제 1 패킷화부로부터의 패킷을 랜덤 손실시키고 복호화하여 채널 왜곡량을 계산하는 반복 테스팅"을 통해 평균 채널 왜곡량을 구하기 위한 테스트 반복부; 및 상기 테스트 반복부에서 구한 평균 채널 왜곡량을 이용하여 상기 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하기 위한 샘플 획득부를 포함한다.
여기서, 상기 테스트 반복부는, 상기 제 1 패킷화부로부터의 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 랜덤하게 손실시키기 위한 랜덤 손실부; 상기 랜덤 손실부에서 랜덤 손실된 패킷이 포함된 비트스트림을 복호화하기 위한 테스트 디코딩부; 및 상기 테스트 디코딩부에서 복호화된 재생 영상과 원본 영상을 이용하여 채널 왜곡량을 계산하기 위한 채널 왜곡량 계산부를 포함하되, 상기 랜덤 손실부에서의 랜덤 손실 과정부터 상기 채널 왜곡량 계산부에서의 채널 왜곡량 계산 과정까지를 복수회 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량)을 구한다.
그리고 상기 최적부호율 결정부는, 상기 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 제 2 장면 의존적인 모델 변수의 값을 구하고, 상기 구한 제 2 장면 의존적인 모델 변수의 값으로부터 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구하며, 상기 구한 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환하여 상기 추정 채널 패킷 손실율과 비교하여 최적부호율을 결정한다.
한편, 상기 목적을 달성하기 위한 본 발명의 방법은, 소스 및 채널 복합부호화 방법에 있어서, 초기의 소스 부호율과 초기의 채널 부호율에 따라 소스 및 채널 복합부호화를 수행하는 초기 복합부호화 단계; 반복 테스팅을 통해 평균 채널 왜곡량을 구한 후에 상기 구한 평균 채널 왜곡량을 이용하여 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 테스트 런 수행 단계; 상기 획득된 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 최적부호율을 결정하는 최적부호율 결정 단계; 및 상기 결정된 최적부호율에 따라 소스 부호율과 채널 부호율을 결정하여 소스 및 채널 복합부호화를 수행하는 복합부호화 단계를 포함한다.
이때, 상기 테스트 런 수행 단계는, 현재 부호화되어 전송되는 비디오 프레임을 저장하는 단계; 상기 저장되어 있는 비디오 프레임을 부호화하여 비트스트림으로 생성하는 단계; 상기 생성된 비트스트림을 패킷화하는 제 1 패킷화 단계; "상기 제 1 패킷화 단계에서 패킷화된 패킷을 랜덤 손실시키고 복호화하여 채널 왜곡량을 계산하는 반복 테스팅"을 통해 평균 채널 왜곡량을 구하는 테스트 반복 수행 단계; 및 상기 구한 평균 채널 왜곡량을 이용하여 상기 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 샘플 획득 단계를 포함한다,
여기서, 상기 테스트 반복 수행 단계는, 상기 제 1 패킷화 단계에서 패킷화된 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 랜덤하게 손실시키는 랜던 손실 단계; 상기 랜덤 손실된 패킷이 포함된 비트스트림을 복호화하는 단계; 및 상기 복호화된 재생 영상과 원본 영상을 이용하여 채널 왜곡량을 계산하는 채널 왜곡량 계산 단계를 포함하되, 상기 랜덤 손실 단계부터 상기 채널 왜곡량 계산 단계까지를 복수회 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량)을 구한다.
그리고 상기 최적부호율 결정 단계는, 상기 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 제 2 장면 의존적인 모델 변수의 값을 구하고, 상기 구한 제 2 장면 의존적인 모델 변수의 값으로부터 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구하며, 상기 구한 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환하여 상기 추정 채널 패킷 손실율과 비교하여 최적부호율을 결정한다.
이처럼, 본 발명에서는 채널 특성이 시간에 따라 변화하는 유/무선 환경에서 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행한다. 이러한 본 발명에 따라 수신측에서는 변화하는 패킷 손실 환경에서 최적의 화질을 얻을 수 있다.
이를 위해 본 발명에서는 잔여 비디오 패킷 손실율의 임계치 세트에 대한 단순한 모델을 사용한다. 여기서, 잔여 비디오 패킷 손실율은 채널 복호화 후에 남아 있는 비디오 패킷에 대한 잔여 손실율이다. 그리고 임계치 세트는 채널 패킷 손실이 증가하거나 감소하는 동안 최소의 왜곡을 유지하기 위해 변화되어야 하는 전방오류정정 부호율에서의 잔여 비디오 패킷 손실율(RVPLR : Residual Video Packet Loss Rate)의 세트로 정의된다.
본 발명에 따른 모델(잔여 비디오 패킷 손실율의 임계치 세트에 대한 단순한 모델)은 매우 단순하고 장면-의존적인 모델 변수를 가지고 있으므로 비디오 송신측이 쉽게 구현할 수 있는 장점이 있다. 그리고 본 발명에서는 장면-의존적인 모델 파라미터를 실시간으로 트레이닝시키기 위해 테스트-런 방식을 사용한다. 이처럼, 본 발명에 따른 모델(잔여 비디오 패킷 손실율의 임계치 세트에 대한 단순한 모델)과 테스트-런 방식을 사용하면 채널에서 패킷 손실 상태가 변화할 때마다 비디오 송신측이 항상 최적부호율을 구할 수 있다.
상기와 같은 본 발명은, 채널 특성이 시간에 따라 변화하는 유/무선 환경에서 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행함으로써, 채널의 특성이 변화할 때 최적의 비디오 화질을 얻을 수 있는 효과가 있다.
또한, 본 발명은 테스트-런 방식을 사용하여 장면-의존적인 모델 파라미터를 실시간으로 트레이닝시켜 채널에서 패킷 손실 상태가 변화할 때마다 항상 최적부호율을 결정하여 실시간으로 소스-채널 복합부호화를 수행함으로써, 복잡한 연산을 하지 않고도 최적의 소스-채널 복합부호화 부호율을 구할 수 있는 효과가 있다.
또한, 본 발명은 간단한 왜곡 모델을 이용하므로 실시간 응용에서도 적용이 가능하다.
도 1은 일반적인 비디오 전송 시스템의 일예시도,
도 2는 (n,k)=(7,5)인 RS(n,k) 코드의 특성을 나타내는 도면,
도 3은 총 왜곡량, 부호율, 채널 손실 임계치 세트(CLTS) 간의 관계를 나타내는 도면,
도 4a 및 도 4b는 8개의 테스트 시퀀스에 대한 k와 잔여 손실 임계치 세트(n=10, QCIF 해상도, 15 frame/sec, 192 kbps)를 나타내는 도면,
도 5는 단순화한 총 왜곡 커브를 나타내는 도면,
도 6은 송신측에서 수행하는 테스트-런의 전체 과정을 나타내는 도면,
도 7은 수신측 H.263 디코더의 일반적 구조를 나타내는 도면,
도 8은 소스 인코딩과 테스트 인코딩에서 저장된 데이터를 사용하는 송신측 H.263 테스트 디코딩 과정을 나타내는 도면,
도 9a 및 도 9b는 저사양 컴퓨터에서의 테스트-런의 프로세싱 부하를 나타내는 도면,
도 10a 및 도 10b는 고사양 컴퓨터에서의 테스트-런의 프로세싱 부하를 나타내는 도면,
도 11a 및 도 11b는 테스트 시퀀스에 대한 PSNR 추정 성능을 나타내는 도면,
도 12는 본 발명에 따른 실시간 소스-채널 복합부호화 장치의 일실시예 구성도,
도 13은 도 12의 테스트 반복부의 일실시예 상세 구성도,
도 14는 본 발명에 따른 실시간 소스-채널 복합부호화 방법에 대한 일실시예 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되어 있는 상세한 설명을 통하여 보다 명확해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다.
그리고 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때 이는 "직접적으로 연결"되어 있는 경우뿐만 아니라 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함" 또는 "구비"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함하거나 구비할 수 있는 것을 의미한다.
먼저, 본 발명에 대한 이해를 돕기 위하여 본 발명의 개념을 설명하기로 한다.
일반적으로, 유/무선 네트워크를 통해 비디오 패킷을 전송할 때 시간에 따라 변화하는 네트워크의 특성에 의해 패킷은 손실, 채널 에러에 의한 깨어짐, 과도한 지연 등을 경험하게 된다. 이때, 수신측에 정해진 시간 내에 도달하지 못한 모든 패킷이나 손실된 패킷은 재생 영상의 화질을 열화시키는 원인이 된다.
그에 따라, 패킷 손실로부터 재생 영상의 화질을 보호하기 위해 여러 가지의 에러 제어 기법들이 개발되었는데, 그 중에서 강력한 손실 복구 능력을 가지고 있으면서도 적은 프로세싱 시간을 요구하는 전방오류정정(FEC : Forward Error Correction) 기법이 널리 사용되고 있다. 이러한 전방오류정정(FEC) 기법의 주된 변수는 부호율(code rate)로서 소스 부호율과 총 전송율의 비로 정의된다.
한편, 시간에 따라 변화하는 채널 특성으로 인해 채널에서의 패킷 손실율도 변화하는데, 고정된 부호율로 전방오류정정(FEC) 부호화를 하면 낮은 패킷 손실율에서는 채널 대역폭을 낭비하게 되며, 높은 패킷 손실율에서는 에러를 복구하기에 충분치 않게 된다. 따라서 시변 채널의 경우 적응적으로 부호율을 변화시킨다면 최적의 비디오 화질을 얻을 수 있는데, 이를 소스-채널 복합부호화라고 한다.
본 발명에서는 입력 비디오 시퀀스의 특성에 따라 변화하는 값으로서 장면-의존적인 모델 변수(SDMP : Scene-Dependent Model Parameter)를 정의한다. 장면-의존적인 모델 변수(SDMP)를 얻기 위해서는 약간의 테스트-런(test-run) 과정이 필요하다. 이때, 장면-의존적인 모델 변수(SDMP)의 수가 많으면 많을수록 테스트-런 프로세싱 시간이 증가한다. 따라서 본 발명에서는 하나의 장면-의존적인 모델 변수(SDMP)와 실시간 프로세싱이 가능한 정도의 계산량만이 필요한 테스트-런 과정을 수행하는 잔여 패킷 손실 모델을 사용한다.
소스 부호화와 채널 부호화를 지원하는 일반적인 비디오 전송 시스템의 구조는 도 1에 도시된 바와 같다.
도 1은 일반적인 비디오 전송 시스템의 일예시도로서, 여기서는 본 발명과 관련된 부분만 간략하게 설명하기로 한다.
도 1에 도시된 바와 같이, 비디오 전송 시스템은 소스 인코더(비디오 인코더)와 소스 디코더(비디오 디코더), 패킷화부와 역패킷화부, 채널 인코더와 채널 디코더, RTP(Real-time Transport Protocol) 패킷 해석부, 채널 특성 예측부, 및 채널 적응부 등을 포함하여 이루어진다.
여기서, 채널 적응부는 비디오 화질을 최적화하고 주어진 최대 지연한도(delay bound) 내로 종단간 지연을 유지한다. 그리고 송신측은 RTP/RTCP(RTP Control Protocol)를 통해 수신측으로부터 순시 채널 상태(instantaneous channel status) 정보를 전달받는다. 이 순시 채널 상태 정보를 통해 채널 특성 예측부에서 채널의 패킷 손실률
Figure 112010077134401-pat00001
과 가용 대역폭
Figure 112010077134401-pat00002
를 예측한다. 총 왜곡
Figure 112010077134401-pat00003
는 송신측 입력 비디오 프레임과 수신측 재생 비디오 프레임의 밝기 신호들 간의 평균제곱오차(MSE : Mean Squared Error)로 정의된다. 총 왜곡은 소스 부호화에 의한 왜곡량
Figure 112010077134401-pat00004
와 채널에서 유입된 왜곡
Figure 112010077134401-pat00005
의 합으로 표현할 수 있다. 따라서 채널에서 유입된 왜곡
Figure 112010077134401-pat00006
는 하기의 [수학식 1]로 표현된다.
Figure 112010077134401-pat00007
도 1의 채널 인코더(채널 부호기)는 매 k개의 비디오 패킷 당 (n-k)개의 패리티 패킷을 생성하는데 사용된 채널 부호는 리드-솔로몬(Reed-Solomon) 코드로서, RS(n,k)로 정의되며, 하기의 [수학식 2]와 같이 부호율 r을 표현할 수 있다.
Figure 112010077134401-pat00008
도 2는 (n,k)=(7,5)인 RS(n,k) 코드의 특성을 나타내는 도면이다.
일반적으로, 모든 RTP 패킷은 순서 번호를 가지고 있으므로 RS(n,k) 부호는 (n-k)개까지 손실된 패킷을 복구할 수 있다. (n,k)=(7,5)인 경우 RS(n,k)의 특성은 도 2에 도시된 바와 같이, 채널에서 2개의 패킷이 손실되어도 모든 비디오 패킷은 채널 디코더(채널 복호기)에서 복구된다. 만일, (n-k)개 이상의 패킷이 손실된다면 비디오 패킷은 정상적으로 복구될 수 없으며, 복구 후에도 여전히 남아있는 손실율을 잔여 패킷 손실률(RPLR : Residual Packet Loss Rate)이라 하며, 잔여 패킷 손실률(RPLR)은 채널 왜곡량을 표현하는 변수로 사용할 수 있다. 잔여 패킷 손실률(RPLR)은 하기의 [수학식 3]과 같이 정의된다.
Figure 112010077134401-pat00009
그러나 (n-k)개 이상의 패킷이 손실되더라도 패킷이 재동기 마커(Resync. Marker)나 슬라이스 구조를 가진다면, 정상적으로 수신된 비디오 패킷은 여전히 디코딩되어 화면 재생에 사용할 수 있다. 물론, 재생된 화면에는 열화가 발생한다. 따라서 하기의 [수학식 4]와 같이 정의되는 잔여 비디오 패킷 손실율(RVPLR : Residual Video Packet Loss Rate) PR을 채널 왜곡량을 표현하는데 효과적으로 사용할 수 있다. 잔여 비디오 패킷 손실율(RVPLR) PR은 n, k, PL의 함수이다.
Figure 112010077134401-pat00010
여기서, PL은 채널 패킷 손실률이다.
도 1에서의 소스 부호율 RS와 채널 부호율 RC는 하기의 [수학식 5] 및 [수학식 6]과 같이 표현할 수 있다.
Figure 112010077134401-pat00011
Figure 112010077134401-pat00012
그러므로 총 가용대역폭을 소스 부호율과 채널 부호율에 할당하기 위해서는 미리 최적의 부호율을 결정해야만 한다.
따라서 다음으로는 손실 임계치 세트 중 최적부호율을 구하기 위해 사용되는 채널 손실 임계치 세트(CLTS: Channel Loss Threshold Set)와 잔여 손실 임계치 세트(RLTS : Residual Loss Threshold Set)에 대해서 설명하기로 한다.
먼저, 채널 손실 임계치 세트(CLTS)에 대하여 설명하면 다음과 같다.
채널 손실 임계치 세트(CLTS)의 개념은 패킷 손실율과 부호율에 따라 변동하는 총 왜곡량의 특성에 근거를 두고 있다. 도 3은 시험 영상 'Foreman'에 대한 총 왜곡값
Figure 112010077134401-pat00013
에 대한 실험치인데 총 왜곡량의 특성을 잘 보여주고 있다. 여기서, n=5이며, k는 1 내지 5로 조절하였다.
도 3은 총 왜곡량, 부호율, 채널 손실 임계치 세트(CLTS) 간의 관계를 나타내는 도면이다.
도 3에 도시된 바와 같이, 채널 패킷 손실률 PL이 증가하더라도 낮은 PL 범위에서는 고정 부호율에 대한 각
Figure 112010077134401-pat00014
그래프가 거의 증가하지 않음을 볼 수 있다. 이는 발생된 패킷 손실이 전방오류정정(FEC)에 의해 복구되었기 때문이다. 그러나 높은 PL 범위에서는 PL이 증가함에 따라 총 왜곡값
Figure 112010077134401-pat00015
가 급격히 증가하는데, 이는 손실된 패킷을 복구하지 못함으로써 화질이 열화되고, 계속적으로 이후의 프레임들에게 그 영향이 전파되었기 때문이다.
한편, 고정된 낮은 PL에서 k가 작아짐에 따라
Figure 112010077134401-pat00016
는 점점 커지게 되는데 이 경우는 왜곡이 주로 소스 부호율에 의존하기 때문이다. 그러나 k가 감소할수록 패킷 손실에 대한 강인성이 증가하기 때문에
Figure 112010077134401-pat00017
는 넓은 범위의 낮은 PL 값에서도 그 값을 유지할 수 있게 된다. 그러므로 각 왜곡 커브는 자신만의 PL 범위를 가지고 있으며, 이 범위는 모든 왜곡 커브 중에서 가장 작은 값을 가진다. 예를 들어, 도 3에서 DOV(4/5, PL) 커브는 PL5-PL4 범위의 PL에서 가장 낮은 값을 보여주고 있으며, DOV(3/5, PL)은 PL4-PL3 범위에서 가장 낮은 값을 보여주고 있다. 여기서, 최적부호율(Optimal Code Rate) r*는 총 왜곡을 최소화하는 부호율이기 때문에 하기의 [수학식 7]과 같이 결정할 수 있다.
Figure 112010077134401-pat00018
여기서,
Figure 112010077134401-pat00019
은 추정(예측)된 채널 패킷 손실율이다. 상기 [수학식 7]에서 최적부호율을 변화시키는 패킷 손실율 임계치 값은 매우 중요한 정보이다. 이 값들의 세트를 채널 손실 임계치 세트(CLTS: Channel Loss Threshold Set)라 정의한다. 도 3에서 채널 손실 임계치 세트(CLTS)는
Figure 112010077134401-pat00020
이다. 일반적으로, 최적부호율 r*은 하기의 [수학식 8]과 같이 현재의 추정된 채널 패킷 손실율과 사전에 계산된 채널 손실 임계치 세트(CLTS)를 비교만하면 얻을 수 있다.
Figure 112010077134401-pat00021
채널 손실 임계치 세트(CLTS)의 각 원소는 도 3에서 두 개의 인접 부호율의 왜곡 커브가 교차하는 점이기 때문에 채널 손실 임계치 세트(CLTS)는 하기의 [수학식 9]와 같이 표현할 수 있다.
Figure 112010077134401-pat00022
여기서, 채널 손실 임계치 세트(CLTS)의 원소 수는 (n-1)개이다.
이제, 잔여 손실 임계치 세트(RLTS)에 대하여 설명하면 다음과 같다.
실시간 비디오 전송에서 채널 손실 임계치 세트(CLTS)는 장면 전환이 일어나거나 주기적으로 업데이트되어야 한다. 그러나 실제 응용에서는 도 3에 도시된 바와 같은 모든 왜곡 그래프를 그리는 것이 비현실적이기 때문에 채널 손실 임계치 세트(CLTS)를 직접 계산하는 것은 쉬운 일이 아니다. 따라서 채널 손실 임계치 세트(CLTS)를 효과적으로 얻기 위해서 해석적 모델(analytic model)을 사용한다. 잔여 비디오 패킷 손실율(RVPLR)은 채널 손실율보다 비디오 화질과 더 직접적인 관계가 있으므로 하기의 [수학식 10]과 같은 잔여 손실 임계치 세트(RLTS : Residual Loss Threshold Set)라는 개념을 도입한다.
Figure 112010077134401-pat00023
여기서, 잔여 손실 임계치 세트(RLTS)의 각 원소인
Figure 112010077134401-pat00024
는 상기 [수학식 4]에서 PL=PLk일 때 정의된
Figure 112010077134401-pat00025
의 결과값이다. 잔여 손실 임계치 세트(RLTS)의 원소 수는 (n-1)이며, 채널 손실 임계치 세트(CLTS)와 일치한다. 잔여 손실 임계치 세트(RLTS)가 주어진다면 상기 [수학식 4]를 이용하여 잔여 손실 임계치 세트(RLTS)로부터 직접 채널 손실 임계치 세트(CLTS)를 얻을 수도 있다.
다음으로, 잔여 손실 임계치 세트(RLTS)를 위한 소스-채널 복합 모델에 대하여 살펴보면 다음과 같다.
주어진 채널 패킷 손실률 PL에서 최적부호율은 상기 [수학식 8]에서처럼 채널 손실 임계치 세트(CLTS)에 의해 구해질 수 있다. 그러나 장면전환이 일어날 때마다 채널 손실 임계치 세트(CLTS)를 구하는 방식은 매우 많은 계산량을 요구하기 때문에 본 발명에서는 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구할 수 있는 모델을 제안한다. 전술한 바와 같이 채널 손실 임계치 세트(CLTS)는 잔여 손실 임계치 세트(RLTS)로부터 쉽게 구할 수 있다.
8개의 테스트 시퀀스에 대해 n=10일 때 H.263 코덱과 H.264 코덱으로 소스 부호화 인코딩 변수를 달리하면서 실험을 수행하였다. 모든 k에 대해 총 왜곡 커브를 그렸고, 이 왜곡 커브들로부터 채널 손실 임계치 세트(CLTS)를 구한 후에 상기 [수학식 4]와 상기 [수학식 10]에 대입하여 잔여 손실 임계치 세트(RLTS)를 구하였다. 이러한 실험으로부터 잔여 손실 임계치 세트(RLTS)의 원소들이 k2에 반비례한다는 것을 관찰할 수 있었다. 즉, 잔여 손실 임계치 세트(RLTS)의 원소는 하기의 [수학식 11]과 같이 표현할 수 있다.
Figure 112010077134401-pat00026
여기서, α는 장면-의존적인 모델 변수(SDMP : Scene-Dependent Model Parameter)이다. 도 5의 원형 마크는 전수조사(full search)에 의해 측정된 값이며, 실선은 상기 [수학식 11]의 모델에 의한 추정값을 나타낸다. 하기의 [표 1]은 장면-의존적인 모델 변수(SDMP) 알파(α)와, 전수조사(full search)에 의해 측정된 값과 추정값 간의 평균추정오차를 보여주고 있다. 이러한 결과로부터 잔여 손실 임계치 세트(RLTS)가 상기 [수학식 11]의 모델에 의해 추정이 가능하다는 것을 볼 수 있다. 하기의 [표 1]에서 나타낸 평균추정오차는 장면-의존적인 모델 변수(SDMP)의 개수를 줄인 대가로서, 도 4a 및 도 4b의 실험 결과에 대한 장면-의존적인 모델 변수(SDMP)와 평균추정오차를 나타내고 있다.
도 4a 및 도 4b는 8개의 테스트 시퀀스에 대한 k와 잔여 손실 임계치 세트(n=10, QCIF 해상도, 15 frame/sec, 192 kbps)를 나타내는 도면이다.
Figure 112010077134401-pat00027
한편, 실시간 비디오 전송에서는 송신측이 장면-의존적인 모델 변수(SDMP) α값을 현재 입력 비디오의 특성에 따라 적응적으로 업데이트해야 한다. 장면-의존적인 모델 변수(SDMP) 업데이트 프로세싱 과정, 즉 테스트-런을 완료하기 이전에는 이전의 장면-의존적인 모델 변수(SDMP) 값이 사용된다. 그에 따라, 해당 장면에 대한 최적부호율이 얻어질 수 없다. 그러므로 테스트-런을 수행하고 최적부호율을 구하는데 필요한 시간이 더 필요하다. 테스트-런을 수행하는 방법은 다음과 같다.
상기 [수학식 11]의 장면-의존적인 모델 변수(SDMP) α값을 구하기 위해서는 k={2,3,4…n} 중 임의의 하나의 값에 대한 샘플 PRk를 필요로 한다. 테스트-런 과정은 샘플 PRk를 실시간적으로 얻기 위한 과정이다. 테스트-런 과정은 도 1의 송신측이 수행하는 실시간 처리 성능에 영향을 주지 않도록 하기 위하여 송신측이 유휴(idle) 상태에 있을 때 남아있는 컴퓨팅 자원을 사용하여 수행한다. 일반적으로, 남아있는 컴퓨팅 자원은 항상 부족하기 때문에 테스트-런 과정을 수행하는데 필요한 계산 부하는 적어야된다.
채널 손실 임계치 세트(CLTS)와 잔여 손실 임계치 세트(RLTS)의 정의에 따라 부호율 k/n, (k-1)/n에 대한 두 개의 총 왜곡 커브를 그려서 PRk를 구할 수 있다. 그러나 총 왜곡 커브를 그리는 작업은 매우 복잡한 계산을 필요로 하기 때문에 도 5에 도시된 바와 같이 총 왜곡 커브를 단순화한다.
도 5는 단순화한 총 왜곡 커브를 나타내는 도면이다.
채널 왜곡은 n, k, PL에 의존하기 때문에 채널 왜곡량은
Figure 112010077134401-pat00028
로 표시된다. 실험적인 관찰에 따르면 도 5의
Figure 112010077134401-pat00029
Figure 112010077134401-pat00030
와 비교하여 매우 작은 값은 가짐을 확인하였다. 그러므로 하기의 [수학식 12]와 같이 가정한다.
Figure 112010077134401-pat00031
여기서,
Figure 112010077134401-pat00032
는 채널에서 유입된 채널 왜곡 모델로 표현될 수 있다.
Figure 112010077134401-pat00033
가 k와
Figure 112010077134401-pat00034
의 함수이기 때문에
Figure 112010077134401-pat00035
도 하기의 [수학식 13]과 같이 k와
Figure 112010077134401-pat00036
의 함수로 표현할 수 있다.
Figure 112010077134401-pat00037
Figure 112010077134401-pat00038
는 하기의 [수학식 14]와 같이 잔여 패킷 손실율에 근사적으로 비례한다고 알려져 있다.
Figure 112010077134401-pat00039
여기서, β는 장면-의존적인 모델 변수(SDMP)이다. 실제보다 정확한 채널 왜곡을 표현하기 위해서는 상기 [수학식 14]보다 더 복잡한 모델이 필요하다. 장면-의존적인 모델 변수(SDMP)의 수를 줄이기 위해 채널 왜곡이 잔여 비디오 패킷 손실율(RVPLR)에 비례한다고 가정한다. 선형 근사법을 사용하면 약간의 추정오차가 생기기는 하지만 최적부호율을 결정하는데 있어서 이 정도의 에러는 그리 민감하지 않다.
상기 [수학식 12]와 상기 [수학식 14]를 이용하면 하기의 [수학식 15]와 같은
Figure 112010077134401-pat00040
Figure 112010077134401-pat00041
사이의 관계를 얻을 수 있다.
Figure 112010077134401-pat00042
상기 [수학식 15]에 따라 샘플
Figure 112010077134401-pat00043
를 구할 수 있으며, 전체 과정은 도 6에 도시된 바와 같다.
도 6은 송신측에서 수행하는 테스트-런의 전체 과정을 나타내는 도면이다.
상기 [수학식 15]에서 샘플
Figure 112010077134401-pat00044
를 얻기 위해
Figure 112010077134401-pat00045
,
Figure 112010077134401-pat00046
와 장면-의존적인 모델 변수(SDMP) β값을 미리 구할 필요가 있다. 도 6에 이 세 값을 구하는 프로세스가 포함되어 있다.
도 6에 도시된 바와 같이,
Figure 112010077134401-pat00047
또는
Figure 112010077134401-pat00048
는 소스 인코딩 과정(주 인코딩 과정)에서 쉽게 구할 수 있다. 여기서, 소스 인코딩 과정은 도 1의 소스 인코더가 수행하는 기본 압축 과정을 의미한다. 소스 인코딩 과정은 소스 부호율
Figure 112010077134401-pat00049
로 동작하기 때문에 연속되는 여러 프레임들의 소스 코딩 왜곡을 평균하면
Figure 112010077134401-pat00050
를 얻을 수 있다. 그 다음에는
Figure 112010077134401-pat00051
를 구하기 위해 소스 부호율
Figure 112010077134401-pat00052
로 테스트 인코딩 과정을 수행한다.
Figure 112010077134401-pat00053
Figure 112010077134401-pat00054
는 동일한 프레임 기간 동안의 평균 왜곡을 나타내기 때문에 입력 프레임들은 테스트-런이 시작되고 나서 약간의 버퍼링이 필요하다. 여기에서는 테스트 프레임의 주기를 1초라 가정한다. 장면 전환이 발생할 경우 입력 비디오의 특성이 현저하게 변화될 가능성이 크기 때문에 테스트-런은 주기적으로 수행될 필요가 있다. 테스트-런이 시작될 때마다 테스트 스트림을 버퍼링한다. 비디오 인코딩은 움직임 추정, DCT(Discrete Cosine Transform), 역DCT, 양자화, 엔트로피 코딩 등 복잡한 동작을 수반하기 때문에 테스트-런에 의한 추가적인 인코딩은 많은 계산량을 요하는 과정이다. 이 중 움직임 추정 과정이 가장 복잡도가 높기 때문에 소스 인코딩 과정 동안 계산된 움직임 벡터 정보를 재사용하여 복잡도를 감소시킨다. 소스 인코딩 과정과 테스트 인코딩 과정은 동일한 입력 프레임에 대해 수행되고, 소스 부호율
Figure 112010077134401-pat00055
Figure 112010077134401-pat00056
는 매우 가까워서 동일한 매크로블록 위치에 대한 움직임 벡터값은 소스 인코딩과 테스트 인코딩으로 인한 결과가 거의 비슷하다.
Figure 112010077134401-pat00057
Figure 112010077134401-pat00058
를 구한 후에는 상기 [수학식 15]의 장면-의존적인 모델 변수(SDMP) β값을 구해야 한다. 상기 [수학식 14]에서 채널 왜곡은 장면-의존적인 모델 변수(SDMP) β를 매개변수로 PR값에 비례한다고 모델링하였다. 장면-의존적인 모델 변수(SDMP) β값은 샘플 채널 왜곡값을 구하면 찾을 수 있다. 채널 왜곡값을 구하기 위해 테스트 잔여 비디오 패킷 손실율 PR(t)로 비디오 패킷을 무작위로 손실(랜덤 손실)시킨 후 손상된 스트림을 테스트 디코딩하여 채널 왜곡값을 구한다. 이 과정은 평균 채널 왜곡값을 구하기 위해 여러 번 반복 수행한다. 도 6에서는 이 과정이 테스트-반복(test-iteration)으로 기술되어 있다. 계산된 평균 채널 왜곡값 DC (t)(PR)을 가지고 상기 [수학식 14]로부터 PR(t)로 나누어 장면-의존적인 모델 변수(SDMP) β값을 구한다. 장면-의존적인 모델 변수(SDMP) β값이 구해지면 상기 [수학식 15]로부터 PL=0으로 얻어지는 소스 부호화에 의한 왜곡값과 장면-의존적인 모델 변수(SDMP) β값을 상기 [수학식 15]에 대입하여 하나의 PRk 샘플을 얻는다.
상기 손상된 비디오 스트림을 테스트 디코딩할 때 동일한 에러감춤기법을 사용한다고 가정한다. 송신측의 테스트 디코딩에 의해 생성된 출력 프레임들은 수신측에서 채널 왜곡량을 정확하게 추정하기 위하여 수신측 디코더가 디코딩한 프레임들과 동일해야 한다. 그러나 송신측의 테스트 디코더의 구조는 수신측의 디코더와 동일한 구조일 필요는 없다. 도 7에서 가용한 슬라이스에 대해서는 역양자화와 역DCT로 차등 프레임을 계산하고 난 후 이전 출력 프레임에 상기 차등 프레임을 더해 줌으로써 출력 프레임을 얻는다.
도 7은 수신측 H.263 디코더의 일반적 구조를 나타내는 도면으로, 송신측의 테스트 디코더가 이와 같은 구조일 필요는 없다.
손실된 슬라이스에 대해서는 에러감춤기법을 사용하여 추정된 움직임 벡터로 이전 출력 프레임의 해당 위치의 블록을 복사한다. 그러나 모든 움직임 벡터와 차등 프레임 그리고 테스트 비트스트림의 출력 프레임은 송신측에서 소스 인코딩이나 테스트 인코딩에 의해 얻어질 수 있다. 그러므로 이 데이터를 저장하고 테스트 디코딩에 이 데이터를 사용함으로써 수신측 디코더에서와 동일한 출력 프레임을 얻을 수 있다. 즉, 패킷 손실 패턴에 대해 평균 채널 왜곡량을 얻기 위해서 첫 번째 손실이 발생하기 이전에는 테스트 디코딩을 하지 않고 저장된 출력 프레임을 사용한다. 첫 번째 손실 이후에는 도 8에 도시된 바와 같이 저장된 차등 프레임과 움직임 벡터를 사용하여 출력 프레임을 얻는다.
도 8은 소스 인코딩과 테스트 인코딩에서 저장된 데이터를 사용하는 송신측 H.263 테스트 디코딩 과정을 나타내는 도면이다.
움직임 벡터는 소스 인코딩이나 테스트 인코딩에서 저장된 데이터로부터 얻거나 에러감춤기법에 의해 추정된 값(EMVs : Estimated Motion Vectors)을 사용한다. 이 과정은 가변 길이 복호화(VLD : Variable Length Decoding), 역양자화, 역DCT와 같이 계산량이 크지 않기 때문에 테스트 디코딩에 소요되는 프로세싱 시간을 현저하게 절감할 수 있다. 그러나 프로세싱 시간을 줄이는 대신에 메모리 공간이 추가적으로 필요하다.
다음으로, 본 발명에 대한 성능 평가 결과를 살펴보면 다음과 같다.
기본 실험 환경은 상기 [표 1]에서 기술한 조건과 동일하다. 실험은 저사양 컴퓨터(예 : 펜티엄IV 3GHz)와 고사양 컴퓨터(예 : QuadCore 2.8GHz)에 대해 수행하였다. 메모리는 충분하다고 가정하였다. 실험에 사용된 기본 변수는 n=10, RT=384kbps이다. 소스 인코딩은 k=8에 대해 수행하고 테스트 잔여 비디오 패킷 손실율(RVPLR)은 1/15로 고정하였다. 실험은 다음과 같은 두 가지 시나리오에 대해 첫째, 테스트-런이 수행될 때와 수행되지 않을 때 프로세싱 부하의 차이, 둘째, 채널 패킷 손실률 PL일 때 종단간 PSNR(Peak-to-peak Signal-to-Noise Ratio) 결과를 비교하였다.
먼저, 시나리오 1은 최적 시스템(OS : Optimal System)에 대하여 실험을 수행하였다.
최적부호율은 하기의 [수학식 16] 및 [수학식 17]과 같이 DS와 DC의 합을 최소화하는 부호율로 결정한다.
Figure 112010077134401-pat00059
Figure 112010077134401-pat00060
여기서,
Figure 112010077134401-pat00061
Figure 112010077134401-pat00062
는 장면-의존적인 모델 변수(SDMP)이다. 테스트 인코딩에서 k=2와 k=-9로 테스트 스트림을 두 번 인코딩하여 상기 [수학식 16]의 세 장면-의존적인 모델 변수(SDMP)를 얻는다. 움직임 추정 부분에서는 전술한 움직임 벡터 재사용 방법 대신에 코덱에서 지원하는 이전 기본 방법(프레임 반복 방법)을 사용한다. 테스트-반복에서 손실률은 균일하게 1/15, 반복 회수는 30으로 설정하였다. 각 테스트 디코딩에서는 도 8에 도시된 바와 같이 변형된 디코더를 사용하였다.
그리고 시나리오 2는 본 발명에서 제안한 시스템(PS : Proposed System)에 대하여 실험을 수행하였다.
상기 [수학식 11]의 근사화된 잔여 손실 임계치 세트(RLTS) 모델을 통해 최적부호율을 계산한다. 상기 [수학식 11]의 장면-의존적인 모델 변수(SDMP)를 얻기 위해 하나의
Figure 112010077134401-pat00063
샘플이 필요한데, k=7로 테스트 인코딩하여 얻는다. 테스트 인코딩에서는 움직임 벡터 재사용 방법을 사용한다. 테스트-반복에서는 도 8에 도시된 바와 같이 제안된 테스트 디코딩 방법을 사용한다.
QCIF 해상도의 'BUS' 영상과 'City' 영상의 각 프레임에 대한 프로세싱 부하를 비교한 결과를 도 9a(BUS 영상) 및 도 9b(City 영상)에 나타내었다. 여기에서는 H.263 동영상 부호화 방법을 사용하였다. 측정된 프로세싱 시간은 100 프레임 간격으로 정규화하였다. 각 프레임의 총 처리시간은 100을 초과할 수 없다.
도 9a 및 도 9b는 저사양 컴퓨터에서의 테스트-런의 프로세싱 부하를 나타내는 도면이다.
도 9a 및 도 9b에서 검은색 막대는 테스트-런 없이 각 프레임의 프로세싱 시간을 나타낸다. 남아있는 자원은 테스트-런에 사용할 수 있다. 파란색 막대와 흰색 막대는 각각 테스트 인코딩과 테스트-반복에 사용된 처리 시간이다. 시나리오 1의 최적 시스템에서는 복잡도가 큰 추가의 테스트 인코딩이 2회 더 필요하기 때문에 테스트 인코딩이 시퀀스의 끝에서도 종료되지 않는다. 반면에, 제안된 시스템에서는 한 번의 테스트 인코딩만이 필요하며 전술한 고속화 방법을 적용하였다.
도 10a 및 도 10b는 고사양 컴퓨터에서의 테스트-런의 프로세싱 부하를 나타내는 도면으로, 고성능 컴퓨터를 사용한 경우 QCIF 해상도의 'BUS' 영상과 'City' 영상에 대한 프로세싱 부하를 보여주고 있다.
도 10a(BUS 영상)에 도시된 바와 같이, 고성능 컴퓨터에서 H.263 코덱을 사용한 경우 최적 시스템에 대한 테스트-런 속도는 저사양 컴퓨터 시스템을 사용한 경우보다 빨라짐을 볼 수 있다. 그럼에도 불구하고, 제안된 시스템이 아직도 최적 시스템보다 훨씬 더 빠르다. 만약, 비디오 코덱이 대부분의 처리 시간을 차지한다면 테스트-런을 수행할 충분한 시간을 얻을 수 없다.
도 10b(City 영상)에 도시된 바와 같이, 고성능 컴퓨터에서 H.264 코덱을 사용한 경우 고성능 컴퓨터에서 실행하였지만 H.264 코덱이 너무 많은 연산량을 차지하는 바람에 테스트-런을 수행할 시간적인 여유가 너무 부족하여 테스트-런의 완료가 지연되었다. 그러나 제안 시스템에서는 최적 시스템보다 훨씬 빨리 처리됨을 볼 수 있다.
도 11a 및 도 11b는 테스트 시퀀스에 대한 PSNR 추정 성능을 나타내는 도면으로, 채널 손실률에 대한 PSNR 성능 결과를 보여주고 있다.
PSNR은 다음과 같이 계산되었다. 먼저, 최적 시스템(OS : Optimal System)과 제안 시스템(PS : Proposed System)에 대해 테스트-런을 수행하였다. 그 다음에 각 테스트-런 방식으로부터 채널 손실률에 대해 모델과 장면-의존적인 모델 변수(SDMP)를 통해 최적부호율을 결정하였다. 이 최적부호율을 적용하여 도 1의 비디오 전송 시스템에 대해 모의 실험을 수행하고 각 테스트 시퀀스의 모든 프레임에 대해 평균 PSNR를 계산하였다. 마지막으로, 통계적으로 의미있는 평균값을 구하기 위해 상기 절차를 50회 수행하여 도 11a 및 도 11b에 도시된 바와 같은 PSNR값을 얻었다. 제안 시스템의 성능은 높은 손실률을 제외하고는 최적 시스템에 매우 근사함을 볼 수 있다. PL=0.6 이상에서는 최적 시스템(OS)과 제안 시스템(PS)의 최대 PSNR 차이가 'BUS' 영상에서는 2.57dB, 'City' 영상에서는 3.15dB를 보였다. 높은 PSNR 차이를 보이는 PL의 구간은 그리 크지 않다. PSNR의 평균값들간의 차이는 0.37dB(BUS 영상), 0.23dB(City 영상)에 불과했다. 다른 테스트 시퀀스에 대한 PSNR 성능 결과는 하기의 [표 2]와 같다. 잔여 손실 임계치 세트(RLTS)를 근사화함으로써 얻은 추정에러는 수신기의 화질에 그리 영향을 미치지 않음을 알 수 있다.
Figure 112010077134401-pat00064
도 12는 본 발명에 따른 실시간 소스-채널 복합부호화 장치의 일실시예 구성도이다.
도 12에 도시된 바와 같이, 본 발명에 따른 실시간 소스-채널 복합부호화 장치는, 장면-의존적인 모델 파라미터를 실시간으로 트레이닝시키기 위하여 테스트-런을 수행하기 위한 테스트-런 수행부(100), 채널 특성이 시간에 따라 변화하는 채널에서 패킷 손실 상태가 변화함에 따라 상기 테스트-런 수행부(100)로부터의 테스트-런 수행 결과를 이용하여 최적부호율을 결정하기 위한 최적부호율 결정부(200), 및 상기 최적부호율 결정부(200)로부터의 최적부호율에 따라 소스 부호율과 채널 부호율을 최적으로 결정하여 실시간으로 소스-채널 복합부호화를 수행하기 위한 소스-채널 복합부호화부(300)를 포함한다.
여기서, 상기 테스트-런 수행부(100)는 반복 테스팅을 통해 평균 채널 왜곡량을 구한 후에 상기 평균 채널 왜곡량을 이용하여 제 1 장면-의존적인 모델 변수(β)를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면-의존적인 모델 변수(β)를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득한다. 이때, 상기 잔여 손실 임계치 세트(RLTS)의 원소 샘플 획득 과정에서는 하나의 원소 샘플을 얻는 것을 특징으로 한다.
이때, 상기 테스트-런 수행부(100)는, 현재 부호화되어 전송되는 비디오 프레임들을 저장하기 위한 테스트 스트림 버퍼(110), 상기 테스트 스트림 버퍼(110)에 저장되어 있는 비디오 프레임들을 부호화하여 비트스트림으로 생성하기 위한 테스트 인코딩부(120), 상기 테스트 인코딩부(120)에서 생성된 비트스트림을 패킷화하기 위한 패킷화부(130), "상기 패킷화부(130)로부터의 패킷을 랜덤 손실시키고 복호화하여 채널 왜곡량을 계산하는 반복 테스팅"을 통해 평균 채널 왜곡량을 구하기 위한 테스트 반복부(140), 및 상기 테스트 반복부(140)에서 구한 평균 채널 왜곡량을 이용하여 상기 제 1 장면-의존적인 모델 변수(β)를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면-의존적인 모델 변수(β)를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하기 위한 PRk 샘플 획득부(150)를 포함한다.
여기서, 상기 PRk 샘플 획득부(150)는 상기 테스트 반복부(140)에서 계산된 평균 채널 왜곡량을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 나누어 상기 제 1 장면-의존적인 모델 변수(β)의 값을 구하고, 초기의 소스 부호화에 의한 왜곡값을 상기 구한 제 1 장면-의존적인 모델 변수(β)의 값으로 나누어 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득한다.
한편, 상기 최적부호율 결정부(200)에서는, 현재의 추정 채널 패킷 손실율과, 상기 PRk 샘플 획득부(150)에서 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 통하여 구한 채널 손실 임계치 세트(CLTS)를 비교하여 최적부호율 r*를 결정한다.
즉, 상기 최적부호율 결정부(200)에서는, 상기 PRk 샘플 획득부(150)에서 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플 PRk를 이용하여 제 2 장면-의존적인 모델 변수(α)의 값을 구하고, 상기 구한 제 2 장면-의존적인 모델 변수(α)의 값으로부터 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구하며, 상기 구한 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환하여 현재의 추정 채널 패킷 손실율과 비교하여 최적부호율 r*를 결정한다.
한편, 소스-채널 복합부호화부(300)는, 상기 최적부호율 결정부(200)에서 결정된 최적부호율과 상기 추정 채널 패킷 손실율에 따라 소스 및 채널 부호화에 할당할 소스 및 채널 부호율을 결정하기 위한 채널 적응부(310), 상기 채널 적응부(310)에서 결정된 소스 부호율에 따라 입력 비디오를 부호화하기 위한 소스 인코딩부(주 인코딩부, 320), 상기 채널 적응부(310)에서 결정된 채널 부호율에 따라 소스 인코딩부(320)로부터의 비디오 신호를 채널 부호화하기 위한 채널 인코딩부(330), 및 상기 채널 인코딩부(330)에서 채널 부호화된 비디오 신호를 패킷화하기 위한 패킷화부(340)를 포함한다.
도 13은 도 12의 테스트 반복부의 일실시예 상세 구성도이다.
도 13에 도시된 바와 같이, 상기 테스트 반복부(140)는, 상기 패킷화부(130)로부터의 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 여러 번에 걸쳐 강제적으로 랜덤하게 손실시키기 위한 랜덤 손실부(141), 상기 랜덤 손실부(141)에서 랜덤 손실된 패킷이 포함된 비트스트림을 복호화하기 위한 테스트 디코딩부(142), 및 상기 테스트 디코딩부(142)에서 복호화된 재생 영상과 원본 영상을 가지고 채널 왜곡량을 계산하기 위한 채널 왜곡량 계산부(143)를 포함하되, 상기 랜덤 손실 과정부터 채널 왜곡량 계산 과정까지를 i-번 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량)을 구한다.
도 14는 본 발명에 따른 실시간 소스-채널 복합부호화 방법에 대한 일실시예 흐름도이다.
비디오 입력에 대하여 초기에는 사전에 정해진 채널 적응부(310)로부터의 소스 부호율 RS=RTrk로 소스 인코딩부(320)에서 입력 비디오를 인코딩하고, 채널 인코딩부(330)에서는 채널 적응부(310)로부터의 채널 부호율 RC=RT(1-rk)로 소스 인코딩부(320)로부터의 비디오를 부호화하여 패킷화부(340)로 전달한다.
한편, 해당 비디오를 전송하는 동안 테스트-런 수행부(100)와 최적부호율 결정부(200)에서는 현재의 비디오 입력에 대한 최적부호율을 결정한다. 이를 상세히 살펴보면 다음과 같다.
먼저, 테스트 스트림 버퍼(110)는 현재 부호화되어 전송되는 비디오 프레임들을 저장(버퍼링)한다(410). 그리고 테스트 인코딩부(120)에서는 상기 테스트 스트림 버퍼(110)에 저장되어 있는 비디오 프레임들을 부호화하여 비트스트림으로 생성한다(420). 그리고 패킷화부(130)에서는 상기 테스트 인코딩부(120)에서 생성된 비트스트림을 패킷화한다(430).
이후, 상기 패킷화부(130)에서 패킷화된 비디오 스트림에 대하여, 테스트 반복부(140)에서 테스트 잔여 비디오 패킷 손실율(RVPLR)값 PR(t)로 여러 번에 걸쳐 인공적으로 패킷을 손실시키고, 손실된 비트스트림을 복호화하여 채널 왜곡량을 계산한다(440 내지 460). 이때, 반복은 i-번을 수행하여 매 반복 때마다 얻은 채널 왜곡량의 평균값을 취한다. 즉, 테스트 반복부(140)의 랜덤 손실부(141)에서는 상기 패킷화부(130)로부터의 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값 PR(t)로 여러 번에 걸쳐 강제적으로 랜덤하게 손실시키고(440), 테스트 디코딩부(142)에서는 상기 랜덤 손실부(141)에서 랜덤 손실된 패킷이 포함된 비트스트림을 복호화한다(450). 그리고 채널 왜곡량 계산부(143)에서는 상기 테스트 디코딩부(142)에서 복호화된 재생 영상과 원본 영상을 가지고 채널 왜곡량을 계산한다(460). 이때, 상기 랜덤 손실 과정부터 채널 왜곡량 계산 과정까지를 i-번 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량 DC (t)(PR))을 구한다.
이후, PRk 샘플 획득부(150)에서는 상기 테스트 반복부(140)에서 계산된 평균 채널 왜곡량 DC (t)(PR)을 가지고 상기 [수학식 14]로부터 PR(t)로 나누어 제 1 장면-의존적인 모델 변수(SDMP) β값을 구하고(470), 제 1 장면-의존적인 모델 변수(SDMP) β값이 구해지면 상기 [수학식 15]로부터 PL=0으로 얻어지는 소스 부호화에 의한 왜곡값과 제 1 장면-의존적인 모델 변수(SDMP) β값을 상기 [수학식 15]에 대입하여 하나의 PRk 샘플을 얻는다(480).
상기 PRk 샘플 획득부(150)에서 샘플 PRk가 구해지면, 최적부호율 결정부(200)에서는 상기 [수학식 11]에 PRk를 대입하여 제 2 장면-의존적인 모델 변수(SDMP) α값을 구한다. 이렇게 구해진 제 2 장면-의존적인 모델 변수(SDMP) α값으로부터 모든 k에 대한 PRk를 구할 수 있다(490). 이렇게 함으로써, 상기 [수학식 10]의 잔여 손실 임계치 세트(RLTS)를 획득하였다. 이제 필요한 변수는 채널 손실 임계치 세트(CLTS)이므로, 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환한다(500). 이러한 변환 과정은 상기 [수학식 4]를 이용하여 사전에 변환 테이블을 생성하여 둔다. 이처럼, 채널 손실 임계치 세트(CLTS)의 모든 원소인 PLk의 값이 구해지면 상기 [수학식 8]을 이용하여 최적부호율 r*를 결정한다(510). 즉, 최적부호율 r*은 현재의 추정된 채널 패킷 손실율과 상기 구한 채널 손실 임계치 세트(CLTS)를 비교하여 얻을 수 있다.
상기 최적부호율 결정부(200)에서 최적부호율 r*이 결정되면, 채널 적응부(310)로 입력되는 추정 채널 패킷 손실율과 최적부호율 r*에 따라 채널 적응부(310)는 소스 부호화에 할당할 비트량 RT r*를 결정하여 소스 인코딩부(320)의 인코딩 변수로 전달하여 그 비트율로 입력 비디오를 인코딩하게 한다(520). 마찬가지로, 채널 인코딩부(330)에는 RT(1-r*)로 채널 부호화하게 한다(530). 여기서, 상기 최적부호율 결정부(200)에서 결정된 최적부호율 r*은 소스 인코딩부(320)로 직접 입력되고 상기 소스 인코딩부(320)를 통하여 채널 인코딩부(330)로 전달되거나, 상기 소스 인코딩부(320)와 채널 인코딩부(330)로 직접 입력된 후에, 채널 적응부(310)에서 할당한 비트량에 따라 최적부호율 r*을 적용하도록 구현할 수도 있다.
상기 채널 인코딩부(330)에서 채널 부호화된 비디오 신호는 패킷화부(340)에서 패킷화 과정을 거쳐서 채널로 전송된다(540). 이렇게 하면 채널의 특성에 적응적으로 부호율을 조절하면서 총 왜곡량을 최소화하는 비디오 전송이 가능해진다.
한편, 전술한 바와 같은 본 발명에 따른 실시간 소스-채널 복합부호화 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시 예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시 예에 한정되는 것은 아니며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 치환, 변형 및 변경이 가능하다.
그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
본 발명은 비디오 전송 시스템 등에 이용될 수 있다.
100 : 테스트-런 수행부 110 : 테스트 스트림 버퍼
120 : 테스트 인코딩부 130 : 패킷화부
140 : 테스트 반복부 141 : 랜덤 손실부
142 : 테스트 디코딩부 143 : 채널 왜곡량 계산부
150 : PRk 샘플 획득부 200 : 최적부호율 결정부
300 : 소스-채널 복합부호화부

Claims (17)

  1. 삭제
  2. 소스 및 채널 복합부호화 장치에 있어서,
    테스트 런을 수행하여 장면 의존적인 모델 파라미터를 트레이닝시키기 위한 테스트 런 수행부;
    상기 테스트 런 수행부로부터의 테스트-런 수행 결과를 이용하여 최적부호율을 결정하기 위한 최적부호율 결정부; 및
    상기 최적부호율 결정부로부터의 최적부호율에 따라 소스 부호율과 채널 부호율을 결정하여 소스 및 채널 복합부호화를 수행하기 위한 복합부호화부를 포함하되,
    상기 테스트 런 수행부는,
    반복 테스팅을 통해 평균 채널 왜곡량을 구한 후에 상기 구한 평균 채널 왜곡량을 이용하여 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 소스 및 채널 복합부호화 장치.
  3. 제 2 항에 있어서,
    상기 테스트 런 수행부는,
    하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 소스 및 채널 복합부호화 장치.
  4. 제 2 항에 있어서,
    상기 테스트 런 수행부는,
    현재 부호화되어 전송되는 비디오 프레임을 저장하기 위한 저장 수단;
    상기 저장 수단에 저장되어 있는 비디오 프레임을 부호화하여 비트스트림으로 생성하기 위한 테스트 인코딩부;
    상기 테스트 인코딩부에서 생성된 비트스트림을 패킷화하기 위한 제 1 패킷화부;
    "상기 제 1 패킷화부로부터의 패킷을 랜덤 손실시키고 복호화하여 채널 왜곡량을 계산하는 반복 테스팅"을 통해 평균 채널 왜곡량을 구하기 위한 테스트 반복부; 및
    상기 테스트 반복부에서 구한 평균 채널 왜곡량을 이용하여 상기 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하기 위한 샘플 획득부
    를 포함하는 소스 및 채널 복합부호화 장치.
  5. 제 4 항에 있어서,
    상기 테스트 반복부는,
    상기 제 1 패킷화부로부터의 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 랜덤하게 손실시키기 위한 랜덤 손실부;
    상기 랜덤 손실부에서 랜덤 손실된 패킷이 포함된 비트스트림을 복호화하기 위한 테스트 디코딩부; 및
    상기 테스트 디코딩부에서 복호화된 재생 영상과 원본 영상을 이용하여 채널 왜곡량을 계산하기 위한 채널 왜곡량 계산부를 포함하되,
    상기 랜덤 손실부에서의 랜덤 손실 과정부터 상기 채널 왜곡량 계산부에서의 채널 왜곡량 계산 과정까지를 복수회 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량)을 구하는 소스 및 채널 복합부호화 장치.
  6. 제 4 항에 있어서,
    상기 샘플 획득부는,
    상기 테스트 반복부에서 구한 평균 채널 왜곡량을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 나누어 상기 제 1 장면 의존적인 모델 변수의 값을 구하고, 초기의 소스 부호화에 의한 왜곡값을 상기 구한 제 1 장면 의존적인 모델 변수의 값으로 나누어 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 소스 및 채널 복합부호화 장치.
  7. 제 2 항 내지 제 6 항 중 어느 한 항에 있어서,
    상기 최적부호율 결정부는,
    현재의 추정 채널 패킷 손실율과, 하나의 상기 획득된 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 통하여 구한 채널 손실 임계치 세트(CLTS)를 비교하여 최적부호율을 결정하는 소스 및 채널 복합부호화 장치.
  8. 제 7 항에 있어서,
    상기 최적부호율 결정부는,
    상기 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 제 2 장면 의존적인 모델 변수의 값을 구하고, 상기 구한 제 2 장면 의존적인 모델 변수의 값으로부터 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구하며, 상기 구한 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환하여 상기 추정 채널 패킷 손실율과 비교하여 최적부호율을 결정하는 소스 및 채널 복합부호화 장치.
  9. 제 7 항에 있어서,
    상기 복합부호화부는,
    상기 최적부호율 결정부에서 결정된 최적부호율과 상기 추정 채널 패킷 손실율에 따라 소스 및 채널 부호율을 결정하기 위한 채널 적응부;
    상기 채널 적응부에서 결정된 소스 부호율에 따라 입력 비디오를 부호화하기 위한 소스 인코딩부;
    상기 채널 적응부에서 결정된 채널 부호율에 따라 상기 소스 인코딩부로부터의 비디오 신호를 채널 부호화하기 위한 채널 인코딩부; 및
    상기 채널 인코딩부에서 채널 부호화된 비디오 신호를 패킷화하기 위한 제 2 패킷화부
    를 포함하는 소스 및 채널 복합부호화 장치.
  10. 소스 및 채널 복합부호화 방법에 있어서,
    초기의 소스 부호율과 초기의 채널 부호율에 따라 소스 및 채널 복합부호화를 수행하는 초기 복합부호화 단계;
    반복 테스팅을 통해 평균 채널 왜곡량을 구한 후에 상기 구한 평균 채널 왜곡량을 이용하여 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 테스트 런 수행 단계;
    상기 획득된 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 최적부호율을 결정하는 최적부호율 결정 단계; 및
    상기 결정된 최적부호율에 따라 소스 부호율과 채널 부호율을 결정하여 소스 및 채널 복합부호화를 수행하는 복합부호화 단계
    를 포함하는 소스 및 채널 복합부호화 방법.
  11. 제 10 항에 있어서,
    상기 테스트 런 수행 단계는,
    하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 소스 및 채널 복합부호화 방법.
  12. 제 10 항에 있어서,
    상기 테스트 런 수행 단계는,
    현재 부호화되어 전송되는 비디오 프레임을 저장하는 단계;
    상기 저장되어 있는 비디오 프레임을 부호화하여 비트스트림으로 생성하는 단계;
    상기 생성된 비트스트림을 패킷화하는 제 1 패킷화 단계;
    "상기 제 1 패킷화 단계에서 패킷화된 패킷을 랜덤 손실시키고 복호화하여 채널 왜곡량을 계산하는 반복 테스팅"을 통해 평균 채널 왜곡량을 구하는 테스트 반복 수행 단계; 및
    상기 구한 평균 채널 왜곡량을 이용하여 상기 제 1 장면 의존적인 모델 변수를 구하고, 소스 부호화에 의한 왜곡값과 상기 구한 제 1 장면 의존적인 모델 변수를 이용하여 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 샘플 획득 단계
    를 포함하는 소스 및 채널 복합부호화 방법.
  13. 제 12 항에 있어서,
    상기 테스트 반복 수행 단계는,
    상기 제 1 패킷화 단계에서 패킷화된 패킷을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 랜덤하게 손실시키는 랜던 손실 단계;
    상기 랜덤 손실된 패킷이 포함된 비트스트림을 복호화하는 단계; 및
    상기 복호화된 재생 영상과 원본 영상을 이용하여 채널 왜곡량을 계산하는 채널 왜곡량 계산 단계를 포함하되,
    상기 랜덤 손실 단계부터 상기 채널 왜곡량 계산 단계까지를 복수회 반복 수행하여 매 반복 때마다 계산된 채널 왜곡량의 평균값(평균 채널 왜곡량)을 구하는 소스 및 채널 복합부호화 방법.
  14. 제 12 항에 있어서,
    상기 샘플 획득 단계는,
    상기 구한 평균 채널 왜곡량을 테스트 잔여 비디오 패킷 손실율(RVPLR) 값으로 나누어 상기 제 1 장면 의존적인 모델 변수의 값을 구하고, 초기의 소스 부호화에 의한 왜곡값을 상기 구한 제 1 장면 의존적인 모델 변수의 값으로 나누어 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 획득하는 소스 및 채널 복합부호화 방법.
  15. 제 10 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 최적부호율 결정 단계는,
    현재의 추정 채널 패킷 손실율과, 상기 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 통하여 구한 채널 손실 임계치 세트(CLTS)를 비교하여 최적부호율을 결정하는 소스 및 채널 복합부호화 방법.
  16. 제 15 항에 있어서,
    상기 최적부호율 결정 단계는,
    상기 획득된 하나의 잔여 손실 임계치 세트(RLTS)의 원소 샘플을 이용하여 제 2 장면 의존적인 모델 변수의 값을 구하고, 상기 구한 제 2 장면 의존적인 모델 변수의 값으로부터 잔여 손실 임계치 세트(RLTS)의 모든 원소를 구하며, 상기 구한 잔여 손실 임계치 세트(RLTS)를 채널 손실 임계치 세트(CLTS)로 변환하여 상기 추정 채널 패킷 손실율과 비교하여 최적부호율을 결정하는 소스 및 채널 복합부호화 방법.
  17. 제 15 항에 있어서,
    상기 복합부호화 단계는,
    상기 결정된 최적부호율과 상기 추정 채널 패킷 손실율에 따라 소스 및 채널 부호율을 결정하는 단계;
    상기 결정된 소스 부호율에 따라 비디오 신호를 부호화하는 단계;
    상기 결정된 채널 부호율에 따라 상기 부호화된 비디오 신호를 채널 부호화하는 단계; 및
    상기 채널 부호화된 비디오 신호를 패킷화하는 제 2 패킷화 단계
    를 포함하는 소스 및 채널 복합부호화 방법.
KR1020100117978A 2010-11-25 2010-11-25 실시간 소스-채널 복합부호화 방법 및 그 장치 KR101703133B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100117978A KR101703133B1 (ko) 2010-11-25 2010-11-25 실시간 소스-채널 복합부호화 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100117978A KR101703133B1 (ko) 2010-11-25 2010-11-25 실시간 소스-채널 복합부호화 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20120056443A KR20120056443A (ko) 2012-06-04
KR101703133B1 true KR101703133B1 (ko) 2017-02-06

Family

ID=46608583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100117978A KR101703133B1 (ko) 2010-11-25 2010-11-25 실시간 소스-채널 복합부호화 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR101703133B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102137730B1 (ko) * 2014-04-17 2020-07-24 삼성전자주식회사 모바일 비디오 애플리케이션을 위한 네트워크 중심의 QoE 프로비저닝 방법 및 장치
KR102191303B1 (ko) 2014-04-17 2020-12-15 삼성전자 주식회사 부호어를 생성하는 방법 및 장치 그리고 부호어를 복원하는 방법 및 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100618391B1 (ko) * 2005-02-24 2006-08-31 삼성전자주식회사 암호화와 채널부호화를 동시수행하는 복합부호화방법, 이를적용한 송신장치, 채널복호화와 복호화를 동시수행하는 복합복호화방법, 및 이를 적용한 수신장치
KR20080092502A (ko) * 2007-04-12 2008-10-16 엘지전자 주식회사 모바일 서비스 데이터 수신 장치 및 제어 방법

Also Published As

Publication number Publication date
KR20120056443A (ko) 2012-06-04

Similar Documents

Publication Publication Date Title
EP1677547B1 (en) Use of frame caching to improve packet loss recovery
US9071841B2 (en) Video transcoding with dynamically modifiable spatial resolution
JP2000134619A (ja) エンコ―ド方法及びエンコ―ダ
US6952450B2 (en) Unequal error protection of video based on motion vector characteristics
JP2000134620A (ja) 圧縮符号化されたビデオ信号を復号化する方法
JP2004507178A (ja) ビデオ信号符号化方法
KR20010033572A (ko) 네트워크로의 데이터 출력 속도 제어 시스템
KR101703133B1 (ko) 실시간 소스-채널 복합부호화 방법 및 그 장치
Slowack et al. Distributed video coding with feedback channel constraints
KR20100057388A (ko) 버퍼 상태에 적응적인 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR100937099B1 (ko) 영상 전송시 소스-채널 결합 부호화의 부호율 결정 방법및 이를 이용한 영상 전송 시스템
WO2003092295A1 (en) Moving image transferring system, moving image encoding apparatus, moving image decoding apparatus, and moving image transferring program
Yunus et al. A rate control model of MPEG-4 encoder for video transmission over Wireless Sensor Network
KR101103974B1 (ko) 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치
JP2005516501A (ja) Pbフレームモードでのビデオ画像の符号化
KR101072626B1 (ko) 비트율 제어 방법과 장치 및 이를 이용한 분산 비디오 코딩 방법과 장치
KR101409526B1 (ko) 영상 데이터의 비트율을 일정하게 유지시키는 장치 및 방법
KR20060063553A (ko) 에러 파급을 방지하는 영상신호의 엔코딩 및 디코딩 방법과장치
Gao et al. A Low-Latency Video Transmission Scheme Based on Sliding-Window FEC
Jeong et al. A real-time joint source-channel coding based on a simplified modeling of the residual video packet loss
KR101307469B1 (ko) 비디오 인코더, 비디오 디코더, 비디오 인코딩 방법 및 비디오 디코딩 방법
KR101413706B1 (ko) 움직임 정보 피드백을 갖는 위너-지브 비디오 코덱의 패리티 비트 요구량을 결정하는 방법
Heng et al. Multiple-description video coding through adaptive segmentation
Song et al. Improved H. 264 rate control over wireless channel
Jeong et al. A new joint source-channel modeling Approach for adaptive FEC code rate decision

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 4