KR102543444B1 - 영상 부호화 장치 - Google Patents

영상 부호화 장치 Download PDF

Info

Publication number
KR102543444B1
KR102543444B1 KR1020170109462A KR20170109462A KR102543444B1 KR 102543444 B1 KR102543444 B1 KR 102543444B1 KR 1020170109462 A KR1020170109462 A KR 1020170109462A KR 20170109462 A KR20170109462 A KR 20170109462A KR 102543444 B1 KR102543444 B1 KR 102543444B1
Authority
KR
South Korea
Prior art keywords
block
value
cbf
quantization parameter
roi
Prior art date
Application number
KR1020170109462A
Other languages
English (en)
Other versions
KR20190023548A (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 KR1020170109462A priority Critical patent/KR102543444B1/ko
Priority to US15/903,278 priority patent/US11019337B2/en
Priority to TW107127707A priority patent/TWI834621B/zh
Priority to CN201810963787.XA priority patent/CN109429063B/zh
Publication of KR20190023548A publication Critical patent/KR20190023548A/ko
Application granted granted Critical
Publication of KR102543444B1 publication Critical patent/KR102543444B1/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/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/124Quantisation
    • 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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets

Abstract

본 발명의 일 실시예에 따른 영상 부호화 장치는, 입력 영상에 포함된 프레임을 복수의 블록으로 분할하는 파티셔닝 유닛 및 관심 영역에 대한 제1 CBF(current buffer fullness) 값에 기초하여 상기 복수의 블록 중 상기 관심 영역에 대응하는 블록에 대한 제1 양자화 파라미터 값을 조절하고, 비관심 영역에 대한 제2 CBF 값에 기초하여 상기 복수의 블록 중 상기 비관심 영역에 대응하는 블록에 대한 제2 양자화 파라미터 값을 조절하는 레이트 제어 모듈을 포함한다.

Description

영상 부호화 장치{VIDEO ENCODING APPARATUS}
본 발명은 영상 부호화 장치에 관한 것이다.
HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 증가하고 있으며, 고해상도, 고품질의 영상을 처리하기 위해 고성능의 영상 압축 기술들이 활용되고 있다.
최근에는 휴대폰(Mobile Phone), 스마트 폰(Smart Phone) 등과 같은 모바일 기기가 널리 이용되고 있으며, 크기가 작고 배터리를 사용하는 등 제한된 환경을 가지는 모바일 기기 내에서 고해상도, 고품질의 영상을 효율적으로 압축할 수 있는 다양한 방안에 대한 연구가 진행되고 있다.
최근에는 영상 부호화 시스템은 입력 영상의 부호화를 수행하기 위해 영상 내의 프레임을 관심 영역에 대응하는 블록 및 비관심 영역에 대응하는 블록으로 구분하여 서로 비트 수를 다르게 할당하는 기술이 많이 이용되고 있다.
특히, 관심 영역에 대응하는 제1 블록 및 비관심 영역에 대응하는 제2 블록의 양자화 파라미터 값을 결정할 때, 복수의 블록에 할당된 베이스 양자화 파라미터 값에 오프 셋 값을 가감해 주고 현재 버퍼 충만도(Current Buffer Fullness; CBF) 값을 이용하여 상기 제1 블록 및 상기 제2 블록의 양자화 파라미터 값을 조절하고 있다. 다만, 하나의 CBF 값을 이용하여 상기 제1 블록 및 상기 제2 블록의 양자화 파라미터 값을 같이 조절하기 때문에 상기 제1 블록의 화질이 다운되는 경우가 존재한다. 따라서, 관심 영역에 대응하는 블록의 화질이 다운되지 않도록 하는 기술의 필요성이 대두되고 있다.
본 발명이 해결하고자 하는 기술적 과제는 관심 영역에 대응하는 블록의 양자화 파라미터 값과 비관심 영역에 대응하는 블록의 양자화 파라미터 값을 조절할 때 서로 다른 CBF 값을 이용하여 조절하여 관심 영역에 대응하는 블록의 화질이 다운되는 것을 방지하는 것이다.
본 발명이 해결하고자 하는 기술적 과제는 다중 가상 버퍼 각각에 저장된 CBF 값에 기초하여 각각의 영역에 대응하는 블록의 양자화 파라미터 값을 조절하여 레이트 제어의 정밀도를 높이는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 영상 부호화 장치는, 입력 영상에 포함된 프레임을 복수의 블록으로 분할하는 파티셔닝 유닛 및 관심 영역에 대한 제1 CBF(current buffer fullness) 값에 기초하여 상기 복수의 블록 중 상기 관심 영역에 대응하는 블록에 대한 제1 양자화 파라미터 값을 조절하고, 비관심 영역에 대한 제2 CBF 값에 기초하여 상기 복수의 블록 중 상기 비관심 영역에 대응하는 블록에 대한 제2 양자화 파라미터 값을 조절하는 레이트 제어 모듈을 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 영상 부호화 장치는, 입력 영상에 포함된 프레임을 제1 블록 및 상기 제1 블록과 인접하는 제2 블록을 포하하는 복수의 블록으로 분할하는 파티셔닝 유닛 및 상기 복수의 블록 각각에 대한 양자화 파라미터 값을 결정하는 레이트 제어 모듈을 포함하고, 상기 레이트 제어 모듈은, 제1 CBF(current buffer fullness) 값에 기초하여 상기 제1 블록의 제1 양자화 파라미터 값을 조절하고, 상기 제1 CBF 값과 다른 제2 CBF 값에 기초하여 상기 제2 블록의 제2 양자화 파라미터 값을 조절한다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 영상 부호화 장치는, 입력 영상에 포함된 프레임을 복수의 블록으로 분할하는 파티셔닝 유닛 및 상기 복수의 블록 각각에 대한 양자화 파라미터 값을 결정하는 레이트 제어 모듈을 포함하고, 상기 레이트 제어 모듈은, 현재 부호화되는 제1 블록이 관심 영역에 대응하는 블록인 경우, 상기 제1 블록에 대한 부호화를 수행한 후 상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록의 타겟 비트 수에 기초하여 상기 관심 영역에 대한 제1 CBF(current buffer fullness) 값을 업데이트하고, 상기 제1 블록이 비관심 영역에 대응하는 블록인 경우, 상기 제1 블록에 대한 부호화를 수행한 후 상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록의 타겟 비트 수에 기초하여 상기 비관심 영역에 대한 제2 CBF 값을 업데이트한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 본 발명의 몇몇 실시예에 따른 영상 부호화 시스템을 도시한 블록도이다.
도 2는 도 1에 도시된 영상 부호화 시스템에 포함된 인코더의 예시적인 블록도이다.
도 3은 몇몇 실시예에 따른 영상 부호화 장치에서 현재 부호화하는 블록의 양자화 파라미터 값을 조절하고 CBF 값을 업데이트하는 방법을 나타내는 순서도이다.
도 4는 몇몇 실시예에 따른 영상 부호화 장치에서 관심 영역에 대응하는 블록과 비관심 영역에 대응하는 블록을 구분하는 방법의 일례를 설명하기 위해 도시한 도면이다.
도 5는 몇몇 실시예에 따른 영상 부호화 장치에서 양자화 파라미터 값을 조절할 때 사용되는 CBF 값들이 저장된 가상 버퍼를 설명하기 위해 도시한 도면이다.
도 6 내지 17은 몇몇 실시예에 따른 영상 부호화 장치에서 복수의 블록들 각각의 양자화 파라미터 값을 조절하는 방법 및 CBF 값을 업데이트하는 방법의 일례들을 설명하기 위한 도면들이다.
도 18은 몇몇 실시예에 따른 영상 부호화 장치에서 양자화 파라미터 값을 조절할 때 사용되는 CBF 값들이 저장된 가상 버퍼를 설명하기 위해 도시한 도면이다.
도 1은 본 발명의 몇몇 실시예에 따른 영상 부호화 시스템을 도시한 블록도이다.
도 1을 참조하면, 영상 부호화 시스템(10)은 2D 또는 3D 그래픽 데이터를 처리하고, 처리된 데이터를 디스플레이할 수 있는 다양한 장치를 의미할 수 있다.
예를 들어, 영상 부호화 시스템(10)은, TV, DTV(Digital TV), IPTV(internet protocol TV), PC(personal computer), 데스크 탑 컴퓨터, 랩-탑(lap-top) 컴퓨터, 컴퓨터 워크스테이션(computer workstation), 태블릿(tablet) PC, 비디오 게임 플랫폼(또는 비디오 게임 콘솔), 서버 및 모바일 컴퓨팅 장치 중의 하나로 구현될 수 있다. 여기서, 모바일 컴퓨팅 장치는 이동 전화기, 스마트 폰(smart phone), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), 모바일 인터넷 장치(mobile internet device(MID)), 웨어러블 컴퓨터, 사물 인터넷(Internet of Things; IOT) 장치, 만물 인터넷(Internet of Everything; IOE) 장치 또는 e-book으로 구현될 수 있다.
영상 부호화 시스템(10)은 비디오 소스(50), 영상 부호화 장치(100), 디스플레이(200), 입력 장치(210) 및 제2 메모리(220)를 포함할 수 있다. 여기서, 영상 부호화 장치(100)는 시스템 온 칩(System On Chip; SoC)으로 구성될 수 있다. 도 1에 도시된 구성요소들은 영상 부호화 시스템(10)을 구현하는데 있어서 필수적인 것은 아니어서, 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
비디오 소스(50)는 예를 들어, CCD 또는 CMOS 이미지 센서를 탑재한 카메라로 구현될 수 있다. 비디오 소스(50)는 피사체를 촬영하고, 상기 피사체에 대한 제1 데이터(IM)를 생성하고, 생성된 제1 데이터(IM)를 영상 부호화 장치(100)에 제공할 수 있다. 제1 데이터(IM)는 정지 영상 데이터 또는 동영상 데이터일 수 있다. 몇몇 실시예에서, 비디오 소스(50)는 이와 달리 호스트(HOST)에 포함될 수 있다. 이 경우, 제1 데이터(IM)는 호스트로부터 제공된 영상 데이터일 수 있다.
영상 부호화 장치(100)는 영상 부호화 시스템(10)의 동작을 전반적으로 제어할 수 있다. 예컨데, 영상 부호화 장치(100)는 몇몇 실시예에 따른 동작들을 수행할 수 있는 직접 회로(integrated circuit; IC), 마더보드, 애플리케이션 프로세서(Application Processor; AP) 또는 모바일(mobile) AP를 포함할 수 있다. 영상 부호화 장치(100)는 비디오 소스(50)로부터 출력된 제1 데이터(IM)를 처리하고, 처리된 데이터를 디스플레이(200)를 통해 디스플레이하거나, 제2 메모리(220)에 저장하거나, 다른 데이터 처리 시스템으로 전송할 수 있다.
영상 부호화 장치(100)는 전-처리 회로(110), 영상 부호화 장치(120, Encoder), 프로세서(130), 제1 메모리(140), 디스플레이 컨트롤러(150), 메모리 컨트롤러(160), 버스(170), 모뎀(180) 및 사용자 인터페이스(190)를 포함할 수 있다. 다만, 상술한 구성 요소들은 영상 부호화 장치(100)를 구현하는데 있어서 필수적인 것은 아니어서, 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
인코더(120), 프로세서(130), 제1 메모리(140), 디스플레이 컨트롤러(150), 메모리 컨트롤러(160), 모뎀(180) 및 사용자 인터페이스(190)는 버스(170)를 통해 서로 데이터를 주고 받을 수 있다. 예시적으로, 버스(170)는 PCI 버스(Peripheral Component Interconnect Bus), PCI 익스프레스(PCI Express; PCIe) 버스, AMBA(Advanced High Performance Bus), AHB(Advanced High Performance Bus), APB(Advanced Peripheral Bus), AXI(Advanced Extensible Interface) 버스 및 이들의 어느 조합으로부터 선택된 적어도 하나로 구현될 수 있으나 이에 한정되는 것은 아니다.
전-처리 회로(110)는 비디오 소스(50)로부터 출력된 제1 데이터(IM)를 수신할 수 있다. 전-처리 회로(110)는 수신된 제1 데이터(IM)를 처리하고, 처리 결과에 따라 생성된 제2 데이터(FI)를 인코더(120)에 제공할 수 있다. 영상 부호화 장치(100)가 구동되는 환경에서, 제1 데이터(IM)와 제2 데이터(FI)는 예를 들어, 프레임(또는 픽쳐) 단위로 제공될 수 있다. 예를 들어, 제2 데이터(FI)는 특정 시점을 기준으로, 과거 프레임(PF) 데이터, 현재 프레임(CF) 데이터, 미래 프레임(FF) 데이터를 포함하는 데이터 집합일 수 있다. 이하, 설명의 편의를 위해, 제2 데이터(FI)에 포함된 현재 프레임(CF)을 부호화하는 경우에 한정하여 설명한다.
전-처리 회로(110)는 예를 들어, 이미지 신호 프로세서(Image Signal Processor; ISP)를 포함할 수 있다. 예컨대. ISP는 제1 데이터 포맷을 갖는 제1 데이터(IM)를 제2 데이터(FI)로 변환할 수 있다.
예를 들어, 제1 데이터(IM)는 베이어(Bayer) 패턴을 갖는 데이터이고 제2 데이터(FI)는 YUV 데이터일 수 있으나 이에 한정되는 것은 아니다.
도 1에서 전-처리 회로(110)는 영상 부호화 장치(100) 내부에 구현된 것으로 도시되어 있으나, 실시예가 이에 한정되는 것은 아니고 전-처리 회로(110)는 영상 부호화 장치(100) 외부에 구현될 수도 있다.
인코더(120)는 제2 데이터(FI)에 포함된 현재 프레임(CF)의 복수의 블록들 각각에 대한 부호화 동작을 수행할 수 있다.
상기 부호화 동작은 JPEG(Joint Picture Expert Group), MPEG (Motion Picture Expert Groups), MPEG-2, MPEG-4, VC-1, H. 264, H. 265, 또는 HEVC(High Efficiency Video Coding) 등의 영상 데이터 부호화 기술을 이용 할 수 있으나 이에 한정되는 것은 아니다.
인코더(120)는 하드웨어 코덱 또는 소프트웨어 코덱으로 구현될 수 있다. 소프트웨어 영상 부호화 장치는 프로세서(130)에 의해 실행될 수 있다.
프로세서(130)는 영상 부호화 장치(100)의 동작을 제어할 수 있다.
프로세서(130)는 하나 또는 그 이상의 애플리케이션들(예를 들어, 소프트웨어 애플리케이션들)을 실행할 수 있도록 사용자 입력을 제공받을 수 있다.
프로세서(130)에 의해 실행되는 애플리케이션들 중 일부는 영상 통화 애플리케이션일 수 있다. 또한, 프로세서(130)에 의해 실행되는 애플리케이션들은 운영 체제(operating system; OS). 워드프로세서 애플리케이션, 미디어 플레이어 애플리케이션, 비디오 게임 애플리케이션 및/또는 그래픽 사용자 인터페이스(Graphic User Interface; GUI) 애플리케이션을 포함할 수 있으나 이에 한정되는 것은 아니다.
제1 메모리(140)는 영상 부호화 시 이용되는 관심 영역 정보를 저장할 수 있다. 관심 영역 정보는 입력 영상의 현재 프레임(CF) 내에서 관심 영역(Region of Interest; ROI)에 대응하는 블록과 비관심 영역(non-ROI)에 대응하는 블록이 어느 블록인지를 나타내는 정보일 수 있다.
제1 메모리(140)는 메모리 컨트롤러(160)의 제어 하에, 입력 영상의 현재 프레임(CF)에 대응하는 관심 영역 정보를 인코더(120)에 전송할 수 있다.
메모리 컨트롤러(160)는 인코더(120) 또는 프로세서(130)의 제어 하에 인코더(120)에서 부호화된 데이터 또는 프로세서(130)로부터 출력된 데이터를 제2 메모리(220)에 라이트할 수 있다.
제1 메모리(140)는 SRAM(Static Random Access Memory)과 같은 휘발성 메모리로 구현될 수 있다. 휘발성 메모리는 RAM(random access memory), SRAM(static RAM), DRAM (dynamic RAM), SDRAM(synchronous DRAM), T-RAM(thyristor RAM), Z-RAM(zero capacitor RAM), 또는 TTRAM(Twin Transistor RAM)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니고 제1 메모리(140)는 비휘발성 메모리로 구현될 수도 있다.
제2 메모리(220)는 비휘발성 메모리로 구현될 수 있다. 비휘발성 메모리는 EEPROM(electrically erasable programmable read-only memory), 플래시(flash) 메모리, MRAM(magnetic RAM), 스핀전달토크 MRAM (spin-transfer torque MRAM), FeRAM(ferroelectric RAM), PRAM(phase change RAM), 또는 RRAM(resistive RAM)으로 구현될 수 있다. 또한, 비휘발성 메모리는 MMC(multimedia card), eMMC(embedded MMC), UFS(universal flash storage), 솔리드 스테이트 드라이브(solid state drive or solid state disk(SSD)), USB 플래시 드라이브, 또는 하드디스크 드라이브(hard disk drive; HDD)로 구현될 수 있다. 다만, 이에 한정되는 것은 아니고 제2 메모리(220)는 휘발성 메모리로 구현될 수도 있다.
도 1에서는 영상 부호화 장치(100)의 외부에 제2 메모리(220)가 도시되어 있으나, 이에 한정되는 것은 아니고 제2 메모리(220)는 영상 부호화 장치(100)의 내부에 구현될 수도 있다.
디스플레이 컨트롤러(150)는, 인코더(120) 또는 프로세서(130)로부터 출력된 데이터를 디스플레이(200)로 전송할 수 있다. 디스플레이(200)는 모니터, TV 모니터, 프로젝션 장치(projection device), TFT-LCD(thin film transistorliquid crystal display), LED(light emitting diode) 디스플레이, OLED(organic LED) 디스플레이, AMOLED(active-matrix OLED) 디스플레이, 또는 플렉시블(flexible) 디스플레이로 구현될 수 있다.
예컨대, 디스플레이 컨트롤러(150)는 MIPI 디스플레이 시리얼 인터페이스 (display serial interface; DSI)를 통해 데이터를 디스플레이(200)로 전송할 수 있다.
입력 장치(210)는 사용자로부터 입력된 사용자 입력을 수신하고, 상기 사용자 입력에 응답하여 입력 신호를 사용자 인터페이스(190)로 전송할 수 있다.
입력 장치(210)는 터치 패널(touch panel), 터치 스크린(touch screen), 음성 인식기(voice recognizer), 터치 펜, 키보드, 마우스, 트랙 포인트 등으로 구현될 수 있으나 이에 한정되는 것은 아니다. 예컨대, 입력 장치(210)가 터치 스크린인 경우에, 입력 장치(210)는 터치 패널과 터치 패널 컨트롤러를 포함할 수 있다. 입력 장치(210)는 디스플레이(200)와 접속될 수 있고, 디스플레이(200)와 분리되어 구현될 수도 있다.
입력 장치(210)는 입력 신호를 사용자 인터페이스(190)로 전송할 수 있다.
사용자 인터페이스(190)는 입력 장치(210)로부터 입력 신호를 수신하고, 상기 입력 신호에 의해 발생되는 데이터를 프로세서(130)로 전송할 수 있다.
모뎀(180)은 인코더(120) 또는 프로세서(130)에 의해 인코딩된 데이터를 무선 통신 기술을 이용하여 외부로 출력할 수 있다. 모뎀(180)은 예를 들어, 와이파이(WI-FI), 와이브로(WIBRO), 3G 무선통신, LTETM(long term evolution), LTE-A(long term evolution-advanced), 또는 광대역(broadband) LTE-A 등의 방식을 채용할 수 있으나, 이에 한정되는 것은 아니다. 도 2는 도 1에 도시된 영상 부호화 시스템에 포함된 인코더의 예시적인 블록도이다.
도 2에서 인코더(120)는 파티셔닝 유닛(121), 예측 모듈(122), 압축 모듈(123), 레이트 제어 모듈(124), 디코딩 픽쳐 버퍼(Decoding Picture Buffer; DPB, 126), 합산기(125, 127) 및 엔트로피 인코딩 유닛(128)을 포함할 수 있다. 도 2에 도시된 구성요소들은 인코더(120)를 구현하는데 있어서 필수적인 것은 아니어서, 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
파티셔닝 유닛(121)은 제2 데이터(FI)에 포함된 현재 프레임(도 1의 CF)을 복수의 블록으로 구분할 수 있다. 이 경우, 복수의 블록은 관심 영역에 대응하는 블록을 적어도 하나 포함할 수도 있고, 비관심 영역에 대응하는 블록을 적어도 하나 포함할 수도 있다. 상기 복수의 블록 각각이 관심 영역에 대응하는 블록인지 아니면 비관심 영역에 대응하는 블록인지 여부는 제1 메모리(도 1의 140)에 저장되어 있는 관심 영역 정보에 기초하여 구분될 수 있다.
예측 모듈(122)은 입력 영상에 대한 인트라 예측 및 인터 예측 중 적어도 하나를 수행할 수 있다. 인트라 예측은 현재 프레임 외의 다른 프레임을 참조하지 않고 예측하는 것이고, 인터 예측은 현재 프레임 외에 다른 프레임을 참조하여 예측하는 것일 수 있다.
레이트 제어 모듈(124)은 현재 프레임에 포함된 복수의 블록 각각의 양자화 파라미터(QP) 값을 조절할 수 있다. 이 경우, 레이트 제어 모듈(124)은 관심 영역에 대응하는 블록의 양자화 파라미터 값과 비관심 영역에 대응하는 블록의 양자화 파라미터 값을 다르게 설정할 수 있다. 여기서, 비관심 영역에 대응하는 블록에 설정된 양자화 파라미터 값이 관심 영역에 대응하는 블록에 설정된 양자화 파라미터 값보다 클 수 있다.
레이트 제어 모듈(124)은 관심 영역에 대응하는 블록의 양자화 파라미터 값을 설정할 때 제1 CBF(Current Buffer Fullness) 값을 이용하여 양자화 파라미터 값을 조절할 수 있다. 또한, 레이트 제어 모듈(124)은 비관심 영역에 대응하는 블록의 양자화 파라미터 값을 설정할 때 제2 CBF 값을 이용하여 양자화 파라미터 값을 조절할 수 있다. 여기서, 제1 CBF 값은 관심 영역에 대응하는 블록과 관련된 값이고, 제2 CBF 값은 비관심 영역에 대응하는 블록과 관련된 값일 수 있다. 따라서, 제1 CBF 값과 제2 CBF 값은 서로 독립적일 수 있다.
레이트 제어 모듈(124)은 현재 블록의 부호화를 수행한 후 제1 CBF 값 또는 제2 CBF 값을 업데이트할 수 있다. 제1 CBF 값은 관심 영역에 대응하는 블록에 의해 발생된 비트 수와 관심 영역에 대응하는 블록에 할당된 타겟 비트 수에 기초하여 업데이트될 수 있다. 제2 CBF 값은 비관심 영역에 대응하는 블록에 의해 발생된 비트 수와 관심 영역에 대응하는 블록에 할당된 타겟 비트 수에 기초하여 업데이트될 수 있다.
압축 모듈(123)은 변환 모듈(123a), 양자화 유닛(123b), 역양자화 유닛(123c), 역변환 모듈(123d)을 포함할 수 있다.
압축 모듈(123)은 비관심 영역의 양자화 파라미터 값 및 관심 영역의 양자화 파라미터 값에 기초하여 입력 영상에 대한 부호화 동작을 수행하여 압축 데이터를 형성할 수 있다.
변환 모듈(123a)은 잔차 블록 데이터로부터 변환된 블록 데이터를 형성할 수 있다. 변환 모듈(123a)은, 이산 코사인 변환(Discrete Cosine Transform; DCT) 또는 웨이브렛 변환(wavelet transform)등을 사용할 수 있다. 변환 모듈(123a)에서 생성된 변환 계수들은 양자화 유닛(123b)으로 전송될 수 있다.
양자화 유닛(123b)은 변환 계수들을 양자화하여 비트 수를 감소시킬 수 있다. 이 과정에서, 앞서 설명한 레이트 제어 모듈(124)은 관심 영역에 해당하는 블록과, 비관심 영역에 해당하는 블록에 대한 양자화 파라미터(Quantization Parameter) 값을 조정함으로써 양자화 정도를 수정할 수 있다.
역양자화부(123c), 역변환부(158) 및 가산부(127)는 손실 부호화된 데이터를 역으로 복호화하여 재구성 영상을 복원하기 위해 사용될 수 있다. 재구성 영상들은 DPB(126)에 저장되어 참조 영상으로 이용될 수 있다.
엔트로피 인코딩 유닛(128)은 압축 데이터를 엔트로피 코딩할 수 있다. 예를 들어, 엔트로피 인코딩 유닛(128)은 콘텍스트 적응 가변 길이 코딩(Context-Adaptive Variable-Length Coding; CAVLC), 콘텍스트 적응 이진 산술 코딩(Context-Adaptive Binary Arithmetic Coding; CABAC), 확률 인터벌 구획 엔트로피(Probability Interval Partitioning Entropy; PIPE) 또는 다른 엔트로피 인코딩 기술을 수행할 수도 있다. 엔트로피 인코딩 유닛(128)에 의한 엔트로피 인코딩에 후속하여 인코딩된 비트 스트림이 형성될 수 있고, 디코더로 송신되거나 제2 메모리(도 1의 220)에 저장될 수 있다.
엔트로피 인코딩 유닛(128)은 현재 부호화된 블록에 의해 발생된 비트 수에 대한 정보를 레이트 제어 모듈(124)에 전송할 수도 있다.
도 2의 영상 부호화 장치의 부호화 방식은 예를 들어, HEVC, VP8, VP9, MPEG-2, MPEG-4, H. 263 및 H. 264 중 어느 하나일 수 있다. 다만, 이에 한정되는 것은 아니다.
도 3 내지 도 18과 관련하여 도 1 및 도 2에서 상술한 바와 중복되는 내용은 다시 설명하지 않으며 이하 차이점을 중심으로 몇몇 실시예에 대해 설명한다.
도 3은 몇몇 실시예에 따른 영상 부호화 장치에서 현재 부호화하는 블록의 양자화 파라미터 값을 조절하고 CBF 값을 업데이트하는 방법을 나타내는 순서도이다. 도 4는 몇몇 실시예에 따른 영상 부호화 장치에서 관심 영역에 대응하는 블록과 비관심 영역에 대응하는 블록을 구분하는 방법의 일례를 설명하기 위해 도시한 도면이다.
도 3을 참조하면, 파티셔닝 유닛(121)은 입력 영상에 포함된 현재 프레임을 복수의 블록으로 분할할 수 있다. 여기서, 파티셔닝 유닛(121)은 제1 메모리(140)에 포함된 관심 영역 정보에 기초하여 상기 복수의 블록을 관심 영역에 대응하는 블록 및 비관심 영역에 대응하는 블록으로 구분할 수 있다(S310).
예를 들어, 도 4를 참조하면, 파티셔닝 유닛(121)은 관심 영역 정보에 기초하여 관심 영역에 대응하는 블록(R)들과 비관심 영역에 대응하는 블록(NR)들을 구분할 수 있다.
관심 영역 정보는 관심 영역 맵(400)을 포함할 수 있다. 관심 영역 맵(400)에는 현재 프레임에 포함된 복수의 블록 중 어느 블록이 관심 영역에 대응하는 블록(R)인지에 대한 정보가 포함되어 있을 수 있다. 또한, 관심 영역 맵(400)에는 현재 프레임에 포함된 복수의 블록 중 어느 블록이 비관심 영역에 대응하는 블록(NR)인지에 대한 정보가 포함되어 있을 수도 있다.
예를 들어, 파티셔닝 유닛(121)은 관심 영역 맵(400)에 기초하여 제1 영역(410) 내에 포함되는 블록들은 관심 영역에 대응하는 블록으로 인식하고, 제2 영역(420) 내에 포함되는 블록들은 비관심 영역에 대응하는 블록으로 인식할 수 있다.
몇몇 실시예에 따르면, 레이트 제어 모듈(124)은 현재 프레임의 타겟 비트 수와 복수의 블록의 개수를 이용하여 복수의 블록 각각의 타겟 비트 수를 산출할 수도 있다. 구체적으로, 레이트 제어 모듈(124)은 예를 들어, 현재 프레임의 타겟 비트 수, 복수의 블록의 개수, 복수의 블록에 포함된 관심 영역에 대응하는 블록들의 개수, 복수의 블록에 포함된 비관심 영역에 대응하는 블록들의 개수 등을 이용하여 복수의 블록 각각의 타겟 비트 수를 산출할 수 있다. 이 경우, 관심 영역에 대응하는 블록에 할당되는 타겟 비트 수는 비관심 영역에 대응하는 블록에 할당되는 타겟 비트 수보다 클 수 있다.
일례로, 레이트 제어 모듈(124)은 현재 프레임의 타겟 비트 수에 현재 프레임이 포함하는 블록의 개수를 나누어 각각의 블록에 할당되는 타겟 비트 수를 결정할 수 있다. 다만, 레이트 제어 모듈(124)은 관심 영역에 대응하는 블록에 웨이트(weight)를 주어, 비관심 영역에 대응하는 블록보다 많은 타겟 비트 수가 관심 영역에 대응하는 블록들에 할당되도록 할 수 있다.
복수의 블록 각각의 타겟 비트 수를 산출하는 방법은 상술한 예시에 한정되는 것은 아니고 다양한 방법을 통해 산출될 수 있다. 다만, 다른 방법을 통해 타겟 비트 수를 산출하더라도 관심 영역에 대응하는 블록에는 비관심 영역에 대응하는 블록보다 많은 비트 수가 할당될 수 있다.
도 3을 다시 참조하면, 레이트 제어 모듈(124)은 현재 부호화되는 블록이 관심 영역에 대응하는 블록인지 여부를 인식할 수 있다(S320).
일례로, 레이트 제어 모듈(124)은 파티셔닝 유닛(121)으로부터 현재 부호화되는 블록이 관심 영역에 대응하는 블록인지 아니면 비관심 영역에 대응하는 블록인지에 대한 정보를 수신할 수 있다.
레이트 제어 모듈(124)은 현재 부호화되는 블록이 관심 영역에 대응하는 블록이라고 인식한 경우(S320, Y), 제1 CBF(current buffer fullness) 값에 기초하여 현재 부호화되는 블록의 양자화 파라미터 값을 조절할 수 있다(S330). 이에 대한 설명은, 도 6 및 도 9를 참조하여 좀더 자세히 후술한다.
제1 CBF 값은 관심 영역에 대응하는 블록들에 할당된 타겟 비트를 기준으로 앞으로 몇 비트를 관심 영역에 대응하는 블록들에 할당할 수 있는지 확인할 수 있는 값일 수 있다.
양자화 유닛(123b)은 단계(S330)를 통해 발생된 양자화 파라미터 값을 이용하여 현재 부호화되는 블록(관심 영역에 대응하는 블록)을 양자화할 수 있다. 한편, 엔트로피 인코딩 유닛(128)은 현재 부호화되는 블록에 의해 발생된 비트 수에 대한 정보를 레이트 제어 모듈(124)에 전송할 수 있다.
레이트 제어 모듈(124)은 단계(S330)를 통해 조절된 양자화 파라미터 값을 이용하여 관심 영역에 대응하는 현재 블록의 부호화를 수행한 후, 부호화된 블록에 할당된 타겟 비트 수 및 부호화된 블록에 의해 발생된 비트 수에 기초하여 제1 CBF 값을 업데이트할 수 있다(S340).
예를 들어, 레이트 제어 모듈(124)은 관심 영역에 대응하는 블록의 부호화를 수행한 후, 부호화된 블록에 의해 발생된 비트 수에서 부호화된 블록에 할당된 타겟 비트 수를 차감한 값을 이용하여 제1 CBF 값을 업데이트할 수 있다. 다만, 이에 대한 설명은, 도 7, 8, 10 및 11을 참조하여 좀더 자세히 후술한다.
한편, 레이트 제어 모듈(124)은 현재 부호화되는 블록이 관심 영역에 대응하는 블록이 아니라고 인식한 경우(S320, N), 현재 부호화되는 블록이 비관심 영역이라고 인식할 수 있다. 그리고, 레이트 제어 모듈(124)은 제1 CBF 값과 상이한 제2 CBF 값에 기초하여 현재 부호화되는 블록의 양자화 파라미터 값을 조절할 수 있다(S350). 이에 대한 설명은, 도 12 및 도 15를 참조하여 좀더 자세히 후술한다.
제2 CBF 값은 비관심 영역에 대응하는 블록들에 할당된 타겟 비트를 기준으로 앞으로 몇 비트를 비관심 영역에 대응하는 블록에 할당할 수 있는지 확인할 수 있는 값일 수 있다.
양자화 유닛(123b)은 단계(S350)를 통해 발생된 양자화 파라미터 값을 이용하여 현재 부호화되는 블록(비관심 영역에 대응하는 블록)을 양자화할 수 있다. 한편, 엔트로피 인코딩 유닛(128)은 현재 부호화되는 블록에 의해 발생된 비트 수에 대한 정보를 레이트 제어 모듈(124)에 전달할 수 있다.
레이트 제어 모듈(124)은 단계(S330)를 통해 조절된 양자화 파라미터 값을 이용하여 비관심 영역에 대응하는 현재 블록의 부호화를 수행한 후, 부호화된 블록에 할당된 타겟 비트 수 및 부호화된 블록에 의해 발생된 비트 수에 기초하여 제2 CBF 값을 업데이트할 수 있다(S360).
예를 들어, 레이트 제어 모듈(124)은 비관심 영역에 대응하는 블록의 부호화를 수행한 후, 부호화된 블록에 의해 발생된 비트 수에서 부호화된 블록에 할당된 타겟 비트 수를 차감한 값을 이용하여 제2 CBF 값을 업데이트할 수 있다. 이에 대한 설명은, 도 13, 14, 16 및 17을 참조하여 좀더 자세히 후술한다.
도 5는 몇몇 실시예에 따른 영상 부호화 장치에서 양자화 파라미터 값을 조절할 때 사용되는 CBF 값들이 저장된 가상 버퍼를 설명하기 위해 도시한 도면이다.
도 5를 참조하면, 레이트 제어 모듈(124)은 제1 가상 버퍼(510) 및 제2 가상 버퍼(520)를 포함할 수 있다. 제1 가상 버퍼(510)는 제1 CBF 값이 저장되는 영역일 수 있고, 제2 가상 버퍼(520)는 제2 CBF 값이 저장되는 영역일 수 있다.
제1 가상 버퍼(510) 및 제2 가상 버퍼(520)는 하드웨어적으로 구현될 수도 있고, 소프트웨어적으로 구현될 수도 있다.
레이트 제어 모듈(124)은 1 영역(410)에 포함된 관심 영역에 대응하는 블록(R)들을 부호화할 때, 제1 가상 버퍼(510)에 저장된 제1 CBF 값을 이용하여 관심 영역에 대응하는 블록(R)들의 양자화 파라미터 값을 조절할 수 있다.
레이트 제어 모듈(124)은 제2 영역(420)에 포함된 비관심 영역에 대응하는 블록(NR)들을 부호화할 때, 제2 가상 버퍼(520)에 저장된 제2 CBF 값을 이용하여 비관심 영역에 대응하는 블록(NR)들의 양자화 파라미터 값을 조절할 수 있다.
몇몇 실시예에 따르면, 제1 가상 버퍼(510)에 저장된 제1 CBF 값은 제2 가상 버퍼(520)에 저장된 제2 CBF 값과 독립적일 수 있다. 따라서, 레이트 제어 모듈(124)은 관심 영역에 대응하는 블록의 양자화 파라미터 값을 조절할 때 제1 CBF 값만 이용하고, 비관심 영역에 대응하는 블록의 양자화 파라미터 값을 조절할 때 제2 CBF 값만 이용할 수 있다.
도 6 내지 17은 몇몇 실시예에 따른 영상 부호화 장치에서 복수의 블록들 각각의 양자화 파라미터 값을 조절하는 방법 및 CBF 값을 업데이트하는 방법의 일례들을 설명하기 위한 도면들이다.
도 6을 참조하면, 레이트 제어 모듈(124)은 현재 프레임(600)에 포함된 복수의 블록 중 제1 블록(601)을 부호화할 때, 제1 가상 버퍼(510) 및 제2 가상 버퍼(520)를 초기화할 수 있다. 여기서, 제1 블록(601)은 현재 프레임(600)에 포함된 복수의 블록 중 제일 처음에 부호화되는 블록일 수 있다.
제1 가상 버퍼(510) 및 제2 가상 버퍼(520)가 초기화될 경우, 제1 가상 버퍼(510)에 저장된 제1 CBF 값과 제2 가상 버퍼(520)에 저장된 제2 CBF 값이 초기화될 수 있다.
한편, 레이트 제어 모듈(124)은, 제1 블록(601)의 부호화를 수행할 때, 제1 블록(601) 내부에 포함된 이미지의 복잡도, 이전 프레임에 포함된 블록에 할당된 양자화 파라미터 값, 제1 블록(601)에 할당된 타겟 비트 수 등을 이용하여 제1 블록(601)의 양자화 파라미터 값을 결정할 수 있다. 이 경우, 레이트 제어 모듈(124)은, 제1 블록(601)이 관심 영역에 대응하는 블록(R)이라고 인식한 경우, 제1 CBF 값을 이용하여 제1 블록(601)에 결정된 양자화 파라미터 값을 조절할 수 있다.
다만, 상술한 바와 같이 제1 CBF 값이 초기화되었으므로, 레이트 제어 모듈(124)은 상기 결정된 양자화 파라미터 값을 제1 블록(601)에 적용할 수 있다.
예를 들어, 도 7 및 도 8을 참조하면, 레이트 제어 모듈(124)은 현재 프레임(600)에 포함된 제1 블록(601)에 대해 양자화 파라미터 값을 28로 결정할 수 있다.
한편, 레이트 제어 모듈(124)은 관심 영역에 대응하는 제1 블록(601)에 대한 부호화를 수행한 후, 제1 블록(601)에 의해 발생된 비트 수에서 제1 블록(601)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제1 가상 버퍼(510)에 저장된 제1 CBF 값을 업데이트할 수 있다.
도 7과 같이 제1 블록(601)에 의해 발생된 비트 수가 제1 블록(601)에 할당된 타겟 비트 수보다 큰 경우, 상기 차감한 값은 양의 값을 가질 수 있다. 따라서, 제1 가상 버퍼(510)에는 상기 양의 값이 제1 CBF 값(710)으로 저장될 수 있다.
한편, 도 8과 같이 현재 프레임(600)에 포함된 제1 블록(601)에 의해 발생된 비트 수가 제1 블록(601)에 할당된 타겟 비트 수보다 작은 경우, 상기 차감한 값은 음의 값을 가질 수 있다. 따라서, 제1 가상 버퍼(510)에는 상기 음의 값이 제1 CBF 값(710)으로 저장될 수 있다.
도 9를 참조하면, 레이트 제어 모듈(124)은, 현재 프레임(600)에 포함된 제2 블록(602)의 부호화를 수행할 때, 제2 블록(602) 내부에 포함된 이미지의 복잡도, 제2 블록(602)이 부호화되기 이전에 부호화된 블록(601)에 할당된 양자화 파라미터 값, 제2 블록(602)에 할당된 타겟 비트 수 등을 이용하여 제2 블록(602)의 양자화 파라미터 값을 결정할 수 있다. 이 경우, 레이트 제어 모듈(124)은, 제2 블록(602)이 관심 영역에 대응하는 블록(R)이라고 인식한 경우, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)을 이용하여 제2 블록(602)에 결정된 양자화 파라미터 값을 조절할 수 있다.
일례로, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)이 양의 값을 가지고 있기 때문에 레이트 제어 모듈(124)은 제2 블록(602)에 결정된 양자화 파라미터 값이 커지도록 조절할 수 있다.
다른 일례로, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)이 기 설정된 양의 값을 초과하는 경우 레이트 제어 모듈(124)은 제2 블록(602)에 결정된 양자화 파라미터 값이 커지도록 조절할 수 있다.
도 10을 참조하면, 레이트 제어 모듈(124)은 현재 프레임(600)에 포함된 제2 블록(602)에 대해 양자화 파라미터 값을 28로 결정할 수 있다. 그리고, 레이트 제어 모듈(124)은 상기 결정된 양자화 파라미터 값을 제1 CBF 값에 기초하여 조절하여 제2 블록(602)의 양자화 파라미터 값이 29가 되도록 조절할 수 있다.
한편, 레이트 제어 모듈(124)은 관심 영역에 대응하는 제2 블록(602)에 대한 부호화를 수행한 후, 제2 블록(602)에 의해 발생된 비트 수에서 제1 블록(602)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)을 업데이트할 수 있다.
양자화 파라미터 값이 제1 CBF 값에 의해 조절된 경우, 제2 블록(602)에 의해 발생되는 비트 수는 제2 블록(602)에 할당된 타겟 비트 수 보다 작을 수 있다. 이 경우, 레이트 제어 모듈(124)은 제2 블록(602)에 의해 발생되는 비트 수에 제2 블록(602)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제1 CBF 값(710)을 업데이트하여 제1 가상 버퍼(510)에 저장되어 있는 제1 CBF 값(710)을 도 10과 같이 감소시킬 수 있다.
다만, 현재 프레임(600)의 제2 블록(602) 내부에 포함된 이미지의 복잡도가 높아 도 11과 같이 제2 블록(602) 의해 발생되는 비트 수는 제2 블록(602)에 할당된 타겟 비트 수 보다 클 수도 있다. 이 경우, 레이트 제어 모듈(124)은 제2 블록(602)에 의해 발생되는 비트 수에 제2 블록(602)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제1 CBF 값(710)을 업데이트하여 제1 가상 버퍼(510)에 저장되어 있는 제1 CBF 값(710)을 도 11과 같이 증가시킬 수 있다.
도 12를 참조하면, 레이트 제어 모듈(124)은, 제3 블록(603)의 부호화를 수행할 때, 제3 블록(603) 내부에 포함된 이미지의 복잡도, 제3 블록(603)이 부호화되기 이전에 부호화된 블록(602)에 할당된 양자화 파라미터 값, 제3 블록(603)에 할당된 타겟 비트 수 등을 이용하여 제3 블록(603)의 양자화 파라미터 값을 결정할 수 있다. 이 경우, 레이트 제어 모듈(124)은, 제3 블록(603)이 비관심 영역에 대응하는 블록(NR)이라고 인식한 경우, 제2 가상 버퍼(520)에 저장된 제2 CBF 값을 이용하여 제3 블록(603)에 결정된 양자화 파라미터 값을 조절할 수 있다.
즉, 제2 블록(602) 및 제3 블록(603)은 서로 인접하는 블록임에도 불구하고, 레이트 제어 모듈(124)은 서로 다른 CBF 값을 이용하여 제2 블록(602) 및 제3 블록(603)의 양자화 파라미터 값을 조절할 수 있다.
한편, 도 6에서 상술한 바와 같이 제2 CBF 값이 초기화된 후 비관심 영역에 대응하는 블록이 부호화된 바가 없으므로, 레이트 제어 모듈(124)은 상기 결정된 양자화 파라미터 값을 제3 블록(603)에 적용할 수 있다.
또한, 제3 블록(603)은 비관심 영역에 대응하는 블록(NR)이기 때문에, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)은 제3 블록(603)에 결정된 양자화 파라미터 값을 조절하는데 사용되지 않을 수 있다.
도 13 및 도 14을 참조하면, 레이트 제어 모듈(124)은 현재 프레임(600)에 포함된 제3 블록(603)에 대해 양자화 파라미터 값을 34로 결정할 수 있다.
한편, 레이트 제어 모듈(124)은 비관심 영역에 대응하는 제3 블록(603)에 대한 부호화를 수행한 후, 제3 블록(603)에 의해 발생된 비트 수에서 제3 블록(603)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제2 가상 버퍼(520)에 저장된 제2 CBF 값(720)을 업데이트할 수 있다. 이 경우, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)은 업데이트되지 않는다.
도 13과 같이 제3 블록(603)에 의해 발생된 비트 수가 제3 블록(603)에 할당된 타겟 비트 수보다 큰 경우, 상기 차감한 값은 양의 값을 가질 수 있다. 따라서, 제2 가상 버퍼(520)에는 상기 양의 값이 제2 CBF 값(720)으로 저장될 수 있다.
한편, 도 14와 같이 제3 블록(603)에 의해 발생된 비트 수가 제3 블록(603)에 할당된 타겟 비트 수보다 작은 경우, 상기 차감한 값은 음의 값을 가질 수 있다. 따라서, 제2 가상 버퍼(520)에는 상기 음의 값이 제2 CBF 값(720)으로 저장될 수 있다.
도 15를 참조하면, 레이트 제어 모듈(124)은, 제4 블록(604)의 부호화를 수행할 때, 제4 블록(604) 내부에 포함된 이미지의 복잡도, 제4 블록(604)이 부호화되기 이전에 부호화된 블록(603)에 할당된 양자화 파라미터 값, 제4 블록(604)에 할당된 타겟 비트 수 등을 이용하여 제4 블록(604)의 양자화 파라미터 값을 결정할 수 있다. 이 경우, 레이트 제어 모듈(124)은, 제4 블록(604)이 비관심 영역에 대응하는 블록(NR)이라고 인식한 경우, 제2 가상 버퍼(520)에 저장된 제2 CBF 값(720)을 이용하여 제4 블록(604)에 결정된 양자화 파라미터 값을 조절할 수 있다.
일례로, 제2 가상 버퍼(520)에 저장된 제2 CBF 값(720)이 양의 값을 가지고 있기 때문에 레이트 제어 모듈(124)은 제4 블록(604)에 결정된 양자화 파라미터 값이 커지도록 조절할 수 있다.
다른 일례로, 제1 가상 버퍼(510)에 저장된 제2 CBF 값(720)이 기 설정된 양의 값을 초과하는 경우 레이트 제어 모듈(124)은 제4 블록(604)에 결정된 양자화 파라미터 값이 커지도록 조절할 수 있다.
제4 블록(604)은 비관심 영역에 대응하는 블록(NR)이기 때문에, 제1 가상 버퍼(510)에 저장된 제1 CBF 값(710)은 제4 블록(604)에 결정된 양자화 파라미터 값을 조절하는데 사용되지 않을 수 있다.
도 16을 참조하면, 레이트 제어 모듈(124)은 현재 프레임(600)에 포함된 제4 블록(604)에 대해 양자화 파라미터 값을 34로 결정할 수 있다. 그리고, 레이트 제어 모듈(124)은 상기 결정된 양자화 파라미터 값을 제2 CBF 값(720)에 기초하여 조절하여 제4 블록(604)의 양자화 파라미터 값이 35가 되도록 조절할 수 있다.
한편, 레이트 제어 모듈(124)은 비관심 영역에 대응하는 제4 블록(604)에 대한 부호화를 수행한 후, 제4 블록(604)에 의해 발생된 비트 수에서 제4 블록(604)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제2 가상 버퍼(520)에 저장된 제2 CBF 값(720)을 업데이트할 수 있다.
양자화 파라미터 값이 제2 CBF 값(720)에 의해 조절된 경우, 제4 블록(604) 의해 발생되는 비트 수는 제4 블록(604)에 할당된 타겟 비트 수 보다 작을 수 있다. 이 경우, 레이트 제어 모듈(124)은 제4 블록(604)에 의해 발생되는 비트 수에 제4 블록(604)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제2 CBF 값(720)을 업데이트하여 제2 가상 버퍼(520)에 저장되어 있는 제2 CBF 값(720)을 도 17과 같이 감소시킬 수 있다.
다만, 현재 프레임(600)의 제4 블록(604) 내부에 포함된 이미지의 복잡도가 높아 도 17과 같이 제4 블록(604) 의해 발생되는 비트 수는 제4 블록(604)에 할당된 타겟 비트 수 보다 클 수도 있다. 이 경우, 레이트 제어 모듈(124)은 제4 블록(604)에 의해 발생되는 비트 수에 제4 블록(604)에 할당된 타겟 비트 수를 차감한 값을 이용하여 제2 CBF 값(720)을 업데이트하여 제2 가상 버퍼(520)에 저장되어 있는 제2 CBF 값(720)을 도 17과 같이 증가시킬 수 있다.
도 18은 몇몇 실시예에 따른 영상 부호화 장치에서 양자화 파라미터 값을 조절할 때 사용되는 CBF 값들이 저장된 가상 버퍼를 설명하기 위해 도시한 도면이다.
도 18을 참조하면, 레이트 제어 모듈(124)은 제1 가상 버퍼(910), 제2 가상 버퍼(920) 및 제3 가상 버퍼(930)를 포함할 수 있다. 제1 가상 버퍼(510)는 제1 CBF 값이 저장되는 영역일 수 있고, 제2 가상 버퍼(520)는 제2 CBF 값이 저장되는 영역일 수 있고, 제3 가상 버퍼(530)는 제3 CBF 값이 저장되는 영역일 수 있다. 제1 CBF 값, 제2 CBF 값 및 제3 CBF 값은 서로 독립될 수 있다.
도 18에서는 관심 영역이 2개인 경우에 한정하여 설명하였으나, 이에 한정되는 것은 아니고, 관심 영역은 3개 이상이 될 수 있고, 레이트 제어 모듈(124)은 관심 영역의 개수만큼의 가상 버퍼를 포함할 수 있다.
한편, 제1 가상 버퍼(510), 제2 가상 버퍼(520) 및 제3 가상 버퍼(530)는 하드웨어적으로 구현될 수도 있고, 소프트웨어적으로 구현될 수도 있다.
레이트 제어 모듈(124)은 관심 영역 정보에 기초하여 현재 프레임에 포함된 복수의 블록을 관심 영역에 대응하는 블록, 서브 관심 영역에 대응하는 블록 및 비관심 영역에 대응하는 블록으로 구분할 수 있다. 여기서 서브 관심 영역은 관심 영역 보다 중요도가 떨어지고 비관심 영역보다 중요도가 높은 영역일 수 있다.
관심 영역 정보는 관심 영역 맵(800)을 포함할 수 있다. 관심 영역 맵(800)에는 현재 프레임에 포함된 복수의 블록 중 어느 블록이 관심 영역에 대응하는 블록(R)인지에 대한 정보가 포함되어 있을 수 있다. 또한, 관심 영역 맵(800)에는 현재 프레임에 포함된 복수의 블록 중 어느 블록이 서브 관심 영역에 대응하는 블록(SR)인지에 대한 정보가 포함되어 있을 수도 있다. 또한, 관심 영역 맵(800)에는 현재 프레임에 포함된 복수의 블록 중 어느 블록이 비관심 영역에 대응하는 블록(NR)인지에 대한 정보가 포함되어 있을 수도 있다.
레이트 제어 모듈(124)은 제1 영역(810)에 포함된 관심 영역에 대응하는 블록(R)들을 부호화할 때, 제1 가상 버퍼(510)에 저장된 제1 CBF 값을 이용하여 관심 영역에 대응하는 블록(R)들의 양자화 파라미터 값을 조절할 수 있다.
레이트 제어 모듈(124)은 제2 영역(420)에 포함된 서브 관심 영역에 대응하는 블록(SR)들을 부호화할 때, 제2 가상 버퍼(520)에 저장된 제2 CBF 값을 이용하여 서브 관심 영역에 대응하는 블록(SR)들의 양자화 파라미터 값을 조절할 수 있다.
레이트 제어 모듈(124)은 제3 영역(430)에 포함된 비관심 영역에 대응하는 블록(NR)들을 부호화할 때, 제3 가상 버퍼(520)에 저장된 제3 CBF 값을 이용하여 비관심 영역에 대응하는 블록(NR)들의 양자화 파라미터 값을 조절할 수 있다.
레이트 제어 모듈(124)은, 현재 부호화된 블록이 관심 영역에 대응하는 블록인 경우 제1 CBF 값을 업데이트할 수 있다. 레이트 제어 모듈(124)은 현재 부호화된 블록이 서브 관심 영역에 대응하는 블록인 경우 제2 CBF 값을 업데이트할 수 있다. 레이트 제어 모듈(124)은 현재 부호화된 블록이 비관심 영역에 대응하는 블록인 경우 제3 CBF 값을 업데이트할 수 있다.
상술한 몇몇 실시예에 따르면, 다중 가상 버퍼 각각에 저장된 CBF 값에 기초하여 각각의 영역에 대응하는 블록의 양자화 파라미터 값을 조절하여 레이트 제어의 정밀도를 높일 수 있다는 효과가 발생하게 된다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
50: 비디오 소스 100: 영상 부호화 장치
110: 전-처리 회로 120: 인코더
130: 프로세서 140, 220: 제1 메모리
150: 디스플레이 컨트롤러 160: 메모리 컨트롤러
170: 버스 180: 모뎀
190: 사용자 인터페이스 200: 디스플레이
210: 입력 장치

