KR20240054313A - 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품 - Google Patents

이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품 Download PDF

Info

Publication number
KR20240054313A
KR20240054313A KR1020247009750A KR20247009750A KR20240054313A KR 20240054313 A KR20240054313 A KR 20240054313A KR 1020247009750 A KR1020247009750 A KR 1020247009750A KR 20247009750 A KR20247009750 A KR 20247009750A KR 20240054313 A KR20240054313 A KR 20240054313A
Authority
KR
South Korea
Prior art keywords
image
filtered
classification information
encoding
value
Prior art date
Application number
KR1020247009750A
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 KR20240054313A publication Critical patent/KR20240054313A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • 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
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • 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
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Landscapes

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

Abstract

본 출원은 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품을 제공하고, 클라우드 기술, 인공 지능, 지능형 교통, 보조 운전, 비디오 등 각 시나리오에 적용될 수 있고, 상기 이미지 필터링 방법은, 필터링될 이미지의 인코딩 정보를 결정하는 단계 - 인코딩 정보는 분류 정보를 포함하고, 상기 분류 정보는 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시하기 위한 것이고; 필터링될 이미지 및 분류 정보를 필터링 모델에 입력하여, 분류 정보에 기반하여 필터링될 이미지에 대해 필터링을 수행하여, 필터링된 이미지를 얻는 단계를 포함한다.

Description

이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품
관련 출원의 상호 참조
본 출원은 출원 번호가 202210126411.X이고, 출원일이 2022년 2월 10일인 중국 특허 출원에 기반하여 제출하였고, 상기 중국 특허 출원의 우선권을 주장하는 바, 상기 중국 특허 출원의 모든 내용은 참조로서 본 출원에 인용된다.
본 출원의 실시예는 이미지 처리 기술분야에 관한 것으로서, 특히 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품에 관한 것이다.
관련 기술의 루프 필터에는 디블록킹 필터(deblocking filter, DBF), 샘플 적응적 오프셋(Sample Adaptive Offset, SAO) 및 적응적 루프 필터(Adaptive Loop Filter, ALF)이 존재하고, 주로 재구축된 이미지에 대해 필터링을 수행하여, 블록 효과, 링잉 효과 등을 약화시킴으로써, 재구축된 이미지의 품질을 향상시키되, 이상적인 경우는 필터를 통해 재구축된 이미지를 원본 이미지로 복구하는 것이다. 관련 기술의 필터의 많은 필터 계수가 인공적으로 설계되기 때문에, 최적화의 여지가 아주 많이 존재한다. 이미지 처리 측면에서의 딥 러닝 도구의 탁월한 표현을 감안하여, 딥 러닝 기반 루프 필터가 루프 필터 모듈에 적용된다. 그러나, 관련 기술의 딥 러닝 기반 루프 필터는 여전히 성능 최적화에서의 결함이 존재하므로, 필터의 성능을 추가로 향상시켜야 한다.
본 출원의 실시예는 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품을 제공하여, 모델 파라미터 저장 비용을 저하시키는 동시에, 이미지 필터링 효과를 향상시킨다.
본 출원의 실시예는 이미지 필터링 방법을 제공하고,
필터링될 이미지의 인코딩 정보를 결정하는 단계 - 상기 인코딩 정보는 상기 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시함 - ; 및
상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하여, 상기 필터링 모델로 하여금 상기 분류 정보에 기반하여 상기 필터링될 이미지에 대해 필터링을 수행하도록 하여, 필터링된 이미지를 얻는 단계를 포함한다.
본 출원의 실시예는 이미지 필터링 장치를 제공하고,
필터링될 이미지의 인코딩 정보를 결정하기 위한 결정 유닛 - 상기 인코딩 정보는 상기 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시함 -; 및
상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하여, 상기 필터링 모델로 하여금 상기 분류 정보에 기반하여 상기 필터링될 이미지에 대해 필터링을 수행하도록 하여, 필터링된 이미지를 얻기 위한 필터링 유닛을 포함한다.
본 출원의 실시예는 전자 기기를 제공하고, 프로세서 및 메모리를 포함하며, 상기 메모리는 컴퓨터 프로그램을 저장하기 위한 것이고, 상기 프로세서는 상기 메모리에 저장된 컴퓨터 프로그램을 호출하고 작동하여, 상기 이미지 필터링 방법을 실행하기 위한 것이다.
본 출원의 실시예는 컴퓨터 프로그램을 저장하기 위한 컴퓨터 판독 가능한 저장 매체를 제공하고, 상기 컴퓨터 프로그램은 전자 기기로 하여금 이미지 필터링 방법을 실행하도록 한다.
본 출원의 실시예는 칩을 제공하고, 상기 칩은 메모리로부터 컴퓨터 프로그램을 호출하고 작동하여, 상기 칩이 장착된 전자 기기로 하여금 이미지 필터링 방법을 실행하도록 하기 위한 프로세서를 포함한다.
본 출원의 실시예는 컴퓨터 프로그램 명령어가 포함된 컴퓨터 프로그램 제품을 포함하고, 상기 컴퓨터 프로그램 명령어가 전자 기기에서 작동되는 경우, 상기 전자 기기로 하여금 이미지 필터링 방법을 실행하도록 한다.
본 출원의 실시예는 컴퓨터 프로그램을 제공하고, 상기 컴퓨터 프로그램이 전자 기기에서 작동되는 경우, 상기 전자 기기로 하여금 이미지 필터링 방법을 실행하도록 한다.
본 출원의 실시예의 필터링 모델은 인트라 프레임 인코딩 모드에서의 필터링될 이미지에 대해 필터링을 수행하는 것을 구현할 수 있고, 인터 프레임 인코딩 모드에서의 필터링될 이미지에 대해 필터링을 수행하는 것을 구현할 수도 있으며, 이는 상이한 모드에서의 필터링될 이미지에 대한 범용 필터링 모델에 해당되며, 상이한 모드에 대해 대응되는 필터링 모델을 각각 구축하는 것에 비해, 모델 파라미터의 저장 공간 점유율을 현저하게 저하시키고, 모델 파라미터 저장 비용이 저렴하며; 또한, 필터링 모델을 통해 분류 정보를 결합하여, 필터링될 이미지에 대해 차별화 필터링을 수행함으로써, 상이한 모드의 필터링될 이미지에 적용될 수 있고, 필터링될 이미지의 필터링 효과를 향상시킨다.
본 발명의 실시예의 기술방안을 더욱 상세하게 설명하기 위해, 아래에서는 실시예에 대한 설명에서 사용하게 될 도면을 간단하게 소개하며, 바람직하게는, 아래 설명에서의 도면은 다만 본 발명의 일부 실시예일 뿐이며, 본 분야의 통상의 기술자는 창조성 노동을 부여하지 않는 전제 하에서, 또한 이러한 도면에 따라 다른 도면을 얻을 수 있다.
도 1은 본 출원의 실시예의 비디오 인코딩 및 디코딩 시스템의 예시적 블록도이다.
도 2는 본 출원의 실시예에서 제공한 비디오 인코더의 예시적 블록도이다.
도 3은 본 출원의 실시예에서 제공한 비디오 디코더의 예시적 블록도이다.
도 4는 본 출원의 실시예에서 제공한 이미지 필터링 방법의 흐름도이다.
도 5a는 본 출원의 실시예의 응용 시나리오 예시도이다.
도 5b는 본 출원의 실시예의 응용 시나리오 예시도이다.
도 5c는 본 출원의 실시예의 응용 시나리오 예시도이다.
도 6a 내지 도 6c는 이미지 분할 예시도이다.
도 7a는 본 출원의 실시예의 필터링 방안 예시도이다.
도 7b는 본 출원의 실시예의 필터링 방안 예시도이다.
도 7c는 본 출원의 실시예의 필터링 방안 예시도이다.
도 8a는 본 출원의 실시예의 잔차 블록 예시도이다.
도 8b는 본 출원의 실시예의 잔차 블록 예시도이다.
도 8c는 본 출원의 실시예의 잔차 블록 예시도이다.
도 8d는 본 출원의 실시예의 잔차 블록 예시도이다.
도 9는 본 출원의 실시예의 모델 훈련 예시도이다.
도 10은 본 출원의 실시예에서 제공한 이미지 필터링 장치의 구조 예시도이다.
도 11은 본 출원의 실시예에서 제공한 전자 기기의 예시적 블록도이다.
아래는 본 발명의 실시예에서의 첨부 도면과 결합하여, 본 발명의 실시예에 따른 기술적 해결수단을 명확하고 완전하게 설명하되, 설명된 실시예는 다만 본 발명의 일부 실시예일 뿐 전체 실시예가 아님은 자명하다. 본 발명에서의 실시예에 기반하여, 본 분야 기술자가 창조성 노동을 부여하지 않은 전제 하에서 얻은 다른 실시예는 전부 본 발명의 청구범위에 속한다.
설명해야 할 것은 본 발명의 명세서 및 청구범위 및 상기 첨부 도면에서의 용어 “제1”, “제2” 등은 유사한 대상을 구별하기 위해 사용되며, 특정 순서 또는 선후 순서를 설명하기 위해 사용되는 것은 아니다. 이해해야 할 것은, 이러한 방식으로 사용되는 데이터는 적절한 상황에서 서로 교환될 수 있으므로, 여기에서 설명된 본 발명의 실시예가 여기에 도시되거나 설명된 것과 다른 순서로 실시될 수 있다. 또한. "포함하는" 및 "구비하는"이라는 용어와 그들의 임의의 변형은, 비배타적인 포함을 포함하기 위한 것이고, 예를 들어 일련의 단계 또는 유닛을 포함하는 과정, 방법, 시스템, 제품 또는 기기는 반드시 명백하게 나열된 단계들 또는 유닛으로만 한정되지 않으며, 명백하게 나열되지 않거나 이러한 과정, 방법, 제품 또는 기기에 대해 고유한 다른 단계 또는 유닛을 포함할 수 있다.
설명해야 할 것은, 아래에 전술된 “및/또는”은 적어도 하나를 의미하며, 예를 들어 A 및/또는 B는, A 및 B 중의 적어도 하나를 대표한다.
본 출원의 실시예를 쉽게 이해하기 위해, 먼저 본 출원의 실시예와 관련된 관련 개념을 다음과 같이 간략하게 소개한다.
인공 지능(Artificial Intelligence, AI)은 디지털 컴퓨터 또는 디저털 컴퓨터에 의해 제어되는 기계를 이용하여 인간의 지능을 시뮬레이션, 연장 및 확장하고, 환경을 감지하며, 지식을 획득하고, 지식을 사용하여 최적의 결과를 획득하는 이론, 방법, 기술 및 응용 시스템이다. 다시 말해, 인공 지능은 컴퓨터 과학의 종합 기술로서, 지능의 본질을 이해하고, 인간의 지능과 유사한 방식으로 반응할 수 있는 새로운 지능형 기계를 생산하려고 한다. 인공 지능은 기계가 감지, 추론 및 의사 결정 기능을 구비하도록 하기 위해, 다양한 스마트 기계의 설계 원리와 구현 방법을 연구하는 것이다..
인공지능 기술은 하드웨어 수준의 기술과 소프트웨어 수준의 기술을 모두 포함하는, 광범위한 분야에 관한 종합적인 학문이다. 인공 지능의 기본 기술에는 일반적으로 센서, 특수 인공 지능 칩, 클라우드 컴퓨팅, 분산 스토리지, 빅 데이터 처리 기술, 운영/인터랙션 시스템, 메카트로닉스 등의 기술이 포함된다. 인공 지능 소프트웨어 기술은 주로 컴퓨터 비전 기술, 음성 처리 기술, 자연 언어 처리 기술 및 기계 학습/딥 러닝과 같은 몇 가지 주요 방향을 포함한다.
기계 러닝(Machine Learning, Ml)은 확률론, 통계학, 근사론, 볼록 분석, 알고리즘 복잡성 이론과 같은 여러 분야에 관한 다분야 교차 학문이다. 컴퓨터가 인간의 학습 행위를 시뮬레이션하거나 구현하여 새로운 지식이나 기술을 얻고, 기존 지식 구조를 재구성하여 성능을 지속적으로 향상시키는 방법을 전문적으로 연구한다. 기계 러닝은 인공 지능의 핵심이며, 컴퓨터가 지능을 구비하도록 하는 근본적인 경로이며, 인공 지능의 다양한 분야에 널리 적용된다. 기계 러닝 및 딥 러닝은 일반적으로 인공 신경망, 신뢰 네트워크, 강화 러닝, 전이 러닝, 귀납 러닝, 스타일 티칭 러닝과 같은 기술을 포함한다.
본 출원의 실시예는 이미지 인코딩 및 디코딩 분야, 비디오 인코딩 및 디코딩 분야, 하드웨어 비디오 인코딩 및 디코딩 분야, 전용 회로 비디오 인코딩 및 디코딩 분야, 실시간 비디오 인코딩 및 디코딩 분야 등에 적용될 수 있다. 예를 들어, 본 출원의 실시예의 방안은 오디오 비디오 코딩 표준(Audio Video coding Standard, AVS)과 결합될 수 있으며, 예를 들어, H.264/오디오 비디오 코딩(Audio Video Coding, AVC) 표준, H.265/고효율 비디오 코딩(High Efficiency Video Coding, HEVC) 표준 및 H.266/다기능 비디오 코딩(Versatile Video Coding, VVC) 표준과 결합될 수 있다. 또는, 본 출원의 실시예의 방안은 다른 독점 또는 산업 표준과 결합하여 작동될 수 있으며, 상기 표준은 ITU-TH.261, ISO/IECMPEG-1Visual, ITU-TH.262 또는 ISO/IECMPEG-2Visual, ITU-TH.263, ISO/IECMPEG-4Visual, ITU-TH.264(ISO/IECMPEG-4AVC으로도 지칭됨)을 포함하고, 스케이러블 비디오 코딩(Scalable Video Coding, SVC) 및 멀티뷰 비디오 코딩(Multiview Video Coding, MVC) 확장을 포함한다. 이해해야 할 것은, 본 출원의 실시예의 기술은 특정된 인코딩 및 디코딩 표준 또는 기술에 한정되지 않는다.
용이하게 이해하기 위해, 먼저 도 1과 결합하여 본 출원의 실시예의 비디오 인코딩 및 디코딩 시스템을 소개한다.
도 1은 본 출원의 실시예의 비디오 인코딩 및 디코딩 시스템의 예시적 블록도이다. 설명해야 할 것은, 도 1은 다만 예로서, 본 출원의 실시예의 포인트 비디오 인코딩 및 디코딩 시스템은 도 1에 도시된 바를 포함하지만 이에 한정되지 않는다. 도 1에 도시된 바와 같이, 상기 비디오 인코딩 및 디코딩 시스템(100)은 인코딩 기기(110) 및 디코딩 기기(120)를 포함한다. 여기서 인코딩 기기는 비디오 데이터에 대해 인코딩(압축으로 이해할 수 있음)을 수행하여 코드 스트림을 생성하고, 코드 스트림을 디코딩 기기에 전송하기 위한 것이다. 디코딩 기기는 인코딩 기기가 인코딩으로 생성한 코드 스트림에 대해 디코딩을 수행하여, 디코딩된 비디오 데이터를 얻는다.
본 출원의 실시예의 인코딩 기기(110)는 비디오 인코딩 기능을 구비한 기기로 이해될 수 있고, 디코딩 기기(120)는 비디오 디코딩 기능을 구비한 기기로 이해될 수 있으며, 즉 본 출원의 실시예에서의 인코딩 기기(110) 및 디코딩 기기(120)는 더 광범위한 장치를 포함하고, 예를 들어, 스마트폰, 데스크톱 컴퓨터, 모바일 컴퓨팅 장치, 노트북(예를 들어, 랩톱) 컴퓨터, 태블릿 컴퓨터, 셋톱박스, TV, 카메라, 디스플레이 장치, 디지털 미디어 플레이어, 비디오 게임 콘솔, 차량용 컴퓨터 등을 포함한다.
일부 실시예에 있어서, 인코딩 기기(110)는 채널(130)을 통해 인코딩된 비디오 데이터(예를 들어 코드 스트림)를 디코딩 기기(120)에 전송한다. 채널(130)은 인코딩된 비디오 데이터를 인코딩 기기(110)로부터 디코딩 기기(120)로 전송 가능한 하나 또는 복수 개의 미디어 및 장치 중 적어도 하나를 포함할 수 있다.
일 예에 있어서, 채널(130)은 인코딩 기기(110)로 하여금 실시간으로 인코딩된 비디오 데이터를 디코딩 기기(120)로 직접 발송하는 하나 또는 복수 개의 통신 미디어를 포함한다. 상기 예에 있어서, 인코딩 기기(110)는 통신 표준에 따라 인코딩된 비디오 데이터를 변조하고, 변조된 비디오 데이터를 디코딩 기기(120)에 발송할 수 있다. 여기서 통신 미디어는 무선 주파수 스펙트럼과 같은 무선 통신 미디어를 포함하고, 일부 실시예에 있어서, 미디어는 또한 유선 통신 미디어를 포함할 수 있고, 예를 들어 하나 또는 복수 개의 물리 전송 라인을 포함할 수 있다.
다른 일 예에 있어서, 채널(130)은 컴퓨터 판독 가능한 저장 매체를 포함하고, 상기 컴퓨터 판독 가능한 저장 매체는 인코딩 기기(110)가 인코딩한 이후의 비디오 데이터를 저장할 수 있다. 컴퓨터 판독 가능한 저장 매체는 다양한 로컬 액세스 데이터 저장 매체를 포함하고, 예를 들어 광디스크, DVD, 플래시 메모리 등을 포함한다. 상기 실시예에 있어서, 디코딩 기기(120)는 상기 컴퓨터 판독 가능한 저장 매체로부터 인코딩된 비디오 데이터를 획득할 수 있다.
다른 일 예에 있어서, 채널(130)은 스토리지 서버를 포함할 수 있고, 상기 스토리지 서버는 인코딩 기기(110)가 인코딩한 이후의 비디오 데이터를 저장할 수 있다. 상기 실시예에 있어서, 디코딩 기기(120)는 상기 스토리지 서버로부터, 저장된 인코딩된 비디오 데이터를 다운로드할 수 있다. 일부 실시예에 있어서, 상기 스토리지 서버는 인코딩된 비디오 데이터를 저장할 수 있고, 상기 인코딩된 비디오 데이터를 디코딩 기기(120)에 발송할 수 있으며, 예를 들어 web 서버(예를 들어, 웹 사이트에 사용됨), 파일 전송 프로토콜(FTP) 서버 등에 발신할 수 있다.
일부 실시예에 있어서, 인코딩 기기(110)는 비디오 인코더(112) 및 출력 인터페이스(113)를 포함한다. 여기서, 출력 인터페이스(113)는 변조기/복조기(모뎀) 및 에미터 중 적어도 하나를 포함할 수 있다.
일부 실시예에 있어서, 인코딩 기기(110)는 비디오 인코더(112) 및 출력 인터페이스(113)을 포함하는 것 이외에, 또한 비디오 소스(111)를 포함할 수 있다.
비디오 소스(111)는 비디오 수집 장치(예를 들어, 비디오 카메라), 비디오 아카이브, 비디오 입력 인터페이스, 컴퓨터 그래픽 시스템 중 적어도 하나를 포함할 수 있고, 여기서, 비디오 입력 인터페이스는 비디오 콘텐츠 제공자로부터 비디오 데이터를 수신하기 위한 것이고, 컴퓨터 그래픽 시스템은 비디오 데이터를 생성하기 위한 것이다.
비디오 인코더(112)는 비디오 소스(111)로부터의 비디오 데이터를 인코딩하여, 코드 스트림을 생성한다. 비디오 데이터는 하나 또는 복수 개의 이미지(picture) 또는 이미지 시퀀스(sequence of pictures)를 포함할 수 있다. 코드 스트림은 비트 스트림의 형태로 이미지 또는 이미지 시퀀스의 인코딩 정보를 포함한다. 인코딩 정보는 인코딩된 이미지 데이터 및 연관된 데이터를 포함할 수 있다. 연관된 데이터는 시퀀스 파라미터 세트(sequence parameter set, SPS), 이미지 파라미터 세트(picture parameter set, PPS) 및 다른 신택스 구조를 포함할 수 있다. SPS는 하나 또는 복수 개의 시퀀스에 적용되는 파라미터를 포함할 수 있다. PPS는 하나 또는 복수 개의 이미지에 적용되는 파라미터를 포함할 수 있다. 신택스 구조는 코드 스트림에서 지정된 순서로 배열된 0개 또는 복수 개의 신택스 요소의 집합을 가리킨다.
비디오 인코더(112)는 출력 인터페이스(113)를 통해 인코딩된 비디오 데이터를 직접 디코딩 기기(120)에 전송한다. 인코딩된 비디오 데이터는 또한 디코딩 기기(120)의 향후 판독을 위해 저장 매체 또는 스토리지 서버에 저장될 수 있다.
일부 실시예에 있어서, 디코딩 기기(120)는 입력 인터페이스(121) 및 비디오 디코더(122)를 포함한다.
일부 실시예에 있어서, 디코딩 기기(120)는 입력 인터페이스(121) 및 비디오 디코더(122)를 포함하는 것 이외에, 또한 디스플레이 장치(123)를 포함할 수 있다.
여기서, 입력 인터페이스(121)는 수신기 및 모뎀 중 적어도 하나를 포함한다. 입력 인터페이스(121)는 채널(130)을 통해 인코딩된 비디오 데이터를 수신할 수 있다.
비디오 디코더(122)는 인코딩된 비디오 데이터에 대해 디코딩을 수행하여, 디코딩된 비디오 데이터를 얻고, 디코딩된 비디오 데이터를 디스플레이 장치(123)에 전송하기 위한 것이다.
디스플레이 장치(123)는 디코딩된 비디오 데이터를 디스플레이한다. 디스플레이 장치(123)는 디코딩 기기(120)와 통합되거나 디코딩 기기(120) 외부에 존재할 수 있다. 디스플레이 장치(123)는 다양한 디스플레이 장치를 포함할 수 있고, 예를 들어 액정 디스플레이(LCD), 플라즈마 디스플레이, 유기 발광 다이오드(OLED) 디스플레이 또는 다른 타입의 디스플레이 장치를 포함할 수 있다.
또한, 도 1은 다만 예로서, 본 출원의 실시예의 기술방안은 도 1에 한정되지 않으며, 예를 들어 본 출원의 실시예의 기술은 또한 단측의 비디오 인코딩 또는 단측의 비디오 디코딩에 적용될 수 있다.
아래는 본 출원의 실시예의 비디오 인코딩 프레임워크를 소개한다.
도 2는 본 출원의 실시예에서 제공한 비디오 인코더의 예시적 블록도이다. 이해해야 할 것은, 상기 비디오 인코더(200)는 이미지에 대해 유손실 압축(lossy compression)을 수행하는데 사용될 수 있고, 이미지에 대해 무손실 압축(lossless compression)을 수행하는데 사용될 수도 있다. 상기 무손실 압축은 시각적 무손실 압축(visually lossless compression)일 수 있고, 수학적 무손실 압축(mathematically lossless compression)일 수도 있다.
상기 비디오 인코더(200)는 와이유브이(YCbCr, YUV) 포맷의 이미지 데이터에 적용될 수 있다.
예를 들어, 상기 비디오 인코더(200)는 비디오 데이터를 판독하고, 비디오 데이터 중의 각 프레임 이미지에 대하여, 각 프레임 이미지를 복수 개의 코딩 트리 유닛(Coding Tree Unit, CTU)으로 분할하고, 일부 예에 있어서, CTB는 “트리 블록”, “최대 코딩 유닛(Largest Coding unit, LCU) 또는 “코딩 트리 블록”(Coding Tree Block, CTB)으로 지칭될 수 있다. 각 CTU는 이미지 내의 동일한 크기를 구비하는 픽셀 블록과 연관될 수 있다. 각 픽셀은 하나의 루마(luminance 또는 luma) 샘플 및 두 개의 크로마(chrominance 또는 chroma) 샘플에 대응될 수 있다. 따라서, 각 CTU는 하나의 루마 샘플 블록 및 두 개의 크로마 샘플 블록과 연관될 수 있다. 하나의 CTU 크기는 예를 들어 128×128, 64×64, 32×32 등이다. 하나의 CTU는 계속하여 복수 개의 코딩 유닛(Coding Unit, CU)으로 분할되어 인코딩될 수 있고, CU는 직사각형 블록일 수 있고, 사각형 블록일 수도 있다. CU는 예측 유닛(Prediction Unit, PU) 및 변환 유닛(Transform Unit, TU)으로 추가로 분할될 수 있음으로써, 인코딩, 예측, 변환 분리, 처리를 수행하는 경우 더욱 유연하다. 일 예에 있어서, CTU는 쿼드트리 방식으로 CU로 분할되고, CU는 쿼드트리 방식으로 TU, PU로 분할된다.
비디오 인코더 및 비디오 디코더는 다양한 PU 크기를 지원할 수 있다. 특정된 CU의 크기가 2N×2N인 것으로 가정하면, 비디오 인코더 및 비디오 디코더는 인트라 프레임 예측에 사용되는 2N×2N 또는 N×N의 PU 크기를 지원할 수 있고, 또한 인터 프레임 예측에 사용되는 2N×2N, 2N×N, N×2N, N×N 또는 유사한 크기의 대칭 PU를 지원할 수 있다. 비디오 인코더 및 비디오 디코더는 또한 인터 프레임 예측에 사용되는 2N×nU, 2N×nD, nL×2N 및 nR×2N의 비대칭 PU를 지원할 수 있다.
일부 실시예에 있어서, 도 2에 도시된 바와 같이, 상기 비디오 인코더(200)는 예측 유닛(210), 잔차 유닛(220), 변환/양자화 유닛(230), 역변환/양자화 유닛(240), 재구축 유닛(250), 루프 필터링 유닛(260), 디코딩 이미지 캐시(270) 및 엔트로피 인코딩 유닛(280)을 포함할 수 있다. 설명해야 할 것은, 비디오 인코더(200)는 더욱 많거나 더욱 적거나 상이한 기능 컴포넌트를 포함할 수 있다.
일부 실시예에 있어서, 본 출원에서, 현재 블록(current block)은 현재 코딩 유닛(CU) 또는 현재 예측 유닛(PU) 등으로 지칭될 수 있다. 예측 블록은 예측 이미지 블록 또는 이미지 예측 블록으로 지칭될 수도 있고, 재구축된 이미지 블록은 재구축된 블록 또는 이미지 재구축 이미지 블록으로 지칭될 수도 있다.
일부 실시예에 있어서, 예측 유닛(210)은 인터 프레임 예측 유닛(211) 및 인트라 프레임 예측 유닛(212)을 포함한다. 비디오의 하나의 프레임 중의 인접한 픽셀 간은 매우 강한 관련성이 존재하기 때문에, 비디오 인코딩 및 디코딩 기술에서 인트라 프레임 예측 방법을 사용하여 인접한 픽셀 간의 공간 중복을 제거한다. 비디오 중의 인접한 프레임 간은 매우 강한 유사성이 존재하기 때문에, 비디오 인코딩 및 디코딩 기술에서 인터 프레임 예측 방법을 사용하여 인접한 프레임 간의 시간 중복을 제거함으로써, 인코딩 효율을 향상시킬 수 있다.
인터 프레임 예측 유닛(211)는 인터 프레임 예측에 사용될 수 있고, 인터 프레임 예측은 상이한 프레임의 이미지 정보를 참조할 수 있으며, 인터 프레임 예측은 모션 정보를 사용하여 참조 프레임으로부터 참조 블록를 찾고, 참조 블록에 따라 예측 블록을 생성하여, 시간 중복 제거에 사용하며; 인터 프레임 예측에 사용되는 프레임은 P프레임 및 B프레임 중 적어도 하나일 수 있고, P프레임은 전방 예측 프레임을 가리키고, B프레임은 양방향 예측 프레임을 가리킨다. 모션 정보는 참조 프레임이 위치한 참조 프레임 리스트, 참조 프레임 인덱스 및 모션 벡터를 포함한다. 모션 벡터는 일체형 픽셀이거나 서브 픽셀일 수 있으며, 모션 벡터가 서브 픽셀이면, 참조 프레임에서 보간 필터링을 사용하여 필요되는 서브 픽셀의 블록을 생성해야 하고, 여기서 모션 벡터에 따라 찾은 참조 프레임에서의 일체형 픽셀 또는 서브 픽셀의 블록은 참조 블록으로 지칭된다. 일부 기술은 참조 블록을 예측 블록으로 직접 사용하고, 일부 기술은 참조 블록의 기초 위에 재처리하여 예측 블록을 생성한다. 참조 블록의 기초 위에 재처리하여 예측 블록을 생성하는 것은 참조 블록을 예측 블록으로 사용한 다음 예측 블록의 기초 위에서 처리하여 새로운 예측 블록을 생성하는 것으로 이해할 수 있다.
인트라 프레임 예측 유닛(212)은 공간 중복을 제거하기 위해, 동일한 프레임의 이미지의 정보만을 참조하여, 현재 코드 이미지 블록 내의 픽셀 정보를 예측한다. 인트라 프레임 예측에 사용되는 프레임은 I 프레임일 수 있다.
HEVC에 사용되는 인트라 프레임 예측 모드에는 평면 모드(Planar), DC 및 33 가지 각도 모드인 총 35 가지 예측 모드가 존재한다. VVC에 사용되는 인트라 프레임 모드에는 Planar, DC 및 65 가지 각도 모드인 총 67 가지 예측 모드가 존재한다. AVS3에 사용되는 인트라 프레임 모드에는 DC, Plane, Bilinear 및 63 가지 각도 모드인 총 66 가지 예측 모드가 존재한다.
일부 실시예에 있어서, 인트라 프레임 예측 유닛(212)은 인트라 프레임 블록 복제 기술 및 인트라 프레임 스트링 복제 기술을 사용하여 구현될 수 있다.
잔차 유닛(220)은 CU의 픽셀 블록 및 CU의 PU의 예측 블록에 기반하여 CU의 잔차 블록을 생성할 수 있다. 예를 들어, 잔차 유닛(220)은 CU의 잔차 블록을 생성할 수 있음으로써, 잔차 블록 중의 각 샘플로 하여금, CU의 픽셀 블록 중의 샘플 및 CU의 PU의 예측 블록 중의 대응 샘플 양자 간의 차이값과 동일한 값을 구비하도록 한다.
변환/양자화 유닛(230)은 변환 계수를 양자화할 수 있다. 잔차 비디오 정보는 DFT, DCT 등 변환 작업을 거쳐, 신호를 변환 도메인에 전환하며, 이를 변환 계수로 지칭한다. 변환 도메인에서의 신호는, 추가로 유손실 양자화 작업을 수행하여, 특정된 정보를 손실하여, 양자화된 신호로 하여금 압축 표현에 유리하도록 한다. 일부 비디오 인코딩 표준에서, 하나 이상의 변환 방식을 선택할 수 있고, 따라서, 인코딩 측은 현재 코딩된 CU를 위해 변환들 중 하나를 선택하고, 디코딩 측에 알려야 한다. 양자화의 정밀도는 일반적으로 양자화 파라미터(QP)에 의해 결정되고, QP 값이 크면, 더욱 큰 값의 범위의 계수가 동일한 출력으로 양자화되는 것을 표시하며, 따라서 일반적으로 더 큰 왜곡 및 더 낮은 부호화율을 가져오고; 이와 반대로, QP의 값이 작으면, 비교적 작은 값의 범위의 계수가 동일한 출력으로 양자화되는 것을 표시하며, 따라서 일반적으로 비교적 낮은 왜곡을 가져오고, 이와 동시에 비교적 높은 부호화율에 대응된다.
역변환/양자화 유닛(240)은 각각 역양자화 및 역변환을 양자화된 변환 계수에 적용시켜, 양자화된 변환 계수로부터 잔차 블록을 재구축한다.
재구축 유닛(250)은 재구축된 잔차 블록의 샘플을 예측 유닛(210)에 의해 생성된 하나 또는 복수 개의 예측 블록의 대응 샘플에 가하여, TU와 연관된 재구축된 이미지 블록을 생성한다. 이러한 방식으로 CU의 각 TU의 샘플 블록을 재구축하고, 비디오 인코더(200)는 CU의 픽셀 블록을 재구축할 수 있다.
루프 필터링 유닛(260)은 디블록킹 필터링 작업을 실행하여 CU와 연관된 픽셀 블록의 블록 효과를 줄일 수 있다. 재구축된 이미지는 원본 이미지에 비해, 양자화의 영향이 존재하기 때문에, 일부 정보는 원본 이미지와 상이할 수 있고, 왜곡(Distortion)을 생성한다. 재구축된 이미지에 대해 필터링 작업을 수행하고, 예를 들어 DBF, SAO 또는 ALF 등 필터는, 양자화로 인해 생성된 왜곡 정도를 효과적으로 저하시킬 수 있다. 이러한 필터링을 거친 후의 재구축된 이미지는, 미래의 신호를 예측하는데 사용되는, 향후 인코딩 이미지의 참조로 사용되기 때문에, 전술한 필터링 작업은 루프 필터링 및 인코딩 루프 내의 필터링 작업으로도 지칭된다.
디코딩 이미지 캐시(270)는 재구축된 픽셀 블록을 저장할 수 있다. 인터 프레임 예측 유닛(211)은 재구축된 픽셀 블록을 포함하는 참조 이미지를 사용하여 다른 이미지의 PU에 대해 인터 프레임 예측을 실행할 수 있다. 또한, 인트라 프레임 예측 유닛(212)은 디코딩 이미지 캐시(270)에서의 재구축된 픽셀 블록을 사용하여 CU와 동일한 이미지에서의 다른 PU에 대해 인트라 프레임 예측을 실행할 수 있다.
엔트로피 인코딩 유닛(280)은 변환/양자화 유닛(230)으로부터의 양자화된 변환 계수를 수신할 수 있다. 양자화된 변환 도메인 신호는, 각 값이 나타나는 빈도에 따라, 통계 압축 인코딩을 수행하고, 마지막으로 이진화된(0또는1) 압축 코드 스트림을 출력한다. 이와 동시에, 선택된 모드, 모션 벡터 등과 같은 다른 정보를 인코딩하여 생성하고, 부호화율을 저하시키기 위해 엔트로피 인코딩을 수행해야 한다. 통계 인코딩은 무손실 인코딩 방식으로서, 동일한 신호를 표현하는데 필요한 부호화율을 효과적으로 저하시킬 수 있다. 일반적인 통계 인코딩 방식에는 가변 길이 코딩(Variable Length Coding, VLC) 또는 컨텍스트 기반의 이진 산술 코딩(Content Adaptive Binary Arithmetic Coding, CABAC)이 존재한다.
도 3은 본 출원의 실시예에서 제공한 비디오 디코더의 예시적 블록도이다.
도 3에 도시된 바와 같이, 비디오 디코더(300)는 엔트로피 디코딩 유닛(310), 예측 유닛(320), 역양자화/변환 유닛(330), 재구축 유닛(340), 루프 필터링 유닛(350) 및 디코딩 이미지 캐시(360)를 포함한다. 설명해야 할 것은, 비디오 디코더(300)는 더욱 많거나 더욱 적거나 상이한 기능 컴포넌트를 포함할 수 있다.
비디오 디코더(300)는 코드 스트림을 수신할 수 있다. 엔트로피 디코딩 유닛(310)은 코드 스트림을 파싱하여 코드 스트림으로부터 신택스 요소를 추출할 수 있다. 코드 스트림을 파싱하는 일부로서, 엔트로피 디코딩 유닛(310)은 코드 스트림에서의 엔트로피 인코딩된 신택스 요소를 파싱할 수 있다. 예측 유닛(320), 역양자화/변환 유닛(330), 재구축 유닛(340) 및 루프 필터링 유닛(350)은 코드 스트림으로부터 추출된 신택스 요소에 따라 비디오 데이터를 디코딩할 수 있고, 즉 디코딩된 비디오 데이터를 생성한다.
일부 실시예에 있어서, 예측 유닛(320)은 인터 프레임 예측 유닛(321) 및 인트라 프레임 예측 유닛(322)을 포함한다.
인터 프레임 예측 유닛(321)은 인트라 프레임 예측을 실행하여 PU의 예측 블록을 생성할 수 있다. 인터 프레임 예측 유닛(321)은 인트라 프레임 예측 모드를 사용하여 공간이 인접한 PU의 픽셀 블록에 기반하여 PU의 예측 블록을 생성할 수 있다. 인터 프레임 예측 유닛(321)은 또한 코드 스트림으로부터 파싱된 하나 또는 복수 개의 신택스 요소에 따라 PU의 인트라 프레임 예측 모드를 결정할 수 있다.
인트라 프레임 예측 유닛(322)은 코드 스트림으로부터 파싱된 신택스 요소에 따라 제1 참조 이미지 리스트(리스트 0) 및 제2 참조 이미지 리스트(리스트 1)를 구성할 수 있다. 또한, PU가 인터 프레임 예측 인코딩을 사용하면, 엔트로피 디코딩 유닛(310)은 PU의 모션 정보를 파싱할 수 있다. 인트라 프레임 예측 유닛(322)은 PU의 모션 정보에 따라 PU의 하나 또는 복수 개의 참조 블록을 결정할 수 있다. 인트라 프레임 예측 유닛(322)은 PU의 하나 또는 복수 개의 참조 블록에 따라 PU의 예측 블록을 생성한다.
역양자화/변환 유닛(330)은, TU와 연관된 변환 계수를 역양자화(즉, 디퀀타이즈)할 수 있다. 역양자화/변환 유닛(330)은 TU의 CU와 연관된 QP값을 사용하여 양자화 정도를 결정할 수 있다.
변환 계수를 역양자화한 후, 역양자화/변환 유닛(330)은 하나 또는 복수 개의 역변환은 역양자화 변환 계수에 적용시켜, TU와 연관된 잔차 블록을 생성하는데 용이하도록 한다.
재구축 유닛(340)은 CU의 TU와 연관된 잔차 블록 및 CU의 PU의 예측 블록을 사용하여 CU의 픽셀 블록을 재구축한다. 예를 들어, 재구축 유닛(340)은 잔차 블록의 샘플을 예측 블록의 대응 샘플에 가하여 CU의 픽셀 블록을 재구축하여, 재구축된 이미지 블록을 얻을 수 있다.
루프 필터링 유닛(350)은 디블록킹 필터링 작업을 실행하여 CU와 연관된 픽셀 블록의 블록 효과를 줄일 수 있다.
비디오 디코더(300)는 CU의 재구축된 이미지를 디코딩 이미지 캐시(360)에 저장할 수 있다. 비디오 디코더(300)는 디코딩 이미지 캐시(360)에서의 재구축된 이미지를 참조 이미지로 사용하여 향후 예측에 사용하거나, 재구축된 이미지를 디스플레이 장치에 전송하여 디스플레이되도록 한다.
비디오 인코딩 및 디코딩의 기본 플로우는 다음과 같다. 인코딩 측에서, 각 프레임의 이미지를 블록으로 분할하고, 현재 블록의 경우, 예측 유닛(210)은 인트라 프레임 예측 또는 인터 프레임 예측을 사용하여 현재 블록의 예측 블록을 생성한다. 잔차 유닛(220)은 예측 블록과 현재 블록의 원본 블록에 기반하여 잔차 블록을 계산할 수 있고, 즉 예측 블록 및 현재 블록의 원본 블록의 차이값을 계산할 수 있으며, 상기 잔차 블록은 잔차 정보로도 지칭된다. 상기 잔차 블록은 변환/양자화 유닛(230)의 변환과 양자화 등 과정을 거쳐, 인간의 눈에 민감하지 않은 정보를 제거하여, 시각적 중복을 소거할 수 있다. 일부 실시예에 있어서, 변환/양자화 유닛(230)의 변환과 양자화를 거치기 전의 잔차 블록은 시간 도메인 잔차 블록으로 지칭될 수 있고, 변환/양자화 유닛(230)의 변환과 양자화를 거친 이후의 시간 도메인 잔차 블록은 주파수 잔차 블록 또는 주파수 도메인 잔차 블록으로 지칭될 수 있다. 엔트로피 인코딩 유닛(280)은 변환/양자화 유닛(230)에 의해 출력된 양자화된 변화 계수를 수신하고, 상기 양자화된 변화 계수에 대해 엔트로피 인코딩을 수행하여, 코드 스트림을 출력할 수 있다. 예를 들어, 엔트로피 인코딩 유닛(280)은 타깃 컨텍스트 모델 및 이진화 코드 스트림의 확률 정보에 따라 캐릭터 중복을 제거할 수 있다.
디코딩 측에서, 엔트로피 디코딩 유닛(310)은 코드 스트림을 파싱하여 현재 블록의 예측 정보, 양자화 계수 매트릭스 등을 얻을 수 있고, 예측 유닛(320)은 예측 정보에 기반하여 현재 블록에 대해 인트라 프레임 예측 또는 인터 프레임 예측을 사용하여 현재 블록의 예측 블록을 생성한다. 역양자화/변환 유닛(330)은 코드 스트림으로부터 얻은 양자화 계수 매트릭스를 사용하여, 양자화 계수 매트릭스에 대해 역양자화, 역변환을 수행하여 잔차 블록을 얻는다. 재구축 유닛(340)은 예측 블록 및 잔차 블록을 가하여 재구축된 블록을 얻는다. 재구축된 블록은 재구축된 이미지를 구성하고, 루프 필터링 유닛(350)은 이미지 또는 블록에 기반하여 재구축된 이미지에 대해 루프 필터링을 수행하여, 디코딩된 이미지를 얻는다. 인코딩측도 마찬가지로 디코딩된 이미지를 획득하기 위해 디코딩 측과 유사한 조작이 필요하다. 상기 디코딩된 이미지는 재구축된 이미지로도 지칭될 수 있고, 재구축된 이미지는 향후의 프레임을 위해 인터 프레임 예측의 참조 프레임으로 사용할 수 있다.
설명해야 할 것은, 인코딩 측에 의해 결정된 블록 분할 정보, 예측, 변환, 양자화, 엔트로피 인코딩, 루프 필터링 등 모드 정보 또는 파라미터 정보 등은 필요한 경우 코드 스트림에 캐리된다. 디코딩 측은 코드 스트림을 파싱하고 기존의 정보를 분석하는 것을 통해 인코딩 측과 동일한 블록 분할 정보, 예측, 변환, 양자화, 엔트로피 코딩, 루프 필터링 등 모드 정보 또는 파라미터 정보를 결정함으로써, 인코딩 측이 획득한 디코딩된 이미지와 디코딩 측이 획득한 디코딩된 이미지가 동일하도록 보장한다.
위에서 전술한 내용은 블록에 기반한 하이브리드 코딩 프레임워크에서의 비디오 코덱의 기본 플로우이고, 기술의 발전에 따라, 상기 프레임워크 또는 플로우의 일부 모듈 또는 단계는 최적화될 수 있고, 본 출원은 상기 블록에 기반한 하이브리드 코딩 프레임워크에서의 비디오 코덱의 기본 플로우에 적용되지만, 상기 프레임워크 및 플로우에 한정되지 않는다.
일부 실시예에 있어서, 본 출원의 실시예는 각 이미지 처리 시나리오에 적용될 수 있고, 클라우드 기술, 인공 지능, 지능형 교통, 보조 운전 등을 포함하지만 이에 한정되지 않는다.
아래는 일부 실시예를 통해 본 출원의 실시예의 기술방안을 상세히 설명한다. 아래의 몇 가지 실시예는 서로 결합될 수 있고, 동일하거나 유사한 개념이나 과정에 대해서는 특정 일부 실시예에서 더 이상 반복하여 설명하지 않을 수 있다.
도 4는 본 출원의 실시예에서 제공한 이미지 필터링 방법의 흐름도이고, 도 4에 도시된 바와 같이, 상기 이미지 필터링 방법은 아래와 같은 단계를 포함한다.
단계 S401에 있어서, 필터링될 이미지의 인코딩 정보를 결정하고, 인코딩 정보는 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시한다.
일부 실시예에 있어서, 본 출원의 실시예는 인코딩 측에 적용될 수 있고 디코딩 측에 적용될 수도 있으며, 다시 말해, 본 출원의 실시예의 실행 주체는 상기 도 1 및 도 2에서의 인코더일 수 있고, 도 1 및 도 3에서의 디코더일 수도 있다.
일부 실시예에 있어서, 본 출원의 실시예는 또한 다른 디스플레이 기기에 적용될 수 있고, 예를 들어, 디코더는 디코딩된 재구축된 이미지를 디스플레이 기기에 송신하고, 상기 디스플레이 기기는 본 출원의 실시예의 이미지 필터링 방법을 사용하여 재구축된 이미지에 대해 필터링을 수행하고, 필터링된 이미지를 디스플레이한다.
다시 말해, 본 출원의 실시예의 실행 주체는 이미지 필터링 장치와 같은 이미지 필터링 기능을 구비하는 장치이고, 상기 이미지 필터링 장치는 전자 기기, 또는 전자 기기 중의 프로세서와 같은 전자 기기 중의 일부이다. 상기 전자 기기는 인코더, 디코더, 코덱, 디스플레이 기기 등일 수 있다.
설명의 편의를 위해, 아래는 실행 주체를 전자 기기로 예로 들어, 본 출원의 실시예의 방법을 소개한다.
본 출원의 실시예와 관련된 필터는 신경 네트워크 필터, 즉 필터링 모델이고, 일부 실시예에 있어서, 상기 필터링 모델은 신경 네트워크에 기반한 인루프 필터(Neural Network in-Loop Filter, NNLF)로도 지칭된다.
본 출원의 실시예의 필터링 모델은 인트라 프레임 인코딩된 이미지의 필터링을 구현할 수 있을 뿐만 아니라, 인터 프레임 인코딩된 이미지의 필터링을 구현할 수도 있으며, 다시 말해, 본 출원의 실시예의 필터링 모델은 범용 필터링 모델임으로써, 모델 파라미터의 저장 비용을 저하시킬 수 있다.
본 출원의 실시예의 응용 시나리오는 아래와 같은 몇 가지 시나리오를 포함하지만 이에 한정되지 않는다.
시나리오 1에 있어서, 도 5a에 도시된 바와 같이, 상기 필터링될 이미지는 상기 재구축 유닛의 재구축된 이후의 이미지이다. 다시 말해, 본 출원의 실시예의 루프 필터링 유닛은 상기 필터링 모델이고, 도 2에서의 재구축 유닛(250)은 재구축된 이미지를 루프 필터링 유닛(260)에서의 필터링 모델에 입력하고 필터링을 수행하여, 필터링된 이미지를 얻고, 상기 필터링된 이미지를 디코딩된 이미지 캐시에 저장한다. 또는, 도 3에서의 재구축 유닛(340)은 재구축된 이미지를 루프 필터링 유닛(350)에서의 필터링 모델에 입력하고 필터링을 수행하여, 필터링된 이미지를 얻고, 상기 필터링된 이미지를 디코딩된 이미지 캐시에 저장하거나, 디스플레이에 사용된다.
시나리오 2에 있어서, 도 5b에 도시된 바와 같이, 상기 필터링될 이미지는 DBF, SAO, ALF 중 적어도 하나의 필터링을 거친 후의 이미지이다. 다시 말해, 본 출원의 실시예의 루프 필터링 유닛은 DBF, SAO 및 ALF 중의 적어도 하나와 같은 종래의 필터를 포함할 뿐만 아니라, 필터링 모델도 포함한다. 도 2에서의 재구축 유닛(250)은 재구축된 이미지를 루프 필터링 유닛(260)에서의 종래의 필터에 입력하고 필터링을 수행하며, 필터링된 이미지를 필터링 모델에 다시 입력하여 필터링을 수행하고, 필터링된 이미지를 얻고, 상기 필터링된 이미지를 디코딩된 이미지 캐시에 저장한다. 또는, 도 3에서의 재구축 유닛(340)은 재구축된 이미지를 루프 필터링 유닛(350)에서의 종래의 필터에 입력하고 필터링을 수행한 후, 필터링된 이미지를 필터링 모델에 다시 입력하여 필터링을 수행하고, 필터링된 이미지를 얻고, 상기 필터링된 이미지를 디코딩된 이미지 캐시에 저장하거나, 디스플레이에 사용된다.
설명해야 할 것은, 상기 도 5b는 종래의 필터와 본 출원의 실시예의 필터링 모델을 결합하여 사용한 하나의 예만을 도시한다. 일부 시나리오에 있어서, 종래의 필터와 본 출원의 실시예의 필터링 모델의 조합 방식은, 먼저 필터링 모델을 사용하여 필터링을 수행한 다음, 종래의 필터를 사용하여 필터링을 수행하는 것이거나, 먼저 종래의 필터를 사용하여 필터링을 수행한 다음, 필터링 모델을 사용하여 필터링을 수행한 다음, 종래의 필터를 사용하여 필터링을 수행하는 방식이거나, 다른 조합 방식을 포함하지만 이에 한정되지 않으며, 본 출원의 실시예는 필터링 모델의 조합 방식에 대해 한정하지 않는다.
시나리오 3에 있어서, 도 5c에 도시된 바와 같이, 상기 필터링될 이미지는 디스플레이될 이미지이다. 예를 들어, 도 3에서의 재구축 유닛(340)은 재구축된 이미지를 루프 필터링 유닛(350)에 입력하여 필터링을 수행한 후, 필터링된 이미지를 디코딩된 이미지 캐시에 저장한다. 디코딩된 이미지 캐시 중의 이미지를 향후 도면의 참조 이미지로 사용하여 예측을 수행하고, 예를 들어 예측 유닛(320)은 디코딩된 이미지 캐시로부터 참조 이미지를 판독하고 예측을 수행한다. 또한, 디코딩된 이미지 캐시 중의 이미지는 또한 디스플레이에 사용되며, 그러나 디스플레이에 사용되기 전, 먼저 본 출원의 실시예의 필터링 모델을 사용하여 필터링을 수행하고, 필터링된 이미지를 디스플레이한다.
상기 도 5a 및 도 5b에 도시된 바와 같이, 일부 실시예에 있어서, 본 출원의 실시예의 필터링된 이미지는 향후 이미지의 참조 이미지에 사용된다.
상기 도 5c에 도시된 바와 같이, 일부 실시예에 있어서, 본 출원의 실시예의 필터링된 이미지는 디스플레이에 사용되고, 향후 이미지의 참조 이미지에 사용되지 않는다.
본 출원의 실시예의 필터링 모델은 범용 필터링 모델이고, 인트라 프레임 인코딩된 이미지를 필터링하는데 사용될 수 있고, 인터 프레임 인코딩된 이미지를 필터링하는데 사용될 수도 있다. 그러나 인트라 프레임 인코딩 및 인터 인프레임 인코딩 간의 차이로 인해, 필터링의 정확성을 향상시키기 위해, 본 출원의 실시예는 필터링 모델에 필터링될 이미지를 입력하고, 상기 입력은 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 등의 분류 정보를 지시한다.
본 출원의 실시예는 필터링될 이미지의 인코딩 정보를 한정하지 않고, 필터링될 이미지가 인코딩 과정에서 관련된 인코딩 타입의 정보일 수 있다.
일부 실시예에 있어서, 필터링될 이미지의 인코딩 정보는 분류 정보를 포함하고, 상기 분류 정보는 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시한다.
본 출원의 실시예와 관련된 인코딩 이미지 타입은 풀 인트라 프레임 인코딩 이미지 및 인터 프레임 인코딩 가능한 이미지를 포함한다.
여기서, 풀 인트라 프레임 인코딩 이미지는 상기 이미지의 인코딩 타입 전체가 인트라 프레임 인코딩 방식인 것을 가리키고, 다시 말해, 풀 인트라 프레임 인코딩 이미지에 의해 예측된 참조 정보는 모두 이미지의 공간 도메인 정보로부터 온 것이다.
인터 프레임 인코딩 가능한 이미지는 상기 이미지의 인코딩 타입이 인터 프레임 인코딩 방식일 수 있는 것을 가리키고, 다시 말해, 인터 프레임 인코딩 가능한 이미지가 예측을 수행하는 과정에서 다른 참조 프레임의 시간 도메인 참조 정보를 참조할 수 있다.
일부 실시예에 있어서, 인코딩 모드의 분류는 인코딩 총 모드를 포함하고, 예를 들어, 인터 프레임 인코딩 모드 및 인트라 프레임 인코딩 모드인 두 가지 타입을 포함한다.
인코딩 측의 경우, 인코딩 총 모드는 필터링될 이미지에 대응되는 모든 예측 유닛이 사용하는 예측 모드에 따라 결정될 수 있고, 예를 들어, 상기 필터링될 이미지의 인코딩 과정에서, 필터링될 이미지에 대응되는 모든 예측 유닛이 인트라 프레임 예측 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 총 모드를 인트라 프레임 인코딩 모드로 결정하며, 필터링될 이미지에 대응되는 모든 예측 유닛이 인터 프레임 예측 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 총 모드를 인터 프레임 인코딩 모드로 결정한다.
디코딩 측의 경우, 상기 필터링될 이미지의 인코딩 총 모드를 획득하는 방식은 아래와 같은 두 가지 방식을 적어도 포함한다.
방식 1에 있어서, 코드 스트림에는 상기 필터링될 이미지의 인코딩 총 모드가 포함되어 있음으로써, 디코딩 측은 코드 스트림을 디코딩하는 것을 통해, 상기 필터링될 이미지의 인코딩 총 모드를 얻는다.
방식 2에 있어서, 디코딩 측은 필터링될 이미지에 대응되는 모든 예측 유닛이 사용하는 예측 모드에 따라 상기 필터링될 이미지의 인코딩 총 모드를 결정한다. 예를 들어, 상기 필터링될 이미지의 디코딩 과정에서, 필터링될 이미지에 대응되는 모든 예측 유닛이 인트라 프레임 예측 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 총 모드를 인트라 프레임 인코딩 모드로 결정하며, 필터링될 이미지에 대응되는 모든 예측 유닛이 인터 프레임 예측 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 총 모드를 인터 프레임 인코딩 모드로 결정한다.
일부 실시예에 있어서, 인코딩 모드의 분류는 또한 인코딩 서브 모드로 구체화될 수 있다. 인코딩 서브 모드는 필터링될 이미지의 구체적인 인코딩 방식으로 이해될 수 있고, 예를 들어 인트라 프레임 인코딩 모드 중의 어떤 서브 모드로 구체화되거나, 인터 프레임 인코딩 모델 중의 어떤 서브 모드로 구체화된다.
일반적인 인트라 프레임 인코딩 기술은, 일반 인트라 프레임 인코딩 모드, MIP 모드(Matrix weighted Intra Prediction, MIP), 인트라 프레임 블록 복제 기술(Intra Block Copy, IBC), 인트라 프레임 스트링 예측 기술(Intra String Prediction, ISP), 팔레트 기술(Palette, PLT) 등을 포함한다.
일반적인 인터 프레임 인코딩 기술은, 일반 인터 프레임 인코딩 모드, 모션 병합 모드(Merge 모드), 모션 병합 및 잔차 스킵 모드(Skip 모드), 인터 프레임 및 인트라 프레임 통합 예측 모드(Combined Inter and Intra Prediction, CIIP) 등을 포함한다.
인코딩 측의 경우, 인코딩 서브 모드는 필터링될 이미지에 대응되는 모든 예측 유닛이 사용하는 예측 모드에 따라 결정될 수 있고, 예를 들어, 상기 필터링될 이미지의 인코딩 과정에서, 필터링될 이미지에 대응되는 모든 예측 유닛이 일반 인트라 프레임 인코딩 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 서브 모드를 일반 인트라 프레임 인코딩 모드로 결정하며, 필터링될 이미지에 대응되는 모든 예측 유닛이 Merge 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 서브 모드를 Merge 모드로 결정한다.
디코딩 측의 경우, 상기 필터링될 이미지의 인코딩 서브 모드를 획득하는 방식은 아래와 같은 두 가지 방식을 적어도 포함한다.
방식 1에 있어서, 코드 스트림에는 상기 필터링될 이미지의 인코딩 서브 모드가 포함되어 있음으로써, 디코딩 측은 코드 스트림을 디코딩하는 것을 통해, 상기 필터링될 이미지의 인코딩 서브 모드를 얻는다.
방식 2에 있어서, 디코딩 측은 필터링될 이미지에 대응되는 모든 예측 유닛이 사용하는 예측 모드에 따라 상기 필터링될 이미지의 인코딩 서브 모드를 결정한다. 예를 들어, 상기 필터링될 이미지의 디코딩 과정에서, 필터링될 이미지에 대응되는 모든 예측 유닛이 일반 인트라 프레임 인코딩 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 서브 모드를 일반 인트라 프레임 인코딩 모드로 결정하며, 필터링될 이미지에 대응되는 모든 예측 유닛이 Merge 모드를 사용하여 예측을 수행하면, 상기 필터링될 이미지의 인코딩 서브 모드를 Merge 모드로 결정한다.
본 출원의 실시예는 필터링을 수행하는 경우, 필터링될 이미지 및 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시하는 분류 정보를 필터링 모델에 입력하여, 필터링될 이미지의 필터링된 이미지를 얻는다.
일부 실시예에 있어서, 필터링될 이미지의 분류 정보는 다중 요소를 포함하는 매트릭스일 수 있다.
일부 실시예에 있어서, 필터링될 이미지의 분류 정보는 하나의 요소의 데이터이다.
아래에 구체적인 예와 결합하여, 본 출원의 실시예에서의, 필터링될 이미지의 인코딩 정보를 결정하는 과정을 상세히 소개한다.
경우 1에 있어서, 분류 정보가 필터링될 이미지의 인코딩 이미지 타입을 지시하면, 상기 단계 S401에서의 필터링될 이미지의 인코딩 정보를 결정하는 과정은 아래와 같은 단계를 포함한다.
단계 S401-A1에 있어서, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 이미지 타입을 획득하고; 상기 복수 개의 이미지 영역이 모두 풀 인트라 프레임 인코딩 이미지에 속하면, 분류 정보의 값을 제1 값으로 결정한다.
단계 S401-A2에 있어서, 상기 복수 개의 이미지 영역이 모두 인터 프레임 인코딩 가능한 이미지에 속하면, 분류 정보의 값을 제2 값으로 결정한다.
단계 S401-A3에 있어서, 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 분류 정보의 값을 제3 값으로 결정하고, 또는 상기 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 필터링될 이미지에서의 비율에 따라, 분류 정보를 결정한다.
구체적으로, 본 출원의 실시예의 인코딩 이미지는 풀 인트라 프레임 인코딩 이미지 및 인터 프레임 인코딩 가능한 이미지로 나뉘고, 도 6a 내지 도6c에 도시된 바와 같이, 이미지는 프레임(frame), 슬라이스(slice), 타일(tile)을 포함한다. 분류 정보가 인코딩 이미지 타입를 표시하는 경우, 상기 분류 정보는 슬라이스 레벨, 타일 레벨, 또는 프레임 헤드 레벨 중의 하나에서 지시될 수 있다.
필터링 모델은 실제 사용되는 경우 일반적으로 하나의 프레임 전체를 직접 입력하여 필터링을 수행하는 것이 아니라, 이미지를 서브 이미지로 분할한 다음, 점층적으로 서브 이미지를 필터링 모델에 입력하여 필터링을 수행한다. 서브 이미지의 크기는 클 수도 있고 작을 수도 있기 때문에, 필터링 모델에 입력된 필터링될 이미지는 슬라이스/타일 경계를 가로지르는 경우가 존재할 수 있다. 본 출원의 실시예의 필터링될 이미지는 하나의 서브 이미지로 이해할 수 있다.
이에 기반하여, 본 출원의 실시예는 필터링될 이미지의 인코딩 이미지 타입 및 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는지 여부에 따라, 필터링될 이미지의 분류 정보를 결정한다.
상기 필터링될 이미지 중의 복수 개의 이미지 영역은 필터링될 이미지 중의 모든 이미지 영역일 수 있고, 필터링될 이미지 중의 일부 이미지 영역일 수도 있으며, 예를 들어 필터링될 이미지의 80% 이미지 영역일 수 있다.
구체적으로, 필터링될 이미지의 복수 개의 이미지 영역 중의 모든 이미지 영역이 모두 풀 인트라 프레임 인코딩 이미지에 속하면, 분류 정보의 값을 제1 값으로 결정하고; 필터링될 이미지의 복수 개의 이미지 영역 중의 모든 이미지 영역이 모두 인터 프레임 인코딩 가능한 이미지에 속하면, 분류 정보의 값을 제2 값으로 결정한다.
본 출원의 실시예는 제1 값 및 제2 값의 구체적인 값에 대해 한정하지 않는다.
일부 실시예에 있어서, 제1 값은 0이다.
일부 실시예에 있어서, 제2 값은 1이다.
일 예에 있어서, 본 출원의 실시예의 분류 정보는 하나의 요소의 데이터이고, 예를 들어, 필터링될 이미지의 복수 개의 이미지 영역 중의 모든 이미지 영역이 모두 풀 인트라 프레임 인코딩 이미지에 속하면, 분류 정보의 값을 1로 결정하고; 필터링될 이미지의 복수 개의 이미지 영역 중의 모든 이미지 영역이 모두 인터 프레임 인코딩 가능한 이미지에 속하면, 필터링될 이미지의 분류 정보의 값을 0으로 결정한다.
다른 일 예에 있어서, 본 출원의 실시예의 분류 정보는 매트릭스이고, 상기 매트릭스는 필터링될 이미지의 크기와 일치할 수 있고, 필터링될 이미지의 크기와 일치하지 않을 수도 있다. 예를 들어, 현재 필터링될 이미지의 복수 개의 이미지 영역이 모두 풀 인트라 프레임 인코딩 이미지에 속하면, 분류 정보를 모두 0인 매트릭스로 결정한다. 현재 필터링될 이미지의 복수 개의 이미지 영역이 모두 인터 프레임 인코딩 가능한 이미지에 속하면, 분류 정보를 모두 1인 매트릭스로 결정한다.
필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 아래의 두가지 방식에 따라 필터링될 이미지의 분류 정보를 결정할 수 있다.
방식 1에 있어서, 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 분류 정보의 값을 제3 값으로 결정한다.
본 출원의 실시예는 제3 값의 구체적인 값에 대해 한정하지 않고, 상기 제1 값 및 제2 값과 상이하면 된다.
일 예에 있어서, 상기 분류 정보가 하나의 요소의 데이터이면, 예를 들어 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 분류 정보를 2로 결정한다.
다른 일 예에 있어서, 상기 분류 정보가 하나의 매트릭스이면, 예를 들어, 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 분류 정보를 모두 2인 매트릭스로 결정한다.
방식 2에 있어서, 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르는 경우, 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 필터링될 이미지에서의 비율에 따라, 분류 정보를 결정한다.
상기 방식 2에 있어서, 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 넘는 경우, 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 필터링될 이미지에서의 비율에 따라, 분류 정보를 결정하는 구현 방식은 아래의 몇 가지 예를 포함하지만 이에 한정되지 않는다.
예 1에 있어서, 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 분류 정보의 값을 제1 값으로 결정하고; 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 필터링될 이미지에서의 비율이 제1 임계값보다 작으면, 분류 정보의 값을 제2 값으로 결정한다.
예 2에 있어서, 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 분류 정보의 값을 제1 값으로 결정하고; 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 필터링될 이미지에서의 비율이 제1 임계값보다 작고, 제2 임계값보다 크거나 같으면, 분류 정보의 값을 제2 값으로 결정하며; 필터링될 이미지의 복수 개의 이미지 영역 중 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 필터링될 이미지에서의 비율이 제2 임계값보다 작으면, 분류 정보의 값을 제3 값으로 결정한다.
본 출원의 실시예는 제1 임계값 및 제2 임계값의 구체적인 값에 대해 한정하지 않고, 제1 임계값은 제2 임계값보다 크다.
일부 실시예에 있어서, 제1 임계값은 50%보다 크고, 100%보다 작다.
상기 경우 1에 있어서, 분류 정보는 필터링될 이미지의 인코딩 이미지 타입을 지시하고, 상기 분류 정보를 필터링 모델에 입력한 후, 필터링 모델은 필터링될 이미지의 인코딩 이미지 타입에 따라, 필터링될 이미지에 대해 정확한 필터링을 수행할 수 있다.
경우 2에 있어서, 인코딩 모드는 인트라 프레임 인코딩 모드 및 인터 프레임 인코딩 모드를 포함하고, 상기 분류 정보가 필터링될 이미지의 인코딩 모드를 지시하면, 상기 분류 정보는 제1 분류 정보 및 제2 분류 정보 중의 적어도 하나를 포함한다. 본 실시예에 있어서, 상기 분류 정보는 블록 레벨에서 지시된다.
여기서, 제1 분류 정보는 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 지시하기 위한 것이다.
제2 분류 정보는 필터링될 이미지 중 기설정된 크기 영역에 대응되는 인코딩 모드를 지시하기 위한 것이다.
제1 분류 정보 및 제2 분류 정보의 경우, 상기 경우 2 중 필터링될 이미지의 인코딩 정보를 결정하는 것은 각각 아래와 같은 경우 1 및 경우 2인 두 가지 경우를 포함한다. 여기서, 경우 1은 제1 분류 정보를 결정하는 과정이고, 경우 2는 제2 분류 정보를 결정하는 과정이다.
경우 1에 있어서, 분류 정보가 제1 분류 정보를 포함하면, 상기 제1 분류 정보는 복수 개의 요소를 포함하는 매트릭스이고, 각 요소가 필터링될 이미지 중의 하나 또는 복수 개의 픽셀 포인트의 인코딩 모드에 대응되면, 상기 단계 S401 중 필터링될 이미지의 인코딩 정보를 결정하는 단계는 아래와 같은 단계를 포함한다.
S401-B에 있어서, 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 획득하고, 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드에 따라, 제1 분류 정보를 결정한다.
상기 경우 1에 있어서, 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트의 인코딩 모드에 따라, 제1 분류 정보를 결정할 수 있다. 예를 들어, 필터링될 이미지 중 각 픽셀 포인트의 인코딩 모드가 인트라 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 각 매트릭스 요소의 값을 제1 값으로 결정한다.
일부 실시예에 있어서, 상기 S401-B의 구현 방식은 아래와 같은 몇 가지 예를 포함한다.
예 1에 있어서, 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 인트라 프레임 인코딩 모드이면, 제1 분류 정보 중 각 매트릭스 요소의 값을 제1 값으로 결정한다.
예 2에 있어서, 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 인터 프레임 인코딩 모드이면, 제1 분류 정보 중 각 매트릭스 요소의 값을 제2 값으로 결정한다.
예 3에 있어서, 필터링될 이미지 중 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 인트라 프레임 인코딩 모드이고, 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 인터 프레임 인코딩 모드이면, 제1 분류 정보 중 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소 값을 제1 값으로 결정하고, 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소의 값을 제2 값으로 결정한다.
본 출원의 실시예는 제1 값 및 제2 값의 구체적인 값에 대해 한정하지 않는다.
일부 실시예에 있어서, 제1 값은 0이다.
일부 실시예에 있어서, 제2 값은 1이다.
일 가능한 구현 방식에 있어서, 제1 분류 정보의 크기와 필터링될 이미지의 크기는 일치하고, 다시 말해, 제1 분류 정보 중의 각 매트릭스 요소와 필터링될 이미지 중의 각 픽셀은 일대일 대응된다. 이로써 필터링될 이미지 중의 각 픽셀에 대응되는 인코딩 모드에 따라, 제1 분류 정보의 값을 결정할 수 있고, 예를 들어, 필터링될 이미지 중의 각 픽셀에 대응되는 인코딩 모드가 인트라 프레임 인코딩 모드이면, 제1 분류 정보 중 각 매트릭스 요소의 값을 모두 제1 값(예를 들어 모두 0)으로 결정한다. 필터링될 이미지 중의 각 픽셀에 대응되는 인코딩 모드가 인터 프레임 인코딩 모드이면, 제1 분류 정보 중의 각 매트릭스 요소의 값을 모두 제2 값(예를 들어 모두 1)으로 결정한다. 필터링될 이미지 중의 제1 부분 픽셀에 대응되는 인코딩 모드가 인트라 프레임 인코딩 모드이고, 제2 부분 픽셀에 대응되는 인코딩 모드가 인터 프레임 인코딩 모드이면, 제1 분류 정보 중 제1 부분 픽셀에 대응되는 매트릭스 요소의 값을 모두 제1 값(예를 들어 모두 0)으로 결정하고, 제2 부분 픽셀에 대응되는 매트릭스 요소의 값을 모두 제2 값으로 결정한다.
일 가능한 구현 방식에 있어서, 제1 분류 정보의 크기와 필터링될 이미지의 크기는 일치하지 않고, 예를 들어, 제1 분류 정보의 크기는 필터링될 이미지의 크기보다 작다. 예시적으로, 필터링될 이미지의 크기가 64×64이면, 제1 분류 정보의 크기는 64/n×64/m이고, 여기서 n, m은 모두 양의 정수이고, 예를 들어 제1 분류 정보의 크기가 32×32이면, 제1 분류 정보 중의 하나의 매트릭스 요소는 필터링될 이미지 중의 4 개의 픽셀 포인트에 대응됨으로써, 필터링될 이미지 중의 각 4 개의 픽셀 포인트에 대응되는 인코딩 모드에 따라, 제1 분류 정보에 대응되는 매트릭스 요소의 값을 결정한다.
예를 들어, 필터링될 이미지 중의 픽셀 포인트 1, 픽셀 포인트 2, 픽셀 포인트 3 및 픽셀 포인트 4는 제1 분류 정보 중의 매트릭스 요소 1에 대응되고, 픽셀 포인트 1, 픽셀 포인트 2, 픽셀 포인트 3 및 픽셀 포인트 4에 대응되는 인코딩 모드가 모두 인트라 프레임 인코딩 모드이면, 제1 분류 정보 중의 매트릭스 요소 1의 값을 제1 값으로 결정한다. 픽셀 포인트 1, 픽셀 포인트 2, 픽셀 포인트 3 및 픽셀 포인트 4에 대응되는 인코딩 모드가 모두 인터 프레임 인코딩 모드이면, 제1 분류 정보 중의 매트릭스 요소 1의 값을 제2 값으로 결정한다. 픽셀 포인트 1, 픽셀 포인트 2, 픽셀 포인트 3 및 픽셀 포인트 4 중 다수의 픽셀 포인트에 대응되는 인코딩 모드가 인터 프레임 인코딩 모드이면, 제1 분류 정보 중의 매트릭스 요소 1의 값을 제2 값으로 결정한다. 픽셀 포인트 1, 픽셀 포인트 2, 픽셀 포인트 3 및 픽셀 포인트 4 중 다수의 픽셀 포인트에 대응되는 인코딩 모드가 인트라 프레임 인코딩 모드이면, 제1 분류 정보 중의 매트릭스 요소 1의 값을 제1 값으로 결정한다.
경우 2에 있어서, 분류 정보가 제2 분류 정보를 포함하면, 상기 단계 S401에서 필터링될 이미지의 인코딩 정보를 결정하는 단계는 아래와 같은 단계를 포함한다.
S401-C에 있어서, 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율에 따라, 제2 분류 정보를 결정한다.
상기 경우 2에 있어서, 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율(또는 점유율)에 따라, 제2 분류 정보를 결정할 수 있다. 예를 들어, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 인터 프레임 인코딩 모드에 대응되는 이미지 영역보다 크면, 제2 분류 정보의 값을 제1 값으로 결정한다.
일부 실시예에 있어서, 상기 단계 S401-C의 구현 방식은 아래의 몇 가지 방식을 포함하지만 이에 한정되지 않는다.
방식 1에 있어서, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 제2 분류 정보의 값을 제1 값으로 결정하고; 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 작은 경우, 제2 분류 정보를 제2 값으로 결정한다.
일부 실시예에 있어서, 제2 분류 정보는 하나의 요소의 값이고, 예를 들어, 0 또는 1이고, 예를 들어, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 제2 분류 정보의 값을 0으로 결정하고, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 제2 분류 정보의 값을 1로 결정한다.
일부 실시예에 있어서, 제2 분류 정보는 매트릭스이고, 예를 들어, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 제2 분류 정보를 모두 0인 매트릭스로 결정하고, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 작은 경우, 제2 분류 정보를 모두 1인 매트릭스로 결정한다.
본 출원의 실시예는 제1 기설정된 임계값의 구체적인 값에 대해 한정하지 않는다.
일부 실시예에 있어서, 제1 기설정된 임계값은 80%이다.
예를 들어, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지 크기의 80%보다 크거나 같은 경우, 제2 분류 정보의 값을 0으로 결정(제2 분류 정보가 매트릭스이면, 제2 분류 정보 중의 각 요소의 값은 모두 0임)한다. 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지 크기의 80%보다 작은 경우, 제2 분류 정보의 값을 1로 결정(제2 분류 정보가 매트릭스이면, 제2 분류 정보 중의 각 요소의 값은 모두 1임)한다.
방식 2에 있어서, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 제2 분류 정보의 값을 제1 값으로 결정하고; 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 작고, 제2 기설정된 임계값(제2 기설정된 임계값은 제1 기설정된 임계값보다 작음)보다 크거나 같으면, 제2 분류 정보의 값을 제2 값으로 결정하며; 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지에서의 비율이 제2 기설정된 임계값보다 작은 경우, 제2 분류 정보의 값을 제3 값으로 결정한다.
본 출원의 실시예는 제1 값, 제2 값 및 제3 값의 구체적인 값에 대해 한정하지 않는다.
일부 실시예에 있어서, 제1 값은 0이다.
일부 실시예에 있어서, 제2 값은 1이다.
일부 실시예에 있어서, 제3 값은 2이다.
본 출원의 실시예는 제1 기설정된 임계값 및 제2 기설정된 임계값의 구체적인 값에 대해 한정하지 않는다.
일부 실시예에 있어서, 제1 기설정된 임계값은 80%이다.
일부 실시예에 있어서, 제2 기설정된 임계값은 60%이다.
예를 들어, 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지 크기의 80%보다 크거나 같은 경우, 제2 분류 정보의 값을 0으로 결정(제2 분류 정보가 매트릭스이면, 제2 분류 정보 중의 각 요소의 값은 모두 0임)한다. 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지 크기의 80%보다 작고, 필터링될 이미지 크기의 60%보다 크거나 같은 경우, 제2 분류 정보의 값을 1로 결정(제2 분류 정보가 매트릭스이면, 제2 분류 정보 중의 각 요소의 값은 모두 1임)한다. 필터링될 이미지 중 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 필터링될 이미지 크기의 60%보다 작은 경우, 제2 분류 정보의 값을 2로 결정(제2 분류 정보가 매트릭스이면, 제2 분류 정보 중의 각 요소의 값은 모두 2임)한다.
상기 경우 2에 있어서, 분류 정보는 필터링될 이미지의 인코딩 모드를 지시하고, 상기 인코딩 모드는 필터링될 이미지의 인코딩 총 모드로 이해될 수 있고, 예를 들어 인트라 프레임 인코딩 모드 또는 인터 프레임 인코딩 모드로 이해될 수 있으며, 상기 분류 정보를 필터링 모델에 입력한 후, 필터링 모델은 필터링될 이미지의 인코딩 모드에 따라, 필터링될 이미지에 대해 정확한 필터링을 수행할 수 있음으로써, 필터링 효과를 향상시킨다.
경우 3에 있어서, 필터링될 이미지의 인코딩 모드는, 일반 인트라 프레임 인코딩 모드, MIP 모드, IBC 모드, ISP 모드, PLT 모드, 일반 인터 프레임 인코딩 모드, Skip 모드, Merge 모드, CIIP 모드 중의 적어도 하나를 포함한다. 이때, 분류 정보가 필터링될 이미지의 인코딩 모드를 지시하면, 상기 분류 정보는 블록 레벨에서 지시된다. 상기 분류 정보가 상기 필터링될 이미지의 인코딩 모드를 지시하면, 상기 단계 S401 중의 필터링될 이미지의 인코딩 정보를 결정하는 단계는 아래와 같은 단계를 포함한다.
단계 S401-D에 있어서, 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드를 획득하고, 필터링될 이미지 중 각 이미지 영역에 대응되는 인코딩 모드에 따라, 분류 정보를 결정한다.
본 출원의 실시예에 있어서, 필터링될 이미지의 하나의 이미지 영역은 하나의 픽셀 포인트일 수 있고, 복수 개의 연속적인 픽셀 포인트일 수도 있으며, 또는 하나의 인코딩 블록일 수 있다. 본 출원의 실시예에 있어서, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드를 획득하는 것을 통해, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드에 따라, 필터링될 이미지의 분류 정보를 결정한다. 예를 들어, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드가 일반 인트라 프레임 인코딩 모드이면, 분류 정보의 값을 제1 값으로 결정한다.
일부 실시예에 있어서, 인코딩 모드의 인덱스에 따라, 분류 정보를 결정할 수 있고, 즉 상기 단계 S401-D는, 단계 S401-D1, 단계 S401-D2를 포함하고, 단계 S401-D1에 있어서, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스를 결정하고; S401-D2에 있어서, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스에 따라, 분류 정보를 결정한다.
일부 실시예에 있어서, 하나의 인코딩 모드는 하나의 인덱스에 대응되고, 일반 인트라 프레임 인코딩 모드, MIP 모드, IBC 모드, ISP 모드, PLT 모드, 일반 인터 프레임 인코딩 모드, skip 모드, merge 모드, CIIP 모드는 각각 상이한 인덱스 값을 기설정한다. 이에 기반하여, 필터링될 이미지 중 각 이미지 영역에 대응되는 인코딩 모드의 인덱스에 따라, 분류 정보를 결정할 수 있고, 예를 들어, 필터링될 이미지 중 각 이미지 영역에 대응되는 인코딩 모드는 모두 일반 인트라 프레임 인코딩 모드이고, 일반 인트라 프레임 인코딩 모드의 인덱스 값이 0이면, 분류 정보를 0값 또는 모두 0인 매트릭스로 결정할 수 있다.
일부 실시예에 있어서, 복수 개의 인코딩 모드는 하나의 인덱스에 대응되고, 예를 들어 일반 인트라 프레임 인코딩 모드의 인덱스 값이 0이면, MIP 모드, IBC 모드, ISP 모드 및 PLT 모드의 인덱스 값은 1이고, 일반 인터 프레임 인코딩 모드의 인덱스 값은 2이며, skip 모드 및 merge 모드의 인덱스 값은 3이고, CIIP 모드의 인덱스 값은 4이다. 이에 기반하여, 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스에 따라, 분류 정보를 결정할 수 있다. 예를 들어, 필터링될 이미지 중 제1 영역에 대응되는 인코딩 모드는 skip 모드 및 merge 모드이고, 제2 영역에 대응되는 인코딩 모드는 일반 인터 프레임 인코딩 모드임으로써, 분류 정보 중 제1 영역에 대응되는 요소의 값을 3으로 결정할 수 있고, 인코딩 모드 지시 정보 중 제2 영역에 대응되는 요소의 값은 2이다. 이때, 상기 분류 정보는 하나의 매트릭스이다.
상기 경우 1 내지 경우 3은 각각 분류 정보가 필터링될 이미지의 인코딩 이미지 타입 및 인코딩 방식을 지시하는 방식을 각각 소개한다.
일부 실시예에 있어서, 분류 정보는 3 개의 매트릭스를 통해 상기 경우 1 내지 경우 3에서 전술한 인코딩 이미지 타입 및 인코딩 모드를 지시할 수 있다. 예시적으로, 매트릭스 A는 필터링될 이미지의 인코딩 이미지 타입을 지시하기 위한 것이고, 구체적으로 상기 경우 1의 설명에 따라, 매트릭스 A의 값을 결정한다. 매트릭스 B는 필터링될 이미지의 인코딩 모드가 인트라 프레임 인코딩 모드인지 인터 프레임 인코딩 모드인지를 지시하기 위한 것이거나, 인트라 프레임 인코딩 모드 및 인터 프레임 인코딩 모드가 공존하는 것을 지시하며, 구체적으로 상기 경우 2의 설명에 따라, 매트릭스 B의 값을 결정한다. 매트릭스 C는 필터링될 이미지가 구체적으로 사용하는 인코딩 모드를 지시하기 위한 것이고, 예를 들어 인트라 프레임 인코딩 모드 또는 인터 프레임 인코딩 모드 중 구체적으로 어느 인코딩 모드를 사용하는지 여부를 지시하기 위한 것이며, 구체적으로 상기 경우 3의 설명에 따라, 매트릭스 C의 값을 결정한다.
분류 지시 정보가 인코딩 이미지 타입 및 인코딩 모드를 동시에 지시하면, 분류 정보는 매트릭스 A, 매트릭스 B 및 매트릭스 C 중의 적어도 하나를 포함한다.
예시적으로, 분류 지시 정보가 인코딩 이미지 타입을 지시하고, 인코딩 모드를 지시하지 않으면, 분류 정보는 매트릭스 A만을 포함할 수 있고, 매트릭스 B 및 매트릭스 C를 포함하지 않을 수 있다.
예시적으로, 분류 지시 정보가 인코딩 이미지 타입을 지시하지 않지만, 인코딩 모드를 지시하는 경우, 분류 정보는 매트릭스 A를 포함하지 않고, 매트릭스 B 및 매트릭스 C 중의 적어도 하나를 포함한다.
일부 실시예에 있어서, 실제 경우에 따라, 상기 매트릭스는 하나의 요소만을 포함하는 데이터일 수도 있다.
본 출원의 실시예에 있어서, 상기 방법에 따라, 필터링될 이미지의 분류 정보를 결정한 후, 아래의 단계 S402를 실행한다.
단계 S402에 있어서, 필터링될 이미지 및 필터링될 이미지의 분류 정보를 동일한 딥 러닝 기반의 필터링 모델에 입력하여, 필터링 모델로 하여금 분류 정보에 기반하여 필터링될 이미지에 대해 필터링을 수행하도록 하여, 필터링된 이미지를 얻는다.
본 출원의 실시예의 필터링 모델은 딥 러닝 기반 범용 모델이고, 모델의 예측 정확성을 향상시키기 위해, 도 7a에 도시된 바와 같이, 필터링될 이미지를 필터링 모델에 입력하는 것 외에, 또한 필터링될 이미지의 분류 정보를 필터링 모델에 입력하며, 즉 인코딩 타입의 보조 정보를 도입하여 필터링 모델의 입력으로 사용하여, 동일한 필터를 단순히 사용하여 더 많은 특성을(인트라 프레임 인코딩 모드 및 인터 프레임 인코딩 모드를 포함하는 것을 동시에 처리) 처리하는 이미지로 인한 필터링 성능 저하를 피하고, 이미지를 위해 더욱 미세한 이미지 정보를 제공할 수 있음으로써, 필터링될 이미지의 분류 정보에 따라 필터링될 이미지의 각 이미지 영역에 대해 필터링을 수행하는 경우, 필터링 효과를 향상시킬 수 있다.
본 출원의 실시예는 필터링 모델의 구체적인 네트워크 구조에 대해 한정하지 않고, 도 7a는 다만 예일 뿐이다.
일부 실시예에 있어서, 상기 단계 S402에서 필터링될 이미지 및 필터링될 이미지의 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하는 것은, 필터링될 이미지 및 분류 정보 중의 적어도 하나에 대해 전처리를 수행한 후, 필터링 모델에 입력하는 단계 S402-A를 포함한다.
전처리 예 1에 있어서, 필터링될 이미지 및 분류 정보에 대해 레이어 병합을 수행한 후, 필터링 모델에 입력한다 .
예로서, 레이어 병합은 DenseNet이 연결 (concatenate) 작업을 수행하는 것을 통해 구현되고, DenseNet는 채널 병합을 수행하기 위한 것이고, 레이어 병합의 예로서, 필터링될 이미지에 이미 포함된 세 개의 채널(레드 그린 블루)의 그레이 스케일 데이터의 기초 위에, 하나의 분류 정보 채널을 증가하여 분류 정보를 기록함으로써, 병합된 필터링될 이미지로 하여금 네 개의 채널의 데이터를 포함하도록 한다.
전처리 예 2에 있어서, 필터링될 이미지 및 분류 정보에 대해 곱셈을 수행한 후, 필터링 모델에 입력한다.
곱셈의 예로서, 도트 곱셈을 통해 구현될 수 있고, 즉 필터링될 이미지 각 픽셀 포인트의 세 개의 채널(레드 그린 블루)의 그레이 스케일 데이터를, 각각 분류 정보의 임베디드 벡터 표시와 곱셈을 수행하고, 곱셈하여 얻은 세 개의 채널의 그레이 스케일 데이터를 필터링 모델의 입력으로 사용한다.
전처리 예 3에 있어서, 도 7b에 도시된 바와 같이, 필터링될 이미지 및 분류 정보에 대해 곱셈을 수행(예를 들어 전술한 도트 곱셈)한 후 제1 특징 추출 유닛에 입력하여, 필터링될 이미지 및 분류 정보가 융합된 이후의 제1 특징 정보를 얻고; 필터링될 이미지를 제2 특징 추출 유닛에 입력하여 특징 추출을 수행하여, 필터링될 이미지의 제2 특징 정보를 얻으며; 제1 특징 정보 및 제2 특징 정보를 필터링 모델에 입력하여, 필터링될 이미지의 필터링된 이미지를 얻는다.
본 출원의 실시예는 필터링 모델의 구체적인 네트워크 구조에 대해 한정하지 않고, 도 7b는 다만 예일 뿐이다. 본 출원의 실시예는 제1 특징 추출 유닛 및 제2 특징 추출 유닛의 구체적인 네트워크 구조에 대해 한정하지 않는다. 예시적으로, 도 7b에 도시된 바와 같이, 제1 특징 추출 유닛은 하나의 컨볼루션 층(conv, 스텝 사이즈S=1) 및 하나의 활성화 함수(prelu 활성화 함수)를 포함하고, 제2 특징 추출 유닛도 하나의 컨볼루션 층(스텝 사이즈S=1) 및 하나의 활성화 함수(prelu 함수)를 포함한다. 일부 실시예에 있어서, 활성화 함수는 도 7b에 도시된 prelu 활성화 함수인 것 외에, 또한 relu 활성화 함수와 같은 다른 타입의 활성화 함수일 수 있고, 본 출원의 실시예는 이에 대해 한정하지 않는다. 제2 특징 추출 유닛의 구조는 제1 특징 추출 유닛과 동일할 수 있다.
일부 실시예에 있어서, 상기 단계 S402에서 필터링될 이미지 및 필터링될 이미지의 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하는 것은, 필터링될 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나, 필터링될 이미지 및 분류 정보를 필터링 모델에 입력하는 단계 S402-B를 포함한다. 여기서, 예측 이미지는 현재 필터링될 이미지에 대응되는 예측 이미지이고, 각 예측 블록의 스티칭에 의해 형성된다.
블록 분할 정보는 현재 필터링될 이미지에 대응되는 블록 분할 이미지이다. 두 가지 생성 방식을 구비하되, 첫 번째 방식은, 블록 분할 경계 및 비 블록 분할 경계에 상이한 값을 분배하는 것이고; 두 번째 방식은, 각 블록 분할 경계 내의 영역(코딩 유닛)을 현재 영역 내의 필터링될 이미지의 평균값을 사용하여 충진하는 것이다.
양자화 파라미터는 시퀀스 레벨 양자화 파라미터 및 슬라이스 레벨 양자화 파라미터 중의 적어도 하나를 포함한다. 시퀀스 레벨 양자화 파라미터는 현재 시퀀스(모든 프레임, 슬라이스 및 타일 등)에 작용하는 양자화 파라미터이고, 다른 양자화 파라미터는 이 기초 위에 오프셋을 증가하여 얻는다. 슬라이스 레벨 양자화 파라미터는 현재 슬라이스에 작용하는 양자화 파라미터이다.
일 예에 있어서, 필터링될 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나를, 필터링될 이미지 및 분류 정보와 융합한 후, 필터링 모델에 입력하여, 필터링될 이미지의 필터링된 이미지를 얻는다.
다른 일 예에 있어서, 단계 S402-B는, 예측 이미지를 제1 처리 유닛에 입력하여, 예측 이미지의 특징 정보를 얻는 단계 S402-B1; 필터링될 이미지를 제2 처리 유닛에 입력하여, 필터링될 이미지의 특징 정보를 얻는 단계 S402-B2; 예측 이미지의 특징 정보, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나, 필터링될 이미지의 특징 정보 및 분류 정보를 필터링 모델에 입력하여, 필터링될 이미지의 필터링된 이미지를 얻는 단계 S402-B3을 포함한다.
본 출원의 실시예에 있어서, 먼저 필터링될 이미지에 대응되는 예측 이미지를 제1 처리 유닛에 입력하여, 예측 이미지의 특징 정보를 얻는다. 필터링될 이미지를 제2 처리 유닛에 입력하여, 필터링될 이미지의 특징 정보를 얻는다. 예측 이미지의 특징 정보, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나를, 도 7c에 도시된 바와 같이, 예측 이미지의 특징 정보, 양자화 파라미터, 필터링될 이미지의 특징 정보 및 분류 정보를 필터링 모델에 입력하여, 필터링될 이미지의 필터링된 이미지를 얻는다.
본 출원의 실시예는 제1 처리 유닛, 제2 처리 유닛 및 필터링 모델의 구체적인 네트워크 구조에 대해 한정하지 않는다. 예시적으로, 도 7c에 도시된 바와 같이, 제1 처리 유닛은 하나의 컨볼루션 층 및 하나의 활성화 함수를 포함한다. 예시적으로, 도 7c에 도시된 바와 같이, 제2 처리 유닛은 하나의 컨볼루션 층 및 하나의 활성화 함수를 포함한다.
일부 실시예에 있어서, 상기 활성화 함수는 도 7c에 도시된 prelu 활성화 함수인 것 외에, 또한 다른 타입의 활성화 함수일 수 있고, 본 출원의 실시예는 이에 대해 한정하지 않는다.
본 출원의 실시예의 필터링 모델의 네트워크 구조는 도 7a 내지 도 7c에 도시된 구조 외에, 또한 다른 구조일 수 있고, 본 출원은 필터링 모델의 구체적인 네트워크 구조에 대해 한정하지 않는다.
일부 실시예에 있어서, 예측 이미지의 특징 정보, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나를, 필터링될 이미지의 특징 정보 및 분류 정보와 융합한 후, 필터링 모델에 입력한다.
예를 들어, 도 7c에서 예측 이미지의 특징 정보, 양자화 파라미터, 필터링될 이미지의 특징 정보 및 분류 정보를 병합한 후, 필터링 모델에 입력할 수 있다.
또 예를 들어, 도 7c에서 예측 이미지의 특징 정보, 양자화 파라미터, 필터링될 이미지의 특징 정보 및 분류 정보에 대해 곱셈을 수행한 후, 필터링 모델에 입력할 수 있다.
일부 실시예에 있어서, 도 7a 내지 도 7c를 참조하면, 본 출원의 실시예의 필터링 모델은, 순차적으로 연결된 컨볼루션 층(스텝 사이즈s=1), 활성화 함수(prelu 활성화 함수), N 개의 잔차 블록(N은 양의 정수임), 컨볼루션 층(스텝 사이즈s=1) 및 업 샘플링 층을 포함하는 필터링 모델의 네트워크 구조를 포함한다. 상기 N 개의 잔차 블록의 네트워크 구조는 동일할 수 있고, 상이할 수도 있다.
일부 실시예에 있어서, N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함되는 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 동일하다.
예시적으로, 도 8a에 도시된 바와 같이, N 개의 잔차 블록 중의 적어도 하나의 잔차 블록은 하나의 1x1 컨볼루션 층 및 3x3 컨볼루션 층을 포함하고, 상기 1x1 컨볼루션 층 및 3x3 컨볼루션 층의 입력 출력 채널수는 동일하다.
일부 실시예에 있어서, 도 8a에 도시된 잔차 블록의 기초 위에 어텐션 층을 증가할 수 있고, 예를 들어 도 8b에 도시된 바와 같이, 컨볼루션 블록 어텐션 모듈(Convolutional Block Attention Module, CBAM)을 증가할 수 있다.
일부 실시예에 있어서, N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함되는 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 상이하다.
예시적으로, 도 8c에 도시된 바와 같이, N 개의 잔차 블록 중의 적어도 하나의 잔차 블록은 하나의 1x1 컨볼루션 층 및 3x3 컨볼루션 층을 포함하고, 상기 1x1 컨볼루션 층 및 3x3 컨볼루션 층의 입력 출력 채널수는 상이하다. 예를 들어, 활성화 함수 전에 채널수를 증가하고, 활성화 함수 후에 채널수를 저하시키도록 설정할 수 있으며, 첫 번째 1x1 컨볼루션 층의 입력 출력 채널수는 각각 64 및 192이고, 두 번째 1x1 컨볼루션 층의 입력 출력 채널수는 각각 192 및 64이며, 세 번째 3x3 컨볼루션 층의 입력 출력 채널수는 각각 64 및 64이다.
일부 실시예에 있어서, 도 8c에 도시된 잔차 블록의 기초 위에 어텐션 층을 증가할 수 있고, 예를 들어 도 8b에 도시된 바와 같이, 컨볼루션 블록 어텐션 모듈(Convolutional Block Attention Module, CBAM)을 증가할 수 있다.
설명해야 할 것은, 상기 도 7a 내지 도 8d는 본 출원과 관련된 필터링 모델의 네트워크 구조 예일 뿐이고, 본 출원의 실시예의 필터링 모델의 네트워크 구조는 상기 도 7a 내지 도 8d에 도시된 구조를 포함하지만 이에 한정되지 않고, 상기 도 7a 내지 도 8d에 도시된 구체적인 파라미터는 다만 예일 뿐, 본 출원의 실시예는 이에 대해 한정하지 않는다.
본 출원의 실시예의 필터링 모델은 인트라 프레임 인코딩 모드에서의 필터링될 이미지에 대해 필터링을 수행하는 것을 구현할 수 있고, 인터 프레임 인코딩 모드에서의 필터링될 이미지에 대해 필터링을 수행하는 것을 구현할 수도 있으며, 이는 상이한 모드에서의 필터링될 이미지에 대한 범용 필터링 모델에 해당되며, 상이한 모드에 대해 대응되는 필터링 모델을 각각 구축하는 것에 비해, 모델 파라미터의 저장 공간 점유율을 크게 저하시키고, 모델 파라미터 저장 비용이 저렴하며; 또한, 필터링 모델을 통해 분류 정보를 결합하여, 필터링될 이미지에 대해 차별화 필터링을 수행함으로써, 상이한 모드의 필터링될 이미지에 적용될 수 있고, 필터링될 이미지의 필터링 효과를 향상시킨다.
위에서는 본 출원의 실시예와 관련된 이미지 필터링 방법에 대해 상세히 소개하고, 필터링 모델을 사용하여 상기 이미지 필터링을 수행하기 전, 먼저 필터링 모델에 대한 훈련을 수행해야 한다. 아래는 필터링 모델의 훈련 과정을 소개한다.
도 9에 도시된 바와 같이, 본 출원의 실시예의 필터링 모델의 훈련 과정은 아래의 같은 몇 개의 단계를 포함한다.
단계 901에 있어서, 데이터 세트를 생성한다.
(인코딩 및 디코딩) 소프트웨어를 사용하여 훈련 세트를 생성한다.
설명해야 할 것은, 상기 훈련 세트에 포함된 훈련 이미지는 인트라 프레임 인코딩 모드에서의 이미지를 포함하고, 인터 프레임 인코딩 모드에서의 이미지도 포함한다.
또한, 상기 훈련 세트에는 각 훈련 이미지의 인코딩 정보가 더 포함되고, 여기서 인코딩 정보는 분류 정보를 포함하고, 상기 분류 정보는 훈련 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시한다.
단계 902에 있어서, 모델을 훈련한다.
훈련 세트를 사용하여 필터링 모델에 대한 훈련을 수행한다. 구체적으로, 상기 훈련 이미지 및 훈련 이미지의 분류 정보를 필터링 모델에 입력하여 필터링 모델에 대해 훈련을 수행하고, 훈련된 필터링 모델을 얻는다.
모델을 훈련하는 과정에서, 손실 함수를 사용하게 되며, 손실 함수는 예측값과 실제값의 차이를 측정하며, 손실값 loss가 클수록, 차이값이 큰 것을 표시하고, 훈련의 목적은 loss를 줄이기 위한 것이다. 본 출원의 실시예의 손실 함수에는 L1 놈(norm) 손실 함수, L2 놈 손실 함수 및 smooth L1 손실 함수가 존재한다.
필터링 모델은 실제 사용되는 경우 일반적으로 하나의 프레임 전체를 직접 입력하여 필터링을 수행하는 것이 아니라, 이미지를 서브 이미지로 분할한 다음, 점층적으로 서브 이미지를 필터링 모델에 입력하여 필터링을 수행한다. 서브 이미지의 크기는 클 수도 있고 작을 수도 있기 때문에, 필터링 모델에 입력된 필터링될 이미지는 슬라이스/타일 경계를 가로지르는 경우가 존재할 수 있다
이에 기반하여, 일부 실시예에 있어서, 훈련 이미지 및 훈련 이미지의 분류 정보를 필터링 모델에 입력하는 것 외에, 또한 훈련 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나를 필터링 모델에 입력하여, 필터링 이미지가 훈련 이미지에 대한 더 많은 정보를 학습하도록 함으로써, 모델의 필터링 효과를 향상시킬 수 있다.
단계 903에 있어서, 소프트웨어를 통합한다.
훈련된 필터링 모델을 소프트웨어에 통합하여 필터링을 수행한다. 예를 들어, 상기 훈련된 필터링 모델을 상기 인코더 및 디코더 중 적어도 하나에 통합하여, 재구축된 이미지에 대해 필터링을 수행하여, 재구축 효과를 향상시킨다.
이해해야 할 것은, 도 4 내지 도 9는 다만 본 출원의 실시예의 예로서, 본 출원의 실시예에 대한 한정으로 이해해서는 안된다.
이상 첨부 도면을 참조하여 본 출원의 실시예의 바람직한 실시형태를 상세하게 설명하였으나, 본 출원은 상기 실시형태의 구체적인 세부사항에 한정되지 않으며, 본 출원의 실시예의 기술구상의 범위 내에서 본 출원의 실시예의 기술방안에 대해 다양한 단순 변형을 할 수 있으며, 이러한 단순 변형은 모두 본 출원의 실시예의 보호범위에 속한다. 예를 들어, 상기 구체적인 실시예에서 설명된 각각의 구체적인 기술적 특징은 모순되지 않는 한 임의의 적절한 방식으로 조합할 수 있으며, 불필요한 중복을 피하기 위해 본 출원에서는 다양한 가능한 조합 방법에 대해 별도로 설명하지 않는다. 또 예를 들어, 본 출원의 실시예의 각 상이한 실시 형태들 사이에서도 임의로 조합할 수 있으며, 본 출원의 실시예의 사상에 위배되지 않는 한, 마찬가지로 본 출원에 공개된 내용으로 간주되어야 한다.
위의 내용에서 도 4 내지 도 12를 결합하여, 본 출원의 실시예의 방법 실시예를 상세하게 설명하고, 아래에 본 출원의 장치 실시예를 상세하게 설명한다.
도 10은 본 출원의 실시예에서 제공한 이미지 필터링 장치의 구조 예시도이고, 이미지 필터링 장치(10)는 필터링될 이미지의 인코딩 정보를 결정하도록 구성된 결정 유닛(11) - 상기 인코딩 정보는 상기 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시함 - ; 및 상기 필터링될 이미지와 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하여, 필터링 모델로 하여금 상기 분류 정보에 기반하여 상기 필터링될 이미지에 대해 필터링을 수행하도록 하여, 필터링된 이미지를 얻도록 구성된 필터링 유닛(12)을 포함한다.
일부 실시예에 있어서, 인코딩 이미지 타입은 풀 인트라 프레임 인코딩 이미지 및 인터 프레임 인코딩 가능한 이미지를 포함하고, 상기 분류 정보가 상기 필터링될 이미지의 인코딩 이미지 타입을 지시하면, 일부 실시예에 있어서, 상기 분류 정보는 슬라이스 레벨, 이미지 블록 레벨 또는 이미지 헤드 레벨에서 지시된다.
이때 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 이미지 타입을 획득하고; 상기 복수 개의 이미지 영역이 모두 상기 풀 인트라 프레임 인코딩 이미지에 속하면, 상기 분류 정보의 값을 제1 값으로 결정하고; 상기 복수 개의 이미지 영역이 모두 상기 인터 프레임 인코딩 가능한 이미지에 속하면, 상기 분류 정보의 값을 제2 값으로 결정하며; 상기 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르면, 상기 분류 정보의 값을 제3 값으로 결정하거나, 상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 상기 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 상기 필터링될 이미지에서의 비율에 따라, 상기 분류 정보의 값을 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지의 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제1 값으로 결정하고; 상기 필터링될 이미지의 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 임계값보다 작으면, 상기 분류 정보의 값을 상기 제2 값으로 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지의 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제1 값으로 결정하고; 상기 필터링될 이미지의 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 임계값보다 작고, 제2 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제2 값으로 결정하며; 상기 필터링될 이미지의 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제2 임계값보다 작으면, 상기 분류 정보의 값을 제3 값으로 결정하도록 구성된다.
일부 실시예에 있어서, 인코딩 모드는 인트라 프레임 인코딩 모드 및 인터 프레임 인코딩 모드를 포함하고, 상기 분류 정보가 필터링될 이미지의 인코딩 모드를 지시하면, 상기 분류 정보는 제1 분류 정보 및 제2 분류 정보 중의 적어도 하나를 포함하며; 여기서, 상기 제1 분류 정보는 상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 지시하기 위한 것이고, 상기 제2 분류 정보는 상기 필터링될 이미지 중 기설정된 크기 영역에 대응되는 인코딩 모드를 지시하기 위한 것이다. 일부 실시예에 있어서, 상기 분류 정보는 블록 레벨에서 지시된다.
일부 실시예에 있어서, 상기 분류 정보가 상기 제1 분류 정보를 포함하면, 상기 제1 분류 정보는 복수 개의 요소를 포함하는 매트릭스이고, 상기 매트릭스 중의 각 요소와 상기 필터링될 이미지 중의 하나 또는 복수 개의 픽셀 포인트의 인코딩 모드가 대응되면, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 획득하고; 상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드에 따라, 상기 제1 분류 정보를 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 상기 인트라 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 각 매트릭스 요소의 값을 제1 값으로 결정하고; 상기 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 상기 인터 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 각 매트릭스 요소의 값을 제2 값으로 결정하고; 상기 필터링될 이미지 중 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 상기 인트라 프레임 인코딩 모드이고, 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 상기 인터 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 상기 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소의 값을 상기 제1 값으로 결정하고, 상기 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소의 값을 상기 제2 값으로 결정하도록 구성된다.
일부 실시예에 있어서, 상기 분류 정보가 상기 제2 분류 정보를 포함하면, 결정 유닛(11)은, 구체적으로, 상기 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율에 따라, 상기 제2 분류 정보를 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 상기 제2 분류 정보의 값을 제1 값으로 결정하고; 상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 기설정된 임계값보다 작은 경우, 상기 제2 분류 정보의 값을 제2 값으로 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같으면, 상기 제2 분류 정보의 값을 제1 값으로 결정하고; 상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 기설정된 임계값보다 작고, 제2 기설정된 임계값보다 크거나 같으면, 상기 제2 분류 정보의 값을 제2 값으로 결정하고; 상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제2 기설정된 임계값보다 작으면, 상기 제2 분류 정보의 값을 제3 값으로 결정한다.
일부 실시예에 있어서, 상기 인코딩 모드는, 일반 인트라 프레임 인코딩 모드, 매트릭스 가중 인트라 프레임 예측(MIP) 모드, 인트라 프레임 블록 복제(IBC) 모드, 인트라 프레임 스트링 예측(ISP) 모드, 팔레트(PLT) 모드, 일반 인터 프레임 인코딩 모드, 스킵(Skip) 모드, 모션 병합(Merge) 모드, 인터 프레임 및 인트라 프레임 연합 예측(CIIP) 모드 중의 적어도 하나를 포함하고; 상기 분류 정보가 상기 필터링될 이미지의 인코딩 모드를 지시하면, 일부 실시예에 있어서, 상기 분류 정보는 블록 레벨에서 지시된다.
이때, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드를 획득하고; 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드에 따라, 상기 분류 정보를 결정하도록 구성된다.
일부 실시예에 있어서, 결정 유닛(11)은 구체적으로, 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스를 결정하고; 상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스에 따라, 상기 분류 정보를 결정하도록 구성된다.
일부 실시예에 있어서, 하나의 인코딩 모드는 하나의 인덱스에 대응되고, 또는 복수 개의 인코딩 모드는 하나의 인덱스에 대응된다.
일부 실시예에 있어서, 필터링 유닛(12)은, 구체적으로, 상기 필터링될 이미지 및 상기 분류 정보 중의 적어도 하나에 대해 전처리를 수행한 후, 상기 필터링 모델에 입력하도록 구성된다.
일부 실시예에 있어서, 필터링 유닛(12)은 구체적으로, 상기 필터링될 이미지 및 상기 분류 정보에 대해 레이어 병합을 수행한 후, 상기 필터링 모델에 입력하도록 구성된다.
일부 실시예에 있어서, 필터링 유닛(12)은 구체적으로, 상기 필터링될 이미지 및 상기 분류 정보에 대해 곱셈을 수행한 후 제1 특징 추출 유닛에 입력하여, 상기 필터링될 이미지 및 상기 분류 정보가 융합된 후의 제1 특징 정보를 얻고; 상기 필터링될 이미지를 제2 특징 추출 유닛에 입력하여 특징 추출을 수행하여, 상기 필터링될 이미지의 제2 특징 정보를 얻으며; 상기 제1 특징 정보 및 상기 제2 특징 정보를 상기 필터링 모델에 입력하도록 구성된다.
일부 실시예에 있어서, 필터링 유닛(12)은 구체적으로, 상기 필터링될 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나, 상기 필터링될 이미지 및 상기 분류 정보를 상기 필터링 모델에 입력하도록 구성된다.
일부 실시예에 있어서, 필터링 유닛(12)은 구체적으로, 상기 예측 이미지를 제1 처리 유닛에 입력하여, 상기 예측 이미지의 특징 정보를 얻고; 상기 필터링될 이미지를 제2 처리 유닛에 입력하여, 상기 필터링될 이미지의 특징 정보를 얻으며; 상기 예측 이미지의 특징 정보, 상기 양자화 파라미터 및 상기 블록 분할 정보 중의 적어도 하나, 상기 필터링될 이미지의 특징 정보 및 상기 분류 정보를 상기 필터링 모델에 입력한다.
일부 실시예에 있어서, 상기 양자화 파라미터는 시퀀스 레벨 양자화 파라미터 및 슬라이스 레벨 양자화 파라미터 중의 적어도 하나를 포함한다.
일부 실시예에 있어서, 상기 필터링 모델은 N 개의 잔차 블록을 포함하고, 상기 N은 양의 정수이다.
일부 실시예에 있어서, 상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함된 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 동일하고, 또는, 상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함된 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 상이하다.
일부 실시예에 있어서, 상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록에는 어텐션 층이 포함된다.
일부 실시예에 있어서, 상기 필터링된 이미지는 향후 이미지의 참조 이미지로 사용되고, 또는, 상기 필터링된 이미지는 디스플레이에 사용되며, 향후 이미지의 참조 이미지에 사용되지 않는다.
이해해야 할 것은, 장치 실시예와 방법 실시예는 상호 대응될 수 있고, 유사한 설명은 방법 실시예를 참조할 수 있다. 중복을 피하기 위해, 여기서 더이상 설명하지 않는다. 구체적으로, 도 10에 도시된 장치(10)는 상기 방법 실시예를 실행할 수 있고, 또한 장치(16)에서의 각 모듈의 전술한 조작, 다른 조작 및 기능 중 적어도 하나는 상기 방법 실시예를 구현하기 위한 것이며, 간결함을 위해, 여기서 더 이상 설명하지 않는다.
위의 내용은 첨부된 도면과 결합하여 기능 모듈의 각도에서 본 출원의 실시예의 장치를 설명한다. 이해해야 할 것은, 상기 기능 모듈은 하드웨어 형태로 구현될 수 있고, 소프트웨어 형태의 명령어로도 구현될 수 있으며, 또한 하드웨어 및 소프트웨어 모듈의 조합으로 구현될 수 있다. 구체적으로, 본 출원의 실시예에서의 방법 실시예의 각 단계는 프로세서에서의 하드웨어의 집적 논리 회로 및 소프트웨어 형태의 명령어를 통해 완성될 수 있고, 본 출원의 실시예를 결합하여 개시한 방법의 단계는 하드웨어 디코딩 프로세서에 의해 직접 실행되거나 디코딩 프로세서의 하드웨어 및 소프트웨어 모듈의 조합에 의해 실행될 수 있다. 선택적으로 소프트웨어 모듈은 랜덤 메모리, 플래시 메모리, 판독 전용 메모리, 프로그래머블 판독 전용 메모리, 전기적 소거 가능 프로그래머블 메모리, 레지스터 등 본 기술 분야에서 널리 알려진 저장 매체에 위치할 수 있다. 상기 저장 매체는 메모리에 위치하고, 프로세서는 메모리의 정보를 판독한 후 하드웨어와 결합하여 상기 방법의 실시예에서의 단계들을 완성한다.
도 11은 본 출원의 실시예에서 제공한 전자 기기의 예시적 블록도이고, 상기 전자 기기는 전술한 이미지 필터링 장치 또는 비디오 인코더 또는 비디오 디코더일 수 있다.
도 11에 도시된 바와 같이, 상기 전자 기기(40)은, 메모리(41) 및 메모리(42), 상기 메모리(41)는 컴퓨터 프로그램을 저장하고, 상기 프로그램 코드를 상기 메모리(42)에 전송하기 위한 것이다. 다시 말해, 상기 메모리(42)는 본 출원의 실시예에 따른 이미지 필터링 방법을 구현하기 위해 메모리(41)로부터 컴퓨터 프로그램(34)을 호출 및 실행한다. 예를 들어, 상기 메모리(42)는 상기 컴퓨터 프로그램에서의 명령어에 따라 상기 방법 실시예를 실행하기 위한 것이다.
본 출원의 실시예의 일부 실시예에 있어서, 상기 메모리(42)는, 범용 프로세서, 디지털 신호 프로세서(Digital Signal Processor, DSP), 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array, FPGA) 또는 다른 프로그래머블 논리 소자, 개별 게이트 또는 트랜지스터 논리 소자, 개별 하드웨어 어셈블리 등을 포함할 수 있지만 이에 한정되지 않는다.
본 출원의 실시예의 일부 실시예에 있어서, 상기 메모리(41)는 휘발성 메모리 및 비 휘발성 메모리 중 적어도 하나를 포함하지만 이에 한정되지 않는다. 여기서, 비 휘발성 메모리는 판독 전용 메모리(Read-Only Memory, ROM), 프로그래머블 판독 전용 메모리(Programmable ROM, PROM), 소거 가능 프로그래머블 판독 전용 메모리(Erasable PROM, EPROM), 전기적 소거 가능 프로그래머블 판독 전용 메모리(Electrically EPROM, EEPROM) 또는 플래시 메모리일 수 있다. 휘발성 메모리는 외부 쾌속 캐시 역할을 하는 랜덤 액세스 메모리(Random Access Memory, RAM)일 수 있다. 한정이 아닌 예시적인 설명을 통해, 많은 형태의 RAM을 사용 가능하며, 예를 들어, 정적 랜덤 액세스 메모리(Static RAM, SRAM), 동적 랜덤 액세스 메모리(Dynamic RAM, DRAM), 동기식 동적 랜덤 액세스 메모리(Synchronous DRAM, SDRAM), 더블 데이터 레이트 싱크로너스 동적 랜덤 액세스 메모리(Double Data Rate SDRAM, DDRSDRAM), 향상된 동기식 동적 랜덤 액세스 메모리(Enhanced SDRAM, ESDRAM), 동기식 연결 동적 랜덤 액세스 메모리(synch link DRAM, SLDRAM) 및 직접 메모리 버스 랜덤 액세스 메모리(Direct Rambus RAM, DRRAM)이다.
본 출원의 실시예의 일부 실시예에 있어서, 상기 컴퓨터 프로그램은 하나 또는 복수 개의 모듈로 분할될 수 있고, 상기 하나 또는 복수 개의 모듈은 상기 메모리(41)에 저장되며, 본 출원의 실시예에서 제공한 방법을 완성하기 위해, 상기 메모리(42)에 의해 실행된다. 상기 하나 또는 복수 개의 모듈은 특정 기능을 완료할 수 있는 일련의 컴퓨터 프로그램 명령 세그먼트일 수 있고, 이 명령 세그먼트는 상기 컴퓨터 프로그램이 상기 비디오 제작 기기에서의 실행 과정을 설명하기 위한 것이다.
도 11에 도시된 바와 같이, 상기 전자 기기(40)는, 트랜시버(40), 상기 트랜시버(43)는 상기 메모리(42) 또는 메모리(41)에 연결될 수 있다. 여기서 메모리(42)는 상기 트랜시버(43)가 다른 기기와 통신하도록 제어할 수 있고, 구체적으로, 다른 기기에 정보 또는 데이터를 송신하거나, 다른 기기에 의해 송신된 정보 또는 데이터를 수신하도록 제어할 수 있다. 트랜시버(43)는 송신기 및 수신기를 포함할 수 있다. 트랜시버(43)는 또한 안테나를 포함할 수 있으며, 안테나의 개수는 하나거나 복수 개일 수 있다.
이해해야될 것은, 상기 비디오 제작 기기에서의 각 컴포넌트는 버스 시스템을 통해 연결되고, 여기서, 버스 시스템은 데이터 버스를 포함하는 외에 전원 버스, 제어 버스 및 상태 신호 버스를 더 포함한다.
본 출원은 컴퓨터 프로그램이 저장되어 있는 컴퓨터 판독 가능한 저장 매체를 더 제공하고, 상기 컴퓨터 프로그램이 전자 기기에 의해 실행될 경우 상기 전자 기기로 하여금 상기 이미지 필터링 방법을 실행하도록 한다. 또는, 본 출원의 실시예는, 명령어를 포함한 컴퓨터 프로그램 제품을 더 제공하고, 상기 명령어가 컴퓨터에 의해 실행될 경우, 전자 기기로 하여금 상기 이미지 필터링 방법 실시예의 방법을 실행하도록 한다.
분리 부재로서 설명된 모듈은 물리적으로 분리된 것이거나 아닐 수 있고, 모듈으로 나타낸 부재는 물리적 부재거나 아닐 수 있고, 즉 한 곳에 위치하거나, 복수 개의 네트워크 유닛에 분포될 수도 있다. 모듈의 일부 또는 전부는 실시예의 방안의 목적을 달성하기 위한 실제 필요에 따라 선택될 수 있다. 예를 들어, 본 출원의 실시예에서의 기능 모듈은 하나의 처리 모듈에 통합될 수 있거나, 각각의 모듈이 물리적으로 단독으로 존재할 수 있거나, 둘 이상의 모듈이 하나의 모듈에 통합될 수 있다.
이상의 내용은 본 출원의 구체적인 실시 형태에 불과한 것으로서 본 출원의 보호 범위는 이에 한정되지 않는다. 본 출원이 속하는 기술분야의 통상의 지식을 가진 자라면 본 출원에 개시된 기술적 범위 내의 변화 또는 교체는 모두 본 출원의 보호범위 내에 속해야 함을 알 수 있을 것이다. 따라서, 본 출원의 보호 범위는 청구 범위의 보호 범위를 기준으로 해야 한다.

