KR101200924B1 - 다수의 기준 화상에 대한 고속 움직임 추정 - Google Patents

다수의 기준 화상에 대한 고속 움직임 추정 Download PDF

Info

Publication number
KR101200924B1
KR101200924B1 KR1020077004216A KR20077004216A KR101200924B1 KR 101200924 B1 KR101200924 B1 KR 101200924B1 KR 1020077004216 A KR1020077004216 A KR 1020077004216A KR 20077004216 A KR20077004216 A KR 20077004216A KR 101200924 B1 KR101200924 B1 KR 101200924B1
Authority
KR
South Korea
Prior art keywords
reference pictures
picture
reference picture
image block
prediction error
Prior art date
Application number
KR1020077004216A
Other languages
English (en)
Other versions
KR20070046882A (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 톰슨 라이센싱
Publication of KR20070046882A publication Critical patent/KR20070046882A/ko
Application granted granted Critical
Publication of KR101200924B1 publication Critical patent/KR101200924B1/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/142Detection of scene cut or scene change
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one

Landscapes

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

Abstract

다수의 기준 화상으로 고속 움직임 추정하는 장치 및 대응하는 방법이 제공되며, 여기서, 이미지 블록에 대한 비디오 신호 데이터를 다수의 기준 화상에 대해 인코딩하는 예시적인 비디오 인코더(100)는 기준 화상 중 하나에 대응하는 움직임 벡터를 제공하기 위한 고속 움직임 추정기(180)를 포함하며, 이러한 추정기(180)는 장면 변화를 겪는 기준 화상을 배제하면서도 고속 움직임 추정을 실행하기 위한 장면 검출부를 포함하며; 여기서, 다수의 기준 화상을 갖는 이미지 블록에 대한 비디오 신호 데이터를 인코딩하는 대응하는 방법(200)은 실질적으로 압축되지 않은 이미지 블록을 수신하는 단계(210)와, 장면 변화를 검출하는 단계(215)와, 장면 변화를 겪는 기준 화상을 배제하는 단계(225)와, 이미지 블록과 복수의 기준 화상 중 하나 사이의 차이에 대응하는 움직임 벡터를 계산하는 단계(235)를 포함한다.

Description

다수의 기준 화상에 대한 고속 움직임 추정{FAST MOTION ESTIMATION FOR MULTIPLE REFERENCE PICTURES }
관련 출원의 교차 참조
본 출원은 2004년 8월 31일자로 출원된 "다수의 기준 화상에 대한 고속 움직임 추정"이라는 명칭의 미국 가특허출원(일련번호 제 60/605,903호)의 이익을 청구하며, 이 가특허출원 전체는 본 명세서에 병합되어 있다.
본 비디오 인코더에 관한 것이며, 좀더 상세하게는 비디오 인코더에서 다수의 기준 화상에 대한 움직임 추정 알고리즘에 관한 것이다.
비디오 데이터는 일반적으로 비트 스트림 형태로 처리되고 전송된다. 전형적인 비디오 압축 인코더는 인코딩될 화상의 기준 화상 예측을 형성하고, 현 화상과 예측 사이의 차이를 인코딩함으로써, 상당한 압축 효율을 얻는다. 그러한 예측이 현 화상과 좀더 밀접하게 상관될수록, 그러한 화상을 압축하는데는 더 적은 수의 비트가 필요하게 되어, 이러한 처리의 효율을 높이게 된다. 그에 따라, 가능한 가장 우수한 기준 화상 예측치를 형성하는 것이 바람직하다.
동화상 전문가 그룹(MPEG: Moving Picture Experts Group)-1, MPEG-2 및 MPEG-4를 포함하는 많은 비디오 압축 표준에서, 이전 기준 화상과 현 화상 사이의 움직임이 추정되어 이전 기준 화상의 움직임 보상된 버전을 형성한다. 이전 기준 화상의 움직임 보상된 버전은 현 화상에 대한 예측으로서 사용되며, 현 화상과 이러한 예측 사이의 차이만이 코딩된다.
움직임 추정은 현 비디오 코딩 시스템에 중요한 역할을 하며, 일반적으로 인코더 내에서 가장 계산이 복잡한 부분이다. 블록 매칭 알고리즘은 가장 최신 비디오 코딩 표준에 의해 사용된다. 블록 단위로 움직임 양을 추정하는 풀 서치(full search) 방식이 유행하는 움직임 추정 방식이다. 불행히도, 이러한 풀 서치 방식의 복잡도는 특히 H.264와 같은 개선된 비디오 코딩 표준에 대해 매우 높으며, 이러한 H.264는 다수의 기준 화상과 다수의 블록 타입을 사용한다. 세 단계 서치, 더 새로운 세 단계 서치, 다이아몬드 서치, 띠 형태(zonal) 서치, 계층적 즉, 다수 해상도 서치, 또는 이들의 결합과 같은 여러 고속 서치 알고리즘이 제안되어왔다. 그러한 알고리즘은 서치 포인트의 수를 감소시킴으로써 복잡도를 감소시킨다. 불행히도, 이들 알고리즘은 에러면(error surface)에 국지적 최소치를 두는 경향이 있다. 따라서, 이들 알고리즘의 성능은 일반적으로 풀 서치 방식보다 더 나쁘다.
블록 움직임 추정은 비트율을 감소시키기 위해 대부분의 현 비디오 코딩 표준에 의해 사용된다. 비디오 코딩용 블록 움직임 추정은 잘 사용되어왔지만, 예컨대 H.263++ 및 JVT/H.264/MPEG AVC 표준에서 사용될 수 있는 것과 같이 멀티-기준 화상 및 멀티-블록 타입 선택에 대해 알고리즘이 거의 제안되어오지 않았다.
JVT/H.264 표준에서, 여러 모드가 움직임 보상을 위해 제안된다. 각 음직임-보상된 매크로블록 모드는 고정된 크기의 블록에 대응한다. 이 블록은 16x16, 16x8, 8x16 및 8x8로 분할될 수 있다. 8x8 블록은 8x4, 4x8 또는 4x4 블록 크기로 추가로 세분될 수 있다. 따라서, 7개의 블록 타입이 전체적으로 지원된다. 각 예측-코딩된 mxn 블록에 대한 예측 신호가 대응하는 기준 화상 영역을 대체함으로써 얻어지며, 이 영역은 움직임 벡터 예측기(predictor)와 달리 코딩된 평행이동(translational) 움직임 벡터에 의해 명시된다. JVT/H.264는 또한 멀티-화상 움직임 보상된 예측을 지원한다. 즉, 둘 이상의 이전 코딩된 화상이 예측 코딩된 블록의 예측 신호를 만들기 위한 기준으로서 사용될 수 있다. 그에 따라, 움직임 추정을 위해, 인코더는 어떠한 블록 타입 및 어떠한 기준 화상이 선택되어야 하는지를 결정해야 한다. 이러한 멀티-기준 화상 및 멀티-블록 타입 선택은 움직임 서치를 좀더 복잡하게 한다.
다수의 기준 화상이 더 나은 압축을 얻기 위한 비디오 인코딩에 사용된다. 예컨대, JVT/H.264 표준은 최대 15개의 기준 프레임을 사용하게 한다. 전형적으로, 예측된 블록의 움직임 벡터는 모든 기준 화상으로부터 계산되며, 그러면, 이 블록에 대해 가장 분명한 예측이 선택된다. 그에 따라, 이 예에서, 움직임 추정 프로세스의 계산 부담은 단일 기준 화상의 계산 부담에 최대 15배가 될 수 도 있다. 이로 인해, 더 많은 기준 프레임을 사용하거나, 인코더의 복잡도를 증가시키거나, 소프트웨어 인코딩 속도를 늦추는 것이 금지될 것이다.
불행히도, 다수의 기준 화상에 대한 이러한 느리고 및/또는 복잡한 계산은 시스템 성능 및/또는 비용에 악영향을 미치며, 이는 예측된 블록의 움직임 추정이 모든 기준 화상에 적용되기 때문이다. 그에 따라, 다수의 기준 화상이 사용되는 움 직임 추정 프로세스의 속도를 증가시키는 방법이 필요하게 되었다.
종래기술의 이들 및 다른 결점 및 단점은 비디오 인코더에서 다수의 기준 화상으로 고속 움직임 추정을 위한 장치 및 방법에 의해 해결된다.
다수의 기준 화상에 대해 이미지 블록에 대한 비디오 신호 데이터를 인코딩하기 위한 비디오 인코더가 제공되며, 이러한 인코더는 기준 화상 중 하나에 대응하는 움직임 벡터를 제공하기 위한 고속 움직임 추정기와, 정면 변화를 겪는 기준 화상을 배제하면서 고속 움직임 추정을 실행하기 위한 장면 검출부를 포함한다.
다수의 기준 화상을 갖는 이미지 블록에 대해 비디오 신호 데이터를 인코딩하기 위한 대응하는 방법이 제공되며, 이 방법은 실질적으로 압축되지 않은 이미지 블록을 수신하는 단계와, 장면 변화를 검출하는 단계와, 이 장면 변화를 겪는 기준 화상을 배제하는 단계와, 이미지 블록과 복수의 기준 화상 중 하나 사이의 차이에 대응하는 움직임 벡터를 계산하는 단계를 포함한다.
본 발명의 이들 양상 및 다른 양상과, 특성과, 장점은 예시적인 실시예에 대한 다음의 상세한 설명으로부터 분명해질 것이며, 이러한 상세한 설명은 수반하는 도면과 연계하여 읽혀져야 할 것이다.
본 발명은 다음의 예시적인 도면에 따라 비디오 인코더에 대해 다수의 기준 화상에 대한 고속 움직임 추정을 생성한다.
도 1은 본 발명의 원리에 따른 다수의 기준 화상에 대해 고속 움직임 추정하 는 비디오 인코더의 블록도.
도 2는 본 발명의 원리에 따른 인코딩 프로세스에 대한 흐름도.
도 3은 본 발명의 원리에 따른 다수의 기준 화상에 대한 데이터 구조를 도시한 도면.
도 4는 본 발명의 원리에 따른 다수의 기준 화상에 대한 또 다른 데이터 구조를 도시한 도면.
본 발명은 다수의 기준 화상으로 고속 움직임 추정하는 장치 및 방법이다. 본 발명의 실시예는 비디오 압축을 달성하기 위해 다수의 기준 화상에 대해 고속 움직임 추정하는데 사용된다. 블록이 다수의 기준 화상으로부터 예측될 때, 움직임 추정이 이들 기준 화상으로부터 실시된다. 그러므로, 본 발명의 본 실시예에서, 움직임 서치의 계산 부담은 줄어들 수 있다.
바람직한 실시예에서, 장면 검출은 기준 프레임 중 어떤 것도 장면 변화를 겪지 않게 되도록 사용된다. 가장 근접한 기준 프레임을 통한 예측이 계산된다. 가장 먼 기준 프레임은 버퍼 크기에 의해 결정된다. 임계치가 현재의 예측이 충분한 지의 여부를 결정하는데 사용된다.
다음의 상세한 설명은 본 발명의 원리를 단지 예시한다. 따라서, 당업자가, 비록 여기서 명시적으로 기술하거나 도시하고 있지 않더라도, 본 발명의 원리를 구현하고 본 발명의 사상과 범주 내에 포함되는 여러 장치를 고안할 수 있다는 점을 이해해야 할 것이다. 더나아가, 본 명세서에서 언급한 모든 예 및 조건적 표현은 원칙적으로 종래기술을 촉진시키기 위해 본 발명자가 제시한 개념 및 본 발명의 원리의 이해를 돕기 위한 명백히 교육적인 용도를 위한 것이며 그렇게 구체적으로 언급한 예 및 조건으로 제한되지 않는 것으로 해석되어야 한다. 게다가, 본 발명의 원리, 양상 및 실시예뿐만 아니라 그 특정한 예를 여기서 언급하고 있는 모든 진술은 본 발명의 구조적 및 기능적 등가 모두를 포함할 것이다. 게다가, 그러한 등가는 현재 알려진 등가 및 미래에 개발될 등가, 즉 구조에 관계없이 동일한 기능을 실시하는, 개발될 임의의 요소 모두를 포함한다.
그에 따라, 예컨대, 본 명세서에서의 블록도는 본 발명의 원리를 구현하는 예시적인 회로의 개념도를 나타냄을 당업자는 이해해야 할 것이다. 유사하게, 임의의 플로우 차트, 흐름도, 상태 전이도, 의사 코드(pseudocode) 등이 컴퓨터로 판독 가능한 매체로 실질적으로 표현될 수 있고 그에 따라 컴퓨터나 프로세서에 의해 실행될 수 있는 -그러한 컴퓨터나 프로세서가 명백히 도시되는지에 관계없이- 여러 프로세스를 나타냄을 이해해야 할 것이다.
도면에 도시된 여러 요소의 기능은 전용 하드웨어 및 적절한 소프트웨어와 연계하여 소프트웨어를 실행시킬 수 있는 하드웨어의 사용을 통해 제공될 수 있다. 프로세서에 의해 제공될 때, 이러한 기능은 단일 전용 프로세서에 의해, 단일 공유 프로세서에 의해, 또는 복수의 개별 프로세서로서, 그 중 일부가 공유될 수 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 게다가, 용어, "프로세서"나 "제어기"의 분명한 사용이 소프트웨어를 실행시킬 수 있는 하드웨어를 배타적으로 지칭하는 것으로 해석되지 않아야 하며, 제한되지 않는다면 DSP(Digital Signal Processor) 하드웨어, 소프트웨어 저장용 ROM(Read-Only Memory), RAM(Random Access Memory) 및 비휘발성 저장매체를 암시적으로 포함할 수 있다. 다른 하드웨어 -규격화된 및/또는 맞춤형-가 또한 포함될 수 있다. 유사하게, 도면에 도시된 임의의 스위치는 단지 개념적이다. 이들의 기능은 프로그램 로직의 동작을 통해, 전용 로직을 통해, 프로그램 제어 및 전용 로직의 상호동작을 통해, 또는 심지어 수동으로 실시될 수 있으며, 특정한 기술이 이러한 환경으로부터 좀더 구체적으로 이해될 바와 같이 구현자에 의해 선택될 수 있다.
본 발명의 청구범위에서, 명시된 기능을 실시하기 위한 수단으로서 표현된 임의의 요소는 예컨대 a) 그러한 기능을 실행하는 회로 요소의 결합이나, b) 그에 따라 펌웨어, 마이크로코드 등을 포함하는 임의의 형태의 소프트웨어로서, 기능을 실행하기 위해 그러한 소프트웨어를 실시하기 위한 적절한 회로와 결합된 소프트웨어를 포함하는, 그러한 기능을 실행하는 임의의 방식을 포함할 것이다. 그러한 청구범위에 의해 한정된 발명은 여러 언급한 수단에 의해 제공된 기능이 청구범위가 주장하는 방식으로 결합되고 모아진다는 점에 근거한다. 그에 따라, 출원인은 그러한 기능을 제공할 수 있는 임의의 수단을 본 명세서에서 도시된 것과 등가인 것으로 간주한다.
도 1에 도시된 바와 같이, 다수의 기준 화상에 대해 고속 움직임 추정하는 비디오 인코더가 일반적으로 참조번호(100)로 표시된다. 인코더(100)에 대한 입력단이 합산기(110)의 비반전 입력단과 신호 통신하며 연결된다. 합산기(110)의 출력단은 블록 변환기(120)와 신호 통신하며 연결된다. 변환기(120)는 양자화기(130)와 신호 통신하며 연결된다. 양자화기(130)의 출력단은 가변 길이 코더(VLC)(140)와 신호 통신하며 연결되며, VLC(140)의 출력단은 인코더(100)의 외부 이용 가능한 출력단이다.
양자화기(130)의 출력단은 역양자화기(150)와 신호 통신하며 더 연결된다. 역양자화기(150)는 역블록 변환기(160)와 신호 통신하며 연결되며, 변환기(160)는 다시 기준 화상 저장매체(170)와 신호 통신하며 연결된다. 기준 화상 저장매체(170)의 제 1 출력단은 다수의 기준 화상을 위한 고속 움직임 추정기(180)의 제 1 입력단에 신호 통신하며 연결된다. 인코더(100)에 대한 입력단은 추가로 고속 움직임 추정기(180)의 제 2 입력단과 신호 통신하며 연결된다.
비록 본 명세서에서 기술된 발명이 움직임 추정 블록의 개념적인 부분일지라도, 다수의 기준 화상을 위한 분리된 고속 움직임 추정 부분이 대안적인 실시예에서 움직임 추정기 부분에게 어떠한 동작 포인트가 테스트되어야 하는지 또는 테스트되지 않아야 하는지를 지시하는 부분 사이의 신호를 공급할 수 있음을 이해해야 한다. 고속 서치 블록 매칭 움직임 추정기(180)의 출력은 움직임 보상기(190)의 제 1 입력단과 신호 통신하며 연결된다. 기준 화상 저장매체(170)의 제 2 출력단은 움직임 보상기(190)의 제 2 입력단과 신호 통신하며 연결된다. 움직임 보상기(190)의 출력단은 합산기(110)의 반전 입력단과 신호 통신하며 연결된다.
도 2를 보면, 본 발명에 따른 다수의 기준 화상에 대해 고속 움직임 추정하는 예시적인 인코딩 프로세스가 일반적으로 참조번호(200)로 표시된다. 본 명세서에서 사용된 단어 "블록"은 일반적인 의미를 가지며, 예컨대 매크로블록, 블록, 서브-블록, 또는 서브-블록 구획을 상징할 수 있다. 프로세스(200)는 그 다음 화상을 인코더의 비압축된 버퍼 내로 읽고,제어를 기능 단계(215)에 전달하는 입력 단계(210)를 포함한다. 단계(215)는 장면 변화가 발생했는지를 검출하고, 제어를 기능 단계(220)에 전달한다.
단계(220)는 화상이 인트라 또는 인터 화상으로서 인코딩되어야 하는지를 체크한다. 이것은 인코더 설정에 의존한다. 만약 화상이 강제로 인트라-코딩된다면, 어떠한 기준 화상도 사용되지 않으며, 제어가 단계(230)로 전달된다. 그렇지 않다면, 제어가 단계(225)로 전달되며, 단계(225)는 이 화상 바로 앞의 기준 화상이 이 화상과 동일한 장면에 있는지를 체크한다. 만약 동일한 장면에 있지 않다면, 이것이 P 또는 B 화상 위치에 있는지에 따라, 이 화상은, 만약 인코더가 장면 변화시 인트라 화상을 생성하도록 설정된다면, 인트라-인코딩될 수 있으며, 제어가 단계(230)로 전달되며, 단계(230)에서, 화상은 인트라-인코딩된다. 그렇지 않고 동일한 장면에 있다면, 제어가 단계(235)로 전달되며, 단계(235)에서, 각 인터-코딩된 블록에 대해, 이 화상 바로 앞의 기준 화상으로부터의 움직임 벡터가 계산된다. 만약 이것이 양방향 인코딩된 블록이라면, 그 다음 기준 화상으로부터의 움직임 벡터가 또한 계산된다. 만약 가중된 함수가 사용되고, 이 화상 바로 앞의 제 2 기준 화상으로부터의 움직임 벡터가 또한 계산된다면, 이러한 기준 화상은 인코딩될 화상과 동일한 장면에 있어야 한다.
다음으로, 제어가 단계(240)로 전달되며, 단계(240)는 움직임 벡터 정확도가 만족되는지, 또는 에러 신호가 충분히 작은지를 체크한다. 만약 만족된다면, 이 블 록에 대해 더 이상의 움직임 추정도 필요치 않으며, 제어가 단계(245)로 전달된다. 그렇지 않다면, 제어가 단계(250)로 전달된다. 단계(245)에서, 블록은 인터-인코딩되거나 적절한 경우 심지어 스킵된다. 단계(250)는 인코딩될 화상과 동일한 장면에 속한, 버퍼 내의 가장 멀리 있는 이용 가능한 기준 화상을 찾는다. 보통, 이러한 기준 화상은 짧은 기간이지만, 긴 기간의 기준 화상이 대안적인 실시예에서 배제되지 않는다. 다음으로, 단계(255)는 그러한 기준 화상이 존재하지 않는지를 결정하고, 존재하지 않으면, 제어를 단계(260)로 전달한다. 그렇지 않다면, 제어를 단계(265)로 전달한다. 단계(260)는 이러한 블록이 인트라-인코딩되는지, 인터-인코딩되는지, 또는 스킵되는지를 결정하는데 사용된다. 각각의 비용이 계산되고 비교된다.
단계(265)에서, 이러한 기준 화상으로부터의 움직임 벡터가 계산되고, 다른 기준 화상으로부터의 움직임 벡터가 또한 예컨대 이것이 양방향 예측인지 가중되는지에 따라 계산될 수 있다. 단계(270)에서, 만약 움직임 벡터 정확도가 만족된다면, 인터-인코딩이 실시된다. 인트라 또는 인터 인코딩에 대한 결정은 여전히 일부 경우에 이루어질 수 있다. 단계(275)에서, 만약 움직임 벡터 정확도가 만족되지 않는다면, 에러 신호가 다른 기준 화상으로부터의 움직임 벡터에 비교하기 위해 유지된다. 다음으로, 그 다음 기준 화상이 선택된다. 기준 화상을 선택하는 방식은 서로 다를 수 있다. 하나의 예시적인 실시예는 본 상세한 설명에서 기술되지만, 당업자는 다른 필적할 만한 방식으로 대체할 수 있다. 단계(280)에서, 블록은 인터-인코딩되고, 제어가 단계(285)로 전달된다. 화상 내에 더 많은 블록이 있다면, 단계 (285)는 그 다음 블록을 인코딩하며, 그렇지 않다면, 그 다음 화상을 인코딩한다.
이제 도 3을 보면, 본 발명에 따른 다수의 기준 화상에 대한 데이터 구조를 도시한 도면이 일반적으로 참조번호(300)로 표시된다. 이러한 데이터 구조도(300)는 장면에 대응하며, 현재의 화상(302), 비-기준 화상(304), 기준 화상(310, 311, 312, 313, 314, 315, 316, 317, 318 및 319) 및 장면 변화(320)에 대응한다.
도 4에 도시된 바와 같이, 본 발명의 원리에 따른 다수의 기준 화상에 대한 또 다른 데이터 구조도가 일반적으로 참조번호(400)로 표시된다. 데이터 구조도(400)는 장면에 대응하며, 현재의 화상(402), 비-기준 화상(404), 기준 화상(410, 411, 412, 414 및 418) 및 장면 변화(420)에 대응한다.
JVT 표준의 경우 최대 15개의 기준 프레임과 같은 다수의 기준 화상이 더 우수한 압축을 달성하기 위한 비디오 인코딩에 사용된다. 예측된 블록의 움직임 벡터가 모든 기준 화상으로부터 계산될 수 있으며, 가장 우수한 예측이 이러한 블록에 대해 선택될 수 있다. 그에 따라, 움직임 추정의 계산 부담은 하나의 기준 화상에 대한 계산 부담에 15배일 수 있다.
동작시, 본 발명의 실시예는 다수의 기준 화상의 압축 장점 및 고속 움직임추정, 모두를 달성한다. 바람직한 실시예는 장면 검출 및 현명하게(wisely) 선택된 기준 화상을 사용하며, 이것으로 충분하면, 움직임 추정 프로세스를 종료한다.
장면 검출이 장면 변화를 검출하는데 사용된다. 예컨대, 임계 장면 검출 절대차이값의 평균(AADTSD: Average of Absolute Difference Threshold Scene Detection)은 다음과 같이 동작한다:
Figure 112007015737813-pct00001
여기서, AAD는 절대 차이값의 평균이며; N은 화상 내의 픽셀 수이며; Pi는 현재 화상 내의 픽셀(i)의 성분 값이며; Pri는 기준 화상 내의 픽셀 성분값이다. 모든 성분이 사용될 수 있다:
Figure 112007015737813-pct00002
여기서, M은 성분의 수이며, 이것은 1부터 4까지이다.
당업자가 인식하게될 바와 같이, 장면 검출의 여러 다른 형태가 예시적인 AADTSD 방법을 대체할 수 도 있다.
만약 이러한 절대 차이값의 평균이 임계값보다 더 크다면, 현재의 화상 및 기준 화상은 다른 장면에 속한다. 그렇지 않다면, 이들은 동일한 장면에 있다. 만약 현재의 화상과 기준 화상이 인접하고 다른 화상에 속한다면, 이들 사이에 장면 변화가 있다. 임계값은 미리 결정될 수 있거나, 적응적으로 변화할 수 있다.
예시적인 실시예는 기준 화상을 선택하기 위한 다음의 기준을 사용한다. 기준 화상은 항상 예측된 화상과 동일한 장면에 속한다. 만약 그러한 기준 화상이 없다면, 예측된 화상은 인트라 화상으로서 인코딩된다. 만약 존재한다면, 가장 가까운 기준 화상의 움직임이 항상 계산된다.
가장 먼 기준 화상이 인코딩 버퍼 크기에 의해 결정되거나, 버퍼 내에 저장될 수 있는 화상의 수에 의해 결정된다. 예컨대, 만약 버퍼가 5개의 기준 화상을 보유할 수 있다면, 가장 근접한 5 개의 기준 화상이 저장될 수 있다. 또 다른 예가 도 3에 도시되어 있으며, 여기서, 가장 먼 화상, 즉 장면(320)의 처음 화상(319) 및 가장 가까운 기준 화상(310 내지 318)이 저장된다. 추가적인 예가 도 4에 예시되어 있으며, 여기서, 제 1 기준 화상으로부터 거리(2n(n=0, 1, 2,...))를 갖는 기준 화상들, 예컨대 도 4에 도시된 REF 0, REF 1, REF 2, REF 4가 움직임 추정에 사용될 수 있다.
움직임 추정 서치가 가장 가까운 기준 화상(ref 0)에서부터 시작한다. 주어진 블록의 경우, 만약 예측 에러(PE)가 제한치 내에 있다면, 어떠한 추가적인 움직임 추정도 필요치 않거나 실시되지 않는다. 비록 대안적인 계산법이 당업자에 의해 사용될 수 있을지라도, 이러한 PE는 예컨대 절대 차이값의 합(SAD: Sum of Absolute Differences)이나, 예측 에러의 평균 제곱(MSPE: Mean Square Prediction Error)으로 계산될 수 있다. 만약 PE가 임계값을 초과한다면, 두 가지 옵션이 있다. 하나의 옵션은 예측치를 계산하기 위해 가장 먼 기준 화상을 사용하고, 그런 다음 필요한 경우 가장 가까운 기준 화상 쪽으로 계산하는 것이다. 다른 하나의 옵션은 가장 가까운 기준 화상을 사용하고, 그런 다음 필요한 경우 가장 먼 기준 화상 쪽으로 계산하는 것이다.
본 발명의 실시예의 계산 절약분은 예컨대 서치 범위를 확장하거나 다른 용 도를 위해 더 우수한 알고리즘을 적응시키는 것과 같은 다른 응용에 적용될 수 있다. 본 발명의 실시예는 예컨대 H.261, H.263, H.264, MPEG-1, MPEG-2 및 MPEG-4와 같은 움직임 추정을 사용하는 많은 다른 비디오 압축 표준과 직접 사용될 수 있다.
본 발명의 이들 및 다른 특성과 장점은 본 명세서의 교훈을 기초로 해서 당업자에 의해 쉽게 확인될 수 있다. 본 발명의 원리는 하드웨어, 소프트웨어, 펌웨어, 특수용도 프로세서, 또는 이들의 결합과 같은 여러 형태로 구현될 수 있음을 이해해야 한다.
가장 바람직하게도, 본 발명의 원리는 하드웨어 및 소프트웨어의 결합으로서 구현된다. 게다가, 소프트웨어는 바람직하게는 프로그램 저장 유닛 상에 명백히 내장된 응용 프로그램으로서 구현된다. 이러한 응용 프로그램은 임의의 적절한 아키텍처를 포함하는 머신에 업로드되거나, 이러한 머신에 의해 수행될 수 있다. 바람직하게도, 이러한 머신은 하나 이상의 중앙 처리 장치(CPU), 랜덤 액세스 메모리(RAM), 및 입/출력(I/O) 인터페이스와 같은 하드웨어를 구비한 컴퓨터 플랫폼 상에 구현된다. 이러한 컴퓨터 플랫폼은 또한 운영체계와 미세명령 코드(microinstruction code)를 포함할 수 있다. 본 명세서에 기술된 여러 프로세스와 기능은 미세명령 코드의 일부 또는 응용 프로그램의 일부이거나, CPU에 의해 수행될 수 있는 이들의 임의의 결합일 수 있다. 게다가, 여러 다른 주변 유닛이 추가적인 데이터 저장 유닛 및 인쇄 유닛과 같은 컴퓨터 플랫폼에 연결될 수 있다.
수반하는 도면에 도시된 구성 시스템 성분 및 방법의 일부는 바람직하게는 소프트웨어로 구현되기 때문에, 이러한 시스템 성분이나 프로세스 기능 블록 사이 의 실제 연결은 본 발명이 프로그램되는 방식에 따라 다를 수 있음이 또한 이해되어야 한다. 본 명세서의 교훈을 제공받는다면, 당업자는 본 발명의 이들 구현 및 유사한 구현이나 구성을 생각해낼 수 있을 것이다.
비록 이러한 예시적인 실시예가 수반하는 도면을 참조하여 본 명세서에서 기술되었을 지라도, 본 발명은 바로 이러한 실시예로 제한되지 않으며, 여러 변화 및 변경이 본 발명의 사상이나 범주에서 벗어나지 않고 당업자에 의해 실현될 수 있음이 이해되어야 한다. 그러한 변화 및 변경 모두는 첨부된 청구범위에 제기된 바와 같은 본 발명의 범주 내에 포함될 것이다.
상술한 바와 같이, 본 발명은 인코더, 및 비디오 인코더에서 다수의 기준 화상에 대한 움직임 추정 알고리즘에 이용된다.

