$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

소프트웨어 기반 실시간 HEVC 인코더 구현을 위한 병렬화 기법에 관한 연구
Study of Parallelization Methods for Software based Real-time HEVC Encoder Implementation 원문보기

방송공학회논문지 = Journal of broadcast engineering, v.18 no.6, 2013년, pp.835 - 849  

안용주 (광운대학교 컴퓨터공학과) ,  황태진 (광운대학교 컴퓨터공학과) ,  이동규 (광운대학교 전자공학과) ,  김상민 (광운대학교 전자공학과) ,  오승준 (광운대학교 전자공학과) ,  심동규 (광운대학교 컴퓨터공학과)

초록
AI-Helper 아이콘AI-Helper

ISO/IEC MPEG과 ITU-T VCEG이 공동으로 구성한 JCT-VC (Joint Collaborative Team on Video Coding)가 표준화를 진행한 HEVC (High Efficiency Video Coding)는 H.264/AVC 대비 약 2배 혹은 그 이상의 압축효율을 목표로 표준화가 시작되었다. 하지만, 계층적 구조를 갖는 가변크기 블록의 사용과 재귀적 부호화 구조에 따른 인코더의 복잡도 증가는 개선해야 할 문제점으로 지적되고 있다. HEVC 인코더의 복잡도를 감소시키기 위하여 다양한 고속화 알고리즘들이 제안되고 있으나, 고속화 알고리즘으로 얻을 수 있는 속도 향상만으로 HEVC 인코더의 실시간성을 확보하기에는 어려움이 있다. 본 논문에서는 현재 표준화가 완료된 HEVC 인코더의 실시간 구현을 위하여 SIMD 명령어를 이용한 데이터 수준 병렬화 기법, CPU 및 GPU를 이용한 멀티스레딩 기법과 같은 다양한 병렬화 기법을 소개한다. 또한, 이러한 병렬화 기법들을 HEVC 인코더에 적용하기 위해 적합한 연산 및 기능 모듈에 대하여 소개한다. 본 연구에서 제안한 방법을 HM (HEVC reference model) 10.0에 적용한 결과 $832{\times}480$ 영상의 경우 20~30fps의 부호화 속도를 나타냈으며, $1920{\times}1080$ 영상의 경우 5~10fps의 부호화 속도를 나타내었다.

Abstract AI-Helper 아이콘AI-Helper

Joint Collaborative Team on Video Coding (JCT-VC), which have founded ISO/IEC MPEG and ITU-T VCEG, has standardized High Efficiency Video Coding (HEVC). Standardization of HEVC has started with purpose of twice or more coding performance compared to H.264/AVC. However, flexible and hierarchical codi...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 하지만, 고속화 알고리즘으로 얻을 수 있는 속도 향상만으로는 HEVC 인코더의 실시간성 확보에 어려움이 있다. 본 논문에서는 HEVC 인코더의 높은 복잡도를 감소시키고, 실시간성 확보를 위하여 SIMD (single instruction multiple data) 명령어를 이용한 데이터 수준의 병렬화 (DLP: data level parallelism) 기법, CPU 및 GPU를 이용한 멀티스레딩 (multi threading) 기법과 같은 다양한 병렬화 기법을 소개하고, 이를 적용하기 적합한 연산 및 모듈에 대하여 소개한다.
  • 본 논문에서는 소개한 SIMD 명령어를 사용한 다양한 연산 및 기능 모듈에 대한 DLP와 CPU 및 GPU 멀티스레딩 기법을 적용한 병렬처리를 통하여 HEVC 인코더의 부호화 속도를 향상시켰다. 연산 및 기능 모듈 관점에서는 SIMD 명령어를 사용하여 cost 함수, 변환 및 역-변환, 보간 필터에 DLP를 적용하였다.
  • 본 논문에서는 소프트웨어 기반 실시간 HEVC 인코더 구현을 위하여 다양한 병렬화 기법에 대하여 소개하고, 이를 적용하기 용이한 연산 및 기능 모듈을 소개하였다. 서로 다른 데이터에 대한 동일한 연산을 반복적으로 수행하는 cost 함수, 변환 및 역-변환, 보간 필터에 SIMD 명령어를 적용하여 DLP를 수행하였다.
  • SIMD 명령어를 이용한 데이터 수준 병렬화 기법을 적용하기 적합한 HEVC 인코더의 단일 연산 혹은 기능 모듈을 살펴보면, 율-왜곡 값을 계산하기 위한 cost 함수, 변환 (transform) 및 역-변환 (inverse-transform), 움직임 정밀도를 높이기 위한 화소 보간 필터 (interpolation filter)를 꼽을 수 있다. 본 장에서는 전술한 연산 및 기능 모듈에 SIMD를 적용하기 적합한 이유를 살펴보고 적용 방법에 대하여 살펴보도록 한다.
  • HEVC의 DCT-IF는 tap 계수와 함께 산술 연산 및 메모리 참조가 증가하여 HEVC 인코더 복잡도 또한 크게 증가하였다[10]. 하지만, 전술한 보간 필터와 같은 필터 연산의 경우 SIMD 명령어를 사용하여 DLP를 적용하기 적합한 구조이며, 본 논문에서는 보간 필터의 연산 복잡도를 낮추기 위하여 다음과 같은 과정을 수행하였다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