Claims (30)

  1. 이미지 필터링 방법으로서,
    필터링될 이미지의 인코딩 정보를 결정하는 단계 - 상기 인코딩 정보는 상기 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시함 - ; 및
    상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하여, 상기 필터링 모델로 하여금 상기 인코딩 정보에 기반하여 상기 필터링될 이미지에 대해 필터링을 수행하도록 하여, 필터링된 이미지를 얻는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  2. 제1항에 있어서,
    상기 인코딩 이미지 타입은 풀 인트라 프레임 인코딩 이미지 및 인터 프레임 인코딩 가능한 이미지를 포함하고, 상기 분류 정보가 상기 필터링될 이미지의 인코딩 이미지 타입을 지시하면, 상기 필터링될 이미지의 인코딩 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 이미지 타입을 획득하는 단계;
    상기 복수 개의 이미지 영역이 모두 상기 풀 인트라 프레임 인코딩 이미지에 속하면, 상기 분류 정보의 값을 제1 값으로 결정하는 단계;
    상기 복수 개의 이미지 영역이 모두 상기 인터 프레임 인코딩 가능한 이미지에 속하면, 상기 분류 정보의 값을 제2 값으로 결정하는 단계; 및
    상기 필터링될 이미지가 슬라이스 경계 또는 타일 경계를 가로지르면, 상기 분류 정보의 값을 제3 값으로 결정하거나, 상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 상기 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 상기 필터링될 이미지에서의 비율에 따라, 상기 분류 정보의 값을 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  3. 제2항에 있어서,
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 상기 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 상기 필터링될 이미지에서의 비율에 따라, 상기 분류 정보를 결정하는 단계는,
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제1 값으로 결정하는 단계; 및
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 임계값보다 작으면, 상기 분류 정보의 값을 상기 제2 값으로 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  4. 제2항에 있어서,
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역 및 상기 인터 프레임 인코딩 가능한 이미지에 속하는 이미지 영역이 각각 상기 필터링될 이미지에서의 비율에 따라, 상기 인코딩 이미지 타입 지시 정보를 결정하는 단계는,
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제1 값으로 결정하는 단계; 및
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 임계값보다 작고, 제2 임계값보다 크거나 같으면, 상기 분류 정보의 값을 상기 제2 값으로 결정하는 단계; 및
    상기 복수 개의 이미지 영역 중 상기 풀 인트라 프레임 인코딩 이미지에 속하는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제2 임계값보다 작으면, 상기 분류 정보의 값을 상기 제3 값으로 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  5. 제2항에 있어서,
    상기 분류 정보는 슬라이스 레벨, 이미지 블록 레벨 또는 이미지 헤드 레벨에서 지시되는 것을 특징으로 하는 이미지 필터링 방법.
  6. 제1항에 있어서,
    상기 인코딩 모드는 인트라 프레임 인코딩 모드 및 인터 프레임 인코딩 모드를 포함하고, 상기 분류 정보가 필터링될 이미지의 인코딩 모드를 지시하면, 상기 분류 정보는 제1 분류 정보 및 제2 분류 정보 중 적어도 하나를 포함하고;
    상기 제1 분류 정보는 상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 지시하기 위한 것이고, 상기 제2 분류 정보는 상기 필터링될 이미지 중 기설정된 크기 영역에 대응되는 인코딩 모드를 지시하기 위한 것임을 특징으로 하는 이미지 필터링 방법.
  7. 제6항에 있어서,
    상기 분류 정보가 상기 제1 분류 정보를 포함하면, 상기 필터링될 이미지의 인코딩 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드를 획득하는 단계;
    상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드에 따라, 상기 인코딩 정보 중의 제1 분류 정보를 결정하는 단계를 포함하고;
    상기 제1 분류 정보는 복수 개의 요소를 포함하는 매트릭스이고, 상기 매트릭스 중의 각 요소와 상기 필터링될 이미지 중의 하나 또는 복수 개의 픽셀 포인트의 인코딩 모드는 대응되는 것을 특징으로 하는 이미지 필터링 방법.
  8. 제7항에 있어서,
    상기 필터링될 이미지 중 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드에 따라, 상기 제1 분류 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 상기 인트라 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 각 매트릭스 요소의 값을 제1 값으로 결정하는 단계;
    상기 필터링될 이미지 중 모든 픽셀 포인트에 대응되는 인코딩 모드가 상기 인터 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 각 매트릭스 요소의 값을 제2 값으로 결정하는 단계;
    상기 필터링될 이미지 중 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 상기 인트라 프레임 인코딩 모드이고, 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 인코딩 모드가 상기 인터 프레임 인코딩 모드이면, 상기 제1 분류 정보 중 상기 제1 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소의 값을 상기 제1 값으로 결정하고, 상기 제2 이미지 영역 중의 하나 또는 복수 개의 픽셀 포인트에 대응되는 매트릭스 요소의 값을 상기 제2 값으로 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  9. 제6항에 있어서,
    상기 분류 정보가 상기 제2 분류 정보를 포함하면, 상기 필터링될 이미지의 인코딩 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율에 따라, 상기 제2 분류 정보를 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  10. 제9항에 있어서,
    상기 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율에 따라, 상기 제2 분류 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같으면, 상기 제2 분류 정보의 값을 제1 값으로 결정하는 단계; 및
    상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 기설정된 임계값보다 작은 경우, 상기 제2 분류 정보의 값을 제2 값으로 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  11. 제9항에 있어서,
    상기 필터링될 이미지 중 상이한 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율에 따라, 상기 제2 분류 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 제1 기설정된 임계값보다 크거나 같은 경우, 상기 제2 분류 정보의 값을 제1 값으로 결정하는 단계;
    상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제1 기설정된 임계값보다 작고, 제2 기설정된 임계값보다 크거나 같으면, 상기 제2 분류 정보의 값을 제2 값으로 결정하는 단계; 및
    상기 필터링될 이미지 중 상기 인트라 프레임 인코딩 모드에 대응되는 이미지 영역이 상기 필터링될 이미지에서의 비율이 상기 제2 기설정된 임계값보다 작으면, 상기 제2 분류 정보의 값을 제3 값으로 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  12. 제6항에 있어서,
    상기 분류 정보는 블록 레벨에서 지시되는 것을 특징으로 하는 이미지 필터링 방법.
  13. 제1항에 있어서,
    상기 인코딩 모드는, 일반 인트라 프레임 인코딩 모드, 매트릭스 가중 인트라 프레임 예측(MIP) 모드, 인트라 프레임 블록 복제(IBC) 모드, 인트라 프레임 스트링 예측(ISP) 모드, 팔레트(PLT) 모드, 일반 인터 프레임 인코딩 모드, 스킵(Skip) 모드, 모션 병합(Merge) 모드, 인터 프레임 및 인트라 프레임 연합 예측(CIIP) 모드 중의 적어도 하나를 포함하고;
    상기 분류 정보가 상기 필터링될 이미지의 인코딩 모드를 지시하면, 상기 필터링될 이미지의 인코딩 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드를 획득하는 단계; 및
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드에 따라, 상기 인코딩 정보 중의 분류 정보를 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  14. 제13항에 있어서,
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드에 따라, 상기 인코딩 정보 중의 분류 정보를 결정하는 단계는,
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스를 결정하는 단계; 및
    상기 필터링될 이미지 중 복수 개의 이미지 영역에 대응되는 인코딩 모드의 인덱스에 따라, 상기 분류 정보를 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  15. 제14항에 있어서,
    하나의 인코딩 모드는 하나의 인덱스에 대응되고, 또는, 복수 개의 인코딩 모드는 하나의 인덱스에 대응되는 것을 특징으로 하는 이미지 필터링 방법.
  16. 제13항에 있어서,
    상기 분류 정보는 블록 레벨에서 지시되는 것을 특징으로 하는 이미지 필터링 방법.
  17. 제1항 내지 제16항 중 어느 한 항에 있어서,
    상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하는 단계는,
    상기 필터링될 이미지 및 상기 분류 정보 중의 적어도 하나에 대해 전처리를 수행한 후, 상기 필터링 모델에 입력하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  18. 제17항에 있어서,
    상기 필터링될 이미지 및 상기 분류 정보 중의 적어도 하나에 대해 전처리를 수행한 후, 상기 필터링 모델에 입력하는 단계는,
    상기 필터링될 이미지 및 상기 분류 정보에 대해 레이어 병합을 수행한 후, 상기 필터링 모델에 입력하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  19. 제17항에 있어서,
    상기 필터링될 이미지 및 상기 분류 정보 중의 적어도 하나에 대해 전처리를 수행한 후, 상기 필터링 모델에 입력하는 단계는,
    상기 필터링될 이미지 및 상기 분류 정보에 대해 곱셈을 수행한 후 제1 특징 추출 유닛에 입력하여, 상기 필터링될 이미지 및 상기 분류 정보가 융합된 이후의 제1 특징 정보를 얻는 단계;
    상기 필터링될 이미지를 제2 특징 추출 유닛에 입력하여 특징 추출을 수행하여, 상기 필터링될 이미지의 제2 특징 정보를 얻는 단계; 및
    상기 제1 특징 정보 및 상기 제2 특징 정보를 상기 필터링 모델에 입력하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  20. 제1항 내지 제16항 중 어느 한 항에 있어서,
    상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하는 단계는,
    상기 필터링될 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나, 상기 필터링될 이미지 및 상기 분류 정보를 상기 필터링 모델에 입력하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  21. 제20항에 있어서,
    상기 필터링될 이미지에 대응되는 예측 이미지, 양자화 파라미터 및 블록 분할 정보 중의 적어도 하나, 상기 필터링될 이미지 및 상기 분류 정보를 상기 필터링 모델에 입력하는 단계는,
    상기 예측 이미지를 제1 처리 유닛에 입력하여, 상기 예측 이미지의 특징 정보를 얻는 단계;
    상기 필터링될 이미지를 제2 처리 유닛에 입력하여, 상기 필터링될 이미지의 특징 정보를 얻는 단계; 및
    상기 예측 이미지의 특징 정보, 상기 양자화 파라미터 및 상기 블록 분할 정보 중의 적어도 하나, 상기 필터링될 이미지의 특징 정보 및 상기 분류 정보를 상기 필터링 모델에 입력하는 단계를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  22. 제20항에 있어서,
    상기 양자화 파라미터는 시퀀스 레벨 양자화 파라미터 및 슬라이스 레벨 양자화 파라미터 중의 적어도 하나를 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  23. 제1항 내지 제16항 중 어느 한 항에 있어서,
    상기 필터링 모델은 N 개의 잔차 블록을 포함하고, 상기 N은 양의 정수인 것을 특징으로 하는 이미지 필터링 방법
  24. 제23항에 있어서,
    상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함된 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 동일하고, 또는, 상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록에 포함된 각 컨볼루션 층의 입력 채널수 및 출력 채널수는 상이한 것을 특징으로 하는 이미지 필터링 방법.
  25. 제23항에 있어서,
    상기 N 개의 잔차 블록 중 적어도 하나의 잔차 블록은 어텐션 층을 포함하는 것을 특징으로 하는 이미지 필터링 방법.
  26. 제1항 내지 제16항 중 어느 한 항에 있어서,
    상기 필터링된 이미지는 향후 이미지의 참조 이미지로 사용되고, 또는, 상기 필터링된 이미지는 디스플레이에 사용되고, 향후 이미지의 참조 이미지에 사용되지 않는 것을 특징으로 하는 이미지 필터링 방법.
  27. 이미지 필터링 장치로서,
    필터링될 이미지의 인코딩 정보를 결정하도록 구성된 결정 유닛 - 상기 인코딩 정보는 상기 필터링될 이미지의 분류 정보를 포함하고, 상기 분류 정보는 상기 필터링될 이미지의 인코딩 이미지 타입, 인코딩 모드 중의 적어도 하나를 지시함 -; 및
    상기 필터링될 이미지 및 상기 분류 정보를 동일한 딥 러닝 기반 필터링 모델에 입력하여, 상기 분류 정보에 기반하여 상기 필터링될 이미지에 대해 필터링을 수행하여, 필터링된 이미지를 얻도록 구성된 필터링 유닛을 포함하는 것을 특징으로 하는 이미지 필터링 장치.
  28. 전자 기기로서,
    프로세서 및 메모리를 포함하고, 상기 메모리는 컴퓨터 프로그램을 저장하기 위한 것이고, 상기 프로세서는 상기 메모리에 저장된 컴퓨터 프로그램을 호출하고 작동하여, 제1항 내지 제26항 중 어느 한 항에 따른 이미지 필터링 방법을 실행하기 위한 것임을 특징으로 하는 전자 기기.
  29. 컴퓨터 프로그램을 저장하기 위한 컴퓨터 판독 가능한 저장 매체로서,
    상기 컴퓨터 프로그램은 전자 기기로 하여금 제1항 내지 제26항 중 어느 한 항에 따른 이미지 필터링 방법을 실행하도록 하는 것을 특징으로 하는 컴퓨터 판독 가능한 저장 매체.
  30. 컴퓨터 프로그램 제품으로서,
    컴퓨터 프로그램 명령어를 포함하고, 상기 컴퓨터 프로그램 명령어가 전자 기기에서 작동되는 경우, 상기 전자 기기로 하여금 제1항 내지 제26항 중 어느 한 항에 따른 이미지 필터링 방법을 실행하도록 하는 컴퓨터 프로그램 제품.
