KR20230129068A - 확장 가능한 인코딩 및 디코딩 방법 및 장치 - Google Patents
확장 가능한 인코딩 및 디코딩 방법 및 장치 Download PDFInfo
- Publication number
- KR20230129068A KR20230129068A KR1020237026723A KR20237026723A KR20230129068A KR 20230129068 A KR20230129068 A KR 20230129068A KR 1020237026723 A KR1020237026723 A KR 1020237026723A KR 20237026723 A KR20237026723 A KR 20237026723A KR 20230129068 A KR20230129068 A KR 20230129068A
- Authority
- KR
- South Korea
- Prior art keywords
- component
- signal
- signal component
- quality factor
- feature map
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 131
- 238000012545 processing Methods 0.000 claims description 227
- 230000004044 response Effects 0.000 claims description 200
- 239000013598 vector Substances 0.000 claims description 156
- 239000011159 matrix material Substances 0.000 claims description 90
- 238000013528 artificial neural network Methods 0.000 claims description 58
- 238000012549 training Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000006835 compression Effects 0.000 abstract description 9
- 238000007906 compression Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 8
- 238000013139 quantization Methods 0.000 description 80
- 230000015654 memory Effects 0.000 description 34
- 230000006854 communication Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 21
- 241000023320 Luma <angiosperm> Species 0.000 description 17
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 17
- 238000001914 filtration Methods 0.000 description 15
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 230000001629 suppression Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003908 quality control method Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000009966 trimming Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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 colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 출원은 인공 지능(AI)-기반 비디오 또는 화상 압축 기술 분야에 관한 것으로서, 확장 가능한 인코딩 및 디코딩 방법 및 장치를 제공한다. 인코딩 방법은, 비디오 신호의 제1 신호 성분의 제어 신호를 제1 신호 성분의 제1 피처 맵에 적용하여, 제1 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 제1 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 비디오 신호의 제2 신호 성분의 제어 신호를 제2 신호 성분의 제1 피처 맵에 적용하여, 제2 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 제2 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 및 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다. 본 출원은 서로 다른 컬러 특성을 가진 화상 콘텐츠에 적응할 수 있다.
Description
본 발명의 실시예들은 인공지능(AI)-기반 비디오 또는 화상 압축 기술 분야에 관한 것으로, 특히 확장 가능한 인코딩 및 디코딩 방법 및 장치에 관한 것이다.
비디오 압축 인코딩 및 디코딩 기술은, 멀티미디어 서비스, 브로드캐스트, 비디오 통신, 스토리지, 등의 분야에, 예를 들어, 브로드캐스트 디지털 텔레비전, 인터넷과 모바일 네트워크를 통한 비디오 전송, 화상 채팅과 화상 회의와 같은 실시간 대화 애플리케이션, DVD 및 블루-레이 디스크, 비디오 컨텐츠 수집 및 편집 시스템, 및 캠코더의 보안 애플리케이션에 널리 사용된다.
짧은 비디오라도 표현하기 위해서는 많은 양의 비디오 데이터가 필요하다. 이로 인해, 제한된 대역폭 용량을 가지는 네트워크를 통해 데이터를 스트리밍하거나 통신할 때 어려움이 발생할 수 있다. 따라서, 비디오 데이터는 일반적으로 현대 통신 네트워크를 통해 전달되기 전에 압축된다. 메모리 자원이 제한될 수 있기 때문에 비디오가 저장 디바이스에 저장될 때 비디오 크기도 문제가 될 수 있다. 비디오 압축 디바이스는 종종, 전송 또는 저장 전에 소스에서 소프트웨어 및/또는 하드웨어를 사용하여 비디오 데이터를 인코딩함으로써, 디지털 비디오 화상을 나타내는데 필요한 데이터 양을 줄인다. 압축된 데이터는 비디오 압축 해제 디바이스에 의해 데스티네이션에서 수신된다. 제한된 네트워크 자원과 더 높은 비디오 품질에 대한 요구가 계속 증가함에 따라, 화질을 거의 또는 전혀 희생하지 않고 압축 및 압축 해제 기술을 개선할 필요가 있다.
최근에는, 엔드-투-엔드 화상 인코딩 및 디코딩 기술 분야에 딥 러닝을 적용하는 것이 점차 추세가 되고 있다. 하이브리드 아키텍처를 사용하는 비디오 인코더 및 비디오 디코더에서는, 피처 맵에 엔트로피 인코딩이 수행되는 경우, 피처 값이 평균 0인 가우시안 분포를 만족한다고 가정하고, 가우시안 분포의 분산은 하이퍼 프라이어 구조를 사용하여 특징 값의 확률 분포 모델을 구하고, 산술 인코딩 모듈은 추정된 확률 분포에 기초하여 피처 맵에 엔트로피 인코딩를 수행한다. 디코더 측에서 피처 맵의 확률 분포를 정확하게 추정할 수 있도록, 하이퍼 프라이어 구조의 모듈은 추정된 확률 분포의 숨겨진 변수를 추출하고, 숨겨진 변수를, 양자화 및 산술 인코딩를 통해 부가 정보로서, 디코더 측으로 전달한다. 이 메커니즘에서는 YUV 포맷의 입력 화상에 대해 Y, U 및 V 성분의 비트레이트의 비율이 고정된다. 그러나, 화상은 콘텐츠의 컬러 특성이 다르기 때문에, Y, U 및 V 성분의 고정된 비트레이트 비율은 인코딩된 화상에서 큰 왜곡을 유발한다.
본 출원은, 서로 다른 컬러 특성을 가지는 화상 컨텐츠에 적응하기 위해, 확장 가능한 인코딩 및 디코딩 방법 및 장치를 제공한다.
본 출원에서, 확장 가능한 인코딩 및 디코딩은, 비디오 신호가 제1 신호 성분 및 제2 신호 성분으로 분할되거나, 비디오 신호가 제1 신호 성분, 제2 신호 성분, 및 제3 신호 성분으로 분리되는 것을 나타낸다. 상기 제1 신호 성분은 Y 성분이고, 그리고 상기 제2 신호 성분은 UV 성분, U 성분, 또는 V 성분이다. 상기 제2 신호 성분이 상기 U 성분인 경우, 상기 제3 신호 성분은 상기 V 성분이다. 대안적으로, 상기 제2 신호 성분이 상기 V 성분인 경우, 상기 제3 신호 성분은 상기 U 성분이다.
제1 측면에 따르면, 본 출원은 인코딩 방법을 제공한다. 상기 인코딩 방법은, 비디오 신호의 제1 신호 성분의 제어 신호를 상기 제1 신호 성분의 제1 피처 맵에 적용하여, 상기 제1 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 상기 제1 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 상기 비디오 신호의 제2 신호 성분의 제어 신호를 상기 제2 신호 성분의 제1 피처 맵에 적용하여, 상기 제2 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 상기 제2 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 및 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
가능한 구현예에서, 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계는, 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵, 상기 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 상기 제2 신호 성분의 제2 피처 맵, 신경망에 의해 처리되는 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵, 또는 신경망에 의해 처리되는 상기 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 상기 제2 신호 성분의 제2 피처 맵에 엔트로피 인코딩을 수행하여, 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
가능한 구현예에서, 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계는, 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계; 상기 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계; 신경망에 의해 처리되는 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계; 또는 신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
가능한 구현예에서, 상기 방법은, 상기 제1 신호 성분의 품질 팩터에 기초하여 N개의 후보 제1 제어 신호로부터 상기 제1 신호 성분의 제어 신호를 획득하는 단계 - 여기서, N은 1보다 큰 정수임 -; 및 상기 제2 신호 성분의 품질 팩터에 기초하여 M개의 후보 제2 제어 신호로부터 상기 제2 신호 성분의 제어 신호를 획득하는 단계 - 여기서, M은 1보다 큰 정수임 -;를 포함한다. N과 M은 동일하거나 동일하지 않을 수 있다. 이는 본 출원에서 제한되지 않는다.
가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 방법은, 학습을 통해, 상기 Y 성분의 제어 신호 매트릭스 {} 및 상기 UV 성분의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, N 및 M은 1보다 큰 정수임 -; 상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 제어 신호 를 획득하는 단계; 및 상기 UV 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 제어 신호 를 획득하는 단계;를 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터 인덱스 i 및 상기 UV 성분의 품질 팩터 인덱스 j를 포함한다.
대안적으로, 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 방법은, 학습을 통해, 상기 비디오 신호의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 2로서 상기 Y 성분 및 상기 UV 성분을 표현하고, N은 1보다 큰 정수임 -; 및 상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분 및 상기 제2 신호 성분을 포함하는 제어 신호 를 획득하는 단계;를 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다.
대안적으로, 완전 연결 네트워크를 사용함으로써 구현되는 또 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 방법은, 상기 Y 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 제어 신호를 출력하는 단계; 및 상기 UV 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 UV 성분의 제어 신호를 출력하는 단계;를 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터 및 상기 UV 성분의 품질 팩터를 포함한다.
가능한 구현예에서, 상기 제2 신호 성분이 U 성분 또는 V 성분인 경우, 상기 방법은, 상기 비디오 신호의 제3 신호 성분의 제어 신호를 상기 제3 신호 성분의 제1 피처 맵에 적용하여, 상기 제3 신호 성분의 제2 피처 맵을 획득하는 단계;를 더 포함한다. 상기 제3 신호 성분의 제어 신호는 학습을 통해 획득된다. 상기 제2 신호 성분이 U 성분인 경우, 상기 제3 신호 성분은 V 성분이다. 대안적으로, 상기 제2 신호 성분이 V 성분인 경우, 상기 제3 신호 성분은 U 성분이다.
가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 방법은, 트레이닝을 통해, 상기 Y 성분의 제어 신호 매트릭스 {}, 상기 U 성분의 제어 신호 매트릭스 {}, 및 상기 V 성분의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, N, M, 및 L은 1보다 큰 정수임 -; 상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 제어 신호 를 획득하는 단계; 상기 U 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 제어 신호 를 획득하는 단계; 및 상기 V 성분의 품질 팩터 인덱스 k에 기초하여 상기 제3 신호 성분의 제어 신호 를 획득하는 단계;를 더 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터 인덱스 i, 상기 U 성분의 품질 팩터 인덱스 j, 및 상기 V 성분의 품질 팩터 인덱스 k를 포함한다.
대안적으로, 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 방법은, 학습을 통해, 상기 비디오 신호의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 3으로서 상기 Y 성분, 상기 U 성분, 및 상기 V 성분을 표현하고, N은 1보다 큰 정수임 -; 및 상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분, 상기 제2 신호 성분, 및 상기 제3 신호 성분을 포함하는 제어 신호 를 획득하는 단계;를 더 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다.
대안적으로, 완전 연결 네트워크를 사용함으로써 구현되는 또 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 방법은, 상기 Y 성분의 품질 팩터를 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 제어 신호를 출력하는 단계; 상기 U 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 U 성분의 제어 신호를 출력하는 단계; 및 상기 V 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 V 성분의 제어 신호를 출력하는 단계;를 더 포함한다. 이 경우에, 상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터, 상기 U 성분의 품질 팩터, 및 상기 V 성분의 품질 팩터를 포함한다.
제2 측면에 따르면, 본 출원은 디코딩 방법을 제공한다. 상기 디코딩 방법은, 비디오 신호의 비트스트림을 획득하는 단계; 상기 비트스트림에 대해 엔트로피 디코딩을 수행하여 상기 비디오 신호의 제1 신호 성분의 피처 맵 및 상기 비디오 신호의 제2 신호 성분의 피처 맵을 획득하는 단계; 상기 제1 신호 성분의 응답 신호 및 상기 제1 신호 성분의 피처 맵에 기초하여 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계 - 여기서, 상기 제1 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 상기 제2 신호 성분의 응답 신호 및 상기 제2 신호 성분의 피처 맵에 기초하여 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계 - 여기서, 상기 제2 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 및 상기 제1 신호 성분의 재구성된 맵 및 상기 제2 신호 성분의 재구성된 맵에 기초하여 상기 비디오 신호를 재구성하는 단계;를 포함한다.
본 출원에서 디코더 측의 응답 신호는 인코더 측의 제어 신호와 유사하다는 점에 유의해야 한다. 구별을 쉽게 하기 위해, 디코더 측의 신호는 응답 신호라고 지칭되고, 인코더 측의 신호는 제어 신호라고 지칭된다. 상기 디코더 측의 응답 신호는 응답 벡터를 포함하거나, 응답 벡터 및 오프셋 벡터를 포함한다.
가능한 구현예에서, 상기 비트스트림은 상기 제1 신호 성분의 품질 팩터 정보 및 상기 제2 신호 성분의 품질 팩터 정보를 더 포함한다. 상기 제1 신호 성분의 품질 팩터 정보는 상기 제1 신호 성분의 품질 팩터 또는 상기 제1 신호 성분의 품질 팩터 인덱스이다. 상기 제2 신호 성분의 품질 팩터 정보는 상기 제2 신호 성분의 품질 팩터 또는 상기 제2 신호 성분의 품질 팩터 인덱스이다. 상기 방법은, 상기 제1 신호 성분의 품질 팩터 정보에 기초하여 상기 제1 신호 성분의 응답 신호를 획득하는 단계; 및 상기 제2 신호 성분의 품질 팩터 정보에 기초하여 상기 제2 신호 성분의 응답 신호를 획득하는 단계;를 더 포함한다.
상기 제1 신호 성분의 품질 팩터 정보가 상기 제1 신호 성분의 품질 팩터인 경우, 상기 제1 신호 성분의 품질 팩터의 값은 N개 중 하나이다. 대안적으로, 상기 제1 신호 성분의 품질 팩터 정보가 상기 제1 신호 성분의 품질 팩터 인덱스인 경우, 상기 제1 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 N-1 또는 1 내지 N이며, 여기서 N은 1보다 큰 정수이다.
상기 제2 신호 성분의 품질 팩터 정보가 상기 제2 신호 성분의 품질 팩터인 경우, 상기 제2 신호 성분의 품질 팩터의 값은 M개 중 하나이다. 대안적으로, 상기 제2 신호 성분의 품질 팩터 정보가 상기 제2 신호 성분의 품질 팩터 인덱스인 경우, 상기 제2 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 M-1 또는 1 내지 M이며, 여기서 M은 1보다 큰 정수이다.
가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 비트스트림이 상기 Y 성분의 품질 팩터 인덱스 i 및 상기 UV 성분의 품질 팩터 인덱스 j를 포함한다면, 상기 방법은, 학습을 통해, 상기 제1 신호 성분의 응답 신호 매트릭스 {} 및 상기 제2 신호 성분의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, N 및 M은 1보다 큰 정수임 -; 상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 응답 신호 를 획득하는 단계; 및 상기 UV 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 응답 신호 를 획득하는 단계;를 포함한다.
대안적으로, 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 비트스트림이 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다면, 상기 방법은, 학습을 통해, 상기 비디오 신호의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 2로서 상기 Y 성분 및 상기 UV 성분을 표현하고, N은 1보다 큰 정수임 -; 및 상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분 및 상기 제2 신호 성분을 포함하는 응답 신호 를 획득하는 단계;를 포함한다.
완전 연결 네트워크를 사용하여 구현되는 또 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 UV 성분인 경우, 상기 비트스트림이 상기 제1 신호 성분의 품질 팩터 및 상기 제2 신호 성분의 품질 팩터를 포함한다면, 상기 방법은, 상기 Y 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 응답 신호를 출력하는 단계; 및 상기 UV 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 UV 성분의 응답 신호를 출력하는 단계;를 포함한다.
가능한 구현예에서, 상기 제2 신호 성분이 U 성분 또는 V 성분인 경우, 상기 방법은, 상기 비트스트림에 대해 엔트로피 디코딩을 수행하여 상기 비디오 신호의 제3 신호 성분의 피처 맵을 획득하는 단계; 및 상기 제3 신호 성분의 응답 신호 및 상기 제3 신호 성분의 피처 맵에 기초하여 상기 제3 신호 성분의 재구성된 맵을 획득하는 단계;를 더 포함한다. 상기 제3 신호 성분의 응답 신호는 학습을 통해 획득된다. 상기 제2 신호 성분이 상기 U 성분인 경우, 상기 제3 신호 성분은 상기 V 성분이다. 대안적으로, 상기 제2 신호 성분이 상기 V 성분인 경우, 상기 제3 신호 성분은 상기 U 성분이다. 상기 비디오 신호를 재구성하는 단계는, 상기 제1 신호 성분의 재구성된 맵, 상기 제2 신호 성분의 재구성된 맵, 및 상기 제3 신호 성분의 재구성된 맵에 기초하여 상기 비디오 신호를 재구성하는 단계;를 포함한다.
가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 비트스트림이 상기 Y 성분의 품질 팩터 인덱스 i, 상기 U 성분의 품질 팩터 인덱스 j, 및 상기 V 성분의 품질 팩터 인덱스 k를 포함한다면, 상기 방법은, 트레이닝을 통해, 상기 제1 신호 성분의 응답 신호 매트릭스 {}, 상기 제2 신호 성분의 응답 신호 매트릭스 {}, 및 상기 제3 신호 성분의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, N, M, 및 L은 1보다 큰 정수임 -; 상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 응답 신호 를 획득하는 단계; 상기 U 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 응답 신호 를 획득하는 단계; 및 상기 V 성분의 품질 팩터 인덱스 k에 기초하여 상기 제3 신호 성분의 응답 신호 를 획득하는 단계;를 포함한다.
대안적으로, 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 비트스트림이 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다면, 상기 방법은, 학습을 통해, 상기 비디오 신호의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 3으로서 상기 Y 성분, 상기 U 성분, 및 상기 V 성분을 표현하고, N은 1보다 큰 정수임 -; 및 상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분, 상기 제2 신호 성분, 및 상기 제3 신호 성분을 포함하는 응답 신호 를 획득하는 단계;를 포함한다.
대안적으로, 완전 연결 네트워크를 사용함으로써 구현되는 또 다른 가능한 구현예에서, 상기 제1 신호 성분은 Y 성분이고, 상기 제2 신호 성분은 U 성분인 경우, 상기 제3 신호 성분은 V 성분이고, 그리고 상기 비트스트림이 상기 제1 신호 성분의 품질 팩터, 상기 제2 신호 성분의 품질 팩터, 및 상기 제3 신호 성분의 품질 팩터를 포함한다면, 상기 방법은, 상기 Y 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 응답 신호를 출력하는 단계; 상기 U 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 U 성분의 응답 신호를 출력하는 단계; 및 상기 V 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 V 성분의 응답 신호를 출력하는 단계;를 포함한다.
제3 측면에 따르면, 본 출원은, 상기 제1 측면 및 제1 측면의 구현예 중 어느 하나에 따른 방법을 수행하도록 구성되는, 처리 회로를 포함하는 인코더를 제공한다.
제4 측면에 따르면, 본 출원은, 상기 제2 측면 및 제2 측면의 구현예 중 어느 하나에 따른 방법을 수행하도록 구성되는, 처리 회로를 포함하는 디코더를 제공한다.
제5 측면에 따르면, 본 출원은 프로그램 코드를 포함하는 컴퓨터 프로그램 제품을 제공한다. 상기 프로그램 코드가 컴퓨터 또는 프로세서 상에서 실행되는 경우, 상기 컴퓨터 프로그램 제품은 제1 측면 및 상기 제2 측면 그리고 제1 측면 및 제2 측면의 구현예 중 어느 하나에 따른 방법을 수행하도록 구성된다.
제6 측면에 따르면, 본 출원은, 하나 이상의 프로세서; 및 상기 프로세서에 결합되고 상기 프로세서에 의해 실행되는 프로그램을 저장하는, 비일시적 컴퓨터-판독 가능한 저장 매체;를 포함하는, 인코더를 제공한다.
상기 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 디코더로 하여금 상기 제1 측면 및 제1 측면의 구현예 중 어느 하나에 따른 방법을 수행하게 하도록 구성된다.
제7 측면에 따르면, 본 출원은, 하나 이상의 프로세서; 및 상기 프로세서에 결합되고 상기 프로세서에 의해 실행되는 프로그램을 저장하는, 비일시적 컴퓨터-판독 가능한 저장 매체;를 포함하는, 디코더를 제공한다.
상기 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 인코더로 하여금 상기 제2 측면 및 제2 측면의 구현예 중 어느 하나에 따른 방법을 수행하게 하도록 구성된다.
제8 측면에 따르면, 본 출원은 프로그램 코드를 포함하는 비일시적 컴퓨터-판독 가능한 저장 매체를 제공한다. 상기 프로그램 코드가 컴퓨터 디바이스에 의해 실행되는 경우, 상기 프로그램 코드 제1 측면 및 상기 제2 측면 그리고 제1 측면 및 제2 측면의 구현예 중 어느 하나에 따른 방법을 수행하는데 사용된다.
제9 측면에 따르면, 본 발명은 인코딩 장치에 관련되고, 제1 측면 및 제1 측면의 구현예 중 어느 하나에 따른 방법 실시예에서의 동작을 구현하는 기능을 가진다. 기능은 하드웨어로 구현될 수도 있고, 해당 소프트웨어를 실행하는 하드웨어로 구현될 수도 있다. 상기 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 하나 이상의 모듈을 포함한다. 가능한 설계에서, 상기 인코딩 장치는, 비디오 신호의 제1 신호 성분의 제어 신호를 상기 제1 신호 성분의 제1 피처 맵에 적용하여, 상기 제1 신호 성분의 제2 피처 맵을 획득하도록 구성되는 제1 제어 모듈 - 여기서, 상기 제1 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 상기 비디오 신호의 제2 신호 성분의 제어 신호를 상기 제2 신호 성분의 제1 피처 맵에 적용하여, 상기 제2 신호 성분의 제2 피처 맵을 획득하도록 구성되는 제2 제어 모듈 - 여기서, 상기 제2 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 그리고 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하도록 구성되는 인코딩 모듈;을 포함한다. 이러한 모듈은, 제1 측면 및 제1 측면의 구현예 중 어느 하나에 따른 방법 예시에서 대응하는 기능을 수행할 수 있다. 세부 사항에 관해서는, 상기 방법 예시에서의 상세한 설명을 참조한다. 자세한 내용은 여기서 다시 설명하지 않는다.
제10 측면에 따르면, 본 발명은 디코딩 장치에 관련되고, 제2 측면 및 제2 측면의 구현예 중 어느 하나에 따른 방법 실시예에서의 동작을 구현하는 기능을 가진다. 기능은 하드웨어로 구현될 수도 있고, 해당 소프트웨어를 실행하는 하드웨어로 구현될 수도 있다. 상기 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 하나 이상의 모듈을 포함한다. 가능한 설계에서, 상기 디코딩 장치는, 비디오 신호의 비트스트림을 획득하고, 상기 비트스트림에 엔트로피 디코딩을 수행하여 상기 비디오 신호의 제1 신호 성분의 피처 맵 및 상기 비디오 신호의 제2 신호 성분의 피처 맵을 획득하도록 구성되는 디코딩 모듈; 상기 제1 신호 성분의 응답 신호 및 상기 제1 신호 성분의 상기 피처 맵에 기초하여 상기 제1 신호 성분의 재구성된 맵을 획득하도록 구성되는 제1 제어 모듈 - 여기서, 상기 제1 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 상기 제2 신호 성분의 응답 신호 및 상기 제2 신호 성분의 상기 피처 맵에 기초하여 상기 제2 신호 성분의 재구성된 맵을 획득하도록 구성되는 제2 제어 모듈 - 여기서, 상기 제2 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 그리고 상기 제1 신호 성분의 재구성된 맵 및 상기 제2 신호 성분의 재구성된 맵에 기초하여 상기 비디오 신호를 재구성하도록 구성되는 재구성 모듈;을 포함한다. 이러한 모듈은, 제2 측면 및 제2 측면의 구현 중 어느 하나에 따른 방법 예에서 대응하는 기능을 수행할 수 있다. 세부 사항에 관해서는, 상기 방법 예시에서의 상세한 설명을 참조한다. 자세한 내용은 여기서 다시 설명하지 않는다.
기존의 엔드-투-엔드 화상 코딩에서는 특정 네트워크의 학습 및 최적화 과정에서 Y, U, 및 V 성분의 고정된 가중치에 기초하여 최적화를 수행하였다. 따라서, Y, U, 및 V 성분의 비트레이트 비율은 고정되어 있다. 화상마다 컬러 특성이 다르기 때문에, 고정된 비트레이트 할당은 일부 비디오 화상의 인코딩 성능 저하를 유발한다. 본 출원의 전술한 측면에서, 각각의 신호 성분의 제어 신호는 대응하는 신호 성분의 피처 맵을 제어하고, Y, U 및 V 성분 사이의 비트 레이트 할당을 지원하고, 서로 다른 컬러 특성을 가지는 화상 콘텐츠에 적응하는데 사용된다.
하나 이상의 실시예의 세부 사항은 첨부된 도면과 아래 설명에 설명되어 있다. 다른 특징, 목적 및 장점은 상세한 설명, 첨부된 도면 및 청구범위로부터 명백해질 것이다.
다음은 본 출원의 실시예에서 사용되는 첨부 도면을 설명한다.
도 1a는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 예시를 도시하는 블록도로서, 시스템은 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 1b는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 다른 예를 도시하는 블록도로서, 시스템은 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 1c는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 또 다른 예를 도시하는 블록도로서, 비디오 인코더 및/또는 비디오 디코더는 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 2는 본 발명의 실시예를 구현하도록 구성되는 비디오 인코더의 예시를 도시하는 블록도로서, 비디오 인코더(20)는 딥 러닝에 기초하여 비디오 화상을 인코딩한다.
도 3은 본 발명의 실시예를 구현하도록 구성되는 비디오 디코더의 예시를 도시하는 블록도로서, 비디오 디코더(30)는 딥 러닝에 기초하여 비디오 화상을 디코딩한다.
도 4는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 장치의 개략적인 블록도이다.
도 5는 본 발명의 실시예를 구현하도록 구성되는 다른 비디오 코딩 장치의 개략적인 블록도이다.
도 6은 YUV 포맷의 개략도이다.
도 7a는 본 출원의 실시예에 따른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 7b는 도 7a에 기초한 인코딩 방법의 실시예이다.
도 7c는 도 7a에 기초한 디코딩 방법의 실시예이다.
도 7d는 본 출원의 실시예에 따른 확장 가능한 인코딩 및 디코딩 구조의 다른 개략도이다.
도 8a는 본 출원의 실시예에 따른 다른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 8b는 도 8a의 실시예이다.
도 9a는 본 출원의 실시예에 따른 또 다른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 9b는 도 9a의 실시예이다.
도 10은 본 출원의 실시예에 따른 인코딩 장치(1000)의 구조의 개략도이다.
도 11은 본 출원의 실시예에 따른 디코딩 장치(1100)의 구조의 개략도이다.
도 1a는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 예시를 도시하는 블록도로서, 시스템은 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 1b는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 다른 예를 도시하는 블록도로서, 시스템은 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 1c는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 시스템의 또 다른 예를 도시하는 블록도로서, 비디오 인코더 및/또는 비디오 디코더는 딥 러닝에 기초하여 비디오 화상을 인코딩하거나 디코딩한다.
도 2는 본 발명의 실시예를 구현하도록 구성되는 비디오 인코더의 예시를 도시하는 블록도로서, 비디오 인코더(20)는 딥 러닝에 기초하여 비디오 화상을 인코딩한다.
도 3은 본 발명의 실시예를 구현하도록 구성되는 비디오 디코더의 예시를 도시하는 블록도로서, 비디오 디코더(30)는 딥 러닝에 기초하여 비디오 화상을 디코딩한다.
도 4는 본 발명의 실시예를 구현하도록 구성되는 비디오 코딩 장치의 개략적인 블록도이다.
도 5는 본 발명의 실시예를 구현하도록 구성되는 다른 비디오 코딩 장치의 개략적인 블록도이다.
도 6은 YUV 포맷의 개략도이다.
도 7a는 본 출원의 실시예에 따른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 7b는 도 7a에 기초한 인코딩 방법의 실시예이다.
도 7c는 도 7a에 기초한 디코딩 방법의 실시예이다.
도 7d는 본 출원의 실시예에 따른 확장 가능한 인코딩 및 디코딩 구조의 다른 개략도이다.
도 8a는 본 출원의 실시예에 따른 다른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 8b는 도 8a의 실시예이다.
도 9a는 본 출원의 실시예에 따른 또 다른 확장 가능한 인코딩 및 디코딩 구조의 개략도이다.
도 9b는 도 9a의 실시예이다.
도 10은 본 출원의 실시예에 따른 인코딩 장치(1000)의 구조의 개략도이다.
도 11은 본 출원의 실시예에 따른 디코딩 장치(1100)의 구조의 개략도이다.
본 출원의 실시예들은 AI-기반 비디오 영상 압축 기술을 제공하고, 특히 확장 가능한 인코딩 및 디코딩 방법 및 장치를 제공함으로써 종래의 엔드-투-엔드 하이브리드 비디오 코딩 시스템을 개선한다.
비디오 코딩은 통상적으로 화상의 시퀀스의 처리를 의미하며, 화상의 시퀀스는 비디오 또는 비디오 시퀀스를 형성한다. 비디오 코딩 분야에서, 용어 "화상(picture)", "프레임(frame)", 및 "이미지(image)"는 동의어로서 사용될 수 있다. 비디오 코딩(또는 일반적으로 코딩)은 비디오 인코딩과 비디오 디코딩의 두 부분으로 구성된다. 비디오 인코딩은 소스에서 수행되며, 일반적으로 (보다 효율적인 저장 및/또는 전송을 위해) 비디오 화상을 표시하는데 필요한 데이터의 양을 줄이기 위해 원본 비디오 화상을 처리(예컨대, 압축)하는 것을 포함한다. 비디오 디코딩은 데스티네이션에서 수행되고, 통상적으로 비디오 화상을 재구성하기 위해 인코더의 처리와 비교하여 역처리를 포함한다. 비디오 화상(또는 일반적으로 화상)의 "코딩"을 언급하는 실시예는 비디오 화상 또는 각각의 비디오 시퀀스의 "인코딩" 또는 "디코딩"과 관련된 것으로 이해되어야 한다. 인코딩 부분과 디코딩 부분의 조합은 인코딩 및 디코딩(encoding and decoding, CODEC)으로도 또한 지칭된다.
무손실 비디오 코딩의 경우, 원본 비디오 화상을 재구성할 수 있다. 즉, 재구성된 비디오 화상은 원본 비디오 화상과 동일한 화질을 가진다(저장 또는 전송 과정에서 전송 손실이나 기타 데이터 손실이 발생하지 않는 것으로 가정함). 손실있는 비디오 코딩의 경우에, 비디오 화상을 표현하는데 요구되는 데이터의 양을 줄이기 위해, 예를 들어, 양자화를 통해, 추가적인 압축이 수행되고, 비디오 화상은 디코더에서 완전히 재구성될 수 없다. 이는, 재구성된 비디오 화상의 품질이 원본 비디오 화상의 품질보다 낮거나 열등함을 의미한다.
"손실 하이브리드 비디오 코딩"에 대해 여러가지 비디오 코딩 표준이 사용된다(즉, 픽셀 도메인에서 공간적 및 시간적 예측은 변환 도메인에서 양자화를 적용하기 위해 2D 변환 코딩과 결합된다). 비디오 시퀀스의 각각의 화상은 일반적으로 비-중첩 블록 세트로 분할되고, 코딩은 일반적으로 블록 레벨에서 수행된다. 구체적으로, 인코더에서, 비디오는 일반적으로 블록(비디오 블록) 수준에서 처리되고 인코딩된다. 예를 들어, 예측 블록은 공간적(인트라) 예측 및 시간적(인터) 예측을 통해 생성되고, 현재 블록(처리중인 또는 처리될 블록)으로부터 예측 블록이 차감되어 잔차 블록이 획득되며, 잔차 블록은 변환 도메인에서 변환되고 전송될 데이터의 양을 줄이기 위해 양자화(압축)된다. 디코더 측에서, 인코더에 대해 역처리 부분을 인코딩된 또는 압축된 블록에 적용하여 현재 블록을 표현하도록 재구성한다. 또한, 인코더는 디코더의 처리 단계를 복제할 필요가 있어, 인코더와 디코더가 동일한 예측(예를 들어, 인트라 및 인터 예측)을 생성 및/또는 처리를 위해 재구성된 픽셀, 즉 후속 블록을 코딩하도록 생성한다.
비디오 코딩 시스템(10)의 다음 실시예에서, 인코더(20) 및 디코더(30)가 도 1b 내지 도 3에 기초하여 설명된다.
도 1a는 예시적인 코딩 시스템을 도시하는 개략적인 블록도이다. 도 1a에 도시된 바와 같이, 비디오 캡처 디바이스가 비디오를 캡처한 후, 일련의 전처리 과정을 거친 후 처리된 비디오를 압축 및 인코딩하여 인코딩된 비트스트림을 획득한다. 비트스트림은 전송 네트워크를 통해 송신 모듈로부터 수신 모듈로 전송되며 디코더에 의해 디코딩된 후 렌더링 및 디스플레이될 수 있다. 그리고, 비디오 인코딩된 비트스트림을 직접 저장할 수도 있다.
도 1b는 예시적인 코딩 시스템(10), 예를 들어 본 출원의 기술을 활용할 수 있는 비디오 코딩 시스템(10)(또는 줄여서 코딩 시스템(10))을 도시하는 개략적인 블록도이다. 비디오 코딩 시스템(10)의 비디오 인코더(20)(또는 간단히 인코더(20)) 및 비디오 디코더(30)(또는 간단히 디코더(30))는 본 출원에서 기술되는 다양한 예시에 따른 기술을 수행하도록 구성될 수 있는 장치의 예를 나타낸다.
도 1b에 도시된 바와 같이, 코딩 시스템(10)은 소스 디바이스(12)를 포함한다. 소스 디바이스(12)는 인코딩된 화상 데이터(21)를, 예를 들어, 인코딩된 화상을, 인코딩된 화상 데이터(21)를 디코딩하도록 구성되는 데스티네이션 디바이스(14)에 제공하도록 구성된다.
소스 디바이스(12)는 인코더(20)를 포함하고, 추가적으로, 즉, 선택사항으로서, 화상 소스(16), 전처리기(또는 전처리 유닛)(18), 예를 들어, 화상 전처리기, 및 통신 인터페이스(또는 통신 유닛)(22)을 포함한다.
화상 소스(16)는, 일례로 실제 화상을 포착하기 위한, 임의의 유형의 화상 캡처 디바이스, 및/또는 임의의 유형의 화상 생성 디바이스, 일례로 컴퓨터 애니메이션 화상을 생성하기 위한 컴퓨터-그래픽 프로세서, 또는 실제-세계의 화상, 컴퓨터 생성 화상(예를 들어, 스크린 컨텐츠, 가상 현실(virtual reality, VR) 화상), 및/또는 이들의 임의의 조합(예를 들어, 증강 현실(augmented reality, AR) 화상)을 획득 및/또는 제공하기 위한 임의의 유형의 다른 디바이스이거나 이를 포함할 수 있다. 화상 소스는 전술한 화상을 저장하는 임의의 유형의 메모리 또는 스토리지일 수 있다.
전처리기(또는 전처리 유닛)(18)가 수행하는 처리 중에 화상(또는 화상 데이터)을 구분하기 위해, 화상(또는 화상 데이터)(17)는 원본 화상(또는 원본 화상 데이터)(17)으로도 또한 지칭될 수 있다.
전처리기(18)는 (원본) 화상 데이터(17)를 수신하고 화상 데이터(17)에 전처리를 수행하여 전처리된 화상(또는 전처리된 화상 데이터)(19)를 획득하도록 구성된다. 예를 들어, 전처리기(18)에 의해 수행되는 전처리는 트리밍, 컬러 포맷 변환(예를 들어, RGB로부터 YCbCr로), 컬러 보정, 또는 노이즈 제거를 포함할 수 있다. 전처리기(18)은 선택적인 구성 요소일 수 있음을 이해할 수 있다.
비디오 인코더(또는 인코더)(20)는 전처리된 화상 데이터(19)를 수신하고 인코딩된 화상 데이터(21)(더 자세한 사항은, 예를 들어, 도 2에 기초하여 아래에서 설명된다)를 제공하도록 구성된다.
소스 디바이스(12)의 통신 인터페이스(22)는, 인코딩된 화상 데이터(21)를 수신하도록, 그리고 인코딩된 화상 데이터(21)(또는 임의의 추가 처리된 버전)을 통신 채널(13)을 통해 다른 디바이스, 예를 들어, 데스티네이션 디바이스(14) 또는 임의의 다른 디바이스로, 저장 또는 직접 재구성을 위해 송신하도록 구성된다.
데스티네이션 디바이스(14)는 디코더(30)를 포함하고, 추가적으로, 즉, 선택사항으로서, 통신 인터페이스(또는 통신 유닛)(28), 후처리기(또는 후처리 유닛)(32), 및 표시 장치(34)를 포함할 수 있다.
데스티네이션 디바이스(14)의 통신 인터페이스(28)는, 예를 들어, 소스 디바이스(12)로부터 직접 또는 임의의 다른 소스 디바이스, 예를 들어, 저장 디바이스로부터, 예를 들어, 인코딩된 화상 데이터 저장 디바이스로부터 인코딩된 화상 데이터(21)(또는 임의의 추가 처리된 버전)을 수신하도록, 그리고 인코딩된 화상 데이터(21)를 디코더(30)에 제공하도록, 구성된다.
통신 인터페이스(22) 및 통신 인터페이스(28)는 소스 디바이스(12)와 데스티네이션 디바이스(14) 사이의 직접 통신 링크, 예를 들어, 직접 유선 또는 무선 연결을 통해, 또는 임의의 유형의 네트워크, 예를 들어, 유선 또는 무선 네트워크 또는 이들의 임의의 조합, 또는 임의의 유형의 개인 및 공용 네트워크, 또는 임의의 종류의 이들의 조합을 통해, 인코딩된 화상 데이터(또는 인코딩된 데이터)(21)를 송신 또는 수신하도록 구성될 수 있다.
통신 인터페이스(22)는, 예를 들어, 인코딩된 화상 데이터(21)를 적정 포맷, 예를 들어, 패킷으로 패키징, 및/또는 인코딩된 화상 데이터를 통신 링크 또는 통신 네트워크를 통한 전송을 위한 임의의 유형의 전송 인코딩 또는 처리를 통해 처리하도록, 구성될 수 있다.
통신 인터페이스(22)에 대응하는, 통신 인터페이스(28)는, 예를 들어, 전송되는 데이터를 수신하고 전송되는 데이터를 임의의 유형의 대응하는 전송 디코딩 또는 처리를 통해 처리 및/또는 디패키징하여, 인코딩된 화상 데이터(21)을 획득하도록, 구성될 수 있다.
통신 인터페이스(22) 및 통신 인터페이스(28) 각각은 도 1b에서 통신 채널(13)에 대한, 그리고 소스 디바이스(12)로부터 데스티네이션 디바이스(14)를 가리키는 화살표로 표시되는 단방향 통신 인터페이스, 또는 양방향 통신 인터페이스로서 구성될 수 있고, 예를 들어, 메시지를 송신 및 수신, 예를 들어, 연결을 설정하여, 통신 링크 및/또는 데이터 전송, 예를 들어, 인코딩된 화상 데이터 전송에 관련된 임의의 다른 정보를 수신 확인 및 교환하도록, 구성될 수 있다.
비디오 디코더(또는 디코더)(30)는, 인코딩된 화상 데이터(21)를 수신하고, 디코딩된 화상(또는 디코딩된 화상 데이터)(31)(더 자세한 사항은, 예를 들어, 도 3에 기초하여 아래에서 설명된다)을 제공하도록 구성된다.
후처리기(32)는 디코딩된 화상 데이터(31)(재구성된 화상 데이터로도 또한 지칭됨)를, 예를 들어, 디코딩된 화상을 후처리하여, 후처리된 화상 데이터(33)를, 예를 들어, 후처리된 화상을 획득하도록 구성된다. 후처리 유닛(32)에 의해 수행되는 후처리는, 예를 들어, 컬러 포맷 변환(예를 들어, YCbCr로부터 RGB로), 컬러 보정, 트리밍, 또는 리샘플링, 또는, 예를 들어, 표시 장치(34)에 의해 디스플레이하기 위해 디코딩된 화상 데이터(31)를 준비하는, 임의의 다른 처리를 포함할 수 있다.
표시 장치(34)는, 예를 들어 사용자 또는 시청자에게, 화상을 표시하기 위해 후처리된 사진 데이터(33)를 수신하도록 구성된다. 표시 장치(34)는, 재구성된 화상을 제공하는 임의의 유형의 디스플레이, 예를 들어, 통합 또는 외부 디스플레이 또는 모니터이거나 이를 포함할 수 있다. 예를 들어, 디스플레이는, 액정 디스플레이(liquid crystal display, LCD), 유기 발광 다이오드(organic light emitting diode, OLED) 디스플레이, 플라즈마 디스플레이, 프로젝터, 마이크로 LED 디스플레이, 액정 온 실리콘(liquid crystal on silicon, LCoS), 디지털 라이트 프로세서(digital light processor, DLP), 또는 임의의 유형의 다른 디스플레이를 포함할 수 있다.
코딩 시스템(10)은 트레이닝 엔진(25)을 더 포함한다. 트레이닝 엔진(25)는 재구성된 화상에 대해 확장 가능한 인코딩 및 디코딩을 수행하도록 인코더(20) 또는 디코더(30)를 트레이닝하도록 구성된다.
본 출원의 이 실시예에서, 트레이닝 데이터는 트레이닝 매트릭스 세트를 포함한다. 트레이닝 매트릭스 세트는 필터링 전의 루마 매트릭스, 양자화 단계 매트릭스, 및 화상 블록의 필터링 후의 루마 매트릭스를 포함한다. 필터링 전의 루마 매트릭스의 해당 위치의 픽셀은 해당 화상 블록의 해당 위치 픽셀의 필터링 전 루마 값에 해당한다. 양자화 단계 매트릭스에서 해당 위치의 픽셀은 해당 화상 블록에서 해당 위치의 픽셀의 루마 값에 해당한다. 필터링 후 루마 매트릭스에서 해당 위치의 픽셀은 해당 화상 블록에서 해당 위치의 픽셀을 필터링한 후의 루마 값에 해당한다.
예를 들어, 트레이닝 매트릭스 세트 내의 복수의 매트릭스가 도 6a 내지 도 6c에 도시된 방식으로 트레이닝 엔진(25)에 입력될 수 있다. 도 6a에 도시된 바와 같이, 트레이닝 매트릭스 세트 내의 복수의 매트릭스는 트레이닝 엔진(25)으로 직접 입력되고, 복수의 매트릭스는 모두 2차원 매트릭스이다. 도 6b에 도시된 바와 같이, 트레이닝 매트릭스 세트 내의 복수의 매트릭스의 일부 또는 전부를 선택하여 조합하여 다차원 매트릭스를 획득한 다음, 다차원 매트릭스가 트레이닝 엔진(25)에 입력된다. 도 6c에 도시된 바와 같이, 트레이닝 매트릭스 세트 내의 복수의 매트릭스의 일부 또는 전부를 선택하여 덧셈(또는 곱셈)하여 2차원 매트릭스를 획득한 다음, 2차원 매트릭스가 트레이닝 엔진(25)에 입력된다.
트레이닝 데이터는 데이터베이스(도면에는 도시하지 않음)에 저장될 수 있고, 트레이닝 엔진(25)은 트레이닝 데이터에 기초한 트레이닝을 통해 타깃 모델(예를 들어, 확장 가능한 인코딩 및 디코딩을위한 신경망일 수 있음)을 획득한다. 트레이닝 데이터의 소스는 본 출원의 본 실시예에서 제한되지 않음에 유의해야 한다. 예를 들어, 트레이닝 데이터는 모델 트레이닝을 수행하기 위해 클라우드 또는 다른 장소로부터 획득될 수 있다.
트레이닝 엔진(25)은 필터링 전의 픽셀이 원래의 픽셀 값에 근접하도록 타깃 모델을 트레이닝시킨다. 각각의 트레이닝 과정에서 소형 배치 크기(small batch size)는 64개의 화상, 초기 학습률은 1e-4, 단계 크기는 10일 수 있다. 트레이닝 데이터는 서로 다른 QP 양자화 파라미터 설정에 기초하여 인코더에 의해 생성되는 데이터일 수 있다. 타깃 모델은 본 출원의 이 실시예에서 제공되는 확장 가능한 인코딩 및 디코딩 방법을 구현하는데 사용될 수 있다. 구체적으로, 재구성된 화상 또는 화상 블록은 관련된 전처리 후 타깃 모델에 입력되어, 필터링된 화상 또는 화상 블록을 획득한다. 본 출원의 이 실시예에서 타겟 모델은 구체적으로 필터링 네트워크일 수 있다. 다음은 타깃 모델에 대해 도 7a 내지 도 7d를 참조하여 상세히 설명한다.
트레이닝 엔진(25)에 의해 트레이닝을 통해 획득한 타겟 모델은 코딩 시스템(10)에 적용될 수 있으며, 예를 들어, 소스 디바이스(12)(예를 들어, 도 1b에 도시된 인코더(20)) 또는 데스티네이션 디바이스(14)(예를 들어, 디코더(30))에 적용될 수 있다. 트레이닝 엔진(25)은 클라우드에서의 학습을 통해 타깃 모델을 획득할 수 있고, 코딩 시스템(10)은 클라우드로부터 타깃 모델을 다운로드하여 사용한다. 대안적으로, 트레이닝 엔진(25)은 클라우드에서 학습을 통해 타깃 모델을 획득하고 타깃 모델을 사용할 수 있으며, 코딩 시스템(10)은 클라우드로부터 처리 결과를 직접 획득한다.
도 1b는 소스 디바이스(12)와 데스티네이션 디바이스(14)를 별개의 디바이스로 도시하지만, 디바이스의 실시예는 소스 디바이스(12) 및 데스티네이션 디바이스(14) 또는 소스 디바이스(12) 및 데스티네이션 디바이스(14)의 기능, 즉, 소스 디바이스(12) 또는 대응하는 기능 및 데스티네이션 디바이스(14) 또는 대응하는 기능을 또한 포함할 수 있다. 이러한 실시예에서, 소스 디바이스(12) 또는 대응하는 기능 및 데스티네이션 디바이스(14) 또는 대응하는 기능은, 동일한 하드웨어 및/또는 소프트웨어를 사용하여 또는 별개의 하드웨어 및/또는 소프트웨어에 의해 또는 이들의 임의의 조합에 의해 구현될 수 있다.
설명에 따르면, 도 1b에 도시된 바와 같은 소스 디바이스(12) 및/또는 데스티네이션 디바이스(14) 내의 서로 다른 유닛 또는 기능의 존재 및 (정확한) 분할은 실제의 디바이스 및 애플리케이션에 따라 다를 수 있다.
인코더(20)(예를 들어, 비디오 인코더(20)) 또는 디코더(30)(예를 들어, 비디오 디코더(30)) 또는 인코더(20) 및 디코더(30) 모두는, 하나 이상의 마이크로프로세서, 디지털 신호 처리기(digital signal processors, DSP), 주문형 집적 회로(application-specific integrated circuits, ASIC), 필드-프로그래밍 가능한 게이트 어레이(field-programmable gate arrays, FPGA), 이산 로직, 하드웨어, 비디오 코딩 전용 프로세서 또는 이들의 임의의 조합과 같은, 도 1c에 도시된 바와 같은 처리 회로를 통해 구현될 수 있다. 인코더(20)는 처리 회로(46)를 통해 구현되어, 도 2에 도시된 인코더(20) 및/또는 여기에서 설명되는 임의의 다른 인코더 시스템 또는 서브시스템에 관해 논의된 바와 같은 다양한 모듈을 구현할 수 있다. 디코더(30)는 처리 회로(46)를 통해 구현되어, 도 3에 디코더(30) 및/또는 여기에서 설명되는 임의의 디코더 시스템 또는 서브시스템에 관해 논의된 바와 같은 다양한 모듈을 구현할 수 있다. 처리 회로(46)는 후술하는 바와 같이 다양한 동작을 수행하도록 구성될 수 있다. 도 5에 도시된 바와 같이, 일부 기술이 소프트웨어를 사용하여 구현되는 경우, 디바이스는 적절하고 비일시적인 컴퓨터-판독 가능한 저장 매체에 소프트웨어 명령을 저장할 수 있고, 하나 이상의 프로세서와 같은 하드웨어를 사용하여 명령을 실행하여, 본 개시의 기술을 수행할 수 있다. 비디오 인코더(20) 및 비디오 디코더(30) 중 어느 하나는 예를 들어 도 1c에 도시된 바와 같이 단일 디바이스에서 결합된 인코더/디코더(encoder/decoder, CODEC)의 일부로서 통합될 수 있다.
소스 디바이스(12) 및 데스티네이션 디바이스(14)는 임의의 유형의 핸드 헬드 또는 고정 디바이스, 예를 들어, 노트북 또는 랩 탑 컴퓨터, 휴대 전화, 스마트 폰, 태블릿 또는 태블릿 컴퓨터, 카메라, 데스크탑 컴퓨터, 셋톱 박스, 텔레비전, 표시 장치, 디지털 미디어 플레이어, 비디오 게이밍 콘솔, 비디오 스트리밍 디바이스(예컨대, 컨텐츠 서비스 서버 또는 컨텐츠 배송 서버), 브로드캐스트 수신기 디바이스, 브로드캐스트 송신기 디바이스, 등을 포함하는 넓은 범위의 디바이스 중 임의의 것을 포함할 수 있으며, 운영 체제를 사용하지 않거나 임의의 유형의 운영 체제를 사용할 수 있다. 일부 경우에, 소스 디바이스(12) 및 데스티네이션 디바이스(14)는 무선 통신을 위한 구성 요소를 구비할 수 있다. 따라서, 소스 디바이스(12) 및 데스티네이션 디바이스(14)는 무선 통신 디바이스일 수 있다.
일부 경우에, 도 1b에 도시된 비디오 코딩 시스템(10)은 단지 예시일 뿐이며 본 출원의 기술은 인코딩 및 디코딩 디바이스들 사이에서 데이터 통신을 반드시 포함하지 않는 비디오 코딩 설정(예를 들어, 비디오 인코딩 또는 비디오 디코딩)에 적용될 수 있다. 다른 예로서, 데이터는 로컬 메모리로부터 검색(retrieve)되거나, 네트워크 등을 통해 스트리밍된다. 비디오 인코딩 디바이스는 데이터를 인코딩할 수 있고 인코딩된 데이터를 메모리에 저장할 수 있고, 및/또는 비디오 디코딩 디바이스는 데이터를 메모리로부터 검색하고 데이터를 디코딩할 수 있다. 일부 예에서, 인코딩 및 디코딩은, 서로 통신하지 않고 단순히 데이터를 메모리로 인코딩 및/또는 메모리로부터 데이터를 검색하고 데이터를 디코딩하는 디바이스에 의해 수행된다.
도 1c는 예시적인 실시예에 따른, 도 2의 비디오 인코더(20) 및/또는 도 3의 비디오 디코더(30)를 포함하는 비디오 코딩 시스템(40)의 예시를 도시하는 예시적인 다이어그램이다. 비디오 코딩 시스템(40)은 이미징 디바이스(41), 비디오 인코더(20), 비디오 디코더(30)(및/또는 처리 회로(46)에 의해 구현되는 비디오 인코더/디코더), 안테나(42), 하나 이상의 프로세서(43), 하나 이상의 메모리(44), 및/또는 표시 장치(45)를 포함할 수 있다.
도 1c에 도시된 바와 같이, 이미징 디바이스(41), 안테나(42), 처리 회로(46), 비디오 인코더(20), 비디오 디코더(30), 프로세서(43), 메모리(44), 및/또는 표시 장치(45)는 서로 통신할 수 있다. 비디오 코딩 시스템(40)은, 다른 예시에서, 비디오 인코더(20)만을 또는 비디오 디코더(30)만을 포함할 수 있다.
일부 예에서, 안테나(42)는 비디오 데이터의 인코딩된 비트스트림를 전송 또는 수신하도록 구성될 수 있다. 또한, 일부 예에서, 표시 장치(45)는 비디오 데이터를 표현하도록 구성될 수 있다. 처리 회로(46)는 주문형 집적 회로(application-specific integrated circuit, ASIC) 로직, 그래픽 처리 유닛, 범용 프로세서, 등을 포함할 수 있다. 비디오 코딩 시스템(40)은 또한 선택적인 프로세서(43)를 포함할 수 있다. 선택적인 프로세서(43)는 유사하게, 주문형 집적 회로(application-specific integrated circuit, ASIC) 로직, 그래픽 프로세서, 범용 프로세서, 등을 포함할 수 있다. 그리고, 메모리(44)는 예를 들어, 휘발성 메모리(예를 들어, 정적 랜덤 액세스 메모리(static random access memory, SRAM) 또는 동적 랜덤 액세스 메모리(dynamic random access memory, DRAM)) 또는 비휘발성 메모리(예를 들어, 플래시 메모리)와 같은 임의의 유형의 메모리일 수 있다. 비제한적인 예에서, 메모리(44)는 캐시 메모리로 구현될 수 있다. 다른 예에서, 처리 회로(46)는 이미지 버퍼를 구현하기 위한 메모리(예를 들어, 캐시)를 포함할 수 있다.
일부 예에서, 논리 회로를 사용하여 구현되는 비디오 인코더(20)는 화상 버퍼(예를 들어, 처리 회로(46) 또는 메모리(44)에 의해 구현됨) 및 그래픽 처리 장치(예를 들어, 처리 회로(46)에 의해 구현됨)를 포함할 수 있다. 그래픽 처리 유닛은 화상 버퍼에 통신 가능하게 연결될 수 있다. 그래픽 처리 유닛은 처리 회로(46)를 통해 구현되는 비디오 인코더(20)를 포함하여, 도 2에 관해 논의되는 다양한 모듈 및/또는 여기에서 설명되는 임의의 다른 인코더 시스템 또는 서브시스템을 구현할 수 있다. 논리 회로는 본 명세서에서 기술되는 다양한 동작을 수행하도록 구성될 수 있다.
일부 예에서, 비디오 디코더(30)는 처리 회로(46)에 의해 유사한 방식으로 구현되어, 도 3의 비디오 디코더(30)를 참조로 설명되는 다양한 모듈 및/또는 본 명세서에서 설명되는 임의의 다른 디코더 시스템 또는 서브시스템을 구현할 수 있다. 일부 예에서, 논리 회로를 사용하여 구현되는 비디오 디코더(30)는 화상 버퍼(처리 회로(46) 또는 메모리(44)에 의해 구현됨) 및 그래픽 처리 유닛(예를 들어, 처리 회로(46)에 의해 구현됨)을 포함할 수 있다. 그래픽 처리 유닛은 화상 버퍼에 통신 가능하게 연결될 수 있다. 그래픽 처리 유닛은 처리 회로(46)를 통해 구현되는 비디오 디코더(30)를 포함하여, 도 3에 관해 논의되는 다양한 모듈 및/또는 여기에서 설명되는 임의의 다른 디코더 시스템 또는 서브시스템을 구현할 수 있다.
일부 예에서, 안테나(42)는 비디오 데이터의 인코딩된 비트스트림를 수신하도록 구성될 수 있다. 기술된 바와 같이, 인코딩된 비트스트림은 본 명세서에서 설명되는 비디오 프레임 인코딩 데이터, 인디케이터, 인덱스 값, 모드 선택 데이터, 등, 예를 들어, 코딩 파티셔닝(예를 들어, 변환 계수 또는 양자화된 변환 계수, 선택적인 인디케이터(설명된 바와 같은), 및/또는 코딩 파티셔닝을 규정하는 데이터)에 관련된 데이터를 포함할 수 있다. 비디오 코딩 시스템(40)은 안테나(42)에 결합되고 인코딩된 비트스트림을 디코딩하도록 구성되는 비디오 디코더(30)를 더 포함할 수 있다. 표시 장치(45)는 비디오 프레임을 표현하도록 구성된다.
본 출원의 이 실시예에서, 비디오 인코더(20)를 참조하여 설명되는 예시에 대해, 비디오 디코더(30)는 역 프로세스를 수행하도록 구성될 수 있음을 이해해야 한다. 신택스 엘리먼트를 시그널링하는 것과 관련하여, 비디오 디코더(30)는 신택스 엘리먼트를 수신 및 파싱하도록 그리고 이에 상응하여 관련 비디오 데이터를 디코딩하도록 구성될 수 있다. 일부 예에서, 비디오 인코더(20)는 신택스 엘리먼트를 인코딩된 비디오 비트스트림으로 엔트로피 인코딩할 수 있다. 그러한 예에서, 비디오 디코더(30)는 신택스 엘리먼트를 파싱할 수 있고 그에 따라 연관된 비디오 데이터를 디코딩할 수 있다.
설명의 편의상, 본 발명의 실시예는, 예를 들어, 다용도 비디오 코딩(Versatile Video Coding, VVC) 또는 ITU-T 비디오 코딩 전문가 그룹(Video Coding Experts Group, VCEG) 및 ISO/IEC 동영상 전문가 그룹(Moving Picture Experts Group, MPEG)의 비디오 코딩 공동 협력 팀(Joint Collaborative Team on Video Coding, JCT-VC)에 의해 개발된 고-효율 비디오 코딩(High-Efficiency Video Coding, HEVC)의 참조 소프트웨어를 참조하여 설명된다. 통상의 기술자는 본 발명의 실시예가 HEVC 또는 VVC에 제한되지 않음을 이해할 것이다.
인코더 및 인코딩 방법
도 2는 본 출원의 기법을 구현하도록 구성되는 비디오 인코더(20)의 예시를 도시하는 개략적인 블록도이다. 도 2의 예시에서, 비디오 인코더(20)는, 입력(또는 입력 인터페이스)(201), 잔차 계산 유닛(204), 변환 처리 유닛(206), 양자화 유닛(208), 역 양자화 유닛(210), 및 역변환 처리 유닛(212), 재구성 유닛(214), 루프 필터(220), 디코딩된 화상 버퍼(DPB)(230), 모드 선택 유닛(260), 엔트로피 인코딩 유닛(270) 및 출력(또는 출력 인터페이스)(272)를 포함한다. 모드 선택 유닛(260)은 인터-예측 유닛(244), 인트라-예측 유닛(254) 및 파티셔닝 유닛(262)을 포함할 수 있다. 인터-예측 유닛(244)은 모션 추정 유닛 및 모션 보상 유닛(도시되지 않음)을 포함할 수 있다. 도 2에 도시된 비디오 인코더(20)는 하이브리드 비디오 코덱에 기초하여 하이브리드 비디오 인코더 또는 비디오 인코더로도 또한 지칭될 수 있다.
잔차 계산 유닛(204), 변환 처리 유닛(206), 양자화 유닛(208), 및 모드 선택 유닛(260)은 인코더(20)의 순방향 신호 경로를 형성한다. 역 양자화 유닛(210), 역변환 처리 유닛(212), 재구성 유닛(214), 버퍼(216), 루프 필터(220), 디코딩된 화상 버퍼(decoded picture buffer, DPB)(230), 인터-예측 유닛(244), 및 인트라-예측 유닛(254)은 인코더의 역방향 신호 경로를 형성한다. 인코더(20)의 역방향 신호 경로는 디코더(도 3의 디코더(30) 참조)의 신호 경로에 대응한다. 역 양자화 유닛(210), 역변환 처리 유닛(212), 재구성 유닛(214), 루프 필터(220), 디코딩된 화상 버퍼(230), 인터-예측 유닛(244), 및 인트라-예측 유닛(254)은 비디오 인코더(20)의 "내장 디코더"를 형성한다.
정량
양자화 유닛(208)은, 예를 들어, 스칼라 양자화 또는 벡터 양자화를 통해, 변환 계수(107)를 양자화하여 양자화된 변환 계수(109)를 획득하도록 구성된다. 양자화된 변환 계수(209)는 양자화된 잔차 계수(209)로도 또한 지칭될 수 있다.
양자화 프로세스는 변환 계수(207)의 일부 또는 전부에 관련된 비트 심도를 감소시킬 수 있다. 예를 들어, n-비트 변환 계수는 양자화 중에 m-비트 변환 계수로 잘라낼 수 있으며, 여기서 n은 m보다 크다. 양자화 정도는 양자화 파라미터(quantization parameter, QP)를 조정함으로써 수정될 수 있다. 예를 들어, 스칼라 양자화의 경우, 더 미세하거나 거친 양자화를 달성하기 위해 다른 스케일을 적용할 수 있다. 더 작은 양자화 단계는 더 미세한 양자화에 해당하고, 더 큰 양자화 단계는 더 거친 양자화에 해당한다. 적절한 양자화 단계는 양자화 파라미터(quantization parameter, QP)에 의해 표시될 수 있다. 예를 들어, 양자화 파라미터는, 적절한 양자화 단계의 미리 정의된 세트에 대한 인덱스일 수 있다. 예를 들어, 더 작은 양자화 파라미터는 더 미세한 양자화(더 작은 양자화 단계)에 대응할 수 있고 더 큰 양자화 파라미터는 더 거친 양자화(더 큰 양자화 단계)에 대응할 수 있으며, 그 반대일 수 있다. 양자화는 양자화 단계에 의한 나눗셈과, 예를 들어 역 양자화 유닛(210)에 의해 수행되는 역 양자화 또는 대응하는 역 양자화를 포함할 수 있거나, 또는 양자화 단계에 의한 곱셈을 포함할 수 있다. HEVC와 같은 일부 표준에 따른 실시예에서, 양자화 파라미터는 양자화 단계를 결정하는데 사용될 수 있다. 일반적으로, 양자화 단계는 나누기를 포함하는 방정식의 고정 소수점 근사를 사용하여 양자화 파라미터에 기초하여 계산될 수 있다. 잔차 블록의 놈(norm)을 복원하기 위해, 다른 스케일 팩터가 양자화 및 역양자화에 도입될 수 있다. 잔차 블록의 놈(norm)은 양자화 단계를 위한 방정식의 고정 소수점 근사에 사용되는 스케일과 양자화 파라미터 때문에 수정될 수 있다. 예시적인 구현예에서, 역변환의 스케일은 역양자화의 스케일과 결합될 수 있다. 대안적으로, 맞춤형 양자화 테이블이 사용되어 인코더로부터 디코더로, 예를 들어 비트스트림으로 시그널링될 수 있다. 양자화는 손실 있는 연산으로서, 더 큰 양자화 단계가 더 큰 손실을 나타낸다.
일 실시예로서, 비디오 인코더(20) (이에 상응하여, 양자화 유닛(208))는, 엔트로피 인코딩 유닛(270)이 수행하는 인코딩 이후에, 또는 압축 이후에, 양자화 파라미터(quantization parameters, QP)를, 예를 들어, 직접, 출력하도록 구성될 수 있어, 예를 들어, 비디오 디코더(30)는 디코딩을 위한 양자화 파라미터를 수신하고 적용할 수 있다.
역 양자화
역 양자화 유닛(210)은, 양자화된 계수에 대해 양자화 유닛(208)의 역 양자화를 수행하여, 예를 들어, 양자화 유닛(208)과 동일한 양자화 단계에 기초하여 또는 이를 사용하여, 양자화 유닛(208)이 수행하는 양자화 방식의 역을 적용함으로써, 역양자화된 계수(211)를 획득하도록 구성된다. 역양자화된 계수(211)는 역양자화된 잔차 계수(211)로도 또한 지칭될 수 있고, 변환 계수(207)에 대응하지만, 역양자화 계수(211)는 일반적으로 양자화에 의한 손실로 인해 변환 계수와 완전히 동일하지 않다.
재구성
재구성 유닛(214)(예를 들어, 합산기(214))은 예를 들어, 재구성된 잔차 블록(213)의 픽셀 값 및 예측 블록(265)의 픽셀 값을 더함으로써, 변환 블록(213)(즉, 재구성된 잔차 블록(213))을 예측 블록(265)에 추가하여, 픽셀 도메인에서 재구성된 블록(215)을 획득하도록 구성된다.
필터링
루프 필터 유닛(220)(또는 줄여서 "루프 필터"(220))는 재구성된 블록(215)을 필터링하여 필터링된 블록(221)을 획득하거나, 일반적으로는 재구성된 픽셀을 필터링하여 필터링된 픽셀 값을 획득하도록 구성된다. 루프 필터 유닛은, 예를 들어, 픽셀 변환을 매끄럽게 하거나 비디오 품질을 개선하도록 구성된다. 루프 필터 유닛(220)은 디-블로킹 필터, 샘플-적응형 오프셋(sample-adaptive offset, SAO) 필터 또는 하나 이상의 다른 필터, 예를 들어, 적응형 루프 필터(adaptive loop filter, ALF), 노이즈 억제 필터(noise suppression filter, NSF), 또는 이들의 임의의 조합과 같은, 하나 이상의 루프 필터를 포함할 수 있다. 예로서, 루프 필터 유닛(220)은 디-블로킹 필터, SAO 필터, 및 ALF 필터를 포함할 수 있다. 필터링 프로세스의 순서는 디-블로킹 필터, SAO 필터, 및 ALF 필터 순일 수 있다. 다른 예에서, 크로마 스케일링을 가지는 루마 맵핑(luma mapping with chroma scaling, LMCS)(즉, 적응형 인-루프 리셰이퍼(reshaper))로 지칭되는 프로세스가 추가된다. 이 프로세스는 블록 해제 전에 수행된다. 다른 예에서, 디-블로킹 필터링 프로세스는 내부 서브-블록 가장자리, 예를 들어, 아핀 서브-블록 가장자리, ATMVP 서브-블록 가장자리, 서브-블록 변환(sub-block transform, SBT) 가장자리, 및 인트라 서브-파티션(intra sub-partition, ISP) 가장자리에도 또한 적용될 수 있다. 비록 루프 필터 유닛(220)은 도 2에서 루프 필터(loop filter)로서 도시되어 있으나, 다른 구성에서는, 루프 필터 유닛(220)은 포스트-루프 필터(post-loop filter)로서 구현될 수 있다. 필터링된 블록(221)은 필터링된 재구성 블록(221)으로도 또한 지칭될 수 있다.
일 실시예로서, 비디오 인코더(20)(이에 상응하여, 루프 필터 유닛(220))은 루프 필터 파라미터(SAO 필터 파라미터, ALF 필터 파라미터, 또는 LMCS 파라미터와 같은)를, 예를 들어, 직접 또는 엔트로피 인코딩 유닛(270)이 수행하는 엔트로피 인코딩 이후에, 출력하도록 구성될 수 있고, 이에 따라, 예를 들어, 디코더(30)는 동일한 또는 서로 다른 루프 필터 파라미터를 수신하고 디코딩에 적용할 수 있다.
디코더 및 디코딩 방법
도 3은 본 출원의 기술을 구현하도록 구성되는 비디오 디코더(30)의 예시를 도시한다. 비디오 디코더(30)는 예를 들어, 인코더(20)가 인코딩한 인코딩된 화상 데이터(21)(예를 들어, 인코딩된 비트스트림(21))을 수신하여, 디코딩된 화상(331)을 획득하도록 구성된다. 인코딩된 화상 데이터 또는 비트스트림은, 인코딩된 화상 데이터를 디코딩하기 위한 정보, 예를 들어, 인코딩된 비디오 슬라이스(및/또는 타일 그룹 or 타일)의 화상 블록 및 관련된 신택스 엘리먼트를 나타내는 데이터를 포함한다.
도 3의 예에서, 디코더(30)는 엔트로피 디코딩 유닛(304), 역 양자화 유닛(310), 역변환 처리 유닛(312), 재구성 유닛(314)(예를 들어, 합산기(314)), 루프 필터(320), 디코딩된 화상 버퍼(DBP)(330), 모드 적용 유닛(360), 인터-예측 유닛(344) 및 인트라-예측 유닛(354)을 포함한다. 인터-예측 유닛(344)은 모션 보상 유닛이거나 이를 포함할 수 있다. 비디오 디코더(30)는, 일부 예에서, 도 2의 비디오 인코더(100)에 대해 설명한 인코딩 프로세스의 실질적으로 역인 디코딩 프로세스를 수행할 수 있다.
인코더(20)에 관해 설명한 바와 같이, 역 양자화 유닛(210), 역변환 처리 유닛(212), 재구성 유닛(214), 루프 필터(220), 디코딩된 화상 버퍼(DPB)(230), 인터-예측 유닛(344), 및 인트라-예측 유닛(354)은 또한 비디오 인코더(20)의 "내장 디코더"를 형성한다. 따라서, 역 양자화 유닛(310)은 기능적으로 역 양자화 유닛(110)과 동일할 수 있고, 역변환 처리 유닛(312)은 기능적으로 역변환 처리 유닛(122)과 동일할 수 있고, 재구성 유닛(314)은 기능적으로 재구성 유닛(214)과 동일할 수 있고, 루프 필터(320)은 기능적으로 루프 필터(220)과 동일할 수 있고, 그리고 디코딩된 화상 버퍼(330)은 기능적으로 디코딩된 화상 버퍼(230)과 동일할 수 있다. 따라서, 비디오 인코더(20)의 각각의 유닛 및 기능에 대해 제공된 설명은 비디오 디코더(30)의 각각의 유닛 및 기능에 대응하여 적용된다.
역 양자화
역 양자화 유닛(310)은, 인코딩된 화상 데이터(21)로부터 (예를 들어, 엔트로피 디코딩 유닛(304)에 의해, 예를 들어, 파싱 및/또는 디코딩함으로써) 양자화 파라미터(quantization parameter, QP)(또는 일반적으로 역 양자화에 관련된 정보) 및 양자화된 계수를 수신하도록, 그리고 양자화 파라미터에 기초하여, 디코딩된 양자화된 계수(309)에 대해 역 양자화를 수행하여 변환 계수(311)로도 또한 지칭될 수 있는 역 양자화된 계수(311)를 획득하도록, 구성될 수 있다. 역 양자화 프로세스는, 비디오 슬라이스 내의 각각의 비디오 블록에 대해 비디오 인코더(20)가 계산하는 양자화 파라미터에 기초하여 양자화의 정도를 결정하는 것, 그리고 이와 유사하게, 수행되어야 하는 역 양자화의 정도를 결정하는 것을 포함할 수 있다.
재구성
재구성 유닛(314)(예를 들어, 합산기(314))은, 예를 들어, 재구성된 잔차 블록(313)의 픽셀 값 및 예측 블록(365)의 픽셀 값을 더함으로써, 재구성된 잔차 블록(313)을 예측 블록(365)에 더하여 픽셀 도메인에서 재구성된 블록(315)을 획득하도록 구성될 수 있다.
필터링
루프 필터 유닛(320)(코딩 루프 내 또는 이후)는 예를 들어, 픽셀 변환을 매끄럽게 하거나 비디오 품질을 개선하기 위해, 재구성된 블록(315)을 필터링하여 필터링된 블록(321)을 획득하도록 구성된다. 루프 필터 유닛(320)은 디-블로킹 필터, 샘플-적응형 오프셋(sample-adaptive offset, SAO) 필터 또는 하나 이상의 다른 필터, 예를 들어, 적응형 루프 필터(adaptive loop filter, ALF), 노이즈 억제 필터(noise suppression filter, NSF), 또는 이들의 임의의 조합과 같은, 하나 이상의 루프 필터를 포함할 수 있다. 예로서, 루프 필터 유닛(220)은 디-블로킹 필터, SAO 필터, 및 ALF 필터를 포함할 수 있다. 필터링 프로세스의 순서는 디-블로킹 필터, SAO 필터, 및 ALF 필터 순일 수 있다. 다른 예에서, 크로마 스케일링을 가지는 루마 맵핑(luma mapping with chroma scaling, LMCS)(즉, 적응형 인-루프 리셰이퍼(reshaper))로 지칭되는 프로세스가 추가된다. 이 프로세스는 블록 해제 전에 수행된다. 다른 예에서, 디-블로킹 필터링 프로세스는 내부 서브-블록 가장자리, 예를 들어, 아핀 서브-블록 가장자리, ATMVP 서브-블록 가장자리, 서브-블록 변환(sub-block transform, SBT) 가장자리, 및 인트라 서브-파티션(intra sub-partition, ISP) 가장자리에도 또한 적용될 수 있다. 비록 루프 필터 유닛(320)은 도 3에서 루프 필터(loop filter)로서 도시되어 있으나, 다른 구성에서는, 루프 필터 유닛(320)은 포스트-루프 필터(post-loop filter)로서 구현될 수 있다.
디코더(30)는, 사용자에게 표현(presentation) 또는 현시(viewing)를 위해, 예를 들어, 출력(312)을 통해, 디코딩된 화상(311)을 출력하도록 구성된다.
비록 전술한 실시예는 주로 비디오 코딩에 기초하여 설명되었지만, 코딩 시스템(10), 인코더(20) 및 디코더(30)의 실시예 및 여기에 설명되는 다른 실시예는 정지 화상 처리 또는 코딩, 즉, 비디오 코딩에서 임의의 선행하는 또는 연속적인 화상에 독립적인 개별 화상의 처리 또는 코딩에도 또한 적용될 수 있음에 유의해야 한다. 일반적으로, 화상 처리가 단일 화상(17)으로 제한되면, 인터-예측 유닛(244)(인코더) 및 인터-예측 유닛(344)(디코더)은 이용 불가할 수 있다. 비디오 인코더(20) 및 비디오 디코더(30)의 모든 다른 기능(도구 또는 기술로도 지칭됨)은 정지 화상 처리, 예를 들어, 잔차 계산(204)/(304), 변환(206), 양자화(208), 역 양자화(210)/(310), (역) 변환(212)/(312), 파티셔닝(262)/(362), 인트라-예측(254)/(354), 및/또는 루프 필터링(220)/(320), 엔트로피 인코딩(270), 및 엔트로피 디코딩(304)에도 동일하게 사용될 수 있다.
도 4는 본 발명의 일 실시예에 따른 비디오 코딩 디바이스(400)의 개략도이다. 비디오 코딩 디바이스(400)는 여기에 설명된 개시된 실시예를 구현하는데 적용할 수 있다. 일 실시예로서, 비디오 코딩 디바이스(400)는 도 1b의 비디오 디코더(30)와 같은 디코더 또는 도 1b의 비디오 인코더(20)와 같은 인코더일 수 있다.
비디오 코딩 디바이스(400)는, 데이터를 수신하기 위한 입구 포트(410)(또는 입력 포트(410)) 및 수신기 유닛(receiver unit, Rx)(420); 데이터를 처리하기 위한 프로세서, 논리 유닛, 또는 중앙 처리 장치(central processing unit, CPU)(430) - 예를 들어, 프로세서(430)는 신경망 처리 유닛(430)일 수 있음 -; 데이터를 전송하기 위한 송신기 유닛(transmitter unit, Tx)(440) 및 출구 포트(450)(또는 출력 포트(450)); 및 데이터를 저장하기 위한 메모리(460)를 포함한다. 비디오 코딩 디바이스(400)는, 입구 포트(410), 수신기 유닛(420), 송신기 유닛(440), 및 출구 포트(450)에 연결되는 그리고 광 또는 전기 신호의 출구 또는 입구로서 구성되는, 광-전기(optical-to-electrical, OE) 콤포넌트 및 전기-광(electrical-to-optical, EO) 콤포넌트를 또한 포함할 수 있다.
프로세서(430)는 하드웨어 및 소프트웨어로 구현된다. 프로세서(430)는 하나 이상의 CPU 칩, 코어(예컨대, 멀티 코어 프로세서), FPGA, ASIC, 및 DSP로 구현될 수 있다. 프로세서(430)는 입구 포트(410), 수신기 유닛(420), 송신기 유닛(440), 출구 포트(450), 및 메모리(460)와 통신한다. 프로세서(430)는 코딩 모듈(470)(예컨대, 신경망(Neural Network, NN)-기반 코딩 모듈(470))을 포함한다. 코딩 모듈(470)은 위에서 설명한, 개시된 실시예를 구현한다. 예를 들어, 코딩 모듈(470)은 다양한 코딩 동작을 구현, 처리, 준비, 또는 제공한다. 따라서, 코딩 모듈(470)을 포함하는 것은 비디오 코딩 디바이스(400)의 기능에 실질적인 개선을 제공하고 비디오 코딩 디바이스(400)의 다른 상태로의 전환에 영향을 미친다. 대안적으로, 코딩 모듈(470)은 메모리(460)에 저장되고 프로세서(430)에 의해 실행되는 명령에 기초하여 구현된다.
메모리(460)는 하나 이상의 디스크, 테이프 드라이브, 및 솔리드-스테이트 드라이브를 포함할 수 있고, 이러한 프로그램이 선택되어 실행되는 경우 프로그램을 저장하고, 프로그램 실행 중에 판독되는 명령 및 데이터를 저장하기 위해, 오버플로우된 데이터 저장 디바이스로 사용될 수 있다. 메모리(460)는 휘발성 및/또는 비휘발성일 수 있으며, 읽기-전용 메모리(read-only memory, ROM), 랜덤 액세스 메모리(random access memory, RAM), 삼중 컨텐츠-주소 지정 가능한 메모리(ternary content-addressable memory, TCAM), 및/또는 정적 랜덤-액세스 메모리(static random-access memory, SRAM)일 수 있다.
도 5는 예시적인 실시예에 따른 장치(500)의 단순화된 블록도이다. 장치(500)는 도 1b의 소스 디바이스(12) 및 데스티네이션 디바이스(14) 중 하나 또는 모두로서 사용될 수 있다.
장치(500) 내의 프로세서(502)는 중앙 처리 장치일 수 있다. 대안적으로, 프로세서(502)는, 현재 존재하거나 앞으로 개발될 정보를 제어하거나 처리할 수 있는, 임의의 다른 유형의 디바이스 또는 복수의 디바이스일 수 있다. 도면에 도시된 바와 같이, 비록 개시된 구현예가 프로세서(1702)와 같은 단일 프로세서로 실현될 수 있으나, 속도 및 효율의 이점은 둘 이상의 프로세서를 사용하여 달성될 수 있다.
장치(500)의 메모리(504)는 구현예에서 읽기-전용 메모리(ROM) 디바이스 또는 랜덤 액세스 메모리(RAM) 디바이스일 수 있다. 임의의 다른 적합한 유형의 저장 디바이스가 메모리(504)로서 사용될 수 있다. 메모리(504)는, 버스(512)를 통해 프로세서(502)에 의해 액세스 될 수 있는 코드 및 데이터(506)를 포함할 수 있다. 메모리(504)는 운영 체제(508) 및 애플리케이션 프로그램(510)을 더 포함할 수 있다. 애플리케이션 프로그램(510)은 프로세서(502)로 하여금 여기에 기술된 방법을 수행하도록 하는 적어도 하나의 프로그램을 포함한다. 예를 들어, 애플리케이션 프로그램(510)은 애플리케이션 1 내지 N을 포함할 수 있고, 그리고 여기에 기술되는 방법을 수행하는 비디오 코딩 애플리케이션을 더 포함할 수 있다.
장치(500)는 디스플레이(518)와 같은 하나 이상의 출력 디바이스를 더 포함할 수 있다. 디스플레이(518)는, 한 예로서, 터치 입력을 감지하도록 구성되는 터치-감응 엘리먼트와 디스플레이를 결합한 터치-감응 디스플레이일 수 있다. 디스플레이(518)는 버스(512)를 통해 프로세서(502)에 연결될 수 있다.
여기서는 비록 단일 버스로 도시되었으나, 디바이스(500)의 버스(512)는 복수의 버스를 포함할 수 있다. 또한, 보조 기억 장치는 장치(500)의 다른 구성 요소에 직접 연결되거나 네트워크를 통해 액세스될 수 있으며, 메모리 카드와 같은 단일 통합 유닛 또는 복수의 메모리 카드와 같은 복수의 유닛을 포함할 수 있다. 따라서 장치(500)는 다양한 구성으로 구현될 수 있다.
본 발명의 실시예는 컬러 성분 비트레이트 할당을 위한 손실 있는 AI 화상 코딩 방식에 관한 것으로, 도 1a 내지 도 5에서 설명한 비디오 코딩 시스템, 인코더, 및 디코더에 적용 가능하다.
본 출원에서 제공되는 방법은 Y, U, 및 V 성분에 대한 비트레이트 할당 프로세스에 주로 적용됨에 유의해야 한다. 이 프로세스는 주로 인코더 측에서 제어한다. 디코더 측을 보다 적응적으로 만들기 위해, 대응하는 제어 유닛도 디코더에 추가될 수 있다.
비디오 화상 신호는 일반적으로 하나의 루마 성분과 두 개의 크로마 성분을 포함한다. 루마 성분은 일반적으로 기호 Y로 표시되며 크로마 성분은 일반적으로 기호 U 또는 V로 표시된다. 도 7의 (a) 내지 (c)에 도시된 바와 같이, 일반적으로 사용되는 YUV 포맷은 다음과 같은 포맷을 포함한다. 도 7에서, 십자 표시는 루마 성분의 샘플링 포인트를 나타내고, 원은 각각의 크로마 성분의 샘플링 포인트를 나타낸다.
4:4:4 포맷: 크로마 성분은 다운샘플링되지 않는다.
4:2:2 포맷: 루마 성분에 대한 크로마 성분의 경우, 2:1 수평 다운샘플링이 수행되고, 수직 다운샘플링은 수행되지 않는다. 2개의 U 샘플링 포인트 또는 V 샘플링 포인트마다, 스캔된 각각의 행에는 4개의 Y 샘플링 포인트가 포함된다.
4:2:0 포맷: 루마 성분 대비 크로마 성분의 경우, 2:1 수평 다운샘플링이 수행되고, 2:1 수직 다운샘플링이 수행한다.
비디오 화상이 YUV 4:2:0 포맷인 경우, 화상 블록의 루마 성분이 2Nx2N 화상 블록이면, 화상 블록의 크로마 성분은 NxN 화상 블록이다. 본 발명의 이 실시예에서, 본 발명의 기술적 해결 수단은 4:2:0 포맷의 예를 사용하여 설명된다. 그러나, YUV 4:2:0 포맷에 더하여, 본 발명의 기술적 해결 수단은 다른 YUV 포맷 또는 다른 비디오 화상 포맷, 예를 들어, RGB 포맷에서 서로 다른 성분 사이의 상호 예측에도 또한 적용될 수 있음을 이해할 수 있다. 한편, 현재 블록은 정사각형 블록이거나, 비-정사각형 직사각형의 블록 또는 다른 형상의 영역일 수 있고, 본 발명의 실시예에서 제공되는 기술적 해결 수단도 또한 적용 가능하다.
설명의 편의를 위해, 본 발명의 이 실시예는 제1 신호 성분 및 제2 신호 성분을 사용하여 설명된다. 화상 신호가 루마 신호 성분 및 크로마 신호 성분을 포함한다면, 제1 신호 성분은 크로마 성분일 수 있고, 제2 신호 성분은 루마 성분일 수 있다. 화상 신호가 3개의 신호 성분 R, G, 및 B를 포함한다면, 제1 신호 성분은 3개의 신호 성분 R, G, 및 B 중 임의의 하나일 수 있고, 제2 신호 성분은 3개의 신호 성분 R, G, 및 B 중 제1 신호 성분과는 상이한 하나일 수 있다. 화상 신호가 다른 방식으로 복수의 신호 성분로 분해되더라도, 제1 신호 성분 및 제2 신호 성분을 지정하는데 유사한 방법이 사용될 수 있다.
후술하는 바와 같이, 본 출원의 이 실시예에서, 품질 팩터는 비트레이트 제어 모듈(또는 비트레이트 할당 제어 모듈로 지칭됨)에 입력될 수 있다. 모듈은 각각의 성분의 피처 맵의 제어 신호를 생성한다. 각각의 성분의 제어 신호의 제어 벡터에, 대응하는 피처 맵을 곱하여, 양자화된 피처 값, 즉, 인코딩될 피처 값을 획득한다.
도 7a는 본 발명의 일 실시예에 따른 YUV 비트레이트 할당을 위한 AI 화상 코딩 시스템(700)을 도시한다. AI 화상 코딩 시스템(700)은 비디오 화상 인코더 및 디코더에 적용될 수 있다. 도 7a에 도시된 바와 같이, 화상 코딩 시스템(700)은, 제1 신호 성분 처리 모듈(예를 들어, Y 성분 처리 모듈), 제2 신호 성분 처리 모듈(예를 들어, UV 성분 처리 모듈), 비트레이트 할당 제어 모듈, 및 인코더 측의 엔트로피 인코딩 모듈, 및 제1 신호 성분 처리 모듈(Y 성분 처리 모듈 2), 제2 신호 성분 처리 모듈(예를 들어, UV 성분 처리 모듈 2), 및 디코더 측의 엔트로피 디코딩 모듈을 포함한다. 화상 코딩 시스템(700)은 선택사항으로 조인트 처리 모듈, 조인트 처리 모듈 2, 및 품질 응답 모듈(비트레이트 할당 제어 모듈 2 또는 비트레이트 제어 모듈 2로도 지칭됨)을 포함한다. 화상 코딩 시스템(700)에서, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터가 비트레이트 할당 제어 모듈에 입력된다. 모듈은 Y 성분 처리 모듈이 출력하는 Y 성분의 피처 맵 및 UV 성분 처리 모듈이 출력하는 UV 성분의 피처 맵(별도로 제1 피처 맵으로 지칭됨)에 각각 적용되는 제어 신호를 출력하고, 각각의 신호 성분의 제2 피처 맵을 출력하여, Y 및 UV 성분의 비트레이트를 할당한다. 그런 다음, 비디오 신호의 비트스트림은 신호 성분의 제2 피처 맵에 기초하여 획득된다. 예를 들어, Y 성분 처리 모듈 및 UV 성분 처리 모듈이 출력하는 피처 맵이 직접 서로 연결되거나, Y 성분 처리 모듈 및 UV 성분 처리 모듈이 출력하는 피처 맵이 직접 합산되어 인코더가 최종 출력하는 피처 맵을 형성하고, 엔트로피 인코딩은 최종 출력된 피처 맵에 대해 수행된다. 선택사항으로서, Y 성분 처리 모듈 및 UV 성분 처리 모듈이 출력하는 피처 맵은 조인트 처리 모듈에 입력되어, 인코더가 최종 출력하는 피처 맵이 획득되고, 엔트로피 인코딩은 최종 출력된 피처 맵에 대해 수행된다.
도 7a에 도시된 아키텍처에서, 도 7b는 인코딩 방법의 실시예이다. 단계 701: 제1 신호 성분의 품질 팩터에 기초하여 제1 신호 성분의 제어 신호를 획득한다. 단계 702: 제2 신호 성분의 품질 팩터에 기초하여 제2 신호 성분의 제어 신호를 획득한다. 예를 들어, 도 7b에 도시된 실시예에서, 제1 신호 성분의 제어 신호는 제1 신호 성분의 품질 팩터에 기초하여 N개의 후보 제1 제어 신호로부터 획득될 수 있으며, 여기서 N은 1보다 큰 정수이다. 제2 신호 성분의 제어 신호는 제2 신호 성분의 품질 팩터에 기초하여 M개의 후보 제2 제어 신호로부터 획득될 수 있으며, 여기서 M은 1보다 큰 정수이다. N과 M은 동일하거나 동일하지 않을 수 있다. 이는 본 출원에서 제한되지 않는다.
단계 703: 제1 신호 성분의 제어 신호를 제1 신호 성분의 제1 피처 맵에 적용하여, 제1 신호 성분의 제2 피처 맵을 획득한다. 단계 704: 제2 신호 성분의 제어 신호를 제2 신호 성분의 제1 피처 맵에 적용하여, 제2 신호 성분의 제2 피처 맵을 획득한다.
예를 들어, 일 실시예로서, 제어 신호는 네트워크에 의해 학습을 통해 생성되고, Y 성분 처리 모듈 및 UV 성분 처리 모듈의 각각에서 네트워크의 적어도 하나의 레이어에 의해 출력되는 피처 맵(제1 피처 맵으로 지칭될 수 있음)에 적용되어, 제2 피처 맵을 출력한다. 예를 들어, 제어 신호는 네트워크의 마지막 레이어에 의해 출력되는 피처 맵에 적용될 수 있다.
단계 705: 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득한다.
제어 신호는 Y 성분 처리 모듈 및 UV 성분 처리 모듈의 각각에서 네트워크의 임의의 레이어에 의해 출력되는 제1 피처 맵에 에 적용될 수 있으므로, 제2 피처 맵이 출력된 후, 신경망에 의한 처리는 제2 피처 맵에서 계속 수행될 수 있다. 이에 상응하여, Y 성분의 제2 피처 맵 및 UV 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득하는 단계는,
제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계; 또는
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
화상 코딩 시스템(700)가 조인트 처리 모듈를 포함하는 경우, 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득하는 단계는,
제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 비디오 신호의 비트스트림을 획득하는 단계;
제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 비디오 신호의 비트스트림을 획득하는 단계; 또는
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
세부 사항은 다음과 같다.
제어 신호가 Y 및 UV 피처 맵의 제어 벡터를 포함하는 경우, 비트레이트 할당 제어 모듈은, 학습을 통해, 제1 신호 성분의 N개의 후보 제1 제어 신호(예를 들어, 제어 벡터 매트릭스 {}) 및 제2 신호 성분의 M개의 후보 제2 제어 신호(예를 들어, 제어 벡터 매트릭스 {})을 생성한다. 사용 중에, 제1 신호 성분의 제어 신호 는 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득되고, 제2 신호 성분의 제어 신호 는 UV 성분의 품질 팩터 인덱스 j에 기초하여 획득된다. N 및 M은 1보다 큰 정수이다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하여, 서로 다른 성분의 피처 맵을 제어한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 Y 성분의 품질 팩터 인덱스 i 및 UV 성분의 품질 팩터 인덱스 j를 포함한다.
제어 신호가 Y 및 UV 피처 맵의 제어 벡터 및 오프셋 벡터를 포함하는 경우, 전술한 방법에서 설명한 바와 같이, 제1 신호 성분의 제어 벡터 및 오프셋 벡터 는 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득되고; 그리고 제2 신호 성분의 제어 벡터 및 오프셋 벡터 는 UV 성분의 품질 팩터 인덱스 j에 기초하여 획득된다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하고 그리고 대응하는 오프셋 벡터를 더해 서로 다른 성분의 피처 맵을 제어한다.
다른 실시예에서, Y 성분의 제어 신호 및 UV 성분의 제어 신호는 2-튜플(tuple)로 사용된다. 비트레이트 할당 제어 모듈은, 학습을 통해, 비디오 신호의 N개의 후보 제어 신호(예를 들어, 제어 벡터 매트릭스 {})를 생성한다. 이 경우에, c는 2이고, 각각의 제어 벡터 는 제1 신호 성분의 제어 벡터 및 제2 신호 성분의 제어 벡터를 모두 포함한다. 그런 다음, 제1 신호 성분 및 제2 신호 성분을 포함하는 제어 신호 가 비디오 신호의 품질 팩터 인덱스 i에 기초하여 획득된다. 오프셋 벡터는 유사한 방식으로 구현된다. 구체적으로, 비디오 신호의 각각의 오프셋 벡터는 제1 신호 성분의 오프셋 벡터 및 제2 신호 성분의 오프셋 벡터를 모두 포함한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 비디오 신호의 품질 팩터 인덱스 i를 포함한다.
또 다른 실시예에서, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터가 완전 연결 네트워크로의 입력으로서 사용되고, 제어 벡터 및 제어 벡터 가 출력된다. 채널 별로 각각의 제어 벡터에 대응하는 피처 맵을 곱하여, 서로 다른 성분의 피처 맵을 제어한다. Y 성분의 품질 팩터 및 UV 성분의 품질 팩터는 완전 연결 네트워크에 입력으로서 사용되고, 오프셋 벡터 및 오프셋 벡터 가 추가로 출력될 수 있다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하고, 그리고 채널 별로 각각의 오프셋 벡터를 대응하는 피처 맵에 더하여, 서로 다른 성분의 피처 맵을 제어한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 포함한다.
디코더 측은 수신된 비트스트림에 엔트로피 디코딩을 수행하여 피처 맵을 획득하고, 피처 맵은 Y 성분의 피처 맵 및 UV 성분의 피처 맵으로 분해된다. 선택사항으로서, 엔트로피 디코딩을 통해 획득된 피처 맵은 먼저 조인트 처리 서브모듈 2에 입력되어, Y 성분의 피처 맵 및 UV 성분의 피처 맵을 획득한다.
Y 성분의 피처 맵 및 UV 성분의 피처 맵은 Y 성분 처리 모듈 2 및 UV 성분 처리 모듈 2에 각각 입력되어, Y 성분의 재구성된 맵 및 UV 성분의 재구성된 맵을 출력한다. 선택사항으로서, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터가 품질 응답 모듈에 입력된다. 모듈은 Y 성분 처리 모듈이 출력하는 Y 성분의 피처 맵 및 UV 성분 처리 모듈이 출력하는 UV 성분의 피처 맵에 각각 적용되는 응답 신호를 출력하여, Y 성분 및 UV 성분의 적응형 품질 응답을 구현한다. 품질 응답은 품질 제어로도 또한 지칭될 수 있으며, 인코더 측에서의 품질 제어와 구별하기 위해 단순히 디코더 측에서는 품질 응답으로 지칭된다.
구체적으로, 예로서 도 7c 에 도시된 바와 같이, 단계 711: 디코더 측은 인코더 측으로부터 비디오 신호의 비트스트림을 획득하고, 비트스트림에 엔트로피 디코딩을 수행하여 비디오 신호의 제1 신호 성분(예를 들어, Y 성분)의 피처 맵 및 비디오 신호의 제2 신호 성분(예를 들어, UV 성분)의 피처 맵을 획득한다.
디코더 측은, 비트스트림으로부터, 제1 신호 성분의 품질 팩터 정보 및 제2 신호 성분의 품질 팩터 정보를 추가로 획득한다. 제1 신호 성분의 품질 팩터 정보는 제1 신호 성분의 품질 팩터 또는 제1 신호 성분의 품질 팩터 인덱스이다. 제2 신호 성분의 품질 팩터 정보는 제2 신호 성분의 품질 팩터 또는 제2 신호 성분의 품질 팩터 인덱스이다. 그런 다음, 제1 신호 성분의 응답 신호는 제1 신호 성분의 품질 팩터 정보에 기초하여 획득되고, 그리고 제2 신호 성분의 응답 신호는 제2 신호 성분의 품질 팩터 정보에 기초하여 획득된다. 제1 신호 성분의 품질 팩터 정보가 제1 신호 성분의 품질 팩터인 경우, 제1 신호 성분의 품질 팩터의 값은 N개 중 하나이다. 대안적으로, 제1 신호 성분의 품질 팩터 정보가 제1 신호 성분의 품질 팩터 인덱스인 경우, 제1 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 N-1 또는 1 내지 N이며, 여기서 N은 1보다 큰 정수이다. 이와 유사하게, 제2 신호 성분의 품질 팩터 정보가 제2 신호 성분의 품질 팩터인 경우, 제2 신호 성분의 품질 팩터의 값은 M개 중 하나이다. 대안적으로, 제2 신호 성분의 품질 팩터 정보가 제2 신호 성분의 품질 팩터 인덱스인 경우, 제2 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 M-1 또는 1 내지 M이며, 여기서 M은 1보다 큰 정수이다.
조인트 피처 맵이 인코더 측으로부터 전송되는 경우, 디코더 측은 조인트 피처 맵에 대해 엔트로피 디코딩을 추가로 수행하고, 신경망에 의한 처리를 통해, 제1 신호 성분의 피처 맵 및 제2 신호 성분의 피처 맵을 획득해야 한다.
단계 712: 제1 신호 성분의 품질 팩터 정보에 기초하여 제1 신호 성분의 응답 신호를 획득한다. 단계 713: 제2 신호 성분의 품질 팩터 정보에 기초하여 제2 신호 성분의 응답 신호를 획득한다.
일 실시예로서, 비트스트림이 Y 성분의 품질 팩터 인덱스 i 및 UV 성분의 품질 팩터 인덱스 j를 포함한다면, 디코더 측은, 학습을 통해, 제1 신호 성분의 응답 신호 매트릭스 {} 및 제2 신호 성분의 응답 신호 매트릭스 {}를 생성해야 하며, 여기서 N 및 M은 1보다 큰 정수이다. 선택사항으로서, 제1 신호 성분의 응답 신호 매트릭스 {}는 인코더 측에서 제1 신호 성분의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되고, 그리고 제2 신호 성분의 응답 신호 매트릭스 {}는 인코더 측에서 제2 신호 성분의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되며, 여기서 N 및 M은 1보다 큰 정수이다. 제1 신호 성분의 응답 신호 는 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득된다. 제2 신호 성분의 응답 신호 는 UV 성분의 품질 팩터 인덱스 j에 기초하여 획득된다.
다른 실시예에서, 비트스트림이 비디오 신호의 품질 팩터 인덱스 i를 포함하면, 디코더 측은, 학습을 통해, 비디오 신호의 응답 신호 매트릭스 {를 생성해야 하며, 여기서 c는 2로서 Y 성분 및 UV 성분을 표현하고, N은 1보다 큰 정수이다. 선택사항으로서, 비디오 신호의 응답 신호 매트릭스 {}는 인코더 측에서 비디오 신호의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되며, 여기서 c는 2로서 Y 성분 및 UV 성분을 표현하고, N은 1보다 큰 정수이다. 제1 신호 성분 및 제2 신호 성분을 포함하는 응답 신호 는 비디오 신호의 품질 팩터 인덱스 i에 기초하여 획득된다.
또 다른 실시예에서, 비트스트림이 제1 신호 성분의 품질 팩터 및 제2 신호 성분의 품질 팩터를 포함한다면, 디코더 측은 Y 성분의 품질 팩터를 완전 연결 네트워크로의 입력으로서 사용하고, Y 성분의 응답 신호를 출력하고; 그리고UV 성분의 품질 팩터를 완전 연결 네트워크로의 입력으로서 사용하고, UV 성분의 응답 신호를 출력한다.
단계 714: 제1 신호 성분의 응답 신호 및 제1 신호 성분의 피처 맵에 기초하여 제1 신호 성분의 재구성된 맵을 획득한다. 단계 715: 제2 신호 성분의 응답 신호 및 제2 신호 성분의 피처 맵에 기초하여 제2 신호 성분의 재구성된 맵을 획득한다.
응답 신호가 응답 벡터를 포함하는 경우, 제1 신호 성분의 응답 신호 및 제1 신호 성분의 피처 맵에 기초하여 제1 신호 성분의 재구성된 맵을 획득하는 단계는,
제1 신호 성분의 응답 벡터에 제1 신호 성분의 피처 맵을 곱함으로써, 제1 신호 성분의 재구성된 맵을 획득하는 단계; 또는 제1 신호 성분의 응답 벡터에 제1 신호 성분의 피처 맵을 곱한 후, 신경망에 의한 처리를 통해, 제1 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
제2 신호 성분의 응답 신호 및 제2 신호 성분의 피처 맵에 기초하여 제2 신호 성분의 재구성된 맵을 획득하는 단계는,
제2 신호 성분의 응답 벡터에 제2 신호 성분의 피처 맵을 곱함으로써, 제2 신호 성분의 재구성된 맵을 획득하는 단계; 또는 제2 신호 성분의 응답 벡터에 제2 신호 성분의 피처 맵을 곱한 후, 신경망에 의한 처리를 통해, 제2 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
응답 신호가 응답 벡터 및 오프셋 벡터를 포함하는 경우, 제1 신호 성분의 응답 신호 및 제1 신호 성분의 피처 맵에 기초하여 제1 신호 성분의 재구성된 맵을 획득하는 단계는,
제1 신호 성분의 응답 벡터에 제1 신호 성분의 피처 맵을 곱한 후, 제1 신호 성분의 오프셋 벡터를 더함으로써, 제1 신호 성분의 재구성된 맵을 획득하는 단계, 또는 제1 신호 성분의 응답 벡터에 제1 신호 성분의 피처 맵을 곱하고, 제1 신호 성분의 오프셋 벡터을 더한 다음, 신경망에 의한 처리를 통해, 제1 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
제2 신호 성분의 응답 신호 및 제2 신호 성분의 피처 맵에 기초하여 제2 신호 성분의 재구성된 맵을 획득하는 단계는,
제2 신호 성분의 응답 벡터에 제2 신호 성분의 피처 맵을 곱한 후, 제2 신호 성분의 오프셋 벡터를 더함으로써, 제2 신호 성분의 재구성된 맵을 획득하는 단계, 또는 제2 신호 성분의 응답 벡터에 제2 신호 성분의 피처 맵을 곱하고, 제2 신호 성분의 오프셋 벡터을 더한 다음, 신경망에 의한 처리를 통해, 제2 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
단계 716: 제1 신호 성분의 재구성된 맵 및 제2 신호 성분의 재구성된 맵에 기초하여 비디오 신호를 재구성한다.
도 7d는 본 발명의 일 실시예에 따른 YUV 비트레이트 할당을 위한 AI 화상 코딩 시스템(710)을 도시한다. AI 화상 코딩 시스템(710)은 비디오 화상 인코더 및 디코더에 적용될 수 있다. 도 7d에 도시된 바와 같이, 화상 코딩 시스템(710)은, 제1 신호 성분 처리 모듈(예를 들어, Y 성분 처리 모듈), 제2 신호 성분 처리 모듈(예를 들어, U 성분 처리 모듈), 제3 신호 성분 처리 모듈(예를 들어, V 성분 처리 모듈), 비트레이트 할당 제어 모듈, 및 인코더 측의 엔트로피 인코딩 모듈, 및 제1 신호 성분 처리 모듈(Y 성분 처리 모듈 2), 제2 신호 성분 처리 모듈(예를 들어, U 성분 처리 모듈 2), 제3 신호 성분 처리 모듈(예를 들어, V 성분 처리 모듈 2), 및 디코더 측의 엔트로피 디코딩 모듈을 포함한다. 화상 코딩 시스템(710)은 선택사항으로 조인트 처리 모듈, 조인트 처리 모듈 2, 및 품질 응답 모듈(비트레이트 할당 제어 모듈 2 또는 비트레이트 제어 모듈 2로도 지칭됨)을 포함한다. 화상 코딩 시스템(710)에서, Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터가 비트레이트 할당 제어 모듈에 입력된다. 모듈은 Y 성분 처리 모듈이 출력하는 Y 성분의 피처 맵, U 성분 처리 모듈이 출력하는 U 성분의 피처 맵, 및 V 성분 처리 모듈이 출력하는 V 성분의 피처 맵(별도로 제1 피처 맵으로 지칭됨)에 적용될 수 있는 제어 신호를 출력하고, 각각의 신호 성분의 제2 피처 맵을 출력하여, Y, U 및 V 성분의 비트레이트를 할당한다. 그런 다음, 비디오 신호의 비트스트림은 신호 성분의 제2 피처 맵에 기초하여 획득된다. 예를 들어, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈이 출력하는 피처 맵이 직접 서로 연결되거나, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈이 출력하는 피처 맵이 직접 합산되어 인코더가 최종 출력하는 피처 맵을 형성하고, 엔트로피 인코딩은 최종 출력된 피처 맵에 대해 수행된다. 선택사항으로서, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈이 출력하는 피처 맵은 조인트 처리 모듈에 입력되어, 인코더가 최종 출력하는 피처 맵이 획득되고, 엔트로피 인코딩은 최종 출력된 피처 맵에 대해 수행된다.
도 7d에 도시된 실시예에서, 제1 신호 성분의 제어 신호는 제1 신호 성분의 품질 팩터(Y 성분)에 기초하여 N개의 후보 제1 제어 신호로부터 획득될 수 있다. 제2 신호 성분의 제어 신호는 제2 신호 성분의 품질 팩터(U 성분)에 기초하여 M개의 후보 제2 제어 신호로부터 획득될 수 있다. 제3 신호 성분의 제어 신호는 제3 신호 성분 (V 성분)의 품질 팩터에 기초하여 L개의 후보 제3 제어 신호로부터 획득될 수 있다. N, M, 및 L은 1보다 큰 정수이며, 같거나 다를 수 있다. 이는 본 출원에서 제한되지 않는다.
도 7d에 도시된 아키텍처에서, 인코딩 및 디코딩 방법은 도 7b 및 도 7c와 유사하다. 세부 사항은 다음과 같다.
예를 들어, 일 실시예로서, 제어 신호는 네트워크에 의해 학습을 통해 생성되고, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 각각에서 네트워크의 적어도 하나의 레이어에 의해 출력되는 피처 맵(제1 피처 맵으로 지칭될 수 있음)에 적용되어, 제2 피처 맵을 출력한다. 예를 들어, 제어 신호는 네트워크의 마지막 레이어에 의해 출력되는 피처 맵에 적용될 수 있다. 제어 신호는 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 각각에서 네트워크의 임의의 레이어에 의해 출력되는 제1 피처 맵에 에 적용될 수 있으므로, 제2 피처 맵이 출력된 후, 신경망에 의한 처리는 제2 피처 맵에서 계속 수행될 수 있다. 이에 상응하여, Y 성분의 제2 피처 맵, U 성분의 제2 피처 맵, 및 V 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득하는 단계는,
제1 신호 성분의 제2 피처 맵, 제2 신호 성분의 제2 피처 맵, 및 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
제1 신호 성분의 제2 피처 맵, 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵, 및 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
제1 신호 성분의 제2 피처 맵, 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵, 및 신경망에 의해 처리되는 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
제1 신호 성분의 제2 피처 맵, 제2 신호 성분의 제2 피처 맵, 및 신경망에 의해 처리되는 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵, 제2 신호 성분의 제2 피처 맵, 및 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵, 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵, 및 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵, 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵, 및 신경망에 의해 처리되는 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계; 또는
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵, 제2 신호 성분의 제2 피처 맵, 및 신경망에 의해 처리되는 제3 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 비디오 신호의 비트스트림을 획득하는 단계;를 포함한다.
화상 코딩 시스템(710)이 조인트 처리 모듈를 포함하는 경우, 획득된 제2 피처 맵, 또는 처리된 피처 맵 및 조합에 조인트 처리를 추가로 수행하여, 조인트 피처 맵을 획득하고, 조인트 피처 맵에 엔트로피 인코딩을 수행하여 비디오 신호의 비트스트림을 획득한다.
세부 사항은 다음과 같다.
제어 신호가 Y, U, 및 V 피처 맵의 제어 벡터를 포함하는 경우, 비트레이트 할당 제어 모듈은, 학습을 통해, 제1 신호 성분의 N개의 후보 제1 제어 신호(예를 들어, 제어 벡터 매트릭스 {}), 제2 신호 성분의 M개의 후보 제2 제어 신호(예를 들어, 제어 벡터 매트릭스 {}), 및 제3 신호 성분의 L개의 후보 제3 제어 신호(예를 들어, 제어 벡터 매트릭스 {})를 생성한다. 제1 신호 성분의 제어 신호 는 사용 중에 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득된다. 제2 신호 성분의 제어 신호 는 U 성분의 품질 팩터 인덱스 j에 기초하여 획득된다. 제3 신호 성분의 제어 신호 는 V 성분의 품질 팩터 인덱스 k에 기초하여 획득된다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하여, 서로 다른 성분의 피처 맵을 제어한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 Y 성분의 품질 팩터 인덱스 i, U 성분의 품질 팩터 인덱스 j, 및 V 성분의 품질 팩터 인덱스 k를 포함한다.
제어 신호가 Y, U, 및 V 피처 맵의 제어 벡터 및 오프셋 벡터를 포함하는 경우, 전술한 방법에서 설명한 바와 같이, 제1 신호 성분의 제어 벡터 및 오프셋 벡터 는 사용 중에 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득되고; 제2 신호 성분의 제어 벡터 및 오프셋 벡터 는 U 성분의 품질 팩터 인덱스 j에 기초하여 획득되고; 그리고 제3 신호 성분의 제어 벡터 및 오프셋 벡터 는 V 성분의 품질 팩터 인덱스 k에 기초하여 획득된다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하고 그리고 대응하는 오프셋 벡터를 더해 서로 다른 성분의 피처 맵을 제어한다.
다른 실시예에서, Y 성분의 제어 신호, U 성분의 제어 신호, 및 V 성분의 제어 신호는 3-튜플(tuple)로 사용된다. 비트레이트 할당 제어 모듈은, 학습을 통해, 비디오 신호의 N개의 후보 제어 신호(예를 들어, 제어 벡터 매트릭스 {})를 생성한다. 이 경우에, c는 3이고, 각각의 제어 벡터 는 제1 신호 성분의 제어 벡터, 제2 신호 성분의 제어 벡터, 및 제3 신호 성분의 제어 벡터를 포함한다. 그런 다음, 제1 신호 성분, 제2 신호 성분, 및 제3 신호 성분을 포함하는 제어 신호 가 비디오 신호의 품질 팩터 인덱스 i에 기초하여 획득된다. 오프셋 벡터는 유사한 방식으로 구현된다. 구체적으로, 비디오 신호의 각각의 오프셋 벡터는 제1 신호 성분의 오프셋 벡터, 제2 신호 성분의 오프셋 벡터, 및 제3 신호 성분의 오프셋 벡터를 포함한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 비디오 신호의 품질 팩터 인덱스 i를 포함한다.
또 다른 실시예에서, Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터가 완전 연결 네트워크로의 입력으로서 사용되고, 제어 벡터 , 제어 벡터 및 제어 벡터 가 출력된다. 채널 별로 각각의 제어 벡터에 대응하는 피처 맵을 곱하여, 서로 다른 성분의 피처 맵을 제어한다. Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터가 완전 연결 네트워크로의 입력으로서 사용되고, 오프셋 벡터 , 오프셋 벡터 , 및 오프셋 벡터 가 추가로 출력될 수 있다. 그런 다음, 채널 별로 대응하는 피처 맵을 각각의 제어 벡터에 곱하고, 그리고 채널 별로 각각의 오프셋 벡터를 대응하는 피처 맵에 더하여, 서로 다른 성분의 피처 맵을 제어한다. 이 경우에, 디코더 측으로 송신되는 비디오 신호의 비트스트림은 Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터를 포함한다.
디코더 측은 수신된 비트스트림에 엔트로피 디코딩을 수행하여 피처 맵을 획득하고, 피처 맵은 Y 성분의 피처 맵, U 성분의 피처 맵, 및 V 성분의 피처 맵으로 분해된다. 선택사항으로서, 엔트로피 디코딩을 통해 획득된 피처 맵은 먼저 조인트 처리 서브모듈 2에 입력되어, Y 성분의 피처 맵, U 성분의 피처 맵, 및 V 성분의 피처 맵을 획득한다.
Y 성분의 피처 맵, U 성분의 피처 맵, 및 V 성분의 피처 맵은 Y 성분 처리 모듈 2, U 성분 처리 모듈 2, 및 V 성분 처리 모듈 2에 각각 입력되어, Y 성분의 재구성된 맵, U 성분의 재구성된 맵, 및 V 성분의 재구성된 맵을 출력한다. 선택사항으로서, Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터는 품질 응답 모듈에 입력된다. 모듈은 Y 성분 처리 모듈이 출력하는 Y 성분의 피처 맵, U 성분 처리 모듈이 출력하는 U 성분의 피처 맵, 및 V 성분 처리 모듈이 출력하는 V 성분의 피처 맵에 각각 적용되는 제어 신호를 출력하여, Y, U, 및 V 성분의 적응형 품질 응답을 구현한다.
응답 신호는 제어 신호와 유사한 방식으로 생성된다. 쉽게 구별되도록, 인코더 측의 신호는 제어 신호로 지칭되고, 디코더 측의 신호는 응답 신호로 지칭된다.
구체적으로, 디코더 측은 인코더 측으로부터 비디오 신호의 비트스트림을 획득하고; 비트스트림에 엔트로피 디코딩을 수행하여 비디오 신호의 제1 신호 성분(예를 들어, Y 성분)의 피처 맵, 비디오 신호의 제2 신호 성분(예를 들어, U 성분)의 피처 맵, 및 비디오 신호의 제2 신호 성분(예를 들어, V 성분)의 피처 맵을 획득하고; 제1 신호 성분의 응답 신호 및 제1 신호 성분의 피처 맵에 기초하여 제1 신호 성분의 재구성된 맵을 획득하고 - 여기서, 제1 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 제2 신호 성분의 응답 신호 및 제2 신호 성분의 피처 맵에 기초하여 제2 신호 성분의 재구성된 맵을 획득하고 - 여기서, 제2 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 제3 신호 성분의 응답 신호 및 제3 신호 성분의 피처 맵에 기초하여 제3 신호 성분의 재구성된 맵을 획득하고 - 여기서, 제3 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 그리고 제1 신호 성분의 재구성된 맵, 제2 신호 성분의 재구성된 맵, 및 제3 신호 성분의 재구성된 맵에 기초하여 비디오 신호를 재구성한다.
디코더 측은, 비트스트림으로부터, 제1 신호 성분의 품질 팩터 정보, 제2 신호 성분의 품질 팩터 정보, 및 제3 신호 성분의 품질 팩터 정보를 추가로 획득한다. 제1 신호 성분의 품질 팩터 정보 및 제2 신호 성분의 품질 팩터 정보는 도 7a에 도시된 실시예의 것과 유사하다. 이와 유사하게, 제3 신호 성분의 품질 팩터 정보는 제3 신호 성분의 품질 팩터 또는 제3 신호 성분의 품질 팩터 인덱스일 수 있다. 그런 다음, 제3 신호 성분의 응답 신호는 제3 신호 성분의 품질 팩터 정보에 기초하여 획득된다. 제3 신호 성분의 품질 팩터 정보가 제3 신호 성분의 품질 팩터인 경우, 제3 신호 성분의 품질 팩터의 값은 L개 중 하나이다. 대안적으로, 제3 신호 성분의 품질 팩터 정보가 제3 신호 성분의 품질 팩터 인덱스인 경우, 제1 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 L-1 또는 1 내지 L이며, 여기서 L은 1보다 큰 정수이다. L, M, 및 N은 동일하거나 동일하지 않을 수 있다. 이는 본 출원에서 제한되지 않는다.
조인트 피처 맵이 인코더 측으로부터 전송되는 경우, 디코더 측은 조인트 피처 맵에 대해 엔트로피 디코딩을 추가로 수행하고, 신경망에 의한 처리를 통해, 제1 신호 성분의 피처 맵, 제2 신호 성분의 피처 맵, 및 제3 신호 성분의 피처 맵을 획득해야 한다.
일 실시예로서, 비트스트림이 Y 성분의 품질 팩터 인덱스 i, U 성분의 품질 팩터 인덱스 j, 및 V 성분의 품질 팩터 인덱스 k를 포함한다면, 디코더 측은, 학습을 통해, 제1 신호 성분의 응답 신호 매트릭스 {}, 제2 신호 성분의 응답 신호 매트릭스 {}, 및 제3 신호 성분의 응답 신호 매트릭스 {}를 생성해야 하며, 여기서 N, M, 및 L은 1보다 큰 정수이다. 선택사항으로서, 제1 신호 성분의 응답 신호 매트릭스 {}는 인코더 측에서 제1 신호 성분의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되고, 제2 신호 성분의 응답 신호 매트릭스 {}는 인코더 측에서 제2 신호 성분의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되고, 그리고 제3 신호 성분의 응답 신호 매트릭스 {}는 인코더 측에서 제3 신호 성분의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되며, 여기서 N, M, 및 L은 1보다 큰 정수이다. 제1 신호 성분의 응답 신호 는 Y 성분의 품질 팩터 인덱스 i에 기초하여 획득된다. 제2 신호 성분의 응답 신호 는 U 성분의 품질 팩터 인덱스 j에 기초하여 획득된다. 제3 신호 성분의 응답 신호 는 V 성분의 품질 팩터 인덱스 k에 기초하여 획득된다.
다른 실시예에서, 비트스트림이 비디오 신호의 품질 팩터 인덱스 i를 포함하면, 디코더 측은, 학습을 통해, 비디오 신호의 응답 신호 매트릭스 {를 생성해야 하며, 여기서 c는 3으로서 Y 성분, U 성분, 및 V 성분을 표현하고, N은 1보다 큰 정수이다. 선택사항으로서, 비디오 신호의 응답 신호 매트릭스 {}는 인코더 측에서 비디오 신호의 제어 신호 매트릭스 {}의 역을 취함으로써 획득되며, 여기서 c는 3으로서 Y 성분, U 성분, 및 V 성분을 표현하고, N은 1보다 큰 정수이다. 제1 신호 성분, 제2 신호 성분, 및 제3 신호 성분을 포함하는 응답 신호 는 비디오 신호의 품질 팩터 인덱스 i에 기초하여 획득된다.
또 다른 실시예에서, 비트스트림이 제1 신호 성분의 품질 팩터, 제2 신호 성분의 품질 팩터, 및 제3 신호 성분의 품질 팩터를 포함한다면, 디코더 측은 Y 성분의 품질 팩터를 완전 연결 네트워크로의 입력으로서 사용하고, Y 성분의 응답 신호를 출력하고; U 성분의 품질 팩터를 완전 연결 네트워크로의 입력으로서 사용하고, U 성분의 응답 신호를 출력하고; 그리고V 성분의 품질 팩터를 완전 연결 네트워크로의 입력으로서 사용하고, V 성분의 응답 신호를 출력한다.
제1 신호 성분 및 제2 신호 성분의 재구성된 맵은 도 7a에 도시된 것과 유사한 방식으로 획득된다. 자세한 내용은 여기서 다시 설명하지 않는다.
일 실시예로서, 응답 신호가 응답 벡터를 포함하는 경우, 제3 신호 성분의 응답 신호 및 제3 신호 성분의 피처 맵에 기초하여 제3 신호 성분의 재구성된 맵을 획득하는 단계는,
제3 신호 성분의 응답 벡터에 제3 신호 성분의 피처 맵을 곱함으로써, 제3 신호 성분의 재구성된 맵을 획득하는 단계, 또는 제3 신호 성분의 응답 벡터에 제3 신호 성분의 피처 맵을 곱한 후, 신경망에 의한 처리를 통해, 제3 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
다른 실시예에서, 응답 신호가 응답 벡터 및 오프셋 벡터를 포함하는 경우, 제3 신호 성분의 응답 신호 및 제3 신호 성분의 피처 맵에 기초하여 제3 신호 성분의 재구성된 맵을 획득하는 단계는,
제3 신호 성분의 응답 벡터에 제3 신호 성분의 피처 맵을 곱한 후, 제3 신호 성분의 오프셋 벡터를 더함으로써, 제3 신호 성분의 재구성된 맵을 획득하는 단계, 또는 제3 신호 성분의 응답 벡터에 제3 신호 성분의 피처 맵을 곱하고, 제3 신호 성분의 오프셋 벡터을 더한 다음, 신경망에 의한 처리를 통해, 제3 신호 성분의 재구성된 맵을 획득하는 단계;를 포함한다.
도 7a의 실시예에서, UV 성분은 조합으로서 처리된다. 도 7d에서, Y, U, 및 V 성분은 개별적으로 처리되거나, 예를 들어, Y 및 UV 성분의 조합, 또는 Y, U, 및 V 성분의 다른 조합으로서 처리될 수 있다.
도 8a 및 도 8b는 함께 특정 실시예를 제공한다. 도 8a는 본 실시예에 따른 기술방안의 전체 블록도이다. Y 성분의 품질 팩터 및 UV 성분의 품질 팩터가 비트레이트 할당 제어 모듈에 입력된다. 모듈은, Y 성분 처리 모듈이 출력하는 Y 성분의 피처 맵 및 UV 성분 처리 모듈이 출력하는 UV 성분의 피처 맵에 각각 적용되는 제어 벡터 및 제어 벡터 을 출력하여, Y 및 UV 성분의 비트레이트를 할당한다.
디코더 측은 Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 품질 응답 모듈에 입력한다. 모듈은, Y 성분의 피처 맵 및 UV 성분의 피처 맵에 각각 적용되는 제어 벡터 및 제어 벡터 를 출력하여, 각각의 Y 및 UV 성분의 품질 게인 응답을 구현한다.
이 실시예에서, 도 8b에 도시된 특정한 예의 이해를 용이하게 하기 위해, Y 성분 처리 모듈, UV 성분 처리 모듈, 조인트 처리 모듈, 확률 추정 모듈, Y 성분 처리 모듈 2, UV 성분 처리 모듈 2, 및 조인트 처리 모듈 2의 특정 네트워크 구조에 부과되는 어떠한 제한도 없다.
단계 1: Y 및 UV 성분의 피처 맵을 획득한다.
Y 및 UV 성분은 Y 성분 처리 모듈 및 UV 성분 처리 모듈로 각각 입력되고, 네트워크는 Y 및 UV 성분의 피처 맵을 출력한다. 도 8b에 도시된 예시에서, Y 성분 처리 모듈은 2개의 콘볼루션 레이어 및 2개의 비선형 레이어를 포함한다. 2개의 컨볼루션 레이어에서 수평 방향과 수직 방향의 다운샘플링 팩터는 2이고, Y 성분 처리 모듈은 Y 성분의 피처 맵을 출력한다. UV 성분 처리 모듈은 2개의 콘볼루션 레이어 및 2개의 비선형 레이어를 포함한다. 제1 컨볼루션 레이어에서는 수평 방향과 수직 방향의 다운샘플링 팩터가 1, 즉 다운샘플링 오퍼레이션을 수행하지 않는다. UV 성분 처리 모듈에서 제2 컨볼루션 레이어에서 수평 방향과 수직 방향의 다운샘플링 팩터는 2이다. UV 성분 처리 모듈은 UV 성분의 피처 맵을 출력한다. 네트워크에 의한 전술한 처리 후, YUV420 데이터 포맷에 대해, Y 성분의 피처 맵의 폭 및 높이는 UV 성분의 피처 맵의 폭 및 높이와 동일하다.
YUV420 데이터 포맷의 처리 방식과 유사하게, YUV444 데이터 포맷과 YUV422 데이터 포맷의 경우, Y 성분의 피처 맵의 폭 및 높이가 UV 성분의 피처 맵과 동일하도록, 컨볼루션 레이어의 수량 및 수평 방향과 수직 방향의 다운샘플링 팩터를 제어한다.
단계 2: Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 비트레이트 할당 모듈에 입력하여 제어 벡터 및 제어 벡터 하고, 채널별로 제어 벡터 및 제어 벡터 에 Y 및 UV 성분의 피처 맵을 곱해, 처리된 Y 및 UV 성분의 피처 맵을 획득하고, 처리된 Y 및 UV 성분의 피처 맵을 함께 추가 또는 연결하고, 추가되거나 연결된 처리된 피처 맵을 조인트 처리 모듈에 입력하고, 인코딩될 피처 맵을 출력한다.
비트레이트 할당 모듈은 제어 매트릭스 및 를 포함하고, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 제어 매트릭스 및 의 인덱스 값으로서 사용하여, 및 의 인덱스로부터 제어 벡터 및 제어 벡터 를 획득한다. 제어 매트릭스 및 는 네트워크에 의해 학습을 통해 획득된다. Y성분의 품질 팩터와 UV성분의 품질 팩터는 임의의 설정값이다.
도 8b에 도시된 예시에서, 제어 매트릭스 는 KxN의 크기를 가지는 2차원 매트릭스이고, 제어 매트릭스 는 LxM의 크기를 가지는 2차원 매트릭스이고, 2개의 매트릭스 내의 각각의 엘리먼트는 네트워크가 학습할 수 있는 파라미터이다. K는 Y 성분의 피처 맵의 수량을 나타내고, L은 UV 성분의 피처 맵의 수량을 나타내고, N은 Y 성분의 품질 팩터의 후보 값의 N개 그룹을 나타내고, 그리고 M은 UV 성분의 품질 팩터의 후보 값의 M개 그룹을 나타낸다. 예를 들어, N이 4이고 M이 4이면, Y 성분의 품질 팩터의 후보 값은 {0.5, 0.7, 0.8, 1.0}이고, UV 성분의 품질 팩터의 후보 값은 {0.15, 0.2, 0.25, 0.3}이다.
단계 3: 인코딩될 피처 맵을 엔트로피 인코딩 모듈에 입력하고, 비트스트림을 출력한다. 도 8b에 도시된 예시에서, 인코딩될 피처 맵은 인코딩된 피처 맵 하이퍼 엔트로피 모듈에 입력되어, 인코딩될 심볼의 확률 분포를 출력한다. 인코딩될 심볼의 확률 분포에 기초하여 산술 인코딩이 수행되고, 비트스트림이 출력된다. 그리고, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터에 관한 정보가 비트스트림에 기록된다.
Y 성분의 품질 팩터 및 UV 성분의 품질 팩터에 관한 정보는 다음 세 가지 방식으로 표현되어 비트스트림에 기록될 수 있다.
방식 1: Y 성분의 품질 팩터의 후보 값 및 후보 값의 수량, 및 UV 성분의 품질 팩터의 후보 값 및 후보 값의 수량은 미리 정의되며, Y 성분의 품질 팩터 및 UV 성분의 품질 팩터의 각각의 후보 리스트의 인덱스 번호는 디코더 측으로 전송된다. 예를 들어, N이 4이고 M이 3이면, Y 성분의 품질 팩터의 후보 값은 {0.5, 0.7, 0.8, 1.0}이고, UV 성분의 품질 팩터의 후보 값은 {0.15, 0.2, 0.25}이다. Y 성분의 인덱스 번호 i 및 UV 성분의 인덱스 번호 j는 비트스트림에 기록되며, i 및 j의 값은 0, 1, 2, 및 3이다. i이 1인 경우, 이는 Y 성분의 품질 팩터가 0.7임을 나타내고, j이 0인 경우, 이는 UV 성분의 품질 팩터가 0.15임을 나타낸다.
방식 2: Y 성분의 품질 팩터 및 UV 성분의 품질 팩터이 결합된 후의 후보 값 및 후보 값의 수량은 미리 정의된다. 예를 들어, Y 및 UV 성분의 품질 팩터의 조합 값의 후보 값의 수량은 6이고, 후보 리스트는 {(0.5,0.25), (0.7,0.15), (0.7,0.25), (0.8,0.1), (0.8,0.2), 및 (1.0,0.2)}이다. 인덱스 번호 i는 비트스트림에 기록되며, i의 값은 0, 1, 2, 3, 4 및 5이다. i이 1인 경우, 이는 Y 및 UV 성분의 품질 팩터가 (0.7,0.15)임을 나타낸다.
방식 3: Y 성분의 품질 팩터 및 UV 성분의 품질 팩터가 비트스트림에 직접 기록되며 디코더 측으로 전송된다. 예를 들어, (1.0,0.2)가 비트스트림에 기록된다.
단계 4: 비트스트림을 엔트로피 디코딩 모듈에 입력하고, 피처 맵에 산술 디코딩을 수행하여, Y 성분의 품질 팩터, 및 UV 성분의 품질 팩터를 획득한다. 도 8b에 도시된 예시에서, 하이퍼 엔트로피 모듈에 의해 추정되는 확률 분포에 기초하여 산술 디코딩이 수행된다.
단계 5: 디코딩을 통해 피처 맵을 획득하고, 피처 맵을 조인트 처리 모듈 2에 입력하고, 채널의 수량이 M인 피처 맵을 출력하고, 그리고 채널의 수량이 M인 피처 맵을 채널의 수량이 K인 Y 성분의 피처 맵 및 채널의 수량이 L인 UV 성분의 피처 맵으로 분할한다. 이 분할 방식에서, K ≤ M 및 L ≤ M이다. K = L = M인 경우, 이는 Y 성분의 피처 맵은 UV 성분의 피처 맵과 동일하고, 둘 다 모두 M개의 채널을 가지는 피처 맵임을 나타낸다. 도 8b에 도시된 예시에서, 조인트 처리 모듈 2은 2개의 콘볼루션 레이어 및 하나의 비선형 레이어를 포함한다.
단계 6: Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 품질 응답 모듈에 입력하여 응답 벡터 및 응답 벡터 를 획득하고, 채널별로 응답 벡터 및 응답 벡터 에 Y 및 UV 성분의 피처 맵을 곱하여 품질 이득 후 Y 및 UV 성분의 피처 캡을 획득한다. 품질 이득 후의 Y 및 UV 성분의 피처 맵은 Y 성분 처리 모듈 2 및 UV 성분 처리 모듈 2에 각각 입력되어 Y 성분의 재구성된 맵 및 UV 성분의 재구성된 맵을 출력한다.
품질 응답 모듈은 응답 매트릭스 및 를 포함하며, 디코딩을 통해 획득되는 Y 성분의 품질 팩터 및 UV 성분의 품질 팩터를 응답 매트릭스 및 의 인덱스 값으로서 사용하여, 및 의 인덱스로부터 응답 벡터 및 응답 벡터 를 획득한다.
응답 매트릭스 및 는 네트워크에 의해 학습을 통해 획득된다. 도 8b에 도시된 예시에서, 응답 매트릭스 는 KxN의 크기를 가지는 2차원 매트릭스이고, 응답 매트릭스 는 LxM의 크기를 가지는 2차원 매트릭스이고, 2개의 매트릭스 내의 각각의 엘리먼트는 네트워크가 학습할 수 있는 파라미터이다. K는 Y 성분의 피처 맵의 수량을 나타내고, L은 UV 성분의 피처 맵의 수량을 나타내고, N은 Y 성분의 품질 팩터의 후보 값의 N개 그룹을 나타내고, 그리고 M은 UV 성분의 품질 팩터의 후보 값의 M개 그룹을 나타낸다.
선택사항으로서, 응답 매트릭스 및 는 각각 제어 매트릭스 및 의 역을 취함으로써 획득된다.
이 실시예에서, 단계 1 내지 단계 7에서 네트워크 모듈 및 제어 매트릭스 파라미터에 대해 트레이닝 및 학습이 수행된다. 구체적으로, 본 출원에서, 적응형 모멘트 추정(Adaptive Moment Estimation, Adam) 최적화 알고리즘이 신경망에 대해 최적화 트레이닝을 수행하는데 사용되고, ImgeNet 데이터세트는 트레이닝 데이터 세트이다. 이 네트워크 구조는 화상 코딩을 지향하기 때문에, 트레이닝 최적화의 목적은 비트 레이트-왜곡 결합 손실 함수를 최소화하는 것이며, 함수 표현은 다음과 같다.
는 확률 추정기에 의해 추정되는 확률 분포를 나타내고, 는 Y 성분의 원래의 값이고, 는 Y 성분의 재구성된 맵이고, 는 U 성분의 원래의 값이고, 는 U 성분의 재구성된 맵이고, 는 V 성분의 원래의 값이고, V 성분의 재구성된 맵이고, 는 Y 성분의 품질 팩터이고, 는 U 성분의 품질 팩터이고, 그리고 는 V 성분의 품질 팩터이다. 는 상수이며, 타깃 비트레이트와 매칭된다.
예를 들어, N은 4이고, Y, U, 및 V 성분(, , )의 품질 팩터의 후보 값은 {(0.5,0.25,0.25), (0.7,0.4,0.4), (0.8,0.1,0.1), 및 (1.0,0.2,0.2)}이다. 네트워크에서 트레이닝하는 동안, 가중치 그룹의 인덱스 번호 i는 {0,1,2,3}로부터 무작위로 선택된다. 가중치 그룹 (, , ), 학습 대상 제어 벡터 , 및 학습 대상 제어 벡터 는 i에 기초하여 결정되고, 트레이닝 및 학습이 트레이닝 목표에 기초하여 네트워크 모듈 및 제어 매트릭스 파라미터에 대해 수행된다.
조인트 처리 모듈 및/또는 조인트 처리 모듈 2 및/또는 품질 응답 모듈이 이 실시예에서 제공되는 코덱으로부터 제거되는 경우, 이는 본 출원의 다른 실시예에 여전히 적용 가능하다.
본 실시예는 Y, U 및 V 성분이 Y 및 UV 성분으로 결합되는 기술적 해결 수단을 제공한다. Y, U 및 V 성분의 다른 조합, 예를 들어 {YU, V} 및 {YV, U}의 경우, 본 출원의 해결 수단 아이디어가 여전히 적용 가능하다.
이와 유사하게, UV 성분은 처리를 위해 U 성분과 V 성분으로 더 나뉘며, 본 출원의 해결 수단 아이디어는 여전히 적용 가능하다.
기존의 엔드-투-엔드 화상 코딩에서는, 특정 네트워크의 학습 및 최적화 과정에서, Y, U, 및 V 성분의 고정된 가중치에 기초하여 최적화를 수행하였다. 따라서, Y, U, 및 V 성분의 비트레이트 비율은 고정되어 있다. 화상마다 컬러 특성이 다르기 때문에, 고정된 비트레이트 할당은 일부 비디오 화상의 인코딩 성능 저하를 유발한다. 복수의 모델은 Y, U, 및 V 성분의 서로 다른 가중치의 복수의 그룹에 기초하여 단순 트레이닝되어, Y, U, 및 V 성분의 비트레이트의 서로 다른 할당을 구현할 수 있다. 그러나, 이는 모델의 수를 증가시키고, 복수의 모델을 트레이닝시키는데 많은 컴퓨팅 리소스와 시간이 소모된다. 기존 기술과 비교하여, 본 출원에서, 제어 벡터는 Y, U, 및 V 성분의 유도된 가중치에 기초하여 네트워크에 의해 학습을 통해 획득되고, 왜곡 제어가 Y 및 UV 성분의 피처 맵에 대해 제어 벡터에 기초하여 서로 다른 정도로 수행되어, Y 및 UV 성분의 비트레이트 할당을 구현한다. 따라서, 본 출원은 다음 장점을 가진다.
(1) 서로 다른 컬러 특성을 가지는 화상에 적응하기 위해 Y, U, 및 V 성분 사이의 비트레이트 할당을 지원한다.
(2) 다수의 모델을 트레이닝하는데 필요한 시간 및 모델의 새로운 네트워크 파라미터의 양이 감소된다.
도 9a 및 도 9b는 함께 특정 실시예를 제공한다. 이 실시예에서, 도 9a 및 도 9b에 도시된 바와 같이, U 성분 처리 모듈 및 V 성분 처리 모듈은 각각 U 성분 데이터 및 V 성분 데이터를 처리하는데 사용된다. 이 실시예에서, Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터가 비트레이트 할당 제어 모듈로의 입력으로서 사용되고, 제어 신호가 출력되어, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 임의의 레이어에서 피처 맵을 처리하여, Y, U, 및 V 성분 사이의 비트레이트 할당을 구현한다. 디코더 측은 Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터를 품질 응답 모듈로의 입력으로서 사용하고, 제어 신호가 출력되어, Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 임의의 레이어에서 피처 맵에 대해 품질 게인 응답을 수행한다. 본 출원에서, 도 9b에 도시된 특정한 예의 이해를 용이하게 하기 위해, 비트레이트 할당 제어 모듈, 품질 응답 모듈, Y 성분 처리 모듈, U 성분 처리 모듈, 조인트 처리 모듈, Y 성분 처리 모듈 2, U 성분 처리 모듈 2, V 성분 처리 모듈 2, 조인트 처리 모듈 2, 엔트로피 인코딩 모듈, 및 엔트로피 디코딩 모듈의 특정 네트워크 구조에 부과되는 어떠한 제한도 없다.
도 9b에 도시된 예시에서, 단계 1: Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터를 비트레이트 할당 제어 모듈에 입력한다. 모듈은 완전 연결 네트워크를 포함하고, 제어 신호(제어 벡터 및 오프셋 벡터)를 출력한다.
단계 2: 인코딩될 Y, U, 및 V 신호를 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈에 각각 입력한다. 예를 들어, Y 성분 처리 모듈에서, 피처 맵은 각각의 콘볼루션 레이어에서 채널 별로 피처 맵에 대응하는 제어 벡터로 곱한 다음, 피처 맵에 대응하는 오프셋 벡터가 채널별로 더해진다. 모듈의 비선형 레이어에서 출력되는 피처 맵에, 대응하는 제어 벡터를 채널 별로 곱한다. Y 컴포넌트 처리 모듈의 네트워크의 각 레이어에서 출력되는 피처 맵은 비트레이트 제어 모듈이 출력하는 제어 신호에 기초하여 처리된다. U 및 V 성분의 처리는 Y 성분의 처리와 유사하다.
도 9b는 특정 네트워크 구조의 개략도이다. Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 네트워크 구조는 제1 콘볼루션 레이어를 제외하면 동일하다. YUV422 포맷의 경우, Y 성분 처리 모듈의 제1 컨볼루션 레이어에서 수평 방향과 수직 방향의 다운샘플링 팩터는 2이다. U 컴포넌트 처리 모듈과 V 컴포넌트 처리 모듈의 제1 컨볼루션 레이어에서 수평 방향의 다운샘플링 팩터는 1, 즉 다운샘플링 오퍼레이션을 수행하지 않는다. 다운샘플링 팩터는 수직 방향으로 2이다. YUV420 포맷의 경우, Y 성분 처리 모듈의 제1 컨볼루션 레이어에서 수평 방향과 수직 방향의 다운샘플링 팩터는 2이다. U 컴포넌트 처리 모듈과 V 컴포넌트 처리 모듈의 제1 컨볼루션 레이어에서 수평 방향과 수직 방향의 다운샘플링 팩터는 1, 즉 다운샘플링 오퍼레이션을 수행하지 않는다.
단계 3: Y 성분의 피처 맵, U 성분의 피처 맵, 및 V 성분의 피처 맵을 연결(concatenate) 및 스티칭(stitch)하여, 인코딩될 피처 맵을 형성하고, 인코딩될 피처 맵을 엔트로피 인코딩 모듈에 입력하고, 그리고 비트스트림을 출력한다. 도 9b에 도시된 예시에서, 인코딩될 피처 맵은 인코딩된 피처 맵 하이퍼 엔트로피 모듈에 입력되어, 인코딩될 심볼의 확률 분포를 출력한다. 인코딩될 심볼의 확률 분포에 기초하여 산술 인코딩이 수행되고, 비트스트림이 출력된다. 그리고, Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터에 관한 정보가 비트스트림에 기록된다.
단계 4: 비트스트림을 엔트로피 디코딩 모듈에 입력하고, 산술 디코딩을 수행하여 Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터에 관한 정보 및 피처 맵을 획득한다. 도 9b에 도시된 예시에서, 하이퍼 엔트로피 모듈에 의해 추정되는 확률 분포에 기초하여 산술 디코딩이 수행된다.
단계 6: 디코딩을 통해 획득되는 피처 맵을 조인트 처리 모듈 2에 입력하고, 피처 맵을 출력한다.
단계 7: Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터를 품질 응답 모듈에 입력하여 응답 벡터 , 응답 벡터 , 및 응답 벡터 을 획득한다. 채널별로 응답 벡터 에 Y 성분 처리 모듈 2의 제2 콘볼루션 레이어에서 출력되는 피처 맵으로 곱하여, 품질 이득 후 피처 맵을 획득한다. U 및 V 성분에 대한 처리 프로세스는 유사하다. Y 성분 처리 모듈 2, U 성분 처리 모듈 2, 및 V 성분 처리 모듈 2는 Y, U, 및 V 성분의 재구성된 맵을 출력한다.
Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터는 품질 응답 모듈에 입력된다. 모듈은 완전 연결 네트워크를 포함하고, 응답 벡터 , 응답 벡터 , 및 응답 벡터 를 출력한다.
선택사항으로서, 실시예 1의 응답 벡터 획득 방식과 유사하게, 품질 응답 모듈은 응답 매트릭스 , , 및 를 포함하고, 디코딩을 통해 획득되는 Y 성분의 품질 팩터, U 성분의 품질 팩터, 및 V 성분의 품질 팩터를 응답 매트릭스 , , 및 의 인덱스 값으로서 사용하여, , , 및 의 인덱스로부터 응답 벡터 , 응답 벡터 , 및 응답 벡터 를 획득한다. 응답 매트릭스 , , 및 는 네트워크에 의해 학습을 통해 획득된다.
네트워크의 트레이닝 과정은 도 8a 및 도 8b의 실시예와 유사하고, 자세한 내용은 다시 설명하지 않는다.
이 실시예에서, 제어 신호는 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 네트워크의 각각의 레이어에서 출력되는 피처 맵에 적용된다. 선택사항으로서, 제어 신호는 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 네트워크가 출력하는 일부 피처 맵에만 적용된다.
이 실시예에서, 응답 신호는 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 네트워크의 중간 레이어에서 출력되는 피처 맵에만 적용된다. 선택사항으로서, 제어 신호는 Y 성분 처리 모듈, U 성분 처리 모듈, 및 V 성분 처리 모듈의 네트워크의 임의의 하나 이상의 레이어에서 출력되는 피처 맵에 적용된다.
조인트 처리 모듈 2 및/또는 품질 응답 모듈이 이 실시예에서 제공되는 코덱으로부터 제거되는 경우, 본 출원의 기술은 여전히 적용 가능하다.
조인트 처리 모듈이 이 실시예에서 제공되는 코덱에 추가되는 경우, 본 출원의 기술은 여전히 적용 가능하다.
본 실시예는, Y, U, 및 V 성분이 3개의 성분으로서 별도로 처리되는 기술적 해결 수단을 제공한다. 예를 들어 {YU, V}, {YV, U} 및 {Y, UV}와 같은, Y, U 및 V 성분의 다른 조합의 경우, 본 출원 기술의 해결 수단 아이디어가 여전히 적용 가능하다.
전술한 실시예의 설명에 따르면, 본 출원에서, 본 발명에서, Y, U, 및 V 성분의 품질 팩터가 비트레이트 할당 제어 모듈에 입력되고, 모듈이 출력하는 제어 신호는 서로 다른 성분의 피처 맵에 개별적으로 적용되어, 서로 다른 콤포넌트의 비트레이트 할당을 구현한다. 서로 다른 성분은 3개의 성분, Y, U, 및 V 성분을 지칭하거나, 2개의 성분, Y 및 UV 성분, 또는 Y, U, 및 V 성분의 다른 조합을 지칭할 수 있다.
선택사항으로서, 제어 신호는 제어 벡터 를 나타내고, 각각의 서로 다른 성분의 품질 팩터에 기초하여 생성된다. 동일한 성분의 가중치 매트릭스 {}는 네트워크에 의해 학습을 통해 획득되며, 여기서 c는 2 또는 3이고 서로 다른 성분의 수량을 나타내며, N은 품질 팩터의 후보 값의 수량이다. 사용 중에, 각각의 서로 다른 성분에 대응하는 제어 벡터 가 각각의 서로 다른 성분의 품질 팩터 인덱스에 기초하여 획득된다.
선택사항으로서, 제어 신호는 제어 벡터 및 오프셋 벡터 를 나타낸다. 각각의 서로 다른 성분의 품질 팩터는 완전 연결 네트워크에 입력으로서 사용되고, 서로 다른 성분에 대응하는 제어 벡터 및 오프셋 벡터 가 출력된다.
따라서, 본 출원에서 제공되는 실시예는:
(1) 서로 다른 컬러 특성을 가지는 화상에 적응하고 제어 벡터에 기초하여 Y, U 및 V 성분 사이의 비트레이트 할당을 지원한다.
(2) 다수의 모델을 트레이닝하는데 필요한 시간과 모델의 새로운 네트워크 파라미터의 양을 줄인다.
도 10은 본 출원의 실시예에 따른 인코딩 장치(1000)의 구조의 개략도이다. 인코딩 장치는 비디오 인코더(20)에 대응할 수 있다. 인코딩 장치(1000)는 제1 제어 모듈(1001), 제1 제어 모듈(1002), 및 인코딩 모듈(1003)을 포함한다. 제1 제어 모듈(1001)은 비디오 신호의 제1 신호 성분의 제어 신호를 제1 신호 성분의 제1 피처 맵에 적용하여, 제1 신호 성분의 제2 피처 맵을 획득하도록 구성되며, 여기서, 제1 신호 성분의 제어 신호는 학습을 통해 획득된다. 제2 제어 모듈(1002)은 비디오 신호의 제2 신호 성분의 제어 신호를 제2 신호 성분의 제1 피처 맵에 적용하여, 제2 신호 성분의 제2 피처 맵을 획득하도록 구성되며, 여기서, 제2 신호 성분의 제어 신호는 학습을 통해 획득된다. 인코딩 모듈(1003)은 제1 신호 성분의 제2 피처 맵 및 제2 신호 성분의 제2 피처 맵에 기초하여 비디오 신호의 비트스트림을 획득하도록 구성된다. 인코딩 장치(1000)는 전술한 실시예에서 기술된 비트레이트 할당 제어 모듈을 더 포함할 수 있다. 인코딩 장치(1000)는 전술한 실시예에서 기술되는 인코딩 방법을 구현하도록 구성된다. 상세한 기능에 관하여는, 전술한 실시예의 설명을 참조하며, 자세한 내용은 여기서 다시 설명하지 않는다.
도 11은 본 출원의 실시예에 따른 디코딩 장치(1100)의 구조의 개략도이다. 디코딩 장치(1100)는 비디오 디코더(30)에 대응할 수 있다. 디코딩 장치(1100)는 디코딩 모듈(1101), 제1 제어 모듈(1102), 제1 제어 모듈(1103), 및 재구성 모듈(1104)을 포함한다. 디코딩 모듈(1101)은, 비디오 신호의 비트스트림을 획득하고, 비트스트림에 엔트로피 디코딩을 수행하여, 비디오 신호의 제1 신호 성분의 피처 맵 및 비디오 신호의 제2 신호 성분의 피처 맵을 획득하도록 구성된다. 제1 제어 모듈(1102)은 제1 신호 성분의 응답 신호 및 제1 신호 성분의 피처 맵에 기초하여 제1 신호 성분의 재구성된 맵을 획득하도록 구성되며, 여기서, 제1 신호 성분의 응답 신호는 학습을 통해 획득된다. 제2 제어 모듈(1103)은 제2 신호 성분의 응답 신호 및 제2 신호 성분의 피처 맵에 기초하여 제2 신호 성분의 재구성된 맵을 획득하도록 구성되며, 여기서, 제2 신호 성분의 응답 신호는 학습을 통해 획득된다. 재구성 모듈(1104)은 제1 신호 성분의 재구성된 맵 및 제2 신호 성분의 재구성된 맵에 기초하여 비디오 신호를 재구성하도록 구성된다. 디코딩 장치(1100)는 전술한 실시예에서 기술된 품질 응답 모듈을 더 포함할 수 있다. 디코딩 장치(1100)는 전술한 실시예에서 기술된 디코딩 방법을 구현하도록 구성된다. 상세한 기능에 관하여는, 전술한 실시예의 설명을 참조하며, 자세한 내용은 여기서 다시 설명하지 않는다.
통상의 기술자는 본 명세서에 개시되고 설명되는 다양한 예시적인 논리 블록, 모듈, 및 알고리즘 단계를 참조하여 설명되는 기능이 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합에 의해 구현될 수 있음을 이해할 수 있다. 소프트웨어에 의해 구현되는 경우, 예시적인 논리 블록, 모듈, 및 단계를 참조하여 설명된 기능은 하나 이상의 명령 또는 코드로 컴퓨터-판독 가능한 매체에 저장되거나 전송될 수 있으며 하드웨어-기반 처리 유닛에 의해 실행될 수 있다. 컴퓨터-판독 가능한 매체는, 데이터 저장 매체와 같은 유체물의 매체에 대응하는 컴퓨터-판독 가능한 저장 매체를 포함하거나, 한 곳에서 다른 곳으로 컴퓨터 프로그램의 전송(예를 들어, 통신 프로토콜에 따라)을 용이하게 하는 임의의 통신 매체를 포함할 수 있다. 이러한 방식으로, 컴퓨터-판독 가능한 매체는 일반적으로 (1) 유체물의 컴퓨터-판독 가능한 저장 매체 또는 (2) 신호 또는 캐리어와 같은 통신 매체에 대응할 수 있다. 데이터 저장 매체는 본 출원에 기술된 기술의 구현을 위한 명령, 코드 및/또는 데이터 구조를 검색(retrieve)하기 위해 하나 이상의 컴퓨터 또는 하나 이상의 프로세서에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있다. 컴퓨터 프로그램 제품은 컴퓨터-판독 가능한 매체를 포함할 수 있다.
제한 없는 예시로서, 이러한 컴퓨터-판독 가능한 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 장치, 자기 디스크 저장 장치 또는 다른 자기 저장 장치, 플래시 메모리, 또는 필요한 프로그램 코드를 명령 또는 데이터 구조의 형태로 저장할 수 있고 컴퓨터가 액세스할 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 모든 연결이 컴퓨터-판독 가능한 매체로 지칭된다. 예를 들어, 동축 케이블, 광섬유 케이블, 연선(twisted pair), 디지털 가입자 회선(DSL), 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술을 사용하여 웹 사이트, 서버, 또는 다른 원격 소스로부터 명령이 전송되는 경우, 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로파와 같은 무선 기술이 매체의 정의에 포함된다. 그러나, 컴퓨터-판독 가능한 저장 매체 및 데이터 저장 매체는 연결, 캐리어, 신호, 또는 다른 일시적인 매체를 포함하지 않고, 비일시적 유체물의 저장 매체를 의미함을 이해해야 한다. 본 명세서에서 사용되는 디스크(disk) 및 디스크(disc)는, 컴팩트 디스크(CD), 레이저 디스크, 광학 디스크, DVD(digital versatile disc), 및 블루-레이 디스크를 포함한다. 디스크(disk)는 일반적으로 데이터를 자기적으로 재생하고, 디스크(disc)는 레이저를 사용하여 광학적으로 데이터를 재생한다. 위의 조합도 컴퓨터-판독 가능한 매체의 범위 내에 포함되어야 한다.
이상의 디지털 신호 처리기(digital signal processor; DSP), 범용 마이크로 프로세서, 주문형 집적 회로(application specific integrated circuits; ASIC), 필드 프로그래밍 가능한 로직 어레이(field programmable logic array; FPGA) 또는 다른 동등한 집적 회로 또는 이산 논리 회로와 같은 하나 이상의 프로세서에 의해 실행될 수 있다. 따라서, 본 명세서에서 사용되는 "프로세서"라는 용어는 전술한 구조 또는 본 명세서에서 설명하는 기술의 구현에 적용될 수 있는 다른 구조를 지칭할 수 있다. 또한, 일부 측면에서, 본 명세서에서 설명된 예시적인 논리 블록, 모듈, 및 단계를 참조하여 설명된 기능은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈 내에 제공될 수 있거나, 조합된 코덱에 병합될 수 있다. 또한, 기술은 하나 이상의 회로 또는 논리 요소에서 완전히 구현될 수 있다.
본 출원의 기술은 무선 핸드셋, 집적 회로(IC) 또는 IC 세트(예를 들어, 칩셋)를 포함하는 다양한 장치 또는 디바이스에서 구현될 수 있다. 개시된 기술을 수행하도록 구성되는 장치의 기능적 측면을 강조하기 위해 다양한 구성 요소, 모듈, 또는 유닛이 본 출원에서 설명되지만, 반드시 상이한 하드웨어 유닛에 의한 구현을 필요로 하는 것은 아니다. 사실, 위에서 설명된 바와 같이, 다양한 유닛이 적절한 소프트웨어 및/또는 펌웨어와 조합하여 코덱 하드웨어 유닛에 결합되거나, (위에서 설명된 하나 이상의 프로세서를 포함하는) 상호 동작할 수 있는 하드웨어 유닛의 집합에 의해 제공될 수 있다.
전술한 설명은 본 출원의 특정한 구현예일 뿐이며, 본 출원의 보호 범위를 제한하려는 의도가 아니다. 본 출원에 개시된 기술적 범위 내에서 통상의 기술자에 의해 용이하게 파악되는 임의의 변형 또는 대체는 본 출원의 보호 범위 내에 속한다. 따라서, 본 출원의 보호 범위는 청구범위의 보호 범위에 따른다.
Claims (41)
- 비디오 신호 인코딩 방법으로서,
비디오 신호의 제1 신호 성분의 제어 신호를 상기 제1 신호 성분의 제1 피처 맵에 적용하여, 상기 제1 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 상기 제1 신호 성분의 제어 신호는 학습을 통해 획득됨 -;
상기 비디오 신호의 제2 신호 성분의 제어 신호를 상기 제2 신호 성분의 제1 피처 맵에 적용하여, 상기 제2 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 상기 제2 신호 성분의 제어 신호는 학습을 통해 획득됨 -; 및
상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제1항에 있어서,
상기 제1 신호 성분의 품질 팩터에 기초하여 N개의 후보 제1 제어 신호로부터 상기 제1 신호 성분의 제어 신호를 획득하는 단계 - 여기서, N은 1보다 큰 정수임 -; 및
상기 제2 신호 성분의 품질 팩터에 기초하여 M개의 후보 제2 제어 신호로부터 상기 제2 신호 성분의 제어 신호를 획득하는 단계 여기서, M은 1보다 큰 정수임 -;를 더 포함하는, 비디오 신호 인코딩 방법. - 제1항 또는 제2항에 있어서,
상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계는,
상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 상기 비디오 신호의 비트스트림을 획득하는 단계;
상기 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 상기 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 상기 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 상기 비디오 신호의 비트스트림을 획득하는 단계; 또는
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 엔트로피 인코딩을 수행하여, 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제1항 또는 제2항에 있어서,
상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 기초하여 상기 비디오 신호의 비트스트림을 획득하는 단계는,
상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계;
상기 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계;
신경망에 의해 처리되는 상기 제1 신호 성분의 제2 피처 맵 및 상기 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계; 또는
신경망에 의해 처리되는 제1 신호 성분의 제2 피처 맵 및 신경망에 의해 처리되는 제2 신호 성분의 제2 피처 맵에 대해 조인트 처리를 수행하여, 조인트 피처 맵을 획득하고, 그리고 상기 조인트 피처 맵에 대해 엔트로피 인코딩을 수행하여 상기 비디오 신호의 비트스트림을 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 제1 신호 성분은 Y 성분이고, 그리고 상기 제2 신호 성분은 UV 성분, U 성분, 또는 V 성분인, 비디오 신호 인코딩 방법. - 제5항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우,
학습을 통해, 상기 Y 성분의 제어 신호 매트릭스 {} 및 상기 UV 성분의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, N 및 M은 1보다 큰 정수임 -;
상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 제어 신호 를 획득하는 단계; 및
상기 UV 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 제어 신호 를 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제5항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우,
학습을 통해, 상기 비디오 신호의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 2로서 상기 Y 성분 및 상기 UV 성분을 표현하고, N은 1보다 큰 정수임 -; 및
상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분 및 상기 제2 신호 성분을 포함하는 제어 신호 를 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제6항 또는 제7항에 있어서,
상기 비디오 신호의 비트스트림 비트스트림은 상기 Y 성분의 품질 팩터 인덱스 i 및 상기 UV 성분의 품질 팩터 인덱스 j를 포함하거나, 상기 비디오 신호의 품질 팩터 인덱스 i를 포함하는, 비디오 신호 인코딩 방법. - 제5항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우,
상기 Y 성분의 품질 팩터를 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 제어 신호를 출력하는 단계; 및
상기 UV 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 UV 성분의 제어 신호를 출력하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제9항에 있어서,
상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터 및 상기 UV 성분의 품질 팩터를 포함하는, 비디오 신호 인코딩 방법. - 제5항에 있어서,
상기 제2 신호 성분이 상기 U 성분 또는 상기 V 성분인 경우,
상기 비디오 신호의 제3 신호 성분의 제어 신호를 상기 제3 신호 성분의 제1 피처 맵에 적용하여, 상기 제3 신호 성분의 제2 피처 맵을 획득하는 단계 - 여기서, 상기 제3 신호 성분의 제어 신호는 학습을 통해 획득되고, 그리고 상기 제2 신호 성분이 상기 U 성분인 경우, 상기 제3 신호 성분은 상기 V 성분이거나, 또는 상기 제2 신호 성분이 상기 V 성분인 경우, 상기 제3 신호 성분은 상기 U 성분임 -;를 더 포함하는, 비디오 신호 인코딩 방법. - 제11항에 있어서,
트레이닝을 통해, 상기 Y 성분의 제어 신호 매트릭스 {}, 상기 U 성분의 제어 신호 매트릭스 {}, 및 상기 V 성분의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, N, M, 및 L은 1보다 큰 정수임 -;
상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 제어 신호 를 획득하는 단계;
상기 U 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 제어 신호 를 획득하는 단계; 및
상기 V 성분의 품질 팩터 인덱스 k에 기초하여 상기 제3 신호 성분의 제어 신호 를 획득하는 단계;를 더 포함하는, 비디오 신호 인코딩 방법. - 제11항에 있어서,
학습을 통해, 상기 비디오 신호의 제어 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 3으로서 상기 Y 성분, 상기 U 성분, 및 상기 V 성분을 표현하고, N은 1보다 큰 정수임 -; 및
상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분, 상기 제2 신호 성분, 및 상기 제3 신호 성분을 포함하는 제어 신호 를 획득하는 단계;를 더 포함하는, 비디오 신호 인코딩 방법. - 제12항 또는 제13항에 있어서,
상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터 인덱스 i, 상기 U 성분의 품질 팩터 인덱스 j, 및 상기 V 성분의 품질 팩터,의 인덱스 k를 포함하거나, 상기 비디오 신호의 품질 팩터 인덱스 i를 포함하는, 비디오 신호 인코딩 방법. - 제11항에 있어서,
상기 Y 성분의 품질 팩터를 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 제어 신호를 출력하는 단계;
상기 U 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 U 성분의 제어 신호를 출력하는 단계; 및
상기 V 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 V 성분의 제어 신호를 출력하는 단계;를 더 포함하는, 비디오 신호 인코딩 방법. - 제15항에 있어서,
상기 비디오 신호의 비트스트림은 상기 Y 성분의 품질 팩터, 상기 U 성분의 품질 팩터, 및 상기 V 성분의 품질 팩터를 포함하는, 비디오 신호 인코딩 방법. - 제1항 내지 제16항 중 어느 한 항에 있어서,
상기 제어 신호가 제어 벡터를 포함하는 경우,
상기 제1 신호 성분의 제어 벡터에 상기 제1 신호 성분의 제1 피처 맵을 곱합으로써, 상기 제1 신호 성분의 제2 피처 맵을 획득하는 단계; 및
상기 제2 신호 성분의 제어 벡터에 상기 제1 신호 성분의 제2 피처 맵을 곱합으로써, 상기 제2 신호 성분의 제2 피처 맵을 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제1항 내지 제16항 중 어느 한 항에 있어서,
상기 제어 신호가 제어 벡터 및 오프셋 벡터를 포함하는 경우,
상기 제1 신호 성분의 제어 벡터에 상기 제1 신호 성분의 제1 피처 맵을 곱한 후, 상기 제1 신호 성분의 오프셋 벡터를 더함으로써, 상기 제1 신호 성분의 제2 피처 맵을 획득하는 단계; 및
상기 제2 신호 성분의 제어 벡터에 상기 제1 신호 성분의 제2 피처 맵을 곱한 후, 상기 제2 신호 성분의 오프셋 벡터를 더함으로써, 상기 제2 신호 성분의 제2 피처 맵을 획득하는 단계;를 포함하는, 비디오 신호 인코딩 방법. - 제1항 내지 제18항 중 어느 한 항에 있어서,
상기 제1 신호 성분의 제1 피처 맵은 적어도 하나의 콘볼루션 레이어에서 및/또는 적어도 하나의 비선형 레이어에서 상기 제1 신호 성분을 처리함으로써 획득되고; 그리고
상기 제2 신호 성분의 제1 피처 맵은 적어도 하나의 콘볼루션 레이어에서 및/또는 적어도 하나의 비선형 레이어에서 상기 제2 신호 성분을 처리함으로써 획득되는, 비디오 신호 인코딩 방법. - 제19항에 있어서,
상기 제1 신호 성분의 제1 피처 맵은 각각이 2의 다운샘플링 팩터를 가지는 2개의 콘볼루션 레이어에서 그리고 2개의 비선형 레이어에서 상기 제1 신호 성분을 처리함으로써 획득되고; 그리고
상기 제2 신호 성분의 제1 피처 맵은 다운샘플링 오퍼레이션이 없는 하나의 콘볼루션 레이어에서, 2의 다운샘플링 팩터를 가지는 하나의 콘볼루션 레이어에서, 그리고 2개의 비선형 레이어에서 상기 제2 신호 성분을 처리함으로써 획득되는, 비디오 신호 인코딩 방법. - 비디오 신호 디코딩 방법으로서,
비디오 신호의 비트스트림을 획득하는 단계;
상기 비트스트림에 대해 엔트로피 디코딩을 수행하여 상기 비디오 신호의 제1 신호 성분의 피처 맵 및 상기 비디오 신호의 제2 신호 성분의 피처 맵을 획득하는 단계;
상기 제1 신호 성분의 응답 신호 및 상기 제1 신호 성분의 피처 맵에 기초하여 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계 - 여기서, 상기 제1 신호 성분의 응답 신호는 학습을 통해 획득됨 -;
상기 제2 신호 성분의 응답 신호 및 상기 제2 신호 성분의 피처 맵에 기초하여 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계 - 여기서, 상기 제2 신호 성분의 응답 신호는 학습을 통해 획득됨 -; 및
상기 제1 신호 성분의 재구성된 맵 및 상기 제2 신호 성분의 재구성된 맵에 기초하여 상기 비디오 신호를 재구성하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제21항에 있어서,
상기 비트스트림은 상기 제1 신호 성분의 품질 팩터 정보 및 상기 제2 신호 성분의 품질 팩터 정보를 더 포함하고, 상기 제1 신호 성분의 품질 팩터 정보는 상기 제1 신호 성분의 품질 팩터 또는 상기 제1 신호 성분의 품질 팩터 인덱스이고, 상기 제2 신호 성분의 품질 팩터 정보는 상기 제2 신호 성분의 품질 팩터 또는 상기 제2 신호 성분의 품질 팩터 인덱스이고, 그리고 상기 방법은,
상기 제1 신호 성분의 품질 팩터 정보에 기초하여 상기 제1 신호 성분의 응답 신호를 획득하는 단계; 및
상기 제2 신호 성분의 품질 팩터 정보에 기초하여 상기 제2 신호 성분의 응답 신호를 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제22항에 있어서,
상기 제1 신호 성분의 품질 팩터 정보가 상기 제1 신호 성분의 품질 팩터인 경우, 상기 제1 신호 성분의 품질 팩터의 값은 N개 중 하나이거나, 또는 상기 제1 신호 성분의 품질 팩터 정보가 상기 제1 신호 성분의 품질 팩터 인덱스인 경우, 상기 제1 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 N-1 또는 1 내지 N이고 - 여기서, N은 1보다 큰 정수임 -; 및
상기 제2 신호 성분의 품질 팩터 정보가 상기 제2 신호 성분의 품질 팩터인 경우, 상기 제2 신호 성분의 품질 팩터의 값은 M개 중 하나이거나, 또는 상기 제2 신호 성분의 품질 팩터 정보가 상기 제2 신호 성분의 품질 팩터 인덱스인 경우, 상기 제2 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 M-1 또는 1 내지 M인 - 여기서, M은 1보다 큰 정수임 -, 비디오 신호 디코딩 방법. - 제21항 내지 제23항 중 어느 한 항에 있어서,
상기 비트스트림은 조인트 피처 맵을 포함하며, 상기 방법은,
상기 조인트 피처 맵에 대해 엔트로피 디코딩을 수행하고, 신경망에 의한 처리를 통해, 상기 제1 신호 성분의 피처 맵 및 상기 제2 신호 성분의 피처 맵을 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제21항 내지 제24항 중 어느 한 항에 있어서,
상기 제1 신호 성분은 Y 성분이고, 그리고 상기 제2 신호 성분은 UV 성분, U 성분, 또는 V 성분인, 비디오 신호 디코딩 방법. - 제25항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우, 상기 비트스트림이 상기 Y 성분의 품질 팩터 인덱스 i 및 상기 UV 성분의 품질 팩터 인덱스 j를 포함한다면,
학습을 통해, 상기 제1 신호 성분의 응답 신호 매트릭스 {} 및 상기 제2 신호 성분의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, N 및 M은 1보다 큰 정수임 -;
상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 응답 신호 를 획득하는 단계; 및
상기 UV 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 응답 신호 를 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제25항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우, 상기 비트스트림이 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다면,
학습을 통해, 상기 비디오 신호의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 2로서 상기 Y 성분 및 상기 UV 성분을 표현하고, N은 1보다 큰 정수임 -; 및
상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분 및 상기 제2 신호 성분을 포함하는 응답 신호 를 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제25항에 있어서,
상기 제2 신호 성분이 상기 UV 성분인 경우, 상기 비트스트림이 상기 제1 신호 성분의 품질 팩터 및 상기 제2 신호 성분의 품질 팩터를 포함한다면,
상기 Y 성분의 품질 팩터를 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 응답 신호를 출력하는 단계; 및
상기 UV 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 UV 성분의 응답 신호를 출력하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제25항에 있어서,
상기 제2 신호 성분이 상기 U 성분 또는 상기 V 성분인 경우, 상기 방법은,
상기 비트스트림에 대해 엔트로피 디코딩을 수행하여 상기 비디오 신호의 제3 신호 성분의 피처 맵을 획득하는 단계; 및
상기 제3 신호 성분의 응답 신호 및 상기 제3 신호 성분의 피처 맵에 기초하여 상기 제3 신호 성분의 재구성된 맵을 획득하는 단계 - 여기서, 상기 제3 신호 성분의 응답 신호는 학습을 통해 획득되고, 그리고 상기 제2 신호 성분이 상기 U 성분인 경우, 상기 제3 신호 성분은 상기 V 성분이거나, 또는 상기 제2 신호 성분이 상기 V 성분인 경우, 상기 제3 신호 성분은 상기 U 성분임 -;를 더 포함하되,
상기 비디오 신호를 재구성하는 단계는,
상기 제1 신호 성분의 재구성된 맵, 상기 제2 신호 성분의 재구성된 맵, 및 상기 제3 신호 성분의 재구성된 맵에 기초하여 상기 비디오 신호를 재구성하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제29항에 있어서,
상기 비트스트림은 상기 제3 신호 성분의 품질 팩터 정보를 더 포함하고 - 여기서, 상기 제3 신호 성분의 품질 팩터 정보는 상기 제3 신호 성분의 품질 팩터 또는 상기 제3 신호 성분의 품질 팩터 인덱스이고, 상기 제3 신호 성분의 품질 팩터의 값은 L개 중 하나이고, 상기 제3 신호 성분의 품질 팩터 인덱스의 값 범위는 0 내지 L-1 또는 1 내지 L이되, 여기서 L은 1보다 큰 정수임 -; 그리고
상기 방법은,
상기 제3 신호 성분의 품질 팩터 정보에 기초하여 상기 제3 신호 성분의 응답 신호를 획득하는 단계;를 더 포함하는, 비디오 신호 디코딩 방법. - 제30항에 있어서,
상기 비트스트림이 상기 Y 성분의 품질 팩터 인덱스 i, 상기 U 성분의 품질 팩터 인덱스 j, 및 상기 V 성분의 품질 팩터 인덱스 k를 포함한다면,
트레이닝을 통해, 상기 제1 신호 성분의 응답 신호 매트릭스 {}, 상기 제2 신호 성분의 응답 신호 매트릭스 {}, 및 상기 제3 신호 성분의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, N, M, 및 L은 1보다 큰 정수임 -;
상기 Y 성분의 품질 팩터 인덱스 i에 기초하여 상기 제1 신호 성분의 응답 신호 를 획득하는 단계;
상기 U 성분의 품질 팩터 인덱스 j에 기초하여 상기 제2 신호 성분의 응답 신호 를 획득하는 단계; 및
상기 V 성분의 품질 팩터 인덱스 k에 기초하여 상기 제3 신호 성분의 응답 신호 를 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제29항에 있어서,
상기 비트스트림이 상기 비디오 신호의 품질 팩터 인덱스 i를 포함한다면,
학습을 통해, 상기 비디오 신호의 응답 신호 매트릭스 {}를 생성하는 단계 - 여기서, c는 3으로서 상기 Y 성분, 상기 U 성분, 및 상기 V 성분을 표현하고, N은 1보다 큰 정수임 -; 및
상기 비디오 신호의 품질 팩터 인덱스 i에 기초하여, 상기 제1 신호 성분, 상기 제2 신호 성분, 및 상기 제3 신호 성분을 포함하는 응답 신호 를 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제29항에 있어서,
상기 비트스트림이 상기 제1 신호 성분의 품질 팩터, 상기 제2 신호 성분의 품질 팩터, 및 상기 제3 신호 성분의 품질 팩터를 포함한다면,
상기 Y 성분의 품질 팩터를 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 Y 성분의 응답 신호를 출력하는 단계;
상기 U 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 U 성분의 응답 신호를 출력하는 단계; 및
상기 V 성분의 품질 팩터를 상기 완전 연결 네트워크에 대한 입력으로서 사용하고, 상기 V 성분의 응답 신호를 출력하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제21항 내지 제33항 중 어느 한 항에 있어서,
상기 응답 신호가 응답 벡터를 포함하는 경우, 상기 제1 신호 성분의 응답 신호 및 상기 제1 신호 성분의 피처 맵에 기초하여 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계는,
상기 제1 신호 성분의 응답 벡터에 상기 제1 신호 성분의 피처 맵을 곱함으로써, 상기 제1 신호 성분의 재구성된 맵을 획득하거나, 상기 제1 신호 성분의 응답 벡터에 상기 제1 신호 성분의 피처 맵을 곱한 후, 신경망에 의한 처리를 통해, 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계;를 포함하고, 그리고
상기 제2 신호 성분의 응답 신호 및 상기 제2 신호 성분의 피처 맵에 기초하여 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계는,
상기 제2 신호 성분의 응답 벡터에 상기 제2 신호 성분의 피처 맵을 곱함으로써, 상기 제2 신호 성분의 재구성된 맵을 획득하거나, 상기 제2 신호 성분의 응답 벡터에 상기 제2 신호 성분의 피처 맵을 곱한 후, 신경망에 의한 처리를 통해, 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 제21항 내지 제33항 중 어느 한 항에 있어서,
상기 응답 신호가 응답 벡터 및 오프셋 벡터를 포함하는 경우, 상기 제1 신호 성분의 응답 신호 및 상기 제1 신호 성분의 피처 맵에 기초하여 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계는,
상기 제1 신호 성분의 응답 벡터에 상기 제1 신호 성분의 피처 맵을 곱한 후, 상기 제1 신호 성분의 오프셋 벡터를 더함으로써, 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계, 또는 상기 제1 신호 성분의 응답 벡터에 상기 제1 신호 성분의 피처 맵을 곱하고, 상기 제1 신호 성분의 오프셋 벡터를 더한 후, 신경망에 의한 처리를 통해, 상기 제1 신호 성분의 재구성된 맵을 획득하는 단계;를 포함하고, 그리고
상기 제2 신호 성분의 응답 신호 및 상기 제2 신호 성분의 피처 맵에 기초하여 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계는,
상기 제2 신호 성분의 응답 벡터에 상기 제2 신호 성분의 피처 맵을 곱한 후, 상기 제2 신호 성분의 오프셋 벡터를 더함으로써, 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계, 또는 상기 제2 신호 성분의 응답 벡터에 상기 제2 신호 성분의 피처 맵을 곱하고, 상기 제2 신호 성분의 오프셋 벡터를 더한 후, 신경망에 의한 처리를 통해, 상기 제2 신호 성분의 재구성된 맵을 획득하는 단계;를 포함하는, 비디오 신호 디코딩 방법. - 처리 회로를 포함하는 인코더로서,
제1항 내지 제20항 중 어느 한 항에 따른 방법을 수행하도록 구성되는, 인코더. - 처리 회로를 포함하는 디코더로서,
제21항 내지 제35항 중 어느 한 항에 따른 방법을 수행하도록 구성되는, 디코더. - 프로그램 코드를 포함하는 컴퓨터 프로그램 제품으로서,
상기 프로그램 코드가 컴퓨터 또는 프로세서 상에서 실행되는 경우, 상기 컴퓨터 프로그램 제품은 제1항 내지 제35항 중 어느 한 항에 따른 방법을 수행하도록 구성되는, 비디오 신호 인코딩 방법. - 인코더로서,
하나 이상의 프로세서; 및
상기 프로세서에 결합되고 상기 프로세서에 의해 실행되는 프로그램을 저장하는 비일시적 컴퓨터-판독 가능한 저장 매체 - 여기서, 상기 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 인코더로 하여금 제1항 내지 제20항 중 어느 한 항에 따른 방법을 수행하게 하도록 구성됨 -;를 포함하는, 인코더. - 디코더로서,
하나 이상의 프로세서; 및
상기 프로세서에 결합되고 상기 프로세서에 의해 실행되는 프로그램을 저장하는 비일시적 컴퓨터-판독 가능한 저장 매체 - 여기서, 상기 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 디코더로 하여금 제21항 내지 제35항 중 어느 한 항에 따른 방법을 수행하게 하도록 구성됨 -;를 포함하는, 디코더. - 프로그램 코드를 포함하는 비일시적 컴퓨터-판독 가능한 저장 매체로서,
상기 프로그램 코드가 컴퓨터 디바이스에 의해 실행되는 경우, 상기 프로그램 코드 제1항 내지 제35항 중 어느 한 항에 따른 방법을 수행하는데 사용되는, 컴퓨터-판독 가능한 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110071775.8 | 2021-01-19 | ||
CN202110071775.8A CN114827622A (zh) | 2021-01-19 | 2021-01-19 | 分层编解码的方法及装置 |
PCT/CN2022/072627 WO2022156688A1 (zh) | 2021-01-19 | 2022-01-19 | 分层编解码的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230129068A true KR20230129068A (ko) | 2023-09-05 |
Family
ID=82524694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237026723A KR20230129068A (ko) | 2021-01-19 | 2022-01-19 | 확장 가능한 인코딩 및 디코딩 방법 및 장치 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20240007658A1 (ko) |
EP (1) | EP4277274A4 (ko) |
JP (1) | JP2024503712A (ko) |
KR (1) | KR20230129068A (ko) |
CN (1) | CN114827622A (ko) |
MX (1) | MX2023008449A (ko) |
WO (1) | WO2022156688A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024169959A1 (en) * | 2023-02-16 | 2024-08-22 | Douyin Vision Co., Ltd. | Method, apparatus, and medium for visual data processing |
CN116723333B (zh) * | 2023-08-02 | 2023-10-31 | 清华大学 | 基于语义信息的可分层视频编码方法、装置及产品 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534432A (zh) * | 2009-04-09 | 2009-09-16 | 上海广电(集团)有限公司中央研究院 | 基于人眼感知模型的码率控制方法 |
CN102158712B (zh) * | 2011-03-22 | 2012-10-24 | 宁波大学 | 一种基于视觉的多视点视频信号编码方法 |
CN112689147B (zh) * | 2016-05-28 | 2023-10-13 | 寰发股份有限公司 | 视频数据处理方法以及装置 |
CN107277520B (zh) * | 2017-07-11 | 2020-05-12 | 中国科学技术大学 | 帧内预测的码率控制方法 |
EP3685577A4 (en) * | 2017-10-12 | 2021-07-28 | MediaTek Inc. | METHOD AND DEVICE OF A NEURAL NETWORK FOR VIDEO ENCODING |
CN108134937B (zh) * | 2017-12-21 | 2021-07-13 | 西北工业大学 | 一种基于hevc的压缩域显著性检测方法 |
KR102525578B1 (ko) * | 2018-10-19 | 2023-04-26 | 삼성전자주식회사 | 부호화 방법 및 그 장치, 복호화 방법 및 그 장치 |
US20200160565A1 (en) * | 2018-11-19 | 2020-05-21 | Zhan Ma | Methods And Apparatuses For Learned Image Compression |
EP4282076A1 (en) * | 2021-01-25 | 2023-11-29 | Qualcomm Incorporated | Progressive data compression using artificial neural networks |
EP4181511A3 (en) * | 2021-11-15 | 2023-07-26 | Nokia Technologies Oy | Decoder-side fine-tuning of neural networks for video coding for machines |
-
2021
- 2021-01-19 CN CN202110071775.8A patent/CN114827622A/zh active Pending
-
2022
- 2022-01-19 JP JP2023543103A patent/JP2024503712A/ja active Pending
- 2022-01-19 MX MX2023008449A patent/MX2023008449A/es unknown
- 2022-01-19 WO PCT/CN2022/072627 patent/WO2022156688A1/zh active Application Filing
- 2022-01-19 KR KR1020237026723A patent/KR20230129068A/ko unknown
- 2022-01-19 EP EP22742167.4A patent/EP4277274A4/en active Pending
-
2023
- 2023-07-18 US US18/223,126 patent/US20240007658A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4277274A1 (en) | 2023-11-15 |
WO2022156688A1 (zh) | 2022-07-28 |
JP2024503712A (ja) | 2024-01-26 |
MX2023008449A (es) | 2023-07-27 |
EP4277274A4 (en) | 2024-07-03 |
US20240007658A1 (en) | 2024-01-04 |
CN114827622A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7106744B2 (ja) | ルーマおよびクロマ成分についてibc専用バッファおよびデフォルト値リフレッシュを使用するエンコーダ、デコーダおよび対応する方法 | |
JP7571227B2 (ja) | 行列ベースのイントラ予測と二次変換コア選択を調和させるエンコーダ、デコーダ、および対応する方法 | |
KR102710907B1 (ko) | 보간 필터를 사용하는 인트라 예측을 위한 방법 및 장치 | |
JP7319389B2 (ja) | 適応ループ・フィルタを用いたエンコーダ、デコーダおよび対応する方法 | |
KR102696162B1 (ko) | 인트라 서브파티션 코딩 툴로 인한 서브파티션 경계를 위한 디블로킹 필터 | |
US20230209096A1 (en) | Loop filtering method and apparatus | |
US20240007658A1 (en) | Scalable encoding and decoding method and apparatus | |
JP7508645B2 (ja) | モードおよびサイズに依存したブロックレベル制限の方法および装置 | |
CN116016932A (zh) | 用于视频译码中去块效应滤波器的装置和方法 | |
US20230239500A1 (en) | Intra Prediction Method and Apparatus | |
KR20210087088A (ko) | Cbf 플래그들의 효율적인 시그널링의 방법 | |
CN114125446A (zh) | 图像编码方法、解码方法和装置 | |
EP3891977A1 (en) | Method and apparatus for intra prediction | |
KR20220054442A (ko) | 색차 양자화 파라미터 시그널링을 위한 방법 및 장치 | |
KR20210113367A (ko) | 인트라 서브-파티션 코딩 모드를 위한 방법 및 장치 | |
CN115349257B (zh) | 基于dct的内插滤波器的使用 | |
KR20210103562A (ko) | 인트라 예측을 위한 교차-성분 선형 모델링의 방법 및 장치 | |
WO2020055291A1 (en) | Method and apparatus for wide-angle intra-prediction | |
US11616980B2 (en) | Encoder, a decoder and corresponding methods of complexity reduction on intra prediction for the planar mode | |
KR102725069B1 (ko) | 모드 및 크기 의존적 블록 레벨 제한의 방법 및 장치 | |
WO2020063881A1 (en) | Method and apparatus for cabac coding | |
JP2024156708A (ja) | エンコーダ、デコーダ、および対応する方法 | |
KR20210122800A (ko) | 인트라 서브 파티션 코딩 모드 도구로부터 서브 파티션의 크기를 제한하는 인코더, 디코더 및 대응하는 방법 | |
WO2020106186A1 (en) | Method and apparatus for hierarchical signaling of enabling and disabling prediction mechanisms for video coding |