Claims (22)

  1. 이미지 블록에 대한 비디오 데이터를 버퍼에 저장된 복수의 기준 화상에 대해 인코딩하기 위한 비디오 인코더(100)로서,
    상기 복수의 기준 화상 중 하나에 대응하는 움직임 벡터를 제공하기 위한 고속 움직임 추정기(180)를 포함하며, 상기 움직임 추정기는 장면 변화를 겪는 기준 화상을 배제하면서도 고속 움직임 추정을 실행하기 위한 장면 검출부를 포함하고,
    상기 복수의 기준 화상에서, 현재의 화상으로부터 가장 먼 기준 화상은 상기 버퍼의 크기에 의해 결정되는,
    비디오 인코더.
  2. 제 1항에 있어서, 상기 복수의 기준 화상 중 하나에 대한 움직임 예측이 충분한 지의 여부를 결정하기 위한 임계값 결정부(thresholding portion)를 더 포함하는, 비디오 인코더.
  3. 제 1항에 있어서, 상기 고속 움직임 추정기(180)는 상기 현재 화상에 대해 가장 가까운 기준 화상으로부터 움직임 벡터를 추정하는, 비디오 인코더.
  4. 제 1항에 있어서, 상기 고속 움직임 추정기(180)는 상기 현재 화상으로부터 가장 먼 기준 화상으로부터 움직임 벡터를 추정하는, 비디오 인코더.
  5. 삭제
  6. 제 1항에 있어서, 상기 고속 움직임 추정기는 절대 차이값의 합 계산기(sum of the absolute difference calculator), 제곱 차이값의 합 계산기(sum of the square difference calculator) 및 평균 제곱근 에러 계산기(mean squared error calculator) 중 하나 이상을 포함하는, 비디오 인코더.
  7. 제 1항에 있어서, 상기 복수의 기준 화상 중 상기 하나를 제공하기 위해 상기 고속 움직임 추정기와 신호 통신하는 기준 화상 저장매체(170)를 더 포함하는, 비디오 인코더.
  8. 제 1항에 있어서, 상기 고속 움직임 추정기에 응답하여 움직임 보상된 기준 화상을 제공하기 위해 상기 고속 움직임 추정기와 신호 통신하는 움직임 보상기(190)를 더 포함하는, 비디오 인코더.
  9. 삭제
  10. 복수의 기준 화상을 갖는 이미지 블록에 대해 비디오 데이터를 인코딩하는 방법(200)으로서,
    압축되지 않은 이미지 블록을 수신하는 단계(210)와;
    장면 변화를 검출하는 단계(215)와;
    상기 장면 변화를 겪는 기준 화상을 배제하는 단계(225)와;
    상기 이미지 블록과 상기 복수의 기준 화상 중 하나 사이의 차이에 대응하는 움직임 벡터를 계산하는 단계(235)와;
    상기 복수의 기준 화상 중 상기 하나에 대한 예측 에러를 계산하는 단계와;
    상기 계산된 예측 에러를 임계값과 비교하는 단계(240)와;
    만약 상기 예측 에러가 상기 임계값을 초과한다면, 상기 복수의 기준 화상 중 또 다른 하나를 선택하는 단계를 포함하는, 비디오 데이터를 인코딩하는 방법.
  11. 복수의 기준 화상을 갖는 이미지 블록에 대해 비디오 데이터를 인코딩하는 방법(200)으로서, 이미지 블록에 대한 비디오 신호 데이터를 복수의 기준 화상에 대해 인코딩하도록 적응되며, 상기 방법은,
    압축되지 않은 이미지 블록을 수신하는 단계(210)와;
    장면 변화를 검출하는 단계(215)와;
    상기 장면 변화를 겪는 기준 화상을 배제하는 단계(225)와;
    상기 이미지 블록과 상기 복수의 기준 화상 중 하나 사이의 차이에 대응하는 움직임 벡터를 계산하는 단계(235)와;
    상기 복수의 기준 화상 중 또 다른 화상을 현재 장면으로부터 선택하는 단계와;
    상기 복수의 기준 화상 중 다른 한 화상에 대응하는 움직임 벡터를 계산하는 단계(265)와;
    상기 복수의 기준 화상 중 상기 다른 한 화상에 대한 예측 에러를 계산하는 단계를 포함하는, 비디오 데이터를 인코딩하는 방법.
  12. 제 11항에 있어서, 상기 계산된 예측 에러를 임계값과 비교하는 단계(240, 270)와;
    만약 상기 예측 에러가 상기 임계값을 초과한다면, 현재의 화상을 인트라 코딩하는 단계(230, 260)를 더 포함하는, 비디오 데이터를 인코딩하는 방법.
  13. 제 11항에 있어서, 상기 복수의 기준 화상 중 상기 하나에 대해 계산된 예측 에러를 상기 복수의 기준 화상 중 상기 다른 하나에 대해 계산된 예측 에러와 비교하는 단계와;
    더 낮게 계산된 예측 에러를 갖는 기준 화상을 선택하는 단계(275)를 더 포함하는, 비디오 데이터를 인코딩하는 방법.
  14. 제 10항에 있어서, 상기 복수의 기준 화상 중 상기 하나는 현재 장면 내의 현재 화상에 가장 가까운 기준 화상으로서 선택되는, 비디오 데이터를 인코딩하는 방법.
  15. 제 10항에 있어서, 상기 복수의 기준 화상 중 상기 하나는 현재 장면 내의 현재 화상으로부터 가장 먼 기준 화상으로서 선택되는, 비디오 데이터를 인코딩하는 방법.
  16. 제 10항에 있어서, 상기 복수의 기준 화상 중 선택된 상기 다른 한 화상은 현재 장면 내의 현재 화상에 그 다음 가장 가까운 기준 화상인, 비디오 데이터를 인코딩하는 방법.
  17. 제 10항에 있어서, 상기 복수의 기준 화상 중 선택된 상기 다른 한 화상은 제 1 기준 화상으로부터 그 다음 기준 화상이고, 제 1 기준 화상으로부터 XN에 해당하는 위치만큼 떨어져 있는 기준 화상인, 비디오 데이터를 인코딩하는 방법.
  18. 제 17항에 있어서, X는 2이고, N은 정수인, 비디오 데이터를 인코딩하는 방법.
  19. 제 10항에 있어서, 상기 복수의 기준 화상의 개수는 15인, 비디오 데이터를 인코딩하는 방법.
  20. 제 10항에 있어서, 예측 에러는 절대 차이값의 합과 평균 제곱근 예측 에러 중 하나 이상에 응답하는, 비디오 데이터를 인코딩하는 방법.
  21. 제 10항에 있어서, 현재 장면 내의 상기 복수의 기준 화상 중 상기 하나에 따라 이미지 블록을 블록 매칭시키는 단계와;
    움직임 벡터에 따라 상기 복수의 기준 화상 중 상기 하나를 움직임 보상하는 단계를 더 포함하는, 비디오 데이터를 인코딩하는 방법.
  22. 복수의 기준 화상을 갖는 이미지 블록에 대해 비디오 데이터를 인코딩하는 장치로서,
    압축되지 않은 이미지 블록을 수신하기 위한 수단과;
    장면 변화를 검출하기 위한 수단과;
    상기 장면 변화를 겪는 기준 화상을 배제하기 위한 수단과;
    상기 이미지 블록과 상기 복수의 기준 화상 중 하나 사이의 차이에 대응하는 움직임 벡터를 계산하기 위한 수단과;
    상기 복수의 기준 화상 중 상기 하나에 대한 예측 에러를 계산하는 수단과;
    상기 계산된 예측 에러를 임계값과 비교하는 수단과;
    만약 상기 예측 에러가 상기 임계값을 초과한다면, 상기 복수의 기준 화상 중 또 다른 하나를 선택하는 수단을
    포함하는, 비디오 데이터를 인코딩하는 장치.