Claims (10)

  1. 입력 영상에 포함된 프레임을 복수의 블록으로 분할하는 파티셔닝 유닛; 및
    관심 영역에 대한 제1 CBF(current buffer fullness) 값에 기초하여 상기 복수의 블록 중 상기 관심 영역에 대응하는 블록에 대한 제1 양자화 파라미터 값을 조절하고, 비관심 영역에 대한 제2 CBF 값에 기초하여 상기 복수의 블록 중 상기 비관심 영역에 대응하는 블록에 대한 제2 양자화 파라미터 값을 조절하되, 상기 제1 CBF 값과 상기 제2 CBF 값은 서로 다르고, 조정된 상기 제1 양자화 파라미터 값에 기초하여 상기 관심 영역을 인코딩하고, 조정된 상기 제2 양자화 파라미터 값에 기초하여 상기 비관심 영역을 인코딩하고, 상기 관심 영역에 대응하는 제1 블록의 부호화를 수행한 후 상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록에 할당된 타겟 비트 수에 기초하여 상기 제1 CBF 값을 업데이트하고, 상기 비관심 영역에 대응하는 제2 블록의 부호화를 수행한 후 상기 제2 블록에 의해 발생된 비트 수 및 상기 제2 블록에 할당된 타겟 비트 수에 기초하여 상기 제2 CBF 값을 업데이트하되, 상기 제1 CBF 값과 상기 제2 CBF 값은 서로 독립적으로 업데이트되며, 상기 제1 블록에 의해 생성되는 비트 수와 상기 제2 블록에 의해 생성되는 비트 수는 서로 다르고, 상기 제1 CBF 값을 제1 가상 버퍼에 저장하고 상기 제2 CBF 값을 제2 가상 버퍼에 저장하여 상기 제1 CBF 값과 상기 제2 CBF 값을 독립적으로 유지하는 레이트 제어 모듈을 포함하는, 영상 부호화 장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 레이트 제어 모듈은,
    상기 제1 블록에 의해 발생된 상기 비트 수에서 상기 제1 블록에 할당된 타겟 비트 수를 차감한 값을 이용하여 상기 제1 CBF 값을 업데이트하는, 영상 부호화 장치.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 레이트 제어 모듈은,
    상기 제2 블록에 의해 발생된 상기 비트 수에서 상기 제2 블록에 할당된 타겟 비트 수를 차감한 값을 이용하여 상기 제2 CBF 값을 업데이트하는, 영상 부호화 장치.
  6. 제 1 항에 있어서,
    상기 레이트 제어 모듈은,
    상기 관심 영역과 다른 보조 관심 영역에 대한 제3 CBF 값에 기초하여 상기 복수의 블록 중 상기 보조 관심 영역에 대응하는 블록에 대한 제3 양자화 파라미터 값을 조절하는, 영상 부호화 장치.
  7. 입력 영상에 포함된 프레임을 제1 블록 및 상기 제1 블록과 인접하는 제2 블록을 포하하는 복수의 블록으로 분할하는 파티셔닝 유닛; 및
    상기 복수의 블록 각각에 대한 양자화 파라미터 값을 결정하는 레이트 제어 모듈을 포함하고,
    상기 레이트 제어 모듈은,
    제1 CBF(current buffer fullness) 값에 기초하여 상기 제1 블록의 제1 양자화 파라미터 값을 조절하고,
    상기 제1 CBF 값과 다른 제2 CBF 값에 기초하여 상기 제2 블록의 제2 양자화 파라미터 값을 조절하되, 상기 제1 CBF 값과 상기 제2 CBF 값은 다르고,
    상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록에 할당된 타겟 비트 수에 기초하여 상기 제1 CBF 값을 업데이트하고,
    상기 제2 블록에 의해 발생된 비트 수 및 상기 제2 블록에 할당된 타겟 비트 수에 기초하여 상기 제2 CBF 값을 업데이트하되,
    상기 제1 CBF 값과 상기 제2 CBF 값은 서로 독립적으로 업데이트되며,
    상기 제1 CBF 값을 제1 가상 버퍼에 저장하고, 상기 제2 CBF 값을 제2 가상 버퍼에 저장하여 제1 CBF 값과 제2 CBF 값이 독립적으로 유지되며,
    상기 제1 블록에 의해 발생된 비트 수와 상기 제2 블록에 의해 발생된 비트 수는 서로 다른, 영상 부호화 장치.
  8. 입력 영상에 포함된 프레임을 복수의 블록으로 분할하는 파티셔닝 유닛; 및
    상기 복수의 블록 각각에 대한 양자화 파라미터 값을 결정하는 레이트 제어 모듈을 포함하고,
    상기 레이트 제어 모듈은,
    현재 부호화되는 제1 블록이 관심 영역에 대응하는 블록인 경우, 상기 양자화 파라미터 값 중 상기 관심 영역에 대응하는 양자화 파라미터 값에 기초하여 상기 관심 영역을 인코딩하고, 상기 제1 블록에 대한 부호화를 수행한 후 상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록의 타겟 비트 수에 기초하여 상기 관심 영역에 대한 제1 CBF(current buffer fullness) 값을 업데이트하고,
    상기 제1 블록이 비관심 영역에 대응하는 블록인 경우, 상기 양자화 파라미터 값 중 상기 비관심 영역에 대응하는 양자화 파라미터 값에 기초하여 상기 비관심 영역을 인코딩하고, 상기 제1 블록에 대한 부호화를 수행한 후 상기 제1 블록에 의해 발생된 비트 수 및 상기 제1 블록의 타겟 비트 수에 기초하여 상기 비관심 영역에 대한 제2 CBF 값을 업데이트하되,
    상기 제1 CBF 값과 상기 제2 CBF 값은 서로 독립적으로 업데이트되며,
    상기 제1 CBF 값과 상기 제2 CBF 값은 서로 다르고,
    상기 제1 CBF 값은 제1 가상 버퍼에 저장하고, 상기 제2 CBF 값은 제2 가상 버퍼에 저장하여 상기 제1 CBF 값과 상기 제2 CBF 값을 독립적으로 유지하되,
    상기 제1 블록이 관심 영역에 대응하는 블록인 경우 발생된 비트 수와 상기 제1 블록이 비관심 영역에 대응하는 블록인 경우 발생된 비트 수가 서로 다른, 영상 부호화 장치.
  9. 제 8 항에 있어서,
    상기 레이트 제어 모듈은,
    상기 제1 블록에 대한 부호화를 수행한 후 상기 관심 영역에 대응하는 제2 블록에 대한 부호화를 수행할 경우, 상기 제1 CBF 값에 기초하여 상기 제2 블록에 대한 제1 양자화 파라미터 값을 조절하는, 영상 부호화 장치.
  10. 제 8 항에 있어서,
    상기 레이트 제어 모듈은,
    상기 제1 블록에 대한 부호화를 수행한 후 상기 비관심 영역에 대응하는 제3 블록에 대한 부호화를 수행할 경우, 상기 제2 CBF 값에 기초하여 상기 제3 블록에 대한 제2 양자화 파라미터 값을 조절하는, 영상 부호화 장치.
