KR100643269B1 - Roi를 지원하는 영상 코딩 방법 및 장치 - Google Patents

Roi를 지원하는 영상 코딩 방법 및 장치 Download PDF

Info

Publication number
KR100643269B1
KR100643269B1 KR1020040002378A KR20040002378A KR100643269B1 KR 100643269 B1 KR100643269 B1 KR 100643269B1 KR 1020040002378 A KR1020040002378 A KR 1020040002378A KR 20040002378 A KR20040002378 A KR 20040002378A KR 100643269 B1 KR100643269 B1 KR 100643269B1
Authority
KR
South Korea
Prior art keywords
wavelet
image
coefficients
block
wavelet coefficients
Prior art date
Application number
KR1020040002378A
Other languages
English (en)
Other versions
KR20050074150A (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
Priority to KR1020040002378A priority Critical patent/KR100643269B1/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to CNA200480042359XA priority patent/CN1926883A/zh
Priority to AU2004314092A priority patent/AU2004314092B2/en
Priority to PCT/KR2004/003260 priority patent/WO2005069634A1/en
Priority to BRPI0418392-4A priority patent/BRPI0418392A/pt
Priority to CA002552800A priority patent/CA2552800A1/en
Priority to JP2006549102A priority patent/JP2007522708A/ja
Priority to EP04258143A priority patent/EP1555829A1/en
Priority to US11/033,876 priority patent/US20050152611A1/en
Publication of KR20050074150A publication Critical patent/KR20050074150A/ko
Application granted granted Critical
Publication of KR100643269B1 publication Critical patent/KR100643269B1/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/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
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D19/00Pallets or like platforms, with or without side walls, for supporting loads to be lifted or lowered
    • B65D19/0004Rigid pallets without side walls
    • B65D19/0053Rigid pallets without side walls the load supporting surface being made of more than one element
    • B65D19/0077Rigid pallets without side walls the load supporting surface being made of more than one element forming discontinuous or non-planar contact surfaces
    • B65D19/0089Rigid pallets without side walls the load supporting surface being made of more than one element forming discontinuous or non-planar contact surfaces the base surface being made of more than one element
    • 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
    • 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
    • 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
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • 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
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • 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
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D2519/00Pallets or like platforms, with or without side walls, for supporting loads to be lifted or lowered
    • B65D2519/00004Details relating to pallets
    • B65D2519/00009Materials
    • B65D2519/00014Materials for the load supporting surface
    • B65D2519/00034Plastic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D2519/00Pallets or like platforms, with or without side walls, for supporting loads to be lifted or lowered
    • B65D2519/00004Details relating to pallets
    • B65D2519/00009Materials
    • B65D2519/00049Materials for the base surface
    • B65D2519/00069Plastic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D2519/00Pallets or like platforms, with or without side walls, for supporting loads to be lifted or lowered
    • B65D2519/00004Details relating to pallets
    • B65D2519/00547Connections
    • B65D2519/00552Structures connecting the constitutive elements of the pallet to each other, i.e. load supporting surface, base surface and/or separate spacer
    • B65D2519/00557Structures connecting the constitutive elements of the pallet to each other, i.e. load supporting surface, base surface and/or separate spacer without separate auxiliary elements
    • B65D2519/00562Structures connecting the constitutive elements of the pallet to each other, i.e. load supporting surface, base surface and/or separate spacer without separate auxiliary elements chemical connection, e.g. glued, welded, sealed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D2519/00Pallets or like platforms, with or without side walls, for supporting loads to be lifted or lowered
    • B65D2519/00004Details relating to pallets
    • B65D2519/00736Details
    • B65D2519/00825Finishing of the external surfaces
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Mechanical Engineering (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

본 발명은 일반적으로 비디오 압축에 관한 것으로서, 보다 상세하게는 웨이블릿 기반 스케일러블 이미지/비디오 코딩에서 한 프레임 내의 특정 영역만을 강조할 수 있도록 하는 ROI(Region-of-interest) 방법에 관한 것이다.
본 발명에 따른 영상 압축 방법은, 소정의 입력된 이미지에 대하여 웨이블릿 변환을 수행함으로써 웨이블릿 계수를 생성하는 단계와, 웨이블릿 계수가 갖는 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 단계와, 웨이블릿 블록별로 상기 웨이블릿 계수를 양자화하는 단계로 이루어진다.
본 발명에 따르면, 이미지를 블록별로 분할하여 ROI를 적용하는 경우에 발생하는 블록 경계 현상(blocking artifact)을 상당히 감소시킬 수 있다.
스케일러빌리티, 비디오, 이미지, 압축, 부호화, 복호화, 픽셀 그룹화, 엠베디드 양자화

Description

ROI를 지원하는 영상 코딩 방법 및 장치{Video/Image coding method enabling Region-of-Interest}
도 1은 종래의 스케일러블 비디오/이미지 코딩 시스템의 전체 구조를 간략히 도시한 개념도.
도 2은 종래의 JPEG-2000에서의 타일링(tiling) 기법을 나타낸 도면.
도 3은 종래의 타일링 기법을 이용하여 모션 보상 차분값을 압축함으로써 웨이블릿 기반의 스케일러블 비디오 엔코딩 과정을 나타낸 흐름도.
도 4는 본 발명에 따른 엔코더의 구성을 나타낸 블록도.
도 5는 입력 이미지 또는 프레임을 웨이블릿 변환에 의하여 서브밴드로 분해하는 과정의 예를 나타낸 도면.
도 6은 본 발명에 따른 타일링 과정을 개략적으로 설명하는 개념도.
도 7은 픽셀 그룹화 과정의 일 실시예를 나타낸 도면.
도 8은 본 발명에 따른 프리 디코더의 구성을 나타낸 블록도.
도 9는 본 발명에 따른 디코더의 구성을 나타낸 블록도.
도 10은 본 발명에 따른 엔코딩 방법을 설명하는 흐름도.
도 11은 본 발명에 따른 ROI 적용 방법을 설명하는 흐름도.
도 12은 본 발명에 따른 디코딩 방법을 설명하는 흐름도.
도 13은 종래의 엠베디드 양자화 과정을 설명하는 흐름도.
도 14는 본 발명에 따른 엠베디드 양자화 과정(도 10의 S250 내지 S253)을 설명하는 흐름도.
도 15는 본 발명에 따른 엔코딩, 프리 디코딩 또는 디코딩 방법을 수행하기 위한 시스템의 구성도.
(도면의 주요부분에 대한 부호 설명)
10 : 입력 비디오 15 : 입력 이미지
20 : 비트 스트림(20) 25 : 일부 추출된 비트 스트림(25)
30 : 출력 비디오 35 : 출력 이미지
300 : 엔코더 350 : 프리 디코더
400 : 디코더 510 : 비디오/이미지 소스
520 : 입출력 장치 530 : 디스플레이 장치
540 : 프로세서 550 : 메모리
본 발명은 일반적으로 비디오 압축에 관한 것으로서, 보다 상세하게는 웨이블릿 기반 스케일러블 이미지/비디오 코딩에서 한 프레임 내의 특정 영역만을 강조할 수 있도록 하는 ROI(Region-of-interest) 방법에 관한 것이다.
인터넷을 포함한 정보통신 기술이 발달함에 따라 문자, 음성뿐만 아니라 화 상통신이 증가하고 있다. 기존의 문자 위주의 통신 방식으로는 소비자의 다양한 욕구를 충족시키기에는 부족하며, 이에 따라 문자, 영상, 음악 등 다양한 형태의 정보를 수용할 수 있는 멀티미디어 서비스가 증가하고 있다. 멀티미디어 데이터는 그 양이 방대하여 대용량의 저장매체를 필요로 하며 전송시에 넓은 대역폭을 필요로 한다. 따라서 문자, 영상, 오디오를 포함한 멀티미디어 데이터를 전송하기 위해서는 압축코딩기법을 사용하는 것이 필수적이다.
데이터를 압축하는 기본적인 원리는 데이터의 중복(redundancy)을 없애는 과정이다. 이미지에서 동일한 색이나 객체가 반복되는 것과 같은 공간적 중복이나, 동영상 프레임에서 인접 프레임이 거의 변화가 없는 경우나 오디오에서 같은 음이 계속 반복되는 것과 같은 시간적 중복, 또는 인간의 시각 및 지각 능력이 높은 주파수에 둔감한 것을 고려한 심리시각 중복을 없앰으로서 데이터를 압축할 수 있다.
현재 대부분의 비디오 코딩 표준은 모션 보상 예측 코딩법에 기초하고 있는데, 시간적 중복은 모션 보상에 근거한 시간적 필터링(temporal filtering)에 의해 제거하고, 공간적 중복은 공간적 변환(spatial transform)에 의해 제거한다.
데이터의 중복을 제거한 후 생성되는 멀티미디어를 전송하기 위해서는, 전송매체가 필요한데 그 성은은 전송매체 별로 차이가 있다. 현재 사용되는 전송매체는 초당 수십 메가비트의 데이터를 전송할 수 있는 초고속통신망부터 초당 384 kbit의 전송속도를 갖는 이동통신망 등과 같이 다양한 전송속도를 갖는다.
이와 같은 환경에서, 다양한 속도의 전송매체를 지원하기 위하여 또는 전송환경에 따라 이에 적합한 전송률로 멀티미디어를 전송할 수 있도록 하는, 즉 스케 일러빌리티(scalability)를 갖는 데이터 코딩방법이 멀티미디어 환경에 보다 적합하다 할 수 있다.
이러한 스케일러빌리티란, 하나의 압축된 비트 스트림에 대하여 비트 레이트, 에러율, 시스템 자원 등의 조건에 따라 디코더(decoder) 또는 프리 디코더(pre-decoder) 단에서 부분적 디코딩을 할 수 있게 해주는 부호화 방식이다. 디코더 또는 프리 디코더는 이러한 스케일러빌리티를 갖는 코딩 방식으로 부호화된 비트 스트림의 일부만을 취하여 다른 화질, 해상도, 또는 프레임 레이트를 갖는 멀티미디어 시퀀스를 복원할 수 있다.
이미, MPEG-21(moving picture experts group-21) PART-13에서 스케일러블 비디오 코딩(scalable video coding)에 관한 표준화를 진행 중에 있는데, 그 중 공간적 변환 방법에서 웨이블릿-기반의(wavelet-based) 방식이 유력한 방법으로 인식되고 있다. 그리고, 정지 영상(이하 '이미지'라 한다)에 대해서는 웨이블릿-기반의 스케일러블 이미지 코딩인 JPEG-2000(joint photographic coding experts group-2000) 방식이 이미 실용화되어 있는 상태이다.
종래에는 이와 같은 웨이블릿-기반의 비디오/이미지 코딩에 있어서 ROI(Region-of-interest) 기능을 지원하는 예는 많지 않았다. 그러나 JPEG-2000과 같은 웨이블릿-기반의 이미지 코딩(wavelet-based image coding)에서는 타일링(tiling) 기법을 이용하여 ROI 기능을 지원하고 있다. 따라서, 공간적 변환(spatial transform)에 있어서 JPEG-2000 에서의 방식을 이용하는 비디오 코더(video coder)들은 ROI 기능을 지원한다고 할 수 있다.
도 1은 스케일러블 비디오/이미지 코딩 시스템의 전체 구조를 간략히 도시한 것이다. 여기서, 엔코더는 영상 압축 장치로, 디코더는 영상 압축 해제 장치로 이해될 수 있다.
먼저, 엔코더(encoder; 100)는 입력 비디오/이미지(10)를 부호화하여 하나의 비트 스트림(20)을 생성한다.
그리고, 프리 디코더(pre-decoder; 150)는 디코더(decoder; 200)와의 통신 환경 또는 디코더(200) 단에서의 기기 성능 등을 고려한 조건, 예를 들어, 비트 레이트, 해상도 또는 프레임 레이트를 추출 조건으로 하여, 엔코더(100)로부터 수신한 비트 스트림(20)을 잘라내어 다양한 비트 스트림(25)을 추출할 수 있다.
디코더(200)는 상기 추출한 비트 스트림(25)으로부터 출력 비디오/이미지(30)를 복원한다. 물론, 상기 추출 조건에 의한 비트 스트림의 추출은 반드시 프리 디코더(150)에서 수행되는 것은 아니고, 디코더(200)에서 수행될 수도 있다. 또한, 프리 디코더(150) 및 디코더(200) 모두에서 수행될 수도 있다.
도 2는 종래의 JPEG-2000에서의 타일링 기법을 나타낸 것이다.
도 2에서 보는 바와 같이, 입력 이미지는 소정의 개수(본 실시예에서는 5ⅹ4)의 타일로 분해, 즉 타일화 과정을 거친 후, 각각의 타일에 대하여 웨이블릿 변환(wavelet transform)을 수행한다. 그리고, 웨이블릿 변환을 통하여 구한 웨이블릿 계수를 엠베디드 양자화(embedded quantization)함으로써 압축된 비트 스트림을 생성하게 된다. 상기 엠베디드 양자화 방식에는 하기하는 EZW(Embedded Zerotrees Wavelet Algorithm), SPIHT(Set Partitioning in Hierarchical Trees), EZBC(Embedded ZeroBlock Coding) 등이 있다.
도 3은 도 2에서의 타일링 기법을 이용하여 모션 보상 차분값(motion compensated residual)을 압축함으로써 웨이블릿 기반의 스케일러블 비디오 엔코딩 과정을 나타낸 흐름도이다.
엔코딩 과정을 보면, 먼저, 입력 비디오(10)로부터 모션 추정을 수행하고(S110) 이로부터 구할 수 있는 모션 벡터를 이용하여 시간적 필터링(S120)을 수행한다. 시간적 필터링(S120)을 거치면서 생성되는 모션 보상 차분값(motion compensated residual)을 공간적 도메인(spatial domain) 즉, 원 이미지의 영역을 복수 개의 타일 내지 블록들(T0, T1, ... , Tn-1, Tn)로 분할한다(S130).
그 다음, 각각의 타일에 대해서 웨이블릿 변환(wavelet transform)을 수행한다(S140 내지 S143). 그리고, 상기 변환 결과 생성된 웨이블릿 계수(wavelet coefficient)를 양자화(quantization)하여 각각의 타일에 대한 비트 스트림을 생성한다(S150 내지 S153). 마지막으로, 생성된 각각의 비트 스트림을 결합하여 하나의 비트 스트림(20)으로 만든다(S160).
이후, 엔코딩 과정에서 나눈 타일 별로 생성되는 비트 스트림 각각에 대하여 적절한 비트를 할당할 수 있다. 이는 이미지 컨텐츠(image contents)에 적응적(adaptive)으로 비트를 할당함으로써 전체적인 성능을 향상시키는 결과를 가져온다. 뿐만 아니라, 특정 타일에 대하여 더 많은 비트를 할당함으로써 ROI, 즉 관심 영역의 품질을 더 향상시킬 수 있게 된다
이와 같은, 종래의 타일링 방식의 문제점은 크게 세 가지로 볼 수 있다.
첫 번째로, 각 타일들이 독립적으로 엔코딩되므로, 복원시 타일 경계부분(boundary)에서 블록 경계 현상(blocking artifact)이 많이 나타나게 된다. 두 번째로, 각 타일들 간에 존재하는 유사성을 활용하지 못함에 따라 전체적인 성능(overall performance)이 하락하게 된다. 마지막으로, 웨이블릿 변환은 크기가 작은 타일에 대해서는 효과적이지 못하므로, 타일의 크기가 작은 경우에는 성능 하락이 발생하는 문제점이 있다.
본 발명은 상기한 문제점을 고려하여 창안된 것으로, 종래의 공간적 도메인에서의 타일링 방식을 개선하여, 입력된 이미지에 대한 웨이블릿 기반의 코딩 기법에 있어서, 웨이블릿 도메인에서 ROI를 구현하는 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 ROI를 구현하면서도 경계부분의 블록 경계 현상(block artifact)을 완화할 수 있는 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 영상 압축 방법은, 소정의 입력된 이미지에 대하여 웨이블릿 변환을 수행함으로써 웨이블릿 계수를 생성하는 (a) 단계; 상기 웨이블릿 계수가 갖는 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 (b)단계; 및 상기 웨이블릿 블록별로 상기 웨이블릿 계수를 양자화하는 (c)단계를 포함하는 것을 특징으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 영상 압축 해제 방법은, 입력 비트 스트림을 이용하여, 웨이블릿 블록별로 공간적 연관성에 따라 배열된 웨이블릿 계수를 구하는 (a)단계; 상기 웨이블릿 블록별로 배열되어 있는 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수로 환원하는 (b)단계; 및 상기 재배열된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원하는 (c)단계를 포함하는 것을 특징으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 영상 압축 장치는, 소정의 입력된 이미지에 대하여 웨이블릿 변환을 수행함으로써 웨이블릿 계수를 생성하는 웨이블릿 변환부; 상기 웨이블릿 계수가 갖는 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 픽셀 그룹화부; 및 상기 웨이블릿 블록별로 상기 웨이블릿 계수를 양자화하는 엠베디드 양자화부를 포함하는 것을 특징으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 영상 압축 해제 장치는, 입력 비트 스트림을 이용하여 웨이블릿 블록별로 공간적 연관성에 따라 배열된 웨이블릿 계수를 구하는 역 엠베디드 양자화부; 상기 웨이블릿 블록별로 배열된 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수로 환원하는 역 픽셀 그룹화부; 및 상기 재배열된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원하는 역 웨이블릿 변환부를 포함하는 것을 특징으로 한다.
본 명세서 전체에서 '비디오(video)'는 동영상(moving picture)을, '이미지(image)'는 정지영상(still picture)를 의미하는 것으로 한다. 그리고, 비디오 와 이미지를 통칭하여 '영상'이라고 표현할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
도 4는 본 발명에 따른 엔코더의 구성을 나타낸 블록도이다. 본 발명에 따른 엔코더(300)은 조각화부(301)와, 모션 추정부(302)와, 시간적 필터링부(303)와, 웨이블릿 변환부(304)와, 픽셀 그룹화부(305)와, 엠베디드 양자화부(306)와, 비트스트림 결합부(307)를 포함하여 구성될 수 있다.
먼저, 조각화부(301)는 입력 비디오(10)를 엔코딩의 기본 단위인 GOP(group of pictures)로 나눈다.
모션 추정부(302)는 각각의 GOP에 존재하는 프레임들에 관한 모션 추정을 수행하여 모션 벡터(motion vector)를 선정한다. 상기 모션 추정 방법으로서, 계층적 가변 사이즈 블록 매칭법(Hierarchical Variable Size Block Matching; HVSBM)에 의한 계층적인 방법을 사용할 수 있다.
시간적 필터링부(303)는 모션 추정부(302)에 하여 구해진 모션 벡터를 이용 하여 시간축 방향으로 프레임들을 저주파와 고주파 프레임으로 분해함으로써 시간적 중복성을 감소시킨다.
예를 들어, 프레임의 평균을 저주파 성분으로 하고 두 프레임의 차이의 반을 고주파 성분으로 할 수 있다. 프레임들을 분해할 때는 GOP 별로 분해한다. 모션 벡터를 이용하지 않고 단순히 프레임 간의 같은 위치에 존재하는 픽셀들을 비교함으로써 고주파 성분의 프레임과 저주파 성분의 프레임으로 분해할 수 있으나, 이는 모션 벡터를 이용하는 경우에 비하여 상기 시간적 중복성을 감소시키는 데 있어 덜 효율적이다.
즉 제1 프레임과 제2 프레임을 비교할 때 제1 프레임의 일정 영역이 제2 프레임에서 이동한 경우에 이동의 정도는 모션 벡터로 대표될 수 있고, 양자를 비교할 때 제1 프레임의 일정 영역과 제2 프레임의 동일 위치가 모션 벡터에 해당하는 크기만큼 이동한 영역을 비교하여 즉, 시간적 이동 부분만큼을 보상한 후에 제1 및 제2 프레임을 저주파와 고주파 프레임으로 분해한다.
시간적 필터링 방법으로는, 예컨대 MCTF(Motion Compensated Temporal Filtering)을 사용할 수 있다.
웨이블릿 변환부(304)는 시간적 필터링부(303)에 의하여 시간적 중복성이 제거된 프레임에 대하여, 웨이블릿 변환(wavelet transform)을 사용함으로써, 하나의 프레임을 분해하여 저주파수 서브밴드(sub-band)와 고주파수 서브밴드로 구분하고, 각각에 대한 웨이블릿 계수(wavelet coefficient)를 구한다.
도 5는 입력 이미지 또는 프레임을 웨이블릿 변환에 의하여 서브밴드로 분해 하는 과정의 예를 나타낸 것으로, 2단계 레벨로 분할한 것이다.
여기에는 세가지의 고주파수 서브밴드, 즉 수평, 수직, 및 대각 위치의 서브밴드가 있다. 저주파수 서브밴드, 즉 수평 및 수직 방향 모두에 대하여 저주파수인 서브밴드는 'LL'이라고 표기한다. 상기 고주파수 서브밴드는 'LH', 'HL', 'HH'로 표기하는데, 이는 각각 수평방향 고주파수, 수직방향 고주파수, 그리고 수평 및 수직방향 고주파수 서브밴드를 의미한다. 그리고, 저주파수 서브밴드는 반복적으로 더 분해될 수 있다. 괄호 안의 숫자는 웨이블릿 변환 레벨을 나타낸 것이다.
다시 도 4를 참조하면, 픽셀 그룹화부(305)는 도 6에서 보는 바와 같이, 웨이블릿 변환을 통하여 공간적 중복성이 제거된 웨이블릿 계수(내지 픽셀)들을 그 공간적 연관성에 따라서 재배열하여 소정의 개수를 갖는 웨이블릿 블록(wavelet block)을 생성한다.
JPEG-2000과 같은 종래 기술에서는 입력된 이미지를 공간적 도메인에서 분할하는데 비해, 본 발명에서는 먼저, 입력된 이미지에 대하여 웨이블릿 변환을 한 후, 웨이블릿 도메인(wavelet-domain)에서 표현되는 각 픽셀들의 공간적 관계를 이용하여 관계된 픽셀들을 하나로 묶는다. 이와 같이 관계된 픽셀을 묶어서 재배열하는 과정은 실제로는 각각의 픽셀에 대응되는 웨이블릿 계수를 재배열하는 과정에 의하여 수행된다.
이처럼 서로 관계된 픽셀들이 묶여진 단위를 웨이블릿 블록(wavelet block, WB)이라고 하며, 이는 웨이블릿-기반의 비디오 코딩 등에서 공간적 스케일러빌리티(scalability)를 구현하기 위하여 사용되고 있다.
도 7은 상기 픽셀 그룹화 과정의 일 실시예를 나타낸 도면이다. 웨이블릿 블록(WB로 표기)은 기본적으로 웨이블릿 변환시 L 밴드(예컨대, LL(3))에 존재하는 픽셀 1개에 대해 관련된 다른 밴드의 픽셀들을 모아서 구성하는 것이다. 웨이블릿 레벨이 n이라고 할 때, ROI 영역은 2n×2n 픽셀 크기가 된다.
이와 같이, ROI 영역을 작게 잡으면 세밀하게 ROI 컨트롤을 할 수 있다는 장점이 있지만, 총 웨이블릿 블록의 수가 너무 많아져서 처리 속도 등에서 불리할 수 있다. 따라서 이를 확장하여, 웨이블릿 블록을 L 밴드의 복수개의 픽셀을 모아서 구성할 수도 있다.
즉, L 밴드에 있는 복수개의 픽셀(통상 2x2, 4x4, 8x8 등의 크기를 사용한다)에 대해 관련 픽셀들을 모두 모아서 역시 웨이블릿 블록과 같은 형태를 구성할 수 있다. 이 경우 L 밴드의 픽셀 1개와 관련된 다른 밴드의 픽셀을 모아 웨이블릿 블록을 구성하는 경우에 비하여, 상대적으로 ROI 영역을 세밀하게 지정하지는 못한다. 그러나 전체 웨이블릿 블록의 개수를 줄일 수 있으므로, 응용 분야에 따라서 적절하게 웨이블릿 블록의 수를 결정할 수 있다.
이하에서는, 공간적 연관성이 있는 픽셀들을 찾는데 기준이 되는, L 밴드에 존재하는 하나 이상의 픽셀을 '기초 유닛'이라고 정의한다. 이러한 기초 유닛의 크기를 다르게 조절함으로써, 웨이블릿 블록의 크기를 가변적으로 조절할 수 있다.
이러한 웨이블릿 블록들은 공간적 도메인에서의 하나의 타일(또는 블록)에 대응된다. 다만, 이는 정확한 대응은 아니며, 웨이블릿 블록은 타일 경계간에서의 유사성을 고려하여 웨이블릿 변환한 것과 같은 의미를 갖는다.
다시 말해서, 웨이블릿 변환은 공간적 도메인에 비해서 공간적으로 스무드(smooth)한 계수들을 가지므로, 이 영역에서 각 웨이블릿 블록별로 서로 다른 비트를 할당함으로써 생기는 블록 경계 현상(blocking artifact)는 타일링 방식과는 달리 웨이블릿 도메인에서 나타난다. 따라서, 디코더에서 최종적으로 역 웨이블릿 변환을 하여 복원된 이미지는 블록 경계 현상 갖지 않고, 링 경계 현상(ringing artifact) 형태로 나타나게 되는데, 이러한 링 경계 현상은 주관적 화질면에서 블록 경계 현상에 비하여 상대적으로 유리하다.
다시 도 7을 참조하면, L 밴드의 기초 유닛과 공간적 연관성이 있는 부분은 각각의 서브밴드에서 상대적 위치가 같은 부분이다. 도 7에서는 이러한 부분들을 빗금, 또는 체크무늬로 표시하였다. WB0는 기초 유닛과 공간적 연관성이 있는 부분을 모아서 재배열한 것이다. 따라서, 만약 WB0를 웨이블릿 역변환한다면 공간적 도메인에서 그 위치에 해당하는 이미지를 생성할 수 있을 것이다.
다시 도 4를 참조하면, 엠베디드 양자화부(306)는 픽셀 그룹화부(305)에 의하여 재배열된 웨이블릿 계수를 각각의 웨이블릿 블록별로 엠베디드 양자화한다.
이와 같이, 웨이블릿 블록별로 웨이블릿 계수를 엠베디드 양자화하는 방법으로는 EZW(Embedded Zerotrees Wavelet Algorithm), SPIHT(Set Partitioning in Hierarchical Trees), EZBC(Embedded ZeroBlock Coding) 등을 사용할 수 있다. 이 방법들은 본 발명에서 이용한 웨이블릿 도메인에서의 픽셀간 공간적 관계를 잘 활용할 수 있어서, 본 발명에서의 엠베디드 양자화 과정에 사용하기에 적합하다.
상기 픽셀간 공간적 관계는 트리(tree) 형태로 나타나는데, 트리의 루트(root)가 0인 경우 그 자식(children)도 0의 값을 가질 확률이 높다는 것을 이용함으로써 효과적으로 부호화를 수행할 수 있다. 이러한 알고리즘들은 내부적으로 L밴드의 픽셀 1개에 대해 서로 관련된 픽셀들을 스캔하면서 처리를 수행하게 된다.
한편, 스케일러빌리티(scalability)를 구현하기 위해서는, 소정의 문턱값(threshold)을 정해놓고 상기 문턱값보다 큰 값을 갖는 픽셀들만 엔코딩을 하고, 모든 픽셀에 대한 처리가 끝나면 문턱값을 낮추고 다시 반복하는 과정을 통하여 엠베디드 양자화를 수행한다.
마지막으로, 비트스트림 결합부(307)는 엠베디드 양자화부(306)에 의하여 각각의 웨이블릿 블록별로 생성되는 각각의 비트스트림을 하나의 비트스트림(20)으로 결합한다.
본 발명은 이와 같은 동영상(비디오) 뿐만이 아니라, 정지 영상(이미지)에 대해서도 적용될 수 있다. 입력 이미지(15)는 웨이블릿 변환부(304), 픽셀 그룹화부(305), 엠베디드 양자화부(306), 및 비트스트림 결합부(307)에서 동영상의 경우와 마찬가지의 과정을 거쳐서 비트 스트림(20)으로 생성될 수 있다.
도 8은 본 발명에 따른 프리 디코더(pre-decoer)의 구성을 나타낸 블록도이다.
엔코더(300) 단에서는 ROI를 고려하지 않고 엔코딩 되었더라도 프리 디코더(350), 내지 트랜스코더 단에서 임의의 관심 영역을 지정하여 상대적으로 더 많은 비트를 할당함으로써 새로운 비트 스트림을 생성할 수 있다. 실제로 이 생성 과정은 각각의 웨이블릿 블록에 대한 비트 스트림을 잘라내는(truncation) 과정에 의하여 수행된다.
이와 같은 본 발명에 따른 프리 디코더(350)는, 비트 스트림 분해부(351)와, 비트 레이트 할당부(352)와, 비트 스트림 추출부(353)와, 비트 스트림 결합부(354)를 포함하여 구성될 수 있다.
먼저, 비트 스트림 분해부(351)는 엔코더(300)으로부터 수신한 비트 스트림(20)을 각각의 웨이블릿 블록별로 분해한다.
그리고, 비트 레이트 할당부(352)는 상기 분해된 비트 스트림 각각에 대하여 각각 비트 레이트를 할당한다. 먼저, 프레임 전체에 대한 목표 비트 레이트를 먼저 결정한 다음, 중요하다고 판단되는 부분에 상대적으로 많은 비트 레이트를 할당하고, 덜 중요한 부분에 상대적으로 적은 비트 레이트를 할당하여, 할당한 전체 비트 레이트의 합이 목표 비트 레이트가 되도록 한다.
또한, 비트 스트림 추출부(353)는 상기 각각 할당한 비트 레이트에 따라 각각의 비트 스트림을 잘라내어 각각의 새로운 비트 스트림을 추출한다.
그리고, 비트 스트림 결합부(354)는 비트 스트림 추출부(353)에서 각각 추출된 복수의 비트 스트림을 하나의 비트 스트림(25)으로 결합한다.
도 9는 본 발명에 따른 디코더(decoer)의 구성을 나타낸 블록도이다. 본 발명에 따른 디코더(400)은 비트 스트림 분해부(410)와, 역 엠베디드 양자화부(420) 와, 픽셀 그룹화부(430)와, 역 웨이브릿 변환부(440)와, 역 시간적 필터링부(450)를 포함하여 구성될 수 있다.
디코더(400)에서의 동작은 대체적으로 엔코더(300)에서의 동작의 역순으로 수행된다. 다만, 모션 벡터를 구하는 모션 추정 과정은 엔코더(300)의 모션 추정부(302)에서만 이루어지고 디코더(400)에서는 상기 모션 벡터를 전달받아 이를 이용하면 되므로, 모션 추적 과정의 역순에 해당하는 과정은 존재하지 않는다.
먼저, 비트 스트림 분해부(410)는 프리 디코더(350)로부터 수신한 비트 스트림(25)을 각각의 웨이블릿 블록별로 분해한다. 상기 비트 스트림(25)이 프리 디코더(350)에서 ROI를 위한 비트할당 과정을 거치지 않고 엔코더로부터 직접 수신된 비트 스트림(20)인 경우에도 디코더(400) 단에서는 마찬가지 과정을 거쳐서 동작한다.
역 엠베디드 양자화부(420)는 엔코더(300)에서의 엠베디드 양자화부(306)에서의 동작을 역순으로 수행한다. 즉, 상기 분해된 각각 비트 스트림으로부터, 웨이블릿 블록별로 재배열된 웨이블릿 계수를 구한다.
역 픽셀 그룹화부(430)는 엔코더(300)에서의 픽셀 그룹화부(305)에서의 동작을 역순으로 수행한다. 즉, 상기 웨이블릿 블록별로 배열되어 있는 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수가 되도록 환원한다. 이 과정은 도 6에서의 재배열 과정의 역순으로 진행된다.
그리고, 역 웨이블릿 변환부(440)는 상기 재배열된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원한다. 이 과정에서 각각의 GOP에 상응하는 웨이블릿 계수는 역 웨이블릿 변환에 따라서 변환되어, 시간적 필터링이 되어 있는 프레임이 생성된다.
마지막으로, 역 시간적 필터링부(450)는 상기 생성된 프레임과 엔코더(300)에서 생성된 모션 벡터를 이용하여 상기 시간적 필터링 과정을 역으로 수행함으로써 최종 출력 비디오(30)를 생성한다.
엔코더(300)에서 살펴본 바와 마찬가지로, 본 발명은 이와 같은 비디오 뿐만이 아니라, 이미지에 대해서도 적용될 수 있다. 프리 디코더(350)으로부터 입력되는 비트 스트림(25)은 비트 스트림 분해부(410), 역 엠베디드 양자화부(420), 역 픽셀 그룹화부(430), 및 역 웨이블릿 변환부(440)에서 비디오의 경우와 마찬가지의 과정을 거쳐서 출력 이미지(35)로 생성될 수 있다.
또한, 도 4, 도 8 및 도 9의 실시예에서는 엔코더(300), 프리 디코더(350), 디코더(400)를 모두 별도의 기기인 것으로 하여 설명하였지만, 이에 한하지 않고, 엔코더(300)에 프리 디코더(350)가 포함된 것으로 구성할 수도 있고, 디코더(400)에 프리 디코더(350)가 포함된 것으로 구성할 수도 있음은 당업자에게는 자명하다고 할 것이다.
도 10은 본 발명에 따른 엔코딩 방법을 설명하는 흐름도이다.
먼저, 수신된 입력 비디오(10)에 대하여 모션 추정부(302)를 통하여 모션 추정을 수행하고, 모션 벡터를 선정한다(S210).
상기 모션 벡터를 이용하여 시간축 방향으로 프레임들을 저주파와 고주파 프레임으로 분해함으로써 시간적 중복성을 제거하는 시간적 필터링 과정을 수행한다(S220).
다음으로, 상기 시간적 중복성이 제거된 프레임에 대하여 저주파수 서브밴드와 고주파수 서브밴드로 구분하고, 각각에 대한 웨이블릿 계수를 구하는 웨이블릿 변환 과정을 수행한다(S230).
상기 웨이블릿 변환을 통하여 공간적 중복성이 제거된 웨이블릿 계수를 그 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 픽셀 그룹화 과정을 수행한다(S240).
상기 생성된 웨이블릿 블록 각각에 대하여 엠베디드 양자화를 수행하고 각 웨이블릿 블록 별로 비트스트림을 생성한다(S250 내지 S253). 상기 엠베디드 양자화에 관하여 보다 자세한 설명은 도 14의 설명에서 하기로 한다.
마지막으로, 상기 각 웨이블릿 별로 생성된 비트스트림을 하나의 비트 스트림으로 결합한다(S260).
도 10에서의 과정은 동영상(비디오)에 한정되지 않으며, 입력 정지영상(이미지)에 대하여 S230 이후의 단계를 수행함으로써 정지영상에 대한 비트 스트림(20)을 생성할 수 있음에 주목하여야 할 것이다.
도 11은 본 발명에 따른 프리 디코더 단에서 ROI를 적용하는 방법을 설명하는 흐름도이다.
먼저, 엔코더(300)로부터 수신한 비트 스트림(20)을 각각의 웨이블릿 블록별로 분해한다(S310).
상기 분해된 비트 스트림, 즉 웨이블릿 블록(WB) 각각에 대하여 각각 비트 레이트를 할당한다(S320 내지 S323). 여기서, 비트 레이트의 할당시 목표 비트 레이트를 먼저 결정한 다음, 중요하다고 판단되는 부분에 상대적으로 많은 비트 레이트를 할당하고, 덜 중요한 부분에 상대적으로 적은 비트 레이트를 할당하여, 할당한 전체 비트 레이트가 목표 비트 레이트가 되도록 한다.
상기 각각 할당한 비트 레이트에 따라 각각의 비트 스트림을 잘라내어 각각의 새로운 비트 스트림을 추출한다(S330 내지 S333).
그리고, 상기 각각 추출된 복수의 비트 스트림을 하나의 비트 스트림(25)으로 결합한다(S340).
도 12는 본 발명에 따른 디코딩 방법을 설명하는 흐름도이다.
프리 디코더(350)로부터 수신한 비트 스트림(25)을 각각의 웨이블릿 블록별로 분해한다(S410).
상기 분해된 각각의 비트 스트림으로부터, 웨이블릿 블록별(WB)로 재배열된 웨이블릿 계수를 구하는 역 엠베디드 양자화 과정을 수행한다(S420 내지 S423).
상기 웨이블릿 블록별로 배열된 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수로 환원하는 역 픽셀 그룹화 과정을 수행한다(S430).
상기 환원된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원하는 역 웨이블릿 변환 과정을 수행한다(S440).
그리고, 상기 생성된 프레임과 엔코더(300)에서 생성된 모션 벡터를 이용하여 상기 시간적 필터링 과정을 역으로 수행함으로써 최종 출력 비디오(30)를 생성한다(S450).
한편, 입력된 비트 스트림(25)이 이미지 정보에 관한 것일 때에는, S410, S420 내지 S423, S430, 및 S440 과정을 거침으로써 출력 이미지(35)가 생성된다.
도 13은 종래의 엠베디드 양자화 과정을 설명하는 흐름도이다. 종래의 엠베디드 양자화 방식에는 EZW, SPIHT, EZBC 등이 있다. 이들은 제로 트리 또는 제로 블록를 이용하여 양자화 하는 방법이다.
먼저, 초기의 문턱값을 결정한다(S11). 다음으로, L 밴드의 픽셀 1개에 대해 공간적으로 관련된 모든 픽셀들을 스캔하면서 문턱값보다 큰 픽셀값을 갖는 픽셀만을 엔코딩한다(S12). 웨이블릿 도메인에서의 픽셀이 갖는 픽셀 값은 웨이블릿 계수를 의미하는 것이라는 점에 주목하여야 할 것이다.
다음으로 L 밴드의 다음 픽셀 1개에 공간적으로 관련된 모든 픽셀에 대해서도 S12와 마찬가지의 과정을 반복한다. 이와 같이, 모든 픽셀이 처리될 때까지 S12 과정을 반복하여 수행한다(S13). 다음으로, 상기 문턱값을 2로 나누고 다시 S12 내지 S14 단계를 반복한다(S40). 만약, 문턱값이 0이 되면(S14의 예) 종료한다.
도 14는 본 발명에 따른 엠베디드 양자화 과정(도 10의 S250 내지 S253)을 설명하는 흐름도이다.
본 발명에 따른 엠베디드 양자화 방법에 있어서도, 도 7에서 보는 바와 같이, L 밴드의 픽셀이 갖는 공간적 관련성을 이용하므로 이러한 알고리즘을 매우 쉽게 적용될 수 있다. 즉, 기초 유닛과 공간적 관련성이 있는 그룹화된 픽셀들에 대해 문턱값을 줄여가면서 엔코딩하고, 문턱값이 0이 되면 다른 웨이블릿 블록을 처리하도록 바꾸는 것이다. 이렇게 하면 EZW, EZBC, SPIHT 등의 엠베디드 양자화 방 법을 본 발명에 적용함으로써, 이미지 코딩 기법에 ROI 기능을 추가할 수 있게 된다.
본 발명에 따라서, 도 13에서와 같은 종래의 엠베디드 양자화 방법과 달라진 점은 도 14에서 보는 바와 같다. 먼저, 초기 문턱값 결정한다(S21). 다음으로, 하나의 웨이블릿 블록에 존재하는 픽셀들, 즉 L 밴드의 기초 유닛과 공간적으로 관련된 모든 픽셀들을 스캔하면서 문턱값보다 큰 픽셀값을 갖는 픽셀만을 엔코딩한다(S22). 다음으로 상기 문턱값을 2로 나누고 다시 S22 단계를 반복한다(S24). 만약, 상기 반복 과정 중에 문턱값이 0이 되기 전까지(S23의 아니오), 다음 웨이블릿 블록에 대하여 S22 내지 S24 과정을 반복한다. 이와 같이, 모든 웨이블릿 블록이 처리될 때까지 S22 내지 S24 과정을 반복하여 수행한다(S25).
도 15는 본 발명에 따른 엔코딩, 프리 디코딩 또는 디코딩 방법을 수행하기 위한 시스템의 구성도이다. 상기 시스템은 TV, 셋탑박스, 데스크탑, 랩탑 컴퓨터, 팜탑(palmtop) 컴퓨터, PDA(personal digital assistant), 비디오 또는 이미지 저장 장치(예컨대, VCR(video cassette recorder), DVR(digital video recorder) 등)를 나타내는 것일 수 있다. 뿐만 아니라, 상기 시스템은 상기한 장치들을 조합한 것, 또는 상기 장치가 다른 장치의 일부분으로 포함된 것을 나타내는 것일 수도 있다. 상기 시스템은 적어도 하나 이상의 비디오/이미지 소스(video source; 510), 하나 이상의 입출력 장치(520), 프로세서(540), 메모리(550), 그리고 디스플레이 장치(530)를 포함하여 구성될 수 있다.
비디오/이미지 소스(510)는 TV 리시버(TV receiver), VCR, 또는 다른 비디오/이미지 저장 장치를 나타내는 것일 수 있다. 또한, 상기 소스(510)는 인터넷, WAN(wide area network), LAN(local area network), 지상파 방송 시스템(terrestrial broadcast system), 케이블 네트워크, 위성 통신 네트워크, 무선 네트워크, 전화 네트워크 등을 이용하여 서버로부터 비디오/이미지를 수신하기 위한 하나 이상의 네트워크 연결을 나타내는 것일 수도 있다. 뿐만 아니라, 상기 소스는 상기한 네트워크들을 조합한 것, 또는 상기 네트워크가 다른 네트워크의 일부분으로 포함된 것을 나타내는 것일 수도 있다.
입출력 장치(520), 프로세서(540), 그리고 메모리(550)는 통신 매체(560)를 통하여 통신한다. 상기 통신 매체(560)에는 통신 버스, 통신 네트워크, 또는 하나 이상의 내부 연결 회로를 나타내는 것일 수 있다. 상기 소스(510)로부터 수신되는 입력 비디오/이미지 데이터는 메모리(550)에 저장된 하나 이상의 소프트웨어 프로그램에 따라 프로세서(540)에 의하여 처리될(processed) 수 있고, 디스플레이 장치(530)에 제공되는 출력 비디오/이미지를 생성하기 위하여 프로세서(540)에 의하여 실행될 수 있다.
특히, 메모리(550)에 저장된 소프트웨어 프로그램은 본 발명에 따른 방법을 수행하는 스케일러블 웨이블릿 기반의 코덱을 포함한다. 상기 코덱은 메모리(550)에 저장되어 있을 수도 있고, CD-ROM이나 플로피 디스크와 같은 저장 매체에서 읽어들이거나, 각종 네트워크를 통하여 소정의 서버로부터 다운로드한 것일 수도 있다. 상기 소프트웨어에 의하여 하드웨어 회로에 의하여 대체되거나, 소프트웨어와 하드웨어 회로의 조합에 의하여 대체될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
본 발명에 따르면, 이미지를 블록별로 분할하여 ROI를 적용하는 경우에 발생하는 블록 경계 현상(blocking artifact)을 상당히 감소시킬 수 있다.
또한 본 발명에 따르면, 웨이블릿 변환이 갖는 특징의 하나인 공간적 유사성을 잘 활용할 수 있어서 ROI 구현에 의한 성능 손실을 최소화할 수 있다.
그리고 본 발명에 따르면, 이미지 전체에 대해서 먼저 웨이블릿 변환을 수행한 후 분할하여 ROI를 구현하므로 분할하는 블록의 크기가 작아짐에 따라 웨이블릿 변환의 효율이 감소하는 문제도 해결할 수 있다.

Claims (31)

  1. 소정의 입력된 이미지에 대하여 웨이블릿 변환을 수행함으로써 웨이블릿 계수를 생성하는 (a) 단계;
    상기 웨이블릿 계수가 갖는 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 (b)단계; 및
    상기 웨이블릿 블록 중 소정의 관심 영역에 속하는 웨이블릿 블록에 보다 높은 비트 레이트를 할당하여 상기 웨이블릿 계수를 양자화하는 (c)단계를 포함하는 것을 특징으로 하는 영상 압축 방법.
  2. 제1항에 있어서, 상기 영상은
    정지영상인 것을 특징으로 하는 영상 압축 방법.
  3. 제1항에 있어서, 상기 소정의 입력된 이미지는
    입력된 비디오로부터 시간적 중복성이 제거된 프레임인 것을 특징으로 하는 영상 압축 방법.
  4. 제1항 또는 제3항에 있어서, 상기 영상은
    동영상인 것을 특징으로 하는 영상 압축 방법.
  5. 삭제
  6. 제1항에 있어서, 상기 (c) 단계는
    상기 웨이블릿 블록별로 할당된 비트 레이트의 합이 목표 비트 레이트가 되도록 할당하는 것을 특징으로 하는 영상 압축 방법.
  7. 제1항에 있어서, 상기 관심 영역은
    각 웨이블릿 블록에 대응하는 이미지가 갖는 복잡도를 기준으로 선택되는 것을 특징으로 하는 영상 압축 방법.
  8. 제1항에 있어서, 상기 (b)단계는
    웨이블릿 변환후 생성되는 서브밴드 중에서 최하위 L 밴드에서 소정 개수의 픽셀을 기초 유닛으로 선정하는 단계; 및
    상기 기초 유닛과 공간적 연관성을 갖는 웨이블릿 계수를 상기 웨이블릿 블록별로 재배열하는 단계를 포함하는 것을 특징으로 하는 영상 압축 방법.
  9. 제8항에 있어서, 상기 소정 개수의 픽셀은
    하나의 픽셀인 것을 특징으로 하는 영상 압축 방법.
  10. 제1항에 있어서, 상기 양자화는
    엠베디드 양자화인 것을 특징으로 하는 영상 압축 방법.
  11. 제10항에 있어서, 상기 (c)단계는
    초기 문턱값을 결정하는 (c1)단계; 및
    소정의 웨이블릿 블록 내의 모든 웨이블릿 계수를 스캔하여 문턱값보다 큰 웨이블릿 계수를 엔코딩하는 (c2)단계를 포함하는 것을 특징으로 하는 영상 압축 방법.
  12. 제11항에 있어서, 상기 (c)단계는
    상기 문턱값을 2로 나누고, 상기 문턱값을 이용하여 상기 (c2)단계를 수행하는 단계를 더 포함하는 것을 특징으로 하는 영상 압축 방법.
  13. 입력 비트 스트림을 이용하여, 웨이블릿 블록별로 공간적 연관성에 따라 배열된 웨이블릿 계수를 구하는 (a)단계;
    상기 웨이블릿 블록별로 배열된 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수로 환원하는 (b)단계; 및
    상기 재배열된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원하는 (c)단계를 포함하는데,
    상기 웨이블릿 블록 중 소정의 관심 영역에 속하는 웨이블릿 블록에 보다 높은 비트 레이트가 할당되어 있는 것을 특징으로 하는 영상 압축 해제 방법.
  14. 제13항에 있어서,
    상기 복원된 이미지와 모션 벡터를 이용하여 시간적 필터링을 역으로 수행하여 출력 동영상을 생성하는 (d)단계를 포함하는 것을 특징으로 하는 영상 압축 해제 방법.
  15. 제13항에 있어서, 상기 영상은
    정지영상인 것을 특징으로 하는 영상 압축 해제 방법.
  16. 제13항 또는 제14항에 있어서, 상기 영상은
    동영상인 것을 특징으로 하는 영상 압축 해제 방법.
  17. 삭제
  18. 소정의 입력된 이미지에 대하여 웨이블릿 변환을 수행함으로써 웨이블릿 계수를 생성하는 웨이블릿 변환부;
    상기 웨이블릿 계수가 갖는 공간적 연관성에 따라서 웨이블릿 블록별로 상기 웨이블릿 계수를 재배열하는 픽셀 그룹화부;
    상기 웨이블릿 블록별로 중요도에 따라 서로 다른 비트 레이트를 할당하는 비트 레이트 할당부; 및
    상기 웨이블릿 블록별로 상기 웨이블릿 계수를 양자화하는 엠베디드 양자화부를 포함하는 것을 특징으로 하는 영상 압축 장치.
  19. 제18항에 있어서, 상기 소정의 입력된 이미지는
    입력된 비디오로부터 시간적 중복성이 제거된 프레임인 것을 특징으로 하는 영상 압축 장치.
  20. 삭제
  21. 제18항에 있어서, 상기 비트 레이트 할당부는
    상기 웨이블릿 블록별로 할당된 비트 레이트의 합이 목표 비트 레이트가 되도록 할당하는 것을 특징으로 하는 영상 압축 장치.
  22. 제18항에 있어서, 상기 중요도는
    각 웨이블릿 블록에 대응하는 이미지가 갖는 복잡도를 기준으로 하는 것을 특징으로 하는 영상 압축 장치.
  23. 제18항에 있어서, 상기 픽셀 그룹화부는
    웨이블릿 변환후 생성되는 서브밴드 중에서 최하위 L 밴드에서 소정 개수의 픽셀을 기초 유닛으로 선정하고, 상기 기초 유닛과 공간적 연관성을 갖는 웨이블릿 계수를 웨이블릿 블록별로 재배열하는 것을 특징으로 하는 영상 압축 장치.
  24. 제18항에 있어서, 상기 엠베디드 양자화부는
    초기 문턱값을 결정하고, 소정의 웨이블릿 블록 내의 모든 웨이블릿 계수를 스캔하여 문턱값보다 큰 웨이블릿 계수를 엔코딩하는 것을 특징으로 하는 영상 압축 장치.
  25. 입력 비트 스트림을 이용하여, 웨이블릿 블록별로 공간적 연관성에 따라 배열된 웨이블릿 계수를 구하는 역 엠베디드 양자화부;
    상기 웨이블릿 블록별로 배열된 웨이블릿 계수를 재배열하여 하나의 전체 이미지에 대한 웨이블릿 계수로 환원하는 역 픽셀 그룹화부; 및
    상기 재배열된 웨이블릿 계수를 변환하여 공간적 도메인에서의 이미지를 복원하는 역 웨이블릿 변환부를 포함하는데,
    상기 웨이블릿 블록 중 소정의 관심 영역에 속하는 웨이블릿 블록에 보다 높은 비트 레이트가 할당되어 있는 것을 특징으로 하는 영상 압축 해제 장치.
  26. 제25항에 있어서,
    상기 복원된 이미지와 모션 벡터를 이용하여 시간적 필터링을 역으로 수행하여 출력 동영상을 생성하는 역 시간적 필터링부를 더 포함하는 것을 특징으로 하는 영상 압축 해제 장치.
  27. 삭제
  28. 제1항 내지 제4항, 제6항 내지 제16항 중 어느 한 항의 방법을 컴퓨터로 판독 가능한 프로그램으로 기록한 기록매체.
  29. 압축하고자 하는 프레임의 공간적 중복성을 제거하기 위한 공간적 필터링에 의해 다수개의 블록으로 구분된 필터링 계수를 인코딩하는 방법에 있어서,
    상기 각 블록간의 공간적 연관성에 따라 상기 필터링 계수를 재배열하는 단계;
    상기 재배열된 필터링 계수의 중복성을 제거하는 단계를 포함하는 인코딩하는 방법.
  30. 제 29항에 있어서, 상기 재배열하는 단계는,
    각 블록간의 위치 관계가 동일한 부분의 필터링 계수들을 모아 나열하는 방법인 것을 특징으로 하는 인코딩 방법.
  31. 입력된 비트스트림으로부터 원 영상을 복원하기 위한 디코딩 방법에 있어서,
    상기 입력된 비트스트림을 파싱하여 상기 원 영상에 관한 데이터를 추출하는 단계;
    상기 원 영상에 관한 데이터로부터 공간적 필터링 계수를 복원하는 단계;
    상기 복원된 필터링 계수를 상기 원 영상을 표현하기 위한 공간으로 재배열하는 단계;
    상기 재배열된 필터링 계수로부터 원 영상을 복원하는 단계를 포함하는 디코딩 방법.
KR1020040002378A 2004-01-13 2004-01-13 Roi를 지원하는 영상 코딩 방법 및 장치 KR100643269B1 (ko)

Priority Applications (9)

Application Number Priority Date Filing Date Title
KR1020040002378A KR100643269B1 (ko) 2004-01-13 2004-01-13 Roi를 지원하는 영상 코딩 방법 및 장치
AU2004314092A AU2004314092B2 (en) 2004-01-13 2004-12-11 Video/image coding method and system enabling region-of-interest
PCT/KR2004/003260 WO2005069634A1 (en) 2004-01-13 2004-12-11 Video/image coding method and system enabling region-of-interest
BRPI0418392-4A BRPI0418392A (pt) 2004-01-13 2004-12-11 método de compactação de um vìdeo ou uma imagem, método de descompactação de um vìdeo ou imagem, aparelho para compactação de um vìdeo ou imagem, e aparelho para descompactação de um vìdeo ou imagem
CNA200480042359XA CN1926883A (zh) 2004-01-13 2004-12-11 使用感兴趣区域的视频/图像编码方法和系统
CA002552800A CA2552800A1 (en) 2004-01-13 2004-12-11 Video/image coding method and system enabling region-of-interest
JP2006549102A JP2007522708A (ja) 2004-01-13 2004-12-11 Roiを支援する映像コーディング方法及び装置
EP04258143A EP1555829A1 (en) 2004-01-13 2004-12-24 Video/image coding method and system enabling region-of-interest
US11/033,876 US20050152611A1 (en) 2004-01-13 2005-01-13 Video/image coding method and system enabling region-of-interest

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040002378A KR100643269B1 (ko) 2004-01-13 2004-01-13 Roi를 지원하는 영상 코딩 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20050074150A KR20050074150A (ko) 2005-07-18
KR100643269B1 true KR100643269B1 (ko) 2006-11-10

Family

ID=36702898

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040002378A KR100643269B1 (ko) 2004-01-13 2004-01-13 Roi를 지원하는 영상 코딩 방법 및 장치

Country Status (9)

Country Link
US (1) US20050152611A1 (ko)
EP (1) EP1555829A1 (ko)
JP (1) JP2007522708A (ko)
KR (1) KR100643269B1 (ko)
CN (1) CN1926883A (ko)
AU (1) AU2004314092B2 (ko)
BR (1) BRPI0418392A (ko)
CA (1) CA2552800A1 (ko)
WO (1) WO2005069634A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100776822B1 (ko) * 2006-04-11 2007-11-19 고려대학교 산학협력단 스테레오 잔여 영상 부호화 방법 및 그 장치
FR2925705A1 (fr) * 2007-12-20 2009-06-26 Thomson Licensing Sas Dispositif d'aide a la capture d'images
US9516346B2 (en) 2009-09-01 2016-12-06 Manipal Institute Of Technology Image processing system and method
CN102714726B (zh) 2010-01-15 2015-03-25 杜比实验室特许公司 使用元数据的用于时间缩放的边缘增强
CN101867809A (zh) * 2010-04-09 2010-10-20 中国科学院光电技术研究所 基于脉动阵列的高速图像压缩vlsi编码方法及编码器
US20120128076A1 (en) * 2010-11-23 2012-05-24 Sony Corporation Apparatus and method for reducing blocking artifacts
CN102129698A (zh) * 2011-03-08 2011-07-20 华中科技大学 一种基于感兴趣区域的图像编码方法
US9325999B2 (en) * 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
CN102637302B (zh) * 2011-10-24 2013-06-19 北京航空航天大学 一种图像编码方法
CN102970541B (zh) * 2012-11-22 2015-05-27 深圳市海思半导体有限公司 图像滤波方法及装置
CN103179405B (zh) * 2013-03-26 2016-02-24 天津大学 一种基于多级感兴趣区域的多视点视频编码方法
CN104486631B (zh) * 2014-12-31 2017-06-06 哈尔滨工业大学 一种基于人眼视觉与自适应扫描的遥感图像压缩方法
CN108134653B (zh) * 2017-12-22 2020-09-01 西安烽火电子科技有限责任公司 一种基于辅助序列不等差错保护的信息传输方法
CN111711970B (zh) * 2020-03-27 2022-04-01 同济大学 一种超长线状环形无线网络数据压缩方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6483946B1 (en) * 1995-10-25 2002-11-19 Sarnoff Corporation Apparatus and method for encoding zerotrees generated by a wavelet-based coding technique
US5748116A (en) * 1996-11-27 1998-05-05 Teralogic, Incorporated System and method for nested split coding of sparse data sets
AUPO472897A0 (en) * 1997-01-22 1997-02-20 Canon Information Systems Research Australia Pty Ltd A method for digital image compression
US6269192B1 (en) * 1997-07-11 2001-07-31 Sarnoff Corporation Apparatus and method for multiscale zerotree entropy encoding
US6606416B1 (en) * 1998-10-30 2003-08-12 Canon Kabushiki Kaisha Encoding method and apparatus for representing a digital image
US6661927B1 (en) * 2000-07-27 2003-12-09 Motorola, Inc. System and method for efficiently encoding an image by prioritizing groups of spatially correlated coefficients based on an activity measure
KR20050052532A (ko) * 2002-10-16 2005-06-02 코닌클리케 필립스 일렉트로닉스 엔.브이. 적응성 움직임 보상 시간 필터링을 이용하는 충분히 크기조정가능 3-d 오버컴플릿 웨이브릿 비디오 코딩

Also Published As

Publication number Publication date
EP1555829A1 (en) 2005-07-20
AU2004314092B2 (en) 2008-03-06
KR20050074150A (ko) 2005-07-18
AU2004314092A1 (en) 2005-07-28
WO2005069634A1 (en) 2005-07-28
CA2552800A1 (en) 2005-07-28
BRPI0418392A (pt) 2007-06-05
JP2007522708A (ja) 2007-08-09
US20050152611A1 (en) 2005-07-14
CN1926883A (zh) 2007-03-07

Similar Documents

Publication Publication Date Title
KR100664932B1 (ko) 비디오 코딩 방법 및 장치
KR100703760B1 (ko) 시간적 레벨간 모션 벡터 예측을 이용한 비디오인코딩/디코딩 방법 및 장치
US20050152611A1 (en) Video/image coding method and system enabling region-of-interest
US7680190B2 (en) Video coding system and method using 3-D discrete wavelet transform and entropy coding with motion information
KR100714696B1 (ko) 다계층 기반의 가중 예측을 이용한 비디오 코딩 방법 및장치
US6898324B2 (en) Color encoding and decoding method
JP5014989B2 (ja) 基礎階層を利用するフレーム圧縮方法、ビデオコーディング方法、フレーム復元方法、ビデオデコーディング方法、ビデオエンコーダ、ビデオデコーダ、および記録媒体
KR100621581B1 (ko) 기초 계층을 포함하는 비트스트림을 프리디코딩,디코딩하는 방법, 및 장치
US20050157794A1 (en) Scalable video encoding method and apparatus supporting closed-loop optimization
KR20060135992A (ko) 다계층 기반의 가중 예측을 이용한 비디오 코딩 방법 및장치
KR20050028019A (ko) 하나 및 다수의 기준 프레임을 기반으로 한 움직임 보상필터링을 사용한 웨이블릿 기반 코딩
JP2006521039A (ja) オーバコンプリートウェーブレット展開での動き補償時間フィルタリングを使用した3次元ウェーブレットビデオ符号化
CN1813479A (zh) 过完备小波域中的视频编码
KR100834749B1 (ko) 스케일러블 비디오 스트림 재생장치 및 그 방법
JPH11122617A (ja) 画像圧縮
KR100834748B1 (ko) 스케일러블 비디오 스트림 재생 방법 및 장치
KR20050074151A (ko) 스케일러블 비디오 코딩에서 모션 벡터를 선정하는 방법및 그 방법을 이용한 비디오 압축 장치
WO2006080665A1 (en) Video coding method and apparatus
WO2006043750A1 (en) Video coding method and apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120927

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130927

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140929

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150925

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170927

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180921

Year of fee payment: 13