KR20130101900A - 전자 장치 및 인코딩 방법 - Google Patents

전자 장치 및 인코딩 방법 Download PDF

Info

Publication number
KR20130101900A
KR20130101900A KR1020120023007A KR20120023007A KR20130101900A KR 20130101900 A KR20130101900 A KR 20130101900A KR 1020120023007 A KR1020120023007 A KR 1020120023007A KR 20120023007 A KR20120023007 A KR 20120023007A KR 20130101900 A KR20130101900 A KR 20130101900A
Authority
KR
South Korea
Prior art keywords
group
image
codec unit
images
codec
Prior art date
Application number
KR1020120023007A
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 KR1020120023007A priority Critical patent/KR20130101900A/ko
Priority to US13/760,873 priority patent/US20130235924A1/en
Publication of KR20130101900A publication Critical patent/KR20130101900A/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
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • H04N1/417Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/423Methods 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 characterised by memory arrangements

Landscapes

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

Abstract

전자 장치가 개시된다. 본 전자 장치는, 복수의 이미지를 연속적으로 입력받고, 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리하는 입력부, 및, 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라(intra) 인코딩하고, 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 인트라 인코딩된 이미지를 이용하여 순차적으로 인터(inter) 인코딩하는 복수의 코덱부를 포함한다.

Description

