KR101103974B1 - 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치 - Google Patents

분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치 Download PDF

Info

Publication number
KR101103974B1
KR101103974B1 KR1020100026598A KR20100026598A KR101103974B1 KR 101103974 B1 KR101103974 B1 KR 101103974B1 KR 1020100026598 A KR1020100026598 A KR 1020100026598A KR 20100026598 A KR20100026598 A KR 20100026598A KR 101103974 B1 KR101103974 B1 KR 101103974B1
Authority
KR
South Korea
Prior art keywords
channel
encoding
video data
size
motion prediction
Prior art date
Application number
KR1020100026598A
Other languages
English (en)
Other versions
KR20110107478A (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 KR1020100026598A priority Critical patent/KR101103974B1/ko
Priority to PCT/KR2011/000194 priority patent/WO2011084037A2/ko
Priority to US13/521,552 priority patent/US9210436B2/en
Publication of KR20110107478A publication Critical patent/KR20110107478A/ko
Application granted granted Critical
Publication of KR101103974B1 publication Critical patent/KR101103974B1/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/395Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving distributed video coding [DVC], e.g. Wyner-Ziv video coding or Slepian-Wolf video coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • 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

Abstract

손실 강인성 및 서비스 품질을 향상시킬 수 있는 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치가 개시된다. 분산 비디오 부호화 방법은 먼저 채널 상황을 확인하고, 확인된 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정한 후, 결정된 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수를 결정하고, 결정된 움직임 예측 수행 단계수에 상응하여 움직임 예측을 수행하여 전송할 비디오 데이터를 부호화하고, 결정된 채널 부호화율에 상응하여 부호화된 비디오 데이터를 채널 부호화한다. 따라서, 네트워크 자원을 추가적으로 점유하지 않고도 손실 강인성을 향상시킬 수 있고 이를 통해 복호화 실패 확률을 감소시킬 수 있다.

Description

분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치{METHODS AND APPARATUS FOR ENCODING/DECODING IN DISTRIBUTED VIDEO CODING}
본 발명은 영상 부호화 및 복호화에 관한 것으로, 더욱 상세하게는 분산 비디오 부호화에 적용될 수 있는 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치에 관한 것이다.
비디오 플레이어, 주문형 비디오(VOD), 영상 전화, 디지털 멀티미디어 브로드캐스팅(DMB), 무선 모바일 환경에서의 영상전송 등에 효율적인 압축기술로서 MPEG, H.26x 등의 압축 표준이 널리 사용되고 있다. 상기 압축 표준들은 시간적인 중복성(temporal redundancy)을 제거함으로써 부호화 효율에서 큰 이득이 얻고 있는데, 시간적인 중복성을 줄이기 위한 대표적인 방법으로는 움직임 예측 및 보상 기술이 있다. 하지만, 움직임 예측 및 보상 기술은 동영상 부호화기에서 상대적으로 많은 연산량을 요구하기 때문에 부호화기의 복잡도가 높아지고 전력 소비가 큰 단점이 있다. 따라서, 센서 네트워크와 같은 한정된 자원의 환경에서는 부호화기의 저전력화를 위해서 부호화기의 복잡도를 줄이는 것이 중요한 기술적 문제로 대두되고 있다.
상술한 문제를 해결하기 위해 복호화기에서도 중복성을 제거할 수 있는 가능성이 1970년대 Slepian-Wolf의 정보이론 경계(bound) 개념으로부터 제시된 이후, 무손실 압축을 지향하는 상기 개념을 양자화를 통한 손실 압축에 적용한 Wyner-Ziv 부호화 방법이 등장하면서 분산 비디오 부호화(DVC: Distributed Video Coding)의 가능성이 열리기 시작하였다.
분산 비디오 부호화 방법은 크게 피드백 채널을 사용하는 방식과 피드백 채널을 사용하지 않는 방식으로 구분할 수 있다.
도 1은 종래의 피드백 채널을 사용하는 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
도 1을 참조하면, 종래의 Wyner-Ziv 부호화 장치(10)는 키프레임 부호화부(14), 양자화부(11), 블록단위화부(12) 및 채널코드 부호화부(13)를 포함하고, 이에 상응하는 복호화 장치(50)는 키프레임 복호화부(53), 채널코드 복호화부(51), 영상복원부(52) 및 보조정보 생성부(54)를 포함한다.
Wyner-Ziv 부호화 기술에 따른 부호화 장치(10)는 소스 비디오 컨텐트(source video content)의 프레임들을 두 종류로 분류한다. 하나는 분산 비디오 부호화 방식에 의하여 부호화할 프레임(WZ 프레임)이고, 다른 하나는 분산 비디오 부호화 방식이 아닌 종래의 부호화방식에 의하여 부호화할 프레임(키 프레임)이다.
키 프레임들은 키프레임 부호화부(14)에서 통상적으로 H.264/AVC의 인트라 부호화 방식으로 부호화되어 복호화 장치(50)로 전송된다. 종래의 Wyner-Ziv 코딩 기술에 따른 부호화 장치(10)에 상응하는 복호화 장치(50)의 키프레임 복호화부(53)는 전송된 키프레임들을 복원하고, 보조정보 생성부(54)는 키프레임 복호화부(53)에 의해 복원된 키프레임을 이용하여 WZ 프레임에 해당하는 보조정보(Side Information)를 생성하고 생성된 보조정보를 채널코드 복호화부(51)로 출력한다.
통상적으로 보조정보 생성부(54)는 현재 WZ 프레임 전후에 위치한 키 프레임 간의 선형 움직임을 가정하고, 보간법을 이용하여 복원할 WZ 프레임에 해당하는 보조정보(Side Information)를 생성한다. 경우에 따라 보간법 대신에 보외법을 사용할 수도 있으나 보간법으로 생성된 보조정보에서의 잡음이 보외법으로 생성된 보조정보에서의 잡음보다 적기 때문에 대부분의 경우에서 보간법이 사용되고 있다.
한편, WZ 프레임을 부호화하기 위해서, 부호화 장치(10)의 양자화부(11)는 WZ 프레임에 대한 양자화를 수행하고, WZ 프레임의 양자화 값을 블록단위화부(12)로 출력한다. 블록단위화부(12)는 입력되는 WZ 프레임의 양자화된 값을 소정의 부호화 단위로 구분한다. 그리고, 채널코드 부호화부(13)는 채널코드를 이용하여 각 부호화단위에 대한 패리티 비트를 생성한다.
채널코드 부호화부(13)에 의해 생성된 패리티 비트는 패리티 버퍼(미도시)에 일시적으로 저장되고, 복호화 장치(50)에서 피드백 채널을 통하여 패리티 비트를 요청하면 순차적으로 복호화 장치(50)로 전송된다.
복호화 장치(50)의 채널코드 복호화부(51)는 부호화 장치(10)로부터 전송되는 패리티를 받아서 양자화 된 값을 추정하고, 영상복원부(52)는 채널코드 복호화부(51)에 의해 추정된 양자화 값을 입력받아 이를 역양자화 하여 WZ 프레임을 복원한다. 만약 부호화 장치(10)로부터 제공된 패리티 비트들이 성공적인 복호화를 보장할 수 있을 만큼 충분하지 못하여 복호화에 실패하는 경우, 복호화 장치(50)는 피드백 채널을 통해 부호화 장치(10)에게 더 많은 패리티 비트의 전송을 요청하게 되고, 이와 같은 과정은 복호화가 성공할 때까지 반복된다.
상술한 바와 같은 구조로 인하여 피드백 채널을 사용하는 분산 비디오 부호화 방법은 채널 모델링을 정확하게 수행할 수 있는 장점은 있으나 피드백에 따른 전송 지연이 커지게 되어 서비스 품질(Quality of Service)이 저하되는 단점이 있다.
피드백 채널을 사용하지 않는 분산 비디오 부호화 방법(예를 들면, PRISM: Power-efficient, Robust hIgh-compression, Syndrome-based Multimedia Coding)은 채널 모델링을 부호화 장치의 분류기(classifier)를 통해 수행하고 이를 통하여 비트율 제어를 수행하며 복호화의 성공 여부는 CRC(Cyclic Redundancy Check)를 통해 확인한다.
즉, 피드백 채널을 사용하지 않는 분산 비디오 부호화 방법에서는 부호화 장치에서 채널 모델링을 수행하기 때문에 피드백이 필요 없고 이로 인해 이로 인해 전송 지연이 적은 장점이 있으나, 부호화 장치에서 채널 모델링을 수행하기 때문에 정확한 채널 모델링이 어렵다는 단점이 있다.
피드백 채널을 사용하지 않는 분산 비디오 부호화 방법에서 상술한 바와 같은 단점을 보완하기 위해 움직임 예측을 수행할 경우 채널 모델링의 정확도는 향상되나 부호화 장치의 복잡도가 증가하게 되어 분산 비디오 부호화 방법의 장점이 감소하게 되고 움직임 보상을 수행하지 않는 경우에는 채널 모델링의 정확도가 감소하여 압축효율이 떨어지게 된다.
상술한 바와 같은 분산 비디오 부호화 기술에서 데이터의 전송시 채널 손실이 발생하는 경우에는 복호화에 실패하게 된다. 이와 같은 경우 피드백 채널을 사용하는 분산 비디오 부호화의 경우에는 추가 패리티 비트를 부호화 장치에 요청하여 복호화에 성공할 수 있다. 그러나, 피드백으로 인한 지연과 네트워크 자원의 사용량이 증가하게 되는 문제가 발생하는 단점이 있다. 또는, 피드백 채널을 사용하지 않는 분산 비디오 부호화 방법의 경우에는 복호화 실패에 따라 품질이 저하된다.
종래의 채널 손실을 보상하는 방법은 크게 채널 부호화를 이용하는 방법과 재전송을 하는 방법으로 구분할 수 있다. 채널 부호화를 이용하는 방법은 채널 손실이 발생한 경우 추가적으로 FEC(Forward Error Correction) 패킷을 전송하는 방법이고, 재전송 방법은 손실이 발생한 패킷을 다시 전송하는 방법이다. 그러나, 채널 부호화를 이용하는 방법과 재전송을 이용하는 방법 모두 전송하고자 하는 원래의 데이터 보다 많은 양의 데이터를 전송해야 하고 이는 네트워크 자원의 사용량 증가를 초래하여 네트워크 자원이 한정된 경우에는 사용이 제한된다.
본 발명의 목적은 손실 강인성 및 서비스 품질을 향상시킬 수 있는 분산 비디오 부호화/복호화 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 손실 강인성 및 서비스 품질을 향상시킬 수 있는 분산 비디오 부호화/복호화 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 분산 비디오 부호화 방법은, 채널 상황을 확인하는 단계, 확인된 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계, 결정된 상기 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수를 결정하는 단계, 결정된 상기 움직임 예측 수행 단계수에 상응하여 움직임 예측을 수행하여 상기 전송할 비디오 데이터를 부호화하는 단계 및 결정된 상기 채널 부호화율에 상응하여 상기 부호화된 비디오 데이터를 채널 부호화하는 단계를 포함한다. 상기 채널 상황을 확인하는 단계에서는 가용 비트율 및 패킷 손실율(PLR)을 획득할 수 있다. 상기 확인된 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계는, 상기 가용 비트율, 패킷 손실율 및 상기 채널 부호화율에 기초하여 상기 전송할 비디오 데이터의 크기 및 상기 채널 부호화 데이터의 크기를 결정할 수 있다. 상기 결정된 상기 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수를 결정하는 단계는, 상기 결정된 비디오 데이터의 크기에 기초하여 TSS(Three Step Search)의 총 단계 중 움직임 예측 수행 단계수를 결정할 수 있다. 상기 결정된 상기 움직임 예측 수행 단계수에 상응하여 움직임 예측을 수행하여 상기 전송할 비디오 데이터를 부호화하는 단계는, 움직임 예측에 사용된 움직임 벡터 및 움직임 예측 수행 단계수 정보를 분산 비디오 복호화 장치에 제공하는 단계를 더 포함할 수 있다.
또한, 상술한 본 발명의 목적을 달성하기 위한 본 발명의 다른 측면에 따른 분산 비디오 부호화 방법은, 채널 상황을 확인하는 단계, 확인된 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계, 결정된 상기 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정하는 단계, 결정된 비디오 데이터 크기 조절 방법에 따라 전송할 비디오 데이터의 부호화를 수행하는 단계 및 결정된 상기 채널 부호화율에 상응하여 상기 부호화된 비디오 데이터를 채널 부호화하는 단계를 포함한다. 상기 결정된 상기 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정하는 단계는, 채널 상황, 사용자의 선호도, 부호화 장치의 성능 중 미리 설정된 적어도 하나의 우선순위에 기초하여 상기 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정할 수 있다.
또한, 상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 분산 비디오 복호화 방법은, 제공된 부호화된 제2 데이터를 채널 복호화하여 채널 손실을 복원하는 단계, 제공된 부호화된 제1 데이터를 복호화하여 제1 프레임을 복원하는 단계, 제공된 움직임 벡터 및 움직임 예측 수행 단계수 정보에 기초하여 복원된 상기 제1 프레임에 대한 움직임 예측을 수행하여 보조 정보를 생성하는 단계, 패리티 비트를 이용하여 생성된 상기 보조 정보를 정정하는 단계 및 정정된 보조 정보를 역양자화하여 제2 프레임을 복원하는 단계를 포함한다.
또한, 상술한 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 분산 비디오 부호화 장치는, 입력된 제1 프레임을 부호화하는 제1 프레임 부호화부, 패킷 손실율(PLR)을 획득하고 획득한 상기 패킷 손실율에 기초하여 채널 부호화율을 결정하는 채널 모니터부, 제공된 상기 패킷 손실율에 기초하여 움직임 예측 수행 단계수를 결정하고, 결정된 상기 움직임 예측 수행 단계수에 따라 움직임 예측을 수행하여 보조 정보를 생성하는 움직임 예측부 및 생성된 상기 보조 정보를 부호화하여 패리티 비트를 생성하고 결정된 상기 채널 부호화율에 상응하여 채널 부호화를 수행하는 제2 프레임 부호화부를 포함한다. 상기 채널 모니터부는 상기 패킷 손실율의 두 배를 FEC(Forward Error Correction)율로 결정할 수 있다. 상기 제2 프레임 부호화부는 생성된 상기 보조 정보를 변환하고 양자화하는 변환 및 양자화부, 변환 및 양자화된 데이터를 채널 부호화하여 패리티 비트를 생성하는 제1 채널 부호화부 및 상기 채널 부호화율에 따라 제1 채널 부호화부로부터 제공된 데이터에 대해 채널 손실을 보상하기 위한 채널 부호화를 수행하는 제2 채널 부호화부를 포함할 수 있다. 상기 움직임 예측부는 움직임 예측에 사용된 움직임 벡터 및 움직임 예측 수행 단계수 정보를 분산 비디오 복호화 장치에 제공할 수 있다.
또한, 상술한 본 발명의 다른 목적을 달성하기 위한 본 발명의 다른 측면에 따른 분산 비디오 부호화 장치는, 입력된 제1 프레임을 부호화하는 제1 프레임 부호화부, 패킷 손실율 및 가용 비트율에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하고, 결정된 상기 전송할 비디오 데이터의 크기에 기초하여 비디오 데이터 크기를 조절하기 위한 제어 신호를 제공하는 제어부, 상기 제어부로부터 제어 신호가 제공되는 경우 움직임 예측을 수행하여 보조 정보를 생성하는 움직임 예측부 및 생성된 상기 보조 정보를 부호화하여 패리티 비트를 생성하고 결정된 상기 채널 부호화율에 상응하여 채널 부호화를 수행하는 제2 프레임 부호화부를 포함한다. 상기 제어부는 상기 결정된 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 및 양자화 간격 조절 중 적어도 하나를 비디오 데이터 크기를 조절하기 위한 방법으로 결정하고, 결정된 비디오 데이터 크기를 조절하기 위한 방법에 상응하는 제어 신호를 제공할 수 있다. 상기 움직임 예측부는 상기 제어부로부터 제공된 제어 신호인 움직임 예측 수행 단계수에 상응하여 움직임 예측을 수행하고, 움직임 예측에 사용된 움직임 벡터 및 움직임 예측 수행 단계수 정보를 분산 비디오 복호화 장치에 제공할 수 있다. 상기 제2 프레임 부호화부는 생성된 상기 보조 정보를 변환 및 양자화부, 변환 및 양자화된 데이터를 채널 부호화하여 패리티 비트를 생성하는 제1 채널 부호화부 및 상기 채널 부호화율에 따라 제1 채널 부호화부로부터 제공된 데이터에 대해 채널 손실을 보상하기 위한 채널 부호화를 수행하는 제2 채널 부호화부를 포함할 수 있다. 상기 변환 및 양자화부는 양자화 간격 정보가 상기 제어부로부터 제공되는 경우에는 제공된 양자화 간격 정보에 상응하여 양자화를 수행할 수 있다.
상술한 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치에 따르면, 채널 상황에 따라 부호화 장치의 복잡도 및/또는 양자화 간격을 조절하여 부호화되는 비디오 데이터의 크기를 감소시키고, 감소된 데이터량 만큼 채널 손실을 보상하기 위한 데이터를 추가하여 전송한다.
따라서, 네트워크 자원을 추가적으로 점유하지 않고도 손실 강인성을 향상시킬 수 있고 이를 통해 복호화 실패 확률을 감소시킬 수 있다. 또한, 복호화 실패 확률을 감소시킴으로써 피드백 채널의 사용을 최소화할 수 있기 때문에 지연에 민감한 서비스의 서비스 품질(QoS)을 보장할 수 있다.
도 1은 종래의 피드백 채널을 사용하는 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
도 2는 부호화 장치의 복잡도와 보조 정보 사이의 관계를 나타내는 그래프이다.
도 3은 부호화 장치의 움직임 예측 비율에 따른 성능 변화를 나타내는 그래프이다.
도 4는 본 발명의 일 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
도 8은 본 발명의 다른 실시예에 따른 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 2는 부호화 장치의 복잡도와 보조 정보 사이의 관계를 나타내는 그래프이다.
도 2에서 가로축은 부호화 장치의 복잡도 비율을 나타내는 것으로 움직임 예측의 복잡도를 의미한다. 또한, 세로축은 PSNR(Peak Signal to Noise Ratio)를 나타내는 것으로 보조 정보(SI: Side Information)의 품질을 의미한다.
도 2를 참조하면, 부호화 장치의 복잡도가 증가할수록 보조 정보의 품질이 향상됨을 알 수 있다. 보조 정보의 품질이 향상되면 보조 정보와 부호화되는 원본 영상의 차이가 감소하게 되므로 복호화에 요구되는 패리티 비트가 감소하게 된다. 따라서, 부호화 장치의 복잡도가 증가할수록 코딩 효율이 증가하게 된다.
도 3은 부호화 장치의 움직임 예측 비율에 따른 성능 변화를 나타내는 그래프로서, 움직임 예측의 방법 중 하나인 TSS(Three Step Search)를 이용하여 움직임 예측의 비율을 조절하고 이에 상응하는 PSNR을 측정하여 도시하였다.
도 3에서 N은 TSS의 총단계수를 의미하고, K는 부호화 장치에서 수행한 TSS 단계수를 의미한다.
도 3을 참조하면, K의 크기가 증가할수록 부호화 효율이 향상됨을 알 수 있다. 예를 들어, PSNR이 30dB일 때 K가 2인 경우 K가 0인 경우에 비해 부호화 효율이 약 20% 향상되었고, K가 6인 경우는 K가 0인 경우에 비해 부호화 효율이 약 35% 증가하였다. 여기서, K가 2인 경우 K가 0인 경우에 비해 절약된 비트량만큼 FEC 데이터를 추가적으로 전송하게 되면, 전송되는 전체 비트량은 K가 0인 경우와 동일하게 유지하면서 패킷 손실율(PLR: Packet Loss Rate)이 20%까지 품질의 저하 없이 부호화된 데이터의 전송이 가능하다.
본 발명의 실시예에 따른 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치에서는 상술한 바와 같은 특성을 이용하여 채널 손실이 발생할 경우 부호화 장치의 복잡도를 증가시켜 부호화 효율을 증가시킨 후 증가된 부호화 효율에 따라 감소된 비트량 만큼 추가적인 FEC 데이터를 전송함으로써 손실 강인성을 증가시킨다.
예를 들어, Ra를 가용 비트율, rFEC를 FEC율, PLR을 패킷 손실율이라 정의하면, 부호화 장치가 가용 비트율(Ra)로 복호화 장치에게 데이터를 전송할 때 채널 손실이 발생하게 되면 복호화 장치는 (1-PLR)Ra만을 정상적으로 수신하게 된다. 부호화 장치는 채널 상황을 나타내는 가용 비트율(Ra) 및 패킷 손실율(PLR)의 예측값을 이용하여 FEC율(rFEC)을 결정한다. FEC율(rFEC)이 결정되면 부호화 장치가 전송하는 데이터는 (1-rFEC× PLR)× Ra가 되고, FEC 데이터는 rFEC× PLR× Ra가 된다. 여기서, 가용 비트율(Ra) 및 패킷 손실율(PLR)은 채널 상황에 따라 변하기 때문에 rFEC값도 채널 상황에 따라 변화하게 된다. 따라서, 가용 비트율(Ra)이 감소하게 되면 전송 가능한 FEC 데이터의 크기도 감소하게 된다.
본 발명의 실시예에서는 FEC 데이터의 추가에 따른 네트워크 자원의 사용 증가를 최소화하기 위해 부호화 장치의 복잡도를 증가시켜 부호화 효율을 향상시킴으로써 전송할 데이터의 크기를 감소키고, 감소된 데이터의 양만큼 FEC 데이터를 추가함으로써 네트워크 자원을 추가적으로 사용하지 않고 손실 강인성을 증가시킨다.
도 4는 본 발명의 일 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도로서, 채널 상황에 따라 가변적인 가용 대역폭 및 손실을 모두 고려하여 손실 강인성을 증가시키는 과정을 나타낸다.
도 4를 참조하면, 먼저 부호화 장치는 가용 비트율(Ra) 및 패킷 손실율(PLR)을 획득함으로써 채널 상황을 확인한다(단계 110).
이후, 부호화 장치는 획득한 패킷 손실율에 기초하여 FEC율(rFEC)을 결정한다(단계 120). 예를 들어, FEC율은 획득한 패킷 손실율(PLR)의 두 배로 결정할 수 있으나, 여기에 한정되는 것은 아니며 채널 상황에 따라 다른 값으로 조절될 수 있다.
이후, 부호화 장치는 패킷 손실율(PLR) 및 FEC율에 기초하여 전송할 비디오 데이터의 크기와 FEC 데이터의 크기를 결정한다(단계 130). 여기서, 전송할 비디오 데이터의 크기는 (1-rFEC× PLR)× Ra로 결정될 수 있고, FEC 데이터의 크기는 rFEC× PLR× Ra로 결정될 수 있다.
이후, 부호화 장치는 결정된 비디오 데이터의 크기에 상응하여 부호화하기 위한 부호화 복잡도를 결정한다(단계 140). 여기서, 상기 부호화 복잡도의 결정은 움직임 예측 방법 중 하나인 TSS(Three Step Search)의 수행 단계수의 결정을 통해 수행될 수 있고, 상기 TSS 수행 단계수의 결정은 미리 정해진 영상 프레임 단위로 패킷 손실율(PLR) 대비 TSS 수행 단계수를 고려하여 결정될 수 있다. 또한, 상기 패킷 손실율(PLR) 대비 TSS 수행 단계수는 반복적인 실험을 통해 얻어진 최적의 값이 룩업테이블 형식으로 미리 저장되거나, 산술적 계산에 의해 실시간으로 획득할 수도 있다.
이후, 부호화 장치는 단계 140에서 결정된 부호화 복잡도에 따라 움직임 예측을 수행하여 부호화를 실행한다(단계 150). 여기서, 부호화 장치는 움직임 예측시 사용된 움직임 벡터, TSS 총단계수, TSS 수행 단계수 등의 정보를 복호화 장치에 제공할 수 있다.
이후, 부호화 장치는 채널 손실을 보상하기 위한 채널 부호화를 수행한 후 부호화된 데이터를 복호화 장치에 제공한다(단계 160). 여기서, 부호화 장치는 단계 120에서 결정된 FEC율에 따라 채널 부호화를 수행한다.
도 4에 도시된 바와 같이 본 발명의 일 실시예에 따른 분산 비디오 부호화 방법에서는 채널 상황에 따라 부호화 장치의 복잡도를 증가시켜 부호화 효율을 향상시킴으로써 종래의 부호화 방법에 의해 전송되는 n개의 비디오 패킷을 n-k개로 감소시키고, 감소된 k개의 패킷을 추가적인 FEC 패킷으로 할당함으로써 네트워크 자원을 추가적으로 사용하지 않고 손실에 대한 강건성을 향상시킬 수 있고, 이를 통해 서비스 품질을 보장할 수 있다.
도 5는 본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도이다.
도 5에 도시된 단계 110 내지 단계 130은 도 4에 도시된 동일 부호의 단계들과 동일한 기능을 수행하므로 중복을 피하기 위해 상세한 설명을 생략한다.
도 5를 참조하면, 단계 110 내지 단계 130의 수행을 통해 채널 상황에 상응하여 전송할 비디오 데이터의 크기 및 FEC 데이터의 크기가 결정되면, 부호화 장치는 결정된 비디오 데이터 크기에 상응하도록 비디오 데이터의 크기를 조절하기 위한 방법을 결정한다(단계 145).
본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법에서 비디오 크기를 조절하는 방법은 양자화 간격을 조절하는 방법과 부호화 장치의 복잡도를 증가시키는 방법 및 상기 두 가지 방법을 복합적으로 사용하는 방법을 포함할 수 있다.
양자화 간격을 조절하는 방법은 복잡도의 증가가 없고 조절 가능한 데이터 크기의 폭이 넓다는 장점이 있는 반면 양자화 간격의 크기가 커지게 되면 비디오의 품질이 저하될 수 있는 단점이 있다. 또한, 부호화 장치의 복잡도를 조절하는 방법은 움직임 예측을 수행하기 때문에 비디오의 품질은 동일하게 유지할 수 있는 장점이 있는 반면 복잡도의 증가로 인해 비디오 데이터 크기의 조절에 제한이 있기 때문에 손실이 크게 발생한 경우에는 적용하기 어렵다는 단점이 있다.
본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법에서는 미리 설정된 우선 순위(예를 들면, 채널 상황, 부호화 장치의 성능 및/또는 사용자의 선호도)를 고려하여 상기한 양자화 간격을 조절하는 방법, 부호화 장치의 복잡도를 증가시키는 방법 및 상기 두 가지 방법을 복합적으로 사용하는 방법 중 어느 하나의 방법으로 비디오 데이터의 크기를 조절할 수 있다.
예를 들어 사용자의 선호도에 기초하여 상기 두 가지 방법을 복합적으로 사용하여 비디오 데이터의 크기를 조절하는 경우, 사용자가 허용하는 최저 품질의 기준치를 정의하고, 채널 상황에 따른 양자화 간격 조절로 비디오의 품질이 상기 정의된 기준치 이하로 떨어지게 될 경우 양자화 간격 조절을 중단하고 복잡도 조절을 통하여 비디오 데이터 크기를 조절할 수 있다.
또는, 비디오 품질에 높은 우선순위를 두는 경우에는 복잡도 조절을 우선적으로 적용하고, 사용시간, 즉 전력 소모량에 높은 우선순위를 두는 경우에는 양자화 간격 조절을 적용하여 비디오 데이터의 크기를 조절할 수 있다.
상술한 바와 같이 단계 145에서 비디오 데이터의 크기를 조절하기 위한 방법이 결정되면 부호화 장치는 결정된 방법에 기초하여 부호화를 수행하고(단계 155), 채널 손실을 보상하기 위한 채널 부호화를 수행한 후 부호화된 데이터를 복호화 장치에 제공한다(단계 160). 여기서, 부호화 장치는 결정된 FEC율에 따라 채널 부호화를 수행한다.
도 6은 본 발명의 다른 실시예에 따른 분산 비디오 부호화 방법을 나타내는 흐름도로서, 분산 비디오 부호화 장치에서 움직임 예측을 수행하여 부호화된 데이터를 제공하는 경우의 복호화 방법을 나타낸다.
도 6을 참조하면, 복호화 장치는 부호화 장치로부터 전송된 부호화된 데이터를 채널 복호화 하여 채널 손실에 따른 이레이저(erasure)를 복원한다(단계 210). 여기서, 상기 이레이저는 채널 손실을 통해 손실된 데이터를 의미한다.
이후, 복호화 장치는 부호화 장치로부터 제공된 부호화된 키 프레임을 복호화 한다(단계 220). 복호화 장치는 H.264/AVC, MPEGx 등의 공지된 다양한 복호화 기술을 통해 키 프레임을 복호화할 수 있으나, 부호화 장치에서 키 프레임을 부호화하기 위해 사용된 표준과 동일한 표준을 사용하여 키 프레임을 복호화하는 것이 바람직하다.
이후, 복호화 장치는 부호화 장치로부터 제공된 움직임 벡터, TSS 총 단계수, TSS 수행 단계수 등의 정보를 이용하여 움직임 예측을 수행하여 보조 정보(SI)를 생성한다(단계 230).
복호화 장치는 채널 손실이 복원된 데이터를 복호화하여 패리티 비트를 추출한 후 추출된 패리티 비트를 이용하여 상기 생성된 보조 정보를 정정하고(단계 240), 정정된 보조 정보를 역 양자화하여 WZ 프레임을 복원한다(단계 250).
도 7은 본 발명의 일 실시예에 따른 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 분산 비디오 부호화 장치(300)는 키프레임 부호화부(310), 채널 모니터부(320), 움직임 예측부(330), 변환 및 양자화부(340), 제1 채널 부호화부(350) 및 제2 채널 부호화부(360)를 포함할 수 있고, 입력된 키 프레임을 부호화하여 분산 비디오 복호화 장치에 제공하고, WZ 프레임에 대해서는 채널 상황에 상응하여 움직임 예측 수행 단계수를 결정한 후 결정된 단계수대로 움직임 예측을 수행하여 패리티 비트를 생성하고, 생성된 패리티 비트와 움직임 벡터 및 움직임 예측 수행 정보를 분산 비디오 복호화 장치에 제공한다.
키프레임 부호화부(310)는 입력된 키 프레임을 부호화한 후, 부호화된 키 프레임을 움직임 예측부(330) 및 분산 비디오 복호화 장치(400)의 키프레임 복호화부(410)에 제공한다. 여기서, 상기 키프레임 부호화부(310)는 H.264/AVC, MPEGx 등의 공지된 다양한 부호화 기술을 통해 키 프레임을 부호화할 수 있다.
채널 모니터부(320)는 가용 비트율(Ra) 및/또는 패킷 손실율(PLR)을 획득함으로써 채널 상황을 확인한 후 채널 상황 정보(패킷 손실율(PLR))를 움직임 예측부(330)에 제공한다. 또한, 채널 모니터부(320)는 상기 패킷 손실율(PLR)에 기초하여 FEC율을 결정한 후, 결정된 FEC율을 제2 채널 부호화부(360)에 제공한다.
움직임 예측부(330)는 채널 모니터부(320)로부터 제공된 채널 상황 정보(패킷 손실률(PLR))에 기초하여 움직임 예측 수행 단계수(즉, TSS의 수행 단계수 K)를 결정하고, 결정된 움직임 예측 수행 단계수에 기초하여 부호화된 키 프레임에 대해 움직임 예측을 수행하여 보조 정보를 생성하고, 생성된 보조 정보를 변환 및 양자화부(340)에 제공한다. 또한, 움직임 예측부(330)는 움직임 예측에 사용된 움직임 벡터(MV) 및 움직임 예측 정보인 TSS 총 단계수, TSS 수행 단계수 등의 정보를 분산 비디오 복호화 장치(400)의 보조정보 생성부(420)에 제공한다.
변환 및 양자화부(340)는 움직임 예측부(330)로부터 제공된 보조 정보를 변환(transform)하고 양자화한 후 제1 채널 부호화부(350)에 제공한다.
제1 채널 부호화부(350)는 채널 코드를 이용하여 양자화가 수행된 데이터에 대해 패리티 비트(parity bit)를 생성한 후 제2 채널 부호화부(360)에 제공한다.
제2 채널 부호화부(360)는 채널 모니터부(320)로부터 제공된 FEC율에 상응하여 채널 손실에 따른 이레이저(erasure)를 보상하기 위한 채널 부호화를 수행한 후 채널 부호화가 수행된 데이터를 분산 비디오 복호화 장치(400)에 제공한다. 제2 채널 부호화부(360)는 예를 들어, 리드 솔로몬 코드(Reed-Solomon code)를 이용하여 채널 부호화를 수행할 수 있다.
분산 비디오 부호화 장치(300)에서 채널 모니터부(320)에 의해 제공된 PLR이 허용 가능한 범위에 포함되는 경우에는 움직임 예측을 수행하지 않을 수도 있고, 이와 같은 경우에는 입력된 WZ 프레임을 변환 및 양자화부(340)에 제공된다.
또한, 본 발명의 일 실시예에 따른 분산 복호화 장치(400)는 키프레임 복호화부(410), 보조정보 생성부(420), 제2 채널 복호화부(430), 제1 채널 복호화부(440) 및 영상 복원부(450)를 포함할 수 있고, 분산 비디오 복호화 장치(300)로부터 제공된 부호화된 키프레임을 복호화하고, 제공된 움직임 벡터 및 움직임 예측 정보를 이용하여 복호화된 키프레임에 대해 움직임 예측을 수행하여 보조 정보를 생성한 후, 채널 복호화된 패리티 비트를 이용하여 생성된 보조 정보에 포함된 잡음을 제거함으로써 WZ 프레임을 복원한다.
구체적으로, 키프레임 복호화부(410)는 분산 비디오 부호화 장치(300)의 키프레임 부호화부(310)로부터 제공된 부호화된 키프레임을 복호화한다.
보조정보 생성부(420)는 분산 비디오 부호화 장치(300)로부터 제공된 움직임 벡터, TSS 총 단계수 및 TSS 수행 단계수 등의 정보를 이용하여 복호화된 키 프레임에 대한 움직임 예측을 수행하여 보조 정보를 생성한다. 여기서, 보조정보 생성부(420)에 의해 생성된 보조 정보는 분산 비디오 부호화 장치(300)로부터 제공된 움직임 예측 정보를 이용하여 생성되었기 때문에 움직임 예측부(330)에 의해 생성된 보조 정보와 동일할 수 있다.
제2 채널 복호화부(430)는 분산 비디오 부호화 장치(300)로부터 제공된 데이터를 채널 복호화하여 채널 손실에 따른 이레이저를 복원한다.
제1 채널 복호화부(440)는 이레이저가 복원된 데이터에 대해 채널 복호화를 수행하여 패리티 비트를 추출한 후 추출된 패리티 비트를 이용하여 보조 정보에 포함된 잡음을 정정함으로써 양자화된 데이터를 추정한다.
영상 복원부(450)는 제1 채널 복호화부(440)로부터 추정된 양자화된 데이터역양자화하고 역변환하여 WZ 프레임을 복원한다. 여기서, 역양자화시에 발생하는 모호성(ambiguity)은 보조정보 생성부(420)로부터 제공되는 보조 정보를 참조하여 해결할 수 있다.
도 8은 본 발명의 다른 실시예에 따른 분산 비디오 부호화/복호화 장치의 구성을 나타내는 블록도이다.
도 8을 참조하면, 본 발명의 다른 실시예에 따른 분산 비디오 부호화 장치(300a)는 키프레임 부호화부(310), 제어부(320a), 움직임 예측부(335), 변환 및 양자화부(345), 제1 채널 부호화부(350) 및 제2 채널 부호화부(365)를 포함할 수 있다.
키프레임 부호화부(310)는 입력된 키 프레임을 부호화한 후, 부호화된 키 프레임을 움직임 예측부(335) 및 분산 비디오 복호화 장치(400a)의 키프레임 복호화부(410)에 제공한다. 여기서, 상기 키프레임 부호화부(310)는 H.264/AVC, MPEGx 등의 공지된 다양한 부호화 기술을 통해 키 프레임을 부호화할 수 있다.
제어부(320a)는 채널 모니터부(320) 및 자원 관리부(325)를 포함할 수 있다. 채널 모니터부(320)는 가용 비트율(Ra) 및 패킷 손실율(PLR)을 획득함으로써 채널 상황을 확인한 후, 획득한 상기 가용 비트율(Ra) 및 패킷 손실율(PLR)을 자원 관리부(325)에 제공한다.
자원 관리부(325)는 채널 모니터부(320)로부터 제공된 가용 비트율(Ra) 및 패킷 손실율(PLR)에 기초하여 FEC율(rFEC)을 설정한 후, 설정된 FEC율(rFEC)을 제2 채널 부호화부(365)에 제공한다. 여기서, 자원 관리부(325)는 FEC율(rFEC)을 패킷 손실율(PLR)의 두 배로 설정할 수 있다.
또한, 자원 관리부(325)는 비디오 데이터의 크기((1-rFEC× PLR)× Ra) 및 FEC 데이터의 크기(rFEC× PLR× Ra)를 산출하고, 산출된 데이터 크기 및 미리 설정된 우선순위에 기초하여 비디오 데이터의 크기 조절 방법을 결정한다.
자원 관리부(325)는 산출된 비디오 데이터의 크기에 상응하도록 움직임 예측 수행 단계수(즉, TSS의 수행 단계수 K)나 양자화 간격을 조절할 수 있고, 움직임 예측 및 양자화 간격 조절을 복합적으로 수행하도록 결정할 수도 있다. 여기서, 자원 관리부(325)는 채널 상황, 부호화 장치의 성능 및/또는 사용자의 선호도를 고려하여 상기한 양자화 간격을 조절, 움직임 예측 수단 단계 및 상기 두 가지 방법을 복합적으로 사용하는 방법 중 어느 하나의 방법을 비디오 데이터의 크기 조절 방법으로 결정한 후, 결정된 바에 상응하는 제어신호를 제공할 수 있다.
움직임 예측부(335)는 자원 관리부(325)로부터 제공된 제어 신호인 움직임 예측 수행 단계수(즉, TSS의 수행 단계수 K) 정보에 기초하여 부호화된 키 프레임에 대해 움직임 예측을 수행하여 보조 정보를 생성하고, 생성된 보조 정보를 변환 및 양자화부에 제공한다. 또한, 움직임 예측부(355)는 움직임 예측에 사용된 움직임 벡터(MV) 및 움직임 예측 정보인 TSS 총 단계수, TSS 수행 단계수 등의 정보를 분산 비디오 복호화 장치(400a)의 보조정보 생성부(420)에 제공한다.
변환 및 양자화부(345)는 움직임 예측부(335)로부터 제공된 보조 정보를 변환(transform)하고 양자화한 후 제1 채널 부호화부(350)에 제공한다. 비디오 데이터의 크기 조절 방법이 양자화 간격 조절로 결정된 경우, 변환 및 양자화부(345)는 자원 관리부(325)로부터 제공된 제어신호인 양자화 간격에 상응하여 양자화를 수행할 수 있다.
제1 채널 부호화부(350)는 채널 코드를 이용하여 양자화가 수행된 데이터에 대해 패리티 비트(parity bit)를 생성한 후 제2 채널 부호화부(360)에 제공한다.
제2 채널 부호화부(365)는 채널 손실에 따른 이레이저(erasure)를 보상하기 위한 채널 부호화를 수행한 후 채널 부호화가 수행된 데이터를 분산 비디오 복호화 장치(400)에 제공한다. 여기서, 제2 채널 부호화부(360)는 자원 관리부(325)로부터 제공된 FEC율 정보에 상응하여 채널 부호화를 수행할 수 있다.
또한, 본 발명의 다른 실시예에 따른 분산 비디오 복호화 장치(400a)는 키프레임 복호화부(410), 보조정보 생성부(420), 제2 채널 복호화부(430), 제1 채널 복호화부(440) 및 영상 복원부(450)를 포함할 수 있다.
키프레임 복호화부(410)는 분산 비디오 부호화 장치(300)의 키프레임 부호화부(310)로부터 제공된 부호화된 키프레임을 복호화한다.
보조정보 생성부(420)는 분산 비디오 부호화 장치(300)로부터 제공된 움직임 벡터, TSS 총 단계수 및 TSS 수행 단계수 등의 정보를 이용하여 복호화된 키 프레임에 대한 움직임 예측을 수행하여 보조 정보를 생성한다. 여기서, 보조정보 생성부(420)에 의해 생성된 보조 정보는 분산 비디오 부호화 장치(300)로부터 제공된 움직임 예측 정보를 이용하여 생성되었기 때문에 움직임 예측부(330)에 의해 생성된 보조 정보와 동일할 수 있다.
제2 채널 복호화부(430)는 분산 비디오 부호화 장치(300)로부터 제공된 데이터를 채널 복호화하여 채널 손실에 따른 이레이저를 복원한다.
제1 채널 복호화부(440)는 이레이저가 복원된 데이터에 대해 채널 복호화를 수행하여 패리티 비트를 추출한 후 추출된 패리티 비트를 이용하여 보조 정보에 포함된 잡음을 정정함으로써 양자화된 데이터를 추정한다.
영상 복원부(450)는 제1 채널 복호화부(440)로부터 추정된 양자화된 데이터역양자화하고 역변환하여 WZ 프레임을 복원한다. 여기서, 역양자화시에 발생하는 모호성(ambiguity)은 보조정보 생성부(420)로부터 제공되는 보조 정보를 참조하여 해결할 수 있다.
이상, 본 발명을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시예에 한정되지 않고, 본 발명의 기술적 사상 및 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러가지 변형 및 변경이 가능하다.
300, 300a : 부호화 장치 310 : 키프레임 부호화부
320a : 제어부 320 : 채널 모니터부
325 : 자원 관리부 330 : 움직임 예측부
340, 345 : 변환 및 양자화부 350 : 제1 채널 부호화부
360, 365 : 제2 채널 부호화부 400, 400a : 복호화 장치
410 : 키프레임 복호화부 420 : 보조정보 생성부
430 : 제2 채널 복호화부 440 : 제1 채널 복호화부
450 : 영상 복원부

Claims (17)

  1. 분산 비디오 부호화 장치의 부호화 방법에 있어서,
    전송 채널 상황을 확인하는 단계;
    확인된 상기 전송 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계;
    결정된 상기 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수를 결정하는 단계;
    결정된 상기 움직임 예측 수행 단계수에 상응하여 움직임 예측을 수행하여 상기 전송할 비디오 데이터를 부호화하는 단계; 및
    결정된 상기 채널 부호화율에 상응하여 상기 부호화된 비디오 데이터를 채널 부호화하는 단계를 포함하는 분산 비디오 부호화 방법.
  2. 제1항에 있어서, 상기 전송 채널 상황을 확인하는 단계는,
    가용 비트율 및 패킷 손실율(PLR)을 획득하는 것을 특징으로 하는 분산 비디오 부호화 방법.
  3. 제2항에 있어서, 상기 확인된 상기 전송 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계는,
    상기 가용 비트율, 패킷 손실율 및 상기 채널 부호화율에 기초하여 상기 전송할 비디오 데이터의 크기 및 상기 채널 부호화 데이터의 크기를 결정하는 것을 특징으로 하는 분산 비디오 부호화 방법.
  4. 삭제
  5. 삭제
  6. 분산 비디오 부호화 장치의 부호화 방법에 있어서,
    전송 채널 상황을 확인하는 단계;
    확인된 상기 전송 채널 상황에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하는 단계;
    결정된 상기 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정하는 단계;
    결정된 비디오 데이터 크기 조절 방법에 따라 전송할 비디오 데이터의 부호화를 수행하는 단계; 및
    결정된 상기 채널 부호화율에 상응하여 상기 부호화된 비디오 데이터를 채널 부호화하는 단계를 포함하는 분산 비디오 부호화 방법.
  7. 제6항에 있어서, 상기 결정된 상기 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정하는 단계는,
    채널 상황, 사용자의 선호도, 부호화 장치의 성능 중 미리 설정된 적어도 하나의 우선순위에 기초하여 상기 움직임 예측 수행 단계수 조절 및 양자화 간격 조절 중 적어도 하나의 방법을 비디오 데이터 크기를 조절하기 위한 방법으로 결정하는 것을 특징으로 하는 분산 비디오 부호화 방법.
  8. 삭제
  9. 입력된 제1 프레임을 부호화하는 제1 프레임 부호화부;
    전송 채널의 패킷 손실율(PLR)을 획득하고 획득한 상기 패킷 손실율에 기초하여 채널 부호화율을 결정하는 채널 모니터부;
    제공된 상기 패킷 손실율에 기초하여 움직임 예측 수행 단계수를 결정하고, 결정된 상기 움직임 예측 수행 단계수에 따라 움직임 예측을 수행하여 보조 정보를 생성하는 움직임 예측부; 및
    생성된 상기 보조 정보를 부호화하여 패리티 비트를 생성하고 결정된 상기 채널 부호화율에 상응하여 채널 부호화를 수행하는 제2 프레임 부호화부를 포함하는 분산 비디오 부호화 장치.
  10. 제9항에 있어서, 상기 채널 모니터부는
    상기 패킷 손실율의 두 배를 FEC(Forward Error Correction)율로 결정하는 것을 특징으로 하는 분산 비디오 부호화 장치.
  11. 제9항에 있어서, 상기 제2 프레임 부호화부는
    생성된 상기 보조 정보를 변환하고 양자화하는 변환 및 양자화부;
    변환 및 양자화된 데이터를 채널 부호화하여 패리티 비트를 생성하는 제1 채널 부호화부; 및
    상기 채널 부호화율에 따라 제1 채널 부호화부로부터 제공된 데이터에 대해 채널 손실을 보상하기 위한 채널 부호화를 수행하는 제2 채널 부호화부를 포함하는 것을 특징으로 하는 분산 비디오 부호화 장치.
  12. 삭제
  13. 입력된 제1 프레임을 부호화하는 제1 프레임 부호화부;
    전송 채널의 패킷 손실율 및 가용 비트율에 기초하여 채널 부호화율 및 전송할 비디오 데이터 크기를 결정하고, 결정된 상기 전송할 비디오 데이터의 크기에 기초하여 비디오 데이터 크기를 조절하기 위한 제어 신호를 제공하는 제어부;
    상기 제어부로부터 제어 신호가 제공되는 경우 움직임 예측을 수행하여 보조 정보를 생성하는 움직임 예측부; 및
    생성된 상기 보조 정보를 부호화하여 패리티 비트를 생성하고 결정된 상기 채널 부호화율에 상응하여 채널 부호화를 수행하는 제2 프레임 부호화부를 포함하는 분산 비디오 부호화 장치.
  14. 제13항에 있어서, 상기 제어부는
    상기 결정된 전송할 비디오 데이터의 크기에 기초하여 움직임 예측 수행 단계수 및 양자화 간격 조절 중 적어도 하나를 비디오 데이터 크기를 조절하기 위한 방법으로 결정하고, 결정된 비디오 데이터 크기를 조절하기 위한 방법에 상응하는 제어 신호를 제공하는 것을 특징으로 하는 분산 비디오 부호화 장치.
  15. 삭제
  16. 제14항에 있어서, 상기 제2 프레임 부호화부는
    생성된 상기 보조 정보를 변환 및 양자화하는 변환 및 양자화부;
    변환 및 양자화된 데이터를 채널 부호화하여 패리티 비트를 생성하는 제1 채널 부호화부; 및
    상기 채널 부호화율에 따라 제1 채널 부호화부로부터 제공된 데이터에 대해 채널 손실을 보상하기 위한 채널 부호화를 수행하는 제2 채널 부호화부를 포함하는 것을 특징으로 하는 분산 비디오 부호화 장치.
  17. 제16항에 있어서, 상기 변환 및 양자화부는
    양자화 간격 정보가 상기 제어부로부터 제공되는 경우에는 제공된 양자화 간격 정보에 상응하여 양자화를 수행하는 것을 특징으로 하는 분산 비디오 부호화 장치.
KR1020100026598A 2010-01-11 2010-03-25 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치 KR101103974B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020100026598A KR101103974B1 (ko) 2010-03-25 2010-03-25 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치
PCT/KR2011/000194 WO2011084037A2 (ko) 2010-01-11 2011-01-11 분산 비디오 부호화/복호화 방법, 분산 비디오 부호화/복호화 장치 및 변환 부호화 장치
US13/521,552 US9210436B2 (en) 2010-01-11 2011-01-11 Distributed video coding/decoding method, distributed video coding/decoding apparatus, and transcoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100026598A KR101103974B1 (ko) 2010-03-25 2010-03-25 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치

Publications (2)

Publication Number Publication Date
KR20110107478A KR20110107478A (ko) 2011-10-04
KR101103974B1 true KR101103974B1 (ko) 2012-01-06

Family

ID=45025623

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100026598A KR101103974B1 (ko) 2010-01-11 2010-03-25 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치

Country Status (1)

Country Link
KR (1) KR101103974B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10700706B2 (en) 2017-09-22 2020-06-30 SK Hynix Inc. Memory system with decoders and method of operating such memory system and decoders

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101272846B1 (ko) * 2011-11-22 2013-06-10 성균관대학교산학협력단 저밀도 패리티 검사 부호를 이용한 분산 소스 부호화 및 복호화 방법, 그리고 분산 소스 부호화 및 복호화 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100023781A (ko) * 2008-08-21 2010-03-04 경희대학교 산학협력단 동영상 인코더와 동영상 디코더에서의 분산적 움직임 예측 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100023781A (ko) * 2008-08-21 2010-03-04 경희대학교 산학협력단 동영상 인코더와 동영상 디코더에서의 분산적 움직임 예측 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Chul Keun Kim et al.; "Distributed video coding encoder/decoder complexity sharing method by phase motion estimation algorithm" PacRim 2009. IEEE Pacific Rim Conference on; pages 849-853(2009.8.23-26)
Jurgen Slowacka et al.; "Flexible distribution of complexity by hybrid predictive-distributed video coding", Signal Processing: Image Communication Volume 25, Issue 2; Pages 94-110 (2010.02)
Zong-Yi Chen et al.; "Adaptive Lossy Error Protection Architecture in H.264 Video Transmission", ISCIT 2009. 9th International Symposium on; page(s): 775 - 778 (2009.9.28-30)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10700706B2 (en) 2017-09-22 2020-06-30 SK Hynix Inc. Memory system with decoders and method of operating such memory system and decoders

Also Published As

Publication number Publication date
KR20110107478A (ko) 2011-10-04

Similar Documents

Publication Publication Date Title
US6141448A (en) Low-complexity error-resilient coder using a block-based standard
US8718135B2 (en) Method and system for transcoding based robust streaming of compressed video
US20060188025A1 (en) Error concealment
US7106907B2 (en) Adaptive error-resilient video encoding using multiple description motion compensation
KR101511230B1 (ko) 적응 양자화를 이용한 분산 비디오 부호화/복호화 장치 및 그 방법
JP2000134619A (ja) エンコ―ド方法及びエンコ―ダ
JPWO2009157577A1 (ja) 画像処理装置及び画像処理方法
US20130003571A1 (en) Quality control apparatus, moving image transmission system, quality control method, and recording medium
JP2004112808A (ja) 微細単位伸縮型符号化/復号化装置及びその方法
Rane et al. Systematic lossy error protection of video signals
US20190230358A1 (en) Method and apparatus for encoding processing blocks of a frame of a sequence of video frames using skip scheme
KR101103974B1 (ko) 분산 비디오 부호화/복호화 방법 및 분산 비디오 부호화/복호화 장치
Slowack et al. Distributed video coding with feedback channel constraints
US8634467B2 (en) Flexible Wyner-Ziv video frame coding
Milani et al. Distributed video coding based on lossy syndromes generated in hybrid pixel/transform domain
US8576905B2 (en) Central decoding controller and controlling method thereof
KR101639434B1 (ko) 와이너-지브 부호화 및 복호화 시스템 및 방법
KR101772472B1 (ko) 적응적으로 프레임 압축 모드를 적용한 동영상 압축 장치 및 방법, 그리고, 동영상 복원 장치 및 방법
KR101703133B1 (ko) 실시간 소스-채널 복합부호화 방법 및 그 장치
Pereira Distributed video coding: Basics, main solutions and trends
US20040258163A1 (en) Video communication system and video coding method
KR101072626B1 (ko) 비트율 제어 방법과 장치 및 이를 이용한 분산 비디오 코딩 방법과 장치
KR100926826B1 (ko) 비디오 비트열의 전송 오류에 대비하기 위한 변환부호장치 및 방법
KR101059318B1 (ko) 분산 비디오 부호화/복호화 방법, 분산 비디오 부호화/복호화 장치 및 변환 부호화 장치
Milani et al. Multiple description distributed video coding using redundant slices and lossy syndromes

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
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee