KR20150058782A - 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치 - Google Patents

비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20150058782A
KR20150058782A KR1020130141962A KR20130141962A KR20150058782A KR 20150058782 A KR20150058782 A KR 20150058782A KR 1020130141962 A KR1020130141962 A KR 1020130141962A KR 20130141962 A KR20130141962 A KR 20130141962A KR 20150058782 A KR20150058782 A KR 20150058782A
Authority
KR
South Korea
Prior art keywords
decoding
image
unit
encoding
parallel processing
Prior art date
Application number
KR1020130141962A
Other languages
English (en)
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 KR1020130141962A priority Critical patent/KR20150058782A/ko
Publication of KR20150058782A publication Critical patent/KR20150058782A/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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/439Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using cascaded computational arrangements for performing a single operation, e.g. filtering

Landscapes

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

Abstract

영상 복호화 장치의 병렬 처리를 위한 방법이 개시된다. 상기 영상 복호화 장치의 병렬 처리를 위한 방법은 상기 영상 복호화 장치에서 수행되는 복호화 과정을 상기 복호화 과정에서 소요되는 시간을 고려하여 복수의 복호화 작업 단위로 분할하는 단계 및 상기 영상 복호화 장치의 가용한 프로세서를 고려하여, 상기 복수의 복호화 작업 단위를 상기 가용한 프로세서 각각에 할당하여 병렬로 처리하는 단계를 포함한다.

Description

비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치{METHOD AND APPARATUS FOR PARALLEL PROCESSING VIDEO DECODER}
본 발명은 영상 처리에 관한 것으로, 보다 상세하게는 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 해상도를 가지는 방송 서비스가 국내뿐만 아니라 세계적으로 확대되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있으며 이에 따라 많은 기관들이 차세대 영상기기에 대한 개발에 박차를 가하고 있다. 또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상에 대한 압축기술이 요구되고 있다.
영상 압축을 위해, 시간적으로 이전 및/또는 이후의 픽처로부터 현재 픽처에 포함된 픽셀값을 예측하는 인터(inter) 예측 기술, 현재 픽처 내의 픽셀 정보를 이용하여 현재 픽처에 포함된 픽셀값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 부호화 기술 등이 사용될 수 있다.
본 발명은 부호화/복호화 효율을 향상시킬 수 있는 영상 부호화/복호화 방법 및 장치를 제공한다.
본 발명은 고속으로 영상을 복호화할 수 있도록 복호화기의 병렬 처리를 위한 방법 및 장치를 제공한다.
본 발명의 일 양태에 따르면, 영상 복호화 장치의 병렬 처리를 위한 방법이 제공된다. 상기 영상 복호화 장치의 병렬 처리를 위한 방법은, 상기 영상 복호화 장치에서 수행되는 복호화 과정을 상기 복호화 과정에서 소요되는 시간을 고려하여 복수의 복호화 작업 단위로 분할하는 단계 및 상기 영상 복호화 장치의 가용한 프로세서를 고려하여, 상기 복수의 복호화 작업 단위를 상기 가용한 프로세서 각각에 할당하여 병렬로 처리하는 단계를 포함한다.
상기 복호화 과정은, 입력된 부호화된 비트스트림으로부터 부호화 코드 정보를 파싱하는 파싱 과정, 상기 파싱된 부호화 코드 정보를 이용하여 영상을 복원하는 영상 복원 과정 및 상기 복원된 영상을 필터링하는 필터링 과정을 포함할 수 있다.
본 발명은 복호화기의 수행 과정을 수행 시간에 따라 다수의 작업으로 분할하고, 분할한 작업들을 병렬로 처리하여 비디오 복호화 속도를 향상시킬 수 있다. 또한, 가용 프로세서가 제한된 환경에서 비디오 복호화기의 병렬 처리를 효율적으로 할 수 있다.
기존 비디오 복호화기의 병렬 처리 기법들은 엔트로피 디코딩 및 영상 복원을 동시에 병렬로 처리하는 방법을 사용하기 때문에, 병렬 처리 프로세서 간 잦은 통신으로 인해 오버헤드가 발생하여 병렬 처리의 효율성이 낮아지는 단점이 있다. 반면, 본 발명에 따른 비디오 복호화기의 병렬 프로세싱 방법을 사용하면 프로세서 간 통신을 줄이고 기다리는 시간을 줄여 병렬 프로세싱의 동시성을 높일 수 있다. 따라서, 비디오 복호화기의 전체 작업 수행 속도를 향상시킬 수 있다. 또한, 가용 프로세서가 제한된 환경에서 효과적으로 주어진 프로세서를 이용할 수 있어서, 복호화기를 병렬 처리할 수 있다.
도 1은 본 발명이 적용될 수 있는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 2는 본 발명이 적용될 수 있는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 3은 영상 복호화 과정의 처리 순서를 개략적으로 나타내는 도면이다.
도 4 및 도 5는 본 발명의 실시예에 따라서 영상 복호화 장치의 효율적인 병렬 처리를 위한 복호화 수행 작업 단위를 분할한 것을 나타내는 예이다.
도 6은 본 발명의 실시예에 따라서 복수의 복호화 수행 작업 단위를 복호화기에서 병렬 처리하는 방법의 일 예를 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 장치의 병렬 처리를 위한 방법을 개략적으로 나타내는 순서도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 해당 설명을 생략할 수도 있다.
본 명세서에서 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있는 것을 의미할 수도 있고, 중간에 다른 구성 요소가 존재하는 것을 의미할 수도 있다. 아울러, 본 명세서에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성들을 설명하는데 사용될 수 있지만, 상기 구성들은 상기 용어에 의해 한정되지 않는다. 상기 용어들은 하나의 구성을 다른 구성으로부터 구별하는 목적으로 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성은 제2 구성으로 명명될 수 있고, 유사하게 제2 구성도 제1 구성으로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 하나의 구성부를 이루거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 본 발명이 적용될 수 있는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 도 1의 영상 부호화 장치는 HEVC(High Efficiency Video Coding) 부호화 기술이 적용된 구조일 수 있으며, 기존의 AVC/H.264 비디오 부호화 기술과 구조적으로 동일할 수도 있다.
도 1을 참조하면, 영상 부호화 장치(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조 영상 버퍼(190)를 포함한다.
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림을 출력할 수 있다. 인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환될 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화할 수 있다. 이때, 입력 영상은 원 영상(original picture)를 의미할 수 있다.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화/복호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 모드인 경우, 움직임 예측부(111)는, 움직임 예측 과정에서 참조 픽처 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록과 가장 매치가 잘 되는 영역을 찾아 움직임 벡터를 구할 수 있다. 움직임 보상부(112)는 움직임 벡터를 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다. 여기서, 움직임 벡터는 인터 예측에 사용되는 2차원 벡터이며, 현재 부호화/복호화 대상 영상과 참조 영상 사이의 오프셋을 나타낼 수 있다.
감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔차 블록(residual block)을 생성할 수 있다.
변환부(130)는 잔차 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 그리고 양자화부(140)는 입력된 변환 계수를 양자화 파라미터(quantization parameter, 또는 양자화 매개변수)에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 기초로 엔트로피 부호화를 수행하여 비트스트림(bit stream)을 출력할 수 있다. 엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼(symbol)에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다. 엔트로피 부호화부(150)는 엔트로피 부호화를 위해 지수-골롬(Exponential-Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법을 사용할 수 있다.
도 1의 실시예에 따른 영상 부호화 장치(100)는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환된다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성된다.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(180)는 적응적 인루프(in-loop) 필터로 불릴 수도 있다. 디블록킹 필터는 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. SAO는 코딩 에러를 보상하기 위해 픽셀값에 적정 오프셋(offset) 값을 더해줄 수 있다. ALF는 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 필터부(180)를 거친 복원 블록은 참조 픽처 버퍼(190)에 저장될 수 있다.
도 2는 본 발명이 적용될 수 있는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. 도 2의 영상 복호화 장치는 HEVC 복호화 기술이 적용된 구조일 수 있으며, 기존의 AVC/H.264 비디오 복호화 기술과 구조적으로 동일할 수도 있다.
도 2를 참조하면, 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 가산기(255), 필터부(260) 및 참조 픽처 버퍼(270)를 포함한다.
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다.
영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔차 블록(reconstructed residual block)을 얻고 예측 블록을 생성한 후 복원된 잔차 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.
엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient) 형태의 심볼을 포함한 심볼들을 생성할 수 있다.
엔트로피 복호화 방법이 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 각 심볼들에 대한 비트열의 크기가 감소될 수 있다.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔차 블록이 생성될 수 있다.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 복호화된 블록의 픽셀값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 픽처 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
잔차 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거칠 수 있다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 복원 영상은 참조 픽처 버퍼(270)에 저장되어 인터 예측에 사용될 수 있다.
상술한 도 2의 영상 복호화기는 부호화된 비트스트림을 수신하고, 수신한 비트스트림으로부터 부호화 정보들을 파싱하는 과정과 파싱된 부호화 정보들을 이용하여 영상을 복원하는 과정으로 크게 나눌 수 있다. 도 2에 도시된 영상 복호화기에 따르면, 파싱 과정은 엔트로피 복호화부에서 주로 수행될 수 있다. 부호화된 비트스트림이 엔트로피 복호화부를 거치고 나면 상기 비트스트림(영상)에 대한 부호화된 정보들을 알 수 있다. 복호화 과정은 부호화 과정의 역과정이므로, 부호화 정보를 알아내면 부호화 과정의 역순으로 영상을 복원할 수 있다.
도 3은 영상 복호화 과정의 처리 순서를 개략적으로 나타내는 도면이다.
도 3을 참조하면, 부호화된 비트스트림을 입력으로 받아 VPS(Video Parameter Set), SPS(Sequence Parameter Set), PPS(Picture Parameter Set) 및 슬라이스 헤더(Slice header)를 복호화하고, SAO 파라미터들을 복호화할 수 있다. 그리고, 각 부호화 단위(CU: Coding Unit) 블록에 해당하는 부호화 코드들을 복호화할 수 있다. 이러한 일련의 과정을 파싱(parsing) 과정이라고 한다.
이때, 부호화 코드들이 부호화 시 엔트로피 인코딩을 사용하여 부호화된 경우, 복호화 시 파싱 단계에서 엔트로피 디코딩을 사용하여야 한다. 엔트로피 코딩(인코딩/디코딩)은 입력 신호들의 통계를 바탕으로 코딩을 하기 때문에, 디코딩(복호화)은 인코딩(부호화)한 순서를 그대로 따라야 한다. 대개 파싱 과정은 엔트로피 코딩을 이용하기 때문에 부호화 과정에서 병렬로 엔트로피 인코딩을 하지 않았으면 복호화 과정에서도 병렬로 엔트로피 디코딩하여 파싱하기가 불가능하다.
상술한 파싱 단계를 거친 후에는 파싱을 통해 획득한 정보들(예컨대, 부호화 코드)을 이용하여 영상을 복원하는 과정을 수행할 수 있다. 이때, 영상을 복원하는 과정에서는 서로 의존성이 존재하지 않도록 병렬 처리가 가능하다.
영상을 복원한 후에는 복원 영상에 대해 디블록킹 필터와 SAO 필터를 적용할 수 있다. 이러한 필터링 과정은 일종의 사후 처리 과정으로, 복원 영상에 필터링을 수행함으로써 재현할 영상을 완성할 수 있다.
도 3에서 상술한 바와 같은 파싱 과정, 영상의 복원 과정 및 필터링 과정 등으로 이루어진 일련의 복호화 과정에서 복호화를 수행하는데 소요되는 연산 시간을 보면, 엔트로피 디코딩을 거쳐 부호화 블록의 부호화 코드를 복호화하는 과정(파싱 과정)과 영상을 복원하는 과정에서 주로 많은 연산 시간이 소요된다. 따라서, 복호화 장치에서 일련의 복호화 과정을 각 과정 별로 순서대로 처리하게 되면 많은 시간이 걸리게 되며, 복호화 효율이 떨어지게 된다.
그러므로, 일련의 복호화 과정에서 각 복호화 과정 별로 소요되는 연산 시간을 고려하여, 일련의 복호화 과정을 다수의 작업 단위로 나누어 병렬로 처리하면 복호화 장치의 복호화 수행 속도를 높일 수 있다. 이하, 본 발명에서는 복호화 장치의 고속 복호화를 위해, 일련의 복호화 과정을 다수의 복호화 작업 단위로 나누어 병렬로 처리할 수 있는 방법을 제안한다.
도 4 및 도 5는 본 발명의 실시예에 따라서 영상 복호화 장치의 효율적인 병렬 처리를 위한 복호화 수행 작업 단위를 분할한 것을 나타내는 예이다.
영상 복호화 장치의 효율적인 병렬 처리를 위해서, 파싱 과정, 영상 복원 과정 및 필터링 과정으로 이루어지는 일련의 복호화 과정을 도 4 및 도 5에 도시된 바와 같이 3개의 작업(task) 단위로 분리할 수 있다. 이때, 일련의 복호화 과정은 복호화 장치에서 수행되는 각 복호화 과정의 연산 시간을 고려하여 작업 단위를 분리할 수 있다. 또는, 일련의 복호화 과정은 복호화기의 가용한 프로세서(processor) 혹은 쓰레드(thread) 수에 따라서 작업 단위를 분리할 수도 있다.
예컨대, 입력된 부호화된 비트스트림으로부터 부호화 코드 정보를 파싱하는 파싱 과정을 작업1(task1)로 설정하고, 파싱된 부호화 코드 정보를 이용하여 영상을 복원하는 영상 복원 과정을 작업2(task2)로 설정하고, 복원된 영상을 필터링하는 필터링 과정을 작업3(task3)으로 설정할 수 있다.
이때, 각 작업 단위는 복호화기의 가용한 프로세서 혹은 쓰레드 수에 따라 각 프로세서 혹은 각 쓰레드에 할당되어 병렬로 처리될 수 있다.
가용 프로세서 혹은 쓰레드 수가 많은 경우, 복호화기는 도 5의 예에서와 같이 복호화 수행 작업 단위를 분할하여 병렬 처리를 수행할 수 있다.
또는, 일련의 복호화 과정 중 가장 많은 시간이 소요되는 영상 복원 과정을 단독 작업으로 지정하여 처리할 수도 있다.
도 6은 본 발명의 실시예에 따라서 복수의 복호화 수행 작업 단위를 복호화기에서 병렬 처리하는 방법의 일 예를 설명하기 위한 도면이다.
도 6에서는 설명의 편의를 위해 영상 복호화 장치가 2개의 쓰레드를 이용하여 병렬 처리하는 실시예를 도시하였다. 도 6에서, 작업1은 입력된 부호화된 비트스트림으로부터 부호화 코드 정보를 파싱하는 파싱 과정일 수 있고, 작업2는 파싱된 부호화 코드 정보를 이용하여 영상을 복원하는 영상 복원 과정일 수 있고, 작업3은 복원된 영상을 필터링하는 필터링 과정일 수 있다.
예를 들어, 복호화 장치에 N번째 프레임(프레임N)이 입력되면, 복호화 장치의 제1 쓰레드(쓰레드1)에 N번째 프레임의 작업1(N번째 프레임에 대한 파싱 과정)이 할당될 수 있다. 제1 쓰레드는 N번째 프레임의 작업1을 처리하고, 이어서 N번째 프레임의 작업2(N번째 프레임에 대한 영상 복원 과정)을 처리할 수 있다. 그리고, 복호화 장치의 제2 쓰레드(쓰레드2)는 N번째 프레임의 작업3(N번째 프레임에 대한 필터링 과정)과 N+1번째 프레임의 작업1을 병렬로 처리할 수 있다. 즉, 복호화 장치의 제1 쓰레드와 제2 쓰레드에서 복수의 작업 단위로 분할된 영상 복호화 과정을 병렬로 처리함으로써 복호화기의 처리율을 향상시킬 수 있다.
복호화기의 가용 쓰레드 수가 많을 경우, 도 5에 도시된 바와 같이 복호화 수행 작업 단위를 분리하여 병렬로 처리할 수 있으며, 보다 향상된 복호화기 속도를 구현할 수 있다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 장치의 병렬 처리를 위한 방법을 개략적으로 나타내는 순서도이다. 도 7의 방법은 상술한 도 2의 복호화 장치에서 수행될 수 있다.
도 7을 참조하면, 복호화 장치는 복호화 장치에서 수행되는 복호화 과정을 복수의 복호화 작업 단위로 분할한다(S700).
복호화 장치에서 수행되는 복호화 과정은, 입력된 부호화된 비트스트림으로부터 부호화 코드 정보를 파싱하는 파싱 과정, 파싱된 부호화 코드 정보를 이용하여 영상을 복원하는 영상 복원 과정, 복원된 영상을 필터링하는 필터링 과정을 포함할 수 있다.
이때, 복호화 장치는 각 복호화 과정을 수행하는데 소요되는 연산 시간을 고려하여 복수의 복호화 작업 단위로 분할할 수 있다. 또는, 복호화 장치는 복호화 장치의 가용한 프로세서 혹은 쓰레드 수를 고려하여 복호화 과정을 복수의 복호화 작업 단위로 분할할 수도 있다. 예를 들어, 상술한 도 4 및 도 5에서와 같이, 파싱 과정, 영상 복원 과정, 필터링 과정을 각각 하나의 복호화 작업 단위로 지정하여 복호화 과정을 분리할 수 있다.
복호화 장치는 가용한 프로세서 혹은 쓰레드의 수를 고려하여, 복수의 복호화 작업 단위를 가용한 프로세서 혹은 쓰레드 각각에 할당하여 병렬로 처리한다(S710).
예컨대, 도 6에서 상술한 바와 같이, 복호화 과정 중 가장 많은 시간이 소요되는 영상 복원 과정을 하나의 프로세서 혹은 쓰레드에 할당하여 처리하고, 이와 동시에 병렬로, 다른 프로세서 혹은 쓰레드에서 파싱 과정과 필터링 과정을 처리할 수 있다.
상술한 실시예들에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호범위는 특허청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (1)

  1. 영상 복호화 장치의 병렬 처리를 위한 방법에 있어서,
    상기 영상 복호화 장치에서 수행되는 복호화 과정을 상기 복호화 과정에서 소요되는 시간을 고려하여 복수의 복호화 작업 단위로 분할하는 단계; 및
    상기 영상 복호화 장치의 가용한 프로세서를 고려하여, 상기 복수의 복호화 작업 단위를 상기 가용한 프로세서 각각에 할당하여 병렬로 처리하는 단계를 포함하며,
    상기 복호화 과정은, 입력된 부호화된 비트스트림으로부터 부호화 코드 정보를 파싱하는 파싱 과정, 상기 파싱된 부호화 코드 정보를 이용하여 영상을 복원하는 영상 복원 과정 및 상기 복원된 영상을 필터링하는 필터링 과정을 포함하는 것을 특징으로 하는 방법.
KR1020130141962A 2013-11-21 2013-11-21 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치 KR20150058782A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130141962A KR20150058782A (ko) 2013-11-21 2013-11-21 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130141962A KR20150058782A (ko) 2013-11-21 2013-11-21 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20150058782A true KR20150058782A (ko) 2015-05-29

Family

ID=53392913

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130141962A KR20150058782A (ko) 2013-11-21 2013-11-21 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20150058782A (ko)

Similar Documents

Publication Publication Date Title
KR101867884B1 (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
KR101740389B1 (ko) 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
KR102063385B1 (ko) 차세대 비디오용 콘텐츠 적응적 엔트로피 코딩
RU2654129C2 (ru) Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений
EP3288266B1 (en) Flexible band offset mode in sample adaptive offset in hevc
KR102171380B1 (ko) 병렬 엔트로피 부호화/복호화 방법 및 장치
US20140092975A1 (en) Devices and methods for using base layer motion vector for enhancement layer motion vector prediction
US11039166B2 (en) Devices and methods for using base layer intra prediction mode for enhancement layer intra mode prediction
Zhu et al. A real-time H. 266/VVC software decoder
KR101718830B1 (ko) 부호화 모드에 따른 적응적 병렬처리가 적용된 고속 비디오 복호화 방법 및 장치
KR20150058782A (ko) 비디오 복호화기의 병렬 프로세싱을 위한 방법 및 장치
RU2804382C1 (ru) Способ и устройство для кодирования видео
KR20130107611A (ko) 상향식 예측 모드 방법을 사용한 영상 부복호화 방법 및 이러한 방법을 사용하는 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application