전자 장치 및 인코딩 방법{ELECTRONIC APPARATUS AND METHOD FOR ENCODING}
본 발명은 전자 장치 및 인코딩 방법에 관한 것으로, 고속으로 동영상을 인코딩할 수 있는 전자 장치 및 인코딩 방법에 관한 것이다.
일반적으로, 동영상 데이터는 매우 큰 데이터량을 갖는다. 하지만, 동영상을 구성하는 각 비디오 프레임 사이의 상관관계를 이용하면, 동영상의 화질을 크게 저하하지 않으면서 동영상을 압축시킬 수 있다. 동영상의 압축방식으로는 화상회의 용도의 H.263, VCD 화질의 MPEG-1, DVD급 화질의 MPEG-2 등이 있으며, 최근에는MPEG-4와 H.264가 빠르게 적용되고 있다.
이중 H.264 비디오 코덱의 경우를 보면, 독립적으로 처리할 수 있는 IDR 프레임과 이전 프레임들을 참조하여 인코딩할 수 있는 P 프레임 및 앞/뒤 양쪽 프레임 모두를 참조하여 인코딩할 수 있는 B 프레임으로 구성되어 있다.
이와 같이 종래의 비디오 코덱은 이전의 영상의 결과물을 반드시 저장해 두어야만 다음 프레임에서 이를 참조하여 인코딩을 계속 수행할 수 있다는 점에서, 인코딩을 수행하기 위한 시스템은 높은 리소스가 요구되었다.
더욱이, 최근의 비디오 이미지의 크기가 대형화(예를 들어, Full HD, UHD) 됨에 따라서, 하드웨어로 구성된 비디오 코덱의 경우 리콘 이미지를 내부의 로컬 버퍼에 저장하지 못하고 시스템의 메인 메모리(예를 들어, DDR memory)에 저장하고 있다.
그러나 동영상 압축을 위해서 시스템에서 사용할 수 있는 메모리 대역폭(memory bandwidth)(구체적으로, DDR 메모리에 1초당 읽고 쓸 수 있는 데이터의 총량에 해당)은 한계가 있으며, 하나의 인터 프레임을 처리하기 위해서 하나의 이미지를 참조하더라도 2번의 프레임 읽기와 1번의 프레임 쓰기가 필요하다는 문제점이 있었다.
따라서, 본 발명은 상술한 바와 같은 문제점을 해결하기 위하여, 고속으로 동영상을 인코딩할 수 있는 전자 장치 및 인코딩 방법을 제공하는 데 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 전자 장치는, 복수의 이미지를 연속적으로 입력받고, 상기 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리하는 입력부, 및, 상기 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라(intra) 인코딩하고, 상기 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 상기 인트라 인코딩된 이미지를 이용하여 순차적으로 인터(inter) 인코딩하는 복수의 코덱부를 포함한다.
이 경우, 상기 입력부는, 상기 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹 및 제2 그룹으로 분리하고, 상기 복수의 코덱부는, 상기 제1 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 제1 코덱부, 및, 상기 제2 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩하는 제2 코덱부를 포함할 수 있다.
이 경우, 상기 제1 코덱부는, 상기 인코딩된 제1 그룹의 이미지를 디코딩하여 제1 그룹의 리콘(recon) 이미지를 생성하고, 상기 제2 코덱부는, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
이 경우, 상기 제1 코덱부는, 상기 생성된 제1 그룹의 리콘 이미지를 직접 상기 제2 코덱부에 전달할 수 있다.
한편, 상기 제2 코덱부는, 상기 제1 코덱부에서 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성하고, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 입력부는, 상기 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹, 제2 그룹 및 제3 그룹으로 분리하고, 상기 복수의 코덱부는, 상기 제1 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 제1 코덱부, 상기 제2 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩하는 제2 코덱부, 및, 상기 제3 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 인코딩된 제1 그룹의 이미지 및 상기 제2 코덱부에서 인코딩된 제2 그룹의 이미지 중 적어도 하나의 인코딩된 이미지를 이용하여 인터 인코딩하는 제3 코덱부를 포함할 수 있다.
이 경우, 상기 제1 코덱부는, 상기 제1 그룹의 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성할 수 있다.
이 경우, 상기 제2 코덱부는, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 제3 코덱부는, 상기 제3 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 제2 코덱부는, 상기 제2 그룹의 인코딩된 이미지를 디코딩하여 제2 그룹의 리콘 이미지를 생성할 수 있다.
이 경우, 상기 제3 코덱부는, 상기 제3 그룹의 이미지를 상기 생성된 제2 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 제1 코덱부는, 상기 생성된 제1 그룹의 리콘 이미지를 직접 상기 제2 코덱부 및 상기 제3 코덱부 중 적어도 하나에 전달할 수 있다.
한편, 상기 제2 코덱부는, 상기 제1 코덱부에서 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성하고, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 제3 코덱부는, 상기 제1 코덱부에서 인코딩된 제1 그룹의 이미지 및 상기 제2 코덱부에서 인코딩된 제2 그룹의 이미지 중 적어도 하나의 인코딩된 이미지를 디코딩하여 적어도 하나의 리콘 이미지를 생성하고, 상기 제3 그룹의 이미지를 상기 생성된 적어도 하나의 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 복수의 코덱부는 병렬적으로 동작하는 것이 바람직하다.
한편, 상기 인트라 인코딩은, 무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264, H.265의 압축 방식 중 적어도 하나의 압축 방식일 수 있다.
한편, 본 실시 예에 따른 전자 장치에서의 인코딩 방법은, 복수의 이미지를 연속적으로 입력받는 단계, 상기 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리하는 단계, 상기 복수의 코덱부 중 적어도 하나의 코덱부에서, 상기 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 단계, 및, 상기 복수의 코덱부 중 다른 코덱부에서, 상기 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 상기 인트라 인코딩된 이미지를 이용하여 순차적으로 인터 인코딩하는 단계를 포함한다.
이 경우, 본 인코딩 방법은, 상기 인트라 인코딩된 이미지를 디코딩하여 리콘 이미지를 생성하는 단계를 더 포함하고, 상기 인터 인코딩하는 단계는, 상기 다른 그룹의 이미지를 상기 생성된 리콘 이미지를 이용하여 인터 인코딩할 수 있다.
한편, 상기 인트라 인코딩하는 단계와 상기 인터 인코딩하는 단계는 병렬적으로 동작하는 것이 바람직하다.
한편, 상기 인트라 인코딩은, 무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264, H.265의 압축 방식 중 적어도 하나의 압축 방식일 수 있다.
도 1은 본 발명의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도,
도 2는 제1 실시 예에 따른 복수의 코덱부의 구조를 설명하기 위한 도면,
도 3은 제2 실시 예에 따른 복수의 코덱부의 구조를 설명하기 위한 도면,
도 4는 제1 실시 예 및 제2 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 5는 제3 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 6은 제4 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 7은 제5 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 8은 제3 실시 예 내지 제5 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 9는 제6 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 10은 제7 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 11은 제8 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 12는 제6 실시 예 내지 제8 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 13은 제9 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 14는 제10 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 15는 제11 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면,
도 16은 제9 실시 예 내지 제11 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면, 그리고,
도 17은 본 발명의 일 실시 예에 따른 인코딩 방법을 설명하기 위한 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 전자 장치(100)는 통신 인터페이스부(110), 사용자 인터페이스부(120), 저장부(130), 이미지 처리부(140), 제어부(150) 및 복수의 코덱부(200)로 구성될 수 있다. 한편, 본 실시 예에 따른 전자 장치(100)는 복수의 이미지를 연속으로 촬영할 수 있는 디지털 카메라, 캠코더, 휴대폰, PMP, 웹캠, 블랙박스와 같은 촬영장치일 수 있으며, PC, 노트북, PMP 등과 같은 장치일 수 있다.
통신 인터페이스부(110)는 적어도 하나의 외부 장치(미도시)와 연결하기 위해 형성되고, 근거리 통신망(LAN: Local Area Network) 및 인터넷 망을 통해 무선 또는 유선 방식으로 접속되는 형태뿐만 아니라, USB(universal Serial Bus) 포트, 블루투스(bluetooth) 모듈을 통하여 접속되는 형태도 가능하다.
그리고 통신 인터페이스부(110)는 외부의 장치로부터 복수의 이미지를 입력받을 수 있다. 그리고 통신 인터페이스부(110)는 후술할 복수의 코덱부(200)에서 생성된 동영상을 외부의 장치에 전송할 수 있다. 그리고 통신 인터페이스부(110)는 외부의 장치로부터 동영상 컨텐츠를 입력받을 수 있다.
사용자 인터페이스부(120)는 전자 장치(100)에서 지원하는 각종 기능을 사용자 설정 또는 선택할 수 있는 다수의 기능키를 구비하며, 전자 장치(100)에서 제공하는 각종 정보를 표시할 수 있다. 사용자 인터페이스부(120)는 터치패드와 같이 입력과 출력이 동시에 구현되는 장치로 구현될 수 있고, 다수의 버튼과 같은 입력장치와 LCD 모니터, OLED 모니터 등과 같은 표시 장치를 결합하여 구현될 수 있다.
사용자 인터페이스부(120)는 사용자로부터 인코딩을 수행할 복수의 이미지를 선택받을 수 있다. 그리고 사용자 인터페이스부(120)는 사용자로부터 재생될 동영상을 선택받을 수 있다. 이때, 사용자 인터페이스부(120)는 후술할 복수의 코덱부(200)에서 디코딩된 영상을 표시할 수 있다.
그리고 사용자 인터페이스부(120)는 인코딩과 관련된 설정을 입력받는다. 구체적으로, 사용자 인터페이스부(120)는 생성될 동영상의 해상도, 프레임 레이트 등의 설정을 사용자로부터 입력받을 수 있다. 한편, 이러한 설정은 디폴트로 설정되어 있을 수 있다.
저장부(130)는 복수의 이미지를 저장한다. 그리고 저장부(130)는 후술할 이미지 처리부(140)에서 이미지 처리된 이미지를 저장할 수 있다. 그리고 저장부(130)는 후술할 복수의 코덱부(200)에서 생성된 동영상을 저장하거나, 외부 장치로부터 수신된 동영상을 저장할 수 있다.
이러한 저장부(130)는 전자 장치(100) 내의 저장매체 및 외부 저장매체, 예를 들어, USB 메모리, 플레쉬 메모리 등을 포함한 Remobable Disk, 촬영장치에 연결된 저장매체, 네트워크를 통한 웹 서버(web server) 등으로 구현될 수 있다.
이미지 처리부(140)는 복수의 이미지에 대해서 보정 작업을 수행할 수 있다. 구체적으로, 이미지 처리부(140)는 동영상으로 변환될 복수의 이미지에 대해서 포맷 변환과 영상 스케일을 조정하기 위한 디지털 줌, AWB(Auto White Balance), AF(Auto Focus), AE(Auto Exposure) 등의 영상 처리를 수행할 수 있다.
복수의 코덱부(200)는 복수의 이미지를 연속적으로 입력받고, 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리한다. 구체적으로, 복수의 코덱부(200)는 전자 장치(100)에 구비되는 코덱부(200)의 개수에 대응되는 그룹 수로 복수의 이미지를 분리할 수 있다. 예를 들어, 도 2 내지 도 3과 같은 실시 예에서는 2개의 그룹으로 분리할 수 있으며, 도 5 내지 도 15의 실시 예에서는 3개의 그룹으로 분리할 수 있다.
그리고 복수의 코덱부(200)는 적어도 하나의 코덱부를 이용하여 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라(intra) 인코딩할 수 있다. 여기서 인트라 인코딩은 이전 프레임 또는 이후 프레임을 참조하지 않더라도 독립적으로 디코딩될 수 있는 프레임(예를 들어, I프레임)을 생성하는 인코딩으로, 무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264, H.265의 압축 방식 등이 적용될 수 있다.
그리고 복수의 코덱부(200)는 적어도 하나의 코덱부를 이용하여 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 인트라 인코딩된 이미지를 이용하여 순차적으로 인터 인코딩할 수 있다. 여기서 인터 인코딩은, 이전 프레임 및/또는 이후 프레임을 참조하여 인코딩하는 방식으로 종래의 영상 코덱의 다양한 압축 방식이 적용될 수 있다.
한편, 본 실시 예에서는 음성 신호를 수신하는 내용에 대해서 설명하지 않았지만, 복수의 코덱부(200)는 별도의 음성 코덱부를 이용하여 내부의 마이크, 외부의 마이크, 기저장된 음성 데이터 등을 이용하여 음성 신호와 복수의 이미지가 인코딩된 동영상 파일을 생성할 수 있다.
또한, 이상에서는 복수의 코덱부(200)가 인코딩을 수행하는 것만으로 설명하였지만, 복수의 코덱부(200)는 디코딩을 수행할 수도 있다. 디코딩의 기술은 인코딩 기술에 상응하는바, 이하에서는 복수의 코덱부(200)의 구체적인 인코딩 동작을 도 2 내지 도 16을 참조하여 후술한다.
제어부(150)는 전자 장치(100) 내의 각 구성을 제어한다. 구체적으로, 제어부(150)는 인코딩 명령이 입력되면, 복수의 이미지에 대한 동영상이 생성되도록 복수의 코덱부(200)를 제어할 수 있으며, 생성된 동영상이 저장되도록 저장부(130)를 제어할 수 있다. 그리고 제어부(150)는 생성된 동영상에 대한 재생 명령이 입력되면, 해당 동영상에 대한 디코딩이 수행되도록 복수의 코덱부(200)를 제어할 수 있으며, 디코딩된 동영상이 표시되도록 사용자 인터페이스부(120)를 제어할 수 있다.
이상과 같은 본 실시 예에 따른 전자 장치(100)는 복수의 코덱부를 이용하여 동영상을 생성하는바 더욱 빠르게 동영상을 생성할 수 있게 된다.
한편, 도 1을 설명함에 있어서, 복수의 코덱부(200)가 인코딩하는 것만으로 설명하였지만, 복수의 코덱부(200)는 생성된 동영상에 대해서 디코딩을 수행할 수 있다.
도 2는 제1 실시 예에 따른 복수의 코덱부의 구조를 설명하기 위한 도면이다.
도 2를 참조하면, 복수의 코덱부(200)는 입력부(210, 220), 제1 코덱부(230) 및 제2 코덱부(240)로 구성된다. 여기서 제1 코덱부(230) 및 제2 코덱부(240)는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다.
입력부(210, 220)는 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹(2n) 및 제2 그룹(2n+1)으로 분리한다. 제1 실시 예에서는 두 개의 코덱부를 포함한다는 점에서, 입력부(210, 220)는 제1 입력부(210) 및 제2 입력부(220)로 구성될 수 있다.
제1 입력부(210)는 복수의 이미지 중 제1그룹(2n)에 해당하는 이미지를 제1 코덱부(230)에 제공한다.
제2 입력부(220)는 복수의 이미지 중 제2그룹(2n+1)에 해당하는 이미지를 제2 코덱부(240)에 제공한다.
제1 코덱부(230)는 제1 그룹(2n)의 연속된 이미지 각각을 순차적으로 인트라 인코딩한다. 예를 들어, 도 4에 도시된 바와 같이 제1 코덱부(230)는 첫 번째 이미지(1)를 제1 입력부(210)로부터 입력받고, 첫 번째 이미지(1)에 대한 인트라 인코딩을 수행하여, 첫 번째 이미지(1)에 대한 인코딩된 이미지(I1, 구체적으로는, 인트라 프레임)을 생성할 수 있다. 이때, 제1 코덱부(230)에서 인코딩된 제1 그룹(2n)의 이미지(stream)는 전자 장치(100)의 시스템 버스(205)를 통하여 저장부(130)에 저장될 수 있다. 여기서 인트라 프레임은 인트라 인코딩에 의하여 생성된 동영상 프레임이다.
그리고 제1 코덱부(230)는 인코딩된 제1 그룹(2n)의 이미지를 디코딩하여 제1 그룹(2n)의 리콘(recon) 이미지를 생성하고, 생성된 제1 그룹(2n)의 리콘(recon) 이미지를 시스템 버스(205)를 이용하지 않고 제2 코덱부(240)에 직접 전송할 수 있다. 이와 같이 본 실시 예에서는 리콘 이미지를 직접 제2 코덱부(240)에 전송하는바, 시스템 버스의 리소스를 줄일 수 있다. 다만, 구현시에는 생성된 리콘 이미지가 시스템 버스(205)를 통하여 제2 코덱부(240)에 전송되는 형태로도 구현이 가능하다.
제2 코덱부(240)는 제2 그룹(2n+1)의 연속된 이미지 각각을 제1 코덱부(230)에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제2 코덱부(240)는 제2 그룹(2n+1)의 연속된 이미지 각각을 제1 코덱부(230)에서 직접 전송되는 제1 그룹(2n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 예를 들어, 도 4에 도시된 바와 같이 제2 코덱부(240)는 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 제1 코덱부(230)로부터 입력받고, 두 번째 이미지(2)를 제2 입력부(220)로부터 입력받고, 두 번째 이미지(2)를 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 이용하여 인터 인코딩함으써, 두 번째 이미지(2)에 대응하는 인코딩 이미지(P2, 구체적으로는 인터 프레임)를 생성할 수 있다. 이때, 제2 코덱부(240)에서 인코딩된 제2 그룹(2n+1)의 이미지(stream)는 전자 장치(100)의 시스템 버스(205)를 통하여 저장부(130)에 저장될 수 있다. 여기서 인터 프레임은 인터 인코딩에 의하여 생성된 동영상 프레임이다.
도 3은 제2 실시 예에 따른 복수의 코덱부의 구조를 설명하기 위한 도면이다.
구체적으로, 제2 실시 예는 제1 실시 예와 달리 제1 코덱부(230')가 리콘 이미지를 생성하지 않는다.
도 3을 참조하면, 복수의 코덱부(200')는 입력부(210, 220), 제1 코덱부(230') 및 제2 코덱부(240')로 구성된다. 여기서 제2 코덱부(240')는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다. 그러나 제1 코덱부(230')는 전용의 하드웨어 구성을 구현될 수 있으며, 제어부(150)의 CPU 또는 DSP에서 동작할 수 있는 소프트웨어 방식으로 구현될 수 있다.
입력부(210, 220)의 동작은 도 2와 동일한바 중복 설명은 생략한다.
제1 코덱부(230')는 제1 그룹(2n)의 연속된 이미지 각각을 순차적으로 인트라 인코딩한다. 예를 들어, 도 4에 도시된 바와 같이 제1 코덱부(230')는 첫 번째 이미지(1)를 제1 입력부(210)로부터 입력받고, 첫 번째 이미지(1)에 대한 인트라 인코딩을 수행하여, 첫 번째 이미지(1)에 대한 인트라 프레임(I1)을 생성할 수 있다.
제2 코덱부(240')는 제2 그룹(2n+1)의 연속된 이미지 각각을 제1 코덱부(230')에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제2 코덱부(240')는 제1 코덱부(230')에서 인코딩된 제1 그룹(2n)의 이미지 및 제2 입력부(220)로부터 제2 그룹(2n+1)의 이미지를 입력받는다. 그리고 제2 코덱부(240')는 제1 코덱부(230')에서 인코딩된 제1 그룹(2n)의 이미지를 디코딩하여 제1 그룹(2n)의 리콘 이미지를 생성하고, 제2 그룹(2n+1)의 연속된 이미지 각각을 디코딩된 제1 그룹(2n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다. 예를 들어, 도 4에 도시된 바와 같이 제2 코덱부(240')는 첫 번째 이미지(1)에 대한 인트라 프레임(I1) 및 두 번째 이미지(2)를 제2 입력부(220)로부터 입력받고, 첫 번째 이미지(1)에 대한 인트라 프레임(I1)을 디코딩하여 첫 번째 이미지(1)에 대응되는 리콘 이미지(1')를 생성하고, 두 번째 이미지(2)를 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 이용하여 인터 인코딩하여, 두 번째 이미지(2)에 대응하는 인터 프레임(P2)을 생성할 수 있다.
도 2 내지 도 4를 설명함에 있어서, 두 개의 코덱부를 이용하여 복수의 코덱부를 구현하는 예에 대해서만 설명하였지만, 복수의 코덱부는 세 개의 코덱부를 구비할 수 있으며, 이에 대해서는 도 5 내지 도 15를 참조하여 이하에서 설명한다.
도 5는 제3 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
도 5를 참조하면, 복수의 코덱부(300)는 입력부(310, 320, 330), 제1 코덱부(340), 제2 코덱부(350) 및 제3 코덱부(360)로 구성된다. 여기서 제1 코덱부(340), 제2 코덱부(350), 제3 코덱부(360)는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다.
입력부(310, 320, 330)는 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹(3n), 제2 그룹(3n+1) 및 제3 그룹(3n+2)으로 분리한다. 본 실시 예에서는 세 개의 코덱부가 구비된다는 점에서, 입력부(310, 320, 330)는 제1 입력부(310), 제2 입력부(320) 및 제3 입력부(330)로 구성될 수 있다.
제1 입력부(310)는 복수의 이미지 중 제1그룹(3n)에 해당하는 이미지를 제1 코덱부(340)에 제공한다.
제2 입력부(320)는 복수의 이미지 중 제2그룹(3n+1)에 해당하는 이미지를 제2 코덱부(350)에 제공한다.
제3 입력부(330)는 복수의 이미지 중 제3그룹(3n+2)에 해당하는 이미지를 제3 코덱부(360)에 제공한다.
제1 코덱부(340)는 제1 그룹(3n)의 연속된 이미지 각각을 순차적으로 인트라 인코딩한다. 예를 들어, 도 8에 도시된 바와 같이 제1 코덱부(340)는 첫 번째 이미지(1)를 제1 입력부(310)로부터 입력받고, 첫 번째 이미지(1)에 대한 인트라 인코딩을 수행하여, 첫 번째 이미지(1)에 대한 인코딩된 이미지(I1, 구체적으로는, 인트라 프레임)을 생성할 수 있다. 이때, 제1 코덱부(340)에서 인코딩된 제1 그룹(3n)의 이미지(stream)는 전자 장치(100)의 시스템 버스(305)를 통하여 저장부(130)에 저장될 수 있다.
그리고 제1 코덱부(340)는 인코딩된 제1 그룹(3n)의 이미지를 디코딩하여 제1 그룹(3n)의 리콘(recon) 이미지를 생성하고, 생성된 제1 그룹(3n)의 리콘(recon) 이미지를 시스템 버스(305)를 이용하지 않고 제2 코덱부(350) 및 제3 코덱부(360)에 직접 전송할 수 있다. 이와 같이 본 실시 예에서는 리콘 이미지를 직접 제2 코덱부(350) 및 제3 코덱부(360)에 전송하는바, 시스템 버스의 리소스를 줄일 수 있다. 다만, 구현시에는 생성된 리콘 이미지가 시스템 버스(305)를 통하여 제2 코덱부(350) 및 제3 코덱부(360)에 전송되는 형태로도 구현이 가능하다.
제2 코덱부(350)는 제2 그룹(3n+1)의 연속된 이미지 각각을 제1 코덱부(340)에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제2 코덱부(350)는 제2 그룹(3n+1)의 연속된 이미지 각각을 제1 코덱부(340)에서 직접 전송되는 제1 그룹(3n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다. 예를 들어, 도 8에 도시된 바와 같이 제2 코덱부(350)는 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 제1 코덱부(340)로부터 입력받고, 두 번째 이미지(2)를 제2 입력부(320)로부터 입력받고, 두 번째 이미지(2)를 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 이용하여 인터 인코딩하여, 두 번째 이미지(2)에 대응하는 인코딩 이미지(P2, 구체적으로는 인터 프레임)를 생성할 수 있다. 이때, 제2 코덱부(350)에서 인코딩된 제2 그룹(3n+1)의 이미지(stream)는 전자 장치(100)의 시스템 버스(305)를 통하여 저장부(130)에 저장될 수 있다.
그리고 제2 코덱부(350)는 인코딩된 제2 그룹(3n+1)의 이미지를 디코딩하여 제2 그룹(3n+1)의 리콘(recon) 이미지를 생성하고, 생성된 제2 그룹(3n+1)의 리콘(recon) 이미지를 시스템 버스(305)를 이용하지 않고 제3 코덱부(360)에 직접 전송할 수 있다. 구체적으로, 제2 코덱부(350)는 인코딩된 제2 그룹(3n+1)의 이미지를 제1 코덱부(340)에서 직접 전송되는 제1 그룹(3n)의 리콘 이미지를 이용하여 디코딩하여 제2 그룹(3n+1)의 리콘 이미지를 생성할 수 있다. 한편, 구현시에는 생성된 제2 그룹(3n+1)의 리콘 이미지가 시스템 버스(305)를 통하여 제3 코덱부(360)에 전송되는 형태로도 구현이 가능하다.
제3 코덱부(360)는 제3 그룹(3n+2)의 연속된 이미지 각각을 제1 코덱부(340)에서 연속적으로 인코딩된 이미지 각각 및 제2 코덱부(350)에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(360)는 제3 입력부(330)로부터 입력되는 제3 그룹(3n+2)의 연속된 이미지 각각을 제1 코덱부(340)에서 직접 전송되는 제1 그룹(3n)의 리콘 이미지 각각 및 제2 코덱부(350)에서 직접 전송되는 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 예를 들어, 도 8에 도시된 바와 같이 제3 코덱부(360)는 첫 번째 이미지(1)에 대한 리콘 이미지(1')를 제1 코덱부(340)로부터 입력받고, 두 번째 이미지(2)에 대한 리콘 이미지(2')를 제2 코덱부(350)로부터 입력받고, 세 번째 이미지(3)를 제3 입력부(330)로부터 입력받고, 세 번째 이미지(3)를 첫 번째 이미지(1)에 대한 리콘 이미지(1') 및 두 번째 이미지(2)에 대한 리콘 이미지(2')를 이용하여 인터 인코딩하여, 세 번째 이미지(3)에 대응하는 인코딩 이미지(P3, 구체적으로는 인터 프레임)를 생성할 수 있다. 이때, 제3 코덱부(360)에서 인코딩된 제3 그룹(3n+2)의 이미지(stream)는 전자 장치(100)의 시스템 버스(305)를 통하여 저장부(130)에 저장될 수 있다.
도 6은 제4 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제4 실시 예는 제3 실시 예와 달리 제2 코덱부(350')가 리콘 이미지를 별도로 생성하지 않는다.
도 6을 참조하면, 복수의 코덱부(300')는 입력부(310, 320, 330), 제1 코덱부(340), 제2 코덱부(350') 및 제3 코덱부(360')로 구성된다. 여기서 제1 코덱부(340), 제2 코덱부(350'), 제3 코덱부(360')는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다.
입력부(310, 320, 330)는 도 5의 입력부와 동일한 동작을 수행하는바, 중복 설명은 생략한다.
제1 코덱부(340)는 생성된 리콘 이미지를 제3 코덱부(360')로 전달하지 않고, 제2 코덱부(350')에만 전달한다는 점을 제외하고는 도 5의 제1 코덱부와 동일한 기능을 수행하는바, 중복 설명은 생략한다.
제2 코덱부(350')는 제2 그룹(3n+1)의 연속된 이미지 각각을 제1 코덱부(340)에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제2 코덱부(350')는 제2 그룹(3n+1)의 연속된 이미지 각각을 제1 코덱부(340)에서 직접 전송되는 제1 그룹(3n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩한다.
제3 코덱부(360')는 제3 그룹(3n+2)의 연속된 이미지 각각을 제1 코덱부(340)에서 연속적으로 인코딩된 이미지 각각 및 제2 코덱부(350')에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(360')는 제1 코덱부(340)에서 인코딩된 제1 그룹(3n)의 이미지, 제2 코덱부(350')에서 인코딩된 제2 그룹(3n+1)의 이미지 및 제3 입력부(330)로부터 제3 그룹(3n+2)의 이미지를 입력받는다. 그리고 제3 코덱부(360')는 제1 코덱부(340)에서 인코딩된 제1 그룹(3n)의 이미지를 디코딩하여 제1 그룹(3n)의 리콘 이미지를 생성하고, 제2 코덱부(350')에서 인코딩된 제2 그룹(3n+1)의 이미지를 디코딩하여 제2 그룹(3n+1)의 리콘 이미지를 생성하고, 제3 그룹(3n+2)의 연속된 이미지 각각을 생성된 제1 그룹(3n)의 리콘 이미지 각각 및 생성된 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
도 7은 제5 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제5 실시 예는 제3 실시 예와 달리 제1 코덱부(340')가 리콘 이미지를 별도로 생성하지 않는다.
도 7을 참조하면, 복수의 코덱부(300")는 입력부(310, 320, 330), 제1 코덱부(340'), 제2 코덱부(350") 및 제3 코덱부(360")로 구성된다. 여기서 제2 코덱부(350") 및 제3 코덱부(360")는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다. 그러나 제1 코덱부(340')는 전용의 하드웨어 구성을 구현될 수 있으며, 제어부(150)의 CPU 또는 DSP에서 동작할 수 있는 소프트웨어 방식으로 구현될 수 있다.
입력부(310, 320, 330)는 도 5의 입력부와 동일한 동작을 수행하는바, 중복 설명은 생략한다.
제1 코덱부(340')는 별도의 리콘(recon) 이미지를 생성하지 않는다는 점을 제외하고는 도 5의 제1 코덱부(340)와 동일한 기능을 수행하는바, 중복 설명은 생략한다.
제2 코덱부(350")는 제2 그룹(3n+1)의 연속된 이미지 각각을 제1 코덱부(340')에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제2 코덱부(350")는 제1 코덱부(340')에서 인코딩된 제1 그룹(3n)의 이미지 및 제2 입력부(320)로부터 제2 그룹(3n+1)의 이미지를 입력받는다. 그리고 제2 코덱부(350")는 제1 코덱부(340')에서 인코딩된 제1 그룹(3n)의 이미지를 디코딩하여 제1 그룹(3n)의 리콘 이미지를 생성하고, 제2 그룹(3n+1)의 연속된 이미지 각각을 디코딩된 제1 그룹(3n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
그리고 제2 코덱부(350")는 인코딩된 제2 그룹(3n+1)의 이미지를 디코딩하여 제2 그룹(3n+1)의 리콘(recon) 이미지를 생성하고, 생성된 제2 그룹(3n+1)의 리콘(recon) 이미지를 시스템 버스(305)를 이용하지 않고 제3 코덱부(360")에 직접 전송할 수 있다. 구체적으로, 제2 코덱부(350")는 자체적으로 생성한 제1 그룹(3n)의 리콘 이미지를 이용하여, 인코딩된 제2 그룹(3n+1)의 이미지를 디코딩함으로써, 제2 그룹(3n+1)의 리콘 이미지를 생성할 수 있다. 한편, 구현시에는 생성된 제2 그룹(3n+1)의 리콘 이미지가 시스템 버스(305)를 통하여 제3 코덱부(360")에 전송되는 형태로도 구현이 가능하다.
제3 코덱부(360")는 제3 그룹(3n+2)의 연속된 이미지 각각을 제1 코덱부(340')에서 연속적으로 인코딩된 이미지 각각 및 제2 코덱부(350")에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(360")는 제1 코덱부(340')로부터 인코딩된 제1 그룹(3n)의 이미지, 제2 코덱부(350")로부터 제2 그룹(3n+1)의 리콘 이미지 및 제3 입력부(330)로부터 제3 그룹(3n+2)의 이미지를 입력받는다. 그리고 제3 코덱부(360')는 제1 코덱부(340')에서 인코딩된 제1 그룹(3n)의 이미지를 디코딩하여 제1 그룹(3n)의 리콘 이미지를 생성하고, 제3 그룹(3n+2)의 연속된 이미지 각각을 생성된 제1 그룹(3n)의 리콘 이미지 각각 및 전달된 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
도 5 내지 도 8에는 제1 코덱부(340) 및 제2 코덱부(350) 중 적어도 하나가 리콘 이미지를 생성하는 예에 대해서 도시하였지만, 구현시에는 제1 코덱부(340) 및 제2 코덱부(350) 모두가 리콘 이미지를 생성하지 않는 형태로도 구현될 수 있다.
그리고 도 5 내지 도 8을 설명함에 있어서, 제3 코덱부(360)가 두 개의 이미지를 참조하여 인터 인코딩을 수행하는 것으로 설명하였지만, 제3 코덱부는 하나의 이미지를 참조하여 인터 인코딩을 수행할 수 있다. 먼저, 제3 코덱부가 제2 코덱부의 인코딩된 이미지만을 참조하여 인터 인코딩을 수행하는 실시 예에 대해서는 도 9 내지 도 12를 참조하여 설명하고, 제3 코덱부가 제1 코덱부의 인코딩된 이미지만을 참조하여 인터 인코딩을 수행하는 실시 예에 대해서는 도 13 내지 도 16을 참조하여 설명한다.
도 9는 제6 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
도 9를 참조하면, 복수의 코덱부(400)는 입력부(410, 420, 430), 제1 코덱부(440), 제2 코덱부(450) 및 제3 코덱부(460)로 구성된다. 여기서 제1 코덱부(440), 제2 코덱부(450), 제3 코덱부(460)는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다.
입력부(410, 420, 430)는 도 5의 입력부(310, 320, 330)과 동일한 동작을 수행하는바 중복 설명은 생략한다.
제1 코덱부(440)는 생성된 리콘(recon) 이미지를 제3 코덱부(460)에 전달하지 않는다는 점을 제외하고는 도 5의 제1 코덱부(340)와 동일한바, 중복 설명은 생략한다.
제2 코덱부(450)는 도 5의 제2 코덱부(350)와 동일한 동작을 수행하는바, 중복 설명은 생략한다.
제3 코덱부(460)는 제3 그룹(3n+2)의 연속된 이미지 각각을 제2 코덱부(450)에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(460)는 제2 코덱부(450)로부터 제2 그룹(3n+1)의 리콘 이미지 및 제3 입력부(430)로부터 제3 그룹(3n+2)의 이미지를 입력받고, 제3 그룹(3n+2)의 연속된 이미지 각각을 제2 코덱부(450)에서 직접 전송되는 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 예를 들어, 도 12에 도시된 바와 같이 제3 코덱부(460)는 부 번째 이미지(2)에 대한 리콘 이미지(2')를 제2 코덱부(450)로부터 입력받고, 세 번째 이미지(3)를 제3 입력부(430)로부터 입력받고, 세 번째 이미지(3)를 두 번째 이미지(2)에 대한 리콘 이미지(2')를 이용하여 인터 인코딩하여, 세 번째 이미지(3)에 대응하는 인코딩 이미지(P3, 구체적으로는 인터 프레임)를 생성할 수 있다. 이때, 제3 코덱부(460)에서 인코딩된 제3 그룹(3n+2)의 이미지(stream)는 전자 장치(100)의 시스템 버스(405)를 통하여 저장부(130)에 저장될 수 있다.
도 10은 제7 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제7 실시 예는 제6 실시 예와 달리 제2 코덱부(450')가 리콘 이미지를 별도로 생성하지 않는다. 그리고 제4 실시 예와 비교하였을 때, 제3 코덱부(460')가 제2 코덱부(450')에서 인코딩된 제2 그룹(3n+1)의 이미지만을 이용하여 인터 인코딩을 수행한다는 점을 제외하고는 나머지 구성들은 동일한 동작을 수행하는바, 이하에서는 제3 코덱부(460')의 동작만을 설명한다.
제3 코덱부(460')는 제3 그룹(3n+2)의 연속된 이미지 각각을 제2 코덱부(450')에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(460')는 제2 코덱부(450')로부터 인코딩된 제2 그룹(3n+1)의 이미지 및 제3 입력부(430)로부터 제3 그룹(3n+2)의 이미지를 입력받는다. 그리고 제3 코덱부(460')는 제2 코덱부(450')에서 인코딩된 제2 그룹(3n+1)의 이미지를 디코딩하여 제2 그룹(3n+1)의 리콘 이미지를 생성하고, 제3 그룹(3n+2)의 연속된 이미지 각각을 생성된 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
도 11은 제8 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제8 실시 예는 제6 실시 예와 달리 제1 코덱부(440')가 리콘 이미지를 별도로 생성하지 않는다. 그리고 제5 실시 예와 비교하였을 때, 제3 코덱부(460")가 제2 코덱부(450")에서 인코딩된 제2 그룹(3n+1)의 이미지만을 이용하여 인터 인코딩을 수행한다는 점을 제외하고는 나머지 구성들은 동일한 동작을 수행하는바, 이하에서는 제3 코덱부(460")의 동작만을 설명한다.
제3 코덱부(460")는 제3 그룹(3n+2)의 연속된 이미지 각각을 제2 코덱부(450")에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(460")는 제2 코덱부(450")로부터 제2 그룹(3n+1)의 리콘 이미지 및 제3 입력부(430)로부터 제3 그룹(3n+2)의 이미지를 입력받는다. 그리고 제3 코덱부(460")는 입력된 제3 그룹(3n+2)의 이미지를 입력된 제2 그룹(3n+1)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
도 13은 제9 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
도 13을 참조하면, 복수의 코덱부(500)는 입력부(510, 520, 530), 제1 코덱부(540), 제2 코덱부(550) 및 제3 코덱부(560)로 구성된다. 여기서 제1 코덱부(540), 제2 코덱부(550), 제3 코덱부(560)는 전용의 하드웨어 구성으로 구현되는 것이 바람직하다.
제 9 실시 예는 제 5 실시 예와 달리 제3 코덱부(560)가 제1 코덱부(540)에서 인코딩된 제1 그룹(3n)의 이미지만을 이용하여 인터 인코딩을 수행한다는 점을 제외하고는 나머지 구성들은 동일한 동작을 수행하는바, 이하에서는 제3 코덱부(560)의 동작만을 설명한다.
제3 코덱부(560)는 제3 그룹(3n+2)의 연속된 이미지 각각을 제1 코덱부(540)에서 연속적으로 인코딩된 제1 그룹(3n)의 이미지 각각을 이용하여 순차적으로 인터 인코딩한다. 구체적으로, 제3 코덱부(560)는 제1 코덱부(540)로부터 인코딩된 제1 그룹(3n)의 이미지 및 제3 입력부(530)로부터 제3 그룹(3n+2)의 이미지를 입력받는다. 그리고 제3 코덱부(560)는 제1 코덱부(560)에서 인코딩된 제1 그룹(3n)의 이미지를 디코딩하여 제1 그룹(3n)의 리콘 이미지를 생성하고, 제3 그룹(3n+2)의 연속된 이미지 각각을 생성된 제1 그룹(3n)의 리콘 이미지 각각을 이용하여 순차적으로 인터 인코딩할 수 있다.
도 14는 제10 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제10 실시 예는 제9 실시 예와 달리 제1 코덱부(540')가 별도로 리콘 이미지를 생성하지 않는다. 이와 같은 제1 코덱부(540')는 도 7의 제1 코덱부(340') 및 도 11의 제1 코덱부(440')와 동일한바 중복 설명은 생략한다.
그리고 제2 코덱부(550')는 리콘 이미지를 생성하지 않는다는 점을 제외하고는 제 7의 제2 코덱부(350') 및 도 11의 제2 코덱부(450")와 동일한 기능을 수행하는바, 중복 설명은 생략한다.
또한, 제3 코덱부(550')는 도 13의 제3 코덱부(560)와 동일한 기능을 수행한다는 점에서 중복 설명은 생략한다.
도 15는 제11 실시 예에 따른 복수의 코덱부의 동작을 설명하기 위한 도면이다.
구체적으로, 제11 실시 예는 제1 코덱부(540")에서 생성된 리콘 이미지가 제2 코덱부(550')가 아닌 제3 코덱부(560')에 전달된다는 점을 제외하고는 제 9 실시 예와 동일한바, 각 코덱부(540", 550', 560')의 구체적인 동작의 설명은 생략한다.
이상에서는 2개 또는 3개의 코덱부를 이용하는 예에 대해서만 도시하고 설명하였지만, 구현시에는 4개 이상의 코덱부를 이용하는 형태로도 구현될 수 있다. 또한, 도시된 예에서는 복수의 코덱부 중 하나만 인트라 인코딩을 수행하는 것으로 도시하고 설명하였지만, 두 개 이상의 인트라 인코딩을 수행하는 코덱부가 구비되는 형태로도 구현될 수 있다. 또한, 도시된 예에서는 P 프레임을 생성하는 인터 인코딩 방식만을 도시하고 설명하였지만, 구현시에는 B 프레임을 생성하는 인터 인코딩 방식이 이용될 수 있으며, P프레임 및 B 프레임을 혼용하여 생성하는 인터 인코딩 방식이 이용될 수도 있다.
도 17은 본 발명의 일 실시 예에 따른 인코딩 방법을 설명하기 위한 흐름도이다.
도 17을 참조하면, 먼저, 복수의 이미지를 연속적으로 입력받고(S1710), 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리한다(S1720). 구체적으로, 복수의 코덱부(200)는 전자 장치(100)에 구비되는 코덱부(200)의 개수에 대응되는 그룹 수로 복수의 이미지를 분리할 수 있다. 예를 들어, 도 2 내지 도 3과 같은 실시 예에서는 2개의 그룹으로 분리할 수 있으며, 도 5 내지 도 13의 실시 예에서는 3개의 그룹으로 분리할 수 있다.
그리고 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩한다(S1730). 여기서 인트라 인코딩은 이전 프레임 또는 이후 프레임을 참조하지 않더라도 독립적으로 디코딩될 수 있는 프레임(예를 들어, I프레임)을 생성하는 인코딩으로, 무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264(구체적으로는 H.264의 IDR), H.265(구체적으로는 H.265의 HEVC)의 압축 방식 등이 적용될 수 있다.
그리고 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 인트라 인코딩된 이미지를 이용하여 순차적으로 인터 인코딩한다(S1740). 여기서 인터 인코딩은, 이전 프레임 및/또는 이후 프레임을 참조하여 인코딩하는 방식으로 종래의 영상 코덱의 다양한 압축 방식이 적용될 수 있다. 이때, 인터 인코딩은 첫 번째 프레임을 제외한 나머지 프레임에서는 상술한 인트라 인코딩과 병렬적으로 수행된다.
그리고 인트라 인코딩 및 인터 인코딩된 이미지를 병합하여 동영상을 생성하고, 생성된 동영상을 저장한다(S1750).
이상과 같이 본 실시 예에 따른 인코딩 방법은, 복수의 코덱부를 이용하여 복수의 이미지를 인코딩하는바, 빠르게 인코딩을 수행할 수 있게 된다. 도 17과 같은 인코딩 방법은 도 1의 구성을 가지는 전자 장치상에서 실시될 수 있으며, 그 밖의 구성을 가지는 전자 장치상에서도 실행될 수 있다.
또한, 상술한 바와 같은 인코딩 방법은 상술한 바와 같은 인코딩 방법을 실행하기 위한 적어도 하나의 실행 프로그램으로 구현될 수 있으며, 이러한 실행 프로그램은 컴퓨터 판독 기록매체에 저장될 수 있다.
따라서, 본 발명의 각 블록들은 컴퓨터 판독가능한 기록매체 상의 컴퓨터 기록 가능한 코드로써 실시될 수 있다. 컴퓨터 판독가능한 기록매체는 컴퓨터시스템에 의해 판독될 수 있는 데이터를 저장할 수 있는 디바이스가 될 수 있다.
또한, 도 17을 설명함에 있어서, 복수의 코덱부를 이용하여 인코딩을 수행하는 방법에 대해서만 도시하고 설명하였지만, 인코딩과 디코딩은 상응되는 기술인바, 도 17과 같은 동작을 역순으로 수행하여 동영상을 디코딩하는 방법을 구현할 수도 있다.
이상에서는 본 발명의 바람직한 실시 예에 대해서 도시하고, 설명하였으나, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자라면 누구든지 다양한 변형 실시할 수 있는 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
100: 전자 장치 110: 통신 인터페이스부
120: 사용자 인터페이스부 130: 저장부
140: 이미지 처리부 150: 제어부
200: 복수의 코덱부

Claims (20)

  1. 전자 장치에 있어서,
    복수의 이미지를 연속적으로 입력받고, 상기 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리하는 입력부; 및
    상기 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라(intra) 인코딩하고, 상기 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 상기 인트라 인코딩된 이미지를 이용하여 순차적으로 인터(inter) 인코딩하는 복수의 코덱부;를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 입력부는,
    상기 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹 및 제2 그룹으로 분리하고,
    상기 복수의 코덱부는,
    상기 제1 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 제1 코덱부; 및
    상기 제2 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩하는 제2 코덱부;를 포함하는 것을 특징으로 하는 전자 장치.
  3. 제2항에 있어서,
    상기 제1 코덱부는,
    상기 인코딩된 제1 그룹의 이미지를 디코딩하여 제1 그룹의 리콘(recon) 이미지를 생성하고,
    상기 제2 코덱부는,
    상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  4. 제3항에 있어서,
    상기 제1 코덱부는,
    상기 생성된 제1 그룹의 리콘 이미지를 직접 상기 제2 코덱부에 전달하는 것을 특징으로 하는 전자 장치.
  5. 제2항에 있어서,
    상기 제2 코덱부는,
    상기 제1 코덱부에서 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성하고, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  6. 제1항에 있어서,
    상기 입력부는,
    상기 연속적으로 입력되는 복수의 이미지를 입력 순서에 따라 교번적으로 제1 그룹, 제2 그룹 및 제3 그룹으로 분리하고,
    상기 복수의 코덱부는,
    상기 제1 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 제1 코덱부;
    상기 제2 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 연속적으로 인코딩된 이미지 각각을 이용하여 순차적으로 인터 인코딩하는 제2 코덱부; 및
    상기 제3 그룹의 연속된 이미지 각각을 상기 제1 코덱부에서 인코딩된 제1 그룹의 이미지 및 상기 제2 코덱부에서 인코딩된 제2 그룹의 이미지 중 적어도 하나의 인코딩된 이미지를 이용하여 인터 인코딩하는 제3 코덱부;를 포함하는 것을 특징으로 하는 전자 장치.
  7. 제6항에 있어서,
    상기 제1 코덱부는,
    상기 제1 그룹의 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성하는 것을 특징으로 하는 전자 장치.
  8. 제7항에 있어서,
    상기 제2 코덱부는,
    상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  9. 제7항에 있어서,
    상기 제3 코덱부는,
    상기 제3 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  10. 제6항에 있어서,
    상기 제2 코덱부는,
    상기 제2 그룹의 인코딩된 이미지를 디코딩하여 제2 그룹의 리콘 이미지를 생성하는 것을 특징으로 하는 전자 장치.
  11. 제10항에 있어서,
    상기 제3 코덱부는,
    상기 제3 그룹의 이미지를 상기 생성된 제2 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  12. 제7항에 있어서,
    상기 제1 코덱부는,
    상기 생성된 제1 그룹의 리콘 이미지를 직접 상기 제2 코덱부 및 상기 제3 코덱부 중 적어도 하나에 전달하는 것을 특징으로 하는 전자 장치.
  13. 제6항에 있어서,
    상기 제2 코덱부는,
    상기 제1 코덱부에서 인코딩된 이미지를 디코딩하여 제1 그룹의 리콘 이미지를 생성하고, 상기 제2 그룹의 이미지를 상기 생성된 제1 그룹의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  14. 제6항에 있어서,
    상기 제3 코덱부는,
    상기 제1 코덱부에서 인코딩된 제1 그룹의 이미지 및 상기 제2 코덱부에서 인코딩된 제2 그룹의 이미지 중 적어도 하나의 인코딩된 이미지를 디코딩하여 적어도 하나의 리콘 이미지를 생성하고, 상기 제3 그룹의 이미지를 상기 생성된 적어도 하나의 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 전자 장치.
  15. 제1항에 있어서,
    상기 복수의 코덱부는 병렬적으로 동작하는 것을 특징으로 하는 전자 장치.
  16. 제1항에 있어서,
    상기 인트라 인코딩은,
    무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264, H.265의 압축 방식 중 적어도 하나의 압축 방식인 것을 특징으로 하는 전자 장치.
  17. 복수의 코덱부를 구비하는 전자 장치에서의 인코딩 방법에 있어서,
    복수의 이미지를 연속적으로 입력받는 단계;
    상기 연속적으로 입력된 복수의 이미지를 입력 순서에 따라 교번적으로 복수의 그룹으로 분리하는 단계;
    상기 복수의 코덱부 중 적어도 하나의 코덱부에서, 상기 분리된 복수의 그룹 중 하나의 그룹의 연속된 이미지 각각을 순차적으로 인트라 인코딩하는 단계; 및
    상기 복수의 코덱부 중 다른 코덱부에서, 상기 분리된 복수의 그룹 중 다른 그룹의 연속된 이미지 각각을 상기 인트라 인코딩된 이미지를 이용하여 순차적으로 인터 인코딩하는 단계;를 포함하는 인코딩 방법.
  18. 제17항에 있어서,
    상기 인트라 인코딩된 이미지를 디코딩하여 리콘 이미지를 생성하는 단계;를 더 포함하고,
    상기 인터 인코딩하는 단계는,
    상기 다른 그룹의 이미지를 상기 생성된 리콘 이미지를 이용하여 인터 인코딩하는 것을 특징으로 하는 인코딩 방법.
  19. 제17항에 있어서,
    상기 인트라 인코딩하는 단계와 상기 인터 인코딩하는 단계는 병렬적으로 동작하는 것을 특징으로 하는 인코딩 방법.
  20. 제17항에 있어서,
    상기 인트라 인코딩은,
    무손실(lossless) 압축 방식, 준무손실(near lossless) 압축 방식, JPEG, JPEG-XR, H.264, H.265의 압축 방식 중 적어도 하나의 압축 방식인 것을 특징으로 하는 인코딩 방법.
KR1020120023007A 2012-03-06 2012-03-06 전자 장치 및 인코딩 방법 KR20130101900A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120023007A KR20130101900A (ko) 2012-03-06 2012-03-06 전자 장치 및 인코딩 방법
US13/760,873 US20130235924A1 (en) 2012-03-06 2013-02-06 Electronic apparatus and method for encoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120023007A KR20130101900A (ko) 2012-03-06 2012-03-06 전자 장치 및 인코딩 방법

Publications (1)

Publication Number Publication Date
KR20130101900A true KR20130101900A (ko) 2013-09-16

Family

ID=49114109

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120023007A KR20130101900A (ko) 2012-03-06 2012-03-06 전자 장치 및 인코딩 방법

Country Status (2)

Country Link
US (1) US20130235924A1 (ko)
KR (1) KR20130101900A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102313651B1 (ko) * 2020-05-12 2021-10-15 수니코리아 엘엘씨(한국뉴욕주립대학교) 서버와 클라이언트 장치 간 비디오 스트리밍 방법
KR102459813B1 (ko) * 2022-02-17 2022-10-27 코디오 주식회사 영상스위칭 기반의 주기적 화질보정 영상처리 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10356405B2 (en) * 2013-11-04 2019-07-16 Integrated Device Technology, Inc. Methods and apparatuses for multi-pass adaptive quantization

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039115B1 (en) * 2000-09-20 2006-05-02 General Instrument Corporation Processor allocation for channels in a video multi-processor system
US8315307B2 (en) * 2004-04-07 2012-11-20 Qualcomm Incorporated Method and apparatus for frame prediction in hybrid video compression to enable temporal scalability
JP4528694B2 (ja) * 2005-08-12 2010-08-18 株式会社東芝 動画像符号化装置
US20080152014A1 (en) * 2006-12-21 2008-06-26 On Demand Microelectronics Method and apparatus for encoding and decoding of video streams
US8565315B2 (en) * 2007-11-16 2013-10-22 Panasonic Corporation Image decoding device and image decoding method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102313651B1 (ko) * 2020-05-12 2021-10-15 수니코리아 엘엘씨(한국뉴욕주립대학교) 서버와 클라이언트 장치 간 비디오 스트리밍 방법
KR102459813B1 (ko) * 2022-02-17 2022-10-27 코디오 주식회사 영상스위칭 기반의 주기적 화질보정 영상처리 방법

Also Published As

Publication number Publication date
US20130235924A1 (en) 2013-09-12

Similar Documents

Publication Publication Date Title
JP7106744B2 (ja) ルーマおよびクロマ成分についてibc専用バッファおよびデフォルト値リフレッシュを使用するエンコーダ、デコーダおよび対応する方法
US10412413B2 (en) Image processing device and image processing method
US8928678B2 (en) Media workload scheduler
RU2612600C2 (ru) Способ контентно-адаптивного энтропийного кодирования данных о режимах и опорных типах для видео следующего поколения
JP2013521717A (ja) リモートディスプレイに画像をレンダリングするためのデルタ圧縮ならびに動き予測およびメタデータの修正を可能にすること
JP2016502332A (ja) 次世代動画用コンテンツに適応的な特性補償済み予測
JP2022513715A (ja) 無指向性媒体符号化及び復号のためのラップアラウンドパディングの方法
JP2009207136A (ja) 複数のビデオストリームを処理する方法、ビデオストリームの符号化システムおよびビデオストリームの復号化システム
US20120294366A1 (en) Video pre-encoding analyzing method for multiple bit rate encoding system
US10051276B2 (en) Image encoding apparatus, method and imaging apparatus
WO2017041551A1 (zh) 基于spice协议的图像传输方法及装置
JP6179179B2 (ja) 情報処理装置、情報処理方法およびプログラム
US9392278B2 (en) Image encoding or decoding apparatus, system, method, and storage medium for encoding or decoding a plurality of images in parallel
US9319682B2 (en) Moving image encoding apparatus, control method therefor, and non-transitory computer readable storage medium
US11943473B2 (en) Video decoding method and apparatus, video encoding method and apparatus, storage medium, and electronic device
US9967465B2 (en) Image frame processing method
US10523958B1 (en) Parallel compression of image data in a compression device
KR20130101900A (ko) 전자 장치 및 인코딩 방법
US10356439B2 (en) Flexible frame referencing for display transport
US20190124333A1 (en) Multi-codec encoder and multi-codec encoding system including the same
US8538178B2 (en) Image processing device and image processing method
US9762926B2 (en) Image processing device and image processing method, program, and imaging apparatus
JP2016506662A (ja) スケーラブルな高スループットビデオエンコーダ
JP7431549B2 (ja) 符号化装置、撮像装置、制御方法、及びプログラム
JP2016149770A (ja) ストリーミングレイテンシの最小化システム及びそれを使用する方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid