PT2664141E - Filtragem de desbloqueio - Google Patents

Filtragem de desbloqueio Download PDF

Info

Publication number
PT2664141E
PT2664141E PT118555861T PT11855586T PT2664141E PT 2664141 E PT2664141 E PT 2664141E PT 118555861 T PT118555861 T PT 118555861T PT 11855586 T PT11855586 T PT 11855586T PT 2664141 E PT2664141 E PT 2664141E
Authority
PT
Portugal
Prior art keywords
pixel
offset
block
closest
line
Prior art date
Application number
PT118555861T
Other languages
English (en)
Inventor
Norkin Andrey
Kenneth Andersson
Rickard Sjöberg
Original Assignee
Ericsson Telefon Ab L M
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=46507326&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=PT2664141(E) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Publication of PT2664141E publication Critical patent/PT2664141E/pt

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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • H04N19/865Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness with detection of the former encoding block subdivision in decompressed video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

DESCRIÇÃO "Filtragem de desbloqueio"
CAMPO TÉCNICO A presente descrição refere-se a filtragem de desbloqueio para reduzir artefactos de bloqueio em perímetros de blocos.
ANTECEDENTES
Filtros de desbloqueio são utilizados nas normas de cifra de video a fim de combater artefactos de bloqueio. Os artefactos de bloqueio surgem devido ao vídeo original ser dividido em blocos que são processados de forma relativamente independente. Os artefactos de bloqueio podem, por exemplo, surgir devido a intrapredicções diferentes dos blocos, efeitos de quantificação e compensação de movimento. Duas variantes particulares de desbloqueio são descritas abaixo.
Desbloqueio H.264
No estado da técnica de cifra de vídeo, tal como H.264, existe um filtro de desbloqueio, também designado filtro de anel, depois de predicção e reconstrução residual, mas antes do armazenamento da reconstrução para posterior referência em cifra e decifra dos quadros subsequentes. A filtragem de desbloqueio consiste de vários passos tais como decisões de filtro, operações de filtragem, uma função de recortar e mudanças de valores de pixel. A decisão para filtrar, ou não, o perímetro é tomada com base na avaliação de várias condições. Decisões de filtro dependem do tipo de macrobloco (MB) , diferença de vector de movimento (MV) entre blocos vizinhos, se blocos vizinhos têm resíduos cifrados e da estrutura local dos blocos vizinhos e/ou actuais.
Então a quantidade de filtragem para um pixel depende, entre outros, da posição daquele pixel em relação à fronteira ou perímetro de bloco e do valor do parâmetro de quantificação (QP) utilizado para cifra residual. A decisão de filtro é baseada na comparação de três diferenças de pixel com três limiares. Os limiares estão adaptados ao parâmetro de quantificação (QP) . Por exemplo, assumindo um perímetro de bloco vertical de abed|efgh onde a, b, c e d designam valores de pixel dos píxeis de uma linha de píxeis no bloco actual com e, f, g e h a designarem os valores de pixel correspondentes dos píxeis de uma linha correspondente de píxeis no bloco vizinho. Se as condições seguintes forem satisfeitas a decisão de filtro é positiva, por exemplo abs(d-e)climl, abs(c-d)<lim2 e abs(e-f)<lim2, onde liml e lim2 são definidos com base no QP.
Existem dois modos de filtragem em H.264. No primeiro modo de filtragem, referido como filtragem normal, a filtragem pode ser descrita com um valor de delta com o qual a filtragem muda com o valor actual. A filtragem para os píxeis mais próximos do perímetro de bloco é d' =d+delta e e' =e-delta, onde delta foi recortado de um limiar ±lim3 para um valor que é condicionado pelo QP. Mais filtragem é, deste modo, permitida para QP elevado do que para QP baixo. 0 recorte pode ser descrito como delta_recortado=max(-lim3, min(lim3, delta)), onde lim3 controla a intensidade do filtro. Um valor maior do que lim3 significa que a filtragem é mais forte o que significa que acontece um efeito de filtragem passa-baixo mais forte. A intensidade do filtro pode ser aumentada se for verificada qualquer das duas seguintes condições, por exemplo abs(b-d)<lim2 e abs(e-g)<lim2. A intensidade do filtro é adaptada ao recortar o delta inferior, por exemplo, permitir mais variação. 0 segundo modo de filtragem, referido como filtram forte, é aplicado para perímetros intra macrobloco apenas, quando a condição seguinte é satisfeita abs(d-e)<liml/4.
Para mais informação de filtragem de desbloqueio em H.264 é feita referência a List et ai., Adaptive Deblocking
Filter, IEEE Transactions on Circuits and Systems for Video Technology, vol. 13, no. 7, Julho de 2003.
Documento de trabalho de desbloqueio em HEVC
No documento de trabalho de especificação de HEVC (cifra de video de elevada eficiência) "Test Model under Consideration", documento ITU-TSG16 WP3, JCTVC-B205, Capitulo 6.5 In-loop filter process, o filtro de desbloqueio funciona de forma diferente de H.264. A filtragem é executada se, pelo menos, um dos blocos no lado do perímetro é intra ou tem coeficientes diferentes de zero ou a diferença entre os componentes de vector de movimento dos blocos é maior ou igual a um pixel inteiro. Por exemplo, quando a filtragem da fronteira entre os blocos com um perímetro de bloco vertical de pSípCiplipOi|qOiqliqCxqSi com pji a designar o valor de pixel de número de pixel j de número de linha i no bloco actual e qji a designar o valor de pixel de número de pixel j de número de linha i no bloco vizinho, i = 0,...,7, j = 0,... 3, então a condição seguinte deverá ser satisfeita: d= | p22-2xpl2+p02 I + I q22-2xql2+q02 I + I p25-2xpl5+p05 I + I q25-
2xql5+q05 I <B onde β depende de QP. Na especificação HEVC referida acima, existe uma tabela de β, onde β aumenta com QP.
Se as condições forem satisfeitas e for realizada filtragem entre o bloco actual e o bloco vizinho, é executado um de dois tipos de filtragem, referida como filtragem fraca e forte, respectivamente. A escolha entre a filtragem forte e fraca é feita de forma separada para cada linha em função das seguintes condições. Para cada linha i = 0,...,7, é executada filtragem forte se todas as seguintes condições forem verdadeiras, caso contrário, é executada filtragem fraca: d< (β»2) ( I ρ3ι-ρΟι I + I qOi-q3i | ) < (β>>3)
IpOi-qOi I <( (5xtc+l)>>1) onde tc e β dependem de QP e >> designa um operador de deslocamento à direita.
Filtragem fraca no documento de trabalho HEVC
Filtragem fraca é executada com base nas condições acima. A filtragem na realidade funciona pelo cálculo de um desfasamento (Δ) , que é adicionado ao valor de pixel original e recortada a soma a um valor de pixel de saida filtrado no intervalo de 0 a 255: A=Recorte(-tc,tc,(13x(qOi-pOi)+4x(qli-pli)-5x(q2i-p2i)+16) »5) ) pOi=Recorteo-255 (pOi+ Δ) qOi=Recorteo-255 (qOi+ Δ) pli=Recorteo-255 (pli+ Δ/2) qli=Recorteo-255 (qli+ Δ/2) onde a função de recorte Recorte(A,B,x) é definida como Recorte(A,B,x)=A se x<A, Recorte(A,B,x)=B se x>B e Recorte (A, B, x) =x se A<x<B e Recorteo-255 (x) é definido como Recorte (0,255,x) .
Documento de trabalho filtragem forte em HEVC
Modo de filtragem forte é realizado pelo seguinte conjunto de operações: pOi=Recorteo-255 ( (pCx+Cxplx+CxpOi+CxqOi+qli+i ) >>3) qO!=Recorteo-255 ( (pl±+2xp0±+2xq0±+2xql±+q2±+4 ) >>3) pli=Recorteo-255 ( (p2i+pli+p0i+q0i+2) >>2) qli=Recorteo-255 ( (2xp3i+3xp2i+pli+p0i+q0i+4) >>3) q2!=Recorteo-255 ( (p0i+q0i+qli+3xq2!+2xq3i+4 ) >>3)
Um problema com o desbloqueio em HEVC é que o filtro fraco não tem boas caracteristicas passa-baixo. Pode-se ver que o primeiro e o segundo píxeis da fronteira de bloco são modificados pela adição ou subtracção de Δ e Δ/2, respectivamente. Um filtro deste tipo não pode remover altas frequências que podem aparecer próximo da fronteira do bloco e não pode remover o toque de chamada. Para além disso, as caracteristicas de frequência do filtro em HEVC mostram ligeiras amplificações de frequências maiores na filtragem do segundo pixel (pli e qli) do perímetro de bloco, que podem dar origem a pior desempenho de relação de distorção (RD) do codificador. Para além disso, o desfasamento para o pixel pil é igual em amplitude ao desfasamento de pixel qli apesar da estrutura do sinal poder ser diferente em lados diferentes do perímetro de bloco. Por conseguinte, o filtro HEVC não se adapta bem à estrutura local do lado do perímetro de bloco.
Deste modo, existe uma necessidade de um filtro de desbloqueio eficiente que possa ser utilizado para reduzir artefactos de bloqueio nos perímetros de bloco e que não tenha os inconvenientes referidos acima.
SUMÁRIO É um objectivo geral combater artefactos de bloqueio em perímetros de blocos entre blocos de píxeis num quadro de vídeo.
Este e outros objectivos são satisfeitos por concretizações como apresentadas aqui.
Um aspecto das concretizações define um método de redução de artefactos de bloqueio num perímetro de bloco entre um bloco de píxeis e um bloco vizinho de píxeis num quadro de vídeo. 0 método calcula um primeiro desfasamento igual a ( 9x (qO-pO) -3x (ql-pl) +8) >>4, onde >> representa uma operação de deslocamento para a direita, p 0 representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha de píxeis no bloco, pl representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha de píxeis, qO representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha correspondente de píxeis no bloco vizinho e ql representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. A linha de píxeis e a linha correspondente de píxeis são perpendiculares ao perímetro de bloco. 0 valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis é modificado por adição do primeiro desfasamento ao valor de pixel deste pixel para formar um valor de pixel modificado. Em conformidade, o valor de pixel do pixel mais próximo do perímetro de bloco mas na linha correspondente de píxeis é modificado por subtracção do primeiro desfasamento do valor de pixel deste pixel para formar um valor de pixel modificado. 0 método também compreende recortar o primeiro desfasamento num intervalo de -tc e tc por ajuste do primeiro desfasamento igual a -tc se o primeiro desfasamento for inferior a -tc e por ajuste do primeiro desfasamento igual a tc se o primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao bloco.
Numa concretização opcional deste aspecto, o método também compreende recortar o valor de pixel modificado do pixel mais próximo do dito perímetro de bloco na linha de píxeis para ficar num intervalo de zero e um valor máximo definido e recortar o valor de pixel modificado do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis para ficar num intervalo de zero e o valor máximo definido. Este recorte opcional é conseguido por ajuste do valor de pixel modificado para ser igual a zero se o valor de pixel modificado for inferior a zero e por ajuste do valor de pixel modificado para ser igual ao valor máximo definido se o valor de pixel modificado for maior do que o valor máximo definido.
Numa concretização opcional deste aspecto, o método também compreende o cálculo de um segundo desfasamento baseado em (ρ2+ρΟ-2χρ1+2χΔ)/4, onde p2 representa um valor de pixel de um segundo pixel seguinte mais próximo do perímetro de bloco na linha de píxeis e Δ representa o primeiro desfasamento. 0 método também compreende, nesta concretização opcional, o cálculo de um terceiro desfasamento em função de (q2+qO-2xql+2xA)/4, onde q2 representa um valor de pixel de um segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. 0 valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis é, então, modificado por adição do segundo desfasamento ao valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis para formar um valor de pixel modificado. Em conformidade, o método também compreende, nesta concretização opcional, a modificação do valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis por adição do terceiro desfasamento ao valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis para formar um valor de pixel modificado.
Numa concretização opcional deste aspecto, o segundo desfasamento é calculado para ser igual a (((p2+p0+l)>>1)-_ρ1+Δ)>>1, onde >> representa uma operação de deslocamento para a direita e o terceiro desfasamento é calculado para ser igual a ( ( (g2 + g0 + l) >>1)-gl-Δ) >>1.
Numa concretização opcional deste aspecto, o método também compreende recortar o segundo desfasamento num intervalo de -tc2 e tc2 e recortar o terceiro desfasamento num intervalo de -tc2 e tc2, onde tc2 é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao bloco. Este recorte opcional é conseguido por ajuste do segundo ou terceiro desfasamento para ser igual a -tc2 se o segundo ou terceiro desfasamento for inferior a -tc2 e por ajuste do segundo ou terceiro desfasamento para ser igual a tc2 se o segundo ou terceiro desfasamento for maior do que tc2 .
Numa concretização opcional deste aspecto, o método também compreende recortar o valor de pixel modificado do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis num intervalo de zero e um valor máximo definido e recortar o valor de pixel modificado do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis num intervalo de zero e o valor máximo definido. Este recorte opcional é conseguido por ajuste do valor de pixel modificado para ser igual a zero se o valor de pixel modificado for inferior a zero e por ajuste do valor de pixel modificado para ser igual ao valor máximo definido se o valor de pixel modificado for maior do que o valor máximo definido.
Numa concretização opcional deste aspecto, o método também compreende o cálculo de um quarto desfasamento em função de (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4, onde p3 representa um valor de pixel de um terceiro pixel seguinte mais próximo do perímetro de bloco na linha de pixeis e ΔΡ/ representa o segundo desfasamento. 0 método também compreende, nesta concretização opcional, o cálculo de um quinto desfasamento em função de (q3 + ql-2xq2 + 2xAgi)/4, onde q3 representa um valor de pixel de um terceiro pixel mais próximo do perímetro de bloco na linha correspondente de pixeis e Áqi representa o terceiro desfasamento. 0 valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha de pixeis é modificado ao adicionar o quarto desfasamento ao valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha de pixeis para formar um valor de pixel modificado. 0 método também compreende, nesta concretização opcional, a modificação do valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de pixeis ao adicionar o quinto desfasamento ao valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de pixeis para formar um valor de pixel modificado.
Numa concretização opcional deste aspecto, o quarto desfasamento é calculado para ser igual a ( ( (_p3+_pl + l) >>1) -ρ2+ΔΡ/)>>1, onde >> representa uma operação de deslocamento para a direita e o quinto desfasamento é calculado para ser igual a ( ( (q3 + ql + l) >>1) -q2+ Àqi) »1 .
Numa concretização opcional deste aspecto uma unidade de filtro de desbloqueio calcula o primeiro desfasamento em função de (9x(qO-pO)-3x(ql-pl))/16. A unidade de filtro de desbloqueio modifica o valor de pixel do pixel mais próximo do perímetro de pixel na linha de pixeis ao adicionar o primeiro desfasamento ao valor de pixel do pixel mais próximo do perímetro de bloco na linha de pixeis para formar um valor de pixel modificado. A unidade de filtro de desbloqueio também modifica o valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de pixeis ao subtrair o primeiro desfasamento do valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de pixeis para formar um valor de pixel modificado.
Outro aspecto das concretizações define uma unidade de filtro de desbloqueio para reduzir artefactos de bloqueio num perímetro de bloqueio entre um bloco de pixeis e um bloco vizinho de pixeis num quadro de vídeo. A unidade de filtro de desbloqueio compreende um calculador de primeiro desfasamento configurado para calcular um primeiro desfasamento para ser igual a ( 9x (qO-pO) -3x (ql-pl) +8) >>4, onde >> representa uma operação de deslocamento para a direita, p 0 representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha de pixeis no bloco, p 1 representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha de pixeis, qO representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha correspondente de pixeis no bloco vizinho e ql representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha correspondente de pixeis. A linha de pixeis e a linha correspondente de pixeis são perpendiculares ao perímetro de bloco. A unidade de filtro de desbloqueio também compreende um modificador de valor de pixel configurado para modificar o valor de pixel do pixel mais próximo do perímetro de bloco na linha de pixeis por adição do primeiro desfasamento ao valor de pixel deste pixel para formar um valor de pixel modificado. 0 modificador de valor de pixel também está configurado para modificar o valor de pixel do pixel mais próximo do perímetro de bloco mas na linha correspondente de pixeis por subtracção do primeiro desfasamento do valor de pixel deste pixel para formar um valor de pixel modificado. A unidade de filtro de desbloqueio também compreende uma primeira unidade de recorte configurada para recortar o primeiro desfasamento para ficar num intervalo de -tc e tc por ajuste do primeiro desfasamento para ser igual a -tc se o primeiro desfasamento for inferior a -tc e por ajuste do primeiro desfasamento para ser igual a tc se o primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao bloco.
Numa concretização opcional deste aspecto, a unidade de filtro de desbloqueio compreende uma unidade de segundo recorte configurada para recortar o valor de pixel modificado do pixel mais próximo do perímetro de bloco na linha de píxeis num intervalo de zero e um valor máximo definido e recortar o valor de pixel modificado do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis num intervalo de zero e o valor máximo definido. Este recorte opcional pela segunda unidade de recorte opcional é conseguido pelo ajuste do valor de pixel modificado para ser igual a zero se o valor de pixel modificado for inferior a zero e pelo ajuste do valor de pixel modificado para ser igual ao valor máximo definido se o valor de pixel modificado for maior do que o valor máximo definido.
Numa concretização opcional deste aspecto, a unidade de filtro de desbloqueio compreende um calculador de segundo desfasamento configurado para calcular um segundo desfasamento em função de (ρ2+ρΟ-2χρ1+2χΔ)/4, onde p2 representa um valor de pixel de um segundo pixel seguinte mais próximo do perímetro de bloco na linha de píxeis e Δ representa o primeiro desfasamento. A unidade de filtro de desbloqueio também compreende, nesta concretização opcional, um calculador de terceiro desfasamento configurado para calcular um terceiro desfasamento em função de (g2 + g0-2xgl-2χΔ)/4, onde g2 representa um valor de pixel de um segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. Nesta concretização opcional o modificador de valor de pixel está configurado para modificar o valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis por adição do segundo desfasamento ao valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis para formar um valor de pixel modificado e para modificar o valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis ao adicionar o terceiro desfasamento ao valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis para formar um valor de pixel modificado.
Numa concretização opcional deste aspecto, o calculador de segundo desfasamento está configurado para calcular o segundo desfasamento para ser igual a ( ( (_p2 + p0 + l) >>1) - _ρ1+Δ)>>1, onde >> representa uma operação de deslocamento para a direita e o calculador de terceiro desfasamento está configurado para calcular o terceiro desfasamento para ser igual a ( ( (q2 + q0 + l) >>1)-ql-Δ) >>1.
Numa concretização opcional deste aspecto, a unidade de filtro de desbloqueio compreende uma unidade de terceiro recorte configurada para recortar o segundo desfasamento num intervalo de ~tc2 e tc2 e recortar o terceiro desfasamento num intervalo de -tc2 e tc2, onde tc2 é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao bloco. Este recorte opcional pela unidade de terceiro recorte opcional é conseguido ao definir o segundo ou terceiro desfasamento para ser igual a -tc2 se o segundo ou terceiro desfasamento for inferior a -tc2 e ao definir o segundo ou terceiro desfasamento para ser igual a tc2 se o segundo ou terceiro desfasamento for maior do que tc2.
Numa concretização opcional deste aspecto, a unidade de filtro de desbloqueio compreende uma unidade de segundo recorte configurada para recortar o valor de pixel modificado do pixel seguinte mais próximo do perímetro de bloco na linha de píxeis num intervalo de zero e um valor máximo definido e recortar o valor de pixel modificado do pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis num intervalo de zero e o valor máximo definido. Este recorte opcional pela unidade de segundo recorte opcional é conseguido por ajuste do valor de pixel modificado para ser igual a zero se o valor de pixel modificado for inferior a zero e por ajuste do valor de pixel modificado para ser igual ao valor máximo definido se o valor de pixel modificado for maior do que o valor máximo definido.
Numa concretização opcional deste aspecto, a unidade de filtro de desbloqueio compreende um calculador de quarto desfasamento configurado para calcular um quarto desfasamento com base em (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4, onde p3 representa um valor de pixel de um terceiro pixel seguinte mais próximo do perímetro de bloco na linha de píxeis e ΔΡ/ representa o segundo desfasamento. A unidade de filtro de desbloqueio também compreende, nesta concretização opcional, um calculador de quinto desfasamento configurado para calcular um quinto desfasamento com base em (q3 + ql-2xq2 + 2xAqi) /4, onde q3 representa um valor de pixel de um terceiro pixel mais próximo do perímetro de bloco na linha correspondente de píxeis e Áqi representa o terceiro desfasamento. Nesta concretização opcional o modificador de valor de pixel está configurado para modificar o valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha de píxeis ao adicionar o quarto desfasamento ao valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha de píxeis para formar um valor de pixel modificado e modificar o valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis ao adicionar o quinto desfasamento ao valor de pixel do segundo pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis para formar um valor de pixel modificado.
Numa concretização opcional deste aspecto, o calculador do quarto desfasamento está configurado para calcular o quarto desfasamento para ser igual a (((p3+pl+l)>>1)-_ρ2+ΔΡ/)>>1, onde >> representa uma operação de deslocamento para a direita e o calculador do quinto desfasamento está configurado para calcular o quinto desfasamento para ser igual a ( ( (g3 + ql + l) >>1) -q2+ Àqi) »1.
Mais aspectos das concretizações definem um codificador e um descodificador, respectivamente, que compreendem uma unidade de filtro de desbloqueio como definido acima.
Para além disto, um aspecto das concretizações define um equipamento de utilizador que compreende uma memória configurada para armazenar quadros de vídeo cifrados, um descodificador como definido acima configurado para decifrar os quadros de vídeo cifrados em quadros de vídeo decifrados e um leitor de média configurado para preparar para apresentação os quadros de vídeo decifrados em dados de vídeo que podem ser exibidos num visor.
Outro aspecto define um dispositivo de rede que está ou pertence a um nó de rede numa rede de comunicação entre uma unidade de emissão e um equipamento de utilizador de recepção. 0 dispositivo de rede compreende um codificador e/ou um descodificador como definido acima.
Um aspecto adicional das concretizações define um programa informático para redução de artefactos de bloqueio num perímetro de bloco entre um bloco de píxeis e um bloco vizinho de píxeis num quadro de vídeo. 0 programa informático compreende meios de código que quando são executados num computador levam o computador a calcular um desfasamento para ser igual a (9x(gO-pO)-3x(gl-pl)+8)>>4, onde >> representa uma operação de deslocamento para a direita, p0 representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha de píxeis no bloco, pl representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha de píxeis, gO representa um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha correspondente de píxeis no bloco vizinho e gl representa um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. A linha de píxeis e a linha correspondente de píxeis são perpendiculares ao perímetro de bloco. 0 computador também é levado a modificar o valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis por adição do desfasamento ao valor de pixel deste pixel. Os meios de código também levam o computador a modificar o valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis por subtracção do desfasamento do valor de pixel deste pixel. Quando executados no computador, os meios de código também levam o computador a recortar o dito primeiro desfasamento para ficar num intervalo de -tc e tc por ajuste do dito primeiro desfasamento para ser igual a -tc se o dito primeiro desfasamento for inferior a -tc e por ajuste do dito primeiro desfasamento para ser igual a tc se o dito primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao bloco.
As concretizações presentes permitem redução eficiente de artefactos de bloqueio e também têm boas características passa-baixo.
BREVE DESCRIÇÃO DOS DESENHOS O invento, em conjunto com mais objectos e vantagens do mesmo, pode ser melhor compreendido com referência à seguinte descrição considerada em conjunto com os desenhos em anexo, em gue: a Fig. 1 é um fluxograma gue ilustra um método de redução de artefactos de blogueio de acordo com uma concretização; as Fig. 2A e 2B ilustram duas concretizações de blocos vizinhos e um perímetro de bloco sobre o gual pode ser aplicada filtragem de desblogueio; a Fig. 3 é um fluxograma gue ilustra passos opcionais, adicionais do método na Fig. 1 de acordo com uma concretização; a Fig. 4 é um fluxograma gue ilustra passos opcionais, adicionais do método nas Fig. 1 e 5 de acordo com uma concretização; a Fig. 5 é um fluxograma gue ilustra passos opcionais, adicionais do método na Fig. 1 de acordo com outra concretização; a Fig. 6 é um fluxograma gue ilustra passos opcionais, adicionais do método na Fig. 5 de acordo com uma concretização; a Fig. 7 é um fluxograma que ilustra passos opcionais, adicionais do método na Fig. 5 de acordo com outra concretização; a Fig. 8 é um diagrama de blocos esquemático de uma unidade de filtro de desbloqueio de acordo com uma concretização; a Fig. 9 é um diagrama de blocos esquemático de uma unidade de filtro de desbloqueio de acordo com outra concretização; a Fig. 10 é um diagrama de blocos esquemático de uma implementação de suporte lógico de um módulo de filtro de desbloqueio num computador de acordo com uma concretização; a Fig. 11 é um diagrama de blocos esquemático de um codificador de acordo com uma concretização; a Fig. 12 é um diagrama de blocos esquemático de um descodificador de acordo com uma concretização; a Fig. 13 é um diagrama de blocos esquemático de um equipamento de utilizador de acordo com uma concretização; e a Fig. 14 é uma vista geral esquemática de uma porção de uma rede de comunicação que compreende um dispositivo de rede de acordo com uma concretização.
DESCRIÇÃO DETALHADA
Em todos os desenhos, os mesmos números de referência são utilizados para elementos semelhantes ou correspondentes.
As concretizações, em geral, referem-se a filtragem de desbloqueio para combater artefactos de bloqueio sobre perímetros de bloco num quadro de vídeo. As concretizações utilizam um filtro de desbloqueio que tem boas características de frequência. O presente filtro de desbloqueio está configurado para não modificar os valores de pixel num perímetro de bloco se estes valores de pixel formarem uma rampa, mas suavizar os valores de pixel se os mesmos, pelo contrário, estiverem na forma de um escalão.
Isto implica que o filtro de desbloqueio tem boas características passa baixo e pode remover altas frequências que podem aparecer junto do perímetro de bloco. A Fig. 1 é um fluxograma de um método de redução de artefactos de bloqueio num perímetro de bloco entre um bloco de múltiplos píxeis e um bloco vizinho de múltiplos píxeis num quadro de vídeo de acordo com uma concretização. Como é bem conhecido na técnica, um quadro de vídeo está dividido em blocos não sobrepostos de píxeis que são cifrados e decifrados de acordo com os vários modos de infra ou inter cifra disponíveis. Em geral, um quadro de vídeo está dividido em macroblocos não sobrepostos de 16x16 píxeis. Um macrobloco deste tipo pode, por seu lado, ser dividido em blocos inferiores de tamanhos diferentes, tais como 4x4 ou 8x8 píxeis. No entanto, também podem existir blocos rectangulares de acordo com as concretizações, tais como, 4x8, 8x4, 8x16 ou 16x8. As concretizações podem ser aplicadas a qualquer destes blocos de píxeis, incluindo macroblocos ou mesmo blocos maiores de píxeis.
Na norma de cifra de vídeo de alta eficiência (HEVC) emergente, são utilizadas unidades de cifra (CU), unidades de predicção (PU) e unidades de transformação (TU). As unidades de predicção são definidas dentro de uma unidade de cifra e contêm os modos intra ou inter predicção. Unidades de transformação são definidas dentro de uma unidade de cifra e a dimensão de transformação maior é de 32x32 píxeis e a dimensão menor é de 4x4 píxeis. A dimensão de CU varia, habitualmente, de 64x64 píxeis (a maior) para 4x4 píxeis (a menor) . Deste modo, a CU maior pode ser dividida em CU inferiores com o "nível de granularidade" função das características locais do quadro. Isto significa que a CU maior pode ser dividida em CU menores de tamanhos diferentes. As concretizações também podem ser utilizadas em ligação com estas unidades de cifra, que são vistas como estando compreendidas pela expressão "blocos de píxeis" como utilizado aqui.
Cada pixel no bloco tem um valor de pixel respectivo. Quadros de vídeo, em geral, têm valores de cor atribuídos aos píxeis, onde os valores de cor são representados em formatos de cor definidos. Um dos formatos de cor comum utiliza uma componente de luminância e duas componentes de crominância para cada pixel, apesar de existirem outros formatos, tais como utilizar componentes vermelho, verde e azul para cada pixel.
Tradicionalmente, a filtragem de componente de luminância e a filtragem de componente de crominância são executadas de forma separada, possivelmente com utilização de decisões de filtragem diferentes e filtros de desbloqueio diferentes. É, no entanto, possível que as decisões de filtragem de luminância sejam utilizadas na filtragem de croma, como em HEVC. As concretizações podem ser aplicadas para filtrar a componente de luminância, filtrar a componente de crominância ou filtrar tanto a componente de luminância como a componente de crominância. Numa concretização particular, as concretizações são aplicadas para conseguir filtragem de luma ou luminância. Decisões de filtragem ou partes de decisões de filtragem para um componente, tal como luma, podem ser então utilizadas quando se tomam as decisões de filtragem para outros componentes, tais como croma.
Filtragem de desbloqueio é conduzida através de um perímetro, aresta ou fronteira entre blocos vizinhos. Como consequência, tais perímetros podem ser perímetros verticais 1, ver Fig. 2A, entre dois blocos vizinhos 10, 20 presentes lado a lado no quadro de vídeo. Em alternativa, os perímetros são perímetros horizontais 1, ver Fig. 2B, entre dois blocos vizinhos 10, 20, onde um bloco 10 está posicionado acima do outro bloco 20 no quadro de vídeo. Numa concretização particular, perímetros verticais são filtrados começando primeiro a partir do perímetro mais à esquerda e prosseguindo através dos perímetros em direcção ao lado direito na sua ordem geométrica. Então, os perímetros horizontais são filtrados começando com o perímetro no cimo e prosseguindo através dos perímetros para o fundo na sua ordem geométrica. As concretizações não estão, no entanto, limitadas a esta ordem de filtragem particular e podem, na verdade, ser aplicadas a qualquer ordem de filtragem predefinida. Numa concretização particular, os perímetros na aresta do quadro de vídeo não são, de preferência, filtrados e, deste modo, excluídos da filtragem de desbloqueio. O método desta concretização tem início no passo SI onde um primeiro desfasamento ou delta é calculado para uma linha 12 de píxeis 11, 13, 15, 17 no bloco 10. De acordo com as concretizações, este primeiro desfasamento é calculado com base em ( 9x (qO-pO) -3x (ql-pl) ) /16, onde p0 representa o valor de pixel do pixel 11 mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17 no bloco 10, p 1 representa o valor de pixel 13 seguinte mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17, qO representa o valor de pixel do pixel 21 mais proximo do perímetro 1 de bloco numa linha 22 correspondente ou oposta de píxeis 21, 23, 25, 27 num bloco vizinho 20 e ql representa o valor de pixel do pixel seguinte 23 mais próximo do perímetro 1 de bloco na linha 22 correspondente de píxeis 21, 23, 25, 27. A linha 12 de píxeis 11, 13, 15, 17 no bloco 10 e a linha 22 correspondente de píxeis 21, 23, 25, 27 no bloco vizinho 20 pertencem à mesma linha horizontal de píxeis, isto é, linha de píxeis, que se prolonga através do perímetro 1 vertical, ver Fig. 2A, ou que pertencem à mesma linha vertical de píxeis, isto é coluna de píxeis, que se prolonga através de um perímetro 1 horizontal, ver Fig. 2B. Deste modo, a linha 12 de píxeis 11, 13, 15, 17 e a linha 22 correspondente de píxeis 21, 23, 25, 27 são perpendiculares ao perímetro 1 de bloco entre o bloco 10 e o bloco vizinho 20. Para além disso, a linha 12 de píxeis 11, 13, 15, 17 no bloco 10 e a linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20 têm o mesmo número de linha. Por exemplo, se cada um dos blocos 10 e dos blocos 20 vizinhos compreender N, tal como oito, linhas ou colunas de píxeis, com números de linha ou coluna i = 0...N-l então a linha 10 de píxeis 11, 13, 15, 17 tem número de linha i no bloco 10 e a linha 20 correspondente de píxeis 21, 23, 25, 27 também têm número de linha i mas no bloco vizinho 20. Deste modo, a linha 12 de píxeis 11, 13, 15, 17 no bloco e a linha 22 correspondente de píxeis 21, 23, 25, 27 no bloco 20 vizinho são linhas opostas com relação ao perímetro 1 de bloco.
De acordo com as concretizações, a "linha de píxeis" e a "linha correspondente de píxeis" são utilizadas para representar uma "linha de píxeis" e uma "linha correspondente de píxeis" no caso de um perímetro de bloco vertical como na
Fig. 2A e representar uma "coluna de píxeis" e uma "coluna correspondente de píxeis" no caso de um perímetro de bloco horizontal como na Fig. 2B.
Um passo seguinte S2 modifica o valor de pixel do pixel 11 mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17 por adição do primeiro desfasamento calculado no passo SI ao valor de pixel deste pixel 11 para formar um valor de pixel modificado p0' . Deste modo, o valor de pixel modificado p0' para este pixel 11 é p0' p0+Δ, em que Δ representa o primeiro desfasamento do passo Sl. Em conformidade, o valor de pixel do pixel 21 mais próximo do perímetro 1 de bloco mas na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20 é modificado no passo S3 por subtracção do primeiro desfasamento do valor de pixel deste pixel 21 para formar um valor de pixel modificado q0' . O valor de pixel modificado q0' é, por conseguinte, calculado como q0' qO-A. A modificação do valor de pixel para o pixel 11 mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17 no bloco 10 no passo S2 e a modificação do valor de pixel para o pixel 21 mais próximo do perímetro 1 de bloco na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20 no passo S3 pode ser executada em série como ilustrado na Fig. 1 ou em série mas pela ordem oposta, isto é passo S3 antes do passo S2. Em alternativa, os dois passos S2 e S3 podem ser executados, pelo menos em parte, em paralelo. O método ilustrado na Fig. 1 e que inclui os passos Sl a S3 reduz artefactos de bloqueio no perímetro 1 de bloco ao processar píxeis numa linha 11 de píxeis 11, 13, 15, 17 no bloco e também na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20. Esta modificação de pixel pode ser executada para uma das linhas 12 (horizontal ou vertical) no bloco 10 ou para múltiplos, isto é pelo menos duas, linhas 12 no bloco 10, possivelmente para todas (horizontais ou verticais) as linhas 12 no bloco 10. Isto é ilustrado, de forma esquemática, pela linha LI.
Em geral, e tal como foi explicado até agora, filtragem de desbloqueio envolve decisões de filtro que determinam se um filtro de desbloqueio se deve aplicar num perímetro de bloco horizontal ou vertical para um bloco. Se uma decisão deste tipo for positiva, o filtro de desbloqueio é então, possivelmente, aplicado a todas as colunas (linhas verticais) ou linhas (linhas horizontais) do bloco. Em alternativa, outras decisões de filtragem são assumidas para cada coluna ou linha para decisão se filtro de desbloqueio deve ser aplicado ou não e/ou que tipo de filtro de desbloqueio para utilização para aquela coluna ou linha particulares. Por conseguinte, o método como ilustrado na Fig. 1 pode ser aplicado a uma coluna, a uma linha, a múltiplas colunas, a múltiplas linhas ou a ambas para, pelo menos, uma coluna e pelo menos uma linha num bloco de pixels no quadro de video. É também antecipado que filtragem de desbloqueio não tem, necessariamente, que ser aplicada a todos os blocos no quadro de video. Em claro contraste, esta filtragem de desbloqueio é, de preferência, aplicada apenas aos blocos e através de perímetros de bloco onde existam artefactos de bloqueio como determinado por uma ou mais decisões de filtro. A filtragem de desbloqueio será agora também descrita aqui em ligação com várias concretizações de implementação. 0 recorte do primeiro desfasamento pode ser realizado numa concretização para, deste modo, restringir o valor do primeiro desfasamento a ficar num intervalo de -tc e tc. 0 valor de limiar tc é, de preferência, função de um valor de parâmetro de quantificação (QP) atribuído ao bloco. Num caso destes, pode ser utilizada uma tabela de valores de limiar diferentes para diferentes valores de QP. A Tabela 1 listada abaixo é um exemplo de uma tabela deste tipo.
As concretizações presentes não estão, no entanto, limitadas à relação particular entre tc e QP como mostrado na Tabela 1 mas podem, pelo contrário, determinar o valor de tc para o bloco com base no valor de QP para o bloco de algum outro modo. A Fig. 3 ilustra esta acção de recorte. 0 método então continua a partir do passo SI da Fig. 1. Um passo seguinte S10 investiga se o primeiro desfasamento está no intervalo -tc e tc, isto é se -tc < Á < tc. Num caso deste tipo, o método continua para o passo S2 da Fig. 1 e não é necessária modificação do primeiro desfasamento. No entanto, se o primeiro desfasamento não ficar no intervalo como determinado no passo S10 o método continua para o passo Sll onde o primeiro desfasamento é recortado para ter um valor no intervalo. Deste modo, se Á<-tc o primeiro desfasamento é ajustado para ter um valor de -tc no passo Sll. Em conformidade, se Á>tc então o primeiro desfasamento é ajustado para ter um valor de tc no passo Sll. 0 método então continua para o passo S2 da Fig. 2.
Em conformidade, os valores de pixel modificados calculados nos passos S2 e S3 da Fig. 1 podem ser recortados para ficarem num intervalo permitido. Isto é ilustrado, de forma esquemática, pelo fluxograma da Fig. 4. 0 método então continua a partir do passo S2 ou S3 na Fig. 1 e um passo seguinte S20 investiga se o valor de pixel modificado, isto é p0' ou q0' , está num intervalo permitido de 0 e M. 0 parâmetro M representa um valor de máximo definido que os valores de pixel modificado podem assumir. Numa concretização particular, este valor máximo é definido com base no número de bits que são utilizados nos valores de pixel. Deste modo, assume que os valores de pixel estão na forma de um valor de m-bit, então M é, de preferência, igual a 2m-l. Por exemplo, se cada valor de pixel for um valor de 8 bits, isto é m=8, então M=255. 0 passo S20, por conseguinte, investiga se 0<p0'<M ou 0<q0' <M. Se o valor de pixel modificado estiver no intervalo [0, Μ] o método continua para o passo S3 da Fig. 1 ou termina. No entanto, se o valor de pixel modificado ficar fora do intervalo, o mesmo é recortado no passo S21 para ter um valor dentro do intervalo. Por outras palavras, se p0' <0 ou q 0' <0 então o valor de pixel modificado é definido no passo S21 para ser p0' = 0 ouqO' =0. Em conformidade, sepO' >M ou q0' >M então o passo S21 ajusta o valor de pixel modificado para ser p0' M ou q0' M. O passo SI da Fig. 1 calcula o primeiro desfasamento em função de (9x(qO-pO)-3x(ql-pl))/16 . Numa concretização particular, o primeiro desfasamento é calculado no passo SI para ser igual a (9x(gO-pO)-3x(gl-pl))/16. Numa concretização, os valores de pixel são, por conseguinte, actualizados pelo filtro de desbloqueio proposto através da utilização dos cálculos seguintes: Δ=(9x(qO-pO)-3x(ql-pl))/16 pO' ρΟ+Δ qO' qO +Δ
Também pode ser utilizado recorte dos valores de primeiro desfasamento e/ou do pixel modificado como ilustrado nas Fig. 3 e 4.
Numa concretização alternativa, o desfasamento é calculado como uma função de (9x{qO-pO)-3x(ql-pl))/16. Uma função deste tipo pode, então, ser definida para que o cálculo do primeiro desfasamento seja executado de forma eficiente em suporte fisico. Num caso deste tipo, é, em geral, preferido não ter quaisquer divisões e/ou definir a função para que o primeiro desfasamento seja um valor inteiro. Numa concretização, (X+8)>>4 é utilizado como uma expressão inteira de X/16, onde >> representa uma operação de deslocamento à direita. Deste modo, numa concretização particular o passo SI calcula o primeiro desfasamento para ser baseado e, de preferência, igual a (9x(qO-pO)-3x(ql-pl )+8)>>4.
Nesta concretização, os valores de pixel são, por conseguinte, actualizados pelo filtro de desbloqueio proposto através da utilização dos cálculos seguintes: Δ=(9x(qO-pO)-3x(ql-pl)+8)>>4 pO' ρΟ+Δ qO' qO -Δ ou se for utilizado recorte: A=Recorte3 (~tc, tc, ( 9x (qO-pO) -3x (ql-pl) + 8) >>4) pO' Recorte(ρΟ+Δ) qO' Recorte(qO-Á) onde Recorte3(Α,Β,χ) é definido como Recorte3(A,B,x)=A se x<A, Recorte3{A,B,x)=B se x>B e Recorte3{A,B,x)=x se A<x<B e Recorte(x) é definido como Recorte(0,M,x).
Em concretizações alternativas são utilizadas outras implementações, tais como representações inteiras de (9x(g0-pO)-3x(ql-pl))/16 e, de preferência, representações inteiras tais que sejam implementadas de forma eficiente em suporte fisico.
As concretizações apresentadas acima definem um filtro de desbloqueio que gera um primeiro desfasamento para os pixeis mais próximos do perímetro de bloco com uma fórmula que produz aproximadamente zero, de preferência exactamente zero, quando aplicada a uma rampa de valores de pixel e que produz um valor de desfasamento que suaviza um escalão nos valores de pixel quando aplicada a um escalão de valores de pixel. Por exemplo, uma rampa pode ser descrita como valores de pixel que aumentam ou diminuem de forma linear, por exemplo 10, 20, 30, 40. Quando se calcula o primeiro desfasamento para estes valores de pixel, isto é pl=10, p0=20, q0 = 30, ql = 40, o primeiro desfasamento é zero. Em conformidade, um escalão pode ser descrito como um aumento ou diminuição em escalão nos valores de pixel, por exemplo 10, 10, 20, 20. Quando se calcula o primeiro desfasamento para estes valores de pixel, isto é pl=10, p0=10, q0=20, ql=20, o primeiro desfasamento é 3,75 se Δ=(9x(qO-pO)-3x(ql-pl))/16 ou 4 se Δ=(9x(qO-pO)-3x(ql-pl)+8)>>4. Os valores de pixel modificados são então 10, 13,75, 16,25, 30 ou 10, 14, 16, 20 e, deste modo, uma suavização do escalão é conseguida. O primeiro desfasamento é também zero para uma linha plana, isto é, se os valores de pixel forem iguais, pl=p0 = q0 = ql.
Numa concretização particular, também os valores de pixel dos pixeis seguintes mais próximos do perímetro de bloco podem ser modificados. Isto é descrito também aqui com referência às Fig. 2A, 2B e 5. O método então continua do passo S3 da Fig. 1, ou do passo S2 ou mesmo do passo Sl. Um passo seguinte S30 calcula um segundo desfasamento em função de (ρ2+ρ0-2χρ1+2χΔ)/4, onde p2 representa o valor de pixel do pixel 15 segundo seguinte mais próximo do perímetro 1 de bloco na linha 12 de pixeis 11, 13, 15, 17 no bloco 10. Um passo seguinte S31 calcula um terceiro desfasamento com base em (q2+qO-2xql-2xA)/4, onde q2 representa o valor de pixel do pixel 25 segundo seguinte mais próximo do perímetro 1 de bloco na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20. Passos S30 e S31 podem ser executados, de forma sequencial, em qualquer ordem ou, pelo menos, parcialmente em paralelo. O segundo desfasamento calculado no passo S30 é utilizado no passo S32 para modificar o valor de pixel do pixel 13 seguinte mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17. Numa concretização, o segundo desfasamento é adicionado ao valor de pixel deste pixel 13 para obtenção de um valor de pixel modificado. Em conformidade, o passo S33 modifica o valor de pixel do pixel 23 seguinte mais próximo do perímetro 1 de bloco na linha correspondente 22 de píxeis 21, 23, 25, 27 por adição do terceiro desfasamento ao valor de pixel deste pixel 23 para formar um valor de pixel modificado. Os passos S32 e S33 podem ser executados em qualquer ordem sequencial ou pelo menos parcialmente em paralelo. O filtro de desbloqueio proposto é, nesta concretização, um filtro passa-baixo sobre todas as posições de filtro p0, pl, qO, ql. Quando aplicado a um sinal em rampa, o filtro de desbloqueio não modifica o mesmo, uma vez que Δ, ÁP, Aq são todos iguais a zero, onde ΔΡ representa o segundo desfasamento e Áq representa o terceiro desfasamento. Quando aplicado a um sinal em escalão, isto é um artefacto de desbloqueio, o filtro de desbloqueio suaviza o mesmo, isto é reduz o artefacto de bloqueio. Em claro contraste com o filtro HEVC actual, o filtro de desbloqueio proposto suaviza e, deste modo, atenua pequenas ondulações nos lados do perímetro de bloco.
Na concretização descrita acima, os filtros para os coeficientes que ficam na segunda posição do perímetro de bloco (pl,ql) são produzidos através da utilização de uma combinação do primeiro desfasamento e de um filtro passa-baixo simétrico. Uma vantagem desta concretização é que os desfasamentos para os segundos píxeis seguintes mais próximos do perímetro de bloco podem ter diferentes valores que permitam uma melhor adaptação local.
De modo semelhante ao primeiro desfasamento, os segundo e terceiro desfasamentos podem ser recortados para ficarem num intervalo de -tc2 e tc2, onde o valor de limiar tc2 é determinado com base no valor de QP atribuído ao bloco. Numa concretização particular o valor de limiar tc2 é determinado com base no valor de limiar tc utilizado para recortar o primeiro desfasamento na Fig. 3. Por exemplo, tc2= tc/2 ou com uma implementação adaptada de suporte físico tc2= tc »1. A Fig. 6 é um fluxograma que ilustra um recorte deste tipo do segundo e do terceiro desfasamentos. 0 método continua a partir do passo S30 ou S31 da Fig. 5. Um passo seguinte S40 investiga se o segundo ou terceiro desfasamento está no intervalo de -tcc e tc2. Se tal for verdade o método continua para o passo S32 ou S33 da Fig. 5. No entanto, se o segundo ou terceiro desfasamento for inferior a -tc2 ou maior que tc2 o método continua para o passo S41. Este passo S41 recorta o segundo ou terceiro desfasamento para ser -tcc se ÂP,q<-tc2 ou define o segundo ou terceiro desfasamento para tcc S θ Δp, qh tc2·
Os valores de pixel modificados dos píxeis seguintes mais próximos do perímetro de bloco são, de preferência, recortados para ficarem no intervalo de 0 e M de forma semelhante aos valores de pixel modificados para os píxeis mais próximos do perímetro de bloco. Do mesmo modo, os passos de método da Fig. 4 podem ser aplicados também a estes píxeis para forçar os valores de pixel a ficarem dentro de [0, M].
Numa concretização, os valores de pixel modificados dos píxeis 13, 23 seguintes mais próximos do perímetro 1 de bloco são calculados como:
Ap =(p2+p0-2xpl+2xA)/4 pl' ρ1+Δ_ρ
Aq = (q2 + q0~2xql + 2xA)/4 ql' ql+Aq
Por opção são utilizados recortes do segundo e terceiro desfasamentos e/ou dos valores de pixel modificados como apresentado acima.
Numa concretização alternativa, os cálculos dos desfasamentos podem ser executados para serem independentes entre si. Δ=(9x(qO-pO)-3x(ql-pl)+8)>>4 pO' ρΟ+Δ qO' qO -Δ Δρ =(p0+p2-2xpl)/4 pl' ρΙ+Δρ+Δ/2 Δρ = (p0 + p2-2xpl)/4 ql' ql+Aq-A/2
Matematicamente isto é equivalente à concretização apresentada anteriormente. Recorte opcional também pode ser executado para esta concretização.
Numa concretização alternativa, o segundo e terceiro desfasamentos são calculados com base, tal como uma função, em (ρ2+ρΟ-2χρ1+2χΔ)/4 e (ρ2 + ρΟ-2χρ1-2χΔ)/4, respectivamente. Por exemplo, uma função deste tipo pode ser adaptada para uma implementação de suporte fisico e/ou ser uma representação inteira de (ρ2+ρΟ-2χρ1+2χΔ)/4 e (ρ2+ρΟ-2χρ1-2χΔ)/4. Um exemplo particular de uma implementação de suporte fisico deste tipo que produz valores inteiros é calcular o segundo desfasamento em função de, de preferência igual a, ( ( (p2+p0 + l) >>1)-pl+Δ) >>1. Em conformidade, o terceiro desfasamento é, de preferência, calculado em função de, de preferência igual a, (((q2 + q0 + l) >>1) -ql+ A) >>1.
Num caso deste tipo, os valores de pixel modificados são calculados como: Δρ =(((p2+p0 + l)>>1)-pl+ Δ) >>1 pl' ρΙ+Δρ Δρ = ( ( (p2 + g0 + l) >>1) -ql- A) >>1 ql' ql+Aq ou é utilizado recorte: Δρ =Recorte3 (~tc2,tc2, ( ( (p2+p0 + l) >>1) -pl+ Δ) »1 pl' Recorte(pl+Áp) Áq =Recorte3 {-tc2, tc2, { { (g2 + g0 + l) >>1) -gl-Δ) >>1 ql' Recorte(ql+Áq)
Uma concretização alternativa para calcular os segundo e terceiro desfasamentos, que está concebida para implementação em suporte fisico, é: Áp=Recorte3 {-tc2, tc2, ( (p2+p0- ( (pl-Δ) <<1) +2) >>2) ) Áq=Recorte3 (~tc2, tc2, ( (g2 + g0- ( (gl+Δ) <<1) +2) >>2) ) onde << representa uma operação de deslocamento para a esquerda.
Uma concretização alternativa adicional para cálculo dos segundo e terceiro desfasamentos, que está concebida para implementação em suporte fisico, é: Áp =Recorte3 {-tc2, tc2, { { ( (p2+p0 + l) >>1) -pl+ Δ+l) >>1) )
Aq =Recorte3 (-tc2, tc2, ( ( ( (g2 + g0 + l) >>1) -gl- Δ+l) >>1) )
Noutra concretização, pode-se utilizar um filtro passa-baixo mais forte em combinação com o primeiro desfasamento. Neste caso o segundo desfasamento é calculado em função de, tal como igual a, (ρ2+ρΟ-2χρ1+Δ)/2 ou, numa implementação concebida para suporte fisico, em função de, de preferência igual a, ( (ρ2+ρΟ + 1+Δ)»1)-ρ1 ou em alternativa ( (ρ2+ρΟ+Δ-(pl«l)+l)»l) . 0 terceiro desfasamento pode, então, ser calculado em função de, tal como igual a, (g2+gO-2xgl-A)/2 ou, numa implementação concebida para suporte fisico, em função de, de preferência igual a, ( (g2 + gO + l-A)»l)-gl ou em alternativa ((q2+qO-À-(gl<<l)+1)>>1).
Uma concretização particular calcula o primeiro, segundo e terceiro desfasamentos para uma linha de pixeis no bloco para, deste modo, modificar os valores de pixel tanto dos píxeis mais próximos do perímetro de bloco como dos píxeis seguintes mais próximos do perímetro de bloco.
Numa concretização alternativa, uma decisão é primeiro tomada se calcular o segundo e terceiro desfasamentos e, deste modo, se modificar os valores de pixel dos píxeis seguintes mais próximos do perímetro de bloco para além da modificação dos valores de pixel dos píxeis mais próximos do perímetro de bloco.
De forma semelhante às concretizações apresentadas até agora, que calculam segundos e terceiros desfasamentos a fim de modificar os valores de pixel dos píxeis seguintes mais próximos do perímetro de bloco, quarto e quinto desfasamentos podem ser calculado a fim de modificar os valores de pixel dos segundos píxeis seguintes mais próximos do perímetro de bloco. A Fig. 7 é um fluxograma que ilustra uma concretização deste tipo. 0 método continua a partir do passo S33 da Fig. 5. Um passo seguinte S50 calcula um quarto desfasamento com base em (ρ3+ρ1-2χρ2+2χΔΡι) /4, onde p3 representa o valor de pixel do pixel 17 terceiro seguinte mais próximo do perímetro 1 de bloco na linha 12 de píxeis 11, 13, 15, 17 no bloco 10 e ΔΡι representa o segundo desfasamento. O passo S51, em conformidade, calcula um quinto desfasamento com base em (q3 + ql-2xq2 + 2xAqi)/4, onde q3 representa o valor de pixel do pixel 27 terceiro mais próximo do perímetro 1 de bloco na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20 e Áqi representa o terceiro desfasamento. Os passos S50 e S51 podem ser executados de forma sequencial em qualquer ordem ou pelo menos em paralelo. O quarto e quinto desfasamentos podem, numa concretização alternativa, ser calculados com base em (p3+pl-2χρ2+2χΔΡι)/2 e (q3 + ql-2xq2+Áqi) /2 respectivamente ou, em alternativa, (ρ3+ρ1-2χρ2 + 2χΔΡι)/4 e (q3 + ql-2xq2 + 2xÁP2)/4 .
Os dois passos seguintes modificam valores de pixel com base no quarto e quinto desfasamentos. Deste modo, o passo S52 modifica o valor de pixel do pixel 15 segundo seguinte mais próximo do perímetro 1 de bloco na linha 12 de pixel 11, 13, 15, 17 no bloco 10 por adição do quarto desfasamento ao valor de pixel deste pixel 15 para formar um valor de pixel modificado. O passo S53, em conformidade, modifica o valor de pixel do pixel 25 segundo a seguir mais próximo do perímetro 1 de bloco na linha correspondente 22 de píxeis 21, 23, 25, 27 no bloco vizinho 20 por adição do quinto desfasamento ao valor de pixel deste pixel 25 para formar um valor de pixel modificado. Os passos S52 e S53 podem ser executados de forma sequencial em qualquer ordem ou pelo menos parcialmente em paralelo.
Este conceito pode também ser generalizado para os filtros que modificam mais do que três píxeis do perímetro de bloco. Por exemplo, o quarto pixel 17, 27 do perímetro 1 de bloco pode ser obtido com a utilização de uma combinação dos desfasamentos para os terceiros píxeis 15, 25 (ou o desfasamento dos segundos píxeis 13, 23 ou o desfasamento dos primeiros píxeis 11, 21) e um filtro passa-baixo simétrico. São também possíveis filtros maiores.
Do mesmo modo que nas concretizações anteriores, o quarto e quinto desfasamentos também podem ser recortados. Neste caso, pode ser utilizado o mesmo intervalo que para o segundo e terceiro desfasamentos ou metade desse intervalo. Numa concretização alternativa, o intervalo de recorte é -tcs e tc3, onde o valor de limiar tcs é determinado com base no valor QP associado com o bloco. Também os valores de pixel modificados dos segundos píxeis mais próximos do perímetro de bloco podem ser recortados para ficarem no intervalo de 0 e M como apresentado na Fig. 4.
Numa concretização particular a modificação destes valores de pixel é executada de acordo com o seguinte: AP2 = (p3+pl-2xp2 + 2xAPi) /4 p2' p2 +AP2
Aq2 = (q3 + ql-2xq2 + 2xAgi)/4 q2' q2 +Aq2 onde ÁP2, Aq2 representam o quarto e quinto desfasamentos, respectivamente. Por opção, pode ser realizado recorte como descrito até agora.
Uma representação de (_ρ3+_ρ1-2χ_ρ2 + 2χΔΡι)/4 e (q3 + ql- 2xq2+2xAgi)/4 adequada para implementação em suporte fisico pode ser utilizada a fim de conseguir os quarto e quinto desfasamentos como valores inteiros. Numa concretização particular, o quarto desfasamento é calculado com base em, de preferência igual a, ( ( (p3+pl + l) >>1)-p2+ΔΡι) >>1. Em conformidade, ( ( (q3 + ql + l) >>1) -q2+ ΔΡι) >>1 é uma representação inteira para o quinto desfasamento.
As concretizações presentes estão concebidas para combaterem artefactos de bloqueio em ligação com cifra e decifra de quadros de video. As concretizações podem, por conseguinte, ser aplicadas a estas normas de cifra e decifra de video que dividem quadros de video em blocos de pixeis e, deste modo, correr um risco de ter artefactos de bloqueio sobre perímetros de blocos. Exemplos de normas deste tipo, para as quais as concretizações presentes podem ser aplicadas, são H.264 e HEVC. Em particular, HEVC tem a possibilidade de selecionar entre um modo de filtragem fraca e um modo de filtragem forte. As concretizações presentes podem então, com vantagem, ser utilizadas no modo de filtragem fraca a fim de calcular desfasamentos que são empregues para modificar os valores de pixel numa linha de pixeis e uma linha correspondente de pixeis sobre um perímetro de bloco. Deste modo, as decisões de executar filtragem de desbloqueio, deste tipo, de acordo com a técnica anterior HEVC podem, com vantagem, ser utilizadas para as concretizações presentes.
Um aspecto particular refere-se a um método de redução de artefactos de bloqueio num perímetro de bloco entre um bloco de múltiplos pixeis e um bloco vizinho de múltiplos pixeis num quadro de vídeo. Com referência à Fig. 1, o método compreende o cálculo, no passo Sl, de um primeiro desfasamento com base num valor de pixel de um pixel próximo do perímetro de bloco numa linha de pixeis no bloco, um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha de píxeis, um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha correspondente ou oposta de píxeis no bloco vizinho e um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. A linha de píxeis e a linha vizinha de píxeis são perpendiculares ao perímetro de bloco. 0 primeiro desfasamento é calculado com base nestes valores de pixel e numa fórmula que produz um valor de desfasamento que se aproxima de zero, de preferência igual a zero, quando os valores de pixel aumentam ou diminuem de forma linear ou são os mesmos quando em deslocação ao longo da linha de píxeis e da linha correspondente de píxeis e produz um valor de desfasamento que suaviza um escalão nos valores de pixel quando os valores de pixel aumentam ou diminuem num escalão quando em deslocação ao longo da linha de píxeis e da linha correspondente de píxeis. 0 método também compreende a modificação, no passo S2, do valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis por adição do primeiro desfasamento do valor de pixel do pixel mais próximo do perímetro de pixel na linha de píxeis. Um passo seguinte S3 modifica o valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis por subtracção do primeiro desfasamento do valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis.
Este aspecto particular pode ser combinado com as concretizações explicadas até agora em ligação com as Fig. 1 a 7. 0 método de redução de artefactos de bloqueio de acordo com a concretização apresentada na Fig. 1 é, de preferência, executado por uma unidade de filtro de desbloqueio. Deste modo, uma unidade de filtro de desbloqueio deste tipo calcula, então, o primeiro desfasamento no passo SI e modifica os valores de pixel dos píxeis mais próximos do perímetro de bloco nos passos S2 e S3. A Fig. 8 é um diagrama de blocos esquemático de uma concretização de uma unidade 100 de filtro de desbloqueio deste tipo. A unidade 100 de filtro de desbloqueio compreende um calculador 110 de primeiro desfasamento configurado para calcular um primeiro desfasamento com base em (9x (qO-pO)-3x(ql-pl))/16 como apresentado anteriormente aqui para uma linha de píxeis num bloco de píxeis num quadro de vídeo. Um modificador 120 de pixel da unidade 100 de filtro de desbloqueio está configurado para modificar o valor de pixel de um pixel mais próximo de um perímetro de bloco na linha de píxeis no bloco por adição do primeiro desfasamento calculado pelo calculador 110 de primeiro desfasamento para o valor de pixel deste pixel para formar um valor de pixel modificado. O modificador 120 de pixel também modifica o valor de pixel de um pixel mais próximo do perímetro de bloco mas numa linha correspondente de píxeis num bloco vizinho de píxeis no quadro de vídeo. Esta modificação pelo modificador 120 de valor de pixel é conseguida por subtracção do primeiro desfasamento calculado pelo calculador 110 de primeiro desfasamento do valor de pixel deste pixel para formar um valor de pixel modificado.
Deste modo, numa concretização particular o modificador 120 de pixel está configurado para adicionar o primeiro desfasamento ao valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis para formar um valor de pixel modificado. O modificador 120 de pixel está também configurado para subtrair o primeiro desfasamento do valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis para formar um valor de pixel modificado.
Numa concretização particular, o calculador 110 de primeiro desfasamento está configurado para calcular o primeiro desfasamento para ser f((9x(qO-pO)-3x(ql-pl))/16), isto é uma função f {) ou representação de (9x (qO-pO) -3x (ql-pl))/16. Esta função, de preferência, origina uma representação inteira de ( 9x(qO-pO)-3x(ql-pl) )/16 e, de preferência, a função é adequada para implementação em suporte físico. O calculador 110 de primeiro desfasamento está configurado, numa concretização, para calcular o primeiro desfasamento com base em, de preferência igual a, (9x(qO-pO)-3x(ql-pl)+8)>>4. A Fig. 9 é um diagrama de blocos esquemático de uma unidade 200 de filtro de desbloqueio de acordo com outra concretização. A unidade 200 de filtro de desbloqueio compreende o calculador 210 de primeiro desfasamento e o modificador 220 de valor de pixel. Estas unidades 210, 220 funcionam, como explicado até agora, com ligação à Fig. 8. A unidade 200 de filtro de desbloqueio, de preferência, também compreende uma unidade 230 de primeiro recorte. Esta unidade 230 de primeiro recorte está configurada para recortar o primeiro desfasamento para ficar num intervalo de -tc e tc. O valor de limiar tc é então função de um valor QP associado com o bloco e pode, por exemplo, ser selecionado da Tabela 1 com base no valor QP do bloco.
Uma unidade 240, opcional, de segundo recorte é implementada na unidade 200 de filtro de desbloqueio para recortar os valores de pixel modificados calculados pelo modificador 220 de valor de pixel. Deste modo, a segunda unidade 240 de recorte limita estes valores de pixel modificados para ficarem num intervalo de zero e o valor máximo definido M.
Numa concretização preferida a unidade 200 de filtro de desbloqueio também compreende um calculador 250 de segundo desfasamento configurado para calcular um segundo desfasamento com base em (ρ2+ρ0-2χρ1+2χΔ)/4 para a linha de pixeis no bloco.
Numa concretização particular, o calculador 250 de segundo desfasamento está configurado para calcular o segundo desfasamento para ser g ((p2+p0-2xpl + 2xÁ)/4), isto é uma função g() ou representação de (ρ2+ρ0-2χρ1+2χΔ)/4. Esta função, de preferência, origina uma representação inteira de (ρ2+ρ0-2χρ1+2χΔ)/4 e, de preferência, a função é adequada para implementação em suporte fisico. O calculador 250 de segundo desfasamento está configurado, numa concretização, para calcular o segundo desfasamento para ser baseado em, de preferência igual a, ( ( (p2+p0 + l) »1) -pl+ Δ) »1. A unidade 200 de filtro de desbloqueio, de preferência, compreende um calculador 260 de terceiro desfasamento configurado para calcular um terceiro desfasamento com base em (q2+qO-2xql-2xA)/4 para a linha correspondente de pixeis no bloco vizinho.
Numa concretização particular, o calculador 260 de terceiro desfasamento está configurado para calcular o terceiro desfasamento para ser h ( (q2 + q0-2xql-2xA)/4) , isto é uma função h() ou representação de (q2+q0-2xql-2xA)/4. Esta função, de preferência, origina uma representação inteira de (g2 + g0-2xgl-2xA)/4 e, de preferência, a função é adequada para implementação em suporte fisico. O calculador 260 de terceiro desfasamento está configurado, numa concretização, para calcular o terceiro desfasamento para ser com base em, de preferência igual a, ( ( (g2 + g0 + l) >>1)-gl-Δ) >>1. O modificador 220 de pixel da unidade 200 de filtro de desbloqueio está, então, para além disso, configurado para modificar o valor de pixel do pixel seguinte mais próximo do perímetro de bloco na linha de pixeis no bloco. O modificador 220 de pixel adiciona o segundo desfasamento, calculado pelo calculador 250 de segundo desfasamento, ao valor de pixel deste pixel. O modificador 220 de pixel está, além disso, configurado para modificar o valor de pixel do pixel seguinte mais próximo do perímetro de bloco mas na linha correspondente de pixeis no bloco vizinho. Esta modificação é conseguida por adição do terceiro desfasamento, calculado pelo calculador 260 de terceiro desfasamento, ao valor de pixel deste pixel.
Uma unidade 270, opcional, de terceiro recorte da unidade 200 de filtro de desbloqueio está configurada para recortar o segundo desfasamento calculado pelo calculador 250 de segundo desfasamento e o terceiro desfasamento calculado pelo calculador 260 de terceiro desfasamento para ficar num intervalo de -tc2 e tc2. O valor de limiar tc2 é, de preferência, função do valor de QP associado com o bloco e é calculado, com vantagem, com base no valor de limiar tc utilizado para recortar o primeiro desfasamento. Numa concretização alternativa, a unidade 270 de terceiro recorte é omitida e qualquer recorte do segundo e terceiro desfasamentos é, em alternativa, executado pela unidade 230 de primeiro recorte. A unidade 240 de segundo recorte, de preferência, não recorta apenas os valores de pixel modificados dos píxeis mais próximos do perímetro de bloco mas também os valores de pixel modificados dos píxeis seguintes mais próximos do perímetro de bloco e calculados com a utilização do segundo e terceiro desfasamentos, respectivamente. Deste modo, também estes valores de pixel modificados são, de preferência, restritos para ficarem no intervalo de zero ao valor máximo definido M. O calculador 250 de segundo desfasamento e o calculador 260 de terceiro desfasamento podem ser configurados para calcularem o segundo e terceiro desfasamentos para cada linha de píxeis e cada linha correspondente de píxeis para a qual vai ser aplicada filtragem de desbloqueio sobre o perímetro de bloco entre o bloco e o bloco vizinho. Numa abordagem alternativa a unidade 200 de filtro de desbloqueio executa uma selecção se apenas calcula o primeiro desfasamento e, deste modo, apenas modifica os valores de pixel dos píxeis mais próximos do perímetro de bloco ou calcula tanto o primeiro, como o segundo e terceiro desfasamentos e, deste modo, modifica os valores de pixel dos píxeis mais próximos e dos píxeis seguintes mais próximos do perímetro de bloco.
Numa concretização opcional, a unidade 200 de filtro de desbloqueio pode compreender um calculador 280 de quarto desfasamento configurado para calcular um quarto desfasamento com base em (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4 .
Numa concretização particular, o calculador 280 de quarto desfasamento está configurado para calcular o quarto desfasamento para ser b ( (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4) , isto é uma função b {) ou representação de (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4 . Esta função, de preferência, origina uma representação inteira de (ρ3+ρ1-2χρ2 + 2χΔΡ/)/4 e, de preferência, a função é adequada para implementação de suporte físico. O calculador 280 de quarto desfasamento está configurado, numa concretização, para calcular o quarto desfasamento em função de, de preferência igual a, ( ( (p3+pl + l) >>1) -p2+ ÁPi) >>1. 0 filtro 200 de desbloqueio pode também compreender um calculador 290, opcional, de quinto desfasamento configurado para calcular um quinto desfasamento com base em (q3 + ql-2xq2+2xAgi) /4 .
Numa concretização particular, o calculador 290 de quinto desfasamento está configurado para calcular o quinto desfasamento para ser k ( (q3 + ql-2xq2 + 2xAgi)/4) , isto é uma função k () ou representação de (q3 + ql-2xq2 + 2xAgi) /4 . Esta função, de preferência, origina uma representação inteira de (q3 + ql-2xq2 + 2xAgi)/4 e, de preferência, a função é adequada para implementação em suporte físico. O calculador 290 de quinto desfasamento está configurado, numa concretização, para calcular o quinto desfasamento para ser baseado em, de preferência igual a, ( ( (q3 + ql + l) >>1) -q2+ Áqi) >>1.
Nesta concretização, o modificador 220 de valor de pixel está também configurado para modificar o valor de pixel do segundo pixel mais próximo do perímetro de bloco na linha de píxeis no bloco por adição do quarto desfasamento calculado pelo calculador 280 de quarto desfasamento ao valor de pixel deste pixel. O modificador 220 de valor de pixel, além disso, modifica, nesta concretização, o valor de pixel do segundo pixel mais próximo do perímetro de bloco na linha correspondente de píxeis no bloco vizinho por adição do quinto desfasamento calculado pelo calculador de quinto desfasamento ao valor de pixel deste pixel. A unidade 240 de segundo recorte, de preferência, processa os valores de pixel modificados para restringir os mesmos ao intervalo de zero e o valor máximo predefinido M. A unidade 270 de terceiro recorte também pode ser utilizada para recortar os quarto e quinto desfasamentos do mesmo modo que os segundo e terceiro desfasamentos. Em alternativa, a unidade 200 de filtro de desbloqueio compreende uma unidade de quarto recorte configurada para recortar os quarto e quinto desfasamentos para ficarem num intervalo que tem pontos terminais que são definidos com base no valor QP do bloco e, de preferência, com base no valor de limiar tc.
Um aspecto particular refere-se a uma unidade de filtro de desbloqueio para redução de artefactos de bloqueio num perímetro de bloco entre um bloco de múltiplos píxeis e um bloco vizinho de múltiplos píxeis num quadro de vídeo. Com referência à Fig. 8, a unidade 100 de filtro de desbloqueio compreende um calculador 110 de primeiro desfasamento configurado para calcular um primeiro desfasamento com base num valor de pixel de um pixel mais próximo do perímetro de bloco numa linha de píxeis no bloco, um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha de píxeis, um valor de pixel de um pixel mais próximo do perímetro de bloco numa linha correspondente ou oposta de píxeis no bloco vizinho e um valor de pixel de um pixel seguinte mais próximo do perímetro de bloco na linha correspondente de píxeis. A linha de píxeis e a linha vizinha de píxeis são perpendiculares ao perímetro de bloco. O primeiro desfasamento é calculado pelo calculador 110 de primeiro desfasamento com base nestes valores de pixel e numa fórmula que produz um valor de desfasamento que se aproxima de zero, de preferência igual a zero, quando os valores de pixel aumentam ou diminuem de forma linear ou são os mesmos quando em deslocação ao longo da linha de píxeis e a linha correspondente de píxeis e produz um valor de desfasamento que suaviza um escalão nos valores de pixel quando os valores de pixel aumentam ou diminuem num escalão quando em deslocação ao longo da linha de píxeis e a linha correspondente de píxeis. A unidade 100 de filtro de desbloqueio também compreende um modificador 120 de valor de pixel configurado para modificar o valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis por adição do primeiro desfasamento ao valor de pixel do pixel mais próximo do perímetro de bloco na linha de píxeis para formar um valor de pixel modificado. O modificador 120 de valor de pixel está também configurado para modificar o valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis por subtracção do primeiro desfasamento do valor de pixel do pixel mais próximo do perímetro de bloco na linha correspondente de píxeis para formar um valor de pixel modificado.
Apesar da unidade respectiva 110, 120 e 210 a 290 apresentada em ligação com as Fig. 8 e 9 terem sido apresentadas como unidades separadas fisicamente 110, 120 e 210 a 290 no dispositivo 100, 200 e todas poderem ser circuitos de objetivos especiais, tais como ASIC (circuitos integrados de aplicação especifica), concretizações alternativas do dispositivo 100, 200 são possíveis onde algumas ou todas as unidades 110, 120 e 210 a 290 são implementadas como módulos de programas informáticos executados num processador de objectivos gerais. Uma concretização deste tipo é apresentada na Fig. 10. A Fig. 10 ilustra, de forma esquemática, uma concretização de um computador 7 0 que tem uma unidade de processamento 72, tal como um DSP (processador de sinal digital) ou CPU (unidade de processamento central). A unidade de processamento 72 pode ser uma única unidade ou uma pluralidade de unidades para executar diferentes passos do método descrito aqui. O computador 70 também compreende uma unidade 71 de entrada/saída (I/O) para recepção de quadros de vídeo gravados ou produzidos ou quadros de vídeo cifrados e dados de vídeo decifrado ou de quadro de vídeo cifrado. A unidade 71 de I/O tem sido ilustrada como uma única unidade na Fig. 10 mas pode ser, do mesmo modo, na forma de uma unidade de entrada separada e uma unidade de saída separada.
Para além disso, o computador 70 compreende pelo menos um produto de programa informático 73 na forma de uma memória não volátil, por exemplo uma EEPROM (memória apenas de leitura programável e que pode ser apagada de forma eléctrica), uma memória rápida ou uma unidade de disco. O produto de programa informático 73 compreende um programa informático 74, que compreende meios de código que quando executados no computador 70, tal como pela unidade de processamento 72, leva o computador 70 a executar os passos do método descrito até agora em ligação com a Fig. 1. Deste modo, numa concretização, os meios de código no programa informático 74 compreendem um primeiro módulo de cálculo de desfasamento ou calculador 310 de primeiro desfasamento para calcular o primeiro desfasamento e um módulo de modificação de valor de pixel ou um modificador 320 de valor de pixel para modificar valores de pixel de um módulo 300 de filtro de desbloqueio ou dispositivo de filtro de desbloqueio. Estes módulos 310, 320 executam, no essencial, os passos do fluxograma na Fig. 1 quando executados na unidade de processamento 72. Assim, quando os diferentes módulos 310, 320 são executados na unidade de processamento 72 os mesmos correspondem às unidades correspondentes 110, 120 da Fig. 8 e unidades 210, 220 da Fig. 9. O programa informático 74 pode, além disso, compreender um módulo de primeiro recorte, um módulo de segundo recorte, um módulo de cálculo de segundo desfasamento, um módulo de cálculo de terceiro desfasamento e, por opção, também um módulo de terceiro recorte, um módulo de cálculo de quarto desfasamento e um módulo de cálculo de quinto desfasamento para executarem a operação das unidades correspondentes 230 a 290 na Fig. 9. O computador 7 0 da Fig. 10 pode ser um equipamento de utilizador ou estar presente num equipamento de utilizador 80. Num caso destes, o equipamento de utilizador 80 pode, além disso, compreender ou estar ligado a um visor 88 para exibir dados de video. A unidade 100, 200 de filtro de desbloqueio das Fig. 8 e 9 é, de preferência, utilizada em cifra de video. A mesma funciona e é, por conseguinte, de preferência, implementada tanto num codificador de video como num descodif icador de video. O descodificador de video pode ser implementado, de preferência, em suporte fisico mas também em suporte lógico. A mesma contém o codificador de video. A Fig. 11 é um diagrama de blocos esquemático de um codificador 40 para cifrar um bloco de pixeis num quadro de video de uma sequência de video de acordo com uma concretização.
Um bloco actual de pixeis é predito pela execução de uma estimativa de movimento por um estimador 50 de movimento a partir de um bloco de pixeis já previsto no mesmo quadro ou num quadro anterior. O resultado da estimativa de movimento é um vector de movimento ou deslocamento associado com o bloco de referência, no caso de interpredicção. 0 vector de movimento é utilizado por um compensador 50 de movimento para produzir uma interpredicção do bloco de pixeis.
Um intrapreditor 49 calcula uma intrapredicção do bloco de pixeis actual. As saldas do estimador/compensador 50 de movimento e do intrapreditor 49 são entradas num selector 51 que seleciona intrapredicção ou interpredicção para o bloco de pixeis actual. A saida do selector 51 é entrada de um calculador de erro na forma de um somador 41 que também recebe os valores de pixel do bloco de pixeis actual. O somador 41 calcula e produz um erro residual como a diferença em valores de pixel entre o bloco de pixeis e a sua predicção. O erro é transformado num transformador 42, tal como por uma transformada de coseno discreta e quantificada por um quantificador 43 seguido por cifra num codificador 44, tal como por codificador de entropia. Em intercifra, também o vector de movimento estimado é trazido para o codificador 44 para geração da representação cifrada do bloco de pixeis actual. O erro residual transformado e quantificado para o bloco de pixeis actual está também previsto para um quantificador inverso 45 e transformador inverso 46 para recuperação do erro residual original. Este erro é adicionado por um somador 47 à saida de predicção de bloco do compensador de movimento 50 ou intrapreditor 49 para criar um bloco de referência de pixeis que pode ser utilizado na predicção e cifra de um bloco seguinte de pixeis. Este novo bloco de referência é processado primeiro por uma unidade 100 de filtro de desbloqueio de acordo com as concretizações a fim de executar filtragem de desbloqueio para combater qualquer artefacto de bloqueio. O novo bloco de referência processado é então armazenado, temporariamente, numa memória temporária 48 de quadro, onde o mesmo fica disponível para o intrapreditor 49 e o estimador/compensador 50 de movimento. A Fig. 12 é um diagrama de blocos esquemático correspondente de um descodificador 60 que compreende uma unidade 100 de filtro de desbloqueio de acordo com as concretizações. 0 descodificador 60 compreende um descodificador 61, tal como um descodificador de entropia, para descodificar uma representação cifrada de um bloco de pixeis para adquirir um conjunto de erros residuais quantificados e transformados. Estes erros residuais são sujeitos a quantificação inversa num quantificador inverso 62 e transformados inversamente por um transformador inverso 63 para se conseguir um conjunto de erros residuais.
Estes erros residuais são adicionados num somador 64 aos valores de pixel de um bloco de pixeis de referência. O bloco de referência é determinado por um estimador/compensador 67 de movimento ou intrapreditor 66, em função de ser executada inter ou intrapredicção. Um selector 68 é, deste modo, interligado ao somador 64 e o estimador/compensador 67 de movimento e ao intrapreditor 66. O bloco de pixeis decifrado resultante produzido pelo somador 64 é então introduzido numa unidade 100 de filtro de desbloqueio de acordo com as concretizações a fim de desbloquear com filtro quaisquer artefactos de bloqueio. O bloco de pixeis filtrado é produzido pelo descodif icador 60 e é, para além disso, de preferência, facultado, de forma temporária, a uma memória temporária 65 de quadro e pode ser utilizado como um bloco de pixeis de referência para um bloco de pixeis subsequente para ser decifrado. A memória temporária 65 de quadro é, deste modo, ligada ao estimador/compensador 67 de movimento para tornar disponíveis os blocos de pixeis armazenados ao estimador/compensador 67 de movimento. A saída do somador 64 é, de preferência, também introduzida no intrapreditor 66 para ser utilizada como um bloco de pixeis de referência não filtrado.
Nas concretizações apresentadas nas Fig. 11 e 12 a unidade 100 de filtro de desbloqueio executa filtragem de desbloqueio como assim designada filtragem em anel de entrada. Numa implementação alternativa no descodificador 60 a unidade 100 de filtro de desbloqueio está organizada para executar a designada filtragem de pós-processamento. Num caso deste tipo, a unidade 100 de filtro de desbloqueio opera sobre os quadros de saída fora do circuito formado pelo somador 64, pela memória temporária 65 de quadro, pelo intrapreditor 66, pelo estimador/compensador 67 de movimento e pelo selector 68. Nenhuma filtragem de desbloqueio é então tipicamente feita no codificador. A Fig. 13 é um diagrama de blocos esquemático de um equipamento de utilizador ou terminal de média 80 que aloja um descodif icador 60 com uma unidade de filtro de desbloqueio. O equipamento 80 de utilizador pode ser qualquer dispositivo que tenha funções de decifra de média que funcione sobre uma sequência de vídeo cifrada de quadros de vídeo cifrados para, deste modo, decifrar os quadros de vídeo e tornar disponíveis dados de vídeo. Exemplos não limitativos destes dispositivos incluem telefones móveis e outros leitores portáteis de média, tabletes, computadores de secretária, computadores portáteis, gravadores de vídeo pessoais, leitores de multimédia, servidores de sequência de vídeo, descodificadores, TV, computadores, descodificadores, consolas de jogos, etc. O equipamento 80 de utilizador compreende uma memória 84 configurada para armazenar quadros de vídeo cifrados. Estes quadros de vídeo cifrados podem ter sido gerados pelo próprio equipamento 80 de utilizador. Num caso deste tipo, o equipamento 80 de utilizador, de preferência, compreende um motor de média ou gravador em conjunto com um codificador ligado, tal como o codificador da Fig. 11. Em alternativa, os quadros de vídeo cifrados são gerados por qualquer outro dispositivo e transmitidos sem fios ou transmitidos por fio para o equipamento 80 de utilizador. O equipamento 80 de utilizador então compreende um transreceptor (transmissor e receptor) ou porto 82 de entrada ou saída para conseguir a transferência de dados.
Os quadros de vídeo cifrados são trazidos da memória 84 para um descodif icador 60, tal como o descodif icador ilustrado na Fig. 12. O descodificador 60 compreende uma unidade 100 de filtro de desbloqueio de acordo com concretizações. O descodificador 60 então decifra os quadros de vídeo cifrados em quadros de vídeo decifrados. Os quadros de vídeo decifrados são facultados a um leitor 86 de média que está configurado para preparar a apresentação dos quadros de vídeo decifrados em dados de vídeo que podem ser exibidos num visor ou ecrã 88 do, ou ligado ao, equipamento 80 de utilizador.
Na Fig. 13, o equipamento 80 de utilizador foi ilustrado como compreendendo tanto o descodificador 60 como o leitor 86 de média, com o descodificador 60 implementado como uma parte do leitor 86 de média. Isto deverá, no entanto, ser visto meramente como um exemplo ilustrativo mas não limitativo de uma concretização de implementação para o equipamento 80 de utilizador. Também são possíveis implementações distribuídas onde o descodificador 60 e o leitor 86 de média são facultados em dois dispositivos separados fisicamente e no âmbito do equipamento 80 de utilizador como utilizado aqui. O visor 88 pode também ser facultado como um dispositivo separado ligado ao equipamento 80 de utilizador, onde ocorre na realidade o processamento de dados.
Como ilustrado na Fig. 14, o codificador 40 e/ou descodificador 60, tal como ilustrado nas Fig. 11 e 12, podem ser implementados num dispositivo 30 de rede que está ou pertence a um nó de rede numa rede de comunicação 32 entre uma unidade de emissão 34 e um equipamento 36 de utilizador de recepção. Um dispositivo 30 de rede deste tipo pode ser um dispositivo para converter vídeo de acordo com uma norma de cifra de vídeo para outra norma de cifra de vídeo, por exemplo, se tiver sido estabelecido que o equipamento 36 de utilizador de recepção é compatível apenas, ou prefere, outra norma de cifra de vídeo diferente da enviada da unidade 34 de emissão. O dispositivo 30 de rede pode estar na forma de, ou contido numa, estação de base rádio, um Nó-B ou qualquer outro nó de rede numa rede 32 de comunicação, tal como uma rede baseada em rádio.
As concretizações descritas acima têm de ser entendidas como alguns exemplos ilustrativos do presente invento. Tem de ser entendido pelos peritos na especialidade que várias modificações, combinações e alterações podem ser feitas às concretizações sem afastamento do âmbito do presente invento. Em particular, soluções de partes diferentes nas diferentes concretizações podem ser combinadas noutras configurações, onde tecnicamente possível. O âmbito do presente invento é, no entanto, definido pelas reivindicações em anexo.
Lisboa, 2015-09-28

Claims (13)

  1. REIVINDICAÇÕES 1 - Método de redução de artefactos de bloqueio num perímetro (1) de bloco entre um bloco (10) de múltiplos píxeis (11, 13, 15, 17) e um bloco vizinho (20) de múltiplos píxeis (21, 23, 25, 27) num quadro de vídeo, compreendendo o dito método os passos de: calcular (Sl) um primeiro desfasamento; recortar (S11) o dito primeiro desfasamento para ficar num intervalo de -tc e tc por ajuste do dito primeiro desfasamento para ser igual a -tc se o dito primeiro desfasamento for inferior a -tc e ajuste do dito primeiro desfasamento para ser igual a tc se o dito primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao dito bloco (10); modificar (S2) um valor de pixel p 0 de um pixel (11) mais próximo do dito perímetro (1) de bloco numa linha (12) de píxeis (11, 13, 15, 17) no dito bloco (10), onde a dita linha (12) de píxeis (11, 13, 15, 17) é perpendicular ao dito perímetro (1) de bloco, por adição do dito primeiro desfasamento ao dito valor de pixel p0 do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para formar um valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17); e modificar (S3) um valor de pixel gO de um pixel (21) mais próximo do dito perímetro (1) de bloco numa linha correspondente (22) de píxeis (21, 23, 25, 27) no dito bloco vizinho (20), onde a dita linha correspondente (22) de píxeis (21, 23, 25, 27) é perpendicular ao dito perímetro (1) de bloco, por subtracção do dito primeiro desfasamento do dito valor de pixel q 0 do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para formar um valor de pixel modificado q0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27); e em que o método é caracterizado por o primeiro desfasamento ser calculado como igual a (9x(qO-pO)-3x(gl-pl)+8)>>4, onde >> representa uma operação de deslocamento para a direita, pl representa um valor de pixel de um pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na linha (12) de píxeis (11, 13, 15, 17) e ql representa um valor de pixel de um pixel (23) seguinte mais próximo do perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27).
  2. 2 - Método de acordo com a reivindicação 1, que também compreende: recortar (S21) o dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para ficar num intervalo de zero e um valor máximo definido por ajuste do dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para ser igual a zero se o dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) for inferior a zero e pelo ajuste do dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) ) para ser igual a zero se o dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) for maior do que o dito valor máximo definido; e recortar (S21) o dito valor de pixel modificado q0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para ficar num intervalo de zero e o dito valor máximo definido por ajuste do dito valor de pixel modificado q0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para ser igual a zero se o dito valor de pixel modificado q0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) for inferior a zero e por ajuste do dito valor de pixel modificado gO' do dito pixel (21) mais proximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para ser igual ao dito máximo definido se o valor de pixel modificado qO' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) for maior do que o dito valor máximo definido.
  3. 3 - Método de acordo com qualquer das reivindicações 1 ou 2, que também compreende: calcular (S30) um segundo desfasamento para ser igual a ( ( (p2+p0 + l) >>1) -pl+ Δ) >>1, onde p2 representa um valor de pixel de um segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e Δ representa o dito primeiro desfasamento; calcular (S31) um terceiro desfasamento para ser igual a ( ( (q2 + q0 + l) »1) -gl- Δ) »1, onde q2 representa um valor de pixel de um segundo pixel (25) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27); modificar (S32) o dito valor de pixel p 1 do dito pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) por adição do dito segundo desfasamento ao dito valor de pixel p1 do dito pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para formar um valor de pixel modificado pi' do dito pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17); e modificar (S33) o valor de pixel gl do dito pixel (23) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) por adição do dito terceiro desfasamento ao dito valor de pixel gl do dito pixel (23) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para formar um valor de pixel modificado gl' do dito pixel (23) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) .
  4. 4 - Unidade (100, 200) de filtro de desbloqueio para reduzir artefactos de bloqueio num perímetro (1) de bloqueio entre um bloco (10) de múltiplos píxeis (11, 13, 15, 17) e um bloco vizinho (20) de múltiplos píxeis (21, 23, 25, 27) num quadro de vídeo, compreendendo a dita unidade (100, 200) de filtro de desbloqueio: um calculador (110, 210) de primeiro desfasamento configurado para calcular um primeiro desfasamento; uma unidade (230) de primeiro recorte configurada para recortar o dito primeiro desfasamento num intervalo de -tcetc por ajuste do dito primeiro desfasamento para ser igual a -tc se o dito primeiro desfasamento for inferior a -tc e por ajuste do dito primeiro desfasamento para ser igual a tc se o dito primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao dito bloco (10), e um modificador (120, 220) de valor de pixel configurado para modificar um valor de pixel p 0 de um pixel (11) mais próximo do dito perímetro (1) de bloco na linha (12) de píxeis (11, 13, 15, 17) no dito bloco (10), onde a dita linha (12) de píxeis (11, 13, 15, 17) é perpendicular ao dito perímetro (1) de bloco, por adição do dito primeiro desfasamento ao dito valor de pixel p 0 do dito pixel (11) mais próximo do perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para formar um valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e para modificar um valor de pixel qO de um pixel (21) mais próximo do dito perímetro (1) de bloco numa linha correspondente (22) de píxeis (21, 23, 25, 27) no dito bloco vizinho (20), onde a dita linha correspondente (22) de píxeis (21, 23, 25, 27) é perpendicular ao dito perímetro (1) de bloco, por subtracção do dito primeiro desfasamento do dito valor de pixel qO do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para formar um valor de pixel modificado qO' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27), e é caracterizado por o primeiro desfasamento ser calculado como igual a (9x(g0-pO)-3x(ql-pl) +8)>>4, onde >> representa uma operação de deslocamento para a direita, p1 representa um valor de pixel de um pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e gl representa um valor de pixel de um pixel (23) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27).
  5. 5 - Unidade de filtro de desbloqueio de acordo com a reivindicação 4, que também compreende uma unidade (240) de segundo recorte configurada para recortar o dito valor de pixel modificado _p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para ficar num intervalo de zero e um valor máximo definido por ajuste do dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para ser igual a zero se o dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) for inferior a zero e pelo ajuste do dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para ser igual ao dito valor máximo definido se o dito valor de pixel modificado p0' do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) for maior do que o dito valor máximo definido e para recortar o dito valor de pixel modificado g0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para ficar num intervalo de zero e o dito valor máximo definido por ajuste do dito valor de pixel modificado g0' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para ser igual a zero se o dito valor de pixel modificado g0' do dito pixel (21) mais proximo do dito perímetro (1) de bloco na dita linha correspondente (22) de pixeis (21, 23, 25, 27) for inferior a zero e por ajuste do dito valor de pixel modificado qO' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de pixeis (21, 23, 25, 27) para ser igual ao dito máximo definido se o dito valor de pixel modificado qO' do dito pixel (21) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de pixeis (21, 23, 25, 27) for maior do que o dito valor máximo definido.
  6. 6 - Unidade de filtro de desbloqueio de acordo com qualquer das reivindicações 4 ou 5, que também compreende: um calculador (250) de segundo desfasamento configurado para calcular um segundo desfasamento para ser igual a ( ( (p2+p0 + l) >>1) -pl+ Δ) >>1, onde p2 representa um valor de pixel de um segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de pixeis (11, 13, 15, 17) e Δ representa o dito primeiro desfasamento; e um calculador (260) de terceiro desfasamento configurado para calcular um terceiro desfasamento para ser igual a ( ( (q2 + q0 + l) »1) -ql- Δ) »1, onde q2 representa um valor de pixel de um segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de pixeis (21, 23, 25, 27), onde o dito modificador (220) de valor de pixel está configurado para modificar o dito valor de pixel p2 do dito segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de pixeis (11, 13, 15, 17) por adição do dito segundo desfasamento ao dito valor de pixel p2 do dito segundo pixel (15) mais próximo do dito perímetro (1) de bloco na dita linha (12) de pixeis (11, 13, 15, 17) para formar um valor de pixel modificado p2' do dito segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de pixeis (11, 13, 15, 17) e para modificar o dito valor de pixel q2 do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de pixeis (21, 23, 25, 27) por adição do dito terceiro desfasamento ao dito valor de pixel q2 do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para formar um valor de pixel modificado q2' do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27).
  7. 7 - Unidade de filtro de desbloqueio de acordo com a reivindicação 6, que também compreende uma unidade (270) de terceiro recorte configurada para recortar o dito segundo desfasamento para ficar num intervalo de -tc2 e tc2 por ajuste do dito segundo desfasamento para ser igual a -tc2 se o dito segundo desfasamento for inferior a -tc2 e por ajuste do dito segundo desfasamento para ser igual a tc2 se o dito segundo desfasamento for maior do que tc2, onde tc2 é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao dito bloco e para recortar o dito terceiro desfasamento num intervalo de -tc2 e tc2 por ajuste do dito terceiro desfasamento para ser igual a -tc2 se o dito terceiro desfasamento for inferior a -tc2 e por ajuste do dito terceiro desfasamento para ser igual a tc2 se o dito terceiro desfasamento for maior do que tc2.
  8. 8 - Unidade de filtro de desbloqueio de acordo com qualquer das reivindicações 6 e 7, que também compreende: um calculador (280) de quarto desfasamento configurado para calcular um quarto desfasamento para ser igual a ( ( (p3+pl + l) >>1)-p2+ΔΡι) >>1, onde p3 representa um valor de pixel de um terceiro pixel (17) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e ΔΡι representa o dito segundo desfasamento; e um calculador (290) de quinto desfasamento configurado para calcular um quinto desfasamento para ser igual a ( ( (q3 + ql + l) >>1)-q2+Agi) >>1, onde q3 representa um valor de pixel de um terceiro pixel (27) mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) e Aqi representa o dito terceiro desfasamento, onde o dito modificador (220) de valor de pixel está configurado para modificar o dito valor de pixel p2 do dito segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) por adição do dito quarto desfasamento ao dito valor de pixel p2 do dito segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) para formar um valor de pixel modificado p2' do dito segundo pixel (15) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e para modificar o dito valor de pixel q2 do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) por adição do dito quinto desfasamento ao dito valor de pixel q2 do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27) para formar um valor de pixel modificado q2' do dito segundo pixel (25) seguinte mais próximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27).
  9. 9 - Codificador (40) que compreende uma unidade (100) de filtro de desbloqueio de acordo com qualquer das reivindicações 4 a 8.
  10. 10 - Descodificador (60) que compreende uma unidade (100) de filtro de desbloqueio de acordo com qualquer das reivindicações 4 a 8.
  11. 11 - Equipamento (80) de utilizador que compreende: uma memória (84) configurada para armazenar quadros de vídeo cifrados; e que compreende um descodificador (60) de acordo com a reivindicação 10 configurado para decifrar os ditos quadros de vídeo cifrados em quadros de vídeo decifrados; e um leitor (86) de média configurado para preparar a apresentação dos ditos quadros de vídeo decifrados em dados de vídeo que podem ser exibidos num visor (88).
  12. 12 - Dispositivo (30) de rede que está num, ou pertence a um, nó de rede numa rede (32) de comunicação entre uma unidade (34) de emissão e um equipamento (36) de utilizador de recepção, compreendendo o dito dispositivo (30) de rede um codificador (40) de acordo com a reivindicação 9 e/ou um descodificador (60) de acordo com a reivindicação 10.
  13. 13 - Programa informático (74) para reduzir artefactos de bloqueio num perímetro (1) de bloco entre um bloco (10) de múltiplos píxeis (11, 13, 15, 17) e um bloco vizinho (20) de múltiplos píxeis (21, 23, 25, 27) num quadro de vídeo, compreendendo o dito programa informático (74) meios de código que quando executados num computador (70) levam o computador (70) a: calcular um primeiro desfasamento; recortar (S11) o dito primeiro desfasamento para ficar num intervalo de -tc e tc por ajuste do dito primeiro desfasamento para ser igual a -tc se o dito primeiro desfasamento for inferior a -tc e por ajuste do dito primeiro desfasamento para ser igual a tc se o dito primeiro desfasamento for maior do que tc, onde tc é um valor de limiar que é função de um valor de parâmetro de quantificação atribuído ao dito bloco (10); modificar um valor de pixel p 0 de um pixel (11) mais próximo do dito perímetro (1) de bloco numa linha (12) de píxeis (11, 13, 15, 17) no dito bloco (10), onde a dita linha (12) de píxeis (11, 13, 15, 17) é perpendicular ao dito perímetro (1) de bloco, por adição do dito primeiro desfasamento ao dito valor de pixel do dito pixel (11) mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17); e modificar um valor de pixel qO de um pixel (21) mais próximo do dito perímetro (1) de bloco numa linha correspondente (22) de píxeis (21, 23, 25, 27) no dito bloco vizinho (20), onde a dita linha correspondente (22) de píxeis (21, 23, 25, 27) é perpendicular ao dito perímetro (1) de bloco, por subtracção do dito primeiro desfasamento do dito valor de pixel do dito pixel (21) mais proximo do dito perímetro (1) de bloco na dita linha correspondente (22) de píxeis (21, 23, 25, 27), e caracterizado por meios de código que quando executados no computador (70) levam o computador (70) a calcular o primeiro desfasamento como igual a ( 9x(qO-pO)-3x(ql-pl) +8)>>4, onde >> representa uma operação de deslocamento para a direita, pl representa um valor de pixel de um pixel (13) seguinte mais próximo do dito perímetro (1) de bloco na dita linha (12) de píxeis (11, 13, 15, 17) e gl representa um valor de pixel de um pixel (23) seguinte mais próximo do dito perímetro (1) na dita linha correspondente (22) de píxeis (21, 23, 25, 27) . Lisboa, 2015-09-28
