PL231918B1 - Sposoby dekodowania sygnału wideo - Google Patents

Sposoby dekodowania sygnału wideo

Info

Publication number
PL231918B1
PL231918B1 PL409213A PL40921312A PL231918B1 PL 231918 B1 PL231918 B1 PL 231918B1 PL 409213 A PL409213 A PL 409213A PL 40921312 A PL40921312 A PL 40921312A PL 231918 B1 PL231918 B1 PL 231918B1
Authority
PL
Poland
Prior art keywords
block
prediction
filter
joining
prediction block
Prior art date
Application number
PL409213A
Other languages
English (en)
Other versions
PL409213A1 (pl
Inventor
Bae Keun Lee
Jae Cheol Kwon
Joo Young Kim
Original Assignee
Kt Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kt Corp filed Critical Kt Corp
Publication of PL409213A1 publication Critical patent/PL409213A1/pl
Publication of PL231918B1 publication Critical patent/PL231918B1/pl

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/198Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including smoothing of a sequence of encoding parameters, e.g. by averaging, by choice of the maximum, minimum or median value
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods 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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/436Methods 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 using parallelised computational arrangements

Description

Opis wynalazku
Dziedzina techniki
Niniejszy wynalazek dotyczy przetwarzania obrazu, a bardziej szczegółowo, sposobów dekodowania sygnału wideo.
Stan techniki
W ostatnim czasie wzrasta zapotrzebowanie na wideo o wysokiej rozdzielczości i wysokiej jakości, takie jak wideo o wysokiej rozdzielczości (HD) i wideo o bardzo wysokiej rozdzielczości (UHD).
W celu zapewnienia wideo o większej rozdzielczości i lepszej jakości, ilość danych wideo wzrasta. W związku z tym, rosną koszty przesyłania i przechowywania danych wideo, aby zapewnić wideo o wysokiej jakości w porównaniu z tradycyjnymi sposobami przetwarzania danych wideo. W celu rozwiązania tych problemów pojawiających się wraz ze wzrostem rozdzielczości i jakości danych wideo, mogą być wykorzystane techniki kompresji wideo o dużej wydajności.
Jako technikę kompresji danych wideo, stosuje się różne schematy, takie jak predykcja międzyklatkowa przewidywanej wartości pikseli zawartych w bieżącym obrazie pochodzących z innych obrazów, predykcja wewnątrzklatkowa przewidywanej wartości pikseli zawartych w bieżącym obrazie z wykorzystaniem informacji o pikselach innych obraz bieżący, i kodowanie/dekodowanie entropijne polegające na przydzielaniu krótszych kodów do często występujących lub pojawiających się sygnałów.
Opis wynalazku
Cel i istota wynalazku
Celem wynalazku jest zapewnienie sposobów dekodowania sygnału wideo. Cel ten jest osiągnięty przez sposób dekodowania sygnału, w którym przeprowadza się następujące etapy: wybieranie, za pomocą modułu predykcji, obrazu odniesienia bloku predykcji z wykorzystaniem indeksu odniesienia bloku predykcji; określanie, za pomocą modułu predykcji, bloku odniesienia w obrazie odniesienia z wykorzystaniem wektora ruchu bloku predykcji; interpolowanie, za pomocą modułu predykcji, bloku odniesienia przez zastosowanie pierwszego filtra segmentowego odnoszącego się do kierunku poziomego i drugiego filtra segmentowego odnoszącego się do kierunku pionowego w stosunku do bloku odniesienia; i otrzymywanie, za pomocą modułu predykcji, próbek predykcji bloku predykcji przez zastosowanie interpolowanego bloku odniesienia, przy czym blok predykcji reprezentuje część bloku kodowania, który jest kodowany z wykorzystaniem części asymetrycznych i przy czym liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego różni się od liczby współczynników filtra mających niezerową liczbę rzeczywistą drugiego filtra segmentowego.
Korzystnie, sposób obejmuje generowanie listy kandydatów do łączenia bloku predykcji, przy czym lista kandydatów do łączenia obejmuje wiele kandydatów do łączenia; i otrzymywanie indeksu odniesienia i wektora ruchu bloku predykcji dzięki wykorzystaniu kandydata do łączenia spośród wielu kandydatów do łączenia, który odpowiada indeksowi łączenia bloku predykcji.
Korzystnie, wielu kandydatów do łączenia obejmuje przestrzennie sąsiadujący blok bloku predykcji i czasowo sąsiadujący blok bloku predykcji.
Korzystnie, liczba współczynników filtra mających niezerową liczbę rzeczywistą drugiego filtra segmentowego jest mniejsza niż liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego.
Korzystnie, liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego wynosi 8.
Korzystnie, gdy typ podziału bloku kodowania wynosi 2NxnU, blok predykcji reprezentuje górną część wewnątrz bloku kodowania.
Cel wynalazku jest ponadto osiągnięty przez sposób dekodowania sygnału wideo, obejmujący: wybieranie, za pomocą modułu predykcji międzyklatkowej, obrazu odniesienia bloku predykcji z wykorzystaniem indeksu odniesienia bloku predykcji; określanie, za pomocą modułu predykcji międzyklatkowej, bloku odniesienia w obrazie odniesienia z wykorzystaniem wektora ruchu bloku predykcji; generowanie, za pomocą modułu predykcji międzyklatkowej, próbek odniesienia w bloku odniesienia, przy czym generowanie próbek odniesienia obejmuje: uzyskiwanie pierwszej podpróbki w oparciu o filtr poziomej interpolacji dla zastosowania względem próbki całkowitoliczbowej w obrazie odniesienia i operację przesunięcia z wykorzystaniem pierwszej wartości przesunięcia; i uzyskiwanie drugiej podpróbki w oparciu o filtr pionowej interpolacji dla zastosowania względem pierwszej podpróbki i operację przesunięcia z wykorzystaniem drugiej wartości przesunięcia, przy czym druga podpróbka jest jedną z dwóch próbek jednej czwartej pozycji i próbki połowy pozycji, które są pionowo wyrównane poniżej
PL 231 918 B1 pierwszej podpróbki. Sposób obejmuje ponadto generowanie, za pomocą modułu predykcji międzyklatkowej, próbek predykcji z wykorzystaniem próbek odniesienia, przy czym współczynniki filtra pionowej interpolacji zdefiniowane dla każdej z dwóch próbek jednej czwartej pozycji i próbki połowy pozycji są różne od siebie, i przy czym pierwsza wartość przesunięcia jest zmienną określaną na podstawie głębi bitowej składowej jasności, natomiast druga wartość przesunięcia jest stałą.
Korzystnie, sposób obejmuje ponadto: generowanie listy kandydatów do łączenia bloku predykcji, przy czym lista kandydatów do łączenia zawiera wielu kandydatów do łączenia; i otrzymywanie indeksu odniesienia i wektora ruchu bloku predykcji przez wykorzystanie kandydata do łączenia spośród wielu kandydatów do łączenia, który odpowiada indeksowi łączenia bloku predykcji.
Korzystnie, wielu kandydatów do łączenia obejmuje przestrzennie sąsiadujący blok bloku predykcji i czasowo sąsiadujący blok bloku predykcji.
Poniżej przedstawiono przykłady, które są użyteczne dla zrozumienia wynalazku.
Jeden przykład wykonania zapewnia sposób dekodowania wideo obejmujący rekonstruowanie wartości resztkowej za pomocą dekodowania entropijnego odebranego strumienia bitów i dekwantyzowanie i przekształcanie odwrotne informacji wartości resztkowej, generowanie ostatecznej jednostki predykcji przez przeprowadzanie predykcji międzyklatkowej na jednostce predykcji, która jest podzielona z jednostki kodowania do co najmniej dwóch jednostek predykcji za pomocą asymetrycznego podziału ruchu (asymmetric motion partitioning (AMP)), dwie podzielone jednostki predykcji obejmujące pierwszą podzieloną jednostkę predykcji i drugą podzieloną jednostka predykcji, i rekonstruowanie obrazu przez dodawanie ostatecznej jednostki predykcji do wartości resztkowej, przy czym generowanie końcowej jednostki predykcji zawiera przeprowadzanie interpolacji z wykorzystaniem segmentu filtra o zmiennej długości na podstawie długości w poziomie lub długości w pionie pierwszej podzielonej jednostki predykcji tak, że piksele w drugiej podzielonej jednostce predykcji nie prowadzą do interpolacji.
Generowanie końcowej jednostki predykcji może zawierać przeprowadzanie interpolacji dla pierwszej podzielonej jednostki predykcji i przeprowadzanie interpolacji dla drugiej podzielonej jednostki predykcji z wykorzystaniem segmentów filtra o różnych długościach na podstawie długości w poziomie lub długości w pionie jednostki predykcji.
Generowanie końcowej jednostki predykcji może zawierać przeprowadzanie poziomej interpolacji dla pierwszej podzielonej jednostki predykcji z wykorzystaniem poziomu segmentu filtra krótszego niż a pionowy segment filtra gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku poziomym.
Generowanie końcowej jednostki predykcji może zawierać przeprowadzanie pionowej interpolacji dla pierwszej podzielonej jednostki predykcji z wykorzystaniem pionowego segmentu filtra krótszego niż poziomy segment filtra gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku pionowym.
Generowanie końcowej jednostki predykcji może zawierać przeprowadzanie poziomej interpolacji dla pierwszej podzielonej jednostki predykcji z wykorzystaniem poziomego krótkiego segmentu filtra krótszego niż segment filtra dla drugiej podzielonej jednostki predykcji, która jest poziomo długa gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku poziomym.
Generowanie końcowej jednostki predykcji może zawierać przeprowadzanie pionowej interpolacji dla pierwszej podzielonej jednostki predykcji z wykorzystaniem pionowo krótkiego segmentu filtra krótszego niż segment filtra dla drugiej podzielonej jednostki predykcji, która jest pionowo długa gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku pionowym.
4-segmentowy filtr może być wykorzystany dla pierwszej podzielonej jednostki predykcji w pionowej interpolacji a 6-segmentowy filtr jest wykorzystany dla drugiej podzielonej jednostki predykcji w pionowej interpolacji gdy jednostka 64 x 64 która ma być poddana predykcji jest asymetrycznie podzielona w kierunku pionowym do jednostek predykcji 2N x nU lub 2N x nD, N jest liczbą naturalną, a jednostka predykcji 2N x nU ma postać podzieloną mającą górny blok o mniejszym obszarze, i jednostka predykcji 2n x nD ma postać podzieloną mająca dolny blok o mniejszym obszarze, a 4-segmentowy filtr może być wykorzystany dla pierwszej podzielonej jednostki predykcji w poziomej interpolacji a 6-segmentowy filtr jest wykorzystywany dla drugiej podzielonej jednostki predykcji w poziomej interpolacji gdy jednostka 64 x 64, która ma być poddana predykcji jest asymetrycznie podzielona w kierunku poziomym na jednostki predykcji nL x 2N or nR x 2N, N jest liczbą naturalną, jednostka predykcji nL x 2N ma postać podzieloną mająca lewy blok o mniejszym obszarze, a jednostka predykcji nR x 2N ma postać podzieloną mającą prawy blok o mniejszym obszarze.
PL 231 918 B1
Całkowita długość segmentów filtra w kierunku asymetrycznym pierwszej i drugiej podzielonej jednostki predykcji może być większa niż długość segmentu filtra w kierunku innym niż kierunek asymetryczny.
Odebrany strumień bitów może zawierać informacje o trybie predykcji i formie jednostki predykcji odpowiadającej docelowemu blokowi dekodowania.
Odebrany strumień bitów może dodatkowo zawierać informacje o długości segmentu filtra interpolacji jednostki predykcji odpowiadającej docelowemu blokowi dekodowania.
Generowanie końcowej jednostk i predykcji może zawierać uzyskiwanie, ze strumienia bitów, informacji o części w którym kierunku podzielone jednostki predykcji są asymetryczne; określanie, na podstawie informacji o części, który kierunek asymetryczny podzielonych jednostek predykcji ma większą długość; określanie długości segmentu filtra, który ma być wykorzystywany do interpolacji na podstawie wyniku określania; i przeprowadzanie interpolacja z wykorzystaniem określonego segmentu filtra.
Inny przykład zapewnia urządzenie dekodujące wideo obejmujące moduł rekonstruowania wartości resztkowej do rekonstruowania wartości resztkowej za pomocą dekodowania entropijnego odebranego strumienia bitów i dekwantyzowanie i przekształcania odwrotnego informacji o wartości resztkowej, moduł generowania ostatecznej jednostki predykcji do generowania ostatecznej jednostki predykcji za pomocą przeprowadzania predykcji międzyklatkowej na jednostce predykcji, która jest podzielona z jednostki kodowania do co najmniej dwóch jednostek predykcji za pomocą AMP, dwóch podzielonych jednostek predykcji obejmujących pierwszą podzieloną jednostkę predykcji i drugą podzieloną jednostkę predykcji; i moduł rekonstruowania obrazu do rekonstruowania obrazu za pomocą dodawania ostatecznej jednostki predykcji do wartości resztkowej, przy czym moduł generowania ostatecznej jednostki predykcji przeprowadza interpolację z wykorzystaniem segmentu filtra o zmiennej długości na podstawie długości w poziomie lub długości w pionie pierwszej podzielonej jednostki predykcji tak, że piksele w drugiej podzielonej jednostce predykcji nie prowadzą do interpolacji.
Jeszcze inny przykład zapewnia sposób kodowania wideo obejmujący przeprowadzanie predykcji międzyklatkowej na jednostce predykcji otrzymanej przez dzielenie obrazu wejściowego z wyk orzystaniem AMP w celu predykcji i kodowania obrazu, podzielona jednostka predykcji obejmująca pierwszą podzieloną jednostkę predykcji i drugą podzieloną jednostkę predykcji, i transformowanie i kwantyzację wartości resztkowej, która jest różnicą między jednostką predykcji generowaną za pomocą predykcji międzyklatkowej i bieżącą jednostką predykcji, i jej kodowanie entropijne, przy czym przeprowadzanie predykcji międzyklatkowej zawiera przeprowadzanie interpolacji z wykorzystaniem segmentu filtra ze zmienną długością na podstawie długości w poziomie lub długości w pionie pierwszej podzielonej jednostki predykcji tak, że piksele w drugiej podzielonej jednostce predykcji nie biorą udziału w interpolacji.
Przeprowadzanie predykcji międzyklatkowej może zawierać przeprowadzanie interpolacji dla pierwszej podzielonej jednostki predykcji i przeprowadzanie interpolacji dla drugiej podzielonej jednostki predykcji z wykorzystaniem segmentów filtra z różnymi długościami na podstawie długości w poziomie lub długości w pionie jednostek predykcji.
Przeprowadzanie predykcji międzyklatkowej może zawierać przeprowadzanie poziomej interpolacji dla pierwszej podzielonej jednostki predykcji z wykorzystaniem poziomego segmentu filtra krótszego niż pionowy segment filtra gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku poziomym.
Przeprowadzanie predykcji międzyklatkowej może zawierać przeprowadzanie poziomej interpolacji z wykorzystaniem poziomo krótkiego segmentu filtra krótszego niż segment filtra dla drugiej podzielonej jednostki predykcji, która jest poziomo długa gdy pierwsza podzielona jednostka predykcji jest asymetryczna i krótka w kierunku poziomym.
Całkowita długość segmentów filtra w kierunku asymetrycznym pierwszej i drugiej podzielonej jednostki predykcji może być większa niż długość segmentu filtra w kierunku innym niż kierunek asymetryczny.
Przeprowadzanie predykcji międzyklatkowej może zawierać uzyskiwanie informacji w którym kierunku podzielone jednostki predykcji są asymetryczne; określanie, na podstawie otrzymanej informacji, w którym kierunku asymetrycznym podzielone jednostki predykcji mają dłuższą długość; określanie długości segmentu filtra, który ma być wykorzystany do interpolacji na podstawie wyniku określania; i przeprowadzanie interpolacji z wykorzystaniem określonego segmentu filtra.
PL 231 918 B1
Przekształcanie i kwantyzowanie wartości resztkowej, i jej kodowanie entropijne zawiera generowanie strumienia bitów, przy czym strumień bitów zawiera informacje o długości segmentu filtra interpolacji jednostki predykcji odpowiadającej docelowemu blokowi kodowania.
Jeszcze inny przykład zapewnia urządzenie kodujące wideo obejmujące moduł predykcji międzyklatkowej do przeprowadzania predykcji międzyklatkowej na jednostce predykcji otrzymanej przez dzielenie obrazu wejściowego z wykorzystaniem AMP w celu predykcji i kodowania obrazu, podzielonej jednostki predykcji obejmującej pierwszą podzieloną jednostkę predykcji i drugą podzieloną jednostkę predykcji, i moduł kodowania entropijnego do kodowania entropijnego wartości resztkowej, która jest transformowana i/lub kwantyzowana, przy czym wartość resztkowa stanowi różnice między jednostką predykcji wygenerowaną za pomocą predykcji międzyklatkowej i bieżącą jednostką predykcji, i przy czym moduł predykcji międzyklatkowej przeprowadza interpolację z wykorzystaniem segmentu filtra ze zmienną długością na podstawie długości w poziomie lub długości w pionie pierwszej podzielonej jednostki predykcji tak, że piksele w drugiej podzielonej jednostce predykcji nie biorą udziału w interpolacji.
Korzystne skutki
Zgodnie z przedstawionym sposobem kodowania wideo i urządzeniem kodującym wideo ulepszone są osiągi kodowania wideo.
Zgodnie z przedstawionym sposobem dekodowania wideo i urządzeniem dekodującym wideo ulepszone są osiągi dekodowania wideo.
Zgodnie z przedstawionym sposobem kodowania predykcji międzyklatkowej i urządzeniem kodującym predykcji międzyklatkowej ulepszone są osiągi kodowania/dekodowania wideo.
Opis rysunków
FIG. 1 przedstawia schemat blokowy ilustrujący konfigurację urządzenia kodującego wideo.
FIG. 2 przedstawia schemat blokowy ilustrujący konfigurację urządzenia dekodującego wideo.
FIG. 3 schematycznie przedstawia interpolację w predykcji międzyklatkowej.
FIG. 4 schematycznie przedstawia, że segment filtra interpolacji jest wykorzystywany gdy jest wykorzystywana technika asymetrycznego podziału ruchu (asymmetric motion partitioning (AMP)) w kierunku pionowym w urządzeniu kodującym wideo.
FIG. 5 schematycznie przedstawia, że segment filtra interpolacji jest wykorzystywany gdy AMP jest wykorzystywana w kierunku poziomym w urządzeniu kodującym wideo.
FIG. 6 przedstawia schemat przebiegu ilustrujący proces przeprowadzania predykcji międzyklatkowej dla asymetrycznie podzielonej jednostki PU w urządzeniu kodującym wideo.
FIG. 7 schematycznie przedstawia, że segment filtra interpolacji odpowiednia dla długości w poziomie lub pionie podzielonej jednostki PU jest wykorzystywany gdy AMP jest wykorzystywany w kierunku pionowym w urządzeniu kodującym wideo.
FIG. 8 schematycznie przedstawia że segment filtra interpolacji odpowiednia dla długości w poziomie lub pionie podzielonej jednostki PU jest wykorzystywany gdy AMP jest wykorzystywany w kierunku poziomym w urządzeniu kodującym wideo.
FIG. 9 przedstawia sieć działań schematycznie ilustrującą sposób kodowania wideo.
FIG. 10 przedstawia sieć działań schematycznie ilustrującą sposób dekodowania wideo.
Tryb dla wynalazku
Niniejszy wynalazek może być w różny sposób zmieniany i modyfikowany i może być zilustrowany w odniesieniu do różnych przykładów wykonania, z których niektóre zostaną opisane i przedstawione na rysunkach.
Jednakże, te przykłady wykonania nie mają na celu ograniczania wynalazku, ale są interpretowane jako obejmujące wszystkie modyfikacje, ekwiwalenty i zastąpienia, które należą do istoty i technicznego zakresu wynalazku.
Mimo że określenia pierwszy, drugi, itd. mogą być wykorzystane do opisania różnych elementów, to te elementy nie powinny być ograniczane przez te określenia. Te określenia są wykorzystywane tylko do odróżnienia jednego elementu od drugiego elementu. Na przykład, pierwszy element mógłby być nazwany drugim elementem, a drugi element mógłby być nazwany pierwszym elementem bez odbiegania od treści niniejszego wynalazku. Określenie „i/lub” obejmują dowolną i wszystkie kombinacje spośród wielu powiązanych wymienionych elementów.
Zrozumiałe będzie, że, gdy element jest określony jako „połączony z” lub „podłączony do” innego elementu, to element ten może być bezpośrednio połączony lub podłączony do innego elementu lub elementów pośredniczących. Z drugiej strony, gdy element jest określony jako „bezpośrednio połączony z” lub „bezpośrednio podłączony do” innego elementu, nie występują żadne elementy pośredniczące.
PL 231 918 B1
Terminologia wykorzystana w niniejszym dokumencie ma na celu opisanie tylko szczególnych przykładów wykonania i nie ma na celu ograniczania wynalazku. Wykorzystane w niniejszym dokumencie formy w liczbie pojedynczej mają na celu objęcie także form w liczbie mnogiej, o ile kontekst wyraźnie nie wskazuje inaczej. Będzie ponadto zrozumiałe, że określenia „obejmuje” i/lub „posiada”, gdy są wykorzystywane w tym opisie, określają występowanie wskazanych cech, liczb całkowitych, etapów, operacji, elementów i/lub komponentów, ale nie wykluczają występowania lub dodania jednej lub większej liczby cech, liczb całkowitych, etapów, operacji, elementów, komponentów i/lub ich grup.
O ile nie zdefiniowano inaczej, wszystkie terminy (obejmujące terminy techniczne i naukowe) użyte tutaj mają takie samo znaczenie jak powszechnie rozumiane przez zwykłego specjalistę w dziedzinie, do której należy wynalazek. Należy ponadto rozumieć, że terminy, takie jak te określone w powszechnie znanych słownikach, powinny być interpretowane jako mające znaczenie, które jest zgodne z ich znaczeniem w kontekście odpowiedniego stanu techniki i nie będą interpretowane w sposób wyidealizowany albo nadmiernie formalny chyba, że zostało wyraźnie tak zdefiniowane w niniejszym opisie.
W dalszej części opisu, przykłady użyteczne dla zrozumienia wynalazku zostaną szczegółowo opisane w odniesieniu do dołączonych rysunków. Te same oznaczenia odsyłające na rysunkach odnoszą się do tych samych elementów w całym opisie, a zbędne opisy tych samych elementów zostaną w niniejszym opisie pominięte.
FIG. przedstawia schemat blokowy ilustrujący konfigurację urządzenia kodującego wideo. Odnosząc się do FIG. 1, urządzenie kodujące wideo może zawierać moduł 110 podziału obrazu, moduł 120 predykcji międzyklatkowej, moduł 125 predykcji wewnątrzklatkowej, moduł 130 przekształcania, moduł 135 kwantyzacji, moduł 140 dekwantyzacji, moduł 145 przekształcenia odwrotnego, filtr 150 modułu, pamięć 155, moduł 160 przegrupowania i moduł 165 kodowania entropijnego.
Moduł 110 podziału obrazu może dzielić obraz wejściowy na jedną lub większą liczbę jednostek kodowania. Jednostka kodowania (CU) jest jednostką kodowania obsługiwaną przez urządzenie kodujące wideo i może być rekursywnie podzielona z wykorzystaniem informacji o głębokości na podstawie struktury drzewa czwórkowego. Jednostka CU o maksymalnym rozmiarze jest określana jako największa jednostka kodowania (LCU), a jednostka CU o minimalnym rozmiarze jako najmniejsza jednostka kodowania (SCU).
Moduł 110 podziału obrazu może dzielić jednostkę CU w celu generowania jednostki predykcji (PU) i moduł 110 podziału obrazu może dzielić jednostkę CU w celu generowania jednostki przekształcania (TU). Jednostka PU może być mniejsza niż lub taka sama jak jednostka CU, i nie musi koniecznie być blokiem kwadratowym, ale może być blokiem prostokątnym.
Zasadniczo, predykcja wewnątrzklatkowa może być wykonywana przez 2N*2N lub N*N bloków. W tym przypadku, N jest liczbą naturalną, reprezentującą liczbę pikseli, a 2N*2N lub N*N może reprezentować rozmiar jednostki PU (i/lub tryb podziału). Jednakże, w predykcji wewnątrzklatkowej na małej odległości (SDIP), nie tylko jednostka PU 2N*2N ale dodatkowo podzielona jednostka PU o rozmiarze wynoszącym hN*2N/2N*hN (w tym przypadku h=1/2) może być także wykorzystana do zwiększenia wydajności w predykcji wewnątrzklatkowej. Gdy wykorzystywana jest jednostka PU o rozmiarze hN*2N PU lub 2N*hN, kierunkowość brzegu w bloku może być dodatkowo odzwierciedlona, i zgodnie z tym energia sygnału błędu predykcji może być zmniejszona w celu zredukowania liczb bitów potrzebnych dla kodowania, zwiększając w ten sposób wydajność kodowania.
Predykcja międzyklatkowa może być wykonywana przez 2N*2N, 2N*N, N*2N lub N*N bloków. W tym przypadku, N jest liczbą naturalną, reprezentującą liczbę pikseli, a 2N*2N, 2N*N, N*2N lub N*N może reprezentować rozmiar jednostki PU (i/lub tryb podziału). Ponadto, predykcja międzyklatkowa może być wykonywana przez jednostki PU 2NxnU, 2NxnD, nLx2N lub nRx2N, oprócz jednostek PU 2N*2N, 2N*N, N*2N lub N*N, w celu zwiększenia wydajności w predykcji międzyklatkowej. W tym przypadku, 2NxnU, 2NxnD, nLx2N lub NRx2N może reprezentować rozmiar jednostki PU (i/lub tryb podziału). W trybach podziału 2NxnU i 2NxnD, jednostka PU może mieć rozmiar wynoszący 2Nx(1/2)N lub 2Nx(3/2)N, natomiast w trybach podziału nLx2N i nRx2N, jednostka PU może mieć rozmiar wynoszący (1/2)Nx2N lub (3/2)Nx2N.
W trybie predykcji międzyklatkowej, moduł 120 predykcji międzyklatkowej może wykonywać oszacowanie ruchu (ME) i kompensację ruchu (MC). Moduł 120 predykcji międzyklatkowej może generować blok predykcji na podstawie informacji dotyczących co najmniej jednego spośród poprzedniego i następnego obrazu bieżącego obrazu.
Moduł 120 predykcji międzyklatkowej może przeprowadzać oszacowanie ruchu na podstawie podzielonego docelowego bloku predykcji i co najmniej jednego bloku referencyjnego zapisanego
PL 231 918 B1 w pamięci 155. Moduł 120 predykcji międzyklatkowej może generować informacje dotyczące ruchu zawierające wektor ruchu (MV), indeks bloku referencyjnego i tryb predykcji etc. jako wynik oszacowania ruchu.
Ponadto, moduł 120 predykcji międzyklatkowej może wykonywać kompensację ruchu z wykorzystaniem informacji dotyczących ruchu i bloku referencyjnego. W tym przypadku, moduł 120 predykcji międzyklatkowej może generować blok predykcji z bloku odniesienia odpowiadającemu blokowi wejściowemu i wyjściu bloku przewidzianego.
W trybie predykcji wewnątrzklatkowej, moduł 125 predykcji wewnątrzklatkowej może generować blok predykcji na podstawie informacji dotyczących piksela w bieżącym obrazie. W trybie predykcji wewnątrzklatkowej, moduł 125 predykcji wewnątrzklatkowej może wykonywać predykcję dla bieżącego bloku na podstawie docelowego bloku predykcji i wcześniej zrekonstruowanego bloku po przekształceniu i kwantyzacji. W tym przypadku, zrekonstruowany blok może być zrekonstruowanym obrazem, który nie został poddany działaniu modułu 150 filtra.
W trybie predykcji międzyklatkowej lub trybie predykcji wewnątrzklatkowej opisanym powyżej, predykcja może być wykonywana względem docelowego bloku predykcji w celu generowania bloku predykcji. W tym przypadku, blok resztkowy może być generowany na podstawie różnych wartości między docelowym blokiem predykcji (blok oryginalny) i wygenerowanym blokiem predykcji.
Moduł 130 przekształcania może przekształcać blok resztkowy przez jednostkę TU w celu generowania współczynnika przekształcenia. Jednostka TU może mieć strukturę drzewa w obrębie maksymalnego i minimalnego rozmiaru. Może być wskazane za pośrednictwem wskaźnika, czy bieżący blok jest podzielony na podbloki przez każdą jednostkę TU. Moduł 130 przekształcania może wykonywać przekształcenie na podstawie dyskretnej transformacji kosinusowej (DCT) i/lub dyskretnej transformacji sinusowej (DST).
Moduł 135 kwantyzacji może kwantyzować wartości przekształcone przez moduł 130 przekształcania. Współczynnik kwantyzacji może się zmieniać na podstawie bloku lub ważności obrazu. Kwantyzowany współczynnik przekształcenia może być dostarczony do modułu 160 przegrupowania i modułu 140 dekwantyzacji.
Moduł 160 przegrupowania może rozmieszczać dwuwymiarowy blok kwantyzowanych współczynników przekształcenia w jednowymiarowym wektorze współczynników przekształcenia poprzez skanowanie w celu zwiększenia wydajności w kodowaniu entropijnym. Moduł 160 przegrupowania może zmieniać porządek skanowania na podstawie statystyk stochastycznych w celu zwiększenia wydajności kodowania entropijnego.
Moduł 165 kodowania entropijnego może kodować entropijnie wartości otrzymane przez moduł 160 przegrupowania. W kodowaniu entropijnym, słowo kodowe o mniejszych liczbach bitów może być przydzielone do częściej pojawiającej się wartości elementu składni natomiast rzadziej pojawiającej się wartości elementu składni może być przydzielone słowo kodowe o większych liczbach bitów. Zatem, rozmiar ciągu bitów dla symboli do kodowania może być zredukowany w celu zwiększenia wydajności kompresji kodowania wideo. Różne sposoby kodowania, takie jak wykładnicze kodowanie Golomba, kontekstowe adaptacyjne kodowanie o zmiennej długości słowa (CAVLC) i/lub kontekstowe adaptacyjne kodowanie ciągu symboli binarnych (CABAC), mogą być wykorzystane dla kodowania entropijnego. Zakodowane informacje mogą być uformowane w skompresowany strumień bitów i przesłane lub zapisane przez warstwę abstrakcji sieci (NAL).
Moduł 140 dekwantyzacji może dekwantyzować współczynniki przekształcenia kwantyzowane przez moduł 135 kwantyzacji, a moduł 145 przekształcenia odwrotnego może generować zrekonstruowany blok resztkowy do przekształcania odwrotnego dekwantyzowanych współczynników przekształcenia. Zrekonstruowany blok resztkowy może być złączony z blokiem predykcji wygenerowanym przez moduł 120 predykcji międzyklatkowej lub moduł 125 predykcji wewnątrzklatkowej w celu generowania zrekonstruowanego bloku. Zrekonstruowany blok może być dostarczony do modułu 125 predykcji wewnątrzklatkowej i modułu 150 filtra.
Moduł 150 filtra może przeprowadzać filtrowanie rozbioru bloku, adaptacyjne przesuwanie próbek (SAO) i/lub adaptacyjne filtrowanie pętlowe (ALF) na rekonstruowanym bloku resztkowym. Ponadto, filtr rozbioru bloku może przeprowadzać filtrowanie na zrekonstruowanym bloku w celu usunięcia zniekształcenia na granicach między blokami występującego w kodowaniu i dekodowaniu. SAO jest procesem filtrowania pętlowego do wykonania na bloku, dla którego proces filtrowania rozbioru bloku został zakończony w celu zredukowania różnicy przesunięcia względem oryginalnego obrazu przez piksel. Przesunięcie pasma i przesunięcie brzegu mogą być wykorzystane jako SAO. Przesunięcie pasma
PL 231 918 B1 może dzielić piksel na 32 pasma zgodnie z intensywnością i stosować przesunięcia względem dwóch podzielonych grup 16 pasm w obszarze brzegowym i 16 pasm w obszarze środkowym. Filtr ALF może wykonywać filtrowanie w celu zminimalizowania błędu między docelowym blokiem predykcji i ostatecznie zrekonstruowanym blokiem. Filtr ALF może wykonywać filtrowanie na podstawie wartości otrzymanej przez porównanie zrekonstruowanego bloku filtrowanego przez filtr rozbioru bloku z bieżącym docelowym blokiem predykcji, a informacje dotyczące współczynników filtra ALF mogą być sygnalizowane w nagłówku segmentu z urządzenia kodującego do urządzenia dekodującego.
Pamięć 155 może przechowywać ostatecznie zrekonstruowany blok za pośrednictwem modułu 150 filtra, i ostatecznie zrekonstruowany blok może być dostarczony do modułu 120 predykcji międzyklatkowej wykonującego predykcję międzyklatkową.
FIG. 2 przedstawia schemat blokowy ilustrujący konfigurację urządzenia dekodującego wideo. Odnosząc się do FIG. 2, urządzenie dekodujące wideo może zawierać moduł 210 dekodowania entropijnego, moduł 215 przegrupowania, moduł 220 dekwantyzacji, moduł 225 przekształcenia odwrotnego, moduł 230 predykcji międzyklatkowej, moduł 235 predykcji wewnątrzklatkowej, moduł 240 filtra i pamięć 245.
Moduł 210 dekodowania entropijnego może odbierać skompresowany strumień bitów z warstwy NAL. Moduł 210 dekodowania entropijnego może dekodować entropijnie odebrany strumień bitów, a także dekodować entropijnie informacje dotyczące trybu predykcji i wektora ruchu, jeżeli strumień bitów zawiera informacje dotyczące trybu predykcji i wektora ruchu. Gdy wykorzystywane jest dekodowanie entropijne, częściej pojawiającej się wartości elementu składni może być przydzielone słowo kodowe o mniejszych liczbach bitów, natomiast rzadziej pojawiającej się wartości elementu składni może być przydzielone słowo kodowe o większych liczbach bitów. Zatem, rozmiar ciągu bitów dla symboli do kodowania może być zredukowany w celu zwiększenia wydajności dekodowania wideo.
Dekodowany entropijnie współczynnik przekształcenia lub resztkowy sygnał może być dostarczony do modułu 215 przegrupowania. Moduł 215 przegrupowania może wykonywać skanowanie odwrotne dekodowanego współczynnika przekształcenia lub resztkowego sygnału w celu generowania bloku 2D współczynników przekształcenia.
Moduł 220 dekwantyzacji może dekwantyzować przeorganizowane współczynniki przekształcenia. Moduł 225 przekształcenia odwrotnego może przekształcać odwrotnie dekwantyzowane współczynniki przekształcenia w celu generowania bloku resztkowego.
Blok resztkowy może być łączony z blokiem predykcji generowanym przez moduł 230 predykcji międzyklatkowej lub moduł 235 predykcji wewnątrzklatkowej w celu generowania zrekonstruowanego bloku. Zrekonstruowany blok może być dostarczony do modułu 235 predykcji wewnątrzklatkowej i modułu 240 filtra. Moduł 230 predykcji międzyklatkowej i moduł 235 predykcji wewnątrzklatkowej wykonują operacje takie same jak lub równoważne operacjom modułu 120 predykcji międzyklatkowej i modułu 125 predykcji wewnątrzklatkowej urządzenia kodującego wideo, a zatem ich opisy zostaną tu pominięte.
Moduł 240 filtra może przeprowadzać filtrowanie zrekonstruowanego bloku z wykorzystaniem filtra rozbioru bloku, SAO i/lub filtra ALF. Filtr rozbioru bloku może przeprowadzać filtrowanie zrekonstruowanych bloków w celu usunięcia zniekształcenia na granicy między blokami, które występuje w kodowaniu i dekodowaniu. SAO może być stosowane względem zrekonstruowanego bloku, dla którego proces filtrowania rozbioru bloku jest zakończony, w celu zredukowania różnicy względem oryginalnego obrazu przez piksel. Filtr ALF może przeprowadzać filtrowanie zrekonstruowanego bloku dla którego SAO zostało zakończone, w celu zminimalizowania błędu między docelowym blokiem predykcji i ostatecznie zrekonstruowanym blokiem.
Pamięć 245 może przechowywać ostatecznie zrekonstruowany blok otrzymany przez moduł 240 filtra, a zachowany zrekonstruowany blok może być dostarczony do modułu 230 predykcji międzyklatkowej wykonującego predykcję międzyklatkową.
W dalszej części opisu, blok może odnosić się do jednostki kodowania i dekodowania wideo. Zatem, w tym opisie, blok może oznaczać jednostkę CU, PU, TU. Ponadto, docelowy blok kodowania/dekodowania może zbiorczo zawierać docelowy blok przekształcenia/przekształcenia odwrotnego, jeżeli przeprowadzane jest przekształcenie/przekształcenie odwrotne; docelowy blok predykcji, jeżeli przeprowadzana jest predykcja.
FIG. 3 schematycznie przedstawia interpolację w predykcji międzyklatkowej. Jak pokazano na FIG. 3, gdy urządzenie kodujące (i/lub urządzenie dekodujące) generuje sygnał PU z wykorzystaniem informacji o ruchu w predykcji międzyklatkowej, może być wykorzystany 8-segmentowy filtr interpolacji.
PL 231 918 B1
Odnosząc się do FIG. 3, interpolacja jest przeprowadzana dla każdej lokalizacji w kierunku poziomym lub pionowym w celu predykcji wartości pikseli (obejmujący wartości luminancji i nasycenia barw). Jak opisano powyżej, wykorzystanie 8-segmentowego filtra interpolacji oznacza, że jeśli jednostka PU jest z góry określonym blokiem 4x4 (np. wskazującym bieżący blok 310), osiem wartości pikseli w kierunku prawym i kierunku lewym (tj. w kierunku poziomym) w odniesieniu do bloku 4x4 lub w kierunku od góry i do dołu (tj. w kierunku pionowym) w odniesieniu do bloku 4 x 4 są właściwie wykorzystywane w interpolacji do przewidywania wartości pikseli bieżącego bloku 310. Pomimo, że FIG. 3 ilustruje wykorzystanie jedynie 8-segmentowego filtra, niniejszy wynalazek nie jest do niego ograniczony.
W niniejszym przykładzie, 8-segmentowa interpolacji może być przeprowadzana w kierunku poziomym a następnie 8-segmentowa interpolacja może być przeprowadzana w kierunku pionowym. Po pierwsze, zakładając, że wartość pikseli górnego lewego piksela każdego bloku 4x4 jest znany, wartość piksela (a0,0) znajdującego się w prawą stronę tuż obok górnego lewego piksela może być przewidziana za pomocą interpolacji z wykorzystaniem wartości pikseli górnych lewych pikseli trzech bloków 4 x 4 po lewo od bieżącego bloku i wartości pikseli górnych lewych pikseli czterech bloków 4 x 4 na prawo od bieżącego bloku, co jest wyrażone poniższym równaniem.
[Równanie 1] a0,0 = (— A-3,0 + 4*A-2,0 — 10*A-1,0 + 57*A0,0 + 19*A1,0 — 7*A2,0 + 23*A3,0 — A4,0)>> shift 1
W tym przypadku, shift 1=BitDepthY (głębokość bitowa komponentu Y) - 8. W ten sposób, wartości pikseli dla innych pikseli w bieżącym bloku 310 mogą być przewidywane za pomocą interpolacji, co jest wyrażone poniższym równaniem.
[Równanie 2] b0,0 = (— A-3,0 + 4*A-2,0 — 11*A-1,0 + 40*A0,0 + 40*A1,0 — 11*A2,0 + 4*A3,0 — A4,0)>> shift 1
C0,0 = (— A-3,0 + 3*A-2,0 — 7*A-1,0 + 19A0,0 + 57*A1,0 — 10*A2,0 + 4*A3,0 — A4,0)>> shift 1 d0,0 = (— A0,-3 + 4*A0,-2 — 10*A0,-1, + 57*A0,0 + 19*A0,1 — 7*A0,2 + 23*A0,3 — A4,0)>> shift 1 h0,0 = (— A0,-3 + 4*A0,-2 — 11*A0,-1, + 40*A0,0 + 40*A0,1 — 10*A0,2 + 4*A0,3 — A4,0)>> shift 1 n0,0 = (— A0,-3 + 3*A0,-2 — 7*Aci,-1, + 19*A0,0 + 57*A0,1 — 10*A0,2 + 4*A0,3 — A4,0)>> shift 1 e0,0 = (— a0,-3 + 4*a0,-2 — 10*a0,-1, + 57*a0,0 + 19*a0,1 — 7*a0,2 + 3*a0,3 — a0,4)>> shift 2 f0,0 = (— a0,-3 + 4*a0,-2 — 10*a0,-1, + 40*a0,0 + 40*a0,1 — 11*a0,2 + 4*a0,3 — a0,4)>> shift 2 g0,0 = (— a0,-3 + 3*a0,-2 — 7*a0,-1, + 19*a0,0 + 57*a0,1 — 10*a0,2 + 4*a0,3 — a0,4)>> shift 2 i0,0 = (— b0,-3 + 4*b0,-2 — 10*b0,-1, + 57*b0,0 + 19*b0,1 — 7*b0,2 + 3*a0,3 — b0,4)>> shift 2 j0,0 = (— b0,-3 + 4*b0,-2 — 11*b0,-1, + 40*b0,0 + 40*b0,1 — 11*b0,2 + 4*ba0,3 — b0,4)>> shift 2 k0,0 = (— b0,-3 + 3*b0,-2 — 7*b0,-1, + 19*b0,0 + 57*b0,1 — 10*b0,2 + 4*b0,3 — b0,4)>> shift 2 p0,0 = (— C0,-3 + 4*C0,-2 — 10*C0,-1, + 57*C0,0 + 19*C0,1 — 7*C0,2 + 3*C0,3 — C0,4)>> shift 2 q0,0 = (— C0,-3 + 4*C0,-2 — 11*C0,-1, + 40*C0,0 + 40*C0,1 — 11*C0,2 + 4*C0,3 — C0,4)>> shift 2 r0,0 = (— C0,-3 + 3*C0,-2 — 7*C0,-1, + 19*C0,0 + 57*C0,1 — 10*C0,2 + 4*C0,3 — C0,4)>> shift 2
W tym przypadku, shift2=8. Jak pokazano w równaniu 2 wartości pikseli trzech górnych pikseli i trzech lewych pikseli innych niż górny lewy piksel bieżącego bloku 310 mogą być przewidywane za pomocą poziomej lub pionowej interpolacji z wykorzystaniem wartości pikseli górnych lewych pikseli pionowo lub poziomo sąsiadujących bloków 4x4, i wartości pikseli pozostałych pikseli mogą być przewidywane za pomocą pionowej lub poziomej interpolacji z wykorzystaniem wartości pikseli górnych pikseli siedmiu bloków 4x4 sąsiadujących pionowo lub poziomo. Z wykorzystaniem równania 1 lub 2, wartości pikseli jednostki PU, która ma być obecnie przewidywana mogą być uzyskiwane I sygnał predykcji dotyczący jednostki PU może być generowany.
FIG. 4 schematycznie przedstawia, że interpolacja segment filtra jest wykorzystywany gdy jest wykorzystywane asymetryczne dzielenie ruchu (AMP) jako asymetryczny w kierunku pionowym w urządzeniu kodującym wideo.
PL 231 918 B1
Odnosząc się do FIG. 4, gdy jednostka PU jest podzielona jak AMP a długi segment filtra, taki jak 8-segmentowy, jest wykorzystywany do krótszego kierunku podziału asymetrycznego, piksele różnych części są również zaangażowane w interpolacje. W tym przypadku, piksele wykazują słabą korelację gdy należą do różnych części, a zatem wydajność interpolacji najprawdopodobniej zmniejszy się. Czyli, gdy blok 412 i blok 414 są poddawane razem interpolacji, wydajność interpolacji zmniejsza się z powodu słabej korelacji między blokiem 412 a blokiem 414. Ten sam wynik osiąga się dla bloku 422 i bloku 424.
Zgodnie z niniejszym przykładem, gdy jednostka PU jest podzielona jak AMP, mniejszy segment filtra niż tradycyjny segment filtra może być wykorzystany do interpolacji w kierunku asymetrycznym asymetrycznie podzielonej jednostki PU o krótszej długości. Na przykład, segment filtra mniejszy niż 8-segmentowy może być wykorzystany do przeprowadzania interpolacji asymetrycznie podzielonej jednostki PU o krótszej długości. W trybie łączenia, jednostka PU może mieć postać 2N*2N, 2N*N, N*2N, N*N, 2NxnU, 2NxnD, nLx2N lub nRx2N. 8-segmentowy filtr może być wykorzystany do interpolacji symetrycznie podzielonej jednostki PU, takich jak jednostki PU 2N*2N, 2N*N, N*2N i N*N.
Odnosząc się do lewej ilustracji z FIG. 4, gdy jednostka PU jest podzielona jak kształt bloku 2N x nU 410, który jest asymetrycznie podzielony w kierunku pionowym, górny blok 412 jest podzielonym blokiem o krótszej długości. Blok 410 może zawierać górny blok 412 i dolny blok 414, w którym współczynnik między długościami w kierunku pionowym górnego bloku 412 i dolnego bloku 414 mogą wynosić 16: 48. Odnosząc się do prawej ilustracji z FIG. 4, gdy jednostka PU jest podzielona jak kształt bloku 2N x nD 420, który jest asymetrycznie podzielony w kierunku pionowym, dolny blok 424 jest podzielonym blokiem o krótszej długości. Blok 420 może zawierać górny blok 422 i dolny blok 424, w którym współczynnik między długościami w kierunku pionowym górnego bloku 422 i dolnego bloku 424 mogą wynosić 48:16. Gdy asymetrycznie podzielony w kierunku pionowym, górny blok 412 bloku 2N x nU 410 i dolny blok 424 bloku 2N x nD 420 może być interpolowany z wykorzystaniem mniejszego segmentu w kierunku pionowym niż w kierunku poziomym. Na przykład, gdy 8-segmentowy filtr jest wykorzystywany w kierunku poziomym, filtr z mniejszą ilością segmentów niż 8-segmentów może być wykorzystany w kierunku pionowym.
FIG. 5 schematycznie przedstawia, że segment filtra interpolacji jest wykorzystywany gdy AMP jest wykorzystywany jako asymetryczny w kierunku poziomym w urządzeniu kodującym wideo.
Odnosząc się do lewej ilustracji z FIG. 5, gdy jednostka PU jest podzielona jak kształt bloku nL x 2N 510, który jest asymetrycznie podzielony w kierunku poziomym, lewy blok 512 jest podzielonym blokiem o krótszej długości. Blok 510 może zawierać lewy blok 512 i prawy blok 514, w których długości w kierunku pionowym lewego bloku 512 i prawego bloku 514 mogą być takie same czyli 64, podczas gdy stosunek między ich długościami w kierunku poziomym może wynosić 16:48. Odnosząc się do prawej ilustracji z FIG. 5, gdy jednostka PU jest podzielona jak kształt bloku nR x 2N 520, który jest asymetrycznie podzielony w kierunku poziomym, prawy blok 524 jest podzielonym blokiem o krótszej długości. Blok 520 może zawierać lewy blok 522 i prawy blok 524, w którym stosunek między długościami w kierunku poziomym lewego bloku 522 i prawego bloku 524 może wynosić 48:16. Gdy asymetrycznie podzielony w kierunku poziomym, lewy blok 512 bloku nL x 2N 510 i prawy blok 524 bloku nR x 2N 520 może być interpolowany z wykorzystaniem mniejszego segmentu kierunku poziomym niż w kierunku pionowym. Na przykład, filtr z mniejszą ilością segmentów niż 8-segmentów może być wykorzystany w kierunku poziomym.
Pomimo, ze przykłady z FIG. 4 i 5 zostały opisane w odniesieniu do bloku 64 x 64, przykłady mogą również być stosowane do bloków o różnych rozmiarach lub kształtach innych niż blok 64 x 64.
FIG. 6 przedstawia schemat działań ilustrujący proces przeprowadzania predykcji międzyklatkowej dla asymetrycznie podzielonej jednostki PU w urządzeniu kodującym wideo. Jak pokazano na FIG. 6, proces przeprowadzania predykcji międzyklatkowej może zawierać otrzymywanie informacji o podziale (S610), określanie długości w kierunku asymetrycznym (S620), określanie długości segmentu filtra (S630) i przeprowadzanie interpolacji (S640).
Odnosząc się do FIG. 6, podczas otrzymywania informacji o części (S610), otrzymuje się informacje o części w asymetrycznie podzielonym bloku. W procesie kodowania, informacje o części mogą być zawarte w informacji o ruchu w bieżącej jednostce PU przez oszacowanie ruchu. Informacja o ruchu może zawierać informacje o wektorze ruchu jednostki PU, indeksie obrazu odniesienia, indeksie kierunku predykcji, trybie predykcji i informacji o kształcie jednostki PU.
Zgodnie z niniejszym przykładem, ponieważ strumień bitów może być generowany jako obejmujący informację o długości segmentu filtra interpolacji jednostki PU odpowiadającej docelowemu blokowi
PL 231 918 B1 kodowania w procesie kodowania, urządzenie dekodujące może uzyskiwać informacje o długości segmentu filtra interpolacji jednostki PU odpowiadającej docelowemu blokowi dekodowania z odebranego strumienia bitów. W tym przypadku, określanie długości (S620) i określanie długości segmentu filtra (S630) może być pominięte. Gdy strumień bitów nie zawiera informacji o długości segmentu filtra, informacja o kształcie jednostki PU może być otrzymywana, poprzedzona przez określanie długości (S620) i określanie długości segmentu filtra (S630), w ten sposób określając długość segmentu filtra.
Podczas określania długości w kierunku asymetrycznym (S620), urządzenie kodujące (i/lub urządzenie dekodujące) określa długość w kierunku asymetrycznym (albo w kierunku pionowym albo w kierunku poziomym) jednostki PU odpowiadającej docelowemu blokowi kodowania (i/lub dekodowania) na podstawie otrzymanej informacji o podziale. Czyli, urządzenie kodujące określa czy asymetrycznie podzielony blok w kierunku poziomym ma większą czy mniejszą długość.
Następnie, podczas określania długości segmentu filtra (S630), długość segmentu filtra dla interpolacji jednostki PU odpowiadającej docelowemu blokowi kodowania (i/lub dekodowania) jest określana na podstawie wyniku określania długości. Jak opisano powyżej, długość segmentu filtra jest określania na podstawie dzielonej długości w kierunku asymetrycznym. Przykładowo, długość segmentu filtra może być określana tak, że segment o krótszej długości w kierunku pionowym niż w kierunku poziomym jest stosowany do asymetrycznie podzielonego bloku mającego krótszą długość w kierunku pionowym podczas gdy segment o krótszej długości w kierunku poziomym niż w kierunku pionowym jest stosowany do asymetrycznie podzielonego bloku mającego krótszą długość w kierunku poziomym.
Podczas przeprowadzania interpolacji (S640), urządzenie kodujące (i/lub urządzenie dekodujące) przeprowadza interpolację na podstawie długości segmentu filtra określonego podczas określania długości filtra (S630).
Zgodnie z niniejszym przykładem, w procesie kodowania, interpolacja jest przeprowadzana na podstawie określonej długości segmentu filtra, a strumień bitów jest generowany obejmując informację o długości segmentu filtra.
FIG. 7 schematycznie przedstawia, że segment filtra interpolacji odpowiedni dla pionowej lub poziomej długość podzielonej jednostki PU jest wykorzystywany gdy AMP jest wykorzystywany w kierunku pionowym w urządzeniu kodującym wideo.
Odnosząc się do FIG. 7, interpolacja może być przeprowadzana dla asymetrycznie podzielonego bloku o większym obszarze z wykorzystaniem filtra o dłuższym segmencie niż dla asymetrycznie podzielonego bloku o mniejszym obszarze. Ponadto, całkowita długość segmentów filtra w kierunku asymetrycznym co najmniej dwóch podzielonych bloków może być większa niż długość segmentu filtra w kierunku innym niż kierunek asymetryczny.
Odnosząc się do lewej ilustracji z FIG. 7, blok 2N x nU jest asymetrycznie podzielony w kierunku pionowym, przy czym górny blok 710 jest podzielonym blokiem o krótszej długości. Górny blok 710 bloku 2N x nU ma krótszą długość w kierunku pionowym niż dolny blok 720, w którym stosunek między długościami górnego bloku 710 i dolnego blok 720 może wynosić 16:48. W tym przypadku, filtr o dłuższym segmencie może być wykorzystywany dla dolnego bloku 720 o obszarze większym niż dla górnego bloku 710 o mniejszym obszarze. Ponadto, całkowita długość segmentów filtra w kierunku asymetrycznym, czyli, całkowita długość pionowego segmentu filtra górnego bloku 710 i pionowego segmentu filtra dolnego bloku 720, może być większa niż długość poziomego segmentu filtra dla górnego bloku 710 i dolnego bloku 720.
Na przykład, 4-segmentowy filtr może być wykorzystany dla górnego bloku 710 w interpolacji dla kierunku pionowego, podczas gdy 6-segmentowy filtr może być wykorzystany dla dolnego bloku 720 w interpolacji dla kierunku pionowego. Czyli, całkowita długość segmentu 4-segmentowego filtra i 6-segmentowego filtra wynosi 10, co jest większe niż pozioma długość segmentu filtra wynosząca 8.
Odnosząc się do prawej ilustracji z FIG. 7, ten sam sposób może być stosowany do bloku 2N x nD, w którym to przypadku 6-segmentowy filtr może być wykorzystany dla górnego bloku 730 w interpolacji dla kierunku pionowego, podczas gdy 4-segmentowy filtr może być wykorzystany dla dolnego bloku 740 w interpolacji dla kierunku pionowego.
FIG. 8 schematycznie przedstawia że segment filtra interpolacji odpowiednia dla pionowej lub poziomej długości podzielonej jednostki PU jest wykorzystywany gdy AMP jest wykorzystywany w kierunku poziomym w urządzeniu kodującym wideo.
Odnosząc się do lewej ilustracji z FIG. 8, blok nL x 2N jest asymetrycznie podzielony w kierunku poziomym, przy czym lewy blok 810 jest podzielonym blokiem o krótszej długości. Lewy blok 810 bloku nL x 2N ma mniejszą długość w kierunku poziomym niż prawy blok 820, w którym stosunek między
PL 231 918 B1 długościami lewego bloku 810 i prawego bloku 820 mogą wynosić 16:48. W tym przypadku, filtr z większą ilością segmentów może być wykorzystywany dla prawego bloku 820 o większym obszarze niż lewy blok 810 o mniejszym obszarze. Ponadto, całkowita długość segmentów filtra w kierunku asymetrycznym, to jest, całkowita długość poziomego segmentu filtra lewego bloku 810 i poziomego segmentu filtra prawego bloku 820, może być większa niż długość pionowego segmentu filtra dla lewego bloku 810 i prawego bloku 820.
Na przykład, 4-segemtnowy filtr może być wykorzystany dla lewego bloku 810 w interpolacji dla kierunku poziomego, podczas gdy 6-segmentowy filtr może być wykorzystany dla prawego bloku 820 w interpolacji dla kierunku poziomego.
Odnosząc się do prawej ilustracji z FIG. 8, ten sam sposób może być stosowany do bloku nR x 2N, w którym to przypadku 6-segmentowy filtr może być wykorzystany dla lewego bloku 830 w interpolacji dla kierunku poziomego, podczas gdy 4-segmentowy filtr może być wykorzystany dla prawego bloku 840 w interpolacji dla kierunku poziomego.
Tabela 1 ilustruje liczby pionowych i poziomych segmentów filtra interpolacji dla bloków asymetrycznych.
T a b e l a 1
Pionowy segment filtra Poziomy segment filtra
2N x nU (górny blok) 4 8
2N x nU (dolny blok) 6 8
2N x nD (górny blok) 6 8
2N x nD (dolny blok) 4 8
nL x 2N (lewy blok) 4 8
nL x 2N (prawy blok) 6 8
nR x 2N (lewy blok) 6 8
nR x 2N (prawy blok) 4 8
FIG. 9 przedstawia schematycznie sposób kodowania wideo.
Odnosząc się do FIG. 9, urządzenie kodujące może uzyskać przewidzianą wartość ruchu bieżącej jednostki międzyklatkowej PU (S910). Informacja o ruchu o bieżącej jednostce PU nie jest transmitowana jako taka, ale wartość różnicową z wartości przewidzianej otrzymanej z tymczasowo i przestrzennie sąsiadujących bloków jest transmitowana tak aby zwiększyć wydajność kompresji. Urządzenie kodujące może uzyskać listę kandydatów do łączenia i listę kandydatów zaawansowanej predykcji wektora ruchu (advanced motion vector prediction (AMVP)) dla bieżącej jednostki wewnątrzklatkowej PU tak aby uzyskać przewidzianą wartość ruchu.
Urządzenie kodujące może generować jednostkę PU z wykorzystaniem informacji o ruchu (S920). W konkretnym przypadku, interpolacja może być przeprowadzana z wykorzystaniem filtra o krótszym segmencie dla asymetrycznie podzielonej jednostki PU w kierunku krócej podzielonej długości. Sposoby interpolacji dla asymetrycznie podzielonej jednostki PU zostały opisane powyżej, a zatem ich opis będzie tu pominięty.
Urządzenie kodujące może kodować informację o ruchu w bieżącym bloku (S930). W trybie łączenia, jeśli kandydat mający taką samą informację o ruchu jak bieżąca jednostka PU jest obecny wśród kandydatów do łączenia, urządzenie kodujące wskazuje, że bieżąca jednostka PU jest w trybie łączenia i transmituje flagę wskazującą, że tryb łączenia jest wykorzystywany a indeks wskazujący który kandydat jest wykorzystywany wśród kandydatów do łączenia. W trybie AMVP, urządzenie kodujące określa kandydata minimalizującego funkcje kosztu wśród kandydatów AMVP za pomocą porównania informacji o wektorze ruchu między kandydatami AMVP a bieżąca jednostką PU, i przeprowadza kompensację ruchu z wykorzystaniem określonego kandydata i różnych wartości w informacji o ruchu między bieżącą jednostką PU i kandydatem AMVP w celu otrzymania resztkowego sygnału.
Urządzenie kodujące może generować blok resztkowy odpowiadający bieżącemu blokowi (S940). Jak opisano powyżej, urządzenie kodujące może przeprowadzać predykcję międzyklatkową i/lub predykcję wewnatrzklatkową dla bieżącego bloku, w ten sposób generując blok predykcji odpowiadający bieżącemu blokowi. W tym przypadku, urządzenie kodujące może generować resztkowy sygnał,
PL 231 918 B1 to jest, blok resztkowy, za pomocą otrzymywania różnicy w pikselach między wartością pikseli bieżącego bloku a wartością pikseli bloku predykcji.
Na FIG. 9, urządzenie kodujące może przekształcać resztkowy sygnał, czyli, blok resztkowy (S950). Urządzenie kodujące może przeprowadzać transkodowanie na resztkowym sygnale z wykorzystaniem jądra przekształcania, a jądro przekształcania może mieć rozmiary 2x2, 4x4, 8x8, 16x16, 32x32 lub 64x64. W przykładzie, współczynnik przekształcenia C dla bloku nxn może być obliczony w sposób następujący.
[Równanie 3]
C(n,n)=T(n,n) x B(n,n) x T(n,n)T
W tym przypadku, C(n,n) jest macierzą nxn współczynnika przekształcenia, T(n,n) jest macierzą n*n jądra przekształcenia, a B(n,n) jest macierzą n*n bloku resztkowego.
Gdy współczynnik przekształcenia jest generowany za pośrednictwem przekształcenia, urządzenie kodujące może kwantyzować wygenerowany współczynnik przekształcenia.
Urządzenie kodujące może określać na podstawie optymalizacji RDO co ma być transmitowane spośród bloku resztkowego i współczynnika przekształcenia. Gdy predykcja jest prawidłowo wykonana, blok resztkowy, to znaczy resztkowy sygnał, może być transmitowany bez transkodowania. Urządzenie kodujące może porównywać funkcje kosztu przed/po transkodowaniu i wybierać sposób posiadający minimalne koszty. W tym przypadku, urządzenie kodujące może transmitować informacje dotyczące typu sygnału (resztkowy sygnał lub współczynnik przekształcenia), który ma być transmitowany w odniesieniu do bieżącego bloku do urządzenia dekodującego.
Na FIG. 9, urządzenie kodujące może skanować współczynnik przekształcenia (S960).
Gdy skanowanie jest wykonane, urządzenie kodujące może kodować entropijnie skanowany współczynnik przekształcenia i informacje poboczne (na przykład, informacje dotyczące trybu predykcji międzyklatkowej bieżącego bloku) (S970). Zakodowane informacje mogą być uformowane w skompresowany strumień bitów i przechowywane na nośniku lub przesyłane przez warstwę NAL.
Mimo że sposób kodowania jest opisany przez ciąg etapów na podstawie sieci działań na FIG. 9, to niniejszy wynalazek nie jest do tego ograniczony. Niektóre etapy na FIG. 9 mogą być wykonane w innej kolejności niż kolejność opisana powyżej lub równocześnie. Ponadto, dodatkowe etapy mogą być zawarte między etapami w sieci działań, lub jeden lub większa liczba etapów może być usunięta z sieci działań na FIG. 9 w zakresie niniejszego wynalazku.
FIG. 10 przedstawia sieć działań schematycznie ilustrującą sposób dekodowania wideo.
Odnosząc się do FIG. 10, urządzenie dekodujące może dekodować entropijnie strumień bitów odebrany z urządzenia kodującego (S1010). Na przykład, urządzenie dekodujące może wyznaczać tryb predykcji i resztkowy sygnał bieżącego bloku na podstawie tabeli kodowania o zmiennej długości słowa (VLC) i/lub kodowania CABAC. Urządzenie dekodujące może otrzymywać informacje o tym, czy sygnał odebrany w odniesieniu do bieżącego bloku jest resztkowym sygnałem, czy współczynnikiem przekształcenia. I urządzenie dekodujące może otrzymywać resztkowy sygnał lub wektor 1D współczynników przekształcenia dla bieżącego bloku. Gdy odebrany strumień bitów zawiera informacje poboczne wymagane dla dekodowania, zarówno strumień bitów, jak i informacje poboczne mogą być dekodowane entropijnie.
Na FIG. 10, urządzenie dekodujące może wykonywać skanowanie odwrotne kodowanego entropijnie resztkowego sygnału lub współczynników przekształcenia w celu generowania bloku dwu wymiarowego (S1020). W tej sytuacji, blok resztkowy może być generowany w przypadku resztkowego sygnału, a dwuwymiarowy blok współczynników przekształcenia może być generowany w przypadku współczynników przekształcenia. Gdy współczynniki przekształcenia są wygenerowane, urządzenie dekodujące może dekwantyzować wygenerowane współczynniki przekształcenia (S1030).
Urządzenie dekodujące może przekształcać odwrotnie dekwantyzowane współczynniki przekształcenia, generując w ten sposób blok resztkowy (S1040). Przekształcenie odwrotne może być reprezentowane przez równanie 4.
[Równanie]
B(n,n)=T(n,n) x C(n,n) x T(n,n)T
Gdy blok resztkowy jest generowany, urządzenie dekodujące może przeprowadzać predykcje międzyklatkową w oparciu o blok resztkowy (S1050). Urządzenie dekodujące przeprowadza predykcję międzyklatkową z wykorzystaniem jednego z trybów łączenia i trybu AMVP w celu otrzymania informacji o ruchu.
PL 231 918 B1
Urządzenie dekodujące może generować jednostkę PU z wykorzystaniem otrzymanej informacji o ruchu. Interpolacja może być przeprowadzana z wykorzystaniem filtra o krótkim segmencie dla asymetrycznie podzielonej jednostki PU w kierunku krócej podzielonej długości. Sposoby interpolacji dla asymetrycznie podzielonej jednostki PU zostały opisane powyżej, a zatem ich opis jest teraz pomijany.
Urządzenie dekodujące może dodawać sygnał bloku resztkowego i sygnał otrzymany z wykorzystaniem wcześniejszej ramki w celu wygenerowania rekonstruowanego bloku, w ten sposób rekonstruując obraz ( S1070). Jak opisano powyżej, urządzenie dekodujące może przeprowadzać predykcję międzyklatkową i może przeprowadzać predykcję wewnatrzklatkową również dla docelowego blokowi dekodowania w celu generowania bloku predykcji odpowiadającego docelowego blokowi dekodowania. W tym przypadku, urządzenie dekodujące może dodawać wartość pikseli bloku predykcji i wartość pikseli bloku resztkowego o piksel, w ten sposób generując rekonstruowany blok.
Mimo że sposób kodowania jest opisany przez ciąg etapów na podstawie sieci działań na FIG. 10, to niniejszy wynalazek nie jest do tego ograniczony. Niektóre etapy na FIG. 10 mogą być wykonane w innej kolejności niż kolejność opisana powyżej lub równocześnie. Ponadto, dodatkowe etapy mogą być zawarte między etapami w sieci działań, lub jeden lub większa liczba etapów może być usunięta z sieci działań na FIG. 10 w zakresie niniejszego wynalazku.
Mimo że sposoby zostały opisane przez ciąg etapów lub bloków na podstawie sieci działań we wcześniej wspomnianych przykładach, niniejszy wynalazek nie jest ograniczony do wyżej wspomnianej sekwencji etapów. Niektóre etapy mogą być wykonane w innej kolejności niż kolejność opisana powyżej lub równocześnie w tym samym czasie. Ponadto, będzie zrozumiałe dla znawców z dziedziny, że etapy zilustrowane w sieciach działań nie są wyłączne, dodatkowe etapy mogą być zawarte w sieci działań, lub jeden lub większa liczba etapów może być usunięta z sieci działań bez wpływu na zakres niniejszego wynalazku.
Niniejszy wynalazek został opisany w odniesieniu do przykładów, a powyższe przykłady obejmują różne aspekty przykładów. Mimo że wszystkie możliwe kombinacje nie mogą być wymienione dla zilustrowania różnych aspektów, to znawcy z dziedziny zauważą, że można dokonać zmian, modyfikacji i alternatyw w tych przykładach wykonania bez odchodzenia od zasad i istoty wynalazku, którego zakres jest określony w dołączonych zastrzeżeniach i ich ekwiwalentach.

Claims (9)

  1. Zastrzeżenia patentowe
    1. Sposób dekodowania sygnału wideo, w którym przeprowadza się następujące etapy
    51) wybieranie, za pomocą modułu predykcji (210), obrazu odniesienia bloku predykcji z wykorzystaniem indeksu odniesienia bloku predykcji;
    52) określanie, za pomocą modułu predykcji (210), bloku odniesienia w obrazie odniesienia z wykorzystaniem wektora ruchu bloku predykcji;
    53) interpolowanie, za pomocą modułu predykcji (210), bloku odniesienia przez zastosowanie pierwszego filtra segmentowego odnoszącego się do kierunku poziomego i drugiego filtra segmentowego odnoszącego się do kierunku pionowego w stosunku do bloku odniesienia; i
    54) otrzymywanie, za pomocą modułu predykcji (210), próbek predykcji bloku predykcji przez zastosowanie interpolowanego bloku odniesienia, w którym blok predykcji reprezentuje część bloku kodowania, który jest kodowany z wykorzystaniem części asymetrycznych i w którym liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego różni się od liczby współczynników filtra mających niezerową liczbę rzeczywistą drugiego filtra segmentowego.
  2. 2. Sposób według zastrzeżenia 1 zawierający:
    generowanie listy kandydatów do łączenia bloku predykcji przy czym lista kandydatów do łączenia obejmuje wiele kandydatów do łączenia; i otrzymywanie indeksu odniesienia i wektora ruchu bloku predykcji dzięki wykorzystaniu kandydata do łączenia spośród wielu kandydatów do łączenia, który odpowiada indeksowi łączenia bloku predykcji.
    PL 231 918 B1
  3. 3. Sposób według zastrzeżenia 2, w którym wielu kandydatów do łączenia obejmuje przestrzennie sąsiadujący blok bloku predykcji i czasowo sąsiadujący blok bloku predykcji.
  4. 4. Sposób według zastrzeżenia 1, w którym liczba współczynników filtra mających niezerową liczbę rzeczywistą drugiego filtra segmentowego jest mniejsza niż liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego.
  5. 5. Sposób według zastrzeżenia 4, w którym liczba współczynników filtra mających niezerową liczbę rzeczywistą pierwszego filtra segmentowego wynosi 8.
  6. 6. Sposób według zastrzeżenia 5, w którym gdy typ podziału bloku kodowania wynosi 2NxnU, blok predykcji reprezentuje górną część wewnątrz bloku kodowania.
  7. 7. Sposób dekodowania sygnału wideo, obejmujący:
    (51) wybieranie, za pomocą modułu predykcji międzyklatkowej (210), obrazu odniesienia bloku predykcji z wykorzystaniem indeksu odniesienia bloku predykcji;
    (52) określanie, za pomocą modułu predykcji międzyklatkowej (210), bloku odniesienia w obrazie odniesienia z wykorzystaniem wektora ruchu bloku predykcji;
    (53) generowanie, za pomocą modułu predykcji międzyklatkowej (210), próbek odniesienia w bloku odniesienia, przy czym generowanie próbek odniesienia obejmuje:
    uzyskiwanie pierwszej podpróbki w oparciu o filtr poziomej interpolacji dla zastosowania względem próbki całkowitoliczbowej w obrazie odniesienia i operację przesunięcia z wykorzystaniem pierwszej wartości przesunięcia; i uzyskiwanie drugiej podpróbki w oparciu o filtr pionowej interpolacji dla zastosowania względem pierwszej podpróbki i operację przesunięcia z wykorzystaniem drugiej wartości przesunięcia, przy czym druga podpróbka jest jedną z dwóch próbek jednej czwartej pozycji i próbki połowy pozycji, które są pionowo wyrównane poniżej pierwszej podpróbki; i (54) generowanie, za pomocą modułu predykcji międzyklatkowej (210), próbek predykcji z wykorzystaniem próbek odniesienia, przy czym współczynniki filtra pionowej interpolacji zdefiniowane dla każdej z dwóch próbek jednej czwartej pozycji i próbki połowy pozycji są różne od siebie, i przy czym pierwsza wartość przesunięcia jest zmienną określaną na podstawie głębi bitowej składowej jasności, natomiast druga wartość przesunięcia jest stałą.
  8. 8. Sposób według zastrzeżenia 7, przy czym sposób obejmuje ponadto :
    generowanie listy kandydatów do łączenia bloku predykcji, przy czym lista kandydatów do łączenia zawiera wielu kandydatów do łączenia; i otrzymywanie indeksu odniesienia i wektora ruchu bloku predykcji przez wykorzystanie kandydata do łączenia spośród wielu kandydatów do łączenia, który odpowiada indeksowi łączenia bloku predykcji.
  9. 9. Sposób według zastrzeżenia 8, w którym wielu kandydatów do łączenia obejmuje przestrzennie sąsiadujący blok bloku predykcji i czasowo sąsiadujący blok bloku predykcji.