KR1020247009750A 2022-02-10 2022-12-09 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품 KR20240054313A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202210126411.XA CN116630171A (zh) 2022-02-10 2022-02-10 图像滤波方法、装置、设备及存储介质
CN202210126411.X 2022-02-10
PCT/CN2022/137882 WO2023151365A1 (zh) 2022-02-10 2022-12-09 图像滤波方法、装置、设备及存储介质、程序产品

Publications (1)

Publication Number Publication Date
KR20240054313A true KR20240054313A (ko) 2024-04-25

Family

ID=87563594

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247009750A KR20240054313A (ko) 2022-02-10 2022-12-09 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품

Country Status (5)

Country Link
US (1) US20240089465A1 (ko)
EP (1) EP4390833A1 (ko)
KR (1) KR20240054313A (ko)
CN (1) CN116630171A (ko)
WO (1) WO2023151365A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190306502A1 (en) * 2018-04-02 2019-10-03 Qualcomm Incorporated System and method for improved adaptive loop filtering
CN110351568A (zh) * 2019-06-13 2019-10-18 天津大学 一种基于深度卷积网络的视频环路滤波器
CN113259671B (zh) * 2020-02-10 2022-07-15 腾讯科技(深圳)有限公司 视频编解码中的环路滤波方法、装置、设备及存储介质
CN113766249B (zh) * 2020-06-01 2022-05-13 腾讯科技(深圳)有限公司 视频编解码中的环路滤波方法、装置、设备及存储介质
CN111711824B (zh) * 2020-06-29 2021-07-02 腾讯科技(深圳)有限公司 视频编解码中的环路滤波方法、装置、设备及存储介质