PT118555861T 2011-01-14 2011-10-06 Filtragem de desbloqueio PT2664141E (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201161432751P 2011-01-14 2011-01-14

Publications (1)

Publication Number Publication Date
PT2664141E true PT2664141E (pt) 2015-10-21

Family

ID=46507326

Family Applications (1)

Application Number Title Priority Date Filing Date
PT118555861T PT2664141E (pt) 2011-01-14 2011-10-06 Filtragem de desbloqueio

Country Status (24)

Country Link
US (4) US8526509B2 (pt)
EP (2) EP2938075B1 (pt)
JP (3) JP5540163B2 (pt)
KR (1) KR101670116B1 (pt)
CN (2) CN106101707B (pt)
AP (1) AP3890A (pt)
AU (1) AU2011354786B2 (pt)
BR (1) BR112013015517B1 (pt)
CA (1) CA2824739C (pt)
DK (1) DK2664141T3 (pt)
ES (2) ES2714349T3 (pt)
HK (1) HK1185483A1 (pt)
HU (2) HUE027993T2 (pt)
IL (1) IL226929A (pt)
MA (1) MA34906B1 (pt)
MX (1) MX2013007960A (pt)
MY (1) MY183761A (pt)
NZ (1) NZ612089A (pt)
PL (2) PL2938075T3 (pt)
PT (1) PT2664141E (pt)
RU (1) RU2550541C2 (pt)
SG (1) SG191247A1 (pt)
TW (1) TWI538521B (pt)
WO (1) WO2012096610A1 (pt)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2894856A1 (en) * 2002-01-31 2015-07-15 Samsung Electronics Co., Ltd Filtering method and apparatus for reducing block artifacts or ringing noise
JP2012510202A (ja) * 2008-11-25 2012-04-26 トムソン ライセンシング ビデオ符号化および復号のためのスパース性に基づくアーティファクト除去フィルタリングを行う方法および装置
CN101583041B (zh) * 2009-06-18 2012-03-07 中兴通讯股份有限公司 多核图像编码处理设备的图像滤波方法及设备
ES2714349T3 (es) * 2011-01-14 2019-05-28 Ericsson Telefon Ab L M Filtrado de desbloqueo
CN103299632B (zh) * 2011-01-14 2017-02-22 瑞典爱立信有限公司 去块效应滤波方法及去块效应滤波器单元
US9232237B2 (en) * 2011-08-05 2016-01-05 Texas Instruments Incorporated Block-based parallel deblocking filter in video coding
EP2774371B1 (en) 2011-11-03 2020-08-26 Sun Patent Trust Efficient rounding for deblocking
CN104025593B (zh) * 2011-11-04 2017-06-27 太阳专利托管公司 利用改进的图像块边界强度推导进行去块滤波
US10397615B2 (en) * 2012-07-03 2019-08-27 Telefonaktiebolaget Lm Ericsson (Publ) Strong deblocking filtering decisions
US20140056363A1 (en) * 2012-08-23 2014-02-27 Yedong He Method and system for deblock filtering coded macroblocks
US9445130B2 (en) * 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
CN104284199B (zh) * 2013-07-11 2019-02-01 Nxp股份有限公司 用降低复杂度的去块效应操作进行视频解码方法和装置
US10666975B2 (en) * 2014-04-23 2020-05-26 Sony Corporation Image processing apparatus and image processing method
US9779664B2 (en) * 2014-08-05 2017-10-03 Apple Inc. Concurrently refreshing multiple areas of a display device using multiple different refresh rates
JP6269431B2 (ja) * 2014-10-10 2018-01-31 ソニー株式会社 画像処理装置、画像処理方法及び画像処理システム
JP6545515B2 (ja) * 2015-04-24 2019-07-17 株式会社東芝 画像復号装置
CN106303550B (zh) 2015-06-11 2019-06-21 华为技术有限公司 去块效应滤波方法和去块效应滤波器
CN106470341B (zh) 2015-08-17 2020-10-02 恩智浦美国有限公司 媒体显示***
JP6620354B2 (ja) 2015-09-30 2019-12-18 Kddi株式会社 動画像の処理装置、処理方法及びコンピュータ可読記憶媒体
US10110926B2 (en) 2015-10-15 2018-10-23 Cisco Technology, Inc. Efficient loop filter for video codec
KR200486770Y1 (ko) 2015-12-17 2018-06-27 조기찬 공기층을 가지는 단열재
KR102233887B1 (ko) * 2016-12-27 2021-03-29 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
CN106604039B (zh) * 2016-12-28 2020-07-31 北京奇艺世纪科技有限公司 一种滤波方法及装置
WO2019099103A1 (en) * 2017-11-15 2019-05-23 Sandisk Technologies Llc Three-dimensional memory device with thickened word lines in terrace region and method of making thereof
EP3782371A4 (en) * 2018-03-30 2021-12-22 Sharp Kabushiki Kaisha SYSTEMS AND PROCEDURES FOR THE APPLICATION OF UNBLOCKING FILTERS ON RECONSTRUCTED VIDEO DATA
US10554975B1 (en) 2018-09-30 2020-02-04 Tencent America LLC Method and apparatus for video coding
JP7418152B2 (ja) 2018-12-17 2024-01-19 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3095140B2 (ja) 1997-03-10 2000-10-03 三星電子株式会社 ブロック化効果の低減のための一次元信号適応フィルター及びフィルタリング方法
FI117533B (fi) * 2000-01-20 2006-11-15 Nokia Corp Menetelmä digitaalisten videokuvien suodattamiseksi
WO2002096117A1 (en) 2001-05-25 2002-11-28 Pace Soft Silicon Limited Deblocking block-based video data
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US20050013494A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation In-loop deblocking filter
US7430337B2 (en) 2004-01-06 2008-09-30 Sharp Laboratories Of America, Inc. System and method for removing ringing artifacts
US7539248B2 (en) * 2004-04-29 2009-05-26 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
US20050243914A1 (en) * 2004-04-29 2005-11-03 Do-Kyoung Kwon Adaptive de-blocking filtering apparatus and method for mpeg video decoder
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
JP4605052B2 (ja) * 2006-03-03 2011-01-05 日本電気株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、フィルタ装置及びプログラム
US8111760B2 (en) * 2006-11-16 2012-02-07 Texas Instruments Incorporated Deblocking filters
US20080123750A1 (en) 2006-11-29 2008-05-29 Michael Bronstein Parallel deblocking filter for H.264 video codec
CN101527841B (zh) * 2008-03-06 2011-05-11 瑞昱半导体股份有限公司 去除图像区块效应的方法及装置
US8566515B2 (en) * 2009-01-12 2013-10-22 Maxim Integrated Products, Inc. Memory subsystem
US8451952B2 (en) * 2009-12-30 2013-05-28 Telefonaktiebolaget L M Ericsson (Publ) Iterative decoding and demodulation with feedback attenuation
CN102860005B (zh) 2010-02-05 2016-07-06 瑞典爱立信有限公司 去块滤波控制
BR112013006832A2 (pt) * 2010-09-28 2017-05-23 Samsung Electronics Co Ltd método de filtragem adaptativa, e aparelho de filtragem adaptativa
CN101951519A (zh) * 2010-10-12 2011-01-19 西安电子科技大学 高速去块效应滤波方法
ES2714349T3 (es) * 2011-01-14 2019-05-28 Ericsson Telefon Ab L M Filtrado de desbloqueo

Also Published As

Publication number Publication date
CN106101707A (zh) 2016-11-09
BR112013015517A2 (pt) 2016-09-20
MX2013007960A (es) 2013-08-01
RU2550541C2 (ru) 2015-05-10
NZ612089A (en) 2015-07-31
ES2714349T3 (es) 2019-05-28
JP6096342B2 (ja) 2017-03-15
AP2013007049A0 (en) 2013-08-31
ES2548043T3 (es) 2015-10-13
HUE027993T2 (en) 2016-11-28
EP2938075B1 (en) 2018-12-05
AU2011354786B2 (en) 2016-05-26
TW201234858A (en) 2012-08-16
SG191247A1 (en) 2013-07-31
US20130003865A1 (en) 2013-01-03
US20160142739A1 (en) 2016-05-19
KR101670116B1 (ko) 2016-10-27
MY183761A (en) 2021-03-11
KR20140043715A (ko) 2014-04-10
EP2664141B1 (en) 2015-08-12
PL2664141T3 (pl) 2016-01-29
DK2664141T3 (en) 2015-08-31
US10142659B2 (en) 2018-11-27
RU2013134265A (ru) 2015-02-20
TWI538521B (zh) 2016-06-11
US20170302967A1 (en) 2017-10-19
HUE041988T2 (hu) 2019-06-28
IL226929A (en) 2017-01-31
EP2664141A4 (en) 2013-12-11
AU2011354786A1 (en) 2013-08-01
BR112013015517B1 (pt) 2021-11-23
JP2016129388A (ja) 2016-07-14
JP5889953B2 (ja) 2016-03-22
JP5540163B2 (ja) 2014-07-02
US9407912B2 (en) 2016-08-02
CN106101707B (zh) 2019-04-19
CA2824739A1 (en) 2012-07-19
CA2824739C (en) 2017-06-20
JP2014507863A (ja) 2014-03-27
JP2014197847A (ja) 2014-10-16
WO2012096610A1 (en) 2012-07-19
EP2664141A1 (en) 2013-11-20
US8526509B2 (en) 2013-09-03
CN103299626B (zh) 2016-09-21
MA34906B1 (fr) 2014-02-01
EP2938075A1 (en) 2015-10-28
HK1185483A1 (zh) 2014-02-14
US20140050272A1 (en) 2014-02-20
PL2938075T3 (pl) 2019-05-31
US9743115B2 (en) 2017-08-22
AP3890A (en) 2016-11-10
CN103299626A (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
PT2664141E (pt) Filtragem de desbloqueio
ES2562009T3 (es) Control del filtrado de desbloqueo
US10575021B2 (en) Controlling deblocking filtering
JP2021528877A (ja) イントラ予測におけるplanarモード及びdcモードの境界フィルタリング
US9473782B2 (en) Loop filtering managing storage of filtered and unfiltered pixels
BR112021009149A2 (pt) método e aparelho para desbloquear uma fronteira, programa de computador, e, portadora