KR1020077004216A 2004-08-31 2005-06-07 다수의 기준 화상에 대한 고속 움직임 추정 KR101200924B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US60590304P 2004-08-31 2004-08-31
US60/605,903 2004-08-31
PCT/US2005/019852 WO2006025904A1 (en) 2004-08-31 2005-06-07 Fast motion estimation for multiple reference pictures

Publications (2)

Publication Number Publication Date
KR20070046882A KR20070046882A (ko) 2007-05-03
KR101200924B1 true KR101200924B1 (ko) 2012-11-14

Family

ID=34971740

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077004216A KR101200924B1 (ko) 2004-08-31 2005-06-07 다수의 기준 화상에 대한 고속 움직임 추정

Country Status (6)

Country Link
US (1) US9253493B2 (ko)
EP (1) EP1784984A1 (ko)
JP (2) JP2008512046A (ko)
KR (1) KR101200924B1 (ko)
CN (1) CN101010963B (ko)
WO (1) WO2006025904A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146929A1 (en) * 2005-01-06 2006-07-06 Lg Electronics Inc. Method and system for acceleration of lossy video encoding owing to adaptive discarding poor-informative macroblocks
US7957610B2 (en) * 2006-04-11 2011-06-07 Panasonic Corporation Image processing method and image processing device for enhancing the resolution of a picture by using multiple input low-resolution pictures
US8228991B2 (en) * 2007-09-20 2012-07-24 Harmonic Inc. System and method for adaptive video compression motion compensation
US20100303155A1 (en) * 2008-01-29 2010-12-02 Yuki Maruyama Image coding device, image coding method, image coding integrated circuit and image coding program
US20100220786A1 (en) * 2009-02-27 2010-09-02 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for multiple reference picture motion estimation
US8855205B2 (en) 2010-05-26 2014-10-07 Newratek Inc. Method of predicting motion vectors in video codec in which multiple references are allowed, and motion vector encoding/decoding apparatus using the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030138044A1 (en) * 1992-01-29 2003-07-24 Mitsubishi Denki Kabushiki Kaisha High-efficiency encoder and video information recording/reproducing apparatus

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5592226A (en) * 1994-01-26 1997-01-07 Btg Usa Inc. Method and apparatus for video data compression using temporally adaptive motion interpolation
JPH08307860A (ja) 1995-04-28 1996-11-22 Toshiba Corp シーン再エンコード装置
JPH10271514A (ja) 1997-03-23 1998-10-09 Tadayoshi Enomoto 動画像情報の信号処理方法及びその装置
JP3593929B2 (ja) 1999-09-03 2004-11-24 日本電気株式会社 動画像符号化方法及び動画像符号化装置
CN1650633A (zh) 2002-04-29 2005-08-03 皇家飞利浦电子股份有限公司 用于小波编码的基于多参考帧的运动补偿时间过滤
KR100491530B1 (ko) * 2002-05-03 2005-05-27 엘지전자 주식회사 모션 벡터 결정 방법
CA2491522C (en) * 2002-07-01 2014-12-09 E G Technology Inc. Efficient compression and transport of video over a network
JP2004040512A (ja) * 2002-07-03 2004-02-05 Matsushita Electric Ind Co Ltd 画像符号化方法および画像復号方法
EP1422928A3 (en) * 2002-11-22 2009-03-11 Panasonic Corporation Motion compensated interpolation of digital video signals
EP1582064A4 (en) * 2003-01-09 2009-07-29 Univ California VIDEO PROCESSING AND DEVICES
US8059711B2 (en) 2003-01-28 2011-11-15 Thomson Licensing Robust mode staggercasting

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030138044A1 (en) * 1992-01-29 2003-07-24 Mitsubishi Denki Kabushiki Kaisha High-efficiency encoder and video information recording/reproducing apparatus

Also Published As

Publication number Publication date
EP1784984A1 (en) 2007-05-16
US20080063065A1 (en) 2008-03-13
WO2006025904A1 (en) 2006-03-09
JP2012186847A (ja) 2012-09-27
CN101010963B (zh) 2012-07-04
KR20070046882A (ko) 2007-05-03
US9253493B2 (en) 2016-02-02
JP2008512046A (ja) 2008-04-17
CN101010963A (zh) 2007-08-01

Similar Documents

Publication Publication Date Title
JP5474838B2 (ja) 改善された効率及び主観的な品質をサポートする予測フレームの選択方法及び装置
CA2891275C (en) A hybrid-resolution encoding and decoding method and a video apparatus using the same
JP5897218B2 (ja) 映像符号化方法、およびこの方法を用いる映像符号化装置
JP4828925B2 (ja) 符号化装置
JP2011528533A (ja) 動き推定反復検索のための推測的開始点選択
KR101200924B1 (ko) 다수의 기준 화상에 대한 고속 움직임 추정
JP2002511668A (ja) 3:2プルダウンビデオ情報を含むビデオ情報ストリームの適応エンコーディング速度制御を実行する方法および装置
CN101540905A (zh) 视频编码方法
JP2011528534A (ja) 動き推定反復検索のための簡単な次検索位置選択
CN108989818B (zh) 一种图像编码参数调整方法及装置
JP4257655B2 (ja) 動画像符号化装置
JP5649296B2 (ja) 画像符号化装置
JP2001128179A (ja) 動画像符号化装置および方法
JP4130617B2 (ja) 動画像符号化方法および動画像符号化装置
JP2009260421A (ja) 動画像処理システム、符号化装置、符号化方法、符号化プログラム、復号化装置、復号化方法および復号化プログラム
JP4911625B2 (ja) 画像処理装置、およびそれを搭載した撮像装置
JP2000032468A (ja) 画像符号化方法および動き補償モード選択プログラムを記録した記録媒体
JP2006197006A (ja) 動画像符号化装置
JP3690259B2 (ja) 動画像高速符号化装置及び動画像高速符号化方法
KR100744435B1 (ko) 고속 동영상 압축을 위한 dct 및 양자화 과정 생략 방법
JP2007251996A (ja) 動画像符号化方法及びその装置
JP2004297696A (ja) 映像信号符号化装置
JP2005303362A (ja) 画像符号化装置及びプログラム
EP2865181A1 (en) Apparatus and method for coding a video signal
JP2004140794A (ja) 画像符号化方法および画像符号化装置

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: 20151016

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 7