Also Published As

Publication number Publication date
EP4390833A1 (en) 2024-06-26
WO2023151365A1 (zh) 2023-08-17
US20240089465A1 (en) 2024-03-14
CN116630171A (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
CN114630132B (zh) 视频编解码的基于神经网络的环路内滤波器中的模型选择
CN113612995B (zh) 视频编码方法、解码方法、编码器、解码器和存储介质
CN111327904B (zh) 图像重建方法和装置
CN112385227A (zh) 用于帧内预测的方法和装置
KR102633254B1 (ko) 학습된 비디오 압축을 위한 다중 스케일 광학 흐름
CN114339262A (zh) 熵编/解码方法及装置
KR20200023358A (ko) 무분할 양방향 필터
CN114125446A (zh) 图像编码方法、解码方法和装置
CN115918074A (zh) 基于通道间相关信息的自适应图像增强
AU2023229600A1 (en) Picture partitioning method and apparatus
CN115349257B (zh) 基于dct的内插滤波器的使用
CN110868590B (zh) 图像划分方法及装置
CN114584776A (zh) 帧内预测模式的译码方法和装置
US20230042484A1 (en) Decoding method and coding method for unmatched pixel, decoder, and encoder
WO2023044868A1 (zh) 视频编解码方法、设备、系统、及存储介质
KR20240054313A (ko) 이미지 필터링 방법, 장치, 기기 및 저장 매체, 프로그램 제품
CN113330748B (zh) 帧内预测模式信令的方法和装置
CN115883831A (zh) 编解码方法和装置
CN114205582A (zh) 用于视频编解码的环路滤波方法、装置及设备
WO2023220969A1 (zh) 视频编解码方法、装置、设备、系统及存储介质
WO2023092404A1 (zh) 视频编解码方法、设备、系统、及存储介质
WO2024077553A1 (zh) 视频编解码方法、装置、设备、系统、及存储介质
WO2024007128A1 (zh) 视频编解码方法、装置、设备、系统、及存储介质
WO2023221599A9 (zh) 图像滤波方法、装置及设备
WO2023122969A1 (zh) 帧内预测方法、设备、系统、及存储介质

Legal Events

Date Code Title Description
A201 Request for examination