PL409213A 2011-11-08 2012-11-02 Sposoby dekodowania sygnału wideo PL231918B1 (pl)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR2011-0116130 2011-11-08
KR20110116130 2011-11-08
KR1020120123519A KR101569725B1 (ko) 2011-11-08 2012-11-02 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
PCT/KR2012/009180 WO2013069932A1 (ko) 2011-11-08 2012-11-02 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
KR2012-0123519 2012-11-02

Publications (2)

Publication Number Publication Date
PL409213A1 PL409213A1 (pl) 2015-07-20
PL231918B1 true PL231918B1 (pl) 2019-04-30

Family

ID=48661122

Family Applications (1)

Application Number Title Priority Date Filing Date
PL409213A PL231918B1 (pl) 2011-11-08 2012-11-02 Sposoby dekodowania sygnału wideo

Country Status (11)

Country Link
US (6) US9432683B2 (pl)
KR (10) KR101569725B1 (pl)
CN (10) CN107835413A (pl)
AU (6) AU2012336598A1 (pl)
BR (1) BR112014012594A8 (pl)
CA (1) CA2855027C (pl)
GB (5) GB2510759B (pl)
MX (6) MX2014005606A (pl)
PL (1) PL231918B1 (pl)
RU (6) RU2718230C2 (pl)
WO (1) WO2013069932A1 (pl)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
AU2013284038B2 (en) * 2012-06-28 2015-11-05 Hfi Innovation Inc. Method and apparatus of disparity vector derivation in 3D video coding
CN110545419B (zh) 2012-10-12 2022-11-22 韩国电子通信研究院 图像编码/解码方法和使用其的装置
US9426465B2 (en) 2013-08-20 2016-08-23 Qualcomm Incorporated Sub-PU level advanced residual prediction
KR102250088B1 (ko) * 2013-10-24 2021-05-10 삼성전자주식회사 비디오 스트림을 복호화하는 방법 및 장치
CN104768012B (zh) * 2014-01-03 2018-04-20 华为技术有限公司 非对称运动分割方式编码的方法和编码设备
CN104918050B (zh) * 2014-03-16 2019-11-08 上海天荷电子信息有限公司 使用动态排列重组的参考像素样值集的图像编解码方法
US11196992B2 (en) 2015-09-03 2021-12-07 Mediatek Inc. Method and apparatus of neural network based processing in video coding
JP2018533286A (ja) * 2015-09-23 2018-11-08 エルジー エレクトロニクス インコーポレイティド 画像の符号化/復号化方法及びこれのために装置
KR101752848B1 (ko) 2015-12-30 2017-06-30 씨제이포디플렉스 주식회사 영상 움직임 검출을 이용한 모션 제어 시스템 및 방법
KR102471207B1 (ko) * 2016-10-04 2022-11-25 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2018174617A1 (ko) 2017-03-22 2018-09-27 한국전자통신연구원 블록 형태에 기반한 예측 방법 및 장치
KR20230124092A (ko) 2017-03-31 2023-08-24 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법및 화상 복호 방법
KR20180111378A (ko) * 2017-03-31 2018-10-11 주식회사 칩스앤미디어 병렬 처리를 위한 움직임 정보를 처리하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
US10728548B2 (en) 2017-04-04 2020-07-28 Futurewei Technologies, Inc. Processing reference samples used for intra-prediction of a picture block
MX2019012294A (es) * 2017-04-13 2020-01-27 Lg Electronics Inc Metodo de codificacion/decodificacion de imagenes y dispositivo para el mismo.
CN115442607A (zh) * 2017-07-31 2022-12-06 韩国电子通信研究院 对图像编码和解码的方法及存储比特流的计算机可读介质
WO2019072097A1 (en) * 2017-10-12 2019-04-18 Mediatek Inc. VIDEO ENCODING METHOD USING NEURAL NETWORK
WO2019083394A1 (en) * 2017-10-27 2019-05-02 Huawei Technologies Co., Ltd. APPARATUS AND METHOD FOR IMAGE CODING WITH ASYMMETRICAL PARTITIONING
CN111602393B (zh) * 2018-01-15 2022-10-21 三星电子株式会社 编码方法及其设备以及解码方法及其设备
CN110198440B (zh) * 2018-03-29 2022-11-18 腾讯科技(深圳)有限公司 编码预测信息的确定及视频编码的方法、装置及可读介质
CN111971958B (zh) * 2018-04-18 2023-01-13 华为技术有限公司 视频编码中的块分割方法和设备
WO2019234600A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Interaction between pairwise average merging candidates and intra-block copy (ibc)
GB2589223B (en) 2018-06-21 2023-01-25 Beijing Bytedance Network Tech Co Ltd Component-dependent sub-block dividing
CN110636298B (zh) 2018-06-21 2022-09-13 北京字节跳动网络技术有限公司 对于Merge仿射模式和非Merge仿射模式的统一约束
JP2021536203A (ja) * 2018-09-16 2021-12-23 華為技術有限公司Huawei Technologies Co., Ltd. 予測のための方法及び装置
CN110944170B (zh) 2018-09-24 2023-05-02 北京字节跳动网络技术有限公司 扩展Merge预测
WO2020094150A1 (en) 2018-11-10 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Rounding in current picture referencing
US10778977B2 (en) * 2018-12-05 2020-09-15 Qualcomm Incorporated Triangle motion information for video coding
CN112236996A (zh) 2018-12-21 2021-01-15 株式会社 Xris 视频信号编码/解码方法及其装置
WO2020141849A1 (ko) * 2019-01-01 2020-07-09 엘지전자 주식회사 화면간 예측을 사용하여 비디오 신호를 처리하기 위한 방법 및 장치
EP3915253A4 (en) 2019-01-25 2022-11-09 HFI Innovation Inc. METHOD AND APPARATUS FOR NON-LINEAR ADAPTIVE LOOP FILTERING IN VIDEO CODING
JP2020150338A (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 画像復号装置、画像復号方法、及びプログラム
JP2020150340A (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 画像符号化装置、画像符号化方法、及びプログラム
TWI739386B (zh) 2019-04-11 2021-09-11 聯發科技股份有限公司 具有適應性參數集之適應性迴路濾波器
CN117499679A (zh) * 2019-04-16 2024-02-02 北京字节跳动网络技术有限公司 用于视频编解码的自适应环路滤波
CN111684799B (zh) * 2019-06-25 2023-07-25 北京大学 视频处理方法和装置
CN110557592B (zh) * 2019-09-16 2021-12-17 瑞芯微电子股份有限公司 一种hdmi多媒体数据质量评测方法、装置和系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100628489B1 (ko) * 2002-01-18 2006-09-26 가부시끼가이샤 도시바 동화상 부호화방법 및 장치와 컴퓨터 독출가능 매체
JP4120301B2 (ja) 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
KR20050018948A (ko) * 2002-07-09 2005-02-28 노키아 코포레이션 비디오 부호화에서 보간 필터 유형을 선택하기 위한 방법및 장치
MXPA05000335A (es) * 2002-07-09 2005-03-31 Nokia Corp Metodo y sistema para seleccionar tipo de filtro de interpolacion en codificacion de video.
JP4183993B2 (ja) * 2002-07-16 2008-11-19 シャープ株式会社 フィルタ装置
EP1886502A2 (en) * 2005-04-13 2008-02-13 Universität Hannover Method and apparatus for enhanced video coding
KR100944651B1 (ko) * 2005-04-13 2010-03-04 가부시키가이샤 엔티티 도코모 동화상 부호화 장치, 동화상 복호 장치, 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 프로그램을 기록한 기록 매체, 및 동화상 복호 프로그램을 기록한 기록 매체
US9014280B2 (en) * 2006-10-13 2015-04-21 Qualcomm Incorporated Video coding with adaptive filtering for motion compensated prediction
CN101399991B (zh) * 2007-09-26 2010-11-10 华为技术有限公司 一种视频解码的方法和装置
CN101453646B (zh) * 2007-12-04 2012-02-22 华为技术有限公司 图像插值方法、装置及插值系数的获取方法
KR101279573B1 (ko) 2008-10-31 2013-06-27 에스케이텔레콤 주식회사 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JP2011082725A (ja) * 2009-10-06 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法,映像符号化装置,映像復号方法,映像復号装置,映像符号化・復号方法,およびプログラム
KR20110060105A (ko) * 2009-11-30 2011-06-08 엘지전자 주식회사 인트라 예측을 이용한 비디오 신호 처리 방법 및 장치
KR20110061468A (ko) * 2009-12-01 2011-06-09 (주)휴맥스 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치
US8995778B2 (en) 2009-12-01 2015-03-31 Humax Holdings Co., Ltd. Method and apparatus for encoding/decoding high resolution images
WO2011155758A2 (ko) 2010-06-07 2011-12-15 ㈜휴맥스 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치
KR20110071047A (ko) * 2009-12-20 2011-06-28 엘지전자 주식회사 비디오 신호 디코딩 방법 및 장치
CN106028048B (zh) * 2010-01-15 2019-04-05 三星电子株式会社 对视频进行解码的设备
EP2942957A1 (en) 2010-07-02 2015-11-11 HUMAX Holdings Co., Ltd. Apparatus for decoding images for intra-prediction
KR101579392B1 (ko) * 2010-09-27 2015-12-21 엘지전자 주식회사 블록 분할 방법 및 복호화 장치
US20120134425A1 (en) * 2010-11-29 2012-05-31 Faouzi Kossentini Method and System for Adaptive Interpolation in Digital Video Coding
WO2012097378A1 (en) * 2011-01-14 2012-07-19 General Instrument Corporation Temporal block merge mode
TWI646827B (zh) * 2011-06-28 2019-01-01 三星電子股份有限公司 使用非對稱內插濾波器的內插影像用的方法與裝置
US9055304B2 (en) * 2011-07-01 2015-06-09 Qualcomm Incorporated Reduced resolution pixel interpolation
US9462298B2 (en) * 2011-10-21 2016-10-04 Qualcomm Incorporated Loop filtering around slice boundaries or tile boundaries in video coding

Also Published As

Publication number Publication date
US20170041619A1 (en) 2017-02-09
US20160337653A1 (en) 2016-11-17
MX2014005606A (es) 2014-08-01
KR101986586B1 (ko) 2019-06-10
CN107835412A (zh) 2018-03-23
AU2012336598A8 (en) 2016-04-21
CN107920249A (zh) 2018-04-17
KR20180109816A (ko) 2018-10-08
AU2012336598A1 (en) 2014-06-19
CN107835413A (zh) 2018-03-23
MX339846B (es) 2016-06-14
RU2647703C1 (ru) 2018-03-16
GB2510759A9 (en) 2017-11-29
US20150139317A1 (en) 2015-05-21
CN104378632B (zh) 2018-02-09
KR101986589B1 (ko) 2019-06-10
AU2016253620A1 (en) 2016-11-24
RU2718230C2 (ru) 2020-03-31
KR20140131902A (ko) 2014-11-14
CN107071435A (zh) 2017-08-18
AU2016253619A1 (en) 2016-11-24
CN104378632A (zh) 2015-02-25
GB2510759A (en) 2014-08-13
GB2561514B (en) 2019-01-16
CA2855027A1 (en) 2013-05-16
BR112014012594A2 (pt) 2017-06-13
GB2560083A (en) 2018-08-29
US20140307784A1 (en) 2014-10-16
CN107071434A (zh) 2017-08-18
CN104067613B (zh) 2018-01-02
RU2647704C1 (ru) 2018-03-16
MX349891B (es) 2017-08-18
BR112014012594A8 (pt) 2021-06-22
AU2016201932A1 (en) 2016-05-05
MX359052B (es) 2018-09-13
GB201721828D0 (en) 2018-02-07
GB2561782B (en) 2019-01-16
GB2561514A8 (en) 2018-12-12
US20170111647A1 (en) 2017-04-20
RU2017100994A (ru) 2018-12-19
KR101550720B1 (ko) 2015-09-07
RU2647705C1 (ru) 2018-03-16
AU2016201932B2 (en) 2018-05-31
CN107071436A (zh) 2017-08-18
GB2560083B (en) 2019-01-16
US9432683B2 (en) 2016-08-30
KR20180109814A (ko) 2018-10-08
GB2561515B (en) 2019-01-16
GB201408808D0 (en) 2014-07-02
GB201812008D0 (en) 2018-09-05
KR101550718B1 (ko) 2015-09-07
KR20180109817A (ko) 2018-10-08
KR20140134254A (ko) 2014-11-21
RU2014119544A (ru) 2015-12-20
GB201812007D0 (en) 2018-09-05
AU2018202366A1 (en) 2018-05-10
US20170041618A1 (en) 2017-02-09
AU2016253621B2 (en) 2018-06-07
GB2561515A8 (en) 2018-12-12
MX364027B (es) 2019-04-11
AU2016253620B2 (en) 2018-06-07
WO2013069932A1 (ko) 2013-05-16
RU2017100994A3 (pl) 2020-01-28
KR101569725B1 (ko) 2015-11-17
CN107959852A (zh) 2018-04-24
KR101550717B1 (ko) 2015-09-07
CN107835411A (zh) 2018-03-23
US9497477B1 (en) 2016-11-15
KR20130050883A (ko) 2013-05-16
KR20140139454A (ko) 2014-12-05
MX367994B (es) 2019-09-13
US9578338B1 (en) 2017-02-21
KR101905159B1 (ko) 2018-11-21
GB2561782A (en) 2018-10-24
KR20140134253A (ko) 2014-11-21
GB2510759B (en) 2018-09-12
KR101986588B1 (ko) 2019-06-10
CA2855027C (en) 2017-01-24
RU2643573C1 (ru) 2018-02-02
GB2561514A (en) 2018-10-17
GB201812009D0 (en) 2018-09-05
KR20180109815A (ko) 2018-10-08
US9432684B2 (en) 2016-08-30
RU2610296C2 (ru) 2017-02-08
AU2018202366B2 (en) 2019-10-03
GB2561515A (en) 2018-10-17
AU2016253621A1 (en) 2016-11-24
US9554140B1 (en) 2017-01-24
CN104067613A (zh) 2014-09-24
US9729893B2 (en) 2017-08-08
KR101986587B1 (ko) 2019-06-10
AU2016253619B2 (en) 2018-06-07
KR20140131903A (ko) 2014-11-14
KR101550719B1 (ko) 2015-09-07
PL409213A1 (pl) 2015-07-20

Similar Documents

Publication Publication Date Title
KR101986586B1 (ko) 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
KR101857108B1 (ko) 영상 부호화/복호화 방법 및 그 장치
PL231160B1 (pl) Sposób dekodowania sygnału wideo
PL230821B1 (pl) Sposób i urządzenie do kodowania/dekodowania obrazu
US20210274164A1 (en) Inter-prediction method and video decoding apparatus using the same
US11140415B2 (en) Method and device for processing video signal