SAD란 무엇인가? 먼저, SAD는 블록의 크기에 따라 원본 영상 블록과 예측영상 블록간의 차에 대한 절댓값의 합을 구하는 함수이다. 8비트 입력 데이터의 경우, 16개의 데이터에 대해 2개의 레지스터를 사용하여 16개 데이터에 대한 SAD를 한 번에 구할 수 있는 정수형 128비트 산술 연산 PSADBW 명령어를 사용하였다.
SIMD 명령어을 적용한 보간 필터의 경우 어떤 결과가 나타나는가? SIMD 명령어를 적용한 연산별로 속도 향상을 살펴보면, SAD, SATD, SSE의 cost 함수의 경우 평균 4배의 연산 속도 향상을 나타내었으며, 변환 및 역-변환의 경우 partial butterfly 방식 대비 평균 3~4배의 연산 속도 향상을 나타내었다. 또한, 보간 필터의 경우 평균 4배의 연산 속도 향상을 나타내었다.
2013년 1월을 기준으로 HEVC MP에 포함된 병렬화 기술은 무엇인가? HEVC는 표준화의 시작 단계에서부터 병렬화 기술에 대한 고려가 이루어졌으며, 표준화 과정에서 다양한 병렬화 기술들이 제안되었다. HEVC version 1의 표준화 완료시점인 2013년 1월을 기준으로 HEVC MP (main profile)에 포함된 병렬화 기술은 타일과 WPP (wave-front parallel processing) 두 가지 기술이다. 여기에 덧붙여 비디오 코덱의 병렬처리에 널리 사용되고 있는 전송을 위한 분할 단위인 슬라이스를 병렬처리 관점에서 생각할 경우, HEVC에 적용 가능한 병렬화 도구들로 크게 슬라이스, 타일, WPP를 꼽을 수 있다.
질의응답 정보가 도움이 되었나요?

참고문헌 (17)

  1. G. J. Sulivan, J.-R. Ohm, "Recent developments in standardization of high efficiency video coding (HEVC)," SPIE Application of Digital Image Proc. XXXIII, vol. 7798, pp. 7798-30, Aug. 2010. 

  2. JCT-VC, "Report of subjective test results of responses to the joint call for proposals (CfP) on Video coding technology for high efficiency video coding (HEVC)," Document JCTVC-A204, Dresden, DE, Apr. 2010. 

  3. R. H. Gweon, Y.-L. Lee, J. Lim, "Early termination of CU encoding to reduce HEVC complexity," ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC) document JCTVC-F045, Jul. 2011. 

  4. K. Choi, E. S. Jang, "Coding tree pruning based CU early termination," ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC) document JCTVC-F092, Jul. 2011. 

  5. J. Wang, J. Kim, K. won, H. Lee, B. Jeon, "Early skip detection for HEVC," ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC) document JCTVC-G543, Jul. 2011. 

  6. L. Yan, Y. Duan, J. Sun and Z. Guo, "Implementation of HEVC decoder on x86 processor with SIMD optimiation," CVIP, pp. 1-6, Nov. 2012. 

  7. K. Chen, Y. Duan, L. Yan, J. Sun, and Z. Guo, "Efficient SIMD optimization of HEVC encoder over x86 processor," APSIPA ASC 2012 Asia-pacific, pp. 1-4, Dec. 2012. 

  8. M. Alvarez-Mesa, C. C. chi, V. George, T. Schierl, and B. Juurlink, "Parallel video decoding in the emerging HEVC standard," Proceedings of International Conference on Acoustics, Speech, and Signal Processing (ICASSP 2012), Kyoto, Japan, March 2012. 

  9. Y. J. Ahn, T. J. Hwang, S. E. Yoo, W. -J. Han, and D. G. Sim, "Statistical characteristics and complexity analysis of HEVC encoder software," Journal of Broadcasting & Electronic Media, vol. 17, no. 6, pp. 1091-1105, Nov. 2012. 

  10. Y. J. Ahn, W. J. Han, and D. G. Sim, "Study of decoder complexity for HEVC and AVC standards based on tool-by-tool comparision," SPIE Applications of Digital Image Proc. XXXV, vol. 8499, pp. 8499-32, Aug. 2012. 

  11. NVIDIA, "CUDA C programming guide," document PG-02829-001_v5.0, Oct. 2012. 

  12. W.-N. Chen and H.-M. Hang, "H.264/AVC motion estimation implementation on compute unified device architecture (CUDA)," IEEE International Conference on Multimedia and Expo 2008 (ICME'08), pp. 697-700, April 2008. 

  13. N.-M. Cheung, X. Fan, O. C. Au, and M.-C. Kung, "Video coding on multi-core graphics processors," in Proc. IEEE Siganl Process. Mag., 2010, pp. 78-89 

  14. Z. Jing, J. Liangbao, and C. Xuehong, "Implementation of parallel full search algorithm for motion estimation on multi-core processors." The 2nd International Conference on Next Generation Information Technology (ICNIT), pp. 31-35, June 2011. 

  15. D.-K. Lee and S.-J. Oh, "Variable block size motion estimation implementation on compute unified device architecture (CUDA)," IEEE International Conference on Consumer Electronics, pp. 635-636, Jan. 2013. 

  16. S. Kim, D. Lee, Y. Ahn, T.-J. Hwang, D. Sim, and S.-J. Oh, "DCT-based interpolation filter for HEVC on Graphics processing units," International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC), pp. 155-158, July 2013. 

  17. F. Bossen, "Common test conditions and software reference configuration," ITU-T/ISO/IEC Joint Collaborative Team on Video Coding (JCT-VC) document JCTVC-G1200, Nov. 2011. 

저자의 다른 논문 :

LOADING...

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

유발과제정보 저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로