KR1020170109462A 2017-08-29 2017-08-29 영상 부호화 장치 KR102543444B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020170109462A KR102543444B1 (ko) 2017-08-29 2017-08-29 영상 부호화 장치
US15/903,278 US11019337B2 (en) 2017-08-29 2018-02-23 Video encoding apparatus
TW107127707A TWI834621B (zh) 2017-08-29 2018-08-09 視訊編碼設備
CN201810963787.XA CN109429063B (zh) 2017-08-29 2018-08-22 视频编码装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170109462A KR102543444B1 (ko) 2017-08-29 2017-08-29 영상 부호화 장치

Publications (2)

Publication Number Publication Date
KR20190023548A KR20190023548A (ko) 2019-03-08
KR102543444B1 true KR102543444B1 (ko) 2023-06-13

Family

ID=65434468

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170109462A KR102543444B1 (ko) 2017-08-29 2017-08-29 영상 부호화 장치

Country Status (3)

Country Link
US (1) US11019337B2 (ko)
KR (1) KR102543444B1 (ko)
CN (1) CN109429063B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7249364B2 (ja) * 2018-06-28 2023-03-30 アップル インコーポレイテッド 低レイテンシ動画符号化及び送信のレート制御
US10516885B1 (en) * 2018-07-11 2019-12-24 Tencent America LLC Method and apparatus for video coding
CN114143548B (zh) * 2019-03-11 2023-02-14 北京达佳互联信息技术有限公司 视频编解码中变换系数的编解码
CN110996099B (zh) * 2019-11-15 2021-05-25 网宿科技股份有限公司 一种视频编码方法、系统及设备
CN113011210B (zh) * 2019-12-19 2022-09-16 北京百度网讯科技有限公司 视频处理方法和装置
CN111479112B (zh) * 2020-06-23 2020-11-03 腾讯科技(深圳)有限公司 一种视频编码方法、装置、设备和存储介质
CN112929668B (zh) * 2021-04-07 2024-04-26 百果园技术(新加坡)有限公司 一种视频编码的方法、装置、设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050008075A1 (en) * 2003-07-09 2005-01-13 Yung-Ching Chang Rate control method with region of interesting support
KR100800838B1 (ko) * 2006-07-27 2008-02-04 삼성전자주식회사 비디오 인코딩 데이터율 제어 방법

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164828A (en) * 1990-02-26 1992-11-17 Sony Corporation Video signal transmission and method and apparatus for coding video signal used in this
US5231484A (en) 1991-11-08 1993-07-27 International Business Machines Corporation Motion video compression system with adaptive bit allocation and quantization
US5852669A (en) 1994-04-06 1998-12-22 Lucent Technologies Inc. Automatic face and facial feature location detection for low bit rate model-assisted H.261 compatible coding of video
US6111991A (en) 1998-01-16 2000-08-29 Sharp Laboratories Of America Method and apparatus for optimizing quantizer values in an image encoder
SG116400A1 (en) * 1997-10-24 2005-11-28 Matsushita Electric Ind Co Ltd A method for computational graceful degradation inan audiovisual compression system.
US6151362A (en) * 1998-10-30 2000-11-21 Motorola, Inc. Joint rate control for stereoscopic video coding
US6493388B1 (en) * 2000-04-19 2002-12-10 General Instrument Corporation Rate control and buffer protection for variable bit rate video programs over a constant rate channel
US20020090140A1 (en) * 2000-08-04 2002-07-11 Graham Thirsk Method and apparatus for providing clinically adaptive compression of imaging data
US7330509B2 (en) 2003-09-12 2008-02-12 International Business Machines Corporation Method for video transcoding with adaptive frame rate control
US20050140781A1 (en) 2003-12-29 2005-06-30 Ming-Chieh Chi Video coding method and apparatus thereof
US20060062478A1 (en) 2004-08-16 2006-03-23 Grandeye, Ltd., Region-sensitive compression of digital video
US7746928B2 (en) * 2004-12-30 2010-06-29 General Instruments Corporation Method and apparatus for providing rate control
JP4693522B2 (ja) 2005-06-29 2011-06-01 キヤノン株式会社 撮像装置
US9479794B2 (en) * 2005-11-10 2016-10-25 Freescale Semiconductor, Inc. Resource efficient video processing via prediction error computational adjustments
WO2010057170A1 (en) 2008-11-17 2010-05-20 Cernium Corporation Analytics-modulated coding of surveillance video
JP5072893B2 (ja) * 2009-03-25 2012-11-14 株式会社東芝 画像符号化方法および画像復号化方法
US9269245B2 (en) * 2010-08-10 2016-02-23 Lg Electronics Inc. Region of interest based video synopsis
EP2643969A4 (en) 2010-11-25 2016-03-23 Freescale Semiconductor Inc METHOD FOR CONTROLLING BIT RATE IN AN EXTENSIBLE VIDEO ENCODING SYSTEM AND SYSTEM THEREOF
US8654181B2 (en) * 2011-03-28 2014-02-18 Avid Technology, Inc. Methods for detecting, visualizing, and correcting the perceived depth of a multicamera image sequence
US20130243100A1 (en) * 2012-03-15 2013-09-19 Mediatek Inc. System and Method for Adaptive Frame Re-compression in Video Processing System
KR102001415B1 (ko) 2012-06-01 2019-07-18 삼성전자주식회사 다계층 비디오 코딩을 위한 레이트 제어 방법, 이를 이용한 비디오 인코딩 장치 및 비디오 신호 처리 시스템
US9805442B2 (en) * 2012-10-03 2017-10-31 Avago Technologies General Ip (Singapore) Pte. Ltd. Fine-grained bit-rate control
GB201301445D0 (en) * 2013-01-28 2013-03-13 Microsoft Corp Adapting robustness in video coding
CN103179405B (zh) * 2013-03-26 2016-02-24 天津大学 一种基于多级感兴趣区域的多视点视频编码方法
JP6209026B2 (ja) * 2013-08-30 2017-10-04 キヤノン株式会社 画像符号化装置及びその制御方法
US10097828B2 (en) * 2014-12-11 2018-10-09 Intel Corporation Rate control for parallel video encoding
KR102511705B1 (ko) * 2015-11-16 2023-03-20 삼성전자주식회사 비디오 인코딩 방법, 이를 수행하는 비디오 인코더 및 이를 포함하는 전자 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050008075A1 (en) * 2003-07-09 2005-01-13 Yung-Ching Chang Rate control method with region of interesting support
KR100800838B1 (ko) * 2006-07-27 2008-02-04 삼성전자주식회사 비디오 인코딩 데이터율 제어 방법

Also Published As

Publication number Publication date
CN109429063B (zh) 2022-05-06
US20190068968A1 (en) 2019-02-28
US11019337B2 (en) 2021-05-25
KR20190023548A (ko) 2019-03-08
CN109429063A (zh) 2019-03-05
TW201914302A (zh) 2019-04-01

Similar Documents

Publication Publication Date Title
KR102543444B1 (ko) 영상 부호화 장치
US9967573B2 (en) Codec, system on chip (SOC) including the same, and data processing system including the SOC
US10448027B2 (en) Method of encoding video data, video encoder performing the same and electronic system including the same
US10841659B2 (en) Video encoding apparatus and video encoding system
US10362315B2 (en) Codec and devices including the same
US10674160B2 (en) Parallel video encoding device and encoder configured to operate in parallel with another encoder
US10271050B2 (en) Methods, systems and devices including an encoder for image processing
US20170013262A1 (en) Rate control encoding method and rate control encoding device using skip mode information
US10694178B2 (en) Video processing device for encoding frames constituting hierarchical structure
KR102476204B1 (ko) 멀티 코덱 인코더 및 이를 포함하는 멀티 코덱 인코딩 시스템
US10009617B2 (en) Method of operating encoder and method of operating system on chip including the encoder
US10097830B2 (en) Encoding device with flicker reduction
TWI834621B (zh) 視訊編碼設備

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant