KR20210070944A - 픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체 - Google Patents

픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체 Download PDF

Info

Publication number
KR20210070944A
KR20210070944A KR1020200169814A KR20200169814A KR20210070944A KR 20210070944 A KR20210070944 A KR 20210070944A KR 1020200169814 A KR1020200169814 A KR 1020200169814A KR 20200169814 A KR20200169814 A KR 20200169814A KR 20210070944 A KR20210070944 A KR 20210070944A
Authority
KR
South Korea
Prior art keywords
entropy
hidden
components
image
context
Prior art date
Application number
KR1020200169814A
Other languages
English (en)
Inventor
이주영
조승현
고현석
권형진
김동현
김연희
김종호
정세윤
이태진
최진수
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20210070944A publication Critical patent/KR20210070944A/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/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체가 개시된다. 은닉 벡터의 은닉 표현성분에 대한 확률 예측을 수행되고, 확률 예측에 기반하여 영상에 대한 엔트로피 코딩이 수행된다. 엔트로피 코딩의 결과를 포함하는 비트스트림이 생성된다. 이 때, 확률 예측은 문맥으로 주어진 주변의 은닉 표현성분들이 이미지 공간으로의 복원에 기반하여 수행된다.

Description

픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체{METHOD, APPARATUS AND RECORDING MEDIUM FOR END-TO-END COMPRESSION USING PIXEL-SPACE PREDICTION}
본 발명은 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체에 관한 것이다. 구체적으로, 본 발명은 픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체를 개시한다.
최근, 인공 신경 네트워크들(Artificial Neural Networks; ANNs)은 다양한 영역들에 도달하였고, 그들의 탁월한 최적화 및 효현 학습 성능에 기인하여 많은 혁신들(breakthroughs)을 달성하였다.
영상 압축 분야에서도, 신경망을 이용한 이미지/비디오 압축 네트워크들이 개발되고 있으며, 특히 이러한 이미지/비디오 압축 네트워크들에 엔트로피 모델을 적용함으로써 압축 성능을 향상되고 있다.
특히, 직관적이라 사람에 의해 단기간에 해결될 수 있는 다양한 문제들에 대하여, 다수의 ANN-기반 연구들이 수행되어 왔고, 큰 진전들을 이루어왔다.
그러나, 영상 압축에 대해서는, 영상 압축의 복잡한 대상(target) 문제들로 인해, 상대적으로 느린 진전들만이 이루어졌다.
나아가, 전통적인 코덱들(codecs)의 수십 년에 걸친 표준화(standardization) 역사 및 견고한 구조들(firm structures)을 통해 축적된 휴리스틱들(heuristics)의 엄청난 양 때문에, 영상 압축에 관련된 작업들의 대부분은 재구축된(reconstructed) 영상들의 품질의 향상에 중점을 두고 있다.
예를 들면, 몇몇 접근방식들은 ANN들의 우월한 영상 복원(restoration) 능력(capability)에 의존하여 영상 압축 아티팩트들(artifacts)을 감소시키는 방법을 제안하였다.
아티팩트 감소가 ANN들의 이점들을 활용함에 있어서 가장 유망한 영역들 중 하나라는 것에 대해서는 의문의 여지가 없다 하더라도, 이러한 접근방법들은, 영상 압축 그 자체라기 보다는, 후-처리(post-processing)의 일종으로 보여질 수 있다.
일 실시예는 전통적인 영상 코덱들에 비해 더 나은 성능을 보이는 ANN 기반의 부호화 장치, 부호화 방법, 복호화 장치 및 복호화 방법을 제공할 수 있다.
일 실시예는 이미지 공간에서의 예측을 사용하는 부호화 장치, 부호화 방법, 복호화 장치 및 복호화 방법을 제공할 수 있다.
일 측에 있어서, 은닉 벡터의 은닉 표현성분에 대한 확률 예측을 수행하는 단계; 및 상기 확률 예측에 기반하여 영상에 대한 엔트로피 코딩을 수행하는 단계를 포함하고, 상기 확률 예측은 문맥으로 주어진 주변의 은닉 표현성분들이 이미지 공간으로의 복원에 기반하여 수행되는, 부호화 방법이 제공된다.
전통적인 영상 코덱들에 비해 더 나은 성능을 보이는 ANN 기반의 부호화 장치, 부호화 방법, 복호화 장치 및 복호화 방법이 제공된다.
이미지 공간에서의 예측을 사용하는 부호화 장치, 부호화 방법, 복호화 장치 및 복호화 방법을 제공된다.
도 1은 일 예에 따른 콘볼루션 레이어의 연산을 나타낸다.
도 2는 일 예에 따른 풀링 레이어의 연산을 나타낸다.
도 3은 일 예에 따른 디콘볼루션 레이어의 연산을 나타낸다.
도 4는 일 예에 따른 언-풀링 레이어의 연산을 나타낸다.
도 5는 일 예에 따른 렐루 레이어의 연산을 나타낸다.
도 6은 일 예에 따른 자동 부호기를 나타낸다.
도 7은 일 예에 따른 콘볼루션 부호기 및 콘볼루션 복호기를 나타낸다.
도 8는 실시예에 따른 부호기를 나타낸다.
도 9는 실시예에 따른 복호기를 나타낸다.
도 10는 일 실시예에 따른 자동 부호기의 구현을 나타낸다.
도 11은 일 예에 따른 더 높은 비트-레이트 환경들을 위한 하이브리드 네트워크의 구조를 나타낸다.
도 12는 일 실시예에 따른 부호화 장치의 구조도이다.
도 13은 일 실시예에 따른 복호화 장치의 구조도이다.
도 14는 일 실시예에 따른 부호화 방법의 흐름도이다.
도 15는 일 실시예에 따른 복호화 방법의 흐름도이다.
도 16은 일 예에 따른 원본 영상을 나타낸다.
도 17은 일 예에 따른 원본 영상에 대한 변환된 은닉 벡터의 성분을 나타낸다.
도 18은 일 예에 따른 주변의 표현 성분의 문맥을 사용하는 확률 예측 과정을 나타낸다.
도 19는 일 예에 따른 이미지 공간의 예측을 사용하는 확률 예측 과정을 나타낸다.
도 20은 일 예에 따른 이미지 공간의 예측 방법을 나타낸다.
도 21은 일 예에 따른 시간적 중복성 제거를 위한 주변의 표현 성분의 문맥을 사용하는 확률 예측 과정을 나타낸다.
도 22는 일 예에 따른 시간적 중복성 제거를 위한 이미지 공간의 예측을 사용하는 확률 예측 과정을 나타낸다.
도 23은 일 예에 따른 침조 프레임의 은닉 벡터에 대한 전체의 정보를 이용하는 확률 예측 과정을 나타낸다.
도 24는 일 예에 따른 침조 프레임의 은닉 벡터에 대한 전체의 정보를 이용하는 확률 예측 과정을 나타낸다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
후술하는 예시적 실시예들에 대한 상세한 설명은, 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 실시예를 실시할 수 있기에 충분하도록 상세히 설명된다. 다양한 실시예들은 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들면, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 실시예의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 예시적 실시예들의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다.
도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
본 발명에서 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들면, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함할 수 있다.
어떤 구성요소(component)가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기의 2개의 구성요소들이 서로 간에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 상기의 2개의 구성요소들의 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(component)가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기의 2개의 구성요소들의 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 발명의 실시예에 나타나는 구성요소들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성요소들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성요소는 설명의 편의상 각각의 구성요소로 나열하여 포함한 것으로 각 구성요소 중 적어도 두 개의 구성요소가 합쳐져 하나의 구성요소로 이루어지거나, 하나의 구성요소가 복수 개의 구성요소로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성요소의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 예시적 실시예들에서 특정 구성을 "포함"한다고 기술하는 내용은 상기의 특정 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 예시적 실시예들의 실시 또는 예시적 실시예들의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 즉, 본 발명에서 특정 구성을 "포함"한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성 또한 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
본 발명의 일부의 구성요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성요소일 수 있다. 본 발명은, 단지 성능 향상을 위해 사용되는 구성요소가 제외된, 본 발명의 본질을 구현함에 있어 필수적인 구성요소만을 포함하여 구현될 수 있다. 단지 성능 향상을 위해 사용되는 선택적인 구성요소가 제외된 필수적인 구성요소만을 포함하는 구조도 본 발명의 권리범위에 포함된다.
이하에서는, 기술분야에서 통상의 지식을 가진 자가 실시예들을 용이하게 실시할 수 있도록 하기 위하여, 첨부된 도면을 참조하여 실시 형태에 대하여 구체적으로 설명한다. 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 도면 상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고, 동일한 구성요소에 대한 중복된 설명은 생략한다.
이하에서, 영상은 비디오(video)를 구성하는 하나의 픽처(picture)를 의미할 수 있으며, 비디오 자체를 나타낼 수도 있다. 예를 들면, "영상의 부호화 및/또는 복호화"는 "비디오의 부호화 및/또는 복호화"를 의미할 수 있으며, "비디오를 구성하는 영상들 중 하나의 영상의 부호화 및/또는 복호화"를 의미할 수도 있다.
이하에서, 용어들 "비디오(video)" 및 "동영상(motion picture(s))"은 동일한 의미로 사용될 수 있으며, 서로 교체되어 사용될 수 있다.
이하에서, 대상 영상은 부호화의 대상인 부호화 대상 영상 및/또는 복호화의 대상인 복호화 대상 영상일 수 있다. 또한, 대상 영상은 부호화 장치로 입력된 입력 영상일 수 있고, 복호화 장치로 입력된 입력 영상일 수 있다. 또한, 대상 영상은 현재 부호화 및/또는 복호화의 대상인 현재 영상일 수 있다. 예를 들면, 용어들 "대상 영상" 및 "현재 영상"은 동일한 의미로 사용될 수 있으며, 서로 교체되어 사용될 수 있다.
이하에서, 용어들 "영상(image)", "픽처(picture)", "프레임(frame)" 및 "스크린(screen)"은 동일한 의미로 사용될 수 있으며, 서로 교체되어 사용될 수 있다.
콘볼루션 레이어
도 1은 일 예에 따른 콘볼루션 레이어의 연산을 나타낸다.
콘볼루션 레이어는 입력된 프레임에 대한 필터링을 수행할 수 있고, 필터링의 결과로서 특징 맵(feature map)을 출력할 수 있다. 특징 맵은 다음의 레이어에 대한 입력으로 사용될 수 있다. 이러한 구조에 의해, 입력된 프레임이 복수의 레이어들에 의해서 연속하여 처리될 수 있다.
콘볼루션 레이어에서, 커널은 콘볼루션 연산 또는 필터링을 수행하는 필터를 의미할 수 있다. 커널의 크기는 커널 크기 또는 필터 크기로 칭해질 수 있다. 커널을 구성하는 연산 파라미터는 가중치, 커널 파라미터 또는 필터 파라미터로도 칭해질 수 있다.
콘볼루션 레이어에서는, 하나의 입력에 대해서 서로 다른 종류들의 필터들이 사용될 수 있다. 이 때, 하나의 필터가 입력을 처리하는 과정을 콘볼루션 채널(convolution channel)로 칭할 수 있다.
도 1에서 도시된 것과 같이, 콘볼루션 레이어는 커널의 크기만큼의 샘플들을 하나의 샘플로 축소할 수 있다. 도 1에서, 예시된 커널의 크기는 3x3일 수 있다. 말하자면, 도 1에서는, 하나의 채널에서, 3x3의 커널 크기를 갖는 필터에 의해 콘볼루션 연산이 수행되는 과정이 도시되었다.
도 1에서는, 입력 이미지 내의 짙은 테두리의 사각형에 대해서 연산이 수행될 수 있다. 이 때, 윈도우(window)는 짙은 테두리의 사각형과 같은 연산 영역을 의미할 수 있다. 윈도우는 프레임의 좌측 상단으로부터 우측 하단으로 한 칸씩 이동할 수 있으며, 이동의 크기는 조절될 수 있다.
콘볼루션 연산의 필터에 대하여 스트라이드(stride) 및 패딩(padding)이 사용될 수 있다.
스트라이드는 이동의 크기를 의미할 수 있다. 도 18에서 예시된 스트라이드의 값은 1일 수 있다. 스트라이드의 값이 2인 경우, 2 칸의 간격들로 벌어진 윈도우들에 대해서 연산들이 수행될 수 있다.
패딩은 입력 이미지를 더 크게 만드는 것일 수 있으며, 입력 이미지의 상단, 하단, 좌측 및 우측에 특정된 값들을 채워 넣는 것을 의미할 수 있다.
풀링 레이어
도 2는 일 예에 따른 풀링 레이어의 연산을 나타낸다.
풀링은 콘볼루션 레이어에서의 연산에 의해 획득된 특징 맵에 대한 서브샘플링(subsampling)을 의미할 수 있다.
도 2에서 도시된 것과 같이, 풀링 레이어는 풀링 레이어를 통과하는 특정된 크기의 샘플들에 대해 대표 샘플을 선택할 수 있다.
풀링에 있어서, 일반적으로 스트라이드의 크기 및 윈도우의 크기는 동일할 수 있다.
풀링은 최대 풀링(max pooling) 및 평균 풀링(average pooling)을 포함할 수 있다.
최대 풀링은 특정된 크기의 샘플들 중에서 최대 값을 갖는 샘플을 대표 샘플로서 선택하는 것일 수 있다. 예를 들면, 2x2의 샘플들에 대해서, 샘플들 중 최대 값이 대표 샘플로서 선택될 수 있다.
평균 풀링은 특정된 크기의 샘플들의 평균 값을 대표 샘플로서 설정하는 것일 수 있다.
도 2에서 도시된 풀링 레이어는 최대 풀링을 수행할 수 있다. 예를 들면, 풀링 레이어는 2x2 크기를 갖는 윈도우의 샘플들 중에서 하나의 샘플을 선택할 수 있다. 이러한 선택을 통해, 풀링 레이어로부터의 출력의 가로 및 세로는 풀링 레이어로의 입력의 가로 및 세로의 절반일 수 있다.
도 2에서 예시된 것과 같이, 스트라이드 및 윈도우의 크기는 모두 2로 설정될 수 있다. 예를 들면, 풀링 레이어로 [h, w, n]의 크기의 값들이 입력될 때, 풀링 레이어를 거쳐 출력되는 값들의 크기는 [h/2, w/2, n]일 수 있다.
디콘볼루션 레이어(deconvolution layer)
도 3은 일 예에 따른 디콘볼루션 레이어의 연산을 나타낸다.
디콘볼루션 레이어는 콘볼루션 레이어의 연산의 방향에 비해 반대되는 방향의 연산을 수행할 수 있다. 방향을 제외하고, 콘볼루션 레이어의 연산 및 디콘볼루션 레이어이 연산은 동일한 것으로 간주될 수 있다.
디콘볼루션 레이어는 입력된 특징 맵에 대해 콘볼루션 연산을 수행할 수 있고, 콘볼루션 연산을 통해 프레임을 출력할 수 있다.
출력되는 프레임의 크기는 스트라이드의 값에 따라서 변할 수 있다. 예를 들면, 스트라이드의 값이 1인 경우, 프레임의 가로 크기 및 세로 크기는 특징 맵의 가로 크기 및 세로 크기와 동일할 수 있다. 스트라이드의 값이 2일 경우, 프레임의 가로 크기 및 세로 크기는 특징 맵의 가로 크기 및 세로 크기의 1/2일 수 있다.
언-풀링 레이어(unpooling layer)
도 4는 일 예에 따른 언-풀링 레이어의 연산을 나타낸다.
언-풀링 레이어는 풀링 레이어에서의 풀링의 방향의 반대 방향으로 업-샘플링을 진행할 수 있다. 언-풀링 레이어는, 풀링 레이어와는 반대로, 차원을 확대하는 기능을 수행할 수 있다. 말하자면, 언-풀링 레이어는, 풀링 레이어와는 반대로, 언-풀링 레이어를 통과하는 샘플을 특정된 크기의 샘플들로 확대할 수 있다. 예를 들면, 언-풀링 레이어를 통과하는 샘플은 2x2의 윈도우의 샘플들로 확대될 수 있다.
예를 들면, 언-풀링 레이어로 [h, w, n]의 크기의 값들이 입력될 때, 언-풀링 레이어를 거쳐 출력되는 값들의 크기는 [h*2, w*2, n]일 수 있다.
비선형 연산 레이어(nonlinear operation layer)
도 5는 일 예에 따른 렐루 레이어의 연산을 나타낸다.
도 5의 좌측에는 렐루 레이어(relu layer)로 입력되는 값들의 일 예가 도시되었고, 도 5의 우측에는 렐루 레이어로부터 출력되는 값들의 일 예가 도시되었다.
렐루 레이어는 도 5에서 도시된 것과 같은 비선형 연산을 수행할 수 있다. 실시예들에서, 렐루 레이어는 비선형 연산 레이어로 대체될 수 있다.
렐루 레이어는 입력되는 값들에 대하여 전송 함수(transfer function)를 적용함으로써 출력되는 값들을 생성할 수 있다.
렐루 레이어로 입력되는 값들의 크기 및 렐루 레이어로부터 출력되는 값들의 크기는 동일할 수 있다. 말하자면, 렐루 레이어를 통과하는 값들의 크기는 변하지 않을 수 있다.
자동 부호기(autoencoder)
도 6은 일 예에 따른 자동 부호기를 나타낸다.
자동 부호기는 도 6에서 도시된 것과 같은 구조를 가질 수 있으며, 비지도 학습(unsupervised learning)에 널리 사용될 수 있다.
자동 부호기로부터 콘볼루션 부호기(convolution encoder) 및 콘볼루션 복호기(convolution decoder)가 파생될 수 있다.
자동 부호기의 구조에 따르면, 입력의 차원 및 출력의 차원이 동일할 수 있다. 자동 부호기의 목적은 f(X) = X가 성립하도록 f()에 대한 학습을 수행하는 것일 수 있다. X는 입력 값일 수 있다. 말하자면, 자동 부호기의 목적은 출력되는 예측 값 X'를 입력 값 X에 근사시키는 것일 수 있다.
자동 부호기는 부호기(encoder) 및 복호기(decoder)를 포함할 수 있다. 부호기는 입력 값 X에 대하여 출력 값으로서 코드 또는 은닉 변수(latent variable)을 제공할 수 있다. 코드는 입력 값 X에 대한 특징 벡터(feature vector)로서 사용될 수 있다. 코드는 복호기로 입력될 수 있다. 복호기는 코드로부터 형성된 예측 값 X'을 출력할 수 있다.
콘볼루션 부호기 및 콘볼루션 복호기
도 7은 일 예에 따른 콘볼루션 부호기 및 콘볼루션 복호기를 나타낸다.
콘볼루션 부호기(encoder) 및 콘볼루션 복호기(decoder)의 구조들은 콘볼루션 레이어 및 디콘볼루션 레이어의 쌍으로 이루어질 수 있다. 콘볼루션 부호기 및 콘볼루션 복호기는 자동 부호기와 유사하게 입력, 특징 벡터 및 출력을 제공할 수 있다.
콘볼루션 부호기는 콘볼루션 레이어 및 풀링(pooling) 레이어를 포함할 수 있다. 콘볼루션 부호기로의 입력은 프레임일 수 있고, 콘볼루션 부호기로부터의 출력은 특징 맵(feature-map)일 수 있다.
콘볼루션 복호기는 디콘볼루션(deconvolution) 레이어 및 언-풀링(un-pooling) 레이어를 포함할 수 있다. 콘볼루션 복호기로의 입력은 특징 맵일 수 있고, 콘볼루션 복호기로부터의 출력은 (재구축된) 프레임일 수 있다.
콘볼루션 부호기 및 콘볼루션 복호기의 구조들에는 콘볼루션의 특징이 반영될 수 있다. 이러한 반영에 따라, 콘볼루션 부호기 및 콘볼루션 복호기는 더 작은 학습 가중치(weight)를 가질 수 있다. 콘볼루션 부호기 및 콘볼루션 복호기는 특히 출력 프레임에 대한 옵티컬 플로우(optical flow) 및 카운터 에지(counter edge) 등과 같은 목적 하에서 동작이 수행될 때 유용할 수 있다.
콘볼루션 부호기는 콘볼루션 및 풀링을 활용함으로써 차원을 축소할 수 있고, 프레임으로부터 특징 벡터를 생성할 수 있다. 특징 벡터는 콘볼루션 부호기의 출력 단에서 생성될 수 있다.
특징 벡터는 원래의 신호의 차원에 비해 더 낮은 차원에서 원래의 신호의 특징을 표현하는 벡터일 수 있다.
콘볼루션 복호기는 디콘볼루션(deconvolution) 및 언-풀링을 활용하여 특징 벡터로부터 프레임을 재구축할 수 있다.
ANN-기반 영상 압축
ANN-기반 영상 압축과 관련하여, 제안된 방법들은 두 개의 스트림들로 나뉠 수 있다.
첫 번째로, 생성적(generative) 모델들의 성공의 귀결로서, 인지적(perceptual) 품질을 타겟팅하는 몇몇 영상 압축 접근방식들이 제안되어 왔다. 이러한 접근방식들의 기본적인 아이디어는 자연 영상들의 분포의 학습에 있어서, 텍스처들과 같은, 재구축된 영상의 구조 또는 인지 품질에 큰 영향을 미치지 않는 영상 구성요소들(components)의 생성을 허용함으로써, 심각한 인지적 손실(loss) 없이 매우 높은 압축을 가능하게 한다는 것이다.
그러나, 이러한 접근방식에 의해 생성된 영상들이 매우 사실적임에도 불구하고, 기계-생성된(machine-created) 영상 구성요소들의 수용가능성(acceptability)은 결국에는 다소 어플리케이션-의존(application-dependent)일 수 있다.
한편, 두 번째로, 생성 모델들을 사용하지 않고, 종단 간(end-to-end) 최적화된 ANN-기반 접근방식들이 사용될 수 있다.
이러한 접근방식에서는, 예측(prediction), 변환(transform) 및 양자화(quantization)와 같은 개별적인 도구들로 구성된 전통적인 코덱들과는 다르게, 종단 간 최적화를 통해 전체 기능들을 커버하는 포괄적(comprehensive) 솔루션이 제공될 수 있다.
예를 들면, 한 접근방식은 모든 단계들에서 압축된 정보를 포함하기 위해 이진의(binary) 은닉(latent) 표현성분들(representations)의 소량을 활용할 수 있다. 각 단계는 점진적으로 품질을 향상시키는 것을 달성하기 위해 추가의 은닉 표현성분들을 더욱 더 쌓을 수 있다.
다른 접근방식은, 전술된 접근방식의 네트워크 구조를 향상시켜서 압축 성능을 향상시킬 수 있다.
이러한 접근방식들은 하나의 훈련된 네트워크를 통한 품질 제어에 적합한 새로운 프레임워크들을 제공할 수 있다. 이러한 접근방식들에 있어서, 반복(iteration) 단계들의 개수의 증가는 몇몇 어플리케이션들에는 부담이 될 수 있다.
이러한 접근방식들은 최대한 높은 엔트로피를 갖는 이진 표현성분들을 추출할 수 있다. 반면, 다른 접근 방식들은 영상 압축 문제를 어떻게 가능한 낮은 엔트로피를 갖는 이산 은닉 표현성분들(discrete latent representations)을 어떻게 검출하는(retrieve) 가로 간주한다.
다시 말하면, 전자의 접근방식들의 목표 문제는 어떻게 고정된 개수의 표현성분 내에 가능한 많은 정보를 포함시키는가로 간주될 수 있고, 반면 후자의 접근방식들의 목표 문제는 단지 표현성분들이 충분한 개수가 주어졌을 때 어떻게 예상되는 비트-레이트를 감소시킬 수 있는가로 간주될 수 있다. 여기에서, 낮은 엔트로피는 엔트로피 코딩에 의한 낮은 비트-레이트에 대응한다고 가정될 수 있다.
후자의 접근방식들의 목표 문제를 해결하기 위해, 접근방식들은 이산 은닉 표현성분들의 실제의 분포를 근사하기 위한 자체의 엔트로피 모델들을 채용할 수 있다.
예를 들면, 일부 접근방식들은 엔트로피 모델들을 활용하는 새로운 프레임워크들을 제안할 수 있고, 엔트로피 모델들에 의해 생성된 결과들을 JPEG2000과 같은 기존의 코덱들과 비교함으로써 엔트로피 모델들의 성능이 입증될 수 있다.
이러한 접근방식들에 있어서, 각 표현성분이 고정된 분포를 갖는다고 가정될 수 있다. 접근방식에 대해서, 각 표현성분에 대한 분포의 스케일을 추정하는 입력-적응적(input-adaptive) 엔트로피 모델이 사용될 수 있다. 이러한 접근방식은 표현성분들의 스케일들이 인접한 영역들 내에서 함께 변한다는 자연 영상들의 특성에 기반할 수 있다.
엔트로피 모델 기반 압축 방식은 입력 영상
Figure pat00001
를 부호기 네트워크를 통해 낮은 엔트로피를 갖는 은닉 벡터
Figure pat00002
로 변환하고, 은닉 벡터
Figure pat00003
가 은닉 벡터
Figure pat00004
로 균일하게 양자화될 때, 별도의 엔트로피 코딩을 통해
Figure pat00005
를 비트스트림으로 변환하는 방식이다. 여기서,
Figure pat00006
의 엔트로피를 최소화하기 위해,
Figure pat00007
를 구성하는 성분들의 순차적인 엔트로피 코딩 환경을 고려한 문맥-적응적 확률 예측 방식이 이용될 수 있다.
여기서, 문맥 적응적 확률 예측이란 특정 은닉 벡터
Figure pat00008
의 개별 은닉 표현성분
Figure pat00009
의 확률을 예측함에 있어서, 미리 재구축된 주변의 성분들을 이용하는 것을 의미할 수 있다.종단 간 최적화 이미지 압축의 주요 요소들 중 하나는 은닉 표현성분들을 위한 훈련가능한 엔트로피 모델일 수 있다.
은닉 표현성분들의 실제의 분포들은 분석적으로는(analytically) 알 수 없으므로, 엔트로피 모델들은 은닉 표현성분들의 분포들을 근사함으로써 은닉 표현성분들을 부호화하기 위한 추정된 비트들을 계산할 수 있다.
입력 이미지
Figure pat00010
가 은닉 벡터
Figure pat00011
로 변환(transform)되고, 은닉 벡터
Figure pat00012
가 로 양자화된 은닉 벡터
Figure pat00013
로 균일하게 양자화될 때, 단순한 엔트로피 모델은
Figure pat00014
로 표현될 수 있다.
Figure pat00015
Figure pat00016
의 실제의 (한계(marginal)) 분포를 나타낼 수 있다. 엔트로피 모델이 학습된 근사 함수 p(
Figure pat00017
)를 이용할 때, 엔트로피 모델을 통해 계산된 엔트로피는 교차(cross) 엔트로피일 수 있으며, 교차 엔트로피는 아래의 수학식 1과 같이 표현될 수 있다.
Figure pat00018
이미지 압축 네트워크의 종단 간 학습을 위해, 교차 엔트로피는 율-왜곡(rate-distortion) 최적화를 위한 율-항(rate-term)으로서 이용될 수 있다. 즉, 상기의 율-항을 최소화하기 위해, 엔트로피 모델을 구성하는 다른 근사 모델
Figure pat00019
및 실제의 분포
Figure pat00020
가 가능한 가까워질 수 있다. 또한,
Figure pat00021
의 실제의 엔트로피 H(m)의 실제가 작게 되도록 네트워크의 다른 파라미터들이 학습될 수 있다.
율 추정은
Figure pat00022
의 실제의 엔트로피 및 추가의 비트들로 분해될 수 있다. 말하자면, 율 추정은
Figure pat00023
의 실제의 엔트로피 및 추가의 비트들을 포함할 수 있다.
추가의 비트들은 실제의 분포들 및 이러한 실제의 분포들에 대한 추정들 간의 불일치(mismatch)에 기인할 수 있다.
따라서, 훈련의 프로세스 동안 율 항(rate term)
Figure pat00024
이 감소하면, 엔트로피 모델
Figure pat00025
및 근사
Figure pat00026
가 가능한 가까워질 수 있으며, 또한
Figure pat00027
의 실제의 엔트로피 H(m)가 작게 되도록 다른 파라미터들이
Figure pat00028
Figure pat00029
로 원활하게 변환할 수 있다.
쿨백-라이블러(Kullback-Leibler; KL)-발산(divergence)의 관점에서,
Figure pat00030
Figure pat00031
가 실제의 분포
Figure pat00032
와 완벽하게 매치될 때 최소화될 수 있다. 이는, 상기의 방법들의 압축 성능이 본질적으로 엔트로피 모델의 성능에 의존한다는 것을 의미할 수 있다.
실시예에서, 성능을 향상시키기 위해, 문맥들의 2 개의 타입들을 활용하는 새로운 엔트로피 모델이 제안될 수 있다. 문맥의 2 개의 타입들은, 비트-소비(bit-consuming) 문맥 및 비트-프리(bit-free) 문맥일 수 있다.
비트-소비 문맥 및 비트-프리 문맥은 문맥이 전송(transmission)을 위한 추가적인 비트 할당(allocation)을 요구하는지 여부에 따라 구분될 수 있다.
이러한 문맥들을 이용하여, 제안되는 엔트로피 모델은 엔트로피 모델들의 보다 일반적인 형태를 사용하여 각 은닉 표현성분의 분포를 보다 정확하게 추정하게 할 수 있다. 또한, 제안되는 엔트로피 모델은 이러한 정확한 추정을 통해 인접한 은닉 표현성분들 간의 공간적 의존성들(spatial dependencies)을 더 효율적으로 감소시킬 수 있다.
후술될 실시예들에 의해 아래와 같은 효과가 이루어질 수 있다.
- 문맥들의 2 개의 다른 타입들을 접목시키는(incorporate) 새로운 문맥-적응적 엔트로피 모델 프레임워크가 제공될 수 있다.
- 모델 용량(capacity) 및 문맥들의 레벨의 측면에서 실시예의 방법들의 개선(improvement) 방향들(directions)이 설명될 수 있다.
- ANN 기반 영상 압축의 도메인에서, 최대 신호 대 잡음 비(Peak Signal-to-Noise Ratio; PSNR)의 측면에서, 널리 사용되는 기존의 이미지 코덱을 성능에서 능가하는 테스트 결과들이 제공될 수 있다.
또한, 실시예들에 관하여 아래와 같은 설명들이 후술될 수 있다.
1) 종단 간 최적화된 영상 압축의 키 접근방식들이 소개되고, 문맥-적응적 엔트로피 모델이 제안될 수 있다.
2) 부호기 및 복호기 모델들이 구조가 설명될 수 있다.
3) 실험의 셋업 및 실험의 결과가 제공될 수 있다.
4) 실시예들의 현재의 상태 및 개선 방향들이 설명될 수 있다.
문맥-적응적 엔트로피 모델에 기반하는 종단 간 최적화
엔트로피 모델들
실시예의 엔트로피 모델들은 이산 은닉 표현성분들의 분포를 근사할 수 있다. 이러한 근사를 통해 엔트로피 모델들은 영상 압축 성능을 향상시킬 수 있다.
실시예의 엔트로피 모델들 중 어떤 것은 비-파라미터의(non-parametric) 모델들로 가정될 수 있고, 다른 것은 표현성분 당 6 개의 가중치가 부여되는(six weighted) 제로-평균값(zero-mean) 가우시안 모델로 구성된 가우시안 스케일 혼합 모델일 수 있다.
엔트로피 모델들의 형태들이 서로 다르다고 가정되더라도, 엔트로피 모델들은 입력 적응성에 대한 고려 없이 표현성분들의 분포들을 학습하는 것에 집중한다는 공통된 특징을 가질 수 있다. 다시 말해서, 일단 엔트로피 모델이 훈련되면, 표현성분들에 대하여 훈련된 모델들은 테스트 시간 동안 임의의 입력에 대해서 고정될 수 있다.
반면, 특정 엔트로피 모델은 표현성분들에 대하여 입력-적응적 스케일 추정을 채용할 수 있다. 이러한 엔트로피 모델에서는, 자연 영상들로부터의 은닉 표현성분들 스케일들은 인접한 영역 내에서 함께 움직이는 경향이 있다는 가정이 적용될 수 있다.
이러한 중복성(redundancy)을 감소시키기 위해, 엔트로피 모델은 추가 정보의 소량을 사용할 수 있다. 추가 정보는 은닉 표현성분들의 적절한 스케일 파라미터들(예를 들면, 표준 편차들)과 같이 추정될 수 있다.
스케일 추정 외에도, 연속적인 도메인 내의 각 표현성분에 대한 사전 확률 밀도 함수(Probability Density Function; PDF)가 표준 균일 밀도 함수(standard uniform density function)와 콘볼루션될(convolved) 때, 엔트로피 모델은 라운딩(rounding)에 의해 균일하게 양자화된 이산 은닉 표현성분의 사전의 확률 질량 함수(Probability Mass Function; PMF)에 더 가깝게 근사할 수 있다.
훈련에 대하여, 균일 노이즈가 각 은닉 표현성분에 추가될 수 있다. 이러한 추가는 노이즈 낀(noisy) 표현성분들의 분포를 언급된 PMF-근사 함수들에 맞추기 위한 것일 수 있다.
이러한 접근방식들로, 엔트로피 모델은 BPG와 유사한 최신의(state-of-the-art) 압축 성능을 달성할 수 있다.
은닉 변수들의 공간적 의존성들
은닉 표현성분들이 콘볼루션(convolution) 신경 네트워크를 통해 변환 될 때, 동일한 콘볼루션 필터들이 공간적 구역들(regions)을 걸쳐 공유되고, 자연 영상들은 인접한 구역들 내에서 다양한 팩터들(factors)을 공통적으로 갖기 때문에 은닉 표현성분들은 본질적으로 공간적 의존성들을 포함할 수 있다.
엔트로피 모델에 있어서, 은닉 표현성분들의 표준 편차들을 입력-적응적으로 추정함으로써 이러한 공간 의존성들이 성공적으로 포착될 수 있고, 압축 성능이 향상될 수 있다.
한 걸음 더 나아가서, 표준 편차 외에도, 문맥들을 활용하는 평균값(mean; mu) 추정을 통해 추정된 분포의 형태(form)가 일반화될 수 있다.
예를 들면, 특정한(certain) 표현성분들이 공간적으로 인접한 영역 내에서 유사한 값을 갖는 경향이 있다고 가정하면, 모든 이웃 표현성분들이 10의 값을 가질 때, 현재의 표현성분이 10 또는 유사한 값들을 가질 가능성이 비교적 높다는 것이 직관적으로 추측될 수 있다. 따라서, 이러한 간단한 추정은 엔트로피를 감소시킬 수 있다.
마찬가지로, 실시예의 방법에 따른 엔트로피 모델은 각 은닉 표현성분의 mu 및 표준 편차를 추정하기 위해 주어진 문맥을 사용할 수 있다.
또는, 엔트로피 모델은 각 이진 표현성분의 확률을 추정함으로써 문맥-적응적 엔트로피 코딩을 수행할 수 있다.
그러나, 이러한 문맥-적응적 엔트로피 코딩은, 엔트로피 코딩의 확률 추정이 율-왜곡(Rate-Distortion; R-D) 최적화 프레임워크의 율 항(rate term)에 직접적으로 기여하지 않기 때문에, 종단 간 최적화 구성요소들 중 하나라기 보다는 별개의 구성요소들로 보일 수 있다.
2 개의 상이한 접근방식들의 은닉 변수들
Figure pat00033
및 이러한 은닉 변수들의 정규화된 버전들이 예시될 수 있다. 앞서 언급된 문맥들의 2 개의 타입들을 가지고, 하나의 접근방식에서는 단지 표준 편차 파라미터들이 추정될 수 있고, 다른 하나의 접근방식에서는 mu 및 표준 편차 파라미터들의 양자가 추정될 수 있다. 이 때, 주어진 문맥들을 가지고 mu가 함께 추정될 때 공간적 의존성은 더 효율적으로 제거될 수 있다.
문맥-적응적 엔트로피 모델
실시예에서의 최적화 문제에 있어서, 입력 영상
Figure pat00034
는 낮은 엔트로피를 갖는 은닉 벡터
Figure pat00035
로 변환될 수 있고,
Figure pat00036
의 공간적 의존성들은
Figure pat00037
로 포착될 수 있다. 따라서, 4 개의 주요한 파라미터의(parametric) 변환 함수들이 사용될 수 있다. 엔트로피 모델의 4 개의 파라미터의 변환 함수들은 아래의 1) 내지 4)와 같다.
1)
Figure pat00038
를 은닉 벡터
Figure pat00039
로 변환하기 위한 분석 변환
Figure pat00040
2) 재구축된 영상
Figure pat00041
를 생성하기 위한 합성(synthesis) 변환
Figure pat00042
2)
Figure pat00043
의 공간적 중복성들을 은닉 벡터
Figure pat00044
로 포착(capture)하기 위한 분석 변환
Figure pat00045
4) 모델 추정에 대한 문맥들을 생성하기 위한 합성 변환
Figure pat00046
실시예에서,
Figure pat00047
는 표현성분들의 표준 편자들을 직접적으로 추정하지 않을 수 있다. 대신, 실시예에서,
Figure pat00048
는 분포를 추정하기 위해 문맥들의 2 개의 타입들 중 하나인 문맥
Figure pat00049
을 생성할 수 있다. 문맥들의 2 개의 타입들에 대해서는 아래에서 설명된다.
변이(variational) 자동 부호기(autoencoder)의 시점(viewpoint)로부터 최적화 문제가 분석될 수 있고, KL-발산의 최소화는 영상 압축의 R-D 최적화와 동일한 문제로 간주될 수 있다. 기본적으로, 실시예에서는 동일한 컨셉이 채용될 수 있다. 그러나 훈련에 있어서, 실시예에서는 노이즈 낀 표현성분들 대신에 조건들(conditions)에 대한 이산 표현성분들이 사용될 수 있고, 따라서 노이즈 낀 표현성분들은 엔트로피 모델들로의 입력들로만 사용될 수 있다.
경험적으로, 조건들에 대한 이산 표현성분들을 사용하는 것은 더 나은 결과들을 낳을 수 있다. 이러한 결과들은 훈련 시간 및 테스팅 시간 사이에서의 조건들의 불일치를 제거하는 것과, 이러한 불일치의 제거에 의해 훈련 용량을 향상시키는 것으로부터 올 수 있다. 훈련 용량은 균일 노이즈의 영향(affect)을 단지 확률 질량 함수들로의 근사를 돕는 것만으로 제한함으로써 향상될 수 있다.
실시예에서, 균일 양자화로부터의 불연속성들(discontinuities)을 다루기 위해 정체(identity) 함수를 갖는 그래디언트 오버라이딩(gradient overriding) 방법이 사용될 수 있다. 실시예에서 사용되는 결과인(resulting) 목적 함수들(objective functions)은 아래의 수학식 2에서 설명되었다.
Figure pat00050
수학식 2에서, 총 손실(total loss)은 2 개의 항들을 포함한다. 2 개의 항들은 비율들 및 왜곡들을 나타난다. 말하자면, 총 손실은 율 항(rate term) R 및 왜곡 항(distortion term) D를 포함할 수 있다.
계수
Figure pat00051
는 R-D 최적화 동안의 율 및 왜곡 간의 균형(balance)을 제어할 수 있다.
Figure pat00052
여기에서,
Figure pat00053
가 변환
Figure pat00054
의 결과이고,
Figure pat00055
가 변환
Figure pat00056
의 결과일 때,
Figure pat00057
Figure pat00058
의 노이즈가 낀 표현성분은 표준 균일 분포를 따를 수 있다. 여기에서,
Figure pat00059
의 평균값은
Figure pat00060
일 수 있고,
Figure pat00061
의 평균값은
Figure pat00062
일 수 있다. 또한,
Figure pat00063
로의 입력은, 노이즈 낀 표현성분
Figure pat00064
가 아니라,
Figure pat00065
일 수 있다.
Figure pat00066
는 라운딩 함수
Figure pat00067
에 의한
Figure pat00068
의 균일하게 양자화된 표현성분들일 수 있다.
율 항은
Figure pat00069
Figure pat00070
의 엔트로피 모델들을 가지고 계산된 예상되는 비트들을 나타낼 수 있다.
Figure pat00071
는 궁극적으로
Figure pat00072
의 근사일 수 있고,
Figure pat00073
는 궁극적으로
Figure pat00074
의 근사일 수 있다.
아래의 수학식 4는
Figure pat00075
에 대한 요구되는 비트들의 근사를 위한 엔트로피 모델을 나타낼 수 있다. 수학식 4는 엔트로피 모델에 대한 공식적인(formal) 표현성분일 수 있다.
Figure pat00076
엔트로피 모델은 표준 편차 파라미터
Figure pat00077
뿐만 아니라, mu 파라미터
Figure pat00078
도 갖는 가우시안 모델에 기반할 수 있다.
Figure pat00079
Figure pat00080
는 함수
Figure pat00081
에 의해 주어진 문맥들의 2 개의 타입들로부터 결정적 방식으로 추정될 수 있다. 함수
Figure pat00082
는 분포 추정자(estimator)일 수 있다.
문맥들의 2 개의 타입들은 비트-소비 문맥 및 비트-프리 문맥일 수 있다. 여기에서, 어떤 표현성분의 분포를 추정하기 위한 문맥들의 2 개의 타입들은
Figure pat00083
Figure pat00084
로 표시될 수 있다.
추출자
Figure pat00085
Figure pat00086
로부터
Figure pat00087
를 추출할 수 있다.
Figure pat00088
는 변환
Figure pat00089
의 결과일 수 있다.
Figure pat00090
와는 대조적으로,
Figure pat00091
에 대해서는 어떤 추가 비트 할당도 요구되지 않을 수 있다. 대신,
Figure pat00092
의 알려진(이미 엔트로피-부호화되거나, 엔트로피-복호화된) 서브세트가 활용될 수 있다. 이러한
Figure pat00093
의 알려진 서브세트는
Figure pat00094
로 표시될 수 있다.
추출자
Figure pat00095
Figure pat00096
로부터
Figure pat00097
를 추출할 수 있다.
엔트로피 부호기 및 엔트로피 복호기는, 래스트 스캐닝(raster scanning)과 같은, 동일한 특정된(specific) 순서로 순차적으로(sequentially)
Figure pat00098
를 처리할 수 있다. 따라서, 동일한
Figure pat00099
를 처리함에 있어서, 엔트로피 부호기 및 엔트로피 복호기에게 주어지는
Figure pat00100
는 언제나 동일할 수 있다.
Figure pat00101
의 경우에는, 단순한 엔트로피 모델이 사용될 수 있다. 이러한 단순한 엔트로피 모델은 훈련가능한
Figure pat00102
를 가진 제로-평균값 가우시안 분포들을 따르는 것으로 가정될 수 있다.
Figure pat00103
는 부가 정보(side information)로 간주될 수 있으며,
Figure pat00104
는 총 비트-레이트의 매우 적은 양에 기여할 수 있다. 따라서, 실시예에서는, 더 복잡한 엔트로피 모델들이 아닌, 엔트로피 모델의 단순화된 버전이 제안된 방법의 전체의 파라미터들 상의 종단 간 최적화를 위해 사용될 수 있다.
아래의 수학식 5는 엔트로피 모델의 단순화된 버전을 나타낸다.
Figure pat00105
율 항은 실제의 비트들의 양이 아니고, 언급된 것과 같이 엔트로피 모델들로부터 계산된 추정일 수 있다. 따라서, 훈련 또는 부호화에 있어서, 실제의 엔트로피 부호화 또는 엔트로피 복호화 프로세스들이 필수적으로 요구되지 않을 수 있다.
왜곡 항(distortion term)에 관하여,
Figure pat00106
가 널리-사용되는 왜곡 메트릭스들(metrics)로서 가우시안 분포들을 따른다고 가정될 수 있다. 이러한 가정 하에서, 왜곡 항은 평균 제곱된 에러(Mean Squared Error; MSE)를 사용하여 계산될 수 있다.
부호기-복호기 모델
도 8는 실시예에 따른 부호기를 나타낸다.
도 8에서, 우측의 작은 아이콘들은 엔트로피-부호화된 비트스트림을 나타낼 수 있다.
도 8에서, EC는 엔트로피 코딩(즉, 엔트로피 부호화)을 나타낼 수 있다.
Figure pat00107
는 균일 잡음 추가 또는 균일 양자화를 나타낼 수 있다.
또한, 도 8에서, 노이즈가 낀 표현성분들은 점선들(dotted lines)로 도시되었다. 실시예에서, 노이즈가 낀 표현성분들은 엔트로피 모델들로의 입력으로서 단지 훈련을 위해 사용될 수 있다.
부호기(800) 및 복호기(900)의 동작들 및 상호작용(interaction)에 대해서 아래에서 더 상세하게 설명된다.
도 9는 실시예에 따른 복호기를 나타낸다.
도 9에서, 좌측의 작은 아이콘들은 엔트로피-부호화된 비트스트림을 나타낼 수 있다.
ED는 엔트로피 복호화를 나타낼 수 있다.
부호기(800) 및 복호기(900)의 동작들 및 상호작용에 대해서 아래에서 더 상세하게 설명된다.
부호기(800)는 입력 이미지를 은닉 표현성분들로 변환할 수 있다. 부호기는 은닉 표현성분들을 양자화함으로써 양자화된 은닉 표현성분들을 생성할 수 있다. 또한, 부호기는 양자화된 은닉 표현성분들에 대해 훈련된 엔트로피 모델을 사용하는 엔트로피-부호화를 수행함으로써 엔트로피-부호화된 은닉 표현성분들을 생성할 수 있고, 엔트로피-부호화된 은닉 표현성분들을 비트스트림으로서 출력할 수 있다.
훈련된 엔트로피 모델은 부호기(800) 및 복호기(900) 간에 공유될 수 있다. 말하자면, 훈련된 엔트로피 모델은 공유된 엔트로피 모델로도 칭해질 수 있다.
반면, 복호기(900)는 비트스트림을 통해 엔트로피-부호화된 은닉 표현성분들을 수신할 수 있다. 복호기(900)는 엔트로피- 부호화된 은닉 표현성분들에 대해 공유된 엔트로피 모델을 사용하는 엔트로피-복호화를 수행함으로써 은닉 표현성분들을 생성할 수 있다. 복호기(900)는 은닉 표현성분들을 사용하여 재구축된 영상을 생성할 수 있다.
부호기(800) 및 복호기(900)에 있어서, 모든 파라미터들은 이미 훈련된 것으로 가정될 수 있다.
부호기-복호기 모델의 구조(structure)는 기본적으로
Figure pat00108
Figure pat00109
를 포함할 수 있다.
Figure pat00110
Figure pat00111
Figure pat00112
로의 변환을 담당할 수 있으며,
Figure pat00113
Figure pat00114
의 변환에 대한 역변환(inverse transform)을 담당할 수 있다.
변환된
Figure pat00115
는 라운딩에 의해
Figure pat00116
로 균일하게 양자화될 수 있다.
여기에서, 기존의 코덱들과는 다르게, 엔트로피 모델들에 기반한 접근방식들의 경우에는, 표현성분들의 스케일들이 훈련에 의해 함께 최적화되기 때문에 양자화 스텝들에 대한 튜닝은 일반적으로 불필요할 수 있다.
Figure pat00117
Figure pat00118
의 사이의 다른 구성요소들은 1) 공유된 엔트로피 모델들 및 2) 기저에 있는(underlying) 문맥 준비(preparation) 프로세스들을 가지고 엔트로피 부호화(또는, 엔트로피 복호화)의 역할을 수행할 수 있다.
보다 구체적으로, 엔트로피 모델은 각
Figure pat00119
의 분포를 개별적으로 추정할 수 있다. 각
Figure pat00120
의 분포의 추정에 있어서,
Figure pat00121
Figure pat00122
는 주어진 문맥들의 2 개의 타입들인
Figure pat00123
Figure pat00124
을 가지고 추정될 수 있다.
이러한 문맥들 중에서,
Figure pat00125
는 추가의 비트 할당을 요구하는 부가 정보일 수 있다.
Figure pat00126
를 운반하기 위해 요구되는 비트-레이트를 감소시키기 위해,
Figure pat00127
로부터 변환된 은닉 벡터
Figure pat00128
Figure pat00129
자신의 엔트로피 모델에 의해 양자화 및 엔트로피-부호화될 수 있다.
반면,
Figure pat00130
는 어떤 추가의 비트 할당 없이
Figure pat00131
로부터 추출될 수 있다.
여기에서,
Figure pat00132
는 엔트로피 부호화 또는 엔트로피 복호화 진행함에 따라 변할 수 있다. 그러나,
Figure pat00133
는 동일한
Figure pat00134
를 처리함에 있어서 언제나 부호기(800) 및 복호기(900)의 양자 내에서 동일할 수 있다.
Figure pat00135
의 파라미터들 및 엔트로피 모델들은 부호기(800) 및 복호기(900)의 양자에 의해 단순하게 공유될 수 있다. 도 8의 점선으로 도시된 것과 같이 훈련이 진행되는 동안 엔트로피 모델들로의 입력들은 노이즈 낀 표현성분들일 수 있다. 노이즈 낀 표현성분들은 엔트로피 모델이 이산 표현성분들의 확률 질량 함수들에 근사하도록 할 수 있다.
도 10는 일 실시예에 따른 자동 부호기의 구현을 나타낸다.
도 10의 전술된 부호기(800) 및 복호기(900)의 구조는 자동 부호기(1000)로서 표현될 수 있다. 말하자면, 실시예에서, 부호기(800) 및 복호기(900)를 위해, 콘볼루션(convolution) 자동 부호기 구조가 사용될 수 있고, 분포 추정자
Figure pat00136
또한 콘볼루션 신경 네트워크들과 함께 구현될 수 있다.
도 10에서, 콘볼루션은 "conv"로 약술되었다. "GDN"은 일반화된 분할 정규화(generalized divisive normalization)를 나타낼 수 있다. "IGDN"은 역 일반화된 분할 정규화(inverse generalized divisive normalization)를 나타낼 수 있다.
도 10에서, leakyReLU는 ReLU의 변형인 함수일 수 있으며, 유출되는(leaky) 정도가 특정되는 함수일 수 있다. leakyReLU 함수에 대해 제1 설정 값 및 제2 설정 값이 설정될 수 있다. leakyReLU 함수는 입력 값이 제1 설정 값의 이하인 경우, 제1 설정 값을 출력하지 않고, 입력 값 및 제2 설정 값을 출력할 수 있다.
또한, 도 10에서 사용된 콘볼루션 레이어에 대한 기보법들(notations)은 다음과 같을 수 있다: 필터들의 개수
Figure pat00137
필터 높이
Figure pat00138
필터 폭 (/ 다운스케일 또는 업스케일의 팩터(factor)).
또한,
Figure pat00139
Figure pat00140
는 업스케일링 및 다운스케일링을 각각 나타낼 수 있다. 업스케일링 및 다운스케일링에 대해서, 트랜스포스된(transposed)된 콘볼루션이 사용될 수 있다.
콘볼루션 신경 네트워크들은 변환 및 재구축 기능들을 구현하기 위해 사용될 수 있다.
도 10에서 도시된
Figure pat00141
,
Figure pat00142
,
Figure pat00143
Figure pat00144
는 전술된 다른 실시예에서의 설명이 적용될 수 있다. 또한,
Figure pat00145
의 말단(end)에서는, 절대(absolute) 연산자(operator)가 아닌 자승(exponentiation) 연산자가 사용될 수 있다.
Figure pat00146
의 분포를 추정하기 위한 구성요소들이 콘볼루션 자동 부호기에 추가되었다.
도 10에서, "Q"는 균일 양자화 (반올림)을 나타낼 수 있다. "EC"는 엔트로피 부호화를 나타낼 수 있다. "ED"는 엔트로피 복호화를 나타낼 수 있다. "
Figure pat00147
"는 분포 추정자를 나타낼 수 있다.
또한, 콘볼루션 자동 부호기는 콘볼루션 레이어들을 사용하여 구현될 수 있다. 콘볼루션 레이어로의 입력은 채널-단위로(channel-wisely) 연쇄된(concatenated)
Figure pat00148
Figure pat00149
일 수 있다. 콘볼루션 레이어는 추정된
Figure pat00150
및 추정된
Figure pat00151
를 결과들로서 출력할 수 있다.
여기에서, 동일한
Figure pat00152
Figure pat00153
가 동일한 공간적 위치에 위치하는 모든
Figure pat00154
들에게 공유될 수 있다.
Figure pat00155
Figure pat00156
를 검출하기 위해 채널들을 걸쳐 모든 공간적으로 인접한 요소들을
Figure pat00157
로부터 추출할 수 있다. 유사하게,
Figure pat00158
Figure pat00159
를 위하여 모든 인접한 알려진 요소들을
Figure pat00160
로부터 추출할 수 있다. 이러한
Figure pat00161
Figure pat00162
에 의한 추출들은 서로 다른 채널들 사이의 남아있는(remaining) 상관관계들(correlations)을 캡춰하는 효과를 가질 수 있다.
Figure pat00163
는 동일한 공간적 위치에서의 1) 모든
Figure pat00164
, 2)
Figure pat00165
의 채널들의 총 개수 및 3)
Figure pat00166
들의 분포들을 단 하나의 단계에서 추출할 수 있으며, 이러한 추출을 통해 추정들의 총 개수가 감소될 수 있다.
나아가
Figure pat00167
의 파라미터들은
Figure pat00168
의 모든 공간적 위치들에 대하여 공유될 수 있다. 이러한 공유를 통해
Figure pat00169
당 단지 하나의 훈련된
Figure pat00170
가 영상들의 임의의 크기를 처리하기 위해 필요할 수 있다.
그러나, 훈련의 경우, 전술된 단순화들에도 불구하고, 율 항을 계산하기 위하 전체의 공간적 위치들로부터의 결과들을 수집하는 것은 크나큰 부담이 될 수 있다. 이러한 부담을 감소시키기 위해, 문맥 적응형 엔트로피 모델에 대한 모든 훈련 단계마다 랜덤의(random) 공간적 포인트들의 특정된 개수(예를 들면, 16)가 대표자들(representatives)로서 지정될 수 있다. 이러한 지정은 율 항의 계산을 용이하게 할 수 있다. 여기에서, 이러한 랜덤 공간적 포인트들은 단지 율 항을 위해서 사용될 수 있다. 반면, 왜곡 항은 여전히 전체의 영상들 상에서 계산될 수 있다.
Figure pat00171
는 3-차원의 배열(array)이기 때문에,
Figure pat00172
에 대한 인덱스 i는 3 개의 인덱스들 k, lm을 포함할 수 있다. k는 수평의 인덱스일 수 있다. l는 수직의 인덱스일 수 있다. m는 채널 인덱스일 수 있다.
현재의 위치가 (k, l, m)일 때,
Figure pat00173
Figure pat00174
Figure pat00175
로서 추출할 수 있다. 또한,
Figure pat00176
Figure pat00177
Figure pat00178
로서 추출할 수 있다. 여기에서,
Figure pat00179
Figure pat00180
의 알려진 영역을 나타낼 수 있다.
Figure pat00181
의 알려지지 않은 영역은 0으로 채워질 수 있다.
Figure pat00182
의 알려지지 않은 영역을 0으로 채움에 따라,
Figure pat00183
의 차원이
Figure pat00184
의 차원과 동일성을 갖도록 유지될 수 있다. 따라서,
Figure pat00185
는 언제나 0으로 채워질 수 있다.
추정 결과들의 차원을 입력으로 유지시키기 위해,
Figure pat00186
Figure pat00187
의 마진의(marginal) 영역들 또한 0으로 세트될 수 있다.
훈련 또는 부호화가 수행될 때,
Figure pat00188
는 단지 단순한 4
Figure pat00189
4
Figure pat00190
Figure pat00191
윈도우들 및 이진(binary) 마스크들을 사용하여 추출될 수 있다. 이러한 추출은 병렬 처리를 가능하게 할 수 있다. 반면, 복호화에서는, 순차적인(sequential) 재구축이 사용될 수 있다.
구현 비용을 감소시키기 위한 다른 구현 테크닉으로서, 하이브리드 접근방식이 사용될 수 있다. 실시예의 엔트로피 모델은 경량(lightweight) 엔트로피 모델과 결합될 수 있다. 경량 엔트로피 모델에 있어서, 표현성분들은 추정된 표준 편차들을 갖는 제로-평균값 가우시안 모델을 따르는 것으로 가정될 수 있다.
이러한 하이브리드 접근방식은 9 개의 구성들(configurations) 내에서 비트-레이트의 내림차순으로 상위 4 개의 경우들에 대하여 활용될 수 있다. 이러한 활용에 있어서, 더 고품질의 압축에 대하여 매우 낮은 공간적 의존성을 갖는 희소(sparse) 표현성분들의 개수가 증가하고, 따라서 직접 스케일 추정이 이러한 추가된 표현성분들에 대해서 충분한 성능을 제공한다는 것이 가정될 수 있다.
구현에 있어서, 은닉 벡터
Figure pat00192
는 2 개의 파트들
Figure pat00193
Figure pat00194
로 분리될 수 있다. 2 개의 상이한 엔트로피 모델들이
Figure pat00195
Figure pat00196
에 대해서 적용될 수 있다.
Figure pat00197
,
Figure pat00198
,
Figure pat00199
Figure pat00200
의 파라미터들은 공유될 수 있고, 전체의 파라미터들은 여전히 함께 훈련될 수 있다.
예를 들면, 5 개의 하위의 구성들에 대하여 파라미터들
Figure pat00201
의 개수는 182로 세트될 수 있다. 파라미터들
Figure pat00202
의 개수는 192로 세트될 수 있다. 약간 더 많은 파라미터들이 더 상위의 구성들에 대해서 사용될 수 있다.
실제의 엔트로피 부호화를 위해, 산술(arithmetic) 부호기가 사용될 수 있다. 산술 부호기는 추정된 모델 파라미터들을 가지고 전술된 것과 같은 비트스트림의 생성 및 재구축을 수행할 수 있다.
앞서 설명된 것과 같이, 엔트로피 모델을 활용하는 ANN-기반 이미지 압축 접근방식에 기반하여, 실시예의 엔트로피 모델들은 문맥들의 2 개의 다른 타입들을 활용하도록 확장될 수 있다.
이러한 문맥들은 엔트로피 모델이 mu 파라미터들 및 표준 편차들을 갖는 일반화된 형태를 갖고서 표현성분들의 분포를 더 정확하게 추정하게 할 수 있다.
활용되는 문맥들은 2 개의 타입들로 나뉠 수 있다. 2 개의 타입들 중 하나는 자유(free) 문맥의 일종일 수 있으며, 부호기(800) 및 복호기(900)의 양자에게 알려진 은닉 변수들의 부분을 포함할 수 있다. 2 개의 타입들 중 다른 하나는 공유될 추가의 비트의 할당을 요하는 문맥일 수 있다. 전자는 다양한 코덱들에서 일반적으로 이용되는 문맥들일 수 있다. 후자는 압축에 도움이 되는 것으로 검증된 것일 수 있다. 실시예에서는, 이러한 문맥들을 활용하는 엔트로피 모델들의 프레임워크가 제공되었다.
추가적으로 실시예의 성능을 향상시키는 다양한 방법들이 고려될 수 있다.
성능 향상을 위한 하나의 방법은 엔트로피 모델의 기반이 되는 분포 모델을 일반화하는 것일 수 있다. 실시예에서는, 이전의 엔트로피 모델들을 일반화함으로써 성능이 향상될 수 있고, 상당히 수용 가능한 결과가 검출될 수 있다. 그러나, 가우시안-기반의 엔트로피 모델들은 명백하게 제한된 표현력(expression power)을 가질 수 있다.
예를 들면, 비-파라미터의(non-parametric) 모델들과 같이 더 정교한(elaborate) 모델들이 실시예의 문맥-적응성(context-adaptivity)과 결합될 경우, 이러한 결합은 실제의 분포들 및 추정 모델들 간의 미스매치를 감소시킴으로써 더 나은 결과들을 제공할 수 있다.
성능 향상을 위한 다른 방법은 문맥들의 레벨들을 향상시키는 것일 수 있다.
실시예는 제한된 인접 영역들 내에서의 낮은 레벨의 표현성분들을 사용할 수 있다. 네트워크들의 충분한 용량과, 문맥들의 더 높은 레벨이 주어진다면, 실시예에 의해 더 정확한 추정이 가능해질 수 있다.
예를 들면, 사람 안면들의 구조들에 관하여, 엔트로피 모델이 상기의 구조들이 일반적으로 2 개의 눈들을 가지고, 2 개의 눈들 간의 대칭이 존재한다는 것을 이해한다면, 엔트로피 모델은 사람 안면의 남은 하나의 눈을 부호화함에 있어서 (하나의 눈의 형상과 위치를 참조하여) 분포들을 더 정확하게 근사할 수 있다.
예를 들면, 생성적인 엔트로피 모델은, 예를 들면 사람 안면들 및 침실들과 같은 특정한 도메인 내에서의 영상들의 분포
Figure pat00203
를 학습할 수 있다. 또한, 인--페인팅(in-painting) 방법들은 보이는 영역들이
Figure pat00204
로 주어졌을 때 조건적인(conditional) 분포
Figure pat00205
를 학습할 수 있다. 이러한 고-레벨 이해들(understandings)이 실시예에 결합될 수 있다.
나아가, 부가 정보를 통해 제공되는 문맥들은 세그맨테이션 맵(segmentation map) 및 압축을 돕는 다른 정보와 같은 고-레벨 정보로 확장될 수 있다. 예를 들면, 세그맨테이션 맵은 표현성분이 속하는 세그먼트 클래스에 따라 표현성분의 분포를 구별적으로(discriminatively) 추정하는 것을 도울 수 있다.
도 11은 일 예에 따른 더 높은 비트-레이트 환경들을 위한 하이브리드 네트워크의 구조를 나타낸다.
도 11에서 사용되는 기보법들은 이전의 실시예의 기보법들과 동일할 수 있다.
전술된 실시예에서는
Figure pat00206
의 근사 분포 모델인 p(
Figure pat00207
)의 모델 파라미터가 직접적으로 학습될 수 있다. 예를 들면,
Figure pat00208
의 개별 표현성분 별 분포인 p(
Figure pat00209
)가 학습 가능한 모델로 가정될 수 있고, 각 표현성분
Figure pat00210
별로 모델 파라미터가 직접적으로 학습될 수 있다. 일 예로, 가우시안 모델의 평균 및 분산이 학습 파라미터로서 이용될 수 있다. 이러한 방식은 학습 이후 모델 파라미터가 고정되고, 입력 영상의 특성이 반영되지 않을 수 있다.
실시예에서는, 입력 영상에 따라,
Figure pat00211
의 개별 표현성분 별 분포인 p(
Figure pat00212
)가 예측될 수 있다. 예를 들면,
Figure pat00213
를 구성하는 표현성분들의 순차적인 엔트로피 코딩 환경을 고려하는 문맥-적응적 모델 예측 방식이 이용될 수 있다.
도 11에서, 제1 EC/ED는 전술된 실시예에서의 문맥-적응적 엔트로피 모델을 사용하는 엔트로피 부호화 및 엔트로피 복호화를 나타낼 수 있다. 제로-평균값 가우시안 모델을 따르는 제2 EC/ED는 경량 엔트로피 모델을 사용하는 엔트로피 부호화 및 엔트로피 복호화를 나타낼 수 있다.
하이브리드 네트워크(1100)는 전술된 하이브리드 접근방식을 따르는 ANN일 수 있다.
하이브리드 네트워크(1100)에서, 은닉 벡터
Figure pat00214
는 2 개의 파트들 제1 부분 은닉 표현성분
Figure pat00215
및 제2 부분 은닉 표현성분
Figure pat00216
로 분할될 수 있고,
Figure pat00217
는 제1 양자화된 부분 은닉 표현성분
Figure pat00218
로 양자화될 수 있고,
Figure pat00219
는 제2 양자화된 부분 은닉 표현성분
Figure pat00220
로 양자화될 수 있다.
분할의 결과들 중 하나인
Figure pat00221
는 실시예의 문맥-적응적 엔트로피 모델을 사용하여 부호화될 수 있다. 반면, 분할의 결과들 중 다른 하나인
Figure pat00222
는 표준 추정을 사용하는 더 단순한 경량 엔트로피 모델을 사용하여 부호화될 수 있다.
모든 연쇄(concatenation) 및 분할(split) 연산자들은 채널-단위 방식(channel-wise manner)으로 수행될 수 있다.
고-픽셀 당 비트들(Bits Per Pixel; BPP) 구성들에 대한 구현 비용을 감소시키기 위해 경량 엔트로피 모델이 문맥-적응적 엔트로피 모델에 결합될 수 있다.
경량 엔트로피 모델은, 양자화된 표현성분들의 PMF 근사들이 표준 균일 분포와 함께 제로-평균값 가우시안 분포들을 따른다는 가정 하에, 스케일 (말하자면, 표준 편차) 추정을 활용할 수 있다.
은기 벡터
Figure pat00223
는 채널-단위로 2 개의 파트들
Figure pat00224
Figure pat00225
로 분할될 수 있다.
Figure pat00226
Figure pat00227
채널들을 가질 수 있다.
Figure pat00228
Figure pat00229
채널들을 가질 수 있다. 다음으로,
Figure pat00230
Figure pat00231
는 양자화될 수 있다.
Figure pat00232
가 양자화됨에 따라
Figure pat00233
가 생성될 수 있다.
Figure pat00234
가 양자화됨에 따라
Figure pat00235
가 생성될 수 있다.
Figure pat00236
는 문맥-적응적 엔트로피 모델로 엔트로피 부호화될 수 있다. 반면,
Figure pat00237
는 경량 엔트로피 모델로 엔트로피 부호화될 수 있다.
Figure pat00238
의 표준 편차들은
Figure pat00239
Figure pat00240
를 통해 추정될 수 있다.
문맥-적응적 엔트로피 모델은
Figure pat00241
의 결과들을 추정자
Figure pat00242
로의 입력 소스로서 사용할 수 있다. 이러한 문맥-적응적 엔트로피 모델과는 달리, 경량 엔트로피 모델은
Figure pat00243
로부터 직접적으로 추정된 표준 편차들을 검출할 수 있다. 여기에서,
Figure pat00244
Figure pat00245
Figure pat00246
의 연쇄를 입력으로서 취할 수 있다.
Figure pat00247
Figure pat00248
와 함께
Figure pat00249
를 동시에 생성할 수 있다.
아래의 수학식 6은 총 손실 함수를 나타낼 수 있다.
Figure pat00250
총 손실 함수 또한 율 항 및 왜곡 항을 포함할 수 있다. 율 항은
Figure pat00251
,
Figure pat00252
Figure pat00253
의 3 개로 나뉠 수 있다. 말하자면, 율 항은
Figure pat00254
,
Figure pat00255
Figure pat00256
를 포함할 수 있다. 왜곡 항은 전술된 실시예에서의 왜곡 항과 동일할 수 있다. 단,
Figure pat00257
Figure pat00258
Figure pat00259
의 채널-단위로 연쇄된 표현성분일 수 있다.
Figure pat00260
Figure pat00261
,
Figure pat00262
Figure pat00263
의 노이즈 낀 표현성분은 표준 균일 분포를 따를 수 있다.
Figure pat00264
의 평균값은
Figure pat00265
일 수 있다.
Figure pat00266
의 평균값은
Figure pat00267
일 수 있다.
Figure pat00268
의 평균값은
Figure pat00269
일 수 있다.
Figure pat00270
Figure pat00271
Figure pat00272
로부터의 채널-단위로 분할된 표현성분들일 수 있다.
Figure pat00273
는 변환
Figure pat00274
의 결과일 수 있다.
Figure pat00275
Figure pat00276
채널들을 가질 수 있다.
Figure pat00277
Figure pat00278
채널들을 가질 수 있다.
Figure pat00279
Figure pat00280
에 대한 율 항은 전술된 수학식 4에서의 모델과 동일한 모델일 수 있다.
Figure pat00281
Figure pat00282
에 대한 모델에는 기여하지 않을 수 있고,
Figure pat00283
에 대한 모델에는 기여할 수 있다.
Figure pat00284
Figure pat00285
에 대한 율 항에서, 노이즈 낀 표현성분들은 단지 학습을 위해서만 엔트로피 모델들의 입력으로 사용될 수 있다. 말하자면,
Figure pat00286
에 대한 율 항에서, 노이즈 낀 표현성분들은 엔트로피 모델들의 조건들에 대해서는 사용되지 않을 수 있다.
Figure pat00287
의 엔트로피 모델은 전술된 수학식 5에서의 엔트로피 모델과 동일할 수 있다.
구현에 있어서, 비트-레이트의 내림차순으로 상위 4 개의 구성들에 대하여 하이브리드 구조가 사용될 수 있다.
예를 들면, 상위 2 개의 구성들에 대해서,
Figure pat00288
은 400으로 세트될 수 있고,
Figure pat00289
는 192로 세트될 수 있고,
Figure pat00290
는 408로 세트될 수 있다.
예를 들면, 다음의 2 개의 구성들에 대해서,
Figure pat00291
은 320으로 세트될 수 있고,
Figure pat00292
는 192로 세트될 수 있고,
Figure pat00293
는 228로 세트될 수 있다.
도 12는 일 실시예에 따른 부호화 장치의 구조도이다.
부호화 장치(1200)는 버스(1290)를 통하여 서로 통신하는 처리부(1210), 메모리(1230), 사용자 인터페이스(User Interface; UI) 입력 디바이스(1250), UI 출력 디바이스(1260) 및 저장소(storage)(1240)를 포함할 수 있다. 또한, 부호화 장치(1200)는 네트워크(1299)에 연결되는 통신부(1220)를 더 포함할 수 있다.
처리부(1210)는 중앙 처리 장치(Central Processing Unit; CPU), 메모리(1230) 또는 저장소(1240)에 저장된 프로세싱(processing) 명령어(instruction)들을 실행하는 반도체 장치일 수 있다. 처리부(1210)는 적어도 하나의 하드웨어 프로세서일 수 있다.
처리부(1210)는 장치(1200)로 입력되거나, 장치(1200)에서 출력되거나, 장치(1200)의 내부에서 사용되는 신호, 데이터 또는 정보의 생성 및 처리를 수행할 수 있고, 신호, 데이터 또는 정보에 관련된 검사, 비교 및 판단 등을 수행할 수 있다. 말하자면, 실시예에서 데이터 또는 정보의 생성 및 처리와, 데이터 또는 정보에 관련된 검사, 비교 및 판단은 처리부(1210)에 의해 수행될 수 있다.
처리부(1210)를 구성하는 요소들의 적어도 일부는 프로그램 모듈들일 수 있으며, 외부의 장치 또는 시스템과 통신할 수 있다. 프로그램 모듈들은 운영 체제, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 부호화 장치(1200)에 포함될 수 있다.
프로그램 모듈들은 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈 중 적어도 일부는 부호화 장치(1200)와 통신 가능한 원격 기억 장치에 저장될 수도 있다.
프로그램 모듈들은 일 실시예에 따른 기능 또는 동작을 수행하거나, 일 실시예에 따른 추상 데이터 유형을 구현하는 루틴(routine), 서브루틴(subroutine), 프로그램, 오브젝트(object), 컴퍼넌트(component) 및 데이터 구조(data structure) 등을 포괄할 수 있지만, 이에 제한되지는 않는다.
프로그램 모듈들은 부호화 장치(1200)의 적어도 하나의 프로세서(processor)에 의해 수행되는 명령어(instruction) 또는 코드(code)로 구성될 수 있다.
처리부(1210)는 전술된 부호화기(800)에 대응할 수 있다.
저장부는 메모리(1230) 및/또는 저장소(1240)를 나타낼 수 있다. 메모리(1230) 및 저장소(1240)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들면, 메모리(1230)는 롬(ROM)(1231) 및 램(RAM)(1232) 중 적어도 하나를 포함할 수 있다.
저장부는 부호화 장치(1200)의 동작을 위해 사용되는 데이터 또는 정보를 저장할 수 있다. 실시예에서, 부호화 장치(1200)가 갖는 데이터 또는 정보는 저장부 내에 저장될 수 있다.
부호화 장치(1200)는 컴퓨터에 의해 독출(read)될 수 있는 기록 매체를 포함하는 컴퓨터 시스템에서 구현될 수 있다.
기록 매체는 부호화 장치(1200)가 동작하기 위해 요구되는 적어도 하나의 모듈을 저장할 수 있다. 메모리(1230)는 적어도 하나의 모듈을 저장할 수 있고, 적어도 하나의 모듈이 처리부(1210)에 의하여 실행되도록 구성될 수 있다.
부호화 장치(1200)의 데이터 또는 정보의 통신과 관련된 기능은 통신부(1220)를 통해 수행될 수 있다.
네트워크(1299)는 부호화 장치(1200) 및 복호화 장치(1300) 간의 통신을 제공할 수 있다.
도 13은 일 실시예에 따른 복호화 장치의 구조도이다.
복호화 장치(1300)는 버스(1390)를 통하여 서로 통신하는 처리부(1310), 메모리(1330), 사용자 인터페이스(User Interface; UI) 입력 디바이스(1350), UI 출력 디바이스(1360) 및 저장소(storage)(1340)를 포함할 수 있다. 또한, 복호화 장치(1300)는 네트워크(1399)에 연결되는 통신부(1320)를 더 포함할 수 있다.
처리부(1310)는 중앙 처리 장치(Central Processing Unit; CPU), 메모리(1330) 또는 저장소(1340)에 저장된 프로세싱(processing) 명령어(instruction)들을 실행하는 반도체 장치일 수 있다. 처리부(1310)는 적어도 하나의 하드웨어 프로세서일 수 있다.
처리부(1310)는 장치(1300)로 입력되거나, 장치(1300)에서 출력되거나, 장치(1300)의 내부에서 사용되는 신호, 데이터 또는 정보의 생성 및 처리를 수행할 수 있고, 신호, 데이터 또는 정보에 관련된 검사, 비교 및 판단 등을 수행할 수 있다. 말하자면, 실시예에서 데이터 또는 정보의 생성 및 처리와, 데이터 또는 정보에 관련된 검사, 비교 및 판단은 처리부(1310)에 의해 수행될 수 있다.
처리부(1310)를 구성하는 요소들의 적어도 일부는 프로그램 모듈들일 수 있으며, 외부의 장치 또는 시스템과 통신할 수 있다. 프로그램 모듈들은 운영 체제, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 복호화 장치(1300)에 포함될 수 있다.
프로그램 모듈들은 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈 중 적어도 일부는 복호화 장치(1300)와 통신 가능한 원격 기억 장치에 저장될 수도 있다.
프로그램 모듈들은 일 실시예에 따른 기능 또는 동작을 수행하거나, 일 실시예에 따른 추상 데이터 유형을 구현하는 루틴(routine), 서브루틴(subroutine), 프로그램, 오브젝트(object), 컴퍼넌트(component) 및 데이터 구조(data structure) 등을 포괄할 수 있지만, 이에 제한되지는 않는다.
프로그램 모듈들은 복호화 장치(1300)의 적어도 하나의 프로세서(processor)에 의해 수행되는 명령어(instruction) 또는 코드(code)로 구성될 수 있다.
처리부(1310)는 전술된 복호화기(900)에 대응할 수 있다.
저장부는 메모리(1330) 및/또는 저장소(1340)를 나타낼 수 있다. 메모리(1330) 및 저장소(1340)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들면, 메모리(1330)는 롬(ROM)(1331) 및 램(RAM)(1332) 중 적어도 하나를 포함할 수 있다.
저장부는 복호화 장치(1300)의 동작을 위해 사용되는 데이터 또는 정보를 저장할 수 있다. 실시예에서, 복호화 장치(1300)가 갖는 데이터 또는 정보는 저장부 내에 저장될 수 있다.
복호화 장치(1300)는 컴퓨터에 의해 독출(read)될 수 있는 기록 매체를 포함하는 컴퓨터 시스템에서 구현될 수 있다.
기록 매체는 복호화 장치(1300)가 동작하기 위해 요구되는 적어도 하나의 모듈을 저장할 수 있다. 메모리(1330)는 적어도 하나의 모듈을 저장할 수 있고, 적어도 하나의 모듈이 처리부(1310)에 의하여 실행되도록 구성될 수 있다.
복호화 장치(1300)의 데이터 또는 정보의 통신과 관련된 기능은 통신부(1320)를 통해 수행될 수 있다.
네트워크(1399)는 부호화 장치(1200) 및 복호화 장치(1300) 간의 통신을 제공할 수 있다.
픽셀-공간 예측을 이용하는 종단 간 압축
전술된 문맥 적응적 확률 예측 방식에서는, 이미 재구축된 주변 은닉 벡터 성분들을 이용하여 현재의 은닉 벡터 성분의 확률이 예측될 수 있다. 그러나 이러한 은닉 벡터는 부호화기(800)에 의해 채널들 간의 디코릴레이션(decorrelation)이 된 형태를 갖기 때문에, 은닉 벡터에 대한 확률 예측이 어려울 수 있다. 아래의 실시예에서는 이러한 문제의 해결을 위해 픽셀-공간 예측을 이용하는 종단 간 압축이 설명된다.
전술된 문맥-적응형 엔트로피 모델이 이미 재구축된 은닉벡터 성분들을 문맥으로서 이용하는 데 반해, 실시예에서는 이미 재구축된 은닉 벡터 성분이 이미지의 형태로 재구축되고, 재구축된 이미지를 이용하여 예측 이미지가 생성되며, 예측된 이미지가 다시 은닉 벡터의 형태로 변환될 수 있다. 이러한 변환을 통해 추가적으로 획득된 은닉 벡터가 문맥으로서 활용될 수 있다. 이러한 활용을 통해 더 우수한 성능을 갖는 ANN에 기반하는 부호화/복호화가 제공될 수 있다.
종단 간 최적화 이미지 압축의 주요 요소들 중 하나는 은닉 표현성분들을 위한 훈련가능한 엔트로피 모델일 수 있다.
은닉 표현성분들의 실제의 분포들은 분석적으로는(analytically) 알 수 없으므로, 엔트로피 모델들은 은닉 표현성분들의 분포들을 근사함으로써 은닉 표현성분들을 부호화하기 위한 추정된 비트들을 계산할 수 있다.
입력 이미지
Figure pat00294
가 은닉 벡터
Figure pat00295
로 변환(transform)되고, 은닉 벡터
Figure pat00296
가 로 양자화된 은닉 벡터
Figure pat00297
로 균일하게 양자화될 때, 단순한 엔트로피 모델은
Figure pat00298
로 표현될 수 있다.
Figure pat00299
Figure pat00300
의 실제의 (한계(marginal)) 분포를 나타낼 수 있다. 엔트로피 모델이 학습된 근사 함수 p(
Figure pat00301
)를 이용할 때, 엔트로피 모델을 통해 계산된 엔트로피는 교차(cross) 엔트로피일 수 있으며,
Figure pat00302
을 사용하는 교차(cross) 엔트로피를 통해 계산된 율 추정(rate estimation)은 아래의 수학식 10과 같이 표현될 수 있다.
Figure pat00303
전술된 실시예에서는 문맥-적응적 확률 예측이 수행될 수 있다.
즉,
Figure pat00304
는 현재의 은닉 표현성분
Figure pat00305
을 엔트로피 코딩함에 있어서, 현재의 표현성분
Figure pat00306
의 확률 분포를 예측하는 예측기
Figure pat00307
가 이용하는 주변의 은닉 표현성분들의 집합일 수 있다.
예를 들면, 예측기
Figure pat00308
는 이러한 은닉 벡터 상의 주변 표현성분을
Figure pat00309
를 이용하여 현재의 표현성분
Figure pat00310
의 분포 파라미터를 예측할 수 있다. 예를 들면, 은닉 표현성분
Figure pat00311
의 분포가 가우시안 분포로 가정되는 경우,
Figure pat00312
Figure pat00313
가 예측될 수 있다.
말하자면, 문맥-적응형 부호화/복호화에 있어서, 은닉 벡터
Figure pat00314
를 구성하는 은닉 표현성분들을 순차적으로 엔트로피 부호화/복호화하며, 각 은닉 표현성분
Figure pat00315
을 처리(즉, 부호화/복호화)하기 위해 이미 처리된 영역이 문맥
Figure pat00316
으로서 활용될 수 있다. 후술될 도 14 및 도 15는 이러한 부호화 방법 및 복호화 방법을 각각 나타낼 수 있다.
도 14는 일 실시예에 따른 부호화 방법의 흐름도이다.
단계(1410)에서, 부호화 장치(1200)의 처리부(1210)는 신경망에 기반하여 영상으로부터 특징을 추출할 수 있다.
특징은 은닉 벡터를 의미할 수 있다. 은닉 벡터는 은닉 표현 성분들로 구성될 수 있다.
단계(1420)에서, 처리부(1210)는 은닉 벡터의 은닉 표현성분에 대한 확률 예측을 수행할 수 있다.
단계(1430)에서, 처리부(1210)는 은닉 표현성분에 대한 확률 예측에 기반하여 영상에 대한 엔트로피 코딩을 수행할 수 있다.
단계(1440)에서, 처리부(1210)는 엔트로피 코딩의 결과를 포함하는 부호화된 비트스트림을 생성할 수 있다.
통신부(1220)는 비트스트림을 복호화 장치(1300)로 전송할 수 있다.
도 15는 일 실시예에 따른 복호화 방법의 흐름도이다.
단계(1510)에서, 복호화 장치(1300)의 처리부(1310)는 비트스트림을 획득할 수 있다.
통신부(1320)는 부호화 장치(1200)로부터 부호화된 비트스트림을 획득할 수 있다.
단계(1520)에서, 처리부(1310)는 은닉 표현성분에 대한 확률 예측을 수행할 수 있다.
단계(1530)에서, 처리부(1310)는 은닉 표현성분에 대한 확률 예측에 기반하여 부호화된 비트스트림에 대한 엔트로피 복호화를 수행할 수 있다.
단계(1540)는 엔트로피 복호화의 결과를 사용하는 신경망에 기반하는 영상에 대한 재구축을 수행할 수 있다.
도 16은 일 예에 따른 원본 영상을 나타낸다.
도 17은 일 예에 따른 원본 영상에 대한 변환된 은닉 벡터의 성분을 나타낸다.
전술된 실시예에 따르면, 은닉 벡터
Figure pat00317
는 부호기 네트워크(encoder network)에 의해 각 채널 성분 별로 연관성(correlation)이 최소화되도록 분해(decorrelation)된 표현 형태일 수 있다. 따라서, 기존의 일반적인 콘볼루션 신경망(Convolution Neural Network; CNN) 또는 완전 콘볼루션의 네트워크(Fully Convolutional Network; FCN)을 통한 분석 성능이 저하될 수 있다.
도 17의 좌측에 도시된 변환된 은닉 벡터의 성분은 공간적으로 높지 않은 성분 간 연관성을 가질 수 있다. 반면, 이미지 스페이스를 통해 재구축된 영상이 생성될 경우, 공간적인 연관성이 상당히 높을 수 있으며, 은닉 벡터 공간에서의 확률 예측에 비해 분석 및 예측에 있어서 높은 성능을 보일 수 있다.
보다 정교한
Figure pat00318
의 분석 예측을 위해, 문맥으로 주어진 주변의 은닉 표현성분들이 복호기 네트워크를 통해 이미지 공간으로 복원된 후, 이미지 공간의 예측이 수행될 수 있다. 이미지 공간의 예측을 통해 예측된 이미지가 생성될 수 있다.
예측된 이미지는 다시 부호기 네트워크를 통해 은닉 벡터의 형태로 변환될 수 있다. 부호기 네트워크는 예측된 이미지를 사용하여 변환된 은닉 벡터를 생성할 수 있다. 변환된 은닉 벡터는
Figure pat00319
의 확률 예측을 위한 문맥으로서 이용될 수 있다.
말하자면, 은닉 표현성분에 대한 확률 예측은 1) 맥으로 주어진 주변의 은닉 표현성분들이 이미지 공간으로의 복원, 2) 이미지 공간의 예측을 통해 생성된 예측된 이미지 및/또는 3) 예측된 이미지에 대한 변환을 통해 생성된 변환된 은닉 벡터에 기반하여 수행될 수 있다.
도 18은 일 예에 따른 주변의 표현 성분의 문맥을 사용하는 확률 예측 과정을 나타낸다.
도 19는 일 예에 따른 이미지 공간의 예측을 사용하는 확률 예측 과정을 나타낸다.
주변 성분 문맥은 문맥으로 주어진 주변의 은닉 표현성분을 의미할 수 있다.
도 19에서 도시된 것과 같이, 실시예의 확률 예측의 과정은, 1) 문맥으로서 주어진 은닉 표현성분들의 집합을 이미지 형태로 복원하는 것과, 2) 복원된 이미지 공간의 예측 과정을 수행하는 것과, 3) 예측된 이미지를 다시 부호화 네트워크를 통해 은닉 벡터 공간(도메인)으로 변환하는 것과, 4) 변환된 은닉 벡터 공간의 정보를 새로운 문맥으로서 확률 분포 예측에 이용하는 것을 포함할 수 있다.
복호기 네트워크는 은닉 벡터 공간의 문맥을 이미지 공간으로 재구축할 수 있다. 부호기 네트워크는 예측된 이미지를 은닉 벡터 공간으로 재변환할 수 있다.
이때, 확률 분포의 예측을 위해 이용되는 문맥은, 전술된 변환된 은닉 벡터 외에도, 전술된 방식들에서 이용된 문맥 및 기타 다른 방식에 의해 획득된 문맥이 함께 이용될 수 있다.
복수의 문맥들이 함께 이용될 때, 복수의 문맥들을 생성하는 복호기 네트워크들 및 부호기 네트워크들은 특정 정보를 공유할 수 있다. 예를 들면, 특정 정보는 가중치 파라미터(weight parameter)일 수 있다.
복호기 네트워크 및 부호기 네트워크는 도 18에 도시된 전술된 실시예에서의 양자화된 은닉 벡터
Figure pat00320
Figure pat00321
로 변환하는 복호기 네트워크 및 입력 영상
Figure pat00322
Figure pat00323
로 변환하는 부호기 네트워크와 가중치 파라미터를 공유할 수 있다.
도 20은 일 예에 따른 이미지 공간의 예측 방법을 나타낸다.
도 20에서는 이미지 공간에 대한 예측 방법이 구체적으로 도시되었다.
주변 성분 문맥은 복호기 네트워크를 통해 이미지 공간의 정보로 복원될 수 있다. 주변 성분 문맥은 현재 부호화의 대상인 위치의 표현성분들은 가지고 있지 않기 때문에, 복원된 이미지에서도 해당하는 표현성분들에 대응하는 영역의 정보는 유실될 수 있다.
이후, 이미지 인페인팅(Inpainting) 기술 등의 방법을 이용하여 이미지 공간에 대한 예측을 통해 이미지 공간의 예측 데이터가 생성될 수 있다. 이미지 공간에 대한 예측을 위해, 1) 기존의 학습된 기술이 이용될 수 있고, 2) 별도의 학습을 통해 생성된 모델이 이용될 수 있고, 또는, 3) 전체의 압축 네트워크의 종단 간(end-to-end) 학습을 통한 훈련이 이루어질 수 있다.
이미지 공간에 대한 예측을 통해 획득된 이미지는, 부호기 네트워크를 이용하여 은닉 벡터 공간의 데이터로 변환될 수 있다.
변환된 은닉 벡터 공간의 데이터는 확률 예측을 위한 새로운 문맥으로서 이용될 수 있으며, 기타 다른 문맥 정보와 함께 확률 예측에 활용될 수 있다.
도 21은 일 예에 따른 시간적 중복성 제거를 위한 주변의 표현 성분의 문맥을 사용하는 확률 예측 과정을 나타낸다.
도 22는 일 예에 따른 시간적 중복성 제거를 위한 이미지 공간의 예측을 사용하는 확률 예측 과정을 나타낸다.
실시예는, 비디오 압축에서의 시간적인 중복성을 없애기 위해 이용될 수 있다.
복수의 비디오 프레임들을 압축하는 상황에서, 프레임 t-1 및 프레임 t+1는 이미 처리(즉, 엔트로피 부호화/복호화)가 완료된 프레임들일 수 있다.
프레임 yt-1 및 프레임 yt+1은 참조 프레임들일 수 있다 참조 프레임은 현재의 처리의 대상인 대상 프레임 t에 대한 처리를 위해 참조되는 프레임을 나타낼 수 있다.
대상 프레임 t를 처리하기 위해, 참조 프레임의 은닉 벡터의 은닉 표현성분들이 문맥에 활용될 수 있다.
C ( t-1 ) C ( t+1 )는 참조 프레임의 은닉 벡터의 표현성분 중, 현재의 공간적 위치의 주변의 표현성분들의 집합일 수 있다.
이러한 집합은 이미지 공간으로 복원될 수 있고, 대상 프레임의 예측을 위해 이용될 수 있다.
이후, 예측된 대상 프레임은 다시 부호기 네트워크를 통해 은닉 벡터 공간으로 변환될 수 있다. 변환에 의해 생성된 정보는 현재의 은닉 벡터의 은닉 표현성분에 대한 확률 예측을 위한 새로운 문맥으로서 이용될 수 있다.
여기에서, 참조 프레임 인덱스인 t-1 및 t+1은 하나의 예이며, 키 프레임 구조 및 대상 프레임의 위치에 따라 다른 참조 프레임 인덱스가 사용될 수 있다.
이미지 공간의 예측을 위해 프레임 보간 등 프레임 예측을 위한 다른 기술들이 활용될 수 있다.
이러한 문맥 추출 과정을 통해 획득된 문맥은, 다른 방식으로 획득된 다른 문맥과 함께 현재의 은닉 벡터의 은닉 표현성분의 확률 분포에 대한 예측에 이용될 수 있다. 여기에서, 다른 문맥은 도 20을 참조하여 설명된 것과 같이, 대상 프레임 내의 은닉 벡터의 은닉 표현성분들로부터 획득된 문맥일 수 있다.
도 23은 일 예에 따른 침조 프레임의 은닉 벡터에 대한 전체의 정보를 이용하는 확률 예측 과정을 나타낸다.
도 24는 일 예에 따른 침조 프레임의 은닉 벡터에 대한 전체의 정보를 이용하는 확률 예측 과정을 나타낸다.
비디오 압축의 경우, 현재 부호화의 대상인 은닉 표현성분의 위치를 중심으로 참조 프레임의 은닉 벡터의 은닉 표현성분들 C ( t-1 ) C ( t+1 )을 매 위치마다 추출하는 대신, 참조 프레임의 은닉 벡터에 대한 전체의 정보가 이용될 수 있다.
참조 프레임들(프레임 yt-1 및 프레임 yt+1)을 이용하여 참조 프레임의 은닉 벡터에 대한 전체의 정보가 이미지 공간으로 복원될 수 있고, 대상 프레임 전체에 대한 예측이 수행될 수 있다. 예측된 대상 프레임은 부호기 네트워크를 통해 은닉 벡터 공간으로 변환될 수 있다. 별도의 추가된 단계를 통해 변환된 은닉 벡터 공간의 데이터 중 현재의 위치의 주변의 정보가 문맥으로 추출될 수 있다.
이미지 공간의 예측을 위해 프레임 보간 등 프레임 예측을 위한 다른 기술들이 활용될 수 있다.
이러한 문맥 추출 과정을 통해 획득된 문맥은, 다른 방식으로 획득된 다른 문맥과 함께 현재의 은닉 벡터의 은닉 표현성분의 확률 분포에 대한 예측에 이용될 수 있다. 여기에서, 다른 문맥은 도 20을 참조하여 설명된 것과 같이, 대상 프레임 내의 은닉 벡터의 은닉 표현성분들로부터 획득된 문맥일 수 있다.
상기의 실시예들은 부호화 장치(1600) 및 복호화 장치(1700)에서 동일한 방법 및/또는 상응하는 방법으로 수행될 수 있다. 또한, 영상의 부호화 및/또는 복호화에 있어서 상기의 실시예들 중 하나 이상의 조합이 사용될 수 있다.
상기의 실시예들이 적용되는 순서는 부호화 장치(1600) 및 복호화 장치(1700)에서 서로 상이할 수 있다. 또는, 상기의 실시예들이 적용되는 순서는 부호화 장치(1600) 및 복호화 장치(1700)에서 (적어도 부분적으로) 동일할 수 있다.
상기 실시예를 적용하는 순서는 부호화 장치(1600) 및 복호화 장치(1700) 에서 상이할 수 있고, 상기 실시예를 적용하는 순서는 부호화 장치(1600) 및 복호화 장치(1700) 에서 동일할 수 있다.
상기의 실시예들은 루마 신호 및 크로마 신호의 각각에 대하여 수행될 수 있다. 루마 신호 및 크로마 신호에 대하여 상기의 실시예들이 동일하게 수행할 수 있다.
본 발명의 상기 실시예들이 적용되는 블록의 형태는 정방형(square) 형태 또는 비정방형(non-square) 형태를 가질 수 있다.
본 발명의 상기 실시예들은 대상 블록, 코딩 블록, 예측 블록, 변환 블록, 블록, 현재 블록, 코딩 유닛, 예측 유닛, 변환 유닛, 유닛 및 현재 유닛 중 적어도 하나의 크기에 따라 적용될 수 있다. 여기서의 크기는 상기 실시예들이 적용되기 위해 최소 크기 및/또는 최대 크기로 정의될 수도 있고, 상기 실시예가 적용되는 고정 크기로 정의될 수도 있다. 또한, 상기 실시예들에 있어서, 제1 크기에 대해서는 제1의 실시예가 적용될 수도 있고, 제2 크기에 대해서는 제2의 실시예가 적용될 수도 있다. 즉, 상시 실시예들은 크기에 따라 복합적으로 적용될 수 있다. 또한, 본 발명의 상기 실시예들은 최소 크기 이상 및 최대 크기 이하일 경우에만 적용될 수도 있다. 즉, 상기 실시예들을 블록 크기가 일정한 범위 내에 포함될 경우에만 적용될 수도 있다.
또한, 본 발명의 상기 실시예들은 최소 크기의 이상인 조건 및 최대 크기의 이하인 조건이 충족되는 경우에만 적용될 수 있으며, 여기서 최소 크기와 최대 크기는 각각 실시예에서 전술된 블록들 및 실시예에서 전술된 유닛들 중 하나의 크기일 수 있다. 즉, 최소 크기의 대상이 되는 블록과 최대 크기의 대상이 되는 블록이 서로 다를 수 있다. 예를 들어, 본 발명의 상기 실시예들은 대상 블록의 크기가 블록의 최소 크기 이상이고 블록의 최대 크기 이하일 경우에만 적용될 수 있다.
예를 들어, 대상 블록의 크기가 8x8 이상일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 16x16 이상일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 32x32 이상일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 64x64 이상일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 128x128 이상일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 4x4일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 8x8 이하일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 16x16 이하일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 8x8 이상이고 16x16 이하일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 블록의 크기가 16x16 이상이고 64x64 이하일 경우에만 상기 실시예들이 적용될 수 있다.
본 발명의 상기 실시예들은 시간적 계층(temporal layer)에 따라 적용될 수 있다. 상기 실시예들이 적용 가능한 시간적 계층을 식별하기 위해 별도의 식별자(identifier)가 시그널링될 수 있고, 해당 식별자에 의해 특정되는 시간적 계층에 대해서 상기 실시예들이 적용될 수 있다. 여기서의 식별자는 상기 실시예가 적용 가능한 최하위 계층 및/또는 최상위 계층으로서 정의될 수도 있고, 상기 실시예가 적용되는 특정 계층을 지시하도록 정의될 수도 있다. 또한, 상기 실시예가 적용되는 고정된 시간적 계층이 정의될 수도 있다.
예를 들어, 대상 영상의 시간적 계층이 최하위 계층일 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 영상의 시간적 계층 식별자가 1 이상인 경우에만 상기 실시예들이 적용될 수 있다. 예를 들어, 대상 영상의 시간적 계층이 최상위 계층일 경우에만 상기 실시예들이 적용될 수 있다.
본 발명의 상기 실시예들이 적용되는 슬라이스 타입(slice type) 또는 타일 그룹 타입이 정의될 수 있고, 해당 슬라이스 타입 또는 타일 그룹 타입에 따라 본 발명의 상기 실시예들이 적용될 수 있다.
상술된 실시예들에서, 특정된 대상에 특정된 처리를 적용함에 있어서, 특정된 조건이 요구될 수 있으며, 특정된 결정 하에 상기의 특정된 처리가 처리되는 것으로 설명된 경우, 특정된 코딩 파라미터에 기반하여 특정된 조건이 충족되는지 여부가 결정되거나, 특정된 코딩 파라미터에 기반하여 특정된 결정이 이루어지는 것으로 설명되었으면, 상기의 특정된 코딩 파라미터는 다른 코딩 파라미터로 대체될 수 있는 것으로 해석될 수 있다. 말하자면, 특정된 조건 또는 특정된 결정에 영향을 미치는 코딩 파라미터는 단지 예시적인 것으로 간주될 수 있으며, 명시된 코딩 파라미터 외에도 하나 이상의 다른 코딩 파라미터들의 결합이 상기의 명시된 코딩 파라미터의 역할을 수행하는 것으로 이해될 수 있다.
상술한 실시예들에서, 방법들은 일련의 단계 또는 유닛으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
상술한 실시예들은 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합이 기술될 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 명시적으로 기술된 조합 외에도 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체는 본 발명에 따른 실시예들에서 사용되는 정보를 포함할 수 있다. 예를 들면, 컴퓨터 판독 가능한 기록 매체는 비트스트림을 포함할 수 있고, 비트스트림은 본 발명에 따른 실시예들에서 설명된 정보를 포함할 수 있다.
컴퓨터 판독 가능한 기록 매체는 비-일시적 컴퓨터 판독 가능한 매체(non-transitory computer-readable medium)를 포함할 수 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (1)

  1. 은닉 벡터의 은닉 표현성분에 대한 확률 예측을 수행하는 단계; 및
    상기 확률 예측에 기반하여 영상에 대한 엔트로피 코딩을 수행하는 단계
    를 포함하고,
    상기 확률 예측은 문맥으로 주어진 주변의 은닉 표현성분들이 이미지 공간으로의 복원에 기반하여 수행되는, 부호화 방법.
KR1020200169814A 2019-12-05 2020-12-07 픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체 KR20210070944A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190160831 2019-12-05
KR1020190160831 2019-12-05

Publications (1)

Publication Number Publication Date
KR20210070944A true KR20210070944A (ko) 2021-06-15

Family

ID=76412151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200169814A KR20210070944A (ko) 2019-12-05 2020-12-07 픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체

Country Status (1)

Country Link
KR (1) KR20210070944A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113569469A (zh) * 2021-07-14 2021-10-29 扬州大学 一种用于设计高性能闪耀光栅结构的预测网络的构建方法
CN116456037A (zh) * 2023-06-16 2023-07-18 南京信息工程大学 一种基于扩散模型的生成式图像隐写方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113569469A (zh) * 2021-07-14 2021-10-29 扬州大学 一种用于设计高性能闪耀光栅结构的预测网络的构建方法
CN113569469B (zh) * 2021-07-14 2023-10-03 扬州大学 一种用于设计高性能闪耀光栅结构的预测网络的构建方法
CN116456037A (zh) * 2023-06-16 2023-07-18 南京信息工程大学 一种基于扩散模型的生成式图像隐写方法
CN116456037B (zh) * 2023-06-16 2023-08-22 南京信息工程大学 一种基于扩散模型的生成式图像隐写方法

Similar Documents

Publication Publication Date Title
US11616960B2 (en) Machine learning video processing systems and methods
KR101901355B1 (ko) 최적화 함수를 이용하여 그래프 기반 예측을 수행하는 방법 및 장치
KR102332476B1 (ko) 신경망을 이용한 타일 이미지 압축
EP3207704B1 (en) Systems and methods for processing a digital image
Hu et al. Multiresolution graph fourier transform for compression of piecewise smooth images
EP3648462B1 (en) Image processing method and device
JP5718363B2 (ja) 大きいサイズの変換単位を用いた映像符号化、復号化方法及び装置
US11412225B2 (en) Method and apparatus for image processing using context-adaptive entropy model
JP2020508010A (ja) 画像処理およびビデオ圧縮方法
US10499061B2 (en) Method and device for processing video signal by using separable graph-based transform
US10567763B2 (en) Method and device for processing a video signal by using an adaptive separable graph-based transform
CN104641643A (zh) 在分层层级中信号编码、解码和重构期间残差数据的分解
CN115606179A (zh) 用于使用学习的下采样特征进行图像和视频编码的基于学习的下采样的cnn滤波器
JP7168896B2 (ja) 画像符号化方法、及び画像復号方法
RU2518932C2 (ru) Уменьшенное рассогласование коэффициентов усиления постоянной состовляющей (dc) и dc-утечки при обработке преобразования с перекрытием
US8249372B2 (en) Methods and devices for coding and decoding multidimensional digital signals
KR20210070944A (ko) 픽셀-공간 예측을 이용하는 종단 간 압축을 위한 방법, 장치 및 기록 매체
WO2017043941A1 (ko) 예측 각도에 따른 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
CN107113426B (zh) 使用广义图形参数执行基于图形的变换的方法和设备
WO2022150078A1 (en) A framework for video conferencing based on face restoration
CN115552905A (zh) 用于图像和视频编码的基于全局跳过连接的cnn滤波器
JP7449402B2 (ja) ビデオコーディングのための方法および装置
KR102605285B1 (ko) 다중 그래프 기반 모델에 따라 최적화된 변환을 이용하여 비디오 신호를 인코딩/디코딩하는 방법 및 장치
KR20230010259A (ko) 사후-필터링을 위한 콘텐츠-적응형 온라인 트레이닝 방법 및 장치
EP4133726A1 (en) Content-adaptive online training method and apparatus for deblocking in block- wise image compression