KR20130108948A - 적응적 전처리 기법을 이용한 영상 인코딩 방법 - Google Patents
적응적 전처리 기법을 이용한 영상 인코딩 방법 Download PDFInfo
- Publication number
- KR20130108948A KR20130108948A KR20120030819A KR20120030819A KR20130108948A KR 20130108948 A KR20130108948 A KR 20130108948A KR 20120030819 A KR20120030819 A KR 20120030819A KR 20120030819 A KR20120030819 A KR 20120030819A KR 20130108948 A KR20130108948 A KR 20130108948A
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- value
- block
- sse
- image
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 입력되는 영상을 프레임별로 로드하는 단계; 상기 각 프레임의 인코딩 타입을 구별하는 단계; 상기 구별된 인코딩 타입에 따라 각 프레임에서 인코딩할 블록 크기를 결정하는 단계; 상기 크기가 결정된 블록에서 복제가 가능한 블록들을 구별하여, 상기 프레임의 인코딩 타입에 따라 화면내 복제 전처리 또는 화면간 복제 전처리 절차를 수행하는 단계; 및 상기 블록들의 전처리가 모두 완료된 프레임을 인코딩하는 단계를 포함하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법에 관한 것이다.
Description
본 발명은 영상 인코딩 방법에 관한 것으로, 더욱 상세하게는 원본 영상을 참조 영상의 블록과 비교하여 임계치 이내 유사성을 가지는 블록을 복제하여 영상을 인코딩하고, 인코딩된 영상의 화질이 일정 범위에서 유지될 수 있도록 임계치를 조절하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법에 관한 것이다.
디지털 비디오를 소스(카메라 또는 저장된 비디오)로부터 목적지(디스플레이어)까지 전달하기 위해서는 압축(인코딩) 및 복원(디코딩)이라는 핵심 과정이 필요하다. 상기의 과정을 통해 대역폭(Bandwidth)의 부담이 되는 '원래 그대로의' 디지털비디오는 전송이나 저장을 위해 다루기 쉬운 사이즈로 압축되고, 디스플레이하기 위하여 다시 복원된다.
이러한 압축과 복원이라는 과정을 디지털 TV 방송과 DVD-비디오와 같은 디지털 비디오 산업을 위하여 MPEG-2로 알려진 국제표준 ISO/IEC 13818이 제정되었고, 더 뛰어난 압축도구에 대한 수요를 예상하여 2개의 압축 표준안이 개발되었는데, 바로 MPEG-4 Visual과 H.264이다. 상기 H.264 표준은 국제전기통신연합(ITU―T)에서 제정한 비디오 압축기술 표준으로, MPEG-4 AVC(Moving Picture Experts Group - Phase 4 Advanced Video Coding)이라고 하기도 한다. 상기 2개의 압축 표준안은 동일한 생성과정을 거쳤고 몇 가지 공통적인 특징을 가지고 있지만, 상당히 다른 목표를 가진다.
일반적으로 영상 인코딩 장치는 인코딩하는 영상의 시간적 또는 공간적 엔트로피가 줄어듦에 따라 훨씬 더 효과적으로 발전해 왔다. 상기 영상 인코딩 장치는 더 양호한 인코딩이 가능하도록 영상을 처리하는 영상 전처리(image preprocessing) 기법을 많이 활용한다.
영상 시퀀스의 엔트로피를 줄이기 위한 영상 전처리 기법에서는 영상 내 분포하는 노이즈를 제거하기 위하여 필터링 및 노이즈 탐지 등을 이용하며, 그 대표적인 예로서는, 영상의 화소값이 실제 영상의 방사값과 다른 값을 가짐으로 인해 생기는 방사 오차를 줄이기 위한 방사 보정 기법 및 비틀린 형태를 갖는 영상의 공간적 왜곡을 보정하는 기하 보정 기법 등이 있다.
영상 압축에서 영상 전처리는 영상의 송수신시 효율을 높이고 저장 공간을 줄이기 위하여 수학적 연산을 통해 영상의 데이터량을 줄이는 것을 목적으로 한다. 이에 따라 영상 압축 인트라 모드에서는 영상 인코딩 비용의 많은 부분을 차지하는 고주파수 성분을 줄이거나 심지어 제거하는 선형 또는 비선형 필터를 이용하고 있다.
그런데, 상기 고주파 성분을 줄이는 필터링 등의 종래 기술은, 필터를 적용함으로써 원본 영상에 왜곡을 발생시키며 이는 영상 압축 과정에서 잔여(Residual) 영상을 증가시키게 되어 압축 효율을 떨어뜨리는 문제점이 있다.
본 발명의 배경기술은 대한민국 공개특허 제10-2011-0014507호 (2011.02.11)에 개시되어 있다.
본 발명은 상기와 같은 문제점을 개선하기 위해 창작된 것으로서, 필터를 적용함에 따라 발생할 수 있는 원본 영상의 왜곡을 억제하고 영상 압축과정에서 압축 효율을 떨어지는 것을 억제할 수 있는 적응적 전처리 기법을 이용한 영상 인코딩 방법을 제공하는 데 그 목적이 있다.
본 발명의 일 양태에 따르면, 본 발명은 입력되는 영상을 프레임별로 로드하는 단계; 상기 각 프레임의 인코딩 타입을 구별하는 단계; 상기 구별된 인코딩 타입에 따라 각 프레임에서 인코딩할 블록 크기를 결정하는 단계; 상기 크기가 결정된 블록에서 복제가 가능한 블록들을 구별하여, 상기 프레임의 인코딩 타입에 따라 화면내 복제 전처리 또는 화면간 복제 전처리 절차를 수행하는 단계; 및 상기 블록들의 전처리가 모두 완료된 프레임을 인코딩하는 단계를 포함하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법을 제공한다.
본 발명에서, 상기 입력되는 영상은, YUV 형식의 영상인 것이 바람직하다.
본 발명에서, 상기 인코딩 타입은, I 프레임, P 프레임, 또는 B 프레임 중 어느 하나인 것이 바람직하다.
본 발명에서, 상기 인코딩할 블록 크기를 결정하는 단계는, 최초 블록 크기에서 산출한 SSE(오차제곱합, Sum of Squared Error)값과 미리 설정된 임계치를 비교하는 제 1 과정; 상기 비교 결과에 따라, 상기 최소 SSE값이 상기 임계치보다 클 경우, 블록 크기를 가로 또는 세로로 1/2 분할하여 산출된 최소 SSE값을 상기 미리 설정된 임계치와 비교하는 제 2 과정; 상기 비교 결과에 따라, 상기 분할된 블록의 최소 SSE값이 상기 임계치보다 클 경우, 다시 그 블록의 크기를 가로 또는 세로로 1/2 분할하여 산출된 최소 SSE값과 상기 임계치를 비교하는 제3 과정; 상기 제 1 내지 제 3과정을, 상기 분할된 블록의 최소 SSE값이 상기 임계치보다 작거나 상기 블록의 크기가 분할가능한 블록크기가 될 때까지 반복 수행하는 제4 과정을 포함하는 것이 바람직하다.
본 발명에서, 상기 최소 블록 크기는, 8 x 8 인 것이 바람직하다.
본 발명에서, 상기 복제 전처리 절차는, 상기 인코딩할 프레임이 I프레임인 경우, 프레임 내의 모든 매크로블록에서 SSE값을 구하고, 계산된 SSE값들 중 최소 SSE값이 기 설정된 SSE임계치보다 작을 경우 해당 참조 블록값을 원본 블록으로 복제하는 것이 바람직하다.
본 발명에서, 상기 복제 전처리 절차는, 상기 인코딩할 프레임이 P 또는 B 프레임인 경우, 각 매크로블록을 참조 프레임 내의 모든 매크로블록과 비교하여 SSE값을 계산한 후, 참조 프레임의 블록들 중 최소 SSE값을 가진 블록이 미리 설정된 SSE임계치보다 작을 경우, 해당 참조 프레임의 블록값을 원본 블록으로 복제하는 것이 바람직하다.
본 발명에서, 상기 영상 인코딩 방법은, 상기 인코딩된 프레임을 복원하여 복원된 프레임의 품질을 평가하는 단계; 및 상기 평가된 품질에 따라 복제할 블록을 구별하는 기준이 되는 임계치를 상향 또는 하향 조절하는 단계를 더 포함하는 것이 바람직하다.
본 발명에서, 상기 프레임의 품질을 평가하는 단계는, PSNR(Peak Signal-to-Noise Ratio) 계산 결과 및 인코딩된 프레임의 비트율을 기반으로 인코더가 목표로 하는 품질이 만족되는지 여부를 평가하는 것이 바람직하다.
본 발명에서, 상기 임계치를 상향 또는 하향 조절하는 단계는, 상기 복원된 프레임의 품질이 낮을 경우 복제 기준이 되는 상기 임계치를 상향 조절하고, 상기 복원된 프레임이 품질을 만족하는 경우 상기 임계치를 유지하거나 일정 범위 내에서 하향 조절하는 것이 바람직하다.
본 발명에서, 상기 SSE값은, 수학식
(단, bi:현재 프레임의 블록, Fc(x,y):현재 프레임 (x,y) 위치에서의 픽셀값, FR(x,y):참조 프레임 (x,y) 위치에서의 픽셀값, u, v : 모션벡터값)에 의해 산출되는 것이 바람직하다.
본 발명은 영상 인코딩 과정에서 블록값 복제 전처리를 수행함으로써 화면내 예측 및 화면간 예측 등을 통해 발생하는 차분값을 줄여 압축률을 높일 수 있는 효과가 있다. 또한, 본 발명은 인코더에 정의된 비트율 및 압축 화질 등에 맞추어 복제 수행 여부의 기준이 되는 임계치를 조절하는 적응적 기법을 통해 사용자가 원하는 화질을 유지하면서 압축 효율을 향상시키는 효과가 있다.
또한, 본 발명은 전처리 기법을 이용하여 기존 인코더를 그대로 활용함으로써, 인코딩된 영상이 디코더에서는 별도의 알고리즘 처리 없이 기존의 디코딩 알고리즘을 적용할 수 있는 동일한 포맷을 이용할 수 있도록 하여 그 활용도를 높이는 효과가 있다.
도 1은 본 발명에 관련된 하이브리드 부호화 방식 영상 인코딩 장치의 구성을 보인 예시도이다.
도 2는 본 발명에 따른 I 프레임에서 화면 내 복제 전처리 기법을 설명하기 위한 예시도이다.
도 3은 본 발명에 따른 P 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도이다.
도 4는 본 발명에 따른 B 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도이다.
도 5는 본 발명에 관련된 복제 전처리 기법에 따른 가변 블록 크기(Variable size block) 오차 비교 흐름을 설명하기 위한 예시도이다.
도 6은 본 발명의 일 실시예에 따른 적응적 전처리 기법을 이용한 영상 인코딩 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명에 따른 I 프레임에서 화면 내 복제 전처리 기법을 설명하기 위한 예시도이다.
도 3은 본 발명에 따른 P 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도이다.
도 4는 본 발명에 따른 B 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도이다.
도 5는 본 발명에 관련된 복제 전처리 기법에 따른 가변 블록 크기(Variable size block) 오차 비교 흐름을 설명하기 위한 예시도이다.
도 6은 본 발명의 일 실시예에 따른 적응적 전처리 기법을 이용한 영상 인코딩 방법을 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 적응적 전처리 기법을 이용한 영상 인코딩 방법의 일 실시예를 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
일반적으로, MPEG-1/2/4와 H.264 등의 부호화 방식에서는 I 픽처(프레임), P 픽처(프레임), B 픽처(프레임)라는 세 종류의 픽처가 존재한다.
여기서, 상기 I 픽처(Intra-Picture)는 전후의 화면과 관계없이 그 화면 내에서 독립적으로 부호화하여 얻어지는 화면이다. 즉, 시간 방향의 움직임 예측을 적용하지 않으며 화면 내 정보만을 사용해서 부호화 처리를 수행할 수 있다.
그리고, 상기 P 픽처(Predictive-Picture)는 화면간의 순방향 예측 부호화에 의해 얻어지는 화면이다. 즉, I 픽처 또는 P 픽처를 예측 영상으로 화면간 예측에 사용하여 부호화 처리가 수행된다.
그리고, 상기 B 픽처(Bi-directional Predictive-Picture)는 과거와 미래의 양방향으로부터 예측 부호화에 의해 얻어지는 화면이다. 즉, I 픽처 또는 P 픽처를 예측 영상으로 사용해서, 시간축 상에서 해당 프레임보다 과거, 미래, 또는 양방향에 존재하는 매크로블록을 사용한 양방향 예측을 수행한다.
한편, 최근 영상 압축 부호화의 표준적인 구조가 된 하이브리드 부호화는 영상 화면 간 중복된 정보를 제거하는 시간적 정보 중복도 제거와, 화면 내 공간적 화소가 가지고 있는 중복된 정보를 제거하는 공간적 정보 중복도 제거를 조합해서 압축 부호화하는 방식이다. 즉, 상기 하이브리드 부호화는 움직임 보상, 프레임 간 예측(Motion Estimation)을 사용해 동영상 정보가 가지는 시간 방향의 정보 중복도를 제거하고, DCT(이산코사인변환, Discrete Cosine Transform)를 사용해 예측 오차에 남아 있는 공간방향(화면 내)의 정보 중복도를 제거한다.
또한, 전처리(Preprocessing)는 압축 부호화할 영상을 포맷 변환, 프레임 순서변경 및 잡음 제거 처리 등을 통해 압축 부호화 처리가 용이하도록 준비하는 작업을 의미한다. 즉, 입력 영상에 포함되는 임의의 잡음은 압축 성능을 저하시키기 때문에 필터 처리를 해서 이러한 잡음을 감소시킨다. 일반적으로 영상에서 중복된 정보를 제거할 때는 중복된 정보 제거뿐만 아니라 약간의 왜곡을 허용하여 큰 압축 효율을 실현한다.
그리고, 상기 DCT(Discrete Cosine Transform)는 이산코사인변환이라고 하며 화소 영역의 표현을 주파수 영역의 표현으로 변환하는 수학적 처리를 의미한다.
상기 영상 부호화의 결과는 이진값의 부호열로 표현되고 이것이 전송된 후 복호화를 통해 다시 원영상으로 재현된다.
이하, 본 발명의 일 실시예에 따른 적응적 전처리 기법을 이용한 영상 인코딩 장치 및 방법을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명에 관련된 하이브리드 부호화 방식 영상 인코딩 장치의 구성을 보인 예시도이다.
이에 도시된 바와 같이 상기 하이브리드 부호화 방식 영상 인코딩 장치는 전처리기(100), 신호원 부호화기(200), 비디오 다중 부호화기(300), 전송 버퍼(400), 부호화 제어기(500)를 포함하여 구성된다. 여기서, 상기 신호원 부호화기(200)는 움직임 보상과 움직임 추정을 수행하는 움직임보상 프레임간 예측기(210), 이산코사인 변환을 수행하는 DCT 변환기(220), 양자화작업을 수행하는 양자화기(230)를 포함한다. 또한, 상기 비디오 다중 부호화기(300)는 주정보 가변 부호화기(310), 크기정보 가변 부호화기(320) 및 다중화기(330)를 포함한다.
상기 전처리기(100)는 시간 공간 필터(미도시)를 사용해 입력 영상 신호를 디지털 포맷으로 변환하고 미리 잡음을 제거하는 필터링을 수행한다.
상기 신호원 부호화기(200)는, 움직임보상 프레임간 예측기(210)와 DCT 변환기(220)를 통해 입력신호에 포함된 정보를 제거하고 남은 신호를 양자화기(230)를 통해 일정 오차 범위 안에서 양자화한다. 여기서, 상기 움직임 보상은 피사체의 움직임을 검출해서 그 결과로 효과적인 예측 화면을 만드는 것이고, 프레임간 예측은 부호화할 원본 프레임에 대해서 전방, 후방 또는 양방향의 참조 프레임으로부터 예측화면을 만드는 부호화의 방법이다.
상기 비디오 다중 부호화기(300)는 각 가변 부호화기(310, 320)를 사용해 DCT 계수값으로 이루어진 영상 압축 부호화의 주정보와 블록의 속성 등의 부가정보를 정해진 데이터 구조의 부호열로 변환한 후, 다중화기(330)를 통해 다중화하여 출력한다. 여기서, 상기 주정보는 신호원 부호화기(200)의 처리 결과 내에 예측 오차를 표시하는 정보이며, 부가정보는 주정보 이외의 움직임 보상 벡터값과 부호화 방법, 부호화 모드 등을 표시하는 정보이다.
상기 전송 버퍼(400)는 압축된 영상을 일시적으로 저장해 두고 시간에 따라 변동하는 정보 발생량을 전송회선의 속도에 맞게 일정 속도로 조절한다. 즉, 영상 부호화의 결과의 부호화 스트림을 통신 회선을 이용하여 전송할 경우, 오버플로가 되거나 언더플로가 되지 않도록 제어한다.
상기 부호화 제어기(500)는 QP(Quantization Parameter) 크기 등의 인코딩 알고리즘의 요소들을 어떤 식으로 설정해야 일정 품질의 비트열을 발생할까 결정한다. 즉, 영상의 프레임 단위 또는 더욱 작은 단위로 부호화 방법을 선택하거나 그 파라미터를 선택함으로써 발생 정보량을 목표로 한 값에 가까워지도록 처리 한다.
도 2는 본 발명에 따른 I 프레임에서 화면 내 복제 전처리 기법을 설명하기 위한 예시도로서, 이를 통해 I 프레임에서 화면 내 복제 전처리 과정을 설명한다.
원본 프레임(I)은 복수 개의 매크로블록들로 이루어져 있으며, I 프레임에서 각 매크로블록은 해당 프레임 내의 모든 매크로블록과 비교하여 블록간 오차값을 계산한다. 두 블록간의 오차는 각 블록에 속하는 픽셀값의 오차의 제곱의 합계인 오차제곱합(SSE, Sum of Squared Error)을 이용하며 다음 수학식1과 같이 정의된다.
(단, bi:현재 프레임의 블록,
Fc(x,y):현재 프레임 (x,y) 위치에서의 픽셀값
FR(x,y):참조 프레임 (x,y) 위치에서의 픽셀값
u, v : 모션벡터값)
상기 수학식 1을 통해 계산된 SSE값들 중 가장 작은 SSE값이 미리 정의된 임계치(Threshold)보다 작을 경우, 해당 참조 블록의 값을 원본 블록으로 복제한다. 모든 블록에 대해 상기 과정을 반복하여 전처리 과정을 완료한다. 물론, 실시예에 따라서는 상기 오차제곱합 대신에 픽셀값의 오차의 절대값의 합계인 오차절대합(SAE, Sum of Absolute Error)를 사용할 수도 있을 것이다.
도 2에 도시된 바와 같이, W1 ~ W4, H1 ~ H4는 SSE 계산을 통해 전처리를 마친 블록을 나타내며, I11 ~ I44 블록은 전처리 이전 블록을 나타낸다. 상기 설명한 방법에 의해 I12, I22, I32 블록은 각각 H1, H2, H3 블록의 값으로, I33, I34 블록은 각각 W3, W4 블록의 값으로 복제된다.
도 3은 본 발명에 따른 P 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도로서, 도 3을 참조하여 P 프레임에서 화면 간 복제 전처리 과정을 설명한다.
P 프레임은 I 프레임 또는 P 프레임 등의 참조 프레임(R)으로부터 블록값을 복제할 수 있다. 원본 프레임에서 각 매크로블록을 참조 프레임 내의 모든 매크로블록과 비교하는 것을 통해 SSE 값이 계산된다. 참조 프레임의 블록들 중 가장 작은 SSE값을 가진 블록의 SSE값이 미리 설정된 임계치보다 작을 경우, 해당 참조 프레임의 블록값을 원본 블록으로 복제한다. 모든 블록에 대해 상기 과정을 반복하여 전처리 과정을 완료한다.
도 3에 도시된 바와 같이, 전처리 과정을 마친 참조 프레임의 R12, R13 블록이 원본 프레임의 P22, P23 블록으로 복제되고, 전처리 과정을 마친 참조 프레임의 R32, R33 블록이 P42, P43 블록으로 각각 복제된다.
도 4는 본 발명에 따른 B 프레임에서 화면 간 복제 전처리 기법을 설명하기 위한 예시도로서, 도 4를 참조하여 B 프레임에서 화면 간 복제 전처리 과정을 설명한다.
B 프레임은 시간 축 상 과거(A) 및 미래(C)의 참조 프레임들로부터 블록값을 복제하여 얻을 수 있다. 원본 프레임(B)에서 각 매크로블록을 A 참조 프레임과 C 참조 프레임 내의 모든 매크로블록과 비교하는 것에 의해 SSE 값이 계산된다. 참조 프레임의 블록들 중 가장 작은 SSE값을 가진 블록의 SSE값이 임계치보다 작을 경우, 해당 참조 프레임의 블록값을 원본 블록으로 복제한다.
도 4에 도시된 바와 같이, 전처리 과정을 마친 참조 프레임(A)의 A12, A13, A22, A23 블록이 각각 원본 프레임(B)의 B22, B23, B32, B33 블록으로 복제되며, 참조 프레임(C)의 C41 ~ C44 블록이 각각 원본 프레임(B)의 B41 ~ B44 블록으로 복제된다.
도 5는 본 발명에 관련된 복제 전처리 기법에 따른 가변 블록 크기(Variable size block) 오차 비교 흐름을 설명하기 위한 예시도이다.
본 발명의 복제 전처리 기법은 블록 단위로 수행되며, 블록 크기가 작을수록, 즉 블록의 개수가 많아질수록, 비교 연산 작업이 많아져서 인코딩 시간이 늘어나게 된다. 따라서, 픽셀 간의 유사성이 많아 복제가 가능할 경우, 인코딩 부하를 최소화하기 위해 블록 크기를 가능한 크게 설정하여 SSE값을 계산한다.
도 5에 도시된 바와 같이, 최초 블록 크기(S0)는 min(width, height)/2 x min(width, height)/2이다. 여기서 width는 프레임의 가로 픽셀수를, height는 프레임의 세로 픽셀수를 나타낸다.
최초 블록 크기를 이용한 최소 SSE값이 임계치보다 작을 경우, 해당 블록 크기 내에 존재하는 모든 픽셀들은 참조 블록의 픽셀값으로 복제된다. 그런데, 상기 최소 SSE가 임계치보다 클 경우에는 해당 블록 크기로 복제를 할 수 없으므로, 블록 크기를 가로 또는 세로로 1/2 분할하여 상기 과정을 수행한다. 즉, 먼저 min(width, height)/4 x min(width, height)/2을 이용하여 상기 과정을 수행하고, 이후 min(width, height)/2 x min(width, height)/4을 이용하여 상기 과정을 수행한다.
그런데 상기와 같이 분할된 블록 크기에 의해서도 최소 SSE가 임계치보다 클 경우 최초 블록 크기(S0)의 가로와 세로 모두 1/2 분할하여 상기 과정을 수행한다. 즉, min(width, height)/4 x min(width, height)/4을 이용하여 상기 과정을 수행한다. 상기 블록 분할 과정을 계속 반복하여 수행되며, 최소 블록 크기는 8 x 8이 된다. 즉 상기 과정 수행 중 최소 SSE값이 임계치보다 작거나 블록 크기가 8 x 8일 경우 블록 분할은 수행하지 않는다.
도 6은 본 발명의 일 실시예에 따른 적응적 전처리 기법을 이용한 영상 인코딩 방법을 설명하기 위한 흐름도이다.
도 6에 도시된 바와 같이, 먼저 입력 원본 영상인 YUV 형식(휘도 신호(Y), 휘도 신호와 청색 성분의 차(U), 휘도 신호와 적색 성분의 차(V))의 파일을 프레임별로 읽어 들여 로드한다(S601).
이어서, 상기 프레임의 인코딩 타입, 즉 상기 프레임을 I 프레임으로 인코딩할지 P 또는 B 프레임으로 인코딩할지를 결정한다(S602).
상기 단계(S602)의 결정에 따라 I 프레임으로 인코딩되는 프레임에 대해서, 상기 가변 블록 크기 오차 비교 흐름에 따라 최소 SSE값을 산출하고 이를 임계치와 비교하여 블록 크기를 결정한다(S603). 그리고, 복제가 가능한 블록들은 화면 내 복제 전처리 절차를 수행한다(S604).
한편, 상기 단계(S602)의 결정에 따라 P또는 B 프레임으로 인코딩되는 프레임에 대해서도, 또한 상기 가변 블록 크기 결정 흐름에 따라 최소 SSE값을 산출하고 이를 임계치와 비교하여 블록 크기를 결정한다(S605). 그리고, 복제가 가능한 블록들은 화면 간 복제 전처리 절차를 수행한다(S606).
상기와 같이 복제를 통한 전처리 과정을 수행한 프레임은 일반적인 인코딩 절차를 따라 인코딩된다(S607).
상기 일반적인 인코딩 절차에서 I 프레임에 대해서는 화면 내 공간방향 내의 정보 중복도를 제거하기 위해 화면 내 예측(Intra-prediction)을 수행하고 차분(Residual)을 계산하여 인코딩한다. 상기 복제 전처리된 I 프레임의 블록값은 화면 내 예측 결과의 블록값으로 복제될 확률이 높으며 이에 따라 차분이 작아지게 된다. 또한 P, B 프레임에 대해서는, 시간상의 정보 중복도를 제거하기 위해 화면간 예측(Inter-prediction)을 수행하고 움직임 보상(Motion Compensation)을 결정하고 이에 대해 차분을 계산한다. 상기 복제 전처리된 P, B 프레임의 블록값은 화면간 예측 결과의 블록값으로 복제될 확률이 높으며 이에 따라 차분이 작아지게 된다.
상기 인코딩된 프레임은 인코더에 따라 적응적으로 인코딩 레이트를 조절하기 위해 복원한다(S608). 그리고, 최대신호 대 잡음비(PSNR, Peak Signal-to-Noise Ratio) 계산 및 인코딩된 프레임의 비트율 등을 기반으로 인코더가 목표로 하는 품질을 만족하는지 평가한다(S609).
이 때, 복원된 프레임의 PSNR이 낮아 품질이 낮아지면 복제로 인한 화질 저하가 발생한 것이므로 복제 기준이 되는 임계치를 상향 조절하고, 반대의 경우(품질을 만족하는 경우) 임계치를 유지하거나 일정 범위 내에서 하향 조절한다(S610).
마지막으로, 상기 과정을 통해 출력되는 프레임이 마지막 프레임인지 여부를 확인하여(S611), 상기 과정을 입력 영상의 마지막 프레임까지 반복한 후 인코딩 과정을 종료한다.
이와 같이, 본 실시예에 따르면, 영상 인코딩 과정에서 블록값 복제 전처리를 수행함으로써 화면내 예측 및 화면간 예측 등을 통해 발생하는 차분값을 줄여 압축률을 높일 수 있으며, 인코더에 정의된 비트율 및 압축 화질 등에 맞추어 복제 수행 여부의 기준이 되는 임계치를 조절하는 적응적 기법을 통해 사용자가 원하는 화질을 유지하면서 압축 효율을 향상시킬 수 있다. 또한, 본 실시예에 따르면, 전처리 기법을 이용하여 기존 인코더를 그대로 활용함으로써, 인코딩된 영상이 디코더에서는 별도의 알고리즘 처리 없이 기존의 디코딩 알고리즘을 적용할 수 있는 동일한 포맷을 이용할 수 있도록 하여 그 활용도를 높일 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.
Claims (11)
- 입력되는 영상을 프레임별로 로드하는 단계;
상기 각 프레임의 인코딩 타입을 구별하는 단계;
상기 구별된 인코딩 타입에 따라 각 프레임에서 인코딩할 블록 크기를 결정하는 단계;
상기 크기가 결정된 블록에서 복제가 가능한 블록들을 구별하여, 상기 프레임의 인코딩 타입에 따라 화면내 복제 전처리 또는 화면간 복제 전처리 절차를 수행하는 단계; 및
상기 블록들의 전처리가 모두 완료된 프레임을 인코딩하는 단계를 포함하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 1항에 있어서, 상기 입력되는 영상은,
YUV 형식의 영상인 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 1항에 있어서, 상기 인코딩 타입은,
I 프레임, P 프레임, 또는 B 프레임 중 어느 하나인 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 1항에 있어서, 상기 인코딩할 블록 크기를 결정하는 단계는,
최초 블록 크기에서 산출한 SSE(오차제곱합, Sum of Squared Error)값과 미리 설정된 임계치를 비교하는 제 1 과정;
상기 비교 결과에 따라, 상기 최소 SSE값이 상기 임계치보다 클 경우, 블록 크기를 가로 또는 세로로 1/2 분할하여 산출된 최소 SSE값을 상기 미리 설정된 임계치와 비교하는 제 2 과정;
상기 비교 결과에 따라, 상기 분할된 블록의 최소 SSE값이 상기 임계치보다 클 경우, 다시 그 블록의 크기를 가로 또는 세로로 1/2 분할하여 산출된 최소 SSE값과 상기 임계치를 비교하는 제3 과정;
상기 제 1 내지 제 3과정을, 상기 분할된 블록의 최소 SSE값이 상기 임계치보다 작거나 상기 블록의 크기가 분할가능한 블록크기가 될 때까지 반복 수행하는 제4 과정을
포함하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 4항에 있어서, 상기 최소 블록 크기는,
8 x 8 인 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제1 항에 있어서, 상기 복제 전처리 절차는,
상기 인코딩할 프레임이 I프레임인 경우, 프레임 내의 모든 매크로블록에서 SSE값을 구하고, 계산된 SSE값들 중 최소 SSE값이 기 설정된 SSE임계치보다 작을 경우 해당 참조 블록값을 원본 블록으로 복제하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제1항에 있어서, 상기 복제 전처리 절차는,
상기 인코딩할 프레임이 P 또는 B 프레임인 경우, 각 매크로블록을 참조 프레임 내의 모든 매크로블록과 비교하여 SSE값을 계산한 후, 참조 프레임의 블록들 중 최소 SSE값을 가진 블록이 미리 설정된 SSE임계치보다 작을 경우, 해당 참조 프레임의 블록값을 원본 블록으로 복제하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 1항에 있어서, 상기 영상 인코딩 방법은,
상기 인코딩된 프레임을 복원하여 복원된 프레임의 품질을 평가하는 단계; 및
상기 평가된 품질에 따라 복제할 블록을 구별하는 기준이 되는 임계치를 상향 또는 하향 조절하는 단계를
더 포함하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 8항에 있어서, 상기 프레임의 품질을 평가하는 단계는,
PSNR(Peak Signal-to-Noise Ratio) 계산 결과 및 인코딩된 프레임의 비트율을 기반으로 인코더가 목표로 하는 품질이 만족되는지 여부를 평가하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
- 제 8항에 있어서, 상기 임계치를 상향 또는 하향 조절하는 단계는,
상기 복원된 프레임의 품질이 낮을 경우 복제 기준이 되는 상기 임계치를 상향 조절하고, 상기 복원된 프레임이 품질을 만족하는 경우 상기 임계치를 유지하거나 일정 범위 내에서 하향 조절하는 것을 특징으로 하는 적응적 전처리 기법을 이용한 영상 인코딩 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20120030819A KR20130108948A (ko) | 2012-03-26 | 2012-03-26 | 적응적 전처리 기법을 이용한 영상 인코딩 방법 |
US13/743,630 US8891892B2 (en) | 2012-03-26 | 2013-01-17 | Image encoding method using adaptive preprocessing scheme |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20120030819A KR20130108948A (ko) | 2012-03-26 | 2012-03-26 | 적응적 전처리 기법을 이용한 영상 인코딩 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20130108948A true KR20130108948A (ko) | 2013-10-07 |
Family
ID=49211868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20120030819A KR20130108948A (ko) | 2012-03-26 | 2012-03-26 | 적응적 전처리 기법을 이용한 영상 인코딩 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8891892B2 (ko) |
KR (1) | KR20130108948A (ko) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8325796B2 (en) | 2008-09-11 | 2012-12-04 | Google Inc. | System and method for video coding using adaptive segmentation |
JP2015005835A (ja) * | 2013-06-19 | 2015-01-08 | シャープ株式会社 | 画像処理装置、画像形成装置及び記録媒体 |
WO2015053594A1 (ko) * | 2013-10-12 | 2015-04-16 | 삼성전자 주식회사 | 인트라 블록 복사 예측을 이용한 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
US9392272B1 (en) | 2014-06-02 | 2016-07-12 | Google Inc. | Video coding using adaptive source variance based partitioning |
US9578324B1 (en) | 2014-06-27 | 2017-02-21 | Google Inc. | Video coding using statistical-based spatially differentiated partitioning |
US10554965B2 (en) | 2014-08-18 | 2020-02-04 | Google Llc | Motion-compensated partitioning |
CN107277519B (zh) * | 2017-06-30 | 2019-11-15 | 武汉斗鱼网络科技有限公司 | 一种判断视频帧的帧类型的方法及电子设备 |
KR102380233B1 (ko) * | 2017-07-19 | 2022-03-29 | 삼성전자주식회사 | 부호화 방법 및 그 장치, 복호화 방법 및 그 장치 |
CN109087258B (zh) * | 2018-07-27 | 2021-07-20 | 中山大学 | 一种基于深度学习的图像去雨方法及装置 |
CN109510985B (zh) * | 2018-10-26 | 2021-01-15 | 杭州联海网络科技有限公司 | 视频编码方法及其装置 |
EP3965416B1 (en) * | 2020-09-08 | 2022-08-03 | Axis AB | Method and device for intra-coding an image frame |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6633611B2 (en) * | 1997-04-24 | 2003-10-14 | Mitsubishi Denki Kabushiki Kaisha | Method and apparatus for region-based moving image encoding and decoding |
JP3570863B2 (ja) * | 1997-08-05 | 2004-09-29 | 三菱電機株式会社 | 動画像復号化装置および動画像復号化方法 |
US6625319B1 (en) * | 1999-03-30 | 2003-09-23 | Koninklijke Philips Electronics N.V. | Image compression using content-based image similarity |
FR2872664A1 (fr) | 2004-07-01 | 2006-01-06 | Nextream France Sa | Dispositif et procede de pre-traitemebnt avant codage d'une sequence d'images video |
US7697610B2 (en) * | 2004-09-13 | 2010-04-13 | Microsoft Corporation | Variable block size early termination for video coding |
US8270490B2 (en) * | 2006-07-06 | 2012-09-18 | Canon Kabushiki Kaisha | Motion vector detection apparatus, motion vector detection method, image encoding apparatus, image encoding method, and computer program |
WO2011065761A2 (ko) | 2009-11-25 | 2011-06-03 | 에스케이텔레콤 주식회사 | 움직임 추정/보상을 위한 적응적 필터 생성 장치, 방법 및 기록 매체 |
-
2012
- 2012-03-26 KR KR20120030819A patent/KR20130108948A/ko not_active Application Discontinuation
-
2013
- 2013-01-17 US US13/743,630 patent/US8891892B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20130251279A1 (en) | 2013-09-26 |
US8891892B2 (en) | 2014-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102453759B1 (ko) | 비디오 신호의 디코딩 방법 및 장치 | |
KR20130108948A (ko) | 적응적 전처리 기법을 이용한 영상 인코딩 방법 | |
CN107113422B (zh) | 一种用于视频编码和解码的参考图片管理的计算机系统 | |
KR100989296B1 (ko) | 아티팩트 평가를 통한 향상된 이미지/비디오 품질 | |
EP2324638B1 (en) | System and method for video encoding using adaptive loop filter | |
JP4769605B2 (ja) | 動画像符号装置及び方法 | |
JP5418756B2 (ja) | 画像再符号化装置、画像再符号化方法及び画像再符号化プログラム | |
US9414086B2 (en) | Partial frame utilization in video codecs | |
JP7343668B2 (ja) | Vvcにおける色変換のための方法及び機器 | |
KR100846512B1 (ko) | 영상의 부호화, 복호화 방법 및 장치 | |
KR20200110442A (ko) | 다중 부호 비트 숨기기 및 잔차 부호 예측을 조화시키기 위한 방법 및 장치 | |
EP1833256B1 (en) | Selection of encoded data, setting of encoded data, creation of recoded data, and recoding method and device | |
JP7297918B2 (ja) | ビデオ符号化のための色変換 | |
KR20230091169A (ko) | 모션 벡터 차이의 향상된 시그널링을 위한 방법 및 장치 | |
JP5100572B2 (ja) | 符号化装置 | |
US20130077674A1 (en) | Method and apparatus for encoding moving picture | |
KR102286420B1 (ko) | 비디오 신호의 디코딩 방법 및 장치 | |
EP4133721A1 (en) | Method and apparatus for video coding | |
WO2005036886A1 (en) | Two-pass video encoding | |
KR100801155B1 (ko) | H.264에서의 저복잡도를 가지는 공간적 에러 은닉방법 | |
JP7443527B2 (ja) | ビデオコーディングのための方法、装置及びプログラム | |
KR100801532B1 (ko) | H.264/avc 비디오 표준에서의 옵티컬플로워를이용한 시방향 에러 은닉 방법 | |
KR20060034294A (ko) | 엔코딩 방법 및 디바이스 | |
KR20220143951A (ko) | 코딩된 픽쳐 버퍼를 사용한 비디오 데이터 인코딩 및 디코딩 | |
JP5421739B2 (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 |