KR102299958B1 - 다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들 - Google Patents

다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR102299958B1
KR102299958B1 KR1020200005757A KR20200005757A KR102299958B1 KR 102299958 B1 KR102299958 B1 KR 102299958B1 KR 1020200005757 A KR1020200005757 A KR 1020200005757A KR 20200005757 A KR20200005757 A KR 20200005757A KR 102299958 B1 KR102299958 B1 KR 102299958B1
Authority
KR
South Korea
Prior art keywords
pixels
target content
target
quantization step
content
Prior art date
Application number
KR1020200005757A
Other languages
English (en)
Other versions
KR20200089635A (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 KR20200089635A publication Critical patent/KR20200089635A/ko
Application granted granted Critical
Publication of KR102299958B1 publication Critical patent/KR102299958B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/20Contour coding, e.g. using detection of edges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/182Methods 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 a pixel
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

픽셀들의 타깃 세트를 예측하는 시스템들 및 방법들이 개시된다. 한 실시예에서, 방법은 타깃 콘텐트를 획득하는 단계를 포함할 수 있다. 타깃 콘텐트는 예측될 픽셀들의 타깃 세트를 포함할 수 있다. 방법은 또한 픽셀들의 평가된 세트를 발생하기 위해 픽셀들의 타깃 세트를 콘볼빙하는 단계를 포함할 수 있다. 방법은 픽셀들의 타깃 세트에 타깃 콘텐트 내의 픽셀들의 제2 세트를 매칭하는 단계를 포함할 수 있다. 픽셀들의 제2 세트는 픽셀들의 타깃 세트로부터의 거리 내에 있다. 방법은 타깃 콘텐트 내의 픽셀들의 제2 세트를 사용하여 픽셀들의 정제된 세트를 발생하기 위해 픽셀들의 평가된 세트를 정제하는 단계를 포함할 수 있다.

Description

다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들{SYSTEMS AND METHODS FOR IMAGE COMPRESSION AT MULTIPLE, DIFFERENT BITRATES}
본 개시내용은 일반적으로 영상 압축에 관한 것이다.
본 개시내용의 실시예들은 픽셀들의 타깃 세트를 예측하기 위한 시스템들 및 방법들에 관한 것이다.
한 실시예에서, 컴퓨터에 의해 구현되는 방법이 비일시적 전자 스토리지 및 하나 이상의 물리적 컴퓨터 프로세서를 포함하는 컴퓨터 시스템에서 구현될 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 예측될 픽셀들의 타깃 세트를 포함하는 타깃 콘텐트를 획득하는 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 평가된 세트를 발생하기 위해 픽셀들의 타깃 세트를 콘볼빙하는(convolve) 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 타깃 세트에 타깃 콘텐트 내의 픽셀들의 제2 세트를 매칭하는 단계를 포함할 수 있다. 픽셀들의 제2 세트는 픽셀들의 타깃 세트로부터의 거리 내에 있다. 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 타깃 콘텐트 내의 픽셀들의 제2 세트를 사용하여 픽셀들의 정제된 세트를 발생하기 위해 픽셀들의 평가된 세트를 정제하는 단계를 포함할 수 있다.
실시예들에서, 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 정제된 세트와 픽셀들의 타깃 세트 사이의 잔차를 발생하는 단계를 추가로 포함할 수 있다.
실시예들에서, 픽셀들의 평가된 세트를 정제하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 평가된 세트 및 픽셀들의 제2 세트를 인코딩하는 단계를 포함할 수 있다. 픽셀들의 평가된 세트를 정제하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 인코딩된 평가된 세트 및 픽셀들의 인코딩된 제2 세트에 디코더를 적용함으로써 픽셀들의 정제된 세트를 발생하는 단계를 포함할 수 있다.
실시예들에서, 픽셀들의 타깃 세트에 픽셀들의 제2 세트를 매칭하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 타깃 세트로부터 픽셀들의 제2 세트까지의 변위에 대응하는 변위 데이터를 발생하기 위해 픽셀들의 타깃 세트에 콘볼루션을 적용하는 단계를 포함할 수 있다.
실시예들에서, 픽셀들의 타깃 세트를 콘볼빙하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 평가된 세트의 개별 픽셀들에 대한 대응하는 가중치들을 발생하는 단계를 추가로 포함할 수 있다.
실시예들에서, 보충 정보가 픽셀들의 타깃 세트에 연결될 수 있다. 보충 정보는 픽셀들의 타깃 세트에 대해 적용된 마스크, 픽셀들의 타깃 세트의 색 값들, 및 픽셀들의 타깃 세트 내의 윤곽들 중 하나 이상을 포함할 수 있다.
실시예들에서, 픽셀들의 정제된 세트를 발생하기 위해 픽셀들의 평가된 세트를 정제하는 단계는 픽셀들의 평가된 세트의 위치 내에 픽셀들의 제2 세트를 배치하는 단계를 포함한다.
실시예들에서, 픽셀들의 타깃 세트로부터 픽셀들의 제2 세트까지의 거리는 16비트 미만의 대응하는 변위 데이터를 발생하는 것에 기초한다.
또 하나의 실시예에서, 타깃 콘텐트를 인코딩하는, 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지 및 하나 이상의 물리적 컴퓨터 프로세서를 포함하는 컴퓨터 시스템에서 구현될 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 획득하는 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 트레이닝된 압축 모델을 획득하는 단계를 포함할 수 있다. 트레이닝된 압축 모델은 트레이닝 데이터를 사용하여 초기 압축 모델을 트레이닝함으로써 조절될 수 있다. 트레이닝 데이터는 (ⅰ) 트레이닝 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기 및 (ⅱ) 주어진 양자화 스텝 크기를 사용하여 개별 트레이닝 콘텐트와 대응하는 양자화된 트레이닝 콘텐트 사이의 차이들에 기초하는 재구성 손실들을 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 인코딩된 타깃 콘텐트에 트레이닝된 압축 모델을 적용하는 단계를 포함할 수 있다.
실시예들에서, 트레이닝된 압축 모델을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 타깃 콘텐트를 인코딩하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 또한 하나 이상의 물리적 컴퓨터 프로세서로, 대응하는 양자화 스텝 크기를 사용하여 타깃 콘텐트를 양자화하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 디코딩가능한 타깃 콘텐트를 발생하기 위해 양자화된 타깃 콘텐트에 병목을 적용하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 또한 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 디코딩가능한 타깃 콘텐트를 디코딩하는 단계를 포함할 수 있다.
실시예들에서, 양자화된 타깃 콘텐트에 병목을 적용하는 단계는
Figure 112020004963019-pat00001
이도록 양자화된 타깃 콘텐트를 수정하는 단계를 포함할 수 있고, 여기서
Figure 112020004963019-pat00002
는 디코딩가능한 타깃 콘텐트를 나타내고, y는 타깃 콘텐트를 나타내고, U는 균일한 잡음을 나타내고, s는 대응하는 양자화 스텝 크기를 나타낸다.
실시예들에서, 초기 양자화 모델을 트레이닝하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 제1 양자화 스텝 크기를 사용하여 트레이닝 콘텐트의 제1 서브세트를 적용하는 단계를 포함할 수 있다. 초기 양자화 모델을 트레이닝하는 단계는 또한 하나 이상의 물리적 컴퓨터 프로세서로, 제1 양자화 스텝 크기 및 제2 양자화 스텝 크기를 사용하여 트레이닝 콘텐트의 제2 서브세트를 적용하는 단계를 포함할 수 있다. 초기 양자화 모델을 트레이닝하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 최대 양자화 스텝 크기가 도달될 때까지 추가의 양자화 스텝 크기들을 추가함으로써 상기 단계들 중 하나 이상을 반복하는 단계를 포함할 수 있다.
실시예들에서, 대응하는 양자화 스텝 크기는 트레이닝된 압축 모델을 적용하기 위해 타깃 콘텐트에 연결될 수 있다.
실시예들에서, 타깃 콘텐트는 영상, 비디오 프레임, 및 타깃 콘텐트에 대응하는 잔차 중 하나 이상을 포함할 수 있다.
실시예들에서, 타깃 콘텐트를 양자화하는 단계는
Figure 112020004963019-pat00003
로 정의될 수 있고 여기서 y는 인코딩된 타깃 콘텐트를 나타내고, s는 대응하는 양자화 스텝 크기를 나타내고,
Figure 112020004963019-pat00004
는 값들을 가장 가까운 정수로 맵핑하는 라운딩 함수를 나타낸다.
실시예들에서, 재구성 손실들은
Figure 112020004963019-pat00005
로 정의될 수 있고, 여기서
Figure 112020004963019-pat00006
는 레이트-왜곡 손실 값을 나타내고,
Figure 112020004963019-pat00007
는 주어진 타깃 콘텐트 및 대응하는 양자화된 타깃 콘텐트에 기초한 재구성 손실 값을 나타내고,
Figure 112020004963019-pat00008
는 가중치를 나타내고,
Figure 112020004963019-pat00009
은 엔트로피 값을 나타내고,
Figure 112020004963019-pat00010
는 양자화된 타깃 콘텐트를 나타낸다.
한 실시예에서, 타깃 콘텐트의 양자화를 향상시키는 양자화 모델을 트레이닝하는, 컴퓨터에 의해 구현되는 방법이 컴퓨터 시스템에서 구현될 수 있다. 컴퓨터 시스템은 하나 이상의 물리적 컴퓨터 프로세서 및 비일시적 전자 스토리지를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 트레이닝 데이터를 획득하는 단계를 포함할 수 있고, 트레이닝 데이터는 (ⅰ) 개별 타깃 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기 및 (ⅱ) 주어진 양자화 스텝 크기를 사용하여 개별 타깃 콘텐트와 대응하는 양자화된 타깃 콘텐트 사이의 차이들에 기초하는 재구성 손실들을 포함한다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 초기 양자화 모델을 획득하는 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 트레이닝 데이터를 사용하는 하나 이상의 물리적 컴퓨터 프로세서 상에서, 초기 양자화 모델을 트레이닝함으로써 트레이닝된 양자화 모델을 발생하는 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지 내에, 전자 스토리지 내의 트레이닝된 양자화 모델을 저장하는 단계를 포함할 수 있다.
실시예들에서, 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 획득하는 단계를 추가로 포함할 수 있다. 실시예들에서, 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 타깃 콘텐트 및 대응하는 양자화 스텝 크기에 트레이닝된 양자화 모델을 적용하는 단계를 포함할 수 있다.
실시예들에서, 트레이닝된 압축 모델을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 타깃 콘텐트를 인코딩하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 대응하는 양자화 스텝 크기를 사용하여 타깃 콘텐트를 양자화하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 또한 하나 이상의 물리적 컴퓨터 프로세서로, 디코딩가능한 타깃 콘텐트를 발생하기 위해 양자화된 타깃 콘텐트에 병목을 적용하는 단계를 포함할 수 있다. 트레이닝된 압축 모델을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 디코딩가능한 타깃 콘텐트를 디코딩하는 단계를 포함할 수 있다.
실시예들에서, 양자화된 타깃 콘텐트에 병목을 적용하는 단계는 하나 이상의 물리적 컴퓨터 프로세서로, 디코딩가능한 타깃 콘텐트를 발생하기 위해 양자화된 타깃 콘텐트에 대응하는 양자화 스텝 크기를 적용하는 단계를 포함할 수 있다.
실시예들에서, 대응하는 양자화 스텝 크기는 타깃 콘텐트에 연결될 수 있다.
실시예들에서, 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 타깃 콘텐트에 대응하는 잔차를 인코딩하는 단계를 추가로 포함할 수 있다.
한 실시예에서, 타깃 콘텐트를 압축하는, 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지 및 하나 이상의 물리적 컴퓨터 프로세서를 포함하는 컴퓨터 시스템에서 구현될 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 획득하는 단계를 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 비일시적 전자 스토리지로부터, 트레이닝된 압축 모델을 획득하는 단계를 포함할 수 있다. 트레이닝된 압축 모델은 트레이닝 데이터를 사용하여 초기 압축 모델을 트레이닝함으로써 조절될 수 있다. 트레이닝 데이터는 (ⅰ) 트레이닝 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기 및 (ⅱ) 주어진 양자화 스텝 크기를 사용하여 개별 트레이닝 콘텐트와 대응하는 양자화된 트레이닝 콘텐트 사이의 차이들에 기초하는 재구성 손실들을 포함할 수 있다. 컴퓨터에 의해 구현되는 방법은 하나 이상의 물리적 컴퓨터 프로세서로, 양자화된 타깃 콘텐트를 발생하기 위해 타깃 콘텐트에 트레이닝된 압축 모델을 적용하는 단계를 포함할 수 있다. 트레이닝된 압축 모델은 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 인코딩할 수 있다. 트레이닝된 압축 모델은 인코딩된 타깃 콘텐트를 양자화할 수 있다. 트레이닝된 압축 모델은 디코딩하기 위한 양자화된 타깃 콘텐트를 준비할 수 있다. 트레이닝된 압축 모델은 압축된 타깃 콘텐트를 발생하기 위해 디코딩가능한 타깃 콘텐트를 디코딩할 수 있다.
개시된 기술의 다른 특징들 및 양태들이 본 개시내용의 실시예들에 따라 특징들을 예로서 도시한, 첨부 도면들과 함께 이루어진 다음의 상세한 설명으로부터 명백해질 것이다. 요약은 첨부된 청구범위에 의해서만 정의되는 청구된 개시내용의 범위를 제한하려는 것이 아니다.
본 개시내용의 추가 양태들은 첨부 도면들과 함께 취해질 때, 아래에 설명되는 다양한 개시된 실시예들의 상세한 설명을 검토한다면 보다 쉽게 알게 될 것이다.
도 1은 다양한 실시예들에 따른, 다수의 상이한 비트레이트로 타깃 콘텐트를 압축하는 예시적인 시스템을 도시한다.
도 2는 개시된 기술의 실시예들에 따른, 예시적인 예측 모델을 도시한다.
도 3은 개시된 기술의 실시예들에 따른, 예시적인 압축 모델을 도시한다.
도 4는 개시된 기술의 실시예들에 따른, 예시적인 압축 모델과 예시적인 콘텐트 예측 모델을 조합한 예시적인 모델을 도시한다.
도 5는 한 실시예에 따른, 타깃 콘텐트에 예측 모델을 적용함으로써 픽셀들의 정제된 세트로부터 잔차를 발생하는 예시적인 프로세스를 도시한 동작 흐름도이다.
도 6은 한 실시예에 따른, 트레이닝된 압축 모델을 사용하여 타깃 콘텐트를 압축하는 예시적인 프로세스를 도시한 동작 흐름도이다.
도 7은 본 개시내용의 다양한 실시예들의 특징들을 구현하기 위해 사용될 수 있는 예시적인 컴퓨팅 컴포넌트를 도시한다.
도면들이 아래의 설명 및 예들에서 더 상세히 설명되고, 본 개시내용의 전형적인 또는 예시적인 실시예들을 단지 예시의 목적들을 위해, 도시하기 위해 제공된다. 도면들은 본 개시내용를 개시된 정확한 형태로 한정하거나 제한하려는 것은 아니다. 본 개시내용은 수정 또는 변경으로 실시될 수 있고, 본 개시내용은 단지 청구범위 및 그 등가물들에 의해서만 제한될 수 있다는 것을 또한 이해하여야 한다.
본 개시내용의 다양한 실시예들은 픽셀들의 타깃 세트를 평가하고 다수의 상이한 비트레이트로 타깃 콘텐트를 압축하는 방법 또는 시스템에 관한 것이다. 타깃 콘텐트는 예를 들어, 비디오들 및 영상들과 같은, 상이한 유형들의 미디어 콘텐트를 포함할 수 있다. 콘텐트는 표준, 고화질 (HD), 초고화질 HD(UHD), 4k UHD, 8k UHD, 및/또는 다른 해상도들과 같은 다양한 해상도들에 해당될 수 있다. 픽셀들의 타깃 세트를 평가하는 것은 예측 모델을 사용하는 것을 포함할 수 있다. 예측 모델은 픽셀들의 세트의 대강의 평가를 발생하기 위해 인코더를 사용할 수 있다. 타깃 콘텐트 내의 픽셀들의 근접 세트는 하나 이상의 특징에 기초하여 픽셀들의 타깃 세트에 매칭될 수 있다. 픽셀들의 대강의 평가와 매칭 세트가 인코딩되어 조합될 수 있다. 인코딩된 데이터의 조합은 픽셀들의 정제된 세트를 발생하기 위해 디코딩될 수 있다. 픽셀들의 정제된 세트는 픽셀들의 정제된 세트와 픽셀들의 원래의 타깃 세트 사이의 잔차를 발생하기 위해 사용될 수 있다. 실시예들에서, 잔차는 인코더들, 양자화기들, 병목들, 및 디코더들을 사용하는 압축 모델을 통해 적용될 수 있다. 압축 모델은 다수의 상이한 비트레이트를 처리할 수 있는데 왜냐하면 그것은 압축 레이트를 조종할 수 있는 다수의 상이한 양자화 스텝 크기를 사용하여 트레이닝되기 때문이다. 트레이닝은 최대 양자화 스텝 크기가 도달될 때까지 다수의 상이한 양자화 스텝 크기를 포함시킬 수 있다. 트레이닝은 주어진 양자화 스텝 크기에 대한 미래의 출력들을 향상시키기 위해 대응하는 출력들을 갖는 개별 양자화 스텝 크기들을 사용할 수 있다. 일부 실시예들에서, 왜곡 제거 모델은 임의의 왜곡들 및/또는 아티팩트들을 제거하기 위해 압축된 타깃 콘텐트에 적용될 수 있다. 왜곡 제거 모델은 다수의 상이한 품질 레벨을 처리할 수 있다.
본 기술을 상세히 설명하기 전에, 현재 개시되어 있는 기술이 구현될 수 있는 예시적인 환경을 설명하는 것이 유용할 수 있다. 도 1은 하나의 이러한 예시적인 환경(100)을 도시한다.
환경(100)은 개시된 시스템들, 방법들, 및 디바이스들의 구현 실시예들과 관련하여 사용될 수 있다. 예로서, 도 1의 다양한 아래에 설명되는 컴포넌트들이 타깃 콘텐트 내의 픽셀들의 타깃 세트를 예측하고, 다수의 상이한 비트레이트를 처리할 수 있는 압축 모델을 사용하여 타깃 콘텐트를 압축하고, 재구성된 타깃 콘텐트로부터 임의의 왜곡 및/또는 아티팩트들을 제거하기 위해 사용될 수 있다. 타깃 콘텐트는 영상들, 비디오, 데이터, 및/또는 다른 콘텐트를 포함할 수 있다. 타깃 콘텐트는 양자화 스텝 크기, 예측될 하나 이상의 픽셀, 및/또는 다른 정보를 포함할 수 있다. 재구성된 콘텐트는 압축, 수정, 변경, 및/또는 그렇지 않으면 왜곡된 콘텐트로부터 도출될 수 있다. 재구성된 콘텐트는 타깃 콘텐트에의 상기 압축, 수정, 변경, 및/또는 다른 왜곡들로부터 결과된 왜곡, 아티팩트들, 및/또는 다른 수정들을 포함할 수 있다. 서버 시스템(106)은 본원에 설명되는 것과 같은, 예측 모델(114), 압축 모델(116), 및 왜곡 제거 모델(118)을 포함할 수 있다. 예측 모델(114)은 타깃 콘텐트 내의 픽셀들의 세트를 평가할 수 있고, 압축 모델(116)은 타깃 콘텐트를 압축하기 위해 다수의 상이한 비트레이트를 처리할 수 있고, 왜곡 제거 모델(118)은 전자 디바이스(102)에/로부터 보내질 정정된 콘텐트를 발생할 수 있다.
예측 모델(114)은 타깃 콘텐트 내의 픽셀들의 타깃 세트를 평가할 수 있다. 실시예들에서, 픽셀들의 타깃 세트가 타깃 콘텐트 내의 주위 픽셀들, 주위 콘텐트(예를 들어, 비디오 콘텐트 내의 근접 프레임들) 등에 기초하여 선택될 수 있다. 한 예에서, 픽셀들의 64×64 타깃 세트가 320×320 영상으로부터 예측될 수 있다. 픽셀들의 타깃 세트의 다른 크기들 및 형상들이 상이한 크기의 영상들로부터 평가될 수 있다는 것을 알아야 한다. 일부 실시예들에서, 픽셀들의 타깃 세트가 예측 모델(114)을 적용하기 전에 마스크될 수 있다. 마스크는 박스 필터, 가중된 평균 필터, 및/또는 다른 필터 중 하나 이상을 사용하여 픽셀들의 타깃 세트를 필터링할 수 있다. 일부 실시예들에서, 마스크는 예측 모델(114)에 대한 픽셀들의 타깃 세트를 추출할 수 있다. 실시예들에서, 예측 모델(114)은 예측들을 향상시키기 위해 머신 학습(예를 들어, 신경 네트워크 및/또는 다른 머신 학습 알고리즘들)을 사용할 수 있다.
압축 모델(116)은 다수의 상이한 비트레이트를 사용하여 타깃 콘텐트를 압축할 수 있다. 일부 실시예들에서, 압축 모델(116)은 초기 압축 모델일 수 있다. 초기 압축 모델은 스토리지(110)로부터 획득된 트레이닝 데이터를 사용하여 서버 시스템(106)에서 트레이닝될 수 있다. 트레이닝은 증분적일 수 있다(예를 들어, 제1 양자화 스텝 크기를 사용하는 타깃 콘텐트의 제1 서브세트 상에서 트레이닝하고, 다음에 제1 양자화 스텝 크기와 제2 양자화 스텝 크기를 사용하는 타깃 콘텐트의 제2 서브세트 상에서 트레이닝하는 등등). 초기 압축 모델은 압축 모델(116)을 트레이닝하고 압축 모델(116)의 출력을 향상시키기 위해 머신 학습(예를 들어, 신경 네트워크 및/또는 다른 머신 학습 알고리즘들)을 사용할 수 있다. 결과적인 트레이닝된 압축 모델은 스토리지(110) 내에 저장될 수 있다. 트레이닝된 압축 모델은 다수의 상이한 비트레이트를 코딩할 수 있다.
왜곡 제거 모델(118)은 정정된 콘텐트를 발생할 수 있다. 예시적인 왜곡 제거 모델은 그 전체가 본원에 참조로 포함된, 미국 특허 출원 번호 16/167,388호에 더 상세히 설명되어 있다. 왜곡 제거 모델(118)은 타깃 콘텐트에 대해 다수의 상이한 품질 레벨을 처리할 수 있다. 실시예들에서, 초기 왜곡 제거 모델이 트레이닝된 왜곡 제거 모델을 발생하기 위해 서버 시스템(106)에서 하나 이상의 트레이닝 품질 레벨에 대해 트레이닝될 수 있다. 트레이닝 콘텐트는 타깃 콘텐트 및 대응하는 트레이닝 품질 레벨들을 포함할 수 있다. 대응하는 트레이닝 품질 레벨들은 다수의 상이한 품질 레벨을 포함할 수 있다. 트레이닝된 왜곡 제거 모델은 정정된 콘텐트를 발생하기 위해 하나 이상의 타깃 품질 레벨을 갖는 타깃 콘텐트에 적용될 수 있다. 일부 실시예들에서, 하나 이상의 타깃 품질 레벨은 트레이닝 품질 레벨들과 상이한 값들을 가질 수 있다.
예측 모델(114), 압축 모델(116), 및 왜곡 제거 모델(118) 중 하나 이상이 단-대-단 파이프라인에서 사용될 수 있는데 여기서 예를 들어, 픽셀들의 다수의 세트를 갖는 다수의 타깃 콘텐트가 타깃 콘텐트를 나타내는 다수의 잔차를 발생하기 위해 평가되고, 잔차들이 다수의 상이한 비트레이트를 사용하여 압축되고, 임의의 아티팩트들 및/또는 왜곡들이 다수의 상이한 품질 레벨을 사용하여 압축된 잔차들로부터 제거된다.
전자 디바이스(102)는 예를 들어, 스마트폰, 태블릿, 랩탑, 컴퓨터, 웨어러블 디바이스, 텔레비전, 가상 현실 디바이스, 증강 현실 디바이스, 디스플레이들, 커넥티드 홈 디바이스, 사물 인터넷(IOT) 디바이스, 스마트 스피커, 및/또는 다른 디바이스들과 같은 다양한 전자 컴퓨팅 디바이스들을 포함할 수 있다. 전자 디바이스(102)는 사용자에게 콘텐트를 제시하고/하거나 또 하나의 사용자에게 콘텐트를 보내라는 요청들을 수신할 수 있다. 일부 실시예들에서, 전자 디바이스(102)는 타깃 콘텐트에 예측 모델(114), 압축 모델(116), 및 왜곡 제거 모델(118)을 적용할 수 있다. 실시예들에서, 전자 디바이스(102)는 예측 모델(114), 압축 모델(116), 및 왜곡 제거 모델(118)을 저장할 수 있다.
도 1에 도시한 것과 같이, 환경(100)은 전자 디바이스(102) 및 서버 시스템(106) 중 하나 이상을 포함할 수 있다. 전자 디바이스(102)는 통신 매체(104)를 통해 서버 시스템(106)에 결합될 수 있다. 본원에 상세히 설명되는 것과 같이, 전자 디바이스(102) 및/또는 서버 시스템(106)은 통신 매체(104)를 통해 콘텐트, 메타데이터, 품질 레벨들, 양자화 스텝 크기들, 사용자 입력, 부수 정보, 및/또는 다른 정보를 포함하는 통신 신호들을 교환할 수 있다.
다양한 실시예들에서, 통신 매체(104)는 와이파이(Wi-Fi), 블루투스(Bluetooth®), 지그비(ZigBee), 802.11 프로토콜들, 적외선(IR), 무선 주파수(RF), 2G, 3G, 4G, 5G 등과 같은 하나 이상의 무선 통신 프로토콜, 및/또는 유선 프로토콜들 및 매체에 기초할 수 있다. 통신 매체(104)는 일부 경우들에서 단일 매체로서 구현될 수 있다.
위에 언급된 것과 같이, 통신 매체(104)는 전자 디바이스(102) 및/또는 서버 시스템(106)을 서로 또는 네트워크에 접속 또는 통신가능하게 결합하기 위해 사용될 수 있고, 통신 매체(104)는 다양한 형태들로 구현될 수 있다. 예를 들어, 통신 매체(104)는 근거리 네트워크(LAN), 광역 네트워크(WAN), 광 섬유 네트워크, 전력선들을 통한 인터넷, 하드-와이어드 접속(예를 들어, 버스) 등과 같은 인터넷 접속, 또는 다른 종류의 네크워크 접속을 포함할 수 있다. 통신 매체(104)는 라우터들, 케이블들, 모뎀들, 광 섬유들, 배선들, 무선(예를 들어, 마이크로웨이브/RF 링크들) 등의 임의의 조합들을 사용하여 구현될 수 있다. 본 개시내용를 읽고 나면, 통신 목적들을 위해 통신 매체(104)를 구현하기 위해 다른 방식들이 사용될 수 있다는 것을 알아야 한다.
마찬가지로, 유사한 통신 매체가 서버(108), 스토리지(110), 프로세서(112), 예측 모델(114), 압축 모델(116), 및/또는 왜곡 제거 모델(118)을 환경(100)의 다른 요소들 외에 서로 접속 또는 통신가능하게 결합하기 위해 사용될 수 있다. 예시적인 구현들에서, 통신 매체(104)는 비교적 지리적으로 멀 수 있는, 전자 디바이스(102) 및/또는 서버 시스템(106)에 대한 유선 또는 무선 광역 네트워크(예를 들어, 셀룰러, 광 섬유, 및/또는 회로 교환 접속 등)이거나 이들을 포함할 수 있고; 일부 경우들에서, 통신 매체(104)의 양태들은 지리적으로 비교적 가까울 수 있는 환경(100)의 양태들을 통신가능하게 결합하기 위해 사용될 수 있는, 유선 또는 무선 근거리 네트워크(예를 들어, 와이파이, 블루투스, 비면허 무선 접속, USB, HDMI, 표준 AV 등)를 포함할 수 있다.
서버 시스템(106)은 예를 들어, 콘텐트, 메타데이터, 양자화 스텝 크기들, 품질 레벨들, 사용자 입력, 보안 및 암호화 정보, 부수 정보 등과 같은, 정보를 전자 디바이스(102)에/로부터 제공, 수신, 수집, 또는 모니터링할 수 있다. 서버 시스템(106)은 통신 매체(104)를 통해 이러한 정보를 수신 또는 송신하도록 구성될 수 있다. 이 정보는 스토리지(110) 내에 저장될 수 있고 프로세서(112)를 사용하여 처리될 수 있다. 예를 들어, 프로세서(112)는 서버 시스템(106)이 전자 디바이스(102)로부터 수집, 수신 등을 한 정보에 대해 분석을 수행할 수 있는 분석 엔진을 포함할 수 있다. 프로세서(112)는 타깃 콘텐트를 수신하고, 타깃 콘텐트를 분석하고, 혹은 콘텐트를 처리하고 전자 디바이스(102)로부터의, 또는 그것으로부터 오는 요청들에 기초하여 서버 시스템(106)이 수집, 수신 등을 한 정정된 콘텐트를 발생할 수 있는 예측 모델(114), 압축 모델(116), 및 왜곡 제거 모델(118)을 포함할 수 있다. 실시예들에서, 서버(108), 스토리지(110), 및 프로세서(112)는 분산된 컴퓨팅 네트워크, 관계형 데이터베이스 등으로서 구현될 수 있다.
서버(108)는 예를 들어, 인터넷 서버, 라우터, 데스크탑 또는 랩탑 컴퓨터, 스마트폰, 태블릿, 프로세서, 컴포넌트 등을 포함할 수 있고, 예를 들어, 집적 회로 또는 그것의 무리 내에, 인쇄 회로 보드 또는 그것의 무리 내에, 또는 분리된 하우징/패키지/랙 또는 이것의 다수 내에 포함하는 다양한 형태들로 구현될 수 있다. 서버(108)는 전자 디바이스(102) 상에 저장된 정보를 업데이트할 수 있다. 서버(108)는 전자 디바이스(102)에/로부터 정보를 실시간으로 또는 산발적으로 송신/수신할 수 있다. 또한, 서버(108)는 전자 디바이스(102)에 대한 클라우드 컴퓨팅 능력들을 구현할 수 있다. 본 개시내용를 연구하면, 본 기술 분야의 통상의 기술자는 환경(100)은 다수의 전자 디바이스(102), 통신 매체(104), 서버 시스템들(106), 서버들(108), 스토리지(110), 프로세서들(112), 예측 모델(114), 압축 모델(116), 및/또는 왜곡 제거 모델 컴포넌트들(118)을 포함할 수 있다는 것을 알 것이다.
도 2는 본 개시내용의 다양한 실시예들에 따른, 예시적인 예측 모델을 도시한다. 도시된 것과 같이, 예측 모델(114)은 하나 이상의 인코더(210, 216, 및 222) 및 대응하는 디코더(212 및 226), 픽셀들의 타깃 세트에 대한 픽셀들의 매칭 세트를 선택하는 매칭 컴포넌트(218), 픽셀들의 타깃 세트의 위치로 픽셀들의 매칭 세트를 이동시키기 위해 변위 데이터를 사용하는 변위 컴포넌트(220), 및/또는 다른 컴포넌트들을 포함할 수 있다. 실시예들에서, 예측 모델(114)은 픽셀들의 개별 세트들마다 픽셀들의 타깃 세트를 예측할 수 있고, 여기서 픽셀들의 개별 세트들은 타깃 콘텐트를 인코딩할 때 순차적으로(예를 들어, 래스터-스캔 순서 및/또는 다른 순서들로) 처리될 수 있다. 이미 처리된(예를 들어, 인코딩 및/또는 디코딩된) 픽셀들의 세트들이 픽셀들의 타깃 세트를 인코딩하기 위해 사용될 수 있다.
예측 모델(114)에의 입력은 타깃 콘텐트(예를 들어, 예측될 픽셀들의 타깃 세트를 포함하는 영상) 및/또는 부수 정보(206)(예를 들어, 하나 이상의 마스크(204), 하나 이상의 색 값, 타깃 콘텐트 내의 하나 이상의 윤곽들 등)를 포함할 수 있다. 실시예들에서, 다수의 입력이 208에서 연결될 수 있다.
실시예들에서, 인코더(210) 및 디코더(212)는 게이트식 콘볼루션들을 사용하는 오토-인코더 모델일 수 있다. 게이트식 콘볼루션은
Figure 112020004963019-pat00011
로 정의될 수 있고, 여기서 O는 게이트식 콘볼루션의 출력을 나타내고,
Figure 112020004963019-pat00012
는 2차원 콘볼루션을 나타내고,
Figure 112020004963019-pat00013
는 시그모이드 활성 함수를 나타내고,
Figure 112020004963019-pat00014
는 활성 함수(예를 들어, RELU, tanh, 및/또는 다른 활성 함수들)을 나타낸다. 출력, O는 콘볼루션,
Figure 112020004963019-pat00015
에 대한 가중치들에 대응할 수 있다. 가중치는 예측 모델(114)에 의해 사용되어 더 많은 중요성이 가용한 픽셀 값들 상에 가해질 수 있도록 예측 모델(114)을 통해 마스크를 전파하기 위해 가중을 사용할 수 있다. 상이한 콘볼루션들이 상이한 응용들을 위해 사용될 수 있다는 것을 알아야 한다.
일부 실시예들에서, 콘볼루션은 콘볼루션의 압축가능한 출력을 향상시키기 위해 샘플링된 색 값들, 윤곽들, 및/또는 다른 부수 정보와 같은 부수 정보를 발생하고/하거나 통과시킬 수 있다. 일부 실시예들에서, 부수 정보는 픽셀들의 타깃 세트에의 영향에 기초하여 가중될 수 있다. 실시예들에서, 압축 모델(116)을 트레이닝함으로써, 향상된 부수 정보가 예측 모델(114)의 압축가능한 출력을 향상시키기 위해 발생될 수 있다.
실시예들에서, 가중치들이 예측 모델(114)을 트레이닝하기 위해 사용될 수 있다. 트레이닝 데이터는 가용한 픽셀들의 위치, 픽셀들의 타깃 세트, 픽셀들의 평가된 세트, 및 픽셀들의 정제된 세트에 기초하여 주어진 가중치를 포함할 수 있다. 트레이닝은 트레이닝된 예측 모드를 발생할 수 있다. 트레이닝은 하나 이상의 가중치를 갖는 트레이닝 콘텐트를 사용할 수 있다. 트레이닝 콘텐트에 대한 픽셀들의 평가된 세트 및 픽셀들의 정제된 세트는 가용한 픽셀들의 위치에 기초하여 주어진 가중치에 대한 픽셀들의 트레이닝 세트와 비교될 수 있다. 컴포넌트들은 픽셀들의 평가된 세트 및 픽셀들의 정제된 세트의 정확도 및 정밀도를 향상시키기 위해 조정될 수 있어서; 트레이닝된 예측 모델(114)을 발생한다.
인코더(210) 및 디코더(212)는 픽셀들의 타깃 세트에 대응하는 픽셀들의 평가된 세트(214)를 발생할 수 있다.
타깃 콘텐트(202)는 픽셀들의 타깃 세트(205)를 픽셀들의 매칭 세트에 매칭하기 위해 또한 사용될 수 있다. 픽셀들의 매칭 세트는 타깃 콘텐트, 근접 프레임들(즉, 콘텐트가 비디오인 경우), 및/또는 다른 소스들로부터 올 수 있다. 실시예들에서, 픽셀들의 매칭 세트가 픽셀들의 타깃 세트에 근접하는 픽셀들의 세트로부터 취해질 수 있다. 픽셀들의 매칭 세트를 선택하는 것은 변위 데이터의 결과적인 수(예를 들어, 불과 16비트가 변위 데이터를 인코딩하기 위해 사용되고, 또는 2D에서의 차원 변위 당 8비트), 픽셀들의 타깃 세트의 가장자리로부터의 거리, 색 값들 간의 유사성(예를 들어, 색 값은 범위 내에 있음), 물체들 간의 유사성(예를 들어, 물체/형상 인식), 및/또는 다른 기준 중 하나 이상에 기초할 수 있다. 상이한 비트레이트들, 범위들, 및/또는 임계들이 픽셀들의 매칭 세트를 선택하기 위해 사용될 수 있다는 것을 알아야 한다. 실시예들에서, 매칭은 콘볼루션을 사용하여 달성될 수 있다. 콘볼루션은 "지상 실측 정보(ground-truth)" 커널로서 픽셀들의 타깃 세트를 사용하고 픽셀들의 매칭된 세트의 위치로부터 픽셀들의 타깃 세트까지의 변위에 대응하는 부수 정보를 발생할 수 있다. 일부 실시예들에서, 부픽셀 변위들이 양자화될 수 있다. 다른 모델들, 방법들, 및/또는 시스템들이 픽셀들의 평가된 세트(214)를 정제하는 데 도움을 주기 위해 사용될 수 있다는 것을 알아야 한다.
실시예들에서, 예측 모델(114)은 다음의 손실:
Figure 112020004963019-pat00016
을 최적화함으로써 트레이닝될 수 있고, 여기서 아래에 설명되는 것과 같이, I는 입력 영상을 나타내고, J는 제1 예측 처리 단계의 대략적 출력을 나타내고, I'는 최종 예측 출력을 나타내고,
Figure 112020004963019-pat00017
Figure 112020004963019-pat00018
손실을 나타내고,
Figure 112020004963019-pat00019
는 가중된
Figure 112020004963019-pat00020
손실을 나타낸다.
가중된
Figure 112020004963019-pat00021
손실에 대해, 가중 행렬이 현재의 픽셀의 주어진 입력 픽셀까지의 거리를 통해 발생될 수 있다. 픽셀에 대한 가중치는
Figure 112020004963019-pat00022
로서 주어질 수 있고, 여기서
Figure 112020004963019-pat00023
는 위치 (x,y)에서의 픽셀을 나타내고,
Figure 112020004963019-pat00024
는 0.99로 설정될 수 있고,
Figure 112020004963019-pat00025
은 디코딩 시간에 다음의 알려진 픽셀까지의 거리를 나타낸다. 상이한 가중치들은 픽셀들의 타깃 세트가 손실에 주는 효과에 영향을 주기 위해 사용될 수 있고
Figure 112020004963019-pat00026
의 상이한 값들이 사용될 수 있다는 것을 알아야 한다.
픽셀들의 평가된 세트(214)와 픽셀들의 매칭 세트는 병렬로 인코딩될 수 있다. 실시예들에서, 인코더(216 및 222)의 결과적인 출력들은 224에서 연결될 수 있다. 연결된 픽셀들은 정제된 타깃 콘텐트 내로 통합할 픽셀들의 정제된 세트를 발생하기 위해 디코더(226)에 의해 디코딩될 수 있다. 잔차는 픽셀들의 정제된 세트와 픽셀들의 타깃 세트 사이의 차이들에 기초하여 발생될 수 있다. 잔차, 타깃 콘텐트, 및/또는 픽셀들의 타깃 세트는 압축 모델(116)에 대한 입력으로서 사용될 수 있다. 일부 실시예들에서, 발생하는 적대적 네트워크 손실(예를 들어, LS-GAN 및/또는 GAN의 다른 종류들)이 예측 모델(114)로 사용될 수 있다.
도 3은 본 개시내용의 다양한 실시예들에 따른, 예시적인 압축 모델을 도시한다. 도시된 것과 같이, 압축 모델(116)은 하나 이상의 인코딩 콘볼루션들(306), 인코딩 활성 함수들(308), 양자화 모델들(310), 병목들(312), 디코딩 활성 함수들(314), 디코딩 콘볼루션들(316), 및/또는 다른 컴포넌트들을 포함할 수 있다. 실시예들에서, 압축 모델(116)은 타깃 콘텐트를 다수의 상이한 비트레이트로 압축할 수 있다. 도시된 것과 같이, 인코딩 활성 함수들(308) 및 디코딩 활성 함수들(314)은 예를 들어, GDN 활성 함수일 수 있다. 그러나, 예를 들어, ReLU, leaky ReLU, ELU 등과 같은 다른 활성 함수들이 사용될 수 있다는 것을 알아야 한다.
압축 모델(116)에의 입력은 타깃 콘텐트(예를 들어, 영상, 비디오의 프레임, 잔차, 및/또는 다른 콘텐트) 및 부수 정보(예를 들어, 양자화 스텝 크기, 잔차에 대응하는 마스크, 색 샘플, 윤곽 등)를 포함할 수 있다. 양자화 스텝 크기는 타깃 콘텐트에 대응하는 개별 값들(예를 들어, 개별 값들은 1 단위, 2 단위들, 3 단위들 등으로 분리됨) 사이의 차이일 수 있다. 압축 모델(116)은 트레이닝 데이터를 사용하여 트레이닝될 수 있다. 예를 들어, 압축 모델(116)은 레이트-왜곡 손실:
Figure 112020004963019-pat00027
을 최소화할 수 있고 여기서
Figure 112020004963019-pat00028
는 재구성 손실을 나타내고,
Figure 112020004963019-pat00029
는 레이트 손실 항(예를 들어, 엔트로피)을 나타내고,
Figure 112020004963019-pat00030
는 양자화된 병목을 나타내고 레이트-왜곡을 가중한다.
재구성 손실은 평균 제곱 오차(MSE),
Figure 112020004963019-pat00031
오차, 또는 멀티스케일 구조적 유사성(MS-SSIM)에 의해 정의될 수 있다. 레이트 항은
Figure 112020004963019-pat00032
로서 정의될 수 있다. 확률 함수
Figure 112020004963019-pat00033
는 구분적 선형 함수로서 모델링될 수 있다. 확률 함수는 압축 모델(116)로 트레이닝되고 언트레이닝된
Figure 112020004963019-pat00034
병목에 대해 프리-트레이닝될 수 있다. 구분적 모델은 병목 내에서 각각의 특징 맵, i에 대해 피트될 수 있고, 이산 샘플 점들에서의 값들은 피팅 오차로
Figure 112020004963019-pat00035
로서 주어질 수 있고:
Figure 112020004963019-pat00036
여기서 p는 축의 양의 반부 내의 단위 간격들의 수를 나타내고, d는 단위 간격 당 샘플링 점들의 수를 나타내고, n은 주어진 특징 맵, i 내의 요소들의 수를 나타낸다. 구분적 선형 함수를 최적화할 전체적 손실은
Figure 112020004963019-pat00037
일 수 있고, 여기서 m은 병목 내의 특징 맵들의 수를 나타낸다. 다른 레이트 왜곡 손실들이 상이한 변수들 및 함수들(예를 들어, 상이한 재구성 손실들 및 확률 모델들)을 사용할 수 있다는 것을 알아야 한다.
상이한 양자화 스텝 크기들, s는 압축 모델(116)을 트레이닝하기 위해 사용될 수 있다. 세트
Figure 112020004963019-pat00038
는 고려된 양자화 스텝 크기들을 정의하고 여기서 모든 i에 대해
Figure 112020004963019-pat00039
이다. 각각의 트레이닝 데이터 세트에 대해, 양자화 스텝 크기는 서브세트
Figure 112020004963019-pat00040
로부터 랜덤으로 균일하게 샘플링될 수 있다. 제1 트레이닝 데이터 세트는
Figure 112020004963019-pat00041
로 시작할 수 있다. 제2 트레이닝 데이터 세트는 역시
Figure 112020004963019-pat00042
를 포함할 수 있다(예를 들어,
Figure 112020004963019-pat00043
). 트레이닝 데이터 세트들은 최적화 손실들이 각각 S' = S일 때까지 각각의 세트에 대한 임계 값에 도달한 후에 반복하여 증가할 수 있다.
더 큰 양자화 스텝 크기가 더 많은 왜곡을 갖는 더 작은 엔트로피를 함축하기 때문에, 레이트-왜곡 손실은 샘플링된 양자화 스텝 크기에 의해 스케일될 수 있다. 따라서, 재정의된 레이트-왜곡 손실은
Figure 112020004963019-pat00044
이고 여기서
Figure 112020004963019-pat00045
는 S'로부터의 샘플링된 양자화 스텝 크기를 나타낸다.
일부 실시예들에서, 발생하는 적대적 네트워크 손실(예를 들어, LS-GAN 및/또는 GAN의 다른 종류들)이 압축 모델(116)로 사용될 수 있다.
실시예들에서, 아담 솔버(Adam solver)는 레이트-왜곡 손실을 풀기 위해 사용될 수 있다. 일부 실시예들에서, 확률적 경사 하강법(stochastic gradient descent)(SGD)이 확률 모델 핏팅을 풀기 위해 사용될 수 있다. 실시예들에서, 압축 모델(116)이 먼저 트레이닝되고 왜곡 제거 모델(118)이 관련된 특징들에 대한 동일한 세트 S로 나중에 트레이닝될 수 있다.
도시된 것과 같이, 인코딩 콘볼루션들(306)은 4의 스트라이드를 갖는 9×9×N 행렬 및 2의 스트라이드를 갖는 5×5×N 행렬을 사용할 수 있고, 여기서 N은 병목(312) 내의 특징들의 수를 설명한다. 상이한 행렬들 및 스트라이드들이 사용될 수 있다는 것을 알아야 한다. 또한, 3개의 콘볼루션이 인코딩 및 디코딩 측 둘 다 상에 도시되지만, 콘볼루션들의 수 및 유형들이 상이할 수 있다는 것을 알아야 한다.
양자화 모델(310)은 값들:
Figure 112020004963019-pat00046
을 양자화함으로써 병목(312) 내의 요소 당 비트들을 제한하기 위해 사용되고, 여기서 y는 인코더 출력을 나타내고, s는 양자화 스텝 크기를 나타내고,
Figure 112020004963019-pat00047
는 값들을 가장 가까운 정수에 맵핑한다. 일부 실시예들에서, Q(y,s)의 출력은 예를 들어, 이진 연산 코더 및/또는 범용 엔트로피 코더(예를 들어, PAQ)와 같은 엔트로피 코더(도시 안됨)을 사용하여 무손실 엔트로피 코딩될 수 있다. 압축 레이트는 양자화 스텝 크기, s를 증가 또는 감소시킴으로써 조종될 수 있다.
실시예들에서, 양자화 스텝 크기는 병목(312)의 출력으로 곱해질 수 있다:
Figure 112020004963019-pat00048
일부 실시예들에서, 균일한 잡음이 트레이닝 동안에 추가 및/또는 주입될 수 있다. 양자화 스텝 크기에 따라, 균일한 잡음은
Figure 112020004963019-pat00049
이도록 적응될 수 있다.
실시예들에서, 양자화 스텝 크기들은 압축 모델(116)에 입력될 수 있다. 입력된 양자화 스텝 크기들은 그 양자화가 그것의 출력 상에 발생하는 인코딩 콘볼루션들(306)에 신호하고 압축 모델(116)이 사용된 양자화 스텝 크기에 대한 더 좋은 표현을 발생하는 것을 도울 수 있다. 상이한 방법들이 압축 모델(116) 내로 양자화 스텝 크기를 입력하기 위해 사용될 수 있다는 것을 알아야 한다. 예를 들어, 사용된 양자화 스텝 크기는 타깃 콘텐트를 갖는 제4 채널로서 연결될 수 있다.
일부 실시예들에서, 왜곡 제거 모델(118)은 최종 디코딩 콘볼루션(316) 상에 직접 적용될 수 있다. 일부 실시예들에서, 발생하는 적대적 네트워크 손실(예를 들어, LS-GAN 및/또는 GAN의 다른 종류들)이 왜곡 제거 모델(118)로 사용될 수 있다.
도 4는 예측 모델(404) 및 압축 모델(412)을 사용하는 예시적인 압축 파이프라인을 도시한다. 이것은 예측을 압축과 조합하는 하나의 예이고, 다른 특징들 및/또는 컴포넌트들이 사용될 수 있다는 것을 알아야 한다. 실시예들에서, 위에 설명된 것과 같이, 왜곡 제거 모델은 압축 모델(412) 다음에 적용될 수 있고 별개로 트레이닝될 수 있다. 일부 실시예들에서, 예측 모델(404), 압축 모델(412), 및 왜곡 제거 모델(도시 안됨)은 단-대-단으로 트레이닝될 수 있다. 실시예들에서, 예측 모델(404) 내의 매칭(예를 들어, 매칭 컴포넌트(218))은 인코더를 통해(예를 들어, 인코더(216) 이후에) 대략적이고 원래의 영상을 인코딩한 후에 특징 공간 내에서 수행될 수 있다.
도시된 것과 같이, 입력 타깃 콘텐트 및/또는 픽셀들의 타깃 세트(402)는 픽셀들의 정제된 세트(406)를 발생하기 위해 예측 모델(404)에 입력될 수 있다. 일부 실시예들에서, 픽셀들의 정제된 세트(406)는 정제된 타깃 콘텐트(406) 내로 통합될 수 있다. 픽셀들의 정제된 세트(406)는 픽셀들의 타깃 세트(402)보다 클 수 있고 408에서 픽셀들의 타깃 세트(402)를 매칭하기 위해 크롭될 수 있다. 일부 실시예들에서, 픽셀들의 타깃 세트(402)는 410에서 크롭될 수 있다. 픽셀들의 정제된 세트(406)는 압축된 타깃 콘텐트(414)를 발생하기 위해 압축 모델(412)에 입력될 수 있다.
실시예들에서, 예측 모델(114)과 압축 모델(116)은 단-대-단 트레이닝될 수 있고, 파이프라인(400)에 대한 손실은
Figure 112020004963019-pat00050
로 정의될 수 있고 여기서 I는 타깃 콘텐트를 나타내고,
Figure 112020004963019-pat00051
은 예측될 픽셀들의 타깃 세트에 크롭된 입력 영상을 나타내고, I'는 압축 재구성 출력을 나타내고, y는 압축 모델(116)의 병목을 나타낸다. 파이프라인(400)에의 입력 I는 픽셀들의 타깃 세트 내의 픽셀들의 수, 픽셀들의 형상, 및/또는 다른 고려 사항들에 관하여 몇가지 형태들을 가질 수 있다. 그들은 트레이닝 중에 및/또는 트레이닝 후에 통합될 수 있다.
실시예들에서, 부수 정보가 압축 모델(116)을 사용하여 트레이닝될 수 있고, 대응하는 예측 손실은
Figure 112020004963019-pat00052
로서 주어질 수 있고, 여기서 y'는 부수 정보 병목을 나타낸다.
실시예들에서, 아담 솔버가 최적화를 위해 사용될 수 있고 트레이닝 데이터로부터 랜덤하게 추출될 수 있는 타깃 콘텐트 패치들 상에서 트레이닝될 수 있다. 다른 솔버들이 최적화를 위해 사용될 수 있다는 것을 알아야 한다.
도 5는 한 실시예에 따른, 타깃 콘텐트에 예측 모델을 적용함으로써 픽셀들의 정제된 세트로부터 잔차를 발생하는 예시적인 프로세스를 도시한 동작 흐름도이다. 본원에 설명되는 다양한 방법들의 동작들은 반드시 도면들에서 설명되거나 도시된 순서로 제한되지 않고, 본 개시내용를 연구한다면, 본원에 설명된 동작들의 순서의 변화들은 본 개시내용의 취지 및 범위 내에 있다는 것을 알아야 한다.
흐름도의 동작들 및 부동작들은 일부 경우들에서, 시스템(100)의 컴포넌트들, 요소들, 디바이스들, 컴포넌트들, 및 회로들 중 하나 이상에 의해 수행될 수 있다. 이것은 본원에 설명되고 적어도 도 1 및 도 7과 관련하여 참조된 서버 시스템(106); 서버(108); 프로세서(112); 스토리지(110); 및/또는 컴퓨팅 컴포넌트(700) 중 하나 이상뿐만 아니라, 본원에 설명되고/되거나 그와 관련하여 설명된 부컴포넌트들, 요소들, 디바이스들, 컴포넌트들, 및 회로들을 포함할 수 있다. 이러한 예들에서, 흐름도의 설명은 대응하는 컴포넌트, 요소 등을 참조할 수 있지만, 명시적인 참조가 이루어지든 상관없이, 본 개시내용를 연구한다면, 대응하는 컴포넌트, 요소 등이 사용될 수 있다는 것을 알 것이다. 또한, 이러한 참조들은 반드시 설명된 방법들을 그에 참조된 특정한 컴포넌트, 요소 등으로 제한하지 않는다는 것을 알 것이다. 그러므로, 그것들의 변화들을 포함하는, (부)-컴포넌트들, 요소들, 디바이스들, 회로들 등과 관련하여 위에 설명된 양태들 및 특징들은 본 개시내용의 범위에서 벗어나지 않고서 흐름도와 관련하여 설명된 다양한 동작들에 적용될 수 있다는 것을 알 것이다.
동작 502에서, 타깃 콘텐트가 획득될 수 있다. 타깃 콘텐트는 영상, 비디오, 및/또는 다른 미디어 콘텐트를 포함할 수 있다. 타깃 콘텐트는 다수의 픽셀을 포함할 수 있다. 다수의 픽셀로부터의 픽셀들의 타깃 세트는 예측을 위해 선택될 수 있다. 픽셀들의 타깃 세트는 타깃 콘텐트(예를 들어, 유사한 형상의 물체, 색 값들의 유사한 세트 등) 내의 다른 픽셀들과의 유사성, 근접 콘텐트(예를 들어, 이전의 또는 후속하는 프레임들 내의 유사한 형상의 물체, 이전의 또는 후속하는 프레임들 내의 색 값들의 유사한 세트 등) 내의 다른 픽셀들과의 유사성, 인코딩/디코딩(예를 들어, 앞서 인코딩/디코딩된 픽셀들을 레버리지하도록 인코딩/디코딩될 픽셀들의 마지막 세트)의 순서, 및/또는 다른 기준에 기초하여 선택될 수 있다. 픽셀들의 타깃 세트는 다양한 형상들 및 크기들일 수 있다.
동작 504에서, 픽셀들의 타깃 세트가 콘볼빙될 수 있다. 일부 실시예들에서, 콘볼루션은 오토-인코더 모델의 일부인 게이트식 콘볼루션일 수 있다. 콘볼루션을 적용하는 것은 픽셀들의 타깃 세트의 위치에 대응하는 픽셀들의 평가된 세트를 발생할 수 있다. 실시예들에서, 픽셀들의 타깃 세트의 개별 픽셀들은 위에 설명된 것과 같이, 상이하게 가중될 수 있다. 일부 실시예들에서, 콘볼루션은 부수 정보를 발생하고/하거나 통과시킬 수 있다. 예를 들어, 부수 정보는 픽셀들의 타깃 세트가 정제됨에 따라 픽셀들의 타깃 세트에 연결될 수 있다.
동작 506에서, 픽셀들의 제2 세트가 픽셀들의 타깃 세트에 매칭될 수 있다. 픽셀들의 제2 세트는 픽셀들의 타깃 세트와 상이한 크기 및 형상일 수 있다. 예를 들어, 픽셀들의 제2 세트는 픽셀들의 타깃 세트보다 클 수 있다. 픽셀들의 제2 세트는 위에 설명된 것과 같이, 픽셀들의 타깃 세트 및/또는 근접 콘텐트들과의 유사성들에 기초하여 선택될 수 있다. 실시예들에서, 픽셀들의 제2 세트는 위에 설명된 것과 같이, 변위 데이터의 결과적인 양에 기초하여 선택될 수 있다.
동작 508에서, 픽셀들의 평가된 세트가 정제될 수 있다. 픽셀들의 정제된 세트는 픽셀들의 제2 세트 및 픽셀들의 평가된 세트를 사용하여 발생될 수 있다. 예를 들어, 위에 설명된 것과 같이, 픽셀들의 제2 세트가 병렬로 인코딩되고 연결될 수 있다. 픽셀들의 연결된 세트들은 픽셀들의 정제된 세트를 발생하기 위해 디코더에 적용될 수 있다. 픽셀들의 제2 세트는 픽셀들의 타깃 세트의 위치로부터의 픽셀들의 제2 세트의 변위에 대응하는 부수 정보를 포함할 수 있다.
동작 510에서, 잔차가 발생될 수 있다. 잔차는 픽셀들의 정제된 세트와 픽셀들의 타깃 세트 사이의 차이들에 기초할 수 있다.
도 6은 한 실시예에 따른, 트레이닝된 압축 모델을 사용하여 타깃 콘텐트를 압축하는 예시적인 프로세스를 도시한 동작 흐름도이다.
동작 602에서, 트레이닝 데이터가 획득될 수 있다. 트레이닝 데이터는 개별 타깃 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기, 및/또는 주어진 양자화 스텝 크기를 사용하여 개별 타깃 콘텐트와 대응하는 양자화된 타깃 콘텐트 사이의 차이들에 기초한 재구성 손실들을 포함할 수 있다. 재구성은 타깃 콘텐트를 디코딩하는 것일 수 있다. 재구성 손실들은 타깃 콘텐트(예를 들어, 원래의 콘텐트)와 디코딩된 타깃 콘텐트 사이의 차이들을 참조할 수 있다. 실시예들에서, 재구성 손실들은 타깃 콘텐트에 대응하는 양자화 스텝 크기들을 포함할 수 있다.
동작 604에서, 초기 압축 모델이 획득될 수 있다. 압축 모델은 위에 설명된 것과 같이, 압축 모델(116)(예를 들어, 하나 이상의 인코더, 하나 이상의 활성 함수, 하나 이상의 양자화기, 하나 이상의 병목, 및/또는 하나 이상의 디코더)과 유사할 수 있다.
동작 606에서, 트레이닝된 압축 모델이 초기 압축 모델을 트레이닝함으로써 발생될 수 있다. 트레이닝은 인코더 및/또는 디코더 성능을 향상시키기 위해 주어진 양자화 스텝 크기들에 기초하여 대응하는 재구성 손실들을 사용하는 것을 포함할 수 있다. 예를 들어, 트레이닝 데이터는 위에 설명된 것과 같이, 더 많은 양자화 스텝 크기들 및 더 큰 양자화 스텝 크기들 내로 점차적으로 도입될 수 있다(예를 들어, 제1 양자화 스텝 크기로 시작하고, 제1 양자화 스텝 크기 및 제2 양자화 스텝 크기를 사용하고, 여기서 제2 양자화 스텝 크기는 제1 양자화 스텝 크기보다 클 수 있는 등).
동작 608에서, 트레이닝된 압축 모델이 저장될 수 있다. 실시예들에서, 트레이닝된 압축 모델은 비일시적 전자 스토리지 내에 저장될 수 있다.
동작 610에서, 타깃 콘텐트 및 대응하는 양자화 스텝 크기가 획득될 수 있다.
동작 612에서, 압축 모델은 타깃 콘텐트 및 대응하는 양자화 스텝 크기에 적용될 수 있다. 압축 모델은 대응하는 양자화 스텝 크기에 기초하여 타깃 콘텐트를 인코딩하고, 인코딩된 타깃 콘텐트를 양자화하고, 디코딩가능한 타깃 콘텐트를 발생하기 위해 양자화된 타깃 콘텐트에 병목을 적용하고, 압축된 타깃 콘텐트를 발생하기 위해 디코딩가능한 타깃 콘텐트를 디코딩할 수 있다. 일부 실시예들에서, 병목은 양자화된 타깃 콘텐트에 대응하는 양자화 스텝 크기를 적용할 수 있다.
본원에 사용된 것과 같이, 용어 컴포넌트는 본원에 개시된 기술의 하나 이상의 실시예에 따라 수행될 수 있는 기능의 주어진 유닛을 설명할 수 있다. 본원에 사용된 것과 같이, 컴포넌트는 하드웨어, 소프트웨어, 또는 이들의 조합의 임의의 형태를 이용하여 구현될 수 있다. 예를 들어, 하나 이상의 프로세서들, 컨트롤러들, ASIC들, PLA들, PAL들, CPLD들, FPGA들, 논리 컴포넌트들, 소프트웨어 루틴들 또는 다른 메커니즘들이 컴포넌트를 구성하기 위해 구현될 수 있다. 구현에서, 본원에 설명된 다양한 컴포넌트들은 분리된 컴포넌트들 또는 기능들로서 구현될 수 있고 설명된 특징들은 하나 이상의 컴포넌트 간에 부분적으로 또는 전체적으로 공유될 수 있다. 바꾸어 말하면, 본 설명을 읽고 난 다음에 본 기술 분야의 통상의 기술자에게 명백한 바와 같이, 본원에 설명된 다양한 특징들 및 기능은 임의의 주어진 응용에서 구현될 수 있고 다양한 조합들 및 치환들 내에서 하나 이상의 별개의 또는 공유된 컴포넌트에서 구현될 수 있다. 본원에 사용된 것과 같이, 용어 엔진은 하나 이상의 특정한 작업을 수행하도록 구성되는 컴포넌트들의 무리를 설명할 수 있다. 기능의 다양한 특징들 또는 요소들이 별개의 컴포넌트들 또는 엔진들로서 개별적으로 설명되거나 청구될 수 있을지라도, 본 기술 분야의 통상의 기술자는 이들 특징 및 기능이 하나 이상의 공통 소프트웨어 및 하드웨어 요소들 간에 공유될 수 있다는 것을 이해할 것이고, 이러한 설명은 별개의 하드웨어 또는 소프트웨어 컴포넌트들이 이러한 특징들 또는 기능을 구현하기 위해 사용되는 것을 요구하지도 않고 의미하지도 않을 것이다.
상기 기술의 엔진들 및/또는 컴포넌트들이 소프트웨어를 사용하여 전체적으로 또는 부분적으로 구현되는 경우에, 한 실시예에서, 이들 소프트웨어 요소는 그와 관련하여 설명된 기능을 수행할 수 있는 컴퓨팅 또는 프로세싱 컴포넌트로 동작하도록 구현될 수 있다. 하나의 이러한 예시적인 컴퓨팅 컴포넌트가 도 7에 도시되어 있다. 다양한 실시예들이 이런 예시적인-컴퓨팅 컴포넌트(700)에 관하여 설명된다. 본 설명을 읽고 난 다음에, 다른 컴퓨팅 컴포넌트들 또는 아키텍처를 사용하여 기술을 어떻게 구현하는지가 본 기술 분야의 통상의 기술자에게 명백해질 것이다.
이제 도 7을 참조하면, 컴퓨팅 컴포넌트(700)는 예를 들어, 데스크탑, 랩탑, 및 노트북 컴퓨터들; 휴대형 컴퓨팅 디바이스들(PDA들, 스마트폰들, 이동 전화들, 팜탑들 등); 메인프레임들, 슈퍼컴퓨터들, 워크스테이션들, 또는 서버들; 또는 주어진 응용 또는 환경을 위해 바람직하거나 적절할 수 있는 것과 같은 임의의 다른 유형의 특수 목적 또는 범용 컴퓨팅 디바이스들 내에서 발견되는 컴퓨팅 또는 프로세싱 능력들을 나타낼 수 있다. 컴퓨팅 컴포넌트(700)는 또한 주어진 디바이스 내에 매립되고 혹은 그에 가용한 컴퓨팅 능력들을 나타낼 수 있다. 예를 들어, 컴퓨팅 컴포넌트는 예를 들어, 디지털 카메라들, 내비게이션 시스템들, 이동 전화들, 휴대용 컴퓨팅 디바이스들, 모뎀들, 라우터들, WAP들, 단말기들과 같은 다른 전자 디바이스들 및 프로세싱 능력의 일부 형태를 포함할 수 있는 다른 전자 디바이스들에서 발견될 수 있다.
컴퓨팅 컴포넌트(700)는 예를 들어, 프로세서(704)와 같은, 하나 이상의 프로세서들, 컨트롤러들, 제어 컴포넌트들, 또는 다른 프로세싱 디바이스들을 포함할 수 있다. 프로세서(704)는 예를 들어, 물리적 컴퓨터 프로세서, 마이크로프로세서, 컨트롤러, 다른 제어 논리와 같은 범용 또는 특수 목적 프로세싱 엔진을 사용하여 구현될 수 있다. 도시된 예에서, 프로세서(704)는 버스(702)에 접속되지만, 임의의 통신 매체가 컴퓨팅 컴포넌트(700)의 다른 컴포넌트들과의 상호작용을 용이하게 하거나 외부적으로 통신하기 위해 사용될 수 있다.
컴퓨팅 컴포넌트(700)는 또한 본원에서 간단히 메인 메모리(708)라고 하는, 하나 이상의 메모리 컴포넌트를 포함할 수 있다. 예를 들어, 바람직하게는 랜덤 액세스 메모리(RAM) 또는 다른 동적 메모리가 정보 및 프로세서(704)에 의해 실행될 명령어들을 저장하기 위해 사용될 수 있다. 메인 메모리(708)는 또한 프로세서(704)에 의해 실행될 명령어들의 실행 동안 임시 변수들 또는 다른 중간 정보를 저장하기 위해 사용될 수 있다. 컴퓨팅 컴포넌트(700)는 마찬가지로 프로세서(704)를 위한 정보 및 명령어들을 저장하기 위해 버스(702)에 결합된 리드 온리 메모리("ROM") 또는 다른 정적 저장 디바이스를 포함할 수 있다.
컴퓨팅 컴포넌트(700)는 또한 예를 들어, 매체 드라이브(712) 및 저장 유닛 인터페이스(720)를 포함할 수 있는, 하나 이상의 다양한 형태의 정보 저장 디바이스(710)를 포함할 수 있다. 매체 드라이브(712)는 고정된 또는 이동식 저장 매체(714)를 지지하는 드라이브 또는 다른 메커니즘을 포함할 수 있다. 예를 들어, 하드 디스크 드라이브, 플로피 디스크 드라이브, 자기 테이프 드라이브, 광학 디스크 드라이브, CD 또는 DVD 드라이브(R 또는 RW), 다른 이동식 또는 고정된 매체 드라이브가 제공될 수 있다. 따라서, 저장 매체(714)는 예를 들어, 매체 드라이브(712)에 의해 판독되고, 그에 기입되거나, 액세스되는, 비일시적 전자 스토리지, 하드 디스크, 플로피 디스크, 자기 테이프, 카트리지, 광학 디스크, CD 또는 DVD, 또는 다른 고정된 또는 이동식 매체를 포함할 수 있다. 이들 예가 예시하는 것과 같이, 저장 매체(714)는 그 안에 컴퓨터 소프트웨어 또는 데이터가 저장되어 있는 컴퓨터 사용가능 저장 매체를 포함할 수 있다.
대안적 실시예들에서, 정보 저장 메커니즘(710)은 컴퓨터 프로그램들 또는 다른 명령어들 또는 데이터가 컴퓨팅 컴포넌트(700) 내로 로드되게 하는 다른 유사한 수단들을 포함할 수 있다. 이러한 수단들은 예를 들어, 고정된 또는 이동식 저장 유닛(722) 및 인터페이스(720)를 포함할 수 있다. 이러한 저장 유닛들(722) 및 인터페이스들(720)의 예들은 프로그램 카트리지 및 카트리지 인터페이스, 이동식 메모리(예를 들어, 플래시 메모리 또는 다른 이동식 메모리 컴포넌트) 및 메모리 슬롯, PCMCIA 슬롯 및 카드, 및 소프트웨어 및 데이터가 저장 유닛(722)으로부터 컴퓨팅 컴포넌트(700)로 전달되게 하는 다른 고정된 또는 이동식 저장 유닛들(722) 및 인터페이스들(720)을 포함할 수 있다.
컴퓨팅 컴포넌트(700)는 또한 통신 인터페이스(724)를 포함할 수 있다. 통신 인터페이스(724)는 소프트웨어 및 데이터가 컴퓨팅 컴포넌트(700)와 외부 디바이스들 사이에 전달되게 하기 위해 사용될 수 있다. 통신 인터페이스(724)의 예들은 모뎀 또는 소프트모뎀, (이더넷, 네트워크 인터페이스 카드, WiMedia, IEEE 802.XX, 또는 다른 인터페이스와 같은) 네트워크 인터페이스, (예를 들어, USB 포트, IR 포트, RS232 포트, 블루투스® 인터페이스, 또는 다른 포트와 같은) 통신 포트, 또는 다른 통신 인터페이스를 포함할 수 있다. 통신 인터페이스(724)를 통해 전달되는 소프트웨어 및 데이터는 전형적으로 전자, (광학 신호를 포함하는) 전자기일 수 있는 신호들, 또는 주어진 통신 인터페이스(724)에 의해 교환될 수 있는 다른 신호들에 대해 수행될 수 있다. 이들 신호는 채널(728)을 통해 통신 인터페이스(724)에 제공될 수 있다. 이 채널(728)은 신호들을 이송할 수 있고 유선 또는 무선 통신 매체를 사용하여 구현될 수 있다. 채널의 일부 예들은 전화선, 셀룰러 링크, RF 링크, 광학 링크, 네트워크 인터페이스, 근거리 또는 광역 네트워크, 및 다른 유선 또는 무선 통신 채널들을 포함할 수 있다.
본 문서에서, 용어들 "컴퓨터 프로그램 매체" 및 "컴퓨터 사용가능 매체"는 일반적으로, 예를 들어, 메모리(708), 저장 유닛(720), 매체(714), 및 채널(728)과 같은 매체를 참조하기 위해 사용된다. 이들 및 다른 다양한 형태들의 컴퓨터 프로그램 매체 또는 컴퓨터 사용가능 매체는 하나 이상의 명령어의 하나 이상의 시퀀스를 실행을 위해 프로세싱 디바이스에 이송하는 것에 관련될 수 있다. 매체 상에 매립된 이러한 명령어들은 일반적으로 (컴퓨터 프로그램들 또는 다른 그룹핑들의 형태로 그룹핑될 수 있는) "컴퓨터 프로그램 코드" 또는 "컴퓨터 프로그램 제품"으로서 지칭된다. 실행될 때, 이러한 명령어들은 컴퓨팅 컴포넌트(700)가 본원에 논의된 것과 같은 개시된 기술의 특징들 또는 기능들을 수행하게 할 수 있다.
개시된 기술의 다양한 실시예들이 위에 설명되었지만, 그들은 단지 예로서 제시된 것이고, 제한되지 않는다는 것을 이해하여야 한다. 마찬가지로, 다양한 도면들이 개시된 기술 내에 포함될 수 있는 특징들 및 기능을 이해하는 데 도움을 주기 위해 이루어진, 개시된 기술을 위한 예시적인 아키텍처 또는 다른 구성을 도시할 수 있다. 개시된 기술은 도시된 예시적인 아키텍처들 또는 구성들로 제한되지 않지만, 원하는 특징들이 다양한 대안적인 아키텍처들 및 구성들을 사용하여 구현될 수 있다. 실제로, 대안적인 기능적, 논리적 또는 물리적 분할, 및 구성들이 본원에 개시된 기술의 원하는 특징들을 구현하기 위해 어떻게 구현되는지가 본 기술 분야의 통상의 기술자에게 명백할 것이다. 또한, 본원에 도시된 것들 이외의 것을 명명하는 다수의 상이한 구성 컴포넌트가 다양한 분할들에 적용될 수 있다. 부가적으로, 흐름도들, 동작 설명들, 및 방법 청구항들과 관련하여, 단계들이 본원에 제시되는 순서는 다양한 실시예들이 문맥이 달리 지시하지 않는다면 동일한 순서로 나열된 기능을 수행하기 위해 구현되는 것을 명령하지 않을 것이다.
개시된 기술이 다양한 예시적인 실시예들 및 구현들에 관하여 위에 설명되었지만, 개별 실시예들 중 하나 이상에서 설명된 다양한 특징들, 양태들, 및 기능은 그들이 설명된 특정한 실시예로 그들의 적용에서 제한되지 않고, 대신에 이러한 실시예들이 설명되든 아니든 간에 그리고 이러한 특징들이 설명된 실시예의 일부로서 제시되든 아니든 간에, 개시된 기술의 다른 실시예들 중 하나 이상에, 단독으로 또는 다양한 조합들에서 적용될 수 있다는 것을 이해하여야 한다. 그러므로, 본원에 개시된 기술의 폭 및 범위는 위에 설명된 예시적인 실시예들 중 어느 것에 의해서도 제한되지 않아야 한다.
본 문서에서 사용된 용어들 및 문구들, 및 그들의 변형들은 달리 명시적으로 표명되지 않는다면, 제한되는 것과 반대로 확장 가능한 것으로 해석되어야 한다. 전술한 것들의 예들로서: 용어 "포함하는"은 "제한 없이 포함하는" 것 등을 의미하는 것으로 읽혀져야 하고; 용어 "예"는 논의에서 아이템의 예시적인 예들을 제공하기 위해 사용되고, 그것의 리스트를 한정하거나 제한하는 것이 아니고; 단수 표현은 적어도 하나, 하나 이상 등을 의미하는 것으로 읽혀져야 하고; "통상적인", "전통적인", "정상적인", "표준의", "공지된", 및 유사한 의미의 용어들은 주어진 시간 기간까지 설명된 아이템 또는 주어진 시간에 현재 가용한 아이템으로 제한하는 것으로 해석되지 않아야 하고, 대신에 현재 또는 미래의 어느 때에 가용하거나 공지될 수 있는 통상적인, 전통적인, 정상적인, 또는 표준의 기술들을 포함하는 것으로 읽혀져야 한다. 마찬가지로, 본 문서가 본 기술 분야의 통상의 기술자에게 명백하거나 공지된 기술들을 참조하는 경우에, 이러한 기술들은 현재 또는 미래의 어느 때에 본 기술 분야의 통상의 기술자에게 명백하거나 공지된 것들을 포함한다.
일부 예들에서 "하나 이상", "적어도", "지만 제한되지 않는", 또는 다른 유사한 문구들과 같은 넓히는 단어들 또는 문구들의 존재는 이러한 넓히는 문구들이 존재하지 않는 경우의 예들에서 의도되거나 요구되는 좁은 경우를 의미하는 것으로 읽혀지지 않을 것이다. 용어 "컴포넌트"의 사용은 컴포넌트의 일부로서 설명되거나 청구된 컴포넌트들 또는 기능이 모두 공통 패키지 내에 구성되는 것을 의미하지 않는다. 실제로, 제어 논리이든 또는 다른 컴포넌트들이든 간에, 컴포넌트의 다양한 컴포넌트들의 임의의 것 또는 모두는 단일 패키지 내에 조합되거나 별개로 유지될 수 있고 또한 다수의 그룹핑 또는 패키지 내에 또는 다수의 위치에 걸쳐 분포될 수 있다.
부가적으로, 본원에 제시된 다양한 실시예들이 예시적인 블록도들, 플로우 차트들, 및 다른 예시들에 대해서 설명되었다. 본 문서를 읽고 난 후에 본 기술 분야의 통상의 기술자에게 명백하게 되는 것과 같이, 예시된 실시예들 및 그들의 다양한 대안들이 도시된 예들로 한정하지 않고 구현될 수 있다. 예를 들어, 블록도들 및 그들의 수반되는 설명은 특정한 아키텍처 또는 구성을 지시하는 것으로 해석되지 않아야 한다.

Claims (20)

  1. 픽셀들의 타깃 세트를 예측하는, 컴퓨터에 의해 구현되는 방법으로서, 상기 방법은 비일시적 전자 스토리지 및 하나 이상의 물리적 컴퓨터 프로세서를 포함하는 컴퓨터 시스템에서 구현되고,
    상기 비일시적 전자 스토리지로부터, 예측될 상기 픽셀들의 타깃 세트를 포함하는 타깃 콘텐트(target content)를 획득하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 평가된 세트를 발생하기 위해 상기 픽셀들의 타깃 세트를 콘볼빙(convolving)하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 픽셀들의 타깃 세트에 상기 타깃 콘텐트 내의 픽셀들의 제2 세트를 매칭하는 단계 - 상기 픽셀들의 제2 세트는 상기 픽셀들의 타깃 세트로부터의 거리 내에 있음 -;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 픽셀들의 평가된 세트 및 상기 픽셀들의 제2 세트를 인코딩하는 단계; 및
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 픽셀들의 인코딩된 평가된 세트 및 픽셀들의 인코딩된 제2 세트에 디코더를 적용함으로써 픽셀들의 정제된 세트를 발생하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  2. 제1항에 있어서,
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 픽셀들의 정제된 세트와 상기 픽셀들의 타깃 세트 사이의 잔차를 발생하는 단계를 추가로 포함하는, 컴퓨터에 의해 구현되는 방법.
  3. 삭제
  4. 제1항에 있어서, 상기 픽셀들의 타깃 세트에 상기 픽셀들의 제2 세트를 매칭하는 단계는
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 픽셀들의 타깃 세트로부터 상기 픽셀들의 제2 세트까지의 변위에 대응하는 변위 데이터를 발생하기 위해 상기 픽셀들의 타깃 세트에 콘볼루션을 적용하는 단계를 포함하는, 컴퓨터에 의해 구현되는 방법.
  5. 제1항에 있어서, 상기 픽셀들의 타깃 세트를 콘볼빙하는 단계는 상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 픽셀들의 평가된 세트의 개별 픽셀들에 대한 대응하는 가중치들을 발생하는 단계를 추가로 포함하는, 컴퓨터에 의해 구현되는 방법.
  6. 제1항에 있어서, 보충 정보가 상기 픽셀들의 타깃 세트에 연결되고(concatenated), 상기 보충 정보는 상기 픽셀들의 타깃 세트에 대해 적용된 마스크, 상기 픽셀들의 타깃 세트의 색 값들, 및 상기 픽셀들의 타깃 세트 내의 윤곽들 중 하나 이상을 포함하는, 컴퓨터에 의해 구현되는 방법.
  7. 제1항에 있어서, 상기 픽셀들의 평가된 세트 및 상기 픽셀들의 제2 세트를 인코딩하는 단계는 상기 픽셀들의 평가된 세트의 위치 내에 상기 픽셀들의 제2 세트를 배치하는 단계를 포함하는, 컴퓨터에 의해 구현되는 방법.
  8. 제1항에 있어서, 상기 픽셀들의 타깃 세트로부터 상기 픽셀들의 제2 세트까지의 거리는 16비트 미만의 대응하는 변위 데이터를 발생하는 것에 기초하는, 컴퓨터에 의해 구현되는 방법.
  9. 타깃 콘텐트를 인코딩하는, 컴퓨터에 의해 구현되는 방법으로서, 상기 방법은 비일시적 전자 스토리지 및 하나 이상의 물리적 컴퓨터 프로세서를 포함하는 컴퓨터 시스템에서 구현되고,
    상기 비일시적 전자 스토리지로부터, 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 획득하는 단계;
    상기 비일시적 전자 스토리지로부터, 트레이닝된 압축 모델을 획득하는 단계 - 상기 트레이닝된 압축 모델은 트레이닝 데이터를 사용하여 초기 압축 모델을 트레이닝함으로써 조절되고, 상기 트레이닝 데이터는 (ⅰ) 트레이닝 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기, 및 (ⅱ) 주어진 양자화 스텝 크기를 사용하여 개별 트레이닝 콘텐트와 대응하는 양자화된 트레이닝 콘텐트 사이의 차이들에 기초하는 재구성 손실들을 포함함 -; 및
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 상기 타깃 콘텐트에 상기 트레이닝된 압축 모델을 적용하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  10. 제9항에 있어서, 상기 트레이닝된 압축 모델을 적용하는 단계는
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 타깃 콘텐트를 인코딩하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 대응하는 양자화 스텝 크기를 사용하여 인코딩된 타깃 콘텐트를 양자화하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 디코딩가능한 타깃 콘텐트를 발생하기 위해, 양자화 및 인코딩된 타깃 콘텐트에 병목(bottleneck)을 적용하는 단계; 및
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 압축된 타깃 콘텐트를 발생하기 위해 상기 디코딩가능한 타깃 콘텐트를 디코딩하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  11. 제10항에 있어서, 상기 양자화 및 인코딩된 타깃 콘텐트에 병목을 적용하는 단계는
    Figure 112021020975178-pat00053

    이도록 상기 양자화 및 인코딩된 타깃 콘텐트를 수정하는 단계를 포함하고,
    Figure 112021020975178-pat00054
    는 상기 디코딩가능한 타깃 콘텐트를 나타내고, y는 상기 타깃 콘텐트를 나타내고, U는 균일한 잡음을 나타내고, s는 상기 대응하는 양자화 스텝 크기를 나타내는, 컴퓨터에 의해 구현되는 방법.
  12. 제9항에 있어서, 상기 초기 압축 모델을 트레이닝하는 단계는
    a) 상기 하나 이상의 물리적 컴퓨터 프로세서로, 제1 양자화 스텝 크기를 사용하여 상기 트레이닝 콘텐트의 제1 서브세트를 적용하는 단계;
    b) 상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 제1 양자화 스텝 크기 및 제2 양자화 스텝 크기를 사용하여 상기 트레이닝 콘텐트의 제2 서브세트를 적용하는 단계; 및
    c) 상기 하나 이상의 물리적 컴퓨터 프로세서로, 최대 양자화 스텝 크기가 도달될 때까지 추가의 양자화 스텝 크기들을 추가함으로써 b)를 반복하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  13. 제9항에 있어서, 상기 대응하는 양자화 스텝 크기는 상기 트레이닝된 압축 모델을 적용하기 위해 상기 타깃 콘텐트에 연결되는, 컴퓨터에 의해 구현되는 방법.
  14. 제9항에 있어서, 상기 타깃 콘텐트는 영상, 비디오 프레임, 및 상기 타깃 콘텐트에 대응하는 잔차 중 하나 이상을 포함하는, 컴퓨터에 의해 구현되는 방법.
  15. 제10항에 있어서, 상기 타깃 콘텐트를 양자화하는 단계는
    Figure 112020004963019-pat00055
    로 정의되고, y는 상기 인코딩된 타깃 콘텐트를 나타내고, s는 대응하는 양자화 스텝 크기를 나타내고,
    Figure 112020004963019-pat00056
    는 값들을 가장 가까운 정수로 맵핑하는 라운딩 함수를 나타내는, 컴퓨터에 의해 구현되는 방법.
  16. 제9항에 있어서, 상기 재구성 손실들은
    Figure 112020004963019-pat00057
    로 정의되고,
    Figure 112020004963019-pat00058
    는 레이트-왜곡 손실 값을 나타내고,
    Figure 112020004963019-pat00059
    는 주어진 타깃 콘텐트 및 대응하는 양자화된 타깃 콘텐트에 기초한 재구성 손실 값을 나타내고,
    Figure 112020004963019-pat00060
    는 가중치를 나타내고,
    Figure 112020004963019-pat00061
    은 엔트로피 값을 나타내고,
    Figure 112020004963019-pat00062
    는 상기 양자화된 타깃 콘텐트를 나타내는, 컴퓨터에 의해 구현되는 방법.
  17. 타깃 콘텐트의 양자화를 향상시키는 압축 모델을 트레이닝하는, 컴퓨터에 의해 구현되는 방법으로서, 상기 방법은 컴퓨터 시스템에서 구현되고, 상기 컴퓨터 시스템은 하나 이상의 물리적 컴퓨터 프로세서 및 비일시적 전자 스토리지를 포함하고,
    상기 비일시적 전자 스토리지로부터, 트레이닝 데이터를 획득하는 단계 - 상기 트레이닝 데이터는 (ⅰ) 개별 타깃 콘텐트에 대응하는 다수의 상이한 양자화 스텝 크기, 및 (ⅱ) 주어진 양자화 스텝 크기를 사용하여 상기 개별 타깃 콘텐트와 대응하는 양자화된 타깃 콘텐트 사이의 차이들에 기초하는 재구성 손실들을 포함함 -; 및
    상기 비일시적 전자 스토리지로부터, 초기 압축 모델을 획득하는 단계;
    상기 트레이닝 데이터를 사용하는 상기 하나 이상의 물리적 컴퓨터 프로세서 상에서, 상기 초기 압축 모델을 트레이닝함으로써 트레이닝된 압축 모델을 발생하는 단계; 및
    상기 비일시적 전자 스토리지 내에, 상기 비일시적 전자 스토리지 내의 상기 트레이닝된 압축 모델을 저장하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  18. 제17항에 있어서,
    상기 비일시적 전자 스토리지로부터, 타깃 콘텐트 및 대응하는 양자화 스텝 크기를 획득하는 단계; 및
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 압축된 타깃 콘텐트를 발생하기 위해 상기 타깃 콘텐트 및 상기 대응하는 양자화 스텝 크기에 상기 트레이닝된 압축 모델을 적용하는 단계
    를 추가로 포함하는, 컴퓨터에 의해 구현되는 방법.
  19. 제18항에 있어서, 상기 트레이닝된 압축 모델을 적용하는 단계는
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 타깃 콘텐트를 인코딩하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 양자화된 타깃 콘텐트를 발생하기 위해 상기 대응하는 양자화 스텝 크기를 사용하여 상기 타깃 콘텐트를 양자화하는 단계;
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 디코딩가능한 타깃 콘텐트를 발생하기 위해 상기 양자화된 타깃 콘텐트에 병목을 적용하는 단계; 및
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 압축된 타깃 콘텐트를 발생하기 위해 상기 디코딩가능한 타깃 콘텐트를 디코딩하는 단계
    를 포함하는, 컴퓨터에 의해 구현되는 방법.
  20. 제17항에 있어서,
    상기 하나 이상의 물리적 컴퓨터 프로세서로, 상기 타깃 콘텐트에 대응하는 잔차를 인코딩하는 단계를 추가로 포함하는, 컴퓨터에 의해 구현되는 방법.
KR1020200005757A 2019-01-16 2020-01-16 다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들 KR102299958B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/249,861 US11335034B2 (en) 2019-01-16 2019-01-16 Systems and methods for image compression at multiple, different bitrates
US16/249,861 2019-01-16

Publications (2)

Publication Number Publication Date
KR20200089635A KR20200089635A (ko) 2020-07-27
KR102299958B1 true KR102299958B1 (ko) 2021-09-10

Family

ID=69177002

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200005757A KR102299958B1 (ko) 2019-01-16 2020-01-16 다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들

Country Status (3)

Country Link
US (2) US11335034B2 (ko)
EP (1) EP3683770A1 (ko)
KR (1) KR102299958B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11475275B2 (en) * 2019-07-18 2022-10-18 International Business Machines Corporation Recurrent autoencoder for chromatin 3D structure prediction
US11451480B2 (en) * 2020-03-31 2022-09-20 Micron Technology, Inc. Lightweight artificial intelligence layer to control the transfer of big data
CN113965750B (zh) * 2020-07-20 2023-08-01 武汉Tcl集团工业研究院有限公司 一种图像编码方法、存储介质及终端设备
CN112232368B (zh) * 2020-09-10 2023-09-01 浙江大华技术股份有限公司 目标识别模型训练方法、目标识别方法及其相关装置
US20220345717A1 (en) * 2021-04-16 2022-10-27 Tencent America LLC Method and apparatus for dynamic learning rates of substitution in neural image compression
US11764806B2 (en) 2021-09-06 2023-09-19 Nec Corporation Data compression system and method of using
CN114663536B (zh) * 2022-02-08 2022-12-06 中国科学院自动化研究所 一种图像压缩方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286521A1 (en) * 2009-01-28 2011-11-24 France Telecom Method and device for encoding an image using a prediction mask decoding method and device and corresponding signals and computer programs

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8503536B2 (en) 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
JP2010514246A (ja) 2006-12-18 2010-04-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像圧縮及び伸張
JP7012642B2 (ja) * 2015-11-09 2022-01-28 ヴァーシテック・リミテッド アーチファクトを意識したビュー合成のための補助データ
US9943225B1 (en) * 2016-09-23 2018-04-17 International Business Machines Corporation Early prediction of age related macular degeneration by image reconstruction
CN109964238A (zh) * 2016-09-30 2019-07-02 渊慧科技有限公司 使用神经网络生成视频帧
US10748062B2 (en) * 2016-12-15 2020-08-18 WaveOne Inc. Deep learning based adaptive arithmetic coding and codelength regularization
US10755428B2 (en) * 2017-04-17 2020-08-25 The United States Of America, As Represented By The Secretary Of The Navy Apparatuses and methods for machine vision system including creation of a point cloud model and/or three dimensional model
EP3649618A1 (en) * 2017-07-03 2020-05-13 Artomatix Ltd. Systems and methods for providing non-parametric texture synthesis of arbitrary shape and/or material data in a unified framework
US10861143B2 (en) * 2017-09-27 2020-12-08 Korea Advanced Institute Of Science And Technology Method and apparatus for reconstructing hyperspectral image using artificial intelligence
US11593658B2 (en) * 2017-10-20 2023-02-28 Shanghai Cambricon Information Technology Co., Ltd Processing method and device
US10832383B2 (en) 2018-04-30 2020-11-10 Disney Enterprises, Inc. Systems and methods for distortion removal at multiple quality levels
US11361456B2 (en) * 2018-06-29 2022-06-14 Baidu Usa Llc Systems and methods for depth estimation via affinity learned with convolutional spatial propagation networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110286521A1 (en) * 2009-01-28 2011-11-24 France Telecom Method and device for encoding an image using a prediction mask decoding method and device and corresponding signals and computer programs

Also Published As

Publication number Publication date
US11983906B2 (en) 2024-05-14
US11335034B2 (en) 2022-05-17
US20220215595A1 (en) 2022-07-07
KR20200089635A (ko) 2020-07-27
US20200226797A1 (en) 2020-07-16
EP3683770A1 (en) 2020-07-22

Similar Documents

Publication Publication Date Title
KR102299958B1 (ko) 다수의 상이한 비트레이트로 영상 압축을 하기 위한 시스템들 및 방법들
US11924445B2 (en) Instance-adaptive image and video compression using machine learning systems
US10834425B2 (en) Image compression/decompression method and device, and image processing system
CA2831967C (en) Image compression using sub-resolution images
EP3934254A1 (en) Encoding and decoding of extracted features for use with machines
CN108028941B (zh) 用于通过超像素编码和解码数字图像的方法和装置
US11544606B2 (en) Machine learning based video compression
CN111641832A (zh) 编码方法、解码方法、装置、电子设备及存储介质
CN104581177B (zh) 一种结合块匹配和串匹配的图像压缩方法和装置
US10972749B2 (en) Systems and methods for reconstructing frames
CN111970509B (zh) 一种视频图像的处理方法、装置与系统
JP7168896B2 (ja) 画像符号化方法、及び画像復号方法
KR102138650B1 (ko) 디지털 이미지의 블록을 처리하는 시스템 및 방법
KR20240054975A (ko) 기계 학습 시스템들을 사용하여 네트워크 파라미터 서브공간에서의 인스턴스 적응적 이미지 및 비디오 압축
US20230106778A1 (en) Quantization for Neural Networks
CN116965029A (zh) 使用卷积神经网络对图像进行译码的装置和方法
JP2024520151A (ja) 特徴データ符号化および復号方法および装置
JP2003188733A (ja) 符号化方法及び装置
KR102113904B1 (ko) 보간을 이용한 연산 방법, 인코더, 및 디코더
US20220392117A1 (en) Data compression and decompression system and method thereof
WO2023225808A1 (en) Learned image compress ion and decompression using long and short attention module
Zhuang et al. A robustness and low bit-rate image compression network for underwater acoustic communication
CN114882133B (zh) 一种图像编解码方法、系统、设备及介质
WO2022229495A1 (en) A method, an apparatus and a computer program product for video encoding and video decoding
CN118020306A (zh) 视频编解码方法、编码器、解码器及存储介质

Legal Events

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