BR112015004246B1 - Método de codificação de imagem e aparelho de codificação de imagem - Google Patents
Método de codificação de imagem e aparelho de codificação de imagem Download PDFInfo
- Publication number
- BR112015004246B1 BR112015004246B1 BR112015004246-5A BR112015004246A BR112015004246B1 BR 112015004246 B1 BR112015004246 B1 BR 112015004246B1 BR 112015004246 A BR112015004246 A BR 112015004246A BR 112015004246 B1 BR112015004246 B1 BR 112015004246B1
- Authority
- BR
- Brazil
- Prior art keywords
- slice
- image
- slices
- dependent
- line
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
MÉTODO DE CODIFICAÇÃO DE IMAGEM E APARELHO DE CODIFICAÇÃO DE IMAGEM. A presente invenção refere-se a um método de decodificação de imagem que decodifica fluxos de bits que incluem sinais codificados para imagens cada uma das quais foi dividida em uma pluralidade de fatias que incluem uma pluralidade de unidades de codificação e codificadas, o dito método incluindo uma etapa de decodificação na qual os sinais codificados são decodificados. Cada uma da pluralidade de fatias é ou uma fatia normal que tem as informações incluídas no seu cabeçalho de fatia que são utilizadas em uma diferente fatia ou uma fatia dependente para a qual as informações incluídas no cabeçalho de fatia de uma fatia diferente são utilizadas para a decodificação. Cada uma das imagens inclui uma pluralidade de linhas que incluem uma pluralidade de unidades de codificação e se uma fatia normal começa com outra diferente do início da primeira linha, uma segunda linha após a primeira linha não começa com uma fatia dependente.
Description
[001] A presente invenção refere-se a um método de codificação de imagem e a um método de decodificação de imagem.
[002] Atualmente, a maioria dos algoritmos de codificação de vídeo padronizados está baseada em codificação de vídeo híbrida. Os métodos de codificação de vídeo híbrida tipicamente combinam diversos esquemas de compressão sem perda e com perda de modo a conseguir o ganho de compressão desejado. A codificação de vídeo híbrida é também a base para os padrões ITU-T (padrões H.26x tal como H.261 e H.263) assim como padrões ISO/IEC (padrões MPEG-X tal como MPEG-1, MPEG-2, e MPEG-4).
[003] O padrão de codificação de vídeo mais recente e avançado é correntemente o padrão denotado como codificação de vídeo avançada (AVC) H.264/MPEG-4 o qual é um resultado de esforços de padronização pelo Joint 25 Video Team (JVT), uma equipe unida de grupos ITU-T e ISO/IEC MPEG.
[004] Um padrão de codificação de vídeo referido como Codificação de Vídeo de Alta eficiência (HEVC) é também correntemente examinado pelo Joint Collaborative Team on Video Coding (JCT-VC) com o propósito de aperfeiçoar a eficiência referente à codificação de vídeo de alta resolução.
[005] [Literatura de Não Patente 1] "Wavefront Parallel Proces-sing for HEVC Encoding and Decoding" by C. Gordon et al., no. JCTVC-F274-v2 from the Meeting in Torino, July 2011
[006] [Literatura de Não Patente 2] "Tiles" by A. Fuldseth et al., no. JCTVC-F355-vl, from the Meeting in Torino, July 2011
[007] [Literatura de Não Patente 3] JCTVC-J1003_d7, "High efficiency video coding (HEVC) text specification draft 8" of July 2012
[008] Em tais métodos de codificação de imagem e métodos de decodificação de imagem, houve uma demanda para eficiência aperfeiçoada em uma situação onde tanto um processamento paralelo quanto fatias dependentes são utilizados.
[009] Um objetivo da presente invenção é prover um método de codificação de imagem e um método de decodificação de imagem os quais tornam possível aperfeiçoar a eficiência de quando tanto um processamento paralelo quanto fatias dependentes são utilizados.
[0010] Um método de decodificação de imagem de acordo com um aspecto da presente invenção é um método de decodificação de imagem para decodificar um fluxo de bits que inclui um sinal codificado que resulta da codificação de uma pluralidade de fatias nas quais uma imagem é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação, o método compreendendo decodificar o sinal codificado, em que cada uma das fatias é ou uma fatia normal que tem em um cabeçalho de fatia, informações utilizadas por outra fatia ou uma fatia dependente a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia, a imagem inclui uma pluralidade de linhas cada uma das quais inclui duas ou mais unidades de codificação, e quando a fatia normal começa em uma posição diferente de um início de uma primeira linha, uma segunda linha imedia- tamente seguinte à primeira linha não começa com a fatia dependente.
[0011] Estes aspectos gerais e específicos podem ser implementados utilizando um sistema, um método, um circuito integrado, um programa de computador, ou um meio de gravação legível por computador tal como um CD-ROM, ou qualquer combinação de sistemas, métodos, circuitos integrados, programas de computador, ou meios de gravação legíveis por computador.
[0012] A presente invenção pode prover um método de codificação de imagem e um método de decodificação de imagem os quais tornam possível aperfeiçoar a eficiência de quando tanto um processamento paralelo quanto fatias dependentes são utilizados.
[0013] A Figura 1 é um diagrama de blocos que mostra um aparelho de codificação de imagem de acordo com modalidades.
[0014] A Figura 2 é um diagrama de blocos que mostra um aparelho de decodificação de imagem de acordo com as modalidades.
[0015] A Figura 3A é um diagrama esquemático para ilustrar WPP de acordo com as modalidades.
[0016] A Figura 3B é um diagrama esquemático para ilustrar fatias dependentes em WPP de acordo com as modalidades.
[0017] A Figura 4A é um diagrama esquemático para ilustrar fatias dependentes quando WPP não é aplicado de acordo com as modalidades.
[0018] A Figura 4B é um diagrama esquemático para ilustrar fatias dependentes quando WPP é aplicado de acordo com as modalidades.
[0019] A Figura 5 é um diagrama que mostra um cabeçalho de fatia de uma fatia de entropia ou uma fatia dependente de acordo com as modalidades.
[0020] A Figura 6 é um diagrama que mostra uma estrutura de fa- tia não permitida exemplar quando WPP é aplicado de acordo com as modalidades.
[0021] A Figura 7 é um diagrama que mostra uma estrutura de fatia permitida exemplar quando WPP é aplicado de acordo com as modalidades.
[0022] A Figura 8 é um diagrama esquemático que mostra um processo de inicialização CABAC de acordo com as modalidades.
[0023] A Figura 9 um fluxograma para um processo de determinação em um método de inicialização CABAC para uma fatia dependente dependendo de características de uma fatia precedente de acordo com as modalidades.
[0024] A Figura 10 é um diagrama que mostra uma estrutura de fatia exemplar de acordo com as modalidades.
[0025] A Figura 11 é um diagrama que mostra uma estrutura de fatia de acordo com as modalidades.
[0026] A Figura 12 é um diagrama que mostra uma sintaxe exemplar de um cabeçalho de fatia de acordo com a Modalidade 1.
[0027] A Figura 13 é um fluxograma para um processo de determinação em um método de inicialização CABAC para uma fatia dependente de acordo com a Modalidade 1.
[0028] A Figura 14 é um diagrama que mostra uma imagem exemplar particionada em fatias de acordo com a Modalidade 2.
[0029] A Figura 15 é um fluxograma para um processo de determinação em um método de inicialização CABAC de acordo com a Modalidade 2.
[0030] A Figura 16 é um diagrama que mostra uma imagem exemplar particionada em fatias de acordo com a Modalidade 2.
[0031] A Figura 17A é um diagrama que mostra uma estrutura de fatia não permitida exemplar de acordo com a Modalidade 2.
[0032] A Figura 17B é um diagrama que mostra uma estrutura de fatia permitida exemplar de acordo com a Modalidade 2.
[0033] A Figura 17C é um diagrama que mostra uma estrutura de fatia permitida exemplar de acordo com a Modalidade 2.
[0034] A Figura 17D é um diagrama que mostra uma estrutura de fatia permitida exemplar de acordo com a Modalidade 2.
[0035] A Figura 18 é um diagrama que mostra uma imagem exemplar particionada em fatias de acordo com a Modalidade 2.
[0036] A Figura 19 é um diagrama que mostra uma imagem exemplar particionada em fatias de acordo com a Modalidade 3.
[0037] A Figura 20 mostra uma configuração geral de um sistema de provisão de conteúdo para implementar serviços de distribuição de conteúdo.
[0038] A Figura 21 mostra uma configuração geral de um sistema de transmissão digital.
[0039] A Figura 22 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma televisão.
[0040] A Figura 23 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma unidade de reprodução / gravação de informações que lê e escreve as informações de e sobre um meio de gravação que é um disco ótico.
[0041] A Figura 24 mostra um exemplo de uma configuração de um meio de gravação que é um disco ótico.
[0042] A Figura 25A mostra um exemplo de um telefone celular.
[0043] A Figura 25B mostra um diagrama de blocos que ilustra um exemplo de uma configuração de um telefone celular.
[0044] A Figura 26 ilustra uma estrutura de dados multiplexados.
[0045] A Figura 27 mostra esquematicamente como cada fluxo é multiplexado em dados multiplexados.
[0046] A Figura 28 mostra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES em mais detalhes.
[0047] A Figura 29 mostra uma estrutura de pacotes de TS e pacotes de fonte nos dados multiplexados.
[0048] A Figura 30 ilustra uma estrutura de dados de um PMT.
[0049] A Figura 31 mostra uma estrutura interna de informações de dados multiplexados.
[0050] A Figura 32 mostra uma estrutura interna de informações de atributo de fluxo.
[0051] A Figura 33 mostra etapas para identificar dados de vídeo.
[0052] A Figura 34 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de um circuito integrado para implementar o método de codificação de imagem móvel e o método de decodifi- cação de imagem móvel de acordo com cada uma das modalidades.
[0053] A Figura 35 mostra uma configuração para comutar entre as sequências de acionamento.
[0054] A Figura 36 mostra as etapas para identificar os dados de vídeo e a comutação entre as frequências de acionamento.
[0055] A Figura 37 mostra um exemplo de uma tabela de consulta na qual os padrões de dados de vídeo estão associados com as frequências de acionamento.
[0056] A Figura 38A é um diagrama que mostra um exemplo de uma configuração para compartilhar um módulo de uma unidade de processamento de sinal.
[0057] A Figura 38B é um diagrama que mostra outro exemplo de uma configuração para compartilhar um módulo da unidade de processamento de sinal
[0058] Conhecimento Básico que Forma a Base da Presente Invenção
[0059] Em relação ao método de codificação de imagem e o método de decodificação de imagem descritos na seção de Fundamentos, os inventores encontraram os seguintes problemas.
[0060] Primeiro, um aparelho de codificação de imagem e um aparelho de decodificação de imagem em HEVC estão descritos.
[0061] Um sinal de vídeo inserido em um aparelho de codificação de imagem inclui imagens cada uma referida como um quadro (imagem). Cada quadro inclui pixels dispostos em uma matriz bidimensional. Em todos os acima mencionados padrões baseados na codificação de vídeo híbrida, cada quadro individual está particionado em blocos cada um incluindo pixels. O tamanho dos blocos pode variar, por exemplo, de acordo com o conteúdo de uma imagem. Um diferente método de codificação pode ser utilizado em uma base por bloco. Por exemplo, o maior tamanho dos blocos é de 64 x 64 pixels em HEVC. Este maior tamanho é referido como uma maior unidade de codificação (LCU). A LCU pode ser recursivamente dividida em quatro unidades de codificação (CUs).
[0062] Em H.264/MPEG-4 AVC, a codificação é executada em uma base por macrobloco (usualmente um bloco de 16 x 16 pixels). Existe um caso onde o macrobloco é dividido em sub-blocos.
[0063] Tipicamente, uma etapa de codificação em codificação de vídeo híbrida inclui uma predição espacial e/ou temporal. Em suma, cada um dos blocos correntes a serem codificados é predito utilizando blocos espacialmente ou temporalmente adjacentes ao bloco corrente, isto é, quadros de vídeo codificado. A seguir, um bloco residual que é uma diferença ente o bloco corrente e o resultado de predição é calculado. A seguir, o bloco residual é transformado de domínio espacial (pixel) para domínio de frequência. A transformação busca reduzir a correlação de um bloco de entrada.
[0064] A seguir, um coeficiente de transformada que resulta da transformação é quantizado. Esta quantização é uma compressão com perda. Uma compressão sem perda é executada sobre o coeficiente de quantização assim obtido utilizando codificação de entropia. Além disso, informações laterais necessárias para reconstruir o sinal de vídeo codificado são codificadas e emitidas com o sinal de vídeo codificado. Estas informações são, por exemplo, informações sobre predição espacial, predição temporal, e/ou quantização.
[0065] A Figura 1 é um diagrama de blocos que mostra um aparelho de codificação de imagem 100 exemplar em conformidade com H.264/MPEG-4 AVC e/ou HEVC.
[0066] Um subtrator 105 calcula um sinal residual 106 (bloco residual) que é uma diferença entre um bloco corrente a ser codificado de um sinal de imagem de entrada 101 e um sinal de predição 181 (bloco de predição) correspondente. O sinal de predição 181 é gerado por predição temporal ou predição espacial por uma unidade de predição 180. Um tipo da predição pode ser mudado em uma base por quadro ou bloco. Um bloco e/ou um quadro predito utilizando a predição temporal é referido como sendo intercodificado, e um bloco e/ou um quadro predito utilizando a predição espacial é referido como sendo intra- codificado.
[0067] Um sinal de predição utilizado para a predição temporal é derivado utilizando uma imagem codificada e decodificada armazenada em uma memória. Um sinal de predição utilizado para a predição espacial é derivado utilizando os valores de pixel de limite de blocos codificados e decodificados adjacentes armazenados na memória. Além disso, o número de direções de intrapredição é determinado de acordo com um tamanho de unidades de codificação.
[0068] O sinal residual 106 é também referido como um erro de predição ou um resíduo de predição. Uma unidade de transformação 110 transforma o sinal residual 106 para gerar um coeficiente de transformação 111. Uma unidade de quantização 120 quantiza o coeficiente de transformação 111 para gerar um coeficiente de quantização 121.Uma unidade de codificação de entropia 190 executa uma codificação de entropia sobre o coeficiente de quantização 121, com o propósito de redução adicional em uma quantidade de dados a serem armazenados e transmissão sem perda. Por exemplo, a codificação de entropia é uma codificação de comprimento variável. Além disso, um comprimento de uma palavra de código é determinado com base em uma probabilidade de ocorrência de um código.
[0069] Um inal codificado 191 (fluxo de bits codificado) é gerado através do processamento acima.
[0070] O aparelho de codificação de imagem 100 inclui uma unidade de decodificação para obter um sinal de imagem decodificado (sinal de imagem reconstruído). Especificamente, uma unidade de transformação inversa 130 executa uma quantização inversa e transformação inversa sobre o coeficiente de quantização 121 para gerar um sinal residual 131. Este sinal residual 131 é, estritamente falando diferente do sinal residual original 106 devido a um erro de quantiza- ção também referido como ruído de quantização.
[0071] A seguir, um somador 140 soma o sinal residual 131 e o sinal de predição 181 para gerar um sinal de imagem decodificado 141. Como acima declarado, para manter a compatibilidade entre o aparelho de codificação de imagem e o aparelho de decodificação de imagem, cada um do aparelho de codificação de imagem e do aparelho de decodificação de imagem gera o sinal de predição 181 utilizando o sinal de imagem codificado e decodificado.
[0072] Com a quantização, o ruído de quantização é sobreposto ao sinal de imagem decodificado 141. O ruído sobreposto frequentemente difere para cada um dos blocos porque a codificação é executada em uma base por bloco. Com isto, quando uma quantização especialmente forte é executada, os limites de bloco do sinal de imagem decodificado tornam-se salientes. Tais ruídos de bloqueio fazem com que a qualidade de imagem pareça degradada no reconhecimento visual humano. Para reduzir o ruído de bloqueio, um filtro de desbloqueio 150 executa um processamento de filtro de desbloqueio sobre o sinal de imagem decodificado 141.
[0073] Por exemplo, no processamento de filtro de desbloqueio em H.264/MPEG-4 AVC, um processamento de filtro adequado para cada uma das regiões é selecionado para cada região. Por exemplo, quando o ruído de bloqueio é grande, um forte filtro de passagem baixa (banda estreita) é utilizado, e quando o ruído de bloqueio é pequeno, um fraco filtro de passagem baixa (banda larga) é utilizado. A intensidade do filtro de passagem baixa é determinada de acordo com o sinal de predição 181 e o sinal residual 131. O processamento de filtro de desbloqueio suaviza as bordas dos blocos. Com isto, a qualidade de imagem subjetiva do sinal de imagem decodificado é melhorada. Uma imagem sobre a qual processamento de filtro foi executado é utilizada para a predição de compensação de movimento da próxima imagem. Consequentemente, este processamento de filtro reduz um erro de predição, por meio disto tornando possível aperfeiçoar a codificação eficientemente.
[0074] Um filtro de loop adaptável 160 executa um processamento de compensação adaptável de amostra e/ou um processamento de filtro de loop adaptável sobre um sinal de imagem decodificado 151 após o processamento de filtro de desbloqueio, para gerar um sinal de imagem decodificado 161. Como acima, o processamento de filtro de desbloqueio melhora a qualidade de imagem subjetiva. Em contraste, o processamento de compensação adaptável de amostra (SAO) e o processamento de filtro de loop adaptável (ALF) buscam aumentar a confiabilidade em uma base por pixel (qualidade objetiva).
[0075] O SAO está processando para adicionar um valor de compensação a um pixel de acordo com os pixels adjacentes. O ALF é uti- lizando para compensar a distorção de imagem causada pela compressão. Por exemplo, o ALF é um filtro Wiener que tem um coeficiente de filtro determinado em um modo que um erro quadrático médio (MSE) entre o sinal de imagem decodificado 151 e o sinal de imagem de entrada 101 seja minimizado. Por exemplo, um coeficiente do ALF é calculado e transmitido em uma base por quadro. Mais ainda, o ALF pode ser aplicado a um quadro inteiro (imagem) ou uma região local (bloco). Além disso, as informações laterais que indicam uma região sobre a qual o processamento de filtro deve ser executado podem ser transmitidas em uma base por bloco, uma base por quadro, ou uma base de árvore quádrupla.
[0076] Para decodificar um bloco intercodificado, é necessário que parte de uma imagem codificada e então decodificada seja armazenada em um armazenamento temporário de quadro de referência 170.O armazenamento temporário de quadro de referência 170 mantém o sinal de imagem decodificado 161 como um sinal de imagem decodificado 171. A unidade de predição 180 executa uma interpredição utilizando a predição de compensação de movimento. Especificamente, um estimador de movimento primeiro pesquisa os blocos incluídos em um quadro de vídeo codificado e decodificado para um bloco o mais similar a um bloco corrente. Este bloco similar é utilizado como o sinal de predição 181. Um deslocamento relativo (movimento) entre o bloco corrente e o bloco similar é transmitido como dados de movimento para o aparelho de decodificação de imagem. Estes dados de movimento são, por exemplo, vetores de movimento tridimensionais incluídos nas informações laterais providas com dados de vídeo codificados. Aqui, a expressão "tridimensional" inclui duas dimensões espaciais e uma dimensão temporal.
[0077] Deve ser notado que para otimizar a precisão de predição, um vetor de movimento que tem uma resolução de subpixel espacial tal como uma resolução de meio pixel e uma resolução de um quarto de pixel pode ser utilizado. O vetor de movimento que tem a resolução de subpixel espacial indica uma localização espacial em quadro decodificado onde nenhum valor de pixel existe, isto é, uma localização de um subpixel. Assim, é necessário interpolar espacialmente um valor de pixel para executar a predição de compensação de movimento. Esta interpolação é executada por filtro de interpolação (incluído na unidade de predição 180 mostrada na Figura 1), por exemplo.
[0078] Tanto no modo de intracodificação quanto no modo de in- tercodificação, o coeficiente de quantização 121 é gerado transformando e quantizando o sinal residual 106 que é a diferença entre o sinal de imagem de entrada 101 e o sinal de predição 181. Geralmente, a unidade de transformação 110 utiliza, para esta transformação, uma transformação ortogonal tal como uma transformação de cosseno discreta bidimensional (DCT) ou sua versão de inteiro. Isto eficientemente reduz a correlação de video natural. Além disso, um componente de baixa frequência é geralmente mais importante para a qualidade de imagem de um componente de alta frequência, e assim mais bits são utilizados para o componente de baixa frequência do que para o componente de alta frequência.
[0079] A unidade de codificação de entropia 190 transforma uma rede bidimensional do coeficiente de quantização 121 em uma rede unidimensional. Tipicamente, um assim denominado escaneamento em ziguezague é utilizado para esta transformação. No escaneamento em ziguezague uma rede bidimensional é escaneada em uma ordem predeterminada de um coeficiente DC no canto superior esquerdo da rede bidimensional para um coeficiente AC no canto inferior direito da mesma. A energia normalmente concentra em coeficientes na parte superior esquerda da rede bidimensional a qual corresponde a uma baixa frequência, e assim quando o escaneamento em ziguezague é executado, os últimos valores tendem para ser zero. Com isto, é possível conseguir uma codificação eficiente utilizando uma codificação Run-length como parte da ou pré-processamento da codificação de entropia.
[0080] Em H.264/MPEG-4 AVC e HEVC, vários tipos da codificação de entropia são utilizados. Apesar da codificação de comprimento fixo ser executada em alguns elementos de sintaxe, a codificação de comprimento variável é executada na maioria dos elementos de sintaxe. Especificamente, uma codificação de comprimento variável adaptável ao contexto é executada em um resíduo de predição, e vários outros tipos de codificação de inteiro são executados sobre outros elementos de sintaxe. Além disso, existe também um caso onde a codificação aritmética binária adaptável ao contexto (CABAC) é utilizada.
[0081] A codificação de comprimento variável permite uma com-pressão sem perda de um fluxo de bits codificado. No entanto, as palavras de código são de comprimento variável, e assim é necessário continuamente decodificar as palavras de código. Em outras palavras, antes de uma palavra de código precedente seja codificada ou decodificada, uma palavra de código seguinte não pode ser codificada ou decodificada sem reiniciar (inicializar)a codificação de entropia ou sem separadamente indicar uma localização da primeira palavra de código (ponto de entrada) quando a decodificação é executada.
[0082] Uma sequência de bits é codificada em uma palavra de código por codificação aritmética com base em um modelo de probabilidade predeterminado. O modelo de probabilidade predeterminado é determinado com base no conteúdo de uma sequência e vídeo no caso de CABAC. Assim, a codificação aritmética e o CABAC são executados mais eficientemente conforme um comprimento de um fluxo de bits a ser codificado é maior. Colocando de outro modo, o CABAC aplicado na sequência de bits é mais eficiente em um bloco maior. O CABAC é reiniciado no início de cada sequência. Apresentado diferentemente, o modelo de probabilidade é inicializado no início de cada sequência de vídeo com um valor determinado ou um valor predeterminado.
[0083] Os H.264/MPEG-4, H.264/MPEG-4 AVC, e HEVC incluem duas camadas funcionais, a camada de codificação de vídeo (VCL) e a camada de abstração de rede (NAL). A camada de codificação de vídeo provê uma função de codificação. A NAL encapsula os elementos de informações em unidades padrão referidas como unidades de NAL, dependendo de uma utilização tal como uma transmissão sobre um canal ou um armazenamento em um dispositivo de armazenamento. Os elementos de informações são, por exemplo, sinais de erro de predição codificados e informações necessárias para decodificar um sinal de vídeo. As informações necessárias para decodificar um sinal de vídeo são um tipo de predição, um parâmetro de quantização, um vetor de movimento, e assim por diante.
[0084] Cada uma das unidades de NAL pode ser classificada em: uma unidade de VCL NAL que inclui dados vídeo comprimidos e as informações relativas; uma unidade de não VCL que encapsula dados adicionais tal como um conjunto de parâmetros relativo a uma sequência de vídeo inteira; e informações de melhoramento suplementares (SEI) para prover informações adicionais utilizáveis para aumentar a precisão de decodificação.
[0085] Por exemplo, a unidade de não VCL inclui um conjunto de parâmetros. O conjunto de parâmetros refere-se a um conjunto de parâmetros relativos à codificação e decodificação de uma certa sequência de vídeo. Exemplos do conjunto de parâmetros inclui um conjunto de parâmetros de sequência (SPS) que inclui parâmetros relativos à codificação e decodificação de uma sequência de vídeo inteira (sequência de imagens).
[0086] O conjunto de parâmetros de sequência tem uma estrutura de sintaxe que inclui elementos de sintaxe. O conjunto de parâmetros de imagem (PPS) a ser referido é especificado por pic_parameter_set_id, um elemento de sintaxe incluído em cada cabeçalho de fatia. Além disso, um SPS a ser referido é especificado por seq_parameter_set_id, elemento de sintaxe incluído no PPS. Como acima, os elementos de sintaxe incluídos no SPS são aplicados à se-quência de vídeo codificada inteira.
[0087] O PPS é um conjunto de parâmetros que define os parâmetros aplicados à codificação e decodificação de uma imagem incluída em uma sequência de vídeo. O PPS tem uma estrutura de sintaxe que inclui elementos de sintaxe. O conjunto de parâmetros de imagem (PPS) a ser referido é especificado por pic_parameter_set_id, um elemento de sintaxe incluído em cada cabeçalho de fatia. Como acima, os elementos de sintaxe incluídos no SPS são aplicados a uma imagem codificada inteira.
[0088] Portanto, é mais fácil ficar atento ao SPS do que PPS. Isto é porque o PPS muda para cada imagem, enquanto que o SPS permanece constante para a sequência de vídeo inteira que pode durar diversos minutos ou diversas horas.
[0089] Um VPS são parâmetros na camada mais alta, e inclui as informações relativas às sequências de vídeo. As informações incluídas no VPS são uma taxa de bits, uma estrutura temporal_layering das sequências de vídeo, e assim por diante. Além disso, o VPS inclui as informações sobre uma dependência entre camadas (dependência entre diferentes sequências de vídeo). Como um resultado, o VPS pode ser considerado como informações sobre as sequências de vídeo, e um esboço de cada uma das sequências de vídeo pode ser obtido com base no VPS.
[0090] A Figura 2 é um diagrama de blocos que mostra um apare- lho de decodificação de imagem 200 exemplar em conformidade com um padrão de codificação de vídeo H.264/MPEG-4 AVC ou HEVC.
[0091] Um sinal codificado 201 (fluxo de bits) inserido no aparelho de decodificação de imagem 200 é transmitido para uma unidade de decodificação de entropia 290. A unidade de decodificação de entropia 290 decodifica o sinal codificado 201 para obter um coeficiente de quantização e elementos de informações necessários para decodifica- ção tal como dados de movimento e um modo de predição. Além disso, a unidade de decodificação de entropia 290 inversamente escaneia o coeficiente de quantização obtido com o propósito de obter uma rede bidimensional, para gerar um coeficiente de quantização 291, e emite o coeficiente de quantização 291 para uma unidade de transformação inversa 230.
[0092] A unidade de transformação inversa 230 inversamente quantiza e transforma o coeficiente de quantização 291 para gerar um sinal residual 231. O sinal residual 231 corresponde a uma diferença obtida subtraindo um sinal de predição de um sinal de imagem de entrada que não tem ruído de quantização e erro e é inserido em um aparelho de codificação de imagem.
[0093] Uma unidade de predição 280 gera um sinal de predição 281 utilizando a predição temporal ou a predição espacial. Normalmente, os elementos de informações decodificados incluem ainda informações tais como um tipo de predição no caso da intrapredição, ou informações necessárias para predição tais como dados de movimento no caso da predição de compensação de movimento.
[0094] Um somador 240 soma o sinal residual 231 em um domínio espacial e o sinal de predição 281 gerado pela unidade de predição 280, para gerar um sinal de imagem decodificado 241. Um filtro de desbloqueio 250 executa um processamento de filtro de desbloqueio sobre o sinal de imagem decodificado 241 para gerar um sinal de ima- gem decodificado 251. Um filtro de loop adaptável 260 executa um processamento de compensação adaptável de amostra e um processamento de filtro de loop adaptável sobre o sinal de imagem decodificado 251, para gerar um sinal de imagem decodificado 261. O sinal de imagem decodificado 261 é emitido como uma imagem de display e armazenado como um sinal de imagem decodificado 271 em um armazenamento temporário de quadro de referência 270. O sinal de imagem decodificado 271 é utilizado para um bloco subsequente ou predição temporal ou espacial de uma imagem.
[0095] Comparado com H.264/MPEG-4 AVC, o HEVC tem uma função de ajudar no avanço do processamento paralelo de codificação e decodificação. Como com H.264/MPEG-4 AVC, o HEVC permite o particionamento de um quadro em fatias. Aqui, cada uma das fatias inclui LCUs consecutivas em uma ordem de escaneamento. Em H.264/MPEG-4 AVC, cada fatia é decodificável, e a predição espacial não é executada entre as fatias. Assim, é possível executar o processamento paralelo em uma base por fatia.
[0096] No entanto, a fatia tem um cabeçalho consideravelmente grande, e não existe uma dependência entre as fatias, por meio disto diminuindo a eficiência de compressão. Além disso, quando o CABAC é executado sobre um pequeno bloco de dados, a eficiência da codificação de CABAC é diminuída.
[0097] Em resposta a isto, um processamento paralelo de frente de onda (WPP) foi proposto para permitir um processamento paralelo mais eficiente. No WPP, um modelo de probabilidade de CABAC para utilização na reinicialização da LCU a qual está localizada primeiro (LCU dianteira) em cada uma das linhas de LCU (daqui em diante, simplesmente também referidas como "linhas") de uma imagem é um modelo de probabilidade após a LCU o qual está localizado segundo em uma linha anterior ser processado é utilizado. Isto mantém uma dependência entre os blocos. Assim, é possível decodificar as linhas de LCU em paralelo. Além disso, o processamento de cada linha é retardado por duas LCUs em relação à linha anterior.
[0098] As informações que indicam um ponto de entrada, uma posição na qual a decodificação de uma linha de LCU é iniciada, está sinalizada em um cabeçalho de fatia. Deve ser notado que a Literatura Não de Patente (NPL) 1 descreve os detalhes do WPP.
[0099] Um método para utilizar um tile está disponível como outra proposta para melhorar a paralelização, Um quadro (imagem) é particionado em tiles. Cada um dos tiles é retangular e inclui LCUs. Os limites entre os tiles são ajustados para particionar a imagem em matrizes. Além disso, os tiles são processados em uma ordem de escane- amento de rastreio.
[00100] Todas as dependências são perdidas no limite de cada tile. A codificação de entropia tal como o CABAC é reiniciada no início do tile. Deve ser notado que somente o processamento de filtro de desbloqueio e o processamento de compensação adaptável de amostra são aplicados sobre os limites entre os tiles. Assim é possível codificar ou decodificar os tiles em paralelo. Deve ser notado que NPL 2 e NPL 3 descrevem os detalhes dos tiles.
[00101] Mais ainda, o conceito de fatias dependentes e fatias de entropia foi proposto para tornar o conceito de fatias adequado para a paralelização ao invés de para resiliência de erro a qual era o propósito original de fatias em H.264/MPEG-4 AVC. Em outras palavras, os seguintes três tipos de fatias são utilizados em HEVC: uma fatia normal, uma fatia dependente, e uma fatia de entropia.
[00102] A fatia normal é uma fatia já conhecida do H.264/MPEG-4 AVC. A predição espacial não pode ser executada entre as fatias normais. Em suma, a predição não pode ser executada sobre os limites entre as fatias. Para colocar em outro modo, a fatia normal é codifica- da sem referir a outra fatia. O CABAC é reinicializado no início de cada fatia para permitir uma decodificação separada da fatia.
[00103] A fatia normal é utilizada para o início de um quadro. Dito diferentemente, cada quadro deve iniciar da fatia normal. A fatia normal tem um cabeçalho que inclui parâmetros necessários para decodificar os dados de fatia.
[00104] A fatia de entropia é uma fatia que permite a predição espacial entre uma fatia para e a fatia de entropia, por exemplo. Aqui, a fatia pai é uma fatia normal imediatamente precedente à fatia de entropia. A fatia pai e a fatia de entropia são analisadas independentemente.
[00105] Os dados de fatia são independentemente da fatia pai e da fatia de entropia exceto os elementos de sintaxe de um cabeçalho de fatia. Em outras palavras, a decodificação de CABAC da fatia de entropia requer elementos de sintaxe incluídos em um cabeçalho de fatia da fatia pai. Por exemplo, os elementos de sintaxe incluem informações de comutação que indicam se os dados de fatia incluem parâmetros de filtragem. Quando os dados de fatia incluem os parâmetros de filtragem, uma unidade de decodificação de CABAC extrai as informações de comutação. De outro modo, a unidade de decodificação de CABAC não assume a filtragem de dados. Para colocar de outro modo, após analisar um cabeçalho de fatia da fatia normal, a unidade de decodificação de CABAC é capaz de processar a fatia pai e a fatia de entropia em paralelo.
[00106] No entanto, a fatia pai pode ser, por exemplo, a fatia normal, e é requerida para reconstruir os valores de pixel da fatia de entropia. Além disso, o CABAC é reinicializado no início da fatia para permitir a análise independente da fatia de entropia.
[00107] Um cabeçalho de fatia mais curto do que o cabeçalho de fatia da fatia normal pode ser utilizado para a fatia de entropia. O ca-beçalho de fatia inclui um subconjunto de parâmetros de codificação referente a informações transmitidas dentro do cabeçalho de fatia da fatia normal. As informações não incluídas no cabeçalho de fatia da fatia de entropia são copiadas do cabeçalho de fatia da fatia pai.
[00108] A fatia dependente é similar a uma fatia de entropia para a qual o CABAC não é reinicializado. A reinicialização do CABAC inclui um processo de inicialização no qual uma tabela de contexto (tabela de probabilidades) é inicializa para um valor padrão, e um processo de terminação (terminar processo) na codificação aritmética ou decodifi- cação aritmética.
[00109] O cabeçalho de fatia da fatia pai é utilizado para analisar e/ou decodificar a fatia dependente. Como a fatia dependente não pode ser analisada sem a fatia pai, a fatia dependente não pode ser decodificada quando a fatia pai não é obtida. A fatia pai é usualmente uma fatia que precede a fatia dependente em ordem de codificação e inclui um cabeçalho de fatia completo. O mesmo é verdadeiro para uma fatia pai da fatia de entropia.
[00110] Geralmente, a fatia de entropia pode ser considerada como dependendo dos parâmetros de cabeçalho de outra fatia, e assim a presente invenção pode ser aplicada tanto na fatia dependente quanto na fatia de entropia.
[00111] Como acima descrito, a fatia dependente e a fatia de entropia utilizam o cabeçalho de fatia (as informações não incluídas no cabeçalho de fatia da fatia dependente) da fatia imediatamente precedente em ordem de codificação das fatias. Esta regra é recursivamente aplicada. É reconhecido que uma fatia pai sobre a qual uma fatia dependente alvo depende é preferível. Referindo inclui a utilização da predição espacial entre fatias, um estado de CABAC comum, e assim por diante. A fatia dependente utiliza uma tabela de contextos de CA- BAC gerada no final da fatia imediatamente precedente. Deste modo, a fatia dependente continuamente utiliza a tabela gerada sem iniciali- zar uma tabela de CABAC para um valor padrão. A NPL 3 descreve a fatia de entropia e a fatia dependente (ver "dependent_slice_flag" na página 73, por exemplo).
[00112] No caso de utilizar o WPP, quando uma fatia dependente inicia no começo de uma linha de LCU e uma fatia que inclui uma LCU localizada para a direita superior do início da linha de LCU é indicada como sendo referível, a fatia dependente utiliza uma tabela de contexto de CABAC da LCU.
[00113] O HEVC apresenta diversos perfis. Um perfil inclui os ajustes de um aparelho de codificação de imagem e um aparelho de deco- dificação de imagem adequados para uma aplicação específica. Por exemplo, um "perfil principal" inclui somente fatias normais e fatias dependentes, mas não fatias de entropia.
[00114] Como acima apresentado, uma fatia codificada é encapsulada em uma unidade de NAL, adicionalmente encapsulada em, por exemplo, um protocolo de tempo real (RTP), e finalmente encapsulada em um pacote de protocolo de internet (IP). Esta pilha de protocolos ou outra pilha de protocolos permite a transmissão de vídeo codificado na Internet ou uma rede orientada em pacote, tal como uma rede de propriedade.
[00115] Tipicamente, uma rede inclui pelo menos um roteador, e o roteador inclui um hardware dedicado que opera em ultra alta velocidade. O roteador recebe os pacotes de IP, analisa seus cabeçalhos, e apropriadamente transfere os pacotes de IP para os seus respectivos destinos. O roteador é requerido para processar a comunicação de muitas fontes, e assim os pacotes que controlam a lógica devem ser tão simples quanto possível. O roteador pelo menos precisa verificar os campos de endereço de destino incluídos nos cabeçalhos de IP, para determinar os percursos através dos quais os pacotes de IP são transferidos. Um roteador inteligente (ciente de mídia) além disso verifica os campos dedicados nos cabeçalhos de protocolo de rede tal como os cabeçalhos de IP, cabeçalhos de RTP, e cabeçalhos de NA- LU, para adicionalmente prover suporte para a qualidade de serviço (QoS).
[00116] Como está claro da descrição acima da codificação de vídeo, os diferentes tipos de fatias definidas para o processamento paralelo tal como a fatia dependente e a fatia de entropia diferem em signi- ficância para degradação de imagem quando os dados são perdidos. A fatia dependente não pode ser analisada e decodificada sem a fatia pai. Isto é porque uma unidade de codificação de entropia ou uma unidade de decodificação de entropia não pode ser reiniciada no início da fatia dependente. Assim, a fatia pai pode ser dita ser mais importante na reconstrução de uma imagem ou vídeo do que a fatia dependente.
[00117] Em HEVC, a fatia dependente e a fatia de entropia têm uma dependência entre fatias (dependência dentro de um quadro) como um aspecto adicional da dependência. Esta dependência não é a única dependência dentro do quadro.
[00118] Como o processamento paralelo de fatias é executado para cada tile, os contextos de uma unidade de codificação aritmética e uma unidade de decodificação aritmética são determinados por ajustes padrão ou fatias codificadas ou decodificadas. No entanto, a dependência de um cabeçalho e uma dependência de inicialização de codificação aritmética são diferentes uma da outra, e assim existe uma possibilidade de retardo ou complexidade adicional em contradição aos propósitos do processamento paralelo e um mecanismo de fatia dependente.
[00119] A fatia dependente pode ser utilizada em conjunto com uma ferramenta de processamento paralelo tal como o WPP e tiles. Além disso, uma frente de onda (subfluxo) que torna possível reduzir o re- tardo de transmissão sem causar uma perda de codificação pode ser gerada utilizando a fatia dependente.
[00120] O CABAC não é reiniciado para a fatia dependente, e assim a fatia dependente pode ser utilizada como um ponto de entrada para um subfluxo de CABAC. Além disso, para indicar um ponto de entrada para uma análise independente, as informações que indicam o ponto de entrada podem ser sinalizadas em um fluxo de bits. Especificamente, quando dois ou mais subfluxos de CABAC são encapsulados em uma fatia normal ou uma fatia dependente, um ponto de entrada é sinalizado explicitamente utilizando o número de bytes para cada sub- fluxo. Aqui, o subfluxo indica uma porção de um fluxo separadamente analisável com base no ponto de entrada. Mais ainda, cada fatia dependente requer um cabeçalho de uma unidade de NAL, e assim a fatia dependente pode ser utilizada como um "marcador" de um ponto de entrada. Em suma, o ponto de entrada que corresponde a tal marcador pode ser sinalizado.
[00121] É possível simultaneamente utilizar um método para explicitamente sinalizar um ponto de entrada e um método para marcar um ponto de entrada através de uma fatia dependente. Aqui, existe uma necessidade de identificar um ponto de entrada de cada unidade de NAL (início de cada cabeçalho de NAL). Deve ser notado que qualquer método pode ser utilizado para o método de identificação. Por exemplo, os seguintes dois métodos pode ser utilizados.
[00122] O primeiro método é inserir um código de partida de 3 bytes no início de cada cabeçalho de NAL, por exemplo. O segundo método é empacotar cada unidade de NAL em um pacote diferente. Além disso, um tamanho de um cabeçalho de fatia pode ser reduzido devido à dependência da fatia.
[00123] Estes métodos permitem uma análise de CABAC paralela de uma fatia de entropia. Isto é porque o CABAC é sempre reiniciado no início da fatia de entropia. No processamento paralelo do CABAC, um gargalo pode ser superado pela análise de CABAC paralela após um processamento de reconstrução de pixel consecutivo. Especificamente, com uma ferramenta de paralelização de WPP, a decodificação de cada linha de LCU pode ser conseguida por um núcleo de processamento. Deve ser notado que diferentes linhas de LCU podem ser designadas a respectivos núcleos. Por exemplo, duas linhas podem ser designadas para um núcleo, ou uma linha pode ser designada para dois núcleos.
[00124] A Figura 3A é um diagrama que mostra uma imagem 300 particionada em linhas. Cada uma das linhas incluem as maiores unidades de codificação (LCUs). Uma linha 301 (Frente de onda 1) e uma linha 302 (Frente de onda 2) são processadas em paralelo. Como mostrado por uma seta de estados de CABAC na Figura 3A, após as primeiras duas LCUs serem decodificadas na linha 301, o processamento da linha 302 10 é iniciado. Além disso, os estados de CABAC após as primeiras duas LCUs da linha 301 serem codificados ou decodificados são utilizados para a inicialização de CABAC da linha 302. Assim, o processamento da linha 302 pode ser iniciado após o processamento das primeiras duas LCUs da linha 301 ter terminado. Em suma, o retardo das duas LCUs existe entre os dois núcleos de processamento.
[00125] A Figura 3B é um diagrama que mostra um exemplo de utilização de fatias dependentes para o WPP. Uma imagem 310 mostrada na Figura 3B inclui as linhas 311 a 314. Aqui, a linha 311 (W Frente de onda 1), a linha 312 (Frente de onda 2), e a linha 313 (Frente de onda 3) são processadas utilizando núcleos separados.
[00126] As fatias dependentes permitem o WPP que é capaz de reduzir o retardo. As fatias dependentes não tem um cabeçalho de fatia completo. Mais ainda, quando os pontos de entrada (os pontos de entrada das fatias dependentes os quais são conhecidos para a regra acima) são conhecidos, as fatias dependentes podem ser decodificadas independentemente de outras fatias. Mais ainda, as fatias dependentes permitem o WPP adequado para aplicações de baixo retardo sem causar perda de codificação.
[00127] Em um caso normal onde um subfluxo (linha de LCU) é encapsulado em uma fatia, é necessário inserir um ponto de entrada calor em um cabeçalho de fatia para seguramente executar uma codificação de entropia e decodificação de entropia em paralelo. Por esta razão, a transmissão da fatia pode ser preparada somente após o último subfluxo da fatia ser completamente codificado. Além disso, o cabeçalho de fatia é completado somente após a codificação de todos os subfluxos na fatia ter terminado. Em outras palavras, a transmissão do início da fatia não pode ser começada através de fragmentação de pacote na camada de RTP/IP até que o processamento de toda a fatia seja terminado.
[00128] No entanto, quando uma fatia dependente é utilizada, a fatia dependente pode ser utilizada como um marcador de ponto de entrada marcador, e assim não é necessário executar uma notificação utilizando um sinal explicito de um ponto de entrada. Consequentemente, é possível dividir uma fatia normal em muitas fatias dependentes sem perda de codificação. Além disso, as fatias dependentes podem ser transmitidas imediatamente após a codificação do subfluxo encapsulado ter terminado (ou antes da codificação no caso da fragmentação de pacote).
[00129] As fatias dependentes não diminuem uma dependência de predição espacial. Além disso, as fatias dependentes não diminuem uma dependência de análise. Isto é porque a análise de uma fatia dependente alvo normalmente requer estados de CABAC de uma fatia precedente.
[00130] Quando a fatia dependente não é permitida, cada linha de LCU pode ser utilizada como uma fatia. Apesar de tal configuração reduzir o retardo de transmissão, uma significativa perda de codificação é causada simultaneamente como acima apresentado.
[00131] O seguinte assume um caso onde um quadro (imagem) é encapsulado em uma fatia. Neste caso, para tornar a análise paralela possível, é necessário sinalizar, em um cabeçalho de fatia, um ponto de entrada de um subfluxo (linha de LCU). Isto causa um retardo de transmissão em um nível de quadro. Para colocar de outro modo, é necessário modificar o cabeçalho após todo o quadro ser codificado. O encapsulamento de toda a imagem em uma fatia este próprio não piora o retardo de transmissão. Por exemplo, a transmissão de parte da fatia pode ser iniciada antes da codificação ser completamente terminada. No entanto, quando o WPP é utilizado, é necessário modificar o cabeçalho de fatia mais tarde para indicar o ponto de entrada. Assim, é necessário retardar a transmissão de toda a fatia.
[00132] Como acima, a utilização da fatia dependente torna possível reduzir o retardo. Como mostrado na Figura 3B, a imagem 310 é particionada na linha 311, um fatia normal, e nas linhas 312, 313, e 314, fatias dependentes. Quando cada linha é uma fatia dependente, é possível retardar a transmissão de uma linha sem perda de codificação. Isto é porque a fatia dependente não diminui a dependência espacial e não reinicia uma máquina de CABAC.
[00133] A Figura 4A e a Figura 4B cada uma é um diagrama que mostra outro exemplo de inicialização de CABAC. A Figura 4A mostra a inicialização de CABAC quando o WPP não é utilizado. O WPP e tiles são ambos não utilizados. A utilização das fatias normais e das fatias dependentes juntas é permitida.
[00134] Uma fatia dependente (3) copia o cabeçalho de uma fatia normal (2). Em suma, a fatia normal (2) é uma fatia pai da fatia depen- dente (3). A fatia dependente (3) utiliza uma tabela de contextos gerada no final da fatia normal (2). A fatia dependente (3) depende não de uma fatia normal (1) mas da fatia normal (2). Em uma palavra, a predição espacial não existe entre a fatia normal (1) e a fatia dependente (3).
[00135] A Figura 4B é um diagrama que mostra a Inicialização de CABAC quando o WPP é utilizado, A utilização das fatias normais, das fatias dependentes, e do WPP juntos é permitida.
[00136] Uma fatia dependente (3) copia o cabeçalho de uma fatia normal (2). A fatia dependente (3) é esperada utilizar uma tabela de contextos gerada no final da LCU localizada segunda na fatia normal (1). No entanto, como a fatia (2) é uma fatia normal, é indicado que a LCU localizada segunda na fatia (1) não pode ser referida. Em suma, a fatia (1) não é referida, porque a fatia (1) não é uma fatia imediatamente precedente de uma fatia dependente em ordem de codificação.
[00137] No entanto, a fatia (2) é utilizada como uma fatia de referência para a fatia (3) e uma fatia (4). Em outras palavras, quando a decodificação da fatia (3) é iniciada, é necessário inicializar os estados de CABAC para um valor padrão (indicado por uma seta tracejada na Figura 4B). A fatia dependente (4) utiliza os estados de CABAC (seta cheia) após a segunda LCU direita superior a qual conforma com as acima mencionadas condições de WPP.
[00138] A Figura 5 é um diagrama que mostra uma sintaxe exemplar de um cabeçalho de fatia em conformidade com um modelo de referência de HEVC corrente (HM8.0). Um cabeçalho de fatia 320 inclui um elemento de sintaxe dependent_slice_flag o qual indica se uma fatia alvo é uma fatia dependente ou uma fatia normal.
[00139] Como está claro de uma linha 321 na Figura 5, quando o dependent_slice_flag é igual a 0, o cabeçalho tem informações de cabeçalho de fatia. Em suma, a fatia tem um cabeçalho completo. De outro modo, o cabeçalho não tem as informações de cabeçalho de fatia. Para colocar de outro modo, como acima, a fatia dependente e uma fatia de entropia não têm um cabeçalho de fatia completo, e referem ao cabeçalho de uma fatia normal precedente.
[00140] Os pontos de entrada são sinalizados mais tarde para suportar o processamento paralelo. Mesmo quando a unidade de codificação de entropia ou a unidade de codificação de entropia não é reiniciada, é possível independentemente executar uma decodificação paralela de parte de um fluxo de vídeo (subfluxo) entre os pontos de entrada, utilizando os pontos de entrada. Como acima apresentado, os pontos de entrada são marcados para a fatia dependente, a fatia normal, e a fatia de entropia.
[00141] Em HEVC, diversas ferramentas de processamento paralelo estão disponíveis. Como acima mencionado, as ferramentas incluem o WPP, a fatia dependente, a fatia de entropia, e o tile. No entanto, como estas ferramentas não são compatíveis umas com as outras, existe um limite para a utilização combinada das ferramentas. A utilização do tile e da fatia juntos é geralmente permitida.
[00142] No entanto, existe uma restrição em um perfil maior, uma fatia precisa ser subdividida em um número inteiro de tiles maior do que ou igual a 1, e um tile precisa ser subdividido em um número inteiro de fatias maior do que ou igual a 1. Esta restrição é tipicamente aplicada a um perfil específico (ou um nível específico de um perfil). O propósito da restrição é reduzir a complexidade de implementação de hardware.
[00143] Quando entropy_coding_sync_enabled_flag de um PPS é igual a 1 (isto é, o WPP é utilizado), e o bloco de codificação localizado primeiro em uma fatia não é o bloco de codificação localizado primeiro no bloco de árvore de codificação localizado primeiro em uma linha de blocos de árvore de codificação em um tile, uma condição sob a qual um fluxo de bits atende padrões é que o último bloco de codificação na fatia pertence à mesma linha dos blocos de árvore de codificação como o bloco de codificação localizado primeiro na fatia. Uma árvore de codificação indica uma estrutura de uma LCU e uma subdivisão adicional recursiva de cada uma das LCUs em quatro blocos. Apresentado diferentemente, quando o WPP pode ser utilizado, e a fatia não começa no início de uma linha de LCU, a fatia precisa terminar no ou antes do final da linha de LCU alvo. A NPL 3 descreve detalhes referentes a não somente meios de processamento paralelo mas também sintaxe de HEVC.
[00144] O seguinte descreve esta restrição com referência à Figura 6. Uma imagem 330 mostrada na Figura 6 inclui as fatias 331, 332, e 333, fatias normais. As fatias 331 e 332 estão incluídas em uma linha de LCU. A fatia 333 é uma fatia não permitida, porque a fatia 333 estende sobre as linhas de LCU (três linhas neste exemplo). A fatia 333 precisa terminar no final da primeira linha de LCU de acordo com a restrição acima.
[00145] A Figura 7 é um diagrama que mostra uma imagem 340 que tem uma estrutura de fatia permitida quando o WPP é utilizado. A imagem 340 inclui as fatias 341, 342, e 343, fatias normais, e uma fatia 344, uma fatia dependente. As fatias 341, 342, e 343 estão incluídas na primeira linha de LCU. A fatia 344 inclui as duas linhas subsequentes.
[00146] A inicialização de CABAC da fatia 344 depende das outras fatias 341, 342, e/ou 343, porque a fatia 344 é a fatia dependente. Quando qualquer uma das fatias 342 e 343 é uma fatia normal como mostrado na Figura 7, a fatia 344 é inicializada para estados de CA- BAC padrão. De outro modo, uma tabela de WPP é utilizada. Em outras palavras, os estados de CABAC após a LCU localizada segunda em uma linha de LCU acima de uma linha alvo ser processada são utilizados para a inicialização.
[00147] Neste exemplo, como descrito na Figura 4B e apresentado na descrição relativa da inicialização de CABAC, a inicialização de CABAC da fatia dependente 344 é executada utilizando estados de CABAC padrão predeterminados.
[00148] Assim, a inicialização de CABAC está baseada em fatias precedentes. Assim, o processamento, especialmente a análise, de uma fatia alvo depende de outras fatias. Especificamente, é determinado se um contexto de CABAC é inicializado com um valor padrão ou um valor de WPP dependendo de um tipo das fatias precedentes da fatia alvo. Deste modo, é verificado se as fatias precedentes podem ser utilizadas ou não, e um método de inicialização a ser aplicado na fatia alvo é determinado. Em suma, um processamento que tem uma ordem bastante complicada é requerido. O seguinte descreve tal pro-cessamento.
[00149] Uma primeira fatia 341 tem pelo menos duas LCUs, e assim Estados de CABAC após as duas primeiras LCUs serem codificadas ou decodificadas podem ser referidos.
[00150] Quando uma fatia 342 ou uma fatia 343 é perdida, a fatia 344 não pode ser precisamente decodificada. Isto é porque a inicialização de CABAC não pode ser executada devido a um tipo desconhecido da fatia 342 ou da fatia 343. Em outras palavras, como a inicialização de CABAC não pode ser executada sobre a fatia 344 mesmo quando somente as informações sobre as duas fatias precedentes estão ausentes e a fatia 344 foi corretamente obtida, os dados da fatia 344 corretamente obtida são descartados. Assim, é necessário executar uma ocultação de erro sobre a fatia 344. Por esta razão, existe uma possibilidade que uma degradação de imagem resulte de distorção devido a uma ocultação de erro incompleto.
[00151] Aqui, em um cabeçalho de fatia, a maioria dos elementos de sintaxe (estes são principalmente comutação de controle tal como uma operação de filtragem específica) precisa ser determinada para todas as fatias incluídas em um quadro. Além disso, apesar de alguns dos elementos de sintaxe poderem ser mudados em uma base por fatia, todos os parâmetros de controle determinados para um quadro inteiro são retidos na maioria dos processos por um aparelho de codifi-cação de imagem. Assim o método seguinte pode ser utilizado como um método de ocultação de erro. Este método requer somente informações que indicam se uma fatia perdida é uma fatia dependente ou uma fatia normal.
[00152] Quando os pacotes chegam não em ordem, um retardo de decodificação aumenta. Em outras palavras, quando uma reordenação de pacote é esperada, existe uma possibilidade de aumentar o retardo de decodificação. Isto contradiz com prover um retardo ultrabaixo utilizando uma fatia dependente, o objetivo fundamental do WPP.
[00153] A Figura 8 é um diagrama que mostra outro exemplo do processo de inicialização CABAC. A Figura 8, a estrutura das fatias mostrada na Figura 7 é assumida. Uma imagem 350 mostrada na Figura 8 inclui uma fatia 351 e uma fatia 354. A fatia 351 é uma fatia normal e localizada primeiro em um quadro, e inclui quatro LCUs. O CABAC é inicializado para um valor de estado padrão (estado zero) no início do quadro, isto é, o início da fatia 351. Deve ser notado que estados padrão podem estar presentes, e neste caso, um dos estados padrão é selecionado. Aqui, o estado padrão refere-se a um valor pre-determinado em um modelo de probabilidade de codificação aritmética.
[00154] Quando os dados da fatia 342 e da fatia 343 (ver Figura 7) estão ausentes devido à falta ou um erro apesar dos dados que pertencem a uma fatia dependente 354 serem obtidos, a fatia dependente 354 pode ser decodificada. Isto é porque, como acima apresentado a máquina de CABAC não pode ser inicializada sem os dados das fatias 342 e 343.
[00155] A Figura 9 é um fluxograma para um processo de determinação em um método de inicialização o qual é executado quando a fatia dependente 354 é obtida. Para colocar de outro modo, este fluxo- grama mostra um método de depender em duas ou mais fatias na Inicialização de CABAC.
[00156] É assumido que as seguintes condições sejam ajustadas para uma fatia (4) (fatia dependente 354). O WPP pode ser utilizado. dependent_slice_enabled_flag de um SPS é ajustado para 1. A posição da fatia (4) satisfaz a Expressão 1.
[00157] slice_address % numLCUinRow = 0 (Expressão 1)
[00158] Aqui, "%" representa uma operação de módulo (restante de divisão de inteiro). O parâmetro numLCUinRow representa o número de LCUs por linha da imagem 350. Assim, a condição da Expressão 1 é satisfeita no início da linha. O parâmetro numLCUinRow pode ser derivado dos ajustes do SPS.
[00159] Primeiro, é determinado se a fatia (4) é uma fatia dependente (S101). Quando a fatia (4) não é uma fatia dependente (Não em S101), a inicialização padrão é executada.
[00160] Como mostrado na Figura 8, quando a fatia (4) é uma fatia dependente (Sim em S101), i é ajustado para 3 (S102). Em suma, a fatia (3) imediatamente precedente à fatia (4) é ajustada como uma fatia i.
[00161] A seguir, é determinado se a fatia i começa ou não de uma linha acima de uma linha da fatia (4) (S103). Aqui, como i está ajustado para 3, a fatia i é a fatia (3) imediatamente precedente a uma fatia dependente a ser processada (fatia (4)).
[00162] Quando a fatia i não começa da linha acima da linha da fatia (4) (Não em S103), uma inicialização de WPP (inicialização utili-zando uma tabela WPP) é executada (S107).
[00163] Em contraste, quando a fatia i começa da linha acima da linha da fatia (4) (Sim em S103), isto é, no caso mostrado na Figura 8, é determinado se a fatia i é ou não uma fatia dependente (S104).
[00164] Quando a fatia i não é uma fatia dependente (Não em S104), uma posição de início da fatia i é então analisada. Especificamente, é determinado se slice_address % numLCUinRow é ou não menor do que 2 (S106). Em suma, é determinado se a posição de início da fatia i é a primeira LCU ou a segunda LCU na linha.
[00165] Quando slice_address % numLCUinRow é menor do que 2 (Sim em S106), a inicialização de WPP é executada (S107). Em contraste, quando slice_address % numLCUinRow é maior do que ou igual a 2 (Não em S106), a inicialização padrão é executada (S108).
[00166] Mais ainda, quando a fatia i é uma fatia dependente (Sim em S104), uma posição de início da fatia i é analisada. Especificamente, é determinado se slice_address % numLCUinRow é menor ou não do que 3 (S105). Em suma, é determinado se a posição de início da fatia i é a LCU localizada primeiro, segundo, ou terceiro na linha.
[00167] Quando slice_address % numLCUinRow é menor do que 3 (Sim em S105), a inicialização de WPP é executada (S107). Em contraste, quando slice_address % numLCUinRow é maior do que ou igual a 3 (Não em S105), a inicialização não é executada, e o índice i é diminuído por 1 (S109). Em suma, neste exemplo, a fatia (2) precedente à fatia alvo (fatia (4)) por duas fatias é ajustada como a fatia i. Então, os processos subsequentes à etapa S103 são executados sobre a fatia (2). Mais ainda, quando a mesma determinação é feita para a fatia (2), a fatia (1) é então ajustada como a fatia i.
[00168] A Figura 10 é um diagrama que mostra uma imagem 360. A imagem 360 inclui cinco fatias 361 a 365. A fatia 361 é uma fatia normal e inclui toda a primeira linha. A fatia 362 é uma fatia dependente e inclui toda a segunda linha. A terceira linha inclui a fatia dependente 363 e a fatia 364. A fatia 365 é uma fatia dependente e inclui toda a quarta linha.
[00169] O seguinte discute casos onde a fatia 364 é uma fatia dependente e onde a fatia 364 é uma fatia normal quando a fatia 364 é perdida ou atrasada. Além disso, aqui, a fatia 363 tem pelo menos duas LCUs.
[00170] Quando a fatia 364 é perdida, um aparelho de decodifica- ção de imagem não pode determinar um tipo da fatia 364. Quando a fatia 364 perdida é uma fatia dependente, é possível continuar a deco- dificação da fatia 365 e fatias subsequentes com uma pequena margem de erro em processamento de reconstrução. Isto é porque, como descrito com referência à Figuras 8 e 9, a fatia 365 utiliza os estados de CABAC da LCU localizada segundo na fatia 363. Assim, o processamento de inicialização de CABAC não causa erro. No entanto, como a fatia 365 utiliza predição espacial da fatia 364, existe uma possibilidade que o processamento de reconstrução de pixel cause um erro.
[00171] Em contraste, quando a fatia 364 perdida é uma fatia normal, a fatia 365 não pode ser decodificada. Isto é porque alguns dos elementos de sintaxe poderiam utilizar as informações de um cabeçalho de fatia da fatia 364 perdida. Apresentado diferentemente, é porque a fatia normal 364 é uma fatia pai da fatia dependente 365, e as informações da fatia pai são requeridas para analisar e decodificar a fatia dependente 365.
[00172] Quando o tipo da fatia 364 perdida é desconhecido, o aparelho de decodificação de imagem descarta a fatia 365 decodificável para evitar uma decodificação errada que é provável ocorrer quanto a fatia 364 perdida é uma fatia normal. Isto é ineficiente porque a fatia 365 é descartada mesmo quando os dados da fatia 365 são corretamente obtidos. Além disso, é necessário descartar todas as fatias de- pendentes subsequentes à fatia 365.
[00173] Quando a fatia 364 é uma fatia normal, uma máquina CA- BAC é inicializada para um valor de CABAC padrão (referir ao caso de Não em S101 na Figura 9) para decodificar a fatia 365. Assim, a fatia 365 não depende da fatia 363. Além disso, a predição espacial entre a fatia 363 e a fatia 365 não é executada. Como acima, o CABAC é ini- cializado para o valor padrão na posição de início da fatia 365, e assim a fatia dependente 365 tornar-se similar à fatia normal.
[00174] No entanto, a fatia normal tem um cabeçalho de fatia completo. Em contraste, a fatia 365 tem somente um curto cabeçalho de fatia e depende de parâmetros ajustados por um cabeçalho de fatia de uma fatia normal precedente. Em outras palavras, quando a fatia 365 é uma fatia dependente, apesar de existir a vantagem que o tamanho do cabeçalho pode ser reduzido, a vantagem não é tão grande. Em contraste, quando a fatia 365 é uma fatia normal, a fatia 365 pode ser decodificada. Como há pouco descrito, nos casos acima, a vantagem é considerada ser maior quanto a fatia 365 é ajustada como a fatia normal do que quando a fatia 365 é ajustada como a fatia dependente.
[00175] No entanto, no WPP, a fatia dependente está projetada para não assegurar a robustez contra perda mas permitir uma operação de WPP em um retardo ultrabaixo. Por outro lado, no caso de uma aplicação de retardo ultrabaixo, sobre uma rede tal como uma rede em tempo real, uma perda de pacote e reordenação de pacotes são esperadas. Em tal caso, quando a fatia 364 pode ser finalmente obtida, a fatia 365 pode ser decodificada. No entanto, pelo menos um retardo aumentado e a perda de pacote são causados. Assim o WPP não é executado em um estado ótimo em um ambiente de perda.
[00176] A Figura 11 é um diagrama que mostra outro problema associado com a inicialização de CABAC quando o WPP é utilizado, e mostra uma imagem 370. A imagem 370 inclui quatro fatias 371 a 374.
[00177] A fatia 371 é uma fatia normal, e a fatia 372 é uma fatia dependente. Aqui, a fatia 371 tem pelo menos duas LCUs. A primeira linha da imagem 370 inclui as fatias 371 e 372. A segunda linha da imagem 370 inclui as fatias 373 e 374, fatias dependentes.
[00178] Neste caso, um aparelho de codificação de imagem é assumido utilizar pelo menos dois núcleos de processador. Para dizer de outro modo, quando o WPP é utilizado, o aparelho de codificação de imagem codifica e analisa duas linhas de LCUs em paralelo. Assim, a fatia 373 torna-se disponível muito antes da fatia 372 tornar-se disponível.
[00179] No entanto, como a inicialização de CABAC para a fatia 373 depende da fatia 372, a decodificação da fatia 373 não pode ser iniciada. Assim, não é possível fazer um retardo de iniciar a codificação ou a decodificação entre as linhas menor do que uma linha de LCU inteira. Isto contradiz com o propósito do WPP de diminuir o retardo até duas LCUs.
[00180] O seguinte descreve um processamento paralelo de codificação e transmissão de uma fatia, como mostrado na Figura 11. Duas unidades de processamento tal como núcleos de processador e processadores simultaneamente codificam as fatias (fatia 371 e fatia 373) localizadas primeiro nas respectivas linhas. Quando a codificação termina, as fatias codificadas 371 e 373 são encapsuladas em pacotes que têm números de pacote (packet_id) de 0 e 4, respectivamente. Aqui, o número de pacote de 4 é selecionado para reservar um pequeno número para a fatia 372 e possivelmente para outro NALU.
[00181] Quando a codificação da fatia 372 está completa, a fatia 372 é encapsulada em um pacote que tem um número de pacote de 1 e é transmitida. Além disso, duas unidades de NALs que têm números de pacotes correspondentes de 2 e 3 e dados simulados (enchimento) são gerados para evitar a determinação de pacote perdido números 2 e 3 como perda de pacote.
[00182] Em HEVC, isto é conseguido utilizando uma mensagem filler_data SEI ou um tipo de unidade de NAL predeterminado reservado para dados de enchimento. Como acima, quando uma ID de pacote precisa ser aumentada por 1 para cada unidade de NAL, um NALU de tipo de enchimento é utilizado para preencher o intervalo.
[00183] A inicialização de uma linha alvo depende da LCU localizada segundo em uma linha acima da linha alvo. Mais ainda, uma inserção de fatia após a LCU localizada segundo é problemática em termos de influenciar a determinação da inicialização de CABAC. A presente invenção provê método para derivar uma relação mais eficiente entre WPP e utilização de uma fatia dependente, com base nesta análise e problema. Uma situação deve ser evitada onde a inicialização de CA- BAC para uma linha depende de outra linha para manter a eficiência do WPP.
[00184] Um método de decodificação de imagem de acordo com um aspecto da presente invenção é um método de decodificação de imagem para decodificar um fluxo de bits que inclui um sinal codificado que resulta da codificação de uma pluralidade de fatias nas quais a imagem é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação, o método compreendendo decodificar o sinal codificado, em que cada uma das fatias é ou uma fatia normal que tem, em um cabeçalho de fatia, informações utilizadas para fatia ou uma fatia dependente a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia, a imagem inclui uma pluralidade de linhas cada uma das quais inclui duas ou mais unidades de codificação, e quando a fatia normal começa em uma posição outra que o início de uma primeira linha, uma segunda linha imediatamente seguinte à primeira linha não comece com a fatia dependente.
[00185] Com isto, é possível impedir uma ocorrência de um caso onde uma fatia no início da segunda linha refere-se a uma fatia em uma posição outra que o início da primeira linha, por meio disto permitindo uma eficiência aperfeiçoada de quando um processamento paralelo e fatias dependentes são utilizados juntos.
[00186] Por exemplo, na decodificação, pode ser que a primeira linha e a segunda linha sejam decodificadas em paralelo, e quando a decodificação da segunda linha é iniciada, a segunda linha é decodificada sem referir às informações de partição que indicam uma estrutura de fatia da primeira linha.
[00187] Por exemplo, na decodificação, a decodificação aritmética da segunda linha pode ser inicializada utilizando um contexto obtido após a decodificação aritmética de uma das unidades de codificação que está localizada segundo na primeira linha.
[00188] Por exemplo, o método de decodificação de imagem pode ainda compreender obter, de um cabeçalho de fatia de uma fatia, as informações que indicam se a fatia é ou a fatia normal ou a fatia dependente.
[00189] Por exemplo, pode ser que uma fatia em um início da imagem seja a fatia normal, e cada uma de todas outras fatias seja a fatia dependente.
[00190] Por exemplo, cada uma das fatias pode incluir uma totalidade de uma ou mais das linhas.
[00191] Por exemplo, a decodificação aritmética da fatia dependente pode ser inicializada utilizando um contexto de uma fatia pai cujo cabeçalho de fatia é utilizado para a fatia dependente.
[00192] Por exemplo, o método de decodificação de imagem pode ainda compreender obter um indicador de restrição do fluxo de bits quando a fatia dependente é permitida, o indicador de restrição indicando que o particionamento de uma imagem é restrito.
[00193] Mais ainda, um método de codificação de imagem de acor- do com um aspecto da presente invenção é um método de codificação de imagem para codificar uma pluralidade de fatias nas quais uma imagem está particionada e cada uma das quais inclui uma pluralidade de unidades de codificação, para gerar um fluxo de bits, o método compreendendo: particionar a imagem nas fatias; e codificar as fatias que resultam do particionamento, em que cada uma das fatias é ou uma fatia normal que tem, em um cabeçalho de fatia, as informações utilizadas para outra fatia ou uma fatia dependente a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia, a imagem inclui uma pluralidade de linhas cada uma das quais inclui duas ou mais das unidades de codificação, e no particio- namento, quando a fatia normal começa em uma posição diferente de um início de uma primeira linha, a imagem é particionada nas fatias para fazer com que uma segunda linha imediatamente seguinte à primeira linha não comece com a fatia dependente.
[00194] Com isto, é possível impedir uma ocorrência de um caso onde uma fatia no início da segunda linha refere-se a uma fatia em uma posição outra que o início da primeira linha, por meio disto permitindo uma eficiência aperfeiçoada de quando um processamento paralelo e fatias dependentes são utilizados juntos.
[00195] Por exemplo, no particionamento, pode ser que, no caso onde um aparelho de decodificação de imagem decodifica a primeira linha e a segunda linha em paralelo, a imagem é particionada nas fatias para permitir a decodificação da segunda linha sem referir às informações de partição quando o aparelho de decodificação de imagem começa decodificar a segunda linha, as informações de partição indicando uma estrutura de fatia da primeira linha.
[00196] Por exemplo, na codificação, a codificação aritmética da segunda linha pode ser inicializada utilizando um contexto obtido após a codificação aritmética de uma das unidades de codificação que está localizada segundo na primeira linha.
[00197] Por exemplo, o método de codificação de imagem pode ainda compreender incorporar, em um cabeçalho de fatia de uma fatia, as informações que indicam se a fatia é ou a fatia normal ou a fatia dependente.
[00198] Por exemplo, pode ser que uma fatia em um início da imagem seja a fatia normal, e cada uma de todas outras fatias seja a fatia dependente.
[00199] Por exemplo, cada uma das fatias pode incluir uma totalidade de uma ou mais das linhas.
[00200] Por exemplo, a codificação aritmética da fatia dependente pode ser inicializada utilizando um contexto de uma fatia pai cujo cabeçalho de fatia é utilizado para a fatia dependente.
[00201] Por exemplo, o método de codificação de imagem pode ainda compreender incorporar um indicador de restrição no fluxo de bits quando a fatia dependente é permitida, o indicador de restrição indicando que o particionamento de uma imagem é restrito.
[00202] Mais ainda, um aparelho de decodificação de imagem de acordo com um aspecto da presente invenção é um aparelho de deco- dificação de imagem o qual decodifica um fluxo de bits que inclui um sinal codificado que resulta da codificação de uma pluralidade de fatias nas quais imagem é particionada e cada das quais inclui uma pluralidade de unidades de codificação, o aparelho compreendendo uma unidade de decodificação configurada para decodificar o sinal codificado, em que cada uma das fatias é ou uma fatia normal que tem, em um cabeçalho de fatia, as informações utilizadas para outra fatia ou uma fatia dependente a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia, a imagem inclui uma pluralidade de linhas cada uma das quais inclui duas ou mais das unidades de codificação, e quando a fatia normal começa em uma posi- ção diferente de um início de uma primeira linha, uma segunda linha imediatamente seguinte à primeira linha não inicia comece com a fatia dependente.
[00203] Com isto, é possível impedir uma ocorrência de um caso onde uma fatia no início da segunda linha refere-se a uma fatia em uma posição outra que o início da primeira linha, por meio disto permitindo uma eficiência aperfeiçoada de quando um processamento paralelo e fatias dependentes são utilizados juntos.
[00204] Mais ainda, um aparelho de codificação de imagem de acordo com um aspecto da presente invenção é um aparelho de codificação de imagem o qual codifica uma pluralidade de fatias nas quais uma imagem e particionada e cada uma das quais inclui uma pluralidade de unidades de codificação, para gerar um fluxo de bits, o aparelho compreendendo: uma unidade de particionamento configurara para particionar a imagem nas fatias; e uma unidade de codificação configurada para codificar as fatias que resultam do particionamento, em que cada uma das fatias é ou uma fatia normal que tem, em um cabeçalho de fatia, as informações utilizadas para outra fatia ou uma fatia dependente a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia, a imagem inclui uma pluralidade de linhas cada uma das quais inclui duas ou mais das unidades de codificação, e a unidade de particionamento está configurada para, quando a fatia normal começa em uma posição diferente de um início de uma primeira linha, particionar a imagem nas fatias para fazer com que uma segunda linha imediatamente seguinte à primeira linha não inicia comece com a fatia dependente.
[00205] Com isto, é possível impedir uma ocorrência de um caso onde uma fatia no início da segunda linha refere-se a uma fatia em uma posição outra que o início da primeira linha, por meio disto permitindo uma eficiência aperfeiçoada de quando um processamento para-lelo e fatias dependentes são utilizados juntos.
[00206] Mais ainda, um aparelho de codificação e decodificação de imagem de acordo com um aspecto da presente invenção inclui o aparelho de codificação de imagem e o aparelho de decodificação de imagem.
[00207] Cada uma das modalidades abaixo descritas mostra um exemplo específico. Os valores numéricos, formas, materiais, elementos estruturais, a disposição e conexão dos elementos estruturais, etapas, a ordem das etapas, etc. mostrados nas modalidades seguintes são meros exemplos, e portanto não limitam a presente invenção. Portanto, entre os elementos estruturais nas modalidades seguintes, os elementos estruturais não recitados em qualquer uma das reivindicações independentes que mostram os conceitos mais genéricos são descritos como elementos estruturais arbitrários.
[00208] Em um método de codificação de imagem e um método de decodificação de imagem de acordo com a Modalidade 1, um indicador é adicionado o qual claramente especifica a inicialização de CA- BAC.
[00209] A Figura 12 é um diagrama que mostra a sintaxe de um cabeçalho de fatia de acordo com a Modalidade 1. Um cabeçalho de fatia 380 inclui uma nova linha 381 que tem um novo elemento de sintaxe "entropy_default_initialization_flag."
[00210] Este entropy_default_initialization_flag é um indicador que indica, quando ajustado para um valor predeterminado, que o CABAC de uma fatia é inicializado com um valor padrão (predeterminado) de CABAC. O sinalizador é um indicador de um bit que tem um primeiro valor tal como "1" que indica que uma fatia é inicializada com um valor de CABAC e o segundo valor tal como "0" indicando que a inicialização é executada por um diferente método. Deve ser notado que as de- signações dos valores de "1" e "0" podem ser trocadas.
[00211] O "método diferente" para determinar a inicialização pode ser um método predeterminado tal como a inicialização baseada em um valor de uma fatia precedente. No entanto, o "método diferente" pode incluir outro fluxo de determinação similar ao fluxo mostrado na Figura 9, pode meio disto possivelmente derivando um método de inicialização utilizando um valor de CABAC padrão.
[00212] Um aparelho de decodificação de imagem de acordo com esta modalidade decodifica um fluxo de bits de uma sequência de vídeo codificada que inclui fatias de imagem pelo menos parcialmente codificadas por codificação aritmética. O aparelho de decodificação de imagem inclui: uma unidade de análise a qual extrai, dos dados de fluxo de bits de uma fatia, um indicador de inicialização que indica se um modelo de probabilidade de decodificação aritmética da fatia é ou não inicializado com um valor predeterminado; uma unidade de controle a qual controla se o modelo de probabilidade de decodificação aritmética é inicializado ou não com o valor predeterminado, de acordo com o indicador de inicialização; e uma unidade de decodificação aritmética a qual decodifica a fatia aplicando uma decodificação aritmética .
[00213] Por exemplo, a codificação aritmética pode ser uma codificação aritmética adaptável ao contexto como definido em HEVC. No entanto, a presente invenção não está limitada a isto.
[00214] O valor predeterminado é um valor padrão conhecido para um aparelho de codificação de imagem e o aparelho de decodificação de imagem, e não muda com o conteúdo codificado.
[00215] O indicador de inicialização de preferência refere-se a um sinalizador de 1 bit com "1" indicando que o modelo de probabilidade de decodificação aritmética é inicializado com o valor predeterminado e "0" indicando que o modelo de probabilidade de decodificação aritmética é inicializado por um método diferente.
[00216] Somente quando uma fatia alvo é uma fatia dependente, o indicador necessita estar presente. Isto é porque quando a fatia alvo é uma fatia normal, o valor padrão de CABAC é utilizado para inicialização (referir ao caso de Não em S101 na Figura 9). Assim, é primeiro analisado se a fatia alvo é ou não uma fatia dependente verificando uma condição dependent_slice_flag == 1.
[00217] Mais ainda, quando o processamento paralelo de uma fatia e outra fatia é executado, o indicador de inicialização (sinalizador) é vantajoso. Por exemplo, o processamento paralelo pode ser o WPP. Assim, somente quando uma condição de entro- py_coding_sync_enabled_flag == 1 é verdadeira, a sintaxe do cabeçalho de fatia mostrado na Figura 12 inclui um indicador de inicialização entropy_default_initialization_flag.
[00218] Mais ainda, o indicador de inicialização é apropriado somente quando a fatia começa no início de uma linha de LCU. Isto é porque a inicialização imediata de CABAC é somente então requerida permitir o processamento paralelo. Isto está indicado por uma condição slice_address % PicWidthlnCtbsY == 0 na sintaxe mostrada na Figura 12.
[00219] Como acima apresentado, um elemento de sintaxe "sli- ce_address" indica um começo da fatia com uma compensação incluída no fluxo de bits. "PicWidthlnCtbsY" indica uma largura de um quadro com o número de unidades de blocos de árvore de codificação (LCUs).
[00220] Como mostrado na linha 381, um produto lógico das três condições é utilizado para a determinação. Em outras palavras, entro- py_default_initialization_flag é transmitido para claramente sinalizar o método de inicialização somente quando a Expressão 2 abaixo é verdadeira.dependent_slice_flag == 1&& entropy_coding_sync_enabled_flag == 1 & slice_address % PicWidthlnCtibsY == 0 (Expressão 2)
[00221] Quando a Expressão 2 não é verdadeira, a inicialização é executada com base em um método normal, isto é, regras de WPP.
[00222] Para colocar em outro modo, o método de codificação de imagem e o método de decodificação de imagem de acordo com esta modalidade incluem: subdividir uma fatia de uma imagem em unidades de codificação que correspondem a blocos de pixel da imagem; e extrair, pela unidade de análise, um indicador de inicialização de dados de cabeçalho, somente quando a fatia é uma fatia dependente. Uma unidade de decodificação aritmética de fatias dependentes é inicializa- da com base em um contexto de uma unidade de decodificação aritmética de fatia pais que correspondem às respectivas fatias dependentes.
[00223] Mais ainda, somente quando uma decodificação paralela de uma linha composta das unidades de codificação é permitida, pode a unidade de análise extrair o indicador de inicialização dos dados de cabeçalho.
[00224] Apresentado diferentemente, de acordo com esta modalidade, a fatia da imagem é subdivida nas unidades de codificação que correspondem aos blocos de pixel da imagem, e o indicador de inicialização dos dados de cabeçalho é extraído pela unidade de análise somente quando a fatia começa do início da linha composta dos blocos de unidade de codificação da imagem.
[00225] A Figura 13 é um fluxograma de um método de determinação de inicialização de CABAC para uma fatia de acordo com esta modalidade. A Figura 13 assume um caso da imagem 350 mostrada na Figura 8. Assumindo que a fatia (4) (fatia 354) e a fatia (1) (fatia 351) são analisadas em paralelo, a seguinte determinação é feita.
[00226] Primeiro, é determinado se a fatia (4) é ou não uma fatia dependente (S111). Quando a fatia (4) é uma fatia dependente e ou-tras condições (processamento paralelo de linhas é executado e uma fatia começa no início de uma linha de LCU) são satisfeitas (Sim em S111), um indicador de inicialização "entro-py_default_initialization_flag" é verificado para determinar um método de execução de inicialização (S112).
[00227] Quando o entropy_default_initialization_flag indica aplicação inicialização padrão (Não em S112), a inicialização padrão é aplicada (S114). Em contraste, quando o entro- py_default_initialization_flag não é indicar a aplicação da inicialização padrão (Sim em S112), a inicialização do WPP é aplicada na qual uma fatia precedente é referida (S113).
[00228] Deve ser notado que esta modalidade não está limitada à sinalização do indicador de inicialização no cabeçalho de fatia. O mesmo indicador pode ser incorporado em estrutura de dados, por exemplo, uma mensagem de informações de melhoramento suplementar.
[00229] A Modalidade 1 torna possível conseguir um processamento de linha de LCU paralelo eficiente tal como o WPP e a fatia dependente. Por outro lado, um novo elemento de sintaxe esta incorporado em um cabeçalho de fatia. Em resposta, a independência de inicialização de CABAC para fatias durante o processamento paralelo pode ser conseguida modificando as regras de inicialização, para evitar a adição do novo elemento de sintaxe.
[00230] Na Modalidade 2, a definição da fatia dependente e as operações para a fatia dependente por um aparelho de codificação de imagem e um aparelho de decodificação de imagem são modificadas. Isto pode ser conseguido adicionando restrições a padrões de fluxo de bits.
[00231] Em outras palavras, o aparelho de decodificação de ima- gem de acordo com esta modalidade decodifica um fluxo de bits de uma sequência de vídeo codificada que inclui fatias de imagem subdivididas em unidades de codificação e pelo menos parcialmente codificadas por codificação aritmética. O aparelho de decodificação de imagem inclui uma unidade de análise a qual extrai, de um fluxo de bits, uma primeira linha de unidades de codificação e uma segunda linha de unidades de codificação, em que as unidades de codificação da primeira linha e da segunda linha são designadas a fatias para evitar referir às informações de partição de uma primeira fatia na primeira linha quando uma unidade de decodificação aritmética para uma segunda fatia na segunda linha é inicializada. Em posição de início da primeira fatia na primeira linha está atrás da segunda fatia na segunda linha por um número predeterminado de unidades de codificação. O aparelho de decodificação de imagem ainda inclui a unidade de decodificação aritmética a qual executa uma decodificação aritmética da primeira fatia e da segunda fatia pelo menos parcialmente em paralelo, para decodificar cada uma das fatias.
[00232] A Figura 14 é um diagrama para descrever a função desta modalidade, e mostra uma imagem 390 particionada em fatias. A imagem 390 inclui quatro fatias que são uma fatia normal 391, uma fatia normal 392, uma fatia dependente 393, e uma fatia normal 394.
[00233] As três fatias 391, 392 e 393 estão incluídas na primeira linha de unidades de codificação (LCUs). A fatia 394 inclui todas as segunda e terceira linhas.
[00234] A primeira restrição exemplar aplicada ao fatiamento e processamento paralelo em uma base de linha é que "quando entro- py_code_sync_enabled_flag e dependent_slice_enabled_flag são iguais a 1, uma fatia normal pode começar somente no início de uma linha de blocos de árvore de codificação." Além disso, ambos os sinalizadores, o entropy_code_sync_enabled_flag e o depen dent_slice_enabled_flag, estão incluídos em um conjunto de parâmetros de imagem. Deve ser notado que um bloco de árvore de codificação (CTB) e uma maior unidade de codificação (LCU) referem à mesma unidade. O CTB é utilizado em um texto padrão (referir à NPL 3). Além disso, apesar da LCU ser utilizada em um texto padrão da versão anterior, o CTB é utilizado em um texto padrão da versão corrente.
[00235] Quando a fatia normal começa somente no início de uma linha de unidades de codificação (linha de LCU), uma fatia dependente em outra linha a qual é subsequente à fatia normal pode sempre referir a estados de CABAC da fatia normal. Aqui, os estados de CABAC são estados de CABAC após a primeira LCU ou as primeiras duas LCUs serem processadas pelo WPP. Além disso, como um cabeçalho da fatia dependente depende de um cabeçalho da fatia normal precedente à dependente, quando a fatia normal 394 é perdida, é necessário descartar a fatia dependente.
[00236] Assim na primeira restrição exemplar, uma fatia normal sempre começa no início de linha de LCU. Para colocar diferentemente, em uma linha de LCU, a primeira fatia é uma fatia normal, e as outras fatias são fatias dependentes. Isto significa que a fatia normal é permitida somente como a primeira fatia em uma LCU. Além disso, em uma linha de LCU, as fatias outras que a primeira fatia são sempre fatias dependentes.
[00237] A primeira restrição exemplar não precisa ser estrita. É somente necessário tornar pelo menos uma ou duas LCUs da fatia normal em uma linha precedente disponíveis para a fatia dependente, para permitir a aplicação de inicialização de WPP.
[00238] Alternativamente, a segunda restrição exemplar pode ser aplicada como outra restrição (regra). Na segunda restrição exemplar, uma fatia normal não começa após o bloco de árvore de codificação localizado segundo em uma linha de blocos de árvore de codificação.A fatia normal precisa começar no início de uma linha de LCU, e assim, por exemplo, não é aceitável ajustar, como a fatia normal, a fatia 392 localizada segundo como mostrado na Figura 14.
[00239] É suficiente que a posição de início da primeira fatia seja antes da unidade de codificação localizada segundo na primeira linha. Mais ainda, a primeira fatia pode ser uma fatia normal, e a segunda fatia pode ser uma fatia dependente utilizando um cabeçalho de fatia da fatia normal. Mais ainda, a posição de início da primeira fatia pode ser o início da primeira linha.
[00240] A Figura 15 é um fluxograma para um processo de determinação em um método de inicialização CABAC quando as regras acima são determinadas. O seguinte descreve o processo de determinação utilizando o exemplo mostrado na Figura 8.
[00241] Primeiro, é determinado se a fatia (4) é ou não uma fatia dependente (S111). Quando a fatia (4) é uma fatia dependente (Sim em S111), a inicialização de WPP é executada (S113). Em contraste, quando a fatia (4) não é uma fatia dependente (Não em S111), uma inicialização padrão é executada (S114).
[00242] Como acima descrito, uma unidade de codificação de entropia adaptável ao contexto é utilizada em um método de codificação de imagem de acordo com esta modalidade. O método de codificação de imagem é aplicado em um quadro de imagem particionado em pelo menos duas porções. As pelo menos duas porções são uma porção e uma segunda porção as quais podem ser pelo menos parcialmente codificadas e decodificadas em paralelo.
[00243] De acordo com esta modalidade, a inicialização de uma tabela de contexto da segunda porção de um fluxo é determinada, quando a primeira porção de um subfluxo é subdividida em fatias, por um método que não depende da subdivisão da primeira porção. Por exemplo, o WPP é executado para cada linha (cada linha de LCU), e assim uma porção do fluxo pode corresponder à linha de LCU.
[00244] Deve ser notado que a presente invenção não está limitada às restrições exemplares acima. As restrições exemplares podem ser formuladas em um modo diferente. O seguinte descreve outras restrições exemplares.
[00245] Quando uma fatia normal satisfaz uma condição da Expressão 3 abaixo, uma fatia que começa no início de uma LCU subsequente não é uma fatia dependente.
[00246] slice_address % PicWidthlnCtbsY > 1 (Expressão 3)
[00247] Para o bem da simplicidade, a condição pode ser representada pela Expressão 4 abaixo.
[00248] slice_address % PicWidthlnCtbsY ! = 0 (Expressão 4)
[00249] Aqui, "! =" indica inigualdade. Quando entro-py_coding_sync_enabled_flag é igual a 1, isto é, o processamento paralelo de linha de LCUs é permitido, estas restrições são aplicáveis. Mais ainda, "slice_address" indica uma posição de uma fatia que começa em um fluxo de bits, e o parâmetro "PicWidthlnCtbsY" indica uma largura de uma imagem (quadro) em uma LCU (bloco de árvore de codificação).
[00250] Colocando de outro modo, quando a fatia normal não começa no início da linha, uma fatia que começa em uma linha imediatamente subsequente linha não é uma fatia dependente (terceira restrição exemplar). Esta condição elimina a necessidade da decodifica- ção de uma fatia na segunda linha esperar até que uma fatia normal em uma posição na primeira linha seja analisada (decodificada).
[00251] Isto significa que quando uma fatia normal começa em uma posição outra que o início da primeira linha, a linha imediatamente seguinte à primeira linha não começa com uma fatia dependente. Apresentado diferentemente, quando pelo menos uma da fatia localizada segundo e uma fatia subsequente na primeira linha é uma fatia normal,a fatia no começo da segunda linha é uma fatia normal.
[00252] O seguinte descreve a influência da terceira restrição exemplar com referência à Figura 16. Uma imagem 400 mostrada na Figura 16 35 inclui três fatias 401 a 403 incluídas na primeira linha. Entre as três fatias as primeiras duas fatias 401 e 402 localizadas primeiro e segundo são fatias normais, e a fatia 403 localizado terceiro é uma fatia dependente.
[00253] Esta condição não permite que a fatia 404 localizada quarto ser determinada como a fatia dependente. Isto indicado na Figura 16 marcando uma cruz na fatia 404.
[00254] Assim, o fluxo de bits pode incluir fatias normais e fatias dependentes, e a decodificação das fatias normais e das fatias dependentes está baseada em parâmetros sinalizados nos cabeçalhos de fatia das fatias normais. Quando uma fatia normal começa em uma posição após o início de uma linha de LCU, a próxima linha de LCU não começa com uma fatia dependente.
[00255] Mais ainda, exemplos específicos estão descritos com referência à Figura 17A até a Figura 17D. Por exemplo, como mostrado na Figura 17A, quando a primeira linha inclui uma fatia normal (3), a fatia dependente não pode ser ajustada como uma fatia (4) no início da segunda linha. Além disso, quando pelo menos uma de uma fatia (2) e a fatia (3) é uma fatia normal, a fatia (4) não pode ser ajustada como a fatia dependente. Como um resultado, como mostrado Figura 17B, a fatia (4) precisa ser ajustada como a fatia normal. Mais ainda, na terceira restrição exemplar, as imagens como mostradas na Figura 17C e Figura 17D são também permitidas.
[00256] Deve ser notado que apesar das imagens mostradas na Figura 17A, Figura 17B, e Figura 17D não serem permitidas na acima apresentada na primeira restrição exemplar, a imagem mostrada na Figura 17C é permitida. Além disso, apesar das imagens mostradas na Figura 17A e Figura 17B não serem permitidas na segunda restrição exemplar, as imagens mostradas na Figura 17C e Figura 17D são permitidas.
[00257] O seguinte descreve a quarta restrição exemplar com referência à Figura 18. Quando entropy_coding_sync_enabled_flag e de- pendent_slice_enabled_flag são iguais a 1, nenhuma fatia normal é permitida exceto a primeira fatia em um quadro (quarta restrição exemplar).
[00258] Apresentado diferentemente, quando um processamento paralelo é permitido e fatias dependentes são habilitadas, uma fatia normal é permitida somente como a primeira fatia no quadro. Em suma, todas as fatias no quadro são fatias dependentes exceto a primeira fatia. Em outras palavras, a fatia no início de uma imagem é uma fatia normal, e todas as outras fatias na imagem são fatias dependentes.
[00259] Uma imagem 410 mostrada na Figura 18 inclui cinco fatias 411 a 415. As fatias 411, 412, e 415 são fatias normais, e as fatias 413 e 414 são fatias dependentes. as fatias normais 412 e 415 não são permitidas exceto a fatia normal 411 localizada primeiro, de acordo com a quarta restrição exemplar. Em suma, as fatias 412 e 415 precisam ser fatias dependentes. Mais ainda, entre as imagens mostradas na Figura 17A até a Figura 17D, somente a imagem mostrada na Figura 17D é permitida na quarta restrição exemplar.
[00260] Deve ser notado que a utilização da quarta restrição exemplar causa um demérito referente à robustez contra perda de pacote. As fatias normais são usualmente utilizadas para reduzir uma dependência ou propagação de erro em um ambiente de perda. Um quadro onde somente a fatia localizada primeiro é uma fatia normal assume um risco que todas as fatias não possam ser decodificadas quando a fatia localizada primeiro não pode ser decodificada.
[00261] Mais ainda, a seguinte restrição pode ser utilizada como outra restrição. Quando uma fatia (fatia normal ou dependente) começa no meio de uma linha de LCU (isto é, uma posição diferente do início da linha), a próxima linha de unidades de codificação não começa com uma fatia dependente (quinta restrição exemplar).
[00262] Deve ser notado que como é claro para uma pessoa versada na técnica, é possível arbitrariamente combinar as restrições acima descritas. Em outras palavras, a primeira até a quinta restrições exemplares podem ser aplicadas em combinação.
[00263] O seguinte ainda descreve outra restrição exemplar. Quando entropy_coding_sync_enabled_flag é igual 1, uma linha de LCU não pode ser subdividida em fatias (sexta restrição exemplar). Quando esta restrição é aplicada, as fatias 412 e 413 não são permitidas na estrutura de fatia mostrada na Figura 18. Colocando de outro modo, quando um processamento paralelo de linhas de unidades de codificação é permitido, uma fatia é permitida somente incluir uma linha inteira de unidades de codificação ou linhas inteiras de unidades de codificação.
[00264] Como acima apresentado, o fluxo de bits inclui as fatias normais e as fatias dependentes. A decodificação das fatias normais e das fatias dependentes está baseada nos parâmetros sinalizados nos cabeçalhos de fatia das fatias normais. Após ser determinado que somente a fatia localizada primeiro em uma imagem seria uma fatia normal e as fatias restantes seriam fatias dependentes, a imagem é particionada em fatias.
[00265] Cada uma das fatias inclui a totalidade de um número m de linhas de unidades de codificação. Aqui, m é um inteiro maior do que ou igual a 1. Especificamente, cada uma das fatias inclui a totalidade de uma ou mais linhas.
[00266] Quando as fatias dependentes são permitidas e um do WPP e tile é permitido além de ou ao invés da aplicação da restrição, um indicador que indica a restrição pode ser incorporado no fluxo de bits. Por exemplo, este indicador está incorporado em um SPS ou um PPS. Deve ser notado que o indicador pode ser incorporado em outra mensagem tal como uma mensagem SEI ou em qualquer mensagem de informações usabilidade de vídeo (VUI).
[00267] O aparelho de decodificação de imagem identifica uma restrição a ser aplicada, com base no indicador. Por exemplo, esta restrição é que uma fatia normal é permitida somente no início de uma linha de LCU (WPP) ou um tile. Deve ser notado que isto é meramente uma restrição exemplar, e qualquer uma das restrições acima mencionadas, uma combinação das restrições, ou uma restrição adicional não explicitamente descrita pode ser aplicada.
[00268] Por exemplo, o indicador pode ser um sinalizador de 1 bit, para uma restrição predeterminada, se a restrição deve ou não ser aplicada. Restrições selecionáveis podem estar disponíveis, e as informações que indicam uma restrição selecionada estão sinalizadas no fluxo de bits para o aparelho de decodificação de imagem. Apresentando diferentemente, ao invés de limitar explicitamente a utilização como descrito nos exemplos acima, o aparelho de codificação de imagem pode notificar o aparelho de decodificação de imagem que tais restrições são utilizadas. Assim, qualquer um dos exemplos refe-rentes às restrições pode ser aplicado.
[00269] Assim, um método de decodificação de imagem de acordo com uma implementação da presente invenção inclui obter, de um fluxo de bits, uma indicador de restrição que indica que o particionamen- to de uma imagem é restrito, quando a fatia dependente é permitida. Um método de codificação de imagem de acordo com uma implementação da presente invenção inclui incorporar, em um fluxo de bits, um indicador de restrição que indica que o particionamento de uma ima- gem é restrito, quando a fatia dependente é permitida.
[00270] Deve ser notado que se adicionar ou não o indicador does não precisa ser determinado dependendo se o WPP, tile, ou fatia dependente é permitido ou não.
[00271] Mais ainda, um método de decodificação de imagem de acordo com uma implementação da presente invenção é um método de decodificação de imagem para decodificar um fluxo de bits que inclui um sinal codificado que resulta da codificação de uma pluralidade de fatias nas quais uma imagem é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação (LCUs), e o método de decodificação de imagem inclui decodificar o sinal codificado. Um método de codificação de imagem de acordo com uma implementação da presente invenção é um método de codificação de imagem para codificar uma pluralidade de fatias nas quais uma imagem é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação (LCU), para gerar um fluxo de bits, e o método de codificação de imagem inclui: particionar a imagem em fatias; e codificar as fatias resultantes do particionamento.
[00272] Cada uma das fatias é ou uma fatia normal ou uma fatia dependente. A fatia normal é uma fatia que tem, em um cabeçalho de fatia, informações prováveis serem utilizadas para outra fatia. A fatia dependente é uma fatia a qual é decodificada utilizando as informações incluídas em um cabeçalho de fatia de outra fatia. Aqui, a outra fatia é, por exemplo, uma fatia normal precedente e estando mais próxima da fatia dependente.
[00273] Na decodificação, a decodificação aritmética de uma fatia dependente é inicializada utilizando um contexto de uma fatia pai cujo cabeçalho de fatia é utilizando para a fatia dependente. Na codificação, a codificação aritmética de uma fatia dependente é inicializada utilizando um contexto de uma fatia pai cujo cabeçalho de fatia é utili-zado para a fatia dependente.
[00274] A imagem inclui uma pluralidade de linhas cada uma das quais inclui uma pluralidade de unidades de codificação.
[00275] No particionamento, a imagem é particionada nos tiles e nas fatias para satisfazer uma ou mais das restrições acima mencionadas.
[00276] Pode ser que na decodificação, a primeira linha e a segunda sejam decodificadas em paralelo, e quando a decodificação da segunda linha 25 é iniciada, a segunda linha é decodificada sem referir às informações de partição que indicam uma estrutura de fatia da primeira linha. Pode ser que no particionamento, no caso onde um aparelho de decodificação de imagem decodifica a primeira linha e a segunda linha em paralelo, a imagem é particionada nas fatias para permitir a decodificação da segunda linha sem referir às informações de partição que indicam uma estrutura de fatia da primeira linha, quando o aparelho de decodificação de imagem começa a decodificação da segunda linha.
[00277] Aqui, as informações de partição são, por exemplo, informações que indicam uma posição de fatia (posição de início) ou uma posição de um cabeçalho de fatia. O aparelho de decodificação de imagem executa um processamento para determinar o acima apresentado método de inicialização CABAC referindo a estas informações de partição.
[00278] Mais ainda, o processamento paralelo é o acima apresentado WPP, por exemplo. Especificamente, na decodificação, a decodi- ficação aritmética da segunda linha é inicializada utilizando um contexto obtido após a decodificação aritmética da unidade de codificação localizada segundo na primeira linha. Na codificação, a codificação aritmética da segunda linha é inicializada utilizando um contexto obtido após a codificação aritmética da unidade de codificação localizada se- gundo na primeira linha.
[00279] Como acima apresentado, o cabeçalho de fatia tem as informações (dependent_slice_flag) que indicam se a fatia é uma fatia normal ou uma fatia dependente. Em outras palavras, o método de de- codificação de imagem inclui obter, de i, cabeçalho de fatia, as informações que indicam se uma fatia é uma fatia normal ou uma fatia dependente. Além disso, o método de codificação de imagem inclui incorporar, em um cabeçalho de fatia, as informações que indicam se uma fatia é uma fatia normal ou uma fatia dependente.
[00280] Como acima descrito, esta modalidade tornar possível impedir que o processamento de fatia dependente de ser retardo por pelo menos duas ou pelo menos três unidades de codificação, peça inicialização de CABAC em vista das fatias precedentes no processamento paralelo. Com isto, o processamento paralelo de codificação, deco- dificação, e análise das linhas pode ser eficientemente executado.
[00281] Deve ser notado que a presente invenção não está limitada à modalidade na qual o método de fatiamento é restrito. Além disso, a restrição pode referir a uma fatia da qual um contexto de CABAC pode ser obtido.
[00282] Nesta modalidade um método de inicialização CABAC para uma fatia dependente em um tempo WPP é mudado. Especificamente, a regra de atribuição de fatia pai para a fatia dependente é mudada.
[00283] Por exemplo, uma regra é determinada na qual uma fatia dependente sempre obtém um cabeçalho de fatia e um contexto de CABAC da mesma fatia independente de subdivisão de uma linha de LCU em fatias (e/ou um tipo de uma fatia subsequente).
[00284] Uma imagem 420 mostrada na Figura 19 inclui as fatias 421 a 424. No HEVC corrente, a fatia 422 é uma fatia pai da fatia dependente 424. Em outras palavras, um cabeçalho de fatia da fatia de- pendente 424 é obtido da fatia 422, a fatia normal precedente mais próxima.
[00285] Como descrito com referência à Figura 9, existe um caso onde a inicialização de CABAC é executada sobre a fatia dependente utilizando uma fatia normal a qual está no início de uma linha de LCU precedente. No entanto, quando a fatia 422 é perdida, apesar da inicialização de CABAC pode ser executada sobre a fatia 424, a fatia 424 não pode ser decodificada devido à ausência de informações de cabeçalho de fatia.
[00286] Em vista disto, nesta modalidade, a fatia dependente tem, como a fatia pai, a fatia normal mais próxima começando da mesma linha que a fatia dependente ou uma linha precedente à linha da fatia dependente. Nesta modalidade, como mostrado na Figura 19, a fatia pai da fatia 424 é ajustada como a fatia 421 de acordo com esta regra. A inicialização de CABAC é executada sobre a fatia dependente 424 utilizando um cabeçalho de fatia da fatia 421 assim como os estados de CABAC da fatia 421.
[00287] Além disso, uma unidade de decodificação aritmética de cada fatia dependente ajusta uma dependência de fatia para executar a inicialização com base em um contexto de uma unidade de decodifi- cação aritmética da fatia pai.
[00288] Deve ser notado que as informações que indicam uma tabela de contextos de CABAC utilizada para inicialização de fatia podem ser explicitamente sinalizadas em uma mensagem de SEI. Em suma, todos os valores de inicialização considerados para serem utilizados para a inicialização de máquina de CABAC podem ser explicitamente sinalizados na mensagem de SEI.
[00289] Deve ser notado que o termo "fatia (fatia normal ou fatia dependente)" utilizado na descrição acima é algumas vezes referido como um "segmento de fatia (segmento fatia normal ou segmento de fatia dependente)." Neste caso, uma unidade que inclui um ou mais segmentos de fatia consecutivos é referida como uma "fatia." Especificamente, uma fatia inclui um segmento de fatia normal e um ou mais segmentos de fatia dependente consecutivos após o segmento fatia normal. Apresentado diferentemente, quando um segmento de fatia normal imediatamente segue outro segmento de fatia normal, uma fatia inclui o segmento de fatia normal. Além disso, quando um ou mais segmentos de fatia dependente imediatamente seguem um segmento de fatia normal, uma fatia inclui o segmento de fatia normal e os um o mais segmentos de fatia dependente. Em uma palavra, uma fatia varia de um segmento de fatia normal para uma ou mais fatias dependentes imediatamente precedentes ao próximo segmento de fatia normal.
[00290] Quando tal definição é utilizada, pode ser dito que a acima descrita terceira restrição exemplar para as linhas de LCU e fatias corresponde às seguintes definições.
[00291] Quando entropy_coding_sync_enabled__flag é igual a 1 e o primeiro bloco de árvore de codificação(LCU) em uma fatia não é o primeiro bloco de árvore de codificação de uma linha de blocos de árvore de codificação, é um requisito de conformidade de fluxo de bits que o último bloco de árvore de codificação na fatia deverá pertencer à mesma linha de blocos de árvore de codificação que o primeiro bloco de árvore de codificação na fatia.
[00292] Aqui, o caso onde o primeiro bloco de árvore de codificação incluído em uma fatia não é o primeiro bloco de árvore de codificação em uma linha de bloco de árvore de codificação é um caso onde um segmento de fatia normal começa em uma posição outra que o início da linha de bloco de árvore de codificação. A situação que o último bloco de árvore de codificação incluído na fatia pertence à mesma linha de bloco de árvore de codificação que o primeiro bloco de árvore de codificação incluído na fatia corresponde à situação que a próxima linha não começa com uma fatia dependente.
[00293] Por exemplo, no exemplo mostrado na Figura 17B, os segmentos de fatia (1) e (2) (denotados por fatia (1) e fatia (2) na Figura 17B; tais denotações do mesmo modo se aplicarão aos seguintes segmentos de fatia) formam uma fatia, um segmento de fatia (3) forma uma fatia, e os segmentos de fatia (4) e (5) formam uma fatia. Entre estas fatias, uma fatia o primeiro bloco de árvore de codificação da qual a diferente do primeiro bloco de árvore de codificação em um linha de bloco de árvore de codificação é somente a fatia formada do segmento de fatia (3). O último bloco de árvore de codificação nesta fatia pertence à mesma linha de bloco de árvore de codificação (a primeira linha) que o primeiro bloco de árvore de codificação na fatia. Portanto, a estrutura mostrada na Figura 17B é permitida.
[00294] Por outro lado, no exemplo mostrado na Figura 17A, os segmentos de fatias (3) a (5) formam uma fatia. O primeiro bloco de árvore de codificação nesta fatia (o primeiro bloco de árvore de codificação no segmento de fatia (3)) e o último bloco de árvore de codificação nesta fatia (o último bloco de árvore de codificação no segmento de fatia (5)) pertencem a diferentes linhas de bloco de árvore de codificação. Portanto, a estrutura mostrada na Figura 17A não é permitida.
[00295] Na Figura 17C, os segmentos de fatia (1) a (3) formam uma fatia, e os segmentos de fatia (4) e (5) formam uma fatia. Na Figura 17D, os segmentos de fatia (1) a (5) formam uma fatia. Isto significa que a fatia o primeiro bloco de árvore de codificação da qual é diferente do primeiro bloco de árvore de codificação em uma linha de bloco de árvore de codificação, isto é, a fatia a qual começa no meio de uma linha, não está presente na Figura 17C e Figura 17D. Portanto, as estruturas mostradas na Figura 17C e Figura 17D são permitidas.
[00296] Quando entropy_coding_sync_enabled_flag é igual a 1 e o primeiro bloco de árvore de codificação(LCU) em um segmento de fa- tia não é o primeiro bloco de árvore de codificação em uma linha de blocos de árvore de codificação, é um requisito de conformidade de fluxo de bits que o último bloco de árvore de codificação no segmento de fatia deverá pertencer à mesma linha de blocos de árvore de codificação que o primeiro o bloco de árvore de codificação no segmento de fatia.
[00297] Apesar do método de codificação de imagem e do método de decodificação de imagem de acordo com as modalidades terem sido descritos até agora, a presente invenção não está limitada às modalidades.
[00298] O método de codificação de imagem e o método de decodi- ficação de imagem são executados pelo aparelho de codificação de imagem e o aparelho de decodificação de imagem, respectivamente. O aparelho de codificação de imagem e o aparelho de decodificação de imagem têm as mesmas estruturas que, por exemplo, aquelas mostradas na Figura 1 e Figura 2, respectivamente, e as etapas características incluídas no método de codificação de imagem e no método de decodificação de imagem são executadas por qualquer uma das respectivas unidades de processamento mostradas na Figura 1 e Figura 2 ou unidades de processamento não mostradas.
[00299] Mais ainda, as respectivas unidades de processamento incluídas no aparelho de codificação de imagem e no aparelho de deco- dificação de imagem de acordo coma as modalidades são tipicamente implementadas como um LSI o qual é um circuito integrado. Estas unidades de processamento podem ser individualmente configuradas com chips únicos ou podem ser configuradas de modo que uma parte ou todas as unidades de processamento estejam incluídas em um único chip.
[00300] Mais ainda, o método de integração de circuito não está limitado a LSIs, e uma implementação através de um circuito dedicado ou um processador de uso geral é também possível. Uma Rede de Portas Programáveis no Capo (FPGA) a qual permite a programação após a fabricação de LSI ou um processador reconfigurável o qual permite uma reconfiguração das conexões e ajustes das células de circuito dentro do LSI podem também ser utilizados.
[00301] Cada um dos elementos estruturais em cada uma das modalidades acima descritas pode ser configurado na forma de hardware dedicado, ou pode ser implementado executando um programa de software adequado para o elemento de estrutura. Cada um dos elementos estruturais pode ser implementado por meio de uma unidade de execução de programa, tal como uma CPU ou um processador, lendo e executando o programa de software gravado em um meio de gravação tal como um disco rígido ou memória de semicondutor.
[00302] Em outras palavras, cada um do aparelho de codificação de imagem e do aparelho de decodificação de imagem inclui circuito de controle e um armazenamento eletricamente conectado no circuito de controle (acessível do circuito de controle). O circuito de controle inclui pelo menos um do hardware dedicado e da unidade de execução de programa. Além disso, quando o circuito de controle inclui a unidade de execução de programa, o armazenamento armazena um programa de software executado pela unidade de execução de programa.
[00303] Mais ainda, a presente invenção pode ser um o programa de software ou um meio de gravação legível por computador não transitório sobre o programa é gravado. Mais ainda, é desnecessário dizer que o programa pode ser distribuído através de um meio de transmissão tal como a Internet.
[00304] Mais ainda, todas as figuras numéricas utilizadas na descrição acima são meramente exemplificadas para descrever a presente invenção em termos específicos, e assim a presente invenção não está limitada às figuras numéricas exemplificadas.
[00305] Mais ainda, a separação dos blocos funcionais no diagramas de bloco é meramente um exemplo, e blocos funcionais plurais podem ser implementados como um único bloco funcional, um único bloco funcional pode ser separado em blocos funcionais plurais, ou parte de funções de um bloco funcional pode ser transferida para outro bloco funcional. Além disso, as funções de blocos funcionais que têm funções similares podem ser processadas, em paralelo ou por compartilhamento de tempo, por um único hardware ou software.
[00306] Mais ainda, a sequência na qual as etapas incluídas no método de codificação de imagem e no método de decodificação de imagem são executadas é dada como um exemplo para descrever a presente invenção em termos específicos, e assim outras sequências são possíveis. Mais ainda, parte das etapas pode ser executada simultaneamente (em paralelo) com outra etapa.
[00307] Apesar do aparelho de codificação de imagem e do aparelho de decodificação de imagem de acordo com uma ou mais implementações da presente invenção terem sido descritos acima com base nas modalidades exemplares, a presente invenção não está limitada a estas modalidades. Outras modalidades que resultam da aplicação de modificações concebíveis por aqueles versados na técnica nas modalidades e qualquer combinação dos elementos estruturais nas modalidades estão também incluídas no escopo de um ou mais aspectos da presente invenção sem afastar da essência da presente invenção.
[00308] O processamento descrito em cada uma das modalidades pode ser simplesmente implementado em um sistema de computador independente, gravando, em um meio de gravação, um programa para implementar as configurações do método de codificação de imagem móvel (método de codificação de imagem) e o método de decodifica- ção de imagem móvel (método de decodificação de imagem) descritos em cada uma das modalidades. O meio de gravação pode ser qualquer meio de gravação desde que o programa possa ser gravado, tal como um disco magnético, um disco ótico, um disco magnético ótico, uma placa IC, e uma memória de semicondutor.
[00309] Daqui em diante, as aplicações para o método de codificação de imagem móvel (método de codificação de imagem) e o método de decodificação de imagem móvel (método de decodificação de imagem) descritos em cada uma das modalidades e sistemas que os utilizam serão descritas. O sistema tem uma característica de ter um aparelho de codificação e decodificação de imagem que inclui um aparelho de codificação de imagem que utiliza o método de codificação de imagem e um aparelho de decodificação de imagem que utiliza o método de decodificação de imagem. Outras configurações no sistema podem ser mudadas conforme apropriado dependendo dos casos.
[00310] A Figura 20 ilustra uma configuração total de um sistema de provisão de conteúdo ex100 para implementar os serviços de distribuição de conteúdo. A área para prover os serviços de comunicação está dividida em células de tamanho desejado, e estações de base ex106, ex107, ex108, ex109, e ex110 as quais são estações sem fio fixas colocadas em cada uma das células.
[00311] O sistema de provisão de conteúdo ex100 está conectado a dispositivos tal como um computador ex111, um assistente digital pessoal (PDA) ex112, uma câmera ex113, um telefone celular ex114 e uma máquina de jogos ex115, através da Internet ex101, um provedor de serviço de Internet ex102, uma rede de telefone ex104, assim como as estações de base ex106 a ex110, respectivamente.
[00312] No entanto, a configuração do sistema de provisão de conteúdo ex100 não está limitada à configuração mostrada na Figura 20, e uma combinação na qual qualquer dos elementos está conectado é aceitável. Além disso, cada dispositivo pode estar diretamente conec- tado na rede de telefone ex104, ao invés de através das estações de base ex106 a ex110 as quais são as estações sem fio fixas. Mais ainda, os dispositivos podem estar interconectados uns nos outros através de uma comunicação sem fio de curta distância e outros.
[00313] A câmera ex113, tal como uma câmera de vídeo digital, é capaz de capturar tanto imagens paradas quando vídeo. A câmera ex116, tal como uma câmera digital, é capaz de capturar tanto imagens paradas quando vídeo. Mais ainda, o 30 telefone celular ex114 pode ser um que atenda qualquer um dos padrões tal como o Sistema Global Para Comunicações Móveis (GSM) (marca registrada), Acesso Múltiplo de Divisão de Código (CDMA), Acesso Múltiplo de Divisão de Código de Banda Larga (W-CDMA), Evolução de Longo Prazo (LTE), e Acesso de Pacote de Alta Velocidade (HSPA). Alternativamente, o telefone celular ex114 pode ser um Sistema Handyphone Pessoal (PHS).
[00314] No sistema de provisão de conteúdo ex100, um servidor de fluxo ex103 está conectado na câmera ex113 e outros através da rede de telefone ex104 e a estação de base ex109, o que permite a distribuição de imagens de um show ao vivo e outras. Em tal distribuição, um conteúdo (por exemplo, um vídeo de um show ao vivo de música) capturado pelo usuário utilizando a câmera ex113 é codificado como acima descrito em cada uma das modalidades (isto é, a câmera funciona como o aparelho de codificação de imagem de acordo com um aspecto da presente invenção), e o conteúdo codificado é transmitido para o servidor de fluxo ex103. Por outro lado, o servidor de fluxo ex103 carrega uma distribuição de fluxo dos dados de conteúdo transmitidos para os clientes sob suas solicitações. Os clientes incluem o computador ex111, o PDA ex112, a câmera ex113, o telefone celular ex114, e a máquina de jogos ex115 que são capazes de decodificar os dados codificados acima mencionados. Cada um dos dispo- sitivos que recebeu os dados distribuídos decodifica e reproduz os dados codificados (isto é, funciona como o aparelho de decodificação de imagem de acordo com um aspecto da presente invenção).
[00315] Os dados capturados podem ser codificados pela câmera ex113 ou o servidor de fluxo ex103 que transmite os dados, ou os processos de codificação podem ser compartilhados entre a câmera ex113 e o servidor de fluxo ex103. Similarmente, os dados distribuídos podem ser decodificados pelo cliente ou pelo servidor de fluxo ex103, ou os processos de decodificação podem ser compartilhados entre os clientes e o servidor de fluxo ex103. Mais ainda, os dados das imagens paradas e vídeo capturados não somente pela câmera ex113 mas também a câmera ex116 podem ser transmitidos para o servidor de fluxo ex103 através do computador ex111. Os processos de codifi-cação podem ser executados pela câmera ex116, o computador ex111, ou o servidor de fluxo ex103, ou compartilhados entre estes.
[00316] Mais ainda, os processos de codificação e decodificação podem ser executados por um LSI ex500 geralmente incluído em cada do computador ex111 e dos dispositivos. O LSI ex500 pode ser configurado em um único chip ou uma pluralidade de chips. Um software para codificar e decodificar vídeo pode estar integrado em algum tipo de um meio de gravação (tal como um CD-ROM, um disco flexível, e um disco rígido) que é legível pelo computador ex111 e outros, e os processos de codificação e decodificação podem ser executados utilizando o software. Mais ainda, quando o telefone celular ex114 está equipado com uma câmera, os dados de vídeo obtidos pela câmera podem ser transmitidos. Os dados de vídeo são dados codificados pelo LSI ex500 incluído no telefone celular ex114.
[00317] Mais ainda, O servidor de fluxo ex103 pode ser composto de servidores e computadores, e pode descentralizar os dados e processar os dados descentralizados, gravar, ou distribuir dados.
[00318] Como acima descrito, os clientes podem receber e reproduzir os dados codificados em um sistema de provisão de conteúdo ex100. Em outras palavras, os clientes podem receber e decodificar as informações transmitidas pelo usuário, e reproduzir os dados decodificados em tempo real time no sistema de provisão de conteúdo ex100, de modo que o usuário que não tem nenhum direito e equipamento específico possa implementar uma transmissão pessoal.
[00319] Além do exemplo do sistema de provisão de conteúdo ex100, pelo menos um do aparelho de codificação de imagem móvel (aparelho de codificação de imagem) e o aparelho de decodificação de imagem móvel (aparelho de decodificação de imagem) descritos em cada uma das modalidades podem ser implementados em um sistema de transmissão digital ex200 ilustrado na Figura 21. Mais especificamente, uma estação de transmissão ex201 comunica ou transmite, através de ondas de rádio para um satélite de transmissão ex202, os dados multiplexados obtidos multiplexando os dados de áudio e outros por sobre os dados de vídeo. Os dados de vídeo são dados codificados pelo método de codificação de imagem móvel descrito em cada uma das modalidades (isto é, dados codificados pelo aparelho de codificação de imagem de acordo com um aspecto da presente invenção). Quando do recebimento dos dados multiplexados, o satélite de transmissão ex202 transmite as ondas de rádio para transmissão. Então uma antena de uso doméstico ex204 com uma função de recepção de transmissão de satélite recebe as ondas de rádio. A seguir, um dispositivo tal como uma televisão (receptor) ex300 e um decodificador (STB) ex217 decodifica os dados multiplexados recebidos, e reproduz os dados decodificados (isto é, funciona como o aparelho de decodifi- cação de imagem de acordo com um aspecto da presente invenção).
[00320] Mais ainda, um leitor / gravador ex218 (i) lê e decodifica os dados multiplexados gravados em um meio de gravação ex215, tal como um DVD e um BD, ou (ii) codifica os sinais de vídeo no meio de gravação ex215, e em alguns casos, escreve os dados obtidos pela multiplexação de um sinal de áudio sobre os dados codificados. O leitor / gravador ex218 pode incluir o aparelho de decodificação de imagem móvel ou o aparelho de codificação de imagem móvel como mostrado em cada uma das modalidades. Neste caso, os sinais de vídeo reproduzidos são exibidos no monitor ex219, e podem ser reproduzidos por outro dispositivos ou sistema que utilize o meio de gravação ex215 sobre o qual os dados multiplexados são gravados. É também possível implementar o aparelho de decodificação de imagem móvel no decodificador ex217 conectado no cabo ex203 para uma televisão a cabo ou para a antena ex204 para transmissão de satélite e/ou ter-restre de modo a exibir os sinais de vídeo monitor ex219 da televisão ex300. o aparelho de decodificação de imagem móvel pode ser implementado não no decodificador mas na televisão ex300.
[00321] A Figura 22 ilustra a televisão (receptor) ex300 que utiliza o método de codificação de imagem móvel e o método de decodificação de imagem móvel descritos em cada uma das modalidades. A televisão ex300 inclui: um sintonizador ex301 que obtém ou provê os dados multiplexados 30 obtidos multiplexando os dados de áudio por sobre os dados vídeo, através da antena ex204 ou do cabo ex203, etc. que recebe uma transmissão; uma unidade de modulação / demodulação ex302 que demodula os dados multiplexados recebidos ou modula os dados em dados multiplexados a serem supridos para fora; e uma unidade de multiplexação / demultiplexação ex303 que demultiplexa os dados multiplexados modulados em dados de vídeo e dados de áudio ou multiplexa os dados de vídeo e os dados de áudio codificados por uma unidade de processamento de sinal ex306 em dados.
[00322] A televisão ex300 ainda inclui: uma unidade de processamento de sinal ex306 que inclui uma unidade de processamento de sinal de áudio ex304 e uma unidade de processamento de sinal de vídeo ex305 que decodificam os dados de áudio e os dados de vídeo e codificam os dados de áudio e os dados de vídeo, respectivamente (as quais funcionam como o aparelho de codificação de imagem e o aparelho de decodificação de imagem de acordo com os aspectos da presente invenção); e uma unidade de saída ex309 que inclui um alto- falante ex307 que provê o sinal de áudio decodificado, e uma unidade de display ex308 que exibe o sinal de vídeo decodificado, tal como um display. Mais ainda, a televisão ex300 inclui uma unidade de interface ex317 que inclui uma unidade de entrada de operação ex312 que recebe uma entrada de uma operação de usuário. Mais ainda, a televisão ex300 inclui uma unidade de controle ex310 que controla em geral cada elemento constituinte da televisão ex300, e uma unidade de circuito de suprimento de energia ex311 que supre energia para cada um dos elementos. Outra que a unidade de entrada de operação ex312, a unidade de interface ex317 pode incluir: uma ponte ex313 que está conectada a um dispositivo externo, tal como um leitor / gravador ex218; uma unidade de fenda ex314 para permitir a conexão do meio de gravação ex216, tal como um cartão SD; um driver ex315 a ser conectado no meio de gravação externo, tal como um disco rígido; e um modem ex316 a ser conectado a uma rede de telefone. Aqui, o meio de gravação ex216 pode gravar eletricamente as informações utilizando um elemento de memória de semicondutor não volátil / volátil para armazenamento. Os elementos constituintes da televisão ex300 estão conectados uns nos outros através de um barramento síncrono.
[00323] Primeiro, a configuração na qual a televisão ex300 decodifica os dados multiplexados obtidos de fora através da antena ex204 e outros e reproduz os dados decodificados será descrita. Na televisão ex300, quando de uma operação de usuário através de um controlador remoto ex220 e outros, a unidade de multiplexação / demultiplexação ex303 demultiplexa os dados multiplexados demodulados pela unidade de modulação / demodulação ex302, sob o controle da unidade de controle ex310 que inclui uma CPU. Mais ainda, a unidade de processamento de sinal de áudio ex304 decodifica os dados de áudio demul- tiplexados, e a unidade de processamento de sinal de vídeo ex305 decodifica os dados de vídeo demultiplexados, utilizando o método de decodificação descrito em cada uma das modalidades, na televisão ex300. A unidade de saída ex309 provê o sinal de vídeo e o sinal de áudio decodificados para fora, respectivamente. Quando unidade de saída ex309 provê o sinal de vídeo e o sinal de áudio, os sinais podem ser temporariamente armazenados em armazenamentos temporários ex318 e ex319, e outros de modo que os sinais sejam reproduzidos em sincronização uns com os outros. Mais ainda, a televisão ex300 pode ler os dados multiplexados não através de uma transmissão e outros mas do meio de gravação ex215 e ex216, tal como um disco magnético, um disco ótico, e um cartão SD. A seguir, uma configuração na qual a televisão ex300 codifica um sinal de áudio e um sinal de vídeo, e transmite os dados para fora ou escreve os dados em um meio de gravação será descrita. Na televisão ex300, quando de uma operação de usuário através do controlador remoto ex220 e outros, a unidade de processamento de sinal de áudio ex304 codifica um sinal de áudio, e a unidade de processamento de sinal de vídeo ex305 codifica um sinal de vídeo, sob o controle da unidade de controle ex310 utilizando o método de codificação descrito em cada uma das modalidades. A unidade de multiplexação / demultiplexação ex303 multiplexa o sinal de vídeo e o sinal de áudio codificados, e provê o sinal resultante para fora. Quando a unidade de multiplexação / demultiplexação ex303 multiplexa o sinal de vídeo e o sinal de áudio, os sinais podem ser temporariamente armazenado nos armazenamentos temporários ex320 e ex321, e outros de modo que os sinais sejam reproduzidos em sincronização uns com os outros. Aqui, os armazenamentos temporários ex318, ex319, ex320, e ex321 podem ser plurais como ilustrado, ou pelo menos um armazenamento temporário pode ser compartilhado na televisão ex300. Mais ainda, os dados podem ser armazenados em um armazenamento temporário de modo que o estouro e o estouro negativo do sistema possam ser evitados entre a unidade de modulação / demodulação ex302 e a unidade de multiplexação / de- multiplexação ex303, por exemplo.
[00324] Mais ainda, a televisão ex300 pode incluir uma configuração para receber uma entrada de AV de um microfone ou uma câmera outra que a configuração para obter dados de áudio e vídeo de uma transmissão ou um meio de gravação, e pode codificar os dados obtidos. Apesar da televisão ex300 poder codificar, multiplexar, e prover dados para fora na descrição, esta pode ser capaz de somente receber, decodificar, e prover dados para fora mas não a codificação, mul- tiplexação, e provisão de dados para fora. .
[00325] Mais ainda, quando o leitor / gravador ex218 lê ou escreve os dados multiplexados de ou sobre um meio de gravação, uma da televisão ex300 e do leitor / gravador ex218 pode decodificar ou codificar os dados multiplexados, e a televisão ex300 e o leitor / gravador ex218 podem compartilhar a decodificação ou codificação.
[00326] Como um exemplo, a Figura 23 ilustra uma configuração de uma unidade de reprodução / gravação de informações ex400 quando os dados são lidos ou escritos de ou sobre um disco ótico. A unidade de reprodução / gravação de informações ex400 inclui os elementos constituintes ex401, ex402, ex403, ex404, ex405, ex406, e ex407 a serem daqui em diante descritos. A cabeça ótica ex401 irradia um ponto de laser em uma superfície de gravação do meio de gravação ex215 que é um disco ótico para escrever as informações, e detecta a luz refletida da superfície de gravação do meio de gravação ex215 para ler as informações. A unidade de gravação de modulação ex402 aciona eletricamente um laser de semicondutor incluído na cabeça ótica ex401, e modula a luz de laser de acordo com os dados gravados. A unidade de demodulação de reprodução ex403 amplifica um sinal de reprodução obtido eletricamente detectando a luz refletida da superfície de gravação um fotodetector incluído na cabeça ótica ex401, e demodula o sinal de reprodução separando um componente de sinal gravado sobre o meio de gravação ex215 para reproduzir as informações necessárias. O armazenamento temporário ex404 temporariamente retém as informações a serem gravadas sobre o meio de gravação ex215 e as informações reproduzidas do meio de gravação ex215. O motor de disco ex405 gira o meio de gravação ex215. A ser- vocontrole ex406 move a cabeça ótica ex401 para uma trilha de informações predeterminada enquanto controlando o acionamento de rotação do motor de disco ex405 de modo a seguir o ponto de laser. A unidade de controle de sistema ex407 controla em geral a unidade de reprodução / gravação de informações ex400. Os processos de leitura e escrita podem ser implementados pela unidade de controle de sistema ex407 utilizando várias informações armazenadas no armazenamento temporário ex404 e gerando e adicionando novas informações conforme necessário, e pela a unidade de gravação de modulação ex402, unidade de demodulação de reprodução ex403, e unidade de servocontrole ex406 que gravam e reproduzem as informações através da cabeça ótica ex401 enquanto sendo operados em um modo coordenado. A unidade de controle de sistema ex407 inclui, por exemplo, um microprocessador, e executa o processamento fazendo o computador executar um programa para ler e escreve.
[00327] Apesar da cabeça ótica ex401 irradiar um ponto de laser na descrição, esta pode executar uma gravação de alta densidade utilizando luz de campo próximo.
[00328] A Figura 24 ilustra o meio de gravação ex215 que é o disco ótico. Sobre a superfície de gravação do meio de gravação ex215, ranhuras de guia são formadas em forma de espiral, e a trilha de informações ex230 grava, com antecedência as informações de endereço que indicam uma posição absoluta sobre o disco de acordo com uma mudança em uma forma das ranhuras de guia. As informações de endereço incluem as informações para determinar as posições de blocos de gravação ex231 que são uma unidade para gravar dados. Reproduzindo a trilha de informações ex230 e lendo as informações de endereço em um aparelho que grava e reproduz dados pode levar à de-terminação das posições dos blocos de gravação. Mais ainda, o meio de gravação ex215 30 inclui uma área de gravação de dados ex233, e uma área de circunferência interna ex232, e uma área de circunferência externa ex234. A área de gravação de dados ex233 é uma área para utilização na gravação dos dados de usuário. A área de circunferência interna ex232 e a área de circunferência externa ex234 que estão dentro e fora da área de gravação de dados ex233, 35 respectivamente são para uso específico exceto para gravas os dados de usuário. A unidade de reprodução / gravação de informações 400 lê e escreve os dados de áudio codificados, vídeo codificados, ou dados mul- tiplexados obtidos pela multiplexação dos dados de áudio e vídeo codificados, da e sobre a área de gravação de dados ex233 do meio de gravação ex215.
[00329] Apesar de um disco ótico que tem uma camada, tal como um DVD e um BD ser descrito como um exemplo na descrição, o disco ótico não está limitado a tal, e pode ser um disco ótico que tem uma estrutura de multicamada e capaz de ser gravado sobre uma parte outra que a superfície. Mais ainda, o disco ótico pode ter uma estrutura para gravação / reprodução multidimensional, tal como a gravação de informações utilizando luz de cores com diferentes comprimentos de onda na mesma porção do disco ótico e para gravar informações que têm diferentes camadas de vários ângulos.
[00330] Mais ainda, um carro ex210 que tem uma antena ex205 pode receber dados do satélite ex202 e outros, e reproduzir um vídeo em um dispositivo de display tal como um sistema de navegação de carro ex211 colocado dentro carro ex210, no sistema de transmissão digital ex200. Aqui, uma configuração do sistema de navegação de carro ex211 será uma configuração, por exemplo, que inclui uma unidade de recepção de GPS da configuração ilustrada na Figura 22. O mesmo será verdadeiro para a configuração do computador ex111, do telefone celular ex114, e outros.
[00331] A Figura 25A ilustra o telefone celular ex114 que utiliza o método de codificação de imagem móvel e o método de decodificação de imagem móvel descrito nas modalidades. O telefone celular ex114 inclui: uma antena ex350 for transmitir e receber ondas de rádio através da estação de base ex110; uma unidade de câmera ex365 capaz de capturar imagens móveis e paradas; e uma unidade de display ex358 tal como um display de cristal líquido para exibir os dados tais como o vídeo decodificado capturado pela unidade de câmera ex365 ou recebido pela antena ex350. O telefone celular ex114 ainda inclui: a unidade de corpo principal que inclui uma unidade de teclas de opera-ção ex366; uma unidade de saída de áudio ex357 tal como um alto- falante para emitir um áudio; uma unidade de entrada de áudio ex356 tal como um microfone para inserir um áudio; uma unidade de memória ex367 para armazenar um vídeo ou imagens paradas capturados, áudio gravado, dados codificados ou decodificados data do vídeo, das imagens paradas, e-mails, recebidos ou outros; e uma unidade de fenda ex364 que é uma unidade de interface para um meio de gravação que armazena os dados no mesmo modo que a unidade de memória ex367,
[00332] A seguir, um exemplo de uma configuração do telefone celular ex114 será descrita com referência à Figura 25B. No telefone celular ex114, uma unidade de controle principal ex360 projetada para controlar em geral cada unidade do corpo principal que inclui a unidade de display ex358 assim como a unidade de teclas de operação ex366 está conectada mutuamente, através de um barramento síncrono ex370, a uma unidade de circuito de suprimento de energia ex361, unidade de controle de entrada de operação ex362, uma unidade de processamento de sinal de vídeo ex355, uma unidade de interface de câmera ex363, uma unidade de controle de display de cristal líquido (LCD) ex359, uma unidade de modulação / demodulação ex352, uma unidade de multiplexação / demultiplexação ex353, uma unidade de processamento de sinal de áudio ex354, a unidade de fenda ex364, e a unidade de memória ex367.
[00333] Quando uma tecla de final de chamada ou uma tecla de energia é LIGADA por uma operação do usuário, a unidade de circuito de suprimento de energia ex361 supre as respectivas unidades com energia de um pacote de baterias de modo a ativar o telefone celular ex114.
[00334] No telefone celular ex114, a unidade de processamento de sinal de áudio ex354 converte os sinais de áudio coletados pela unidade de entrada de áudio ex356 em modo de conversação de voz em sinais áudio digitais, sob o controle da unidade de controle principal ex360 que inclui uma CPU, ROM, e RAM. Então, a unidade de modulação / demodulação ex352 executa um processamento de espectro expandido sobre os sinais de áudio digital, e a unidade de transmissão e recepção ex351 executa uma conversão digital para analógica e uma conversão de frequência nos dados, de modo a transmitir os dados resultantes através da antena ex350. Também, no telefone celular ex114, a unidade de transmissão e recepção ex351 amplifica os dados recebidos pela antena ex350 em modo de conversação de voz e executa uma conversão de frequência e a conversão analógica para digital nos dados. Então, a unidade de modulação / demodulação ex352 executa um processamento espectro expandido nos dados, e a unidade de processamento de sinal de áudio ex354 converte-os em sinais de áudio analógicos, de modo a emiti-los através da unidade de saída de áudio ex357.
[00335] Mais ainda, quando um e-mail no modo de comunicação de dados é transmitido, os dados de texto do e-mail inseridos pela operação da unidade de teclas de operação ex366 e outros do corpo principal são enviados para a unidade de controle principal ex360 através unidade de controle de entrada de operação ex362. A unidade de controle principal ex360 faz com que a unidade de modulação / demodu- lação ex352 para executar o processamento de espectro expandido nos dados de texto, e a unidade de transmissão e recepção ex351 executa a conversão digital para analógica e a conversão de frequência nos dados resultantes para transmitir os dados para a estação de base ex110 através da antena ex350. Quando um e-mail é recebido um processamento que é aproximadamente inverso ao processamento para transmitir um e-mail é executado nos dados recebidos, e os dados resultantes são providos para unidade de display ex358.
[00336] Quando um vídeo, imagens paradas, ou vídeo e áudio in modo de comunicação de dados é ou são transmitidos, a unidade de processamento de sinal de vídeo ex355 comprime e codifica os sinais de vídeo supridos da unidade de câmera ex365 utilizando o método de codificação de imagem móvel mostrado em cada uma das modalidades (isto é, funciona como o aparelho de codificação de imagem de acordo com o aspecto da presente invenção), e transmite os dados de vídeo codificados para a unidade de multiplexação / demultiplexação ex353. Em contraste, durante quando a unidade de câmera ex365 captura um vídeo, imagens paradas, e outros, a unidade de processamento sinal de áudio ex354 codifica os sinais de áudio coletados pela unidade de entrada de áudio ex356, e transmite os dados de áudio codificados para a unidade de multiplexação / demultiplexação ex353.
[00337] A unidade de multiplexação / demultiplexação ex353 multi- plexa os dados de vídeo codificados, supridos da unidade de processamento de sinal de vídeo ex355 e os dados de áudio codificados supridos da unidade de processamento de sinal de áudio ex354, utilizando um método predeterminado. Então, a unidade de modulação / de- modulação (unidade de circuito de modulação / demodulação) ex352 executa um processamento de espectro expandido nos dados multi- plexados, e a unidade de transmissão e recepção ex351 executa uma conversão digital para analógica e uma conversão de frequência nos dados de modo a transmitir os dados resultantes através da antena ex350.
[00338] Quando recebendo os dados de um arquivo de vídeo o qual está conectado a uma página da Web e outros no modo de comunicação de dados ou quando recebendo um e-mail com vídeo e/ou áudio anexos, de modo a decodificar os dados multiplexados recebidos através da antena ex350, a unidade de multiplexação / demultiplexação ex353 demultiplexa os dados multiplexados em um fluxo de bits de dados de vídeo e um fluxo de bits de dados de áudio, e supre a unidade de processamento de sinal de vídeo ex355 com os dados de vídeo codificados e a unidade de processamento de sinal de áudio ex354 com os dados de áudio codificados, através do barramento síncrono ex370. A unidade de processamento de sinal de vídeo ex355 decodifi-ca o sinal de vídeo utilizando um método de decodificação de imagem móvel que corresponde ao método de codificação de imagem móvel mostrado em cada uma das modalidades (isto é, funciona como o apa- relho de decodificação de imagem de acordo com o aspecto da presente invenção), e então a unidade de display ex358 exibe, por exemplo, o vídeo e as imagens paradas incluídos no arquivo de vídeo conectado na página da Web através da unidade de controle de LCD ex359. Mais ainda, A unidade de processamento de sinal de áudio ex354 decodifica o sinal de áudio, e a unidade de saída de áudio ex357 provê o áudio.
[00339] Mais ainda, similarmente à televisão ex300, um terminal tal como o telefone celular ex114 provavelmente tem três tipos de configurações de implementação incluindo não somente (i) um terminal de transmissão e recepção que inclui tanto um aparelho de codificação quanto um aparelho de decodificação, mas também (ii) um terminal de transmissão que inclui somente um aparelho de codificação e (iii) um terminal de recepção que inclui somente um aparelho de decodifica- ção. Apesar do sistema de transmissão digital ex200 receber e transmitir os dados multiplexados obtidos multiplexando os dados de áudio por sobre os dados de vídeo na descrição, os dados multiplexados podem ser dados obtidos multiplexando não dados de áudio mas dados de caracteres relativos ao vídeo por sobre os dados de vídeo, e podem não ser dados multiplexados mas os próprios dados de vídeo.
[00340] Como tal, o método de codificação de imagem móvel e o método de decodificação de imagem móvel em cada uma das modalidades podem ser utilizados em qualquer um dos dispositivos e sistemas descritos. Assim as vantagens descritas em cada uma das modalidades podem ser obtidas.
[00341] Mais ainda, a presente invenção não está limitada às modalidades acima e várias modificações e revisões podem ser feitas a esta dentro do escopo da presente invenção.
[00342] Os dados de vídeo podem ser gerados comutando, confor- me necessário, entre (i) o método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel mostrados em cada uma das modalidades e (ii) um método de codificação de imagem móvel ou um aparelho de codificação de imagem móvel em conformidade com um padrão diferente, tal como MPEG-2, MPEG-4 AVC, e VC-1.
[00343] Aqui, quando uma pluralidade de dados de vídeo que estão em conformidade com diferentes padrões é gerada é então decodificada, os métodos de decodificação precisam ser selecionados para conformarem aos diferentes padrões. No entanto, para qual padrão cada um da pluralidade de dados de vídeo a serem decodificados conformes não pode ser detectado, um método de decodificação apropriado não pode ser selecionado.
[00344] Em vista disto, os dados multiplexados obtidos pela multi- plexação de dados de áudio e outros por sobre os dados de vídeo têm uma estrutura que inclui informações de identificação que indicam para qual padrão os dados de vídeo estão em conformidade. A estrutura específica dos dados multiplexados incluindo os dados de vídeo gerados no método de codificação de imagem móvel e pelo aparelho de codificação de imagem móvel mostrados em cada uma das modalidades será daqui em diante descrita. Os dados multiplexados são um fluxo digital no formato de Fluxo de Transporte MPEG-2.
[00345] A Figura 26 ilustra uma estrutura dos dados multiplexados. Como ilustrado na Figura 26, os dados multiplexados podem ser obtidos pela multiplexação de pelo menos um de um fluxo de vídeo, um fluxo de áudios, um fluxo de gráfico de apresentação (PG), e um fluxo de gráfico interativo. O fluxo de vídeo representa um vídeo primário e um vídeo secundário de um filme, o fluxo de áudio (IG) representa uma parte de áudio primária e uma parte de áudio secundária para ser misturada com a parte de áudio primária, e o fluxo de gráfico de apresentação representa as legendas do filme. Aqui o vídeo primário é um vídeo normal a ser exibido em uma tela, e o vídeo secundário é um vídeo a ser exibido em uma janela menor no vídeo primário. Mais ainda, o fluxo de gráfico interativo representa uma tela interativa a ser gerada dispondo os componentes de GUI sobre uma tela. O fluxo de vídeo é codificado no método de codificação de imagem móvel ou pelo aparelho de codificação de imagem móvel mostrados em cada uma das modalidades, ou em um método de codificação de imagem móvel ou por um aparelho de codificação de imagem móvel em conformidade com um padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC1. O fluxo de áudio é codificado de acordo com um padrão, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, e PCM linear.
[00346] Cada fluxo incluído nos dados multiplexados é identificado por PID. Por exemplo, 0x1011 é alocado ao fluxo de vídeo a ser utilizado para o vídeo de um filme, 0x1100 a 0x111F são alocados para os fluxos de áudio, 0x1200 a 0x121F são alocados para os fluxos de gráfico de apresentação, 0x1400 a 0x141F são alocados para os fluxos de gráfico interativo, 0x1B00 a 0x1B1F são alocados para os fluxo de vídeos a serem utilizados para o vídeo secundário do filme, e 0x1A00 a 0x1A1F são alocados para os fluxos de áudio a serem utilizados para o áudio secundário para ser misturado com o áudio primário.
[00347] A Figura 27 ilustra esquematicamente como os dados são multiplexados. Primeiro, um fluxo de vídeo ex235 composto de quadros de vídeo e um fluxo de áudio ex238 composto de quadros de áudio são transformados em um fluxo de pacotes de PES ex236 e um fluxo de pacotes de PES ex239, e ainda em pacotes de TS ex237 e pacotes de TS ex240, respectivamente. Similarmente, os dados de um fluxo de gráfico de apresentação ex241 e os dados de um fluxo de gráfico interativo ex244 são transformados em um fluxo de pacotes de PES ex242 e um fluxo de pacotes de PES ex245, e ainda em pacotes de TS ex243 e pacotes de TS ex246, respectivamente. Estes pacotes de TS são multiplexados em um fluxo para obter os dados multiplexa- dos ex247.
[00348] A Figura 28 ilustra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES em mais detalhes. A primeira barra na Figura 28 mostra um fluxo de quadros de vídeo em um fluxo de vídeo. A segunda barra mostra o fluxo de pacotes de PES. Como indicado por setas denotadas yy1, yy2, yy3, e yy4 na Figura 28, o fluxo de vídeo é dividido em imagens como imagens I, imagens B, e imagens P cada uma das quais é uma unidade de apresentação de vídeo, e as imagens são armazenadas em uma carga de cada um dos pacotes de PES. Cada um dos pacotes de PES tem um cabeçalho de PES, e o cabeçalho de PES armazena uma Estampa de Tempo de Apresentação (PTS) que indica um tempo de exibição da imagem, e uma Estampa de Tempo de Decodificação (DTS) que indica um tempo de de- codificação da imagem.
[00349] A Figura 29 ilustra um formato de pacotes de TS a serem finalmente escritos nos dados multiplexados. Cada um dos pacotes de TS é um pacote de comprimento fixo de 188 bytes que inclui um cabeçalho de TS de 4 bytes que tem informações, tal como um PID para identificar um fluxo, e uma carga de TS de 184 bytes para armazenar os dados. Os pacotes de PES são divididos, e armazenados nas cargas de TS, respectivamente. Quando um BD ROM é utilizado, a cada um dos pacotes de TS é dado um TP_Extra_Header, de 4 bytes, assim resultando em pacotes de fonte de 192 bytes. Os pacotes de fonte são escritos nos dados multiplexados. O TP_Extra_Header armazena informações tais como um Arrival_Time_Stamp (ATS). A ATS mostra um tempo de início de transferência no qual cada um dos pacotes de TS deve ser transferido para um filtro de PID. Os pacotes de fonte estão dispostos nos dados multiplexados como mostrado no fundo da Figura 29. Os números que incrementam do topo dos dados multiple-xados são denominados número de pacote de fonte (SPNs).
[00350] Cada um dos pacotes de TS incluídos nos dados multiple- xados inclui não somente fluxos de áudios, vídeo, legendas e outros, mas também uma Tabela de Associação de Programa (PAT), uma Tabela de Mapas de Programa (PMT), e uma Referência de Relógio de Programa (PCR). A PAT mostra o que um PID em uma PMT utilizada nos dados multiplexados indica, e um PID da própria PAT é registrado como zero. A PMT armazena os PIDs dos fluxos de vídeo, áudio, legendas e outros incluídos nos dados multiplexados, e informações de atributo dos fluxos que correspondem aos PIDs. A PMT também tem vários descritos relativos aos dados multiplexados. Os descritores têm informações tais como as informações de controle de cópia que mostram se a cópia dos dados multiplexados é permitida ou não. A PCR armazena as informações de tempo de STC que corresponde a uma ATS mostrando quando o pacote de PCR é transferido para um deco- dificador, de modo a conseguir a sincronização entre um Relógio de Tempo de Chegada (ATC) que é um eixo geométrico de tempo de ATSs, e um Relógio de Tempo de Sistema (STC) que é um eixo geométrico de tempo PTSs e DTSs.
[00351] A Figura 30 ilustra a estrutura de dados da PMT em detalhes. Um cabeçalho de PMT está disposto no topo da PMT. O cabeçalho de PMT descreve o comprimento de dados incluídos na PMT e outros. Uma pluralidade de descritores relativos aos dados multiplexados está disposta após o cabeçalho de PMT. Informações tais como as informações de controle de cópia estão descritas nos descritores. Após os descritores, uma pluralidade de porções de informações de fluxo relativas aos fluxos incluídos nos dados multiplexados está disposta. Cada porção de informações de fluxo inclui descritores de fluxo cada um descrevendo as informações, tal como um tipo de fluxo para identificar um codec de compressão de um fluxo, um PID de fluxo, e informações de atributo de fluxo (tal como uma taxa de quadros ou uma razão de aspecto). Os descritores de fluxo são iguais em número ao número de fluxos nos dados multiplexados.
[00352] Quando os dados multiplexados são gravados em um meio de gravação e outros, estes são gravados juntamente com os arquivos de informações de dados multiplexados.
[00353] Cada um dos arquivos de informações de dados multiple- xados são informações de gerenciamento dos dados multiplexados como mostrado na Figura 31. Os arquivos de informações de dados multiplexados estão em uma correspondência de um para um com os dados multiplexados, e cada um dos arquivos inclui as informações de dados multiplexados, as informações de atributo de fluxo, e uma mapa de entrada.
[00354] Como ilustrado na Figura 31, as informações de dados mul- tiplexados incluem um taxa de sistema, um tempo de início de reprodução, e um tempo de final de reprodução. A taxa de sistema indica a taxa de transferência máxima na qual um decodificador alvo de sistema a ser posteriormente descrito transfere os dados multiplexados para um filtro de PID. Os intervalos das ATSs incluídas nos dados multi- plexados são ajustados para não mais altos do que uma taxa de sistema. O tempo de início de reprodução indica uma PTS em um quadro de vídeo no topo dos dados multiplexados. Um intervalo de um quadro é adicionado a uma PTS em um quadro de vídeo no final dos dados multiplexados, e a PTS é ajustada para o tempo final de reprodução.
[00355] Como mostrado na Figura 32, uma porção de informações de atributo está registrada nas informações de atributo de fluxo, para cada PID de cada fluxo incluído nos dados multiplexados. Cada porção de informações de atributo tem diferentes informações dependendo se o fluxo correspondente é um fluxo de vídeo, um fluxo de áudio, um fluxo de gráfico de apresentação, ou um fluxo de gráfico interativo.Cada porção de informações de atributo de fluxo de vídeo carrega informações que incluem qual tipo de codec de compressão é utilizado para comprimir o fluxo de vídeo, e a resolução, razão de aspecto e taxa de quadros das porções de dados de imagem que estão incluídos no fluxo de vídeo. Cada porção de informações de atributo de fluxo de áudio carrega informações que incluem qual tipo de codec de compressão é utilizado para comprimir o fluxo de áudio, quantos canais estão incluídos no fluxo de áudio, qual idioma o fluxo de áudio suporta, e quão alta é a frequência de amostragem. As informações de atributo de fluxo de vídeo e as informações de atributo de fluxo de áudio são utilizadas para a inicialização de um decodificador antes do reprodutor reproduzir as informações.
[00356] Na presente modalidade, os dados multiplexados a serem utilizados são de um tipo de fluxo incluído na PMT. Mais ainda, quando os dados multiplexados são gravados em um meio de gravação, as informações de atributo de fluxo de vídeo incluídas nas informações de dados multiplexados são utilizadas. Mais especificamente, o método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel descrito em cada uma das modalidades inclui uma etapa ou uma unidade para alocar informações únicas que indicam os dados de vídeo gerados pelo método de codificação de imagem móvel ou pelo aparelho de codificação de imagem móvel em cada uma das modalidades, para o tipo de fluxo incluído na PMT ou nas informações de atributo de fluxo de vídeo. Como a configuração, os dados de vídeo gerados pelo método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel descritos em cada uma das modalidades podem ser distinguidos de dados de vídeo que estão em conformidade com outro padrão.
[00357] Mais ainda, a Figura 33 ilustra as etapas do método de de- codificação de imagem móvel de acordo com a presente modalidade.Na Etapa exS100, o tipo de fluxo incluído na PMT ou nas informações de atributo de fluxo de vídeo incluídas nas informações de dados mul- tiplexados são obtidas dos dados multiplexados. A seguir, na Etapa exS101, é determinado se o fluxo de vídeo ou as informações de atributo de fluxo de vídeo indicam que os dados multiplexados são gerados ou não pelo método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel em cada uma das modalidades. Quando é determinado que o tipo de fluxo ou as informações de atributo de fluxo de vídeo indicam que os dados multiplexados são gerados pelo método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel em cada uma das modalidades, na Etapa exS102, a decodificação é executada pelo método de decodificação de imagem móvel em cada uma das modalidades. Mais ainda, quando o tipo de fluxo ou as informações de atributo de fluxo de vídeo indicam uma conformidade com os padrões convencionais, tal MPEG-2, MPEG-4 AVC, e VC-1, na Etapa exS103, a decodificação é executada por um método de decodificação de imagem móvel em conformidade com os padrões convencionais.
[00358] Como tal, alocar um novo valor único ao tipo de fluxo às informações de atributo de fluxo de vídeo permite a determinação se o método de decodificação de imagem móvel ou o aparelho de decodifi- cação de imagem móvel que estão descritos em cada uma das modalidades pode ou não executar a decodificação. Mesmo quando os dados multiplexados que estão em conformidade com um diferente padrão são inseridos, um método de decodificação ou aparelho de deco- dificação apropriado pode ser selecionado. Assim torna-se possível decodificar informações sem nenhum erro. Mais ainda, o método ou aparelho de codificação de imagem móvel, ou método ou aparelho de decodificação de imagem móvel na presente modalidade podem ser utilizados nos dispositivos e sistemas acima descritos.
[00359] Cada um dentre o método de codificação de imagem móvel, o aparelho de codificação de imagem móvel, o método de decodi- ficação de imagem móvel e o aparelho de decodificação de imagem móvel em cada uma das modalidades é tipicamente conseguido na forma de um circuito integrado ou um circuito Integrado de Grande Escala (LSI). Como um exemplo do LSI, Figura 34 ilustra uma configuração do LSI ex500 que é feito em um chip. O LSI ex500 inclui os elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, e ex509 a serem abaixo descritos, e os elementos estão conectados uns nos outros através de um barramento ex510. A unidade de circuito de suprimento de energia ex505 é ativada suprindo cada um dos elementos com energia quando a unidade de circuito de suprimento de energia ex505 é ligada.
[00360] Por exemplo, quando a codificação é executada, o LSI ex500 recebe um sinal de AV de um microfone ex117, uma câmera ex113, e outros através de uma AV IO ex509 sob o controle de uma unidade de controle ex501 que inclui uma CPU ex502, um controlador de memória ex503, um controlador de fluxo ex504, e uma unidade de controle de frequência de acionamento ex512. O sinal de AV recebido é temporariamente armazenado em uma memória externa ex511, tal como uma SDRAM. Sob o controle da unidade de controle ex501, os dados armazenados são segmentados em porções de dados de acordo com a quantidade de processamento e a velocidade a serem transmitidas para uma unidade de processamento de sinal ex507. Então, a unidade de processamento de sinal ex507 codifica um sinal de áudio e/ou um sinal de vídeo. Aqui, a codificação do sinal de vídeo é a codificação descrita em cada uma das modalidades. Mais ainda, a unidade de processamento de sinal ex507 algumas vezes multiplexa os dados de áudio codificados e os dados de vídeo codificados, e um IO de fluxo ex506 provê os dados multiplexados para fora. Os dados multiplexados providos são transmitidos para a estação de base ex107, ou escritos no meio de gravação ex215. Quando os conjuntos de dados são multiplexados, os dados devem ser temporariamente armazenados no armazenamento temporário ex508 de modo que os conjuntos de dados sejam sincronizados uns com os outros.
[00361] Apesar da memória ex511 ser um elemento fora do LSI ex500, esta pode ser incluída no LSI ex500. O armazenamento temporário ex508 não está limitado a um armazenamento temporário, mas pode ser composto de armazenamentos temporários. Mais ainda, o LSI ex500 pode ser feito em um chip ou uma pluralidade de chips.
[00362] Mais ainda, apesar da unidade de controle ex501 incluir a CPU ex502, o controlador de memória ex503, o controlador de fluxo ex504, a unidade de controle de frequência de acionamento ex512, a configuração da unidade de controle ex501 não está limitada a tal. Por exemplo, a unidade de processamento de sinal ex507 pode ainda incluir uma CPU. A inclusão de outra CPU na unidade de processamento de sinal ex507 pode aperfeiçoar a velocidade de processamento. Mais ainda, como outro exemplo, a CPU ex502 pode servir como ou ser uma parte da unidade de processamento de sinal ex507, e, por exemplo, pode incluir uma unidade de processamento de sinal de áudio. Em tal caso, a unidade de controle ex501 inclui a unidade de pro-cessamento de sinal ex507 ou a CPU ex502 que inclui uma parte da unidade de processamento de sinal ex507.
[00363] O nome aqui utilizado é LSI, mas este pode também ser denominado IC, LSI de sistema, super LSI, ou ultra LSI dependendo do grau de integração.
[00364] Mais ainda, os modos de conseguir a integração não estão limitados ao LSI, e um circuito especial ou um processador de uso geral e assim por diante pode também conseguir a integração. Uma Re de de Portas Programáveis no Campo (FPGA) que podem ser programadas após a fabricação de LSIs ou um processador reconfigurá- vel que permita a reconfiguração da conexão ou configuração de um LSI podem ser utilizadas para o mesmo propósito. Tal dispositivo de lógica programável pode tipicamente executar o método de codificação de imagem móvel e o método de decodificação de imagem móvel descritos em cada uma das modalidades, carregando ou lendo, de uma memória, um programa incluído em software ou firmware.
[00365] No futuro, com o avanço na tecnologia de semicondutor, uma tecnologia totalmente nova pode substituir o LSI. Os blocos funcionais podem ser integrados utilizando tal tecnologia. A possibilidade é que a presente invenção seja aplicada à biotecnologia.
[00366] Quando os dados de vídeo gerados no método de codificação de imagem móvel ou pelo aparelho de codificação de imagem móvel descritos em cada uma das modalidades são decodificados, comparado com quando os dados de vídeo que estão em conformidade com um padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC1 são decodificados, a quantidade de processamento provavelmente aumenta. Assim, o LSI ex500 precisa ser ajustado para uma frequência de acionamento mais alta do que aquela da CPU ex502 a ser utilizada quando os dados de vídeo em conformidade com o padrão convencional são decodificados. No entanto, quando a frequência de acionamento é ajustada mais alta, o consumo de energia aumenta.
[00367] Em vista disto, o aparelho de decodificação de imagem móvel, tal como a televisão ex300 e o LSI ex500 é configurado para determinar a qual padrão os dados de vídeo estão em conformidade, e comutar entre as frequências de acionamento de acordo com o padrão determinado. A Figura 35 ilustra uma configuração ex800 na presente modalidade. Uma unidade de comutação de frequência de acionamen- to ex803 ajusta uma frequência de acionamento para uma frequência de acionamento mais alta quando os dados de vídeo são gerado pelo método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel descritos em cada uma das modalidades. Então, a unidade de comutação de frequência de acionamento ex803 instrui uma unidade de processamento de decodificação ex801 que executa o método de decodificação de imagem móvel descrito em cada uma das modalidades para decodificar os dados de vídeo. Quando os dados de vídeo estão em conformidade com o padrão convencional, a unidade de comutação de frequência de acionamento ex803 ajusta uma frequência de acionamento para uma frequência de acionamento mais baixa do que aquela dos dados de vídeo gerados pelo método de codificação de imagem móvel ou o aparelho de codificação de imagem móvel descritos em cada uma das modalidades. Então, a unidade de comutação de frequência de acionamento ex803 instrui a unidade de processamento de decodificação ex802 que está em conformidade com o padrão convencional para decodificar os dados de vídeo.
[00368] Mais especificamente, a unidade de comutação de frequência de acionamento ex803 inclui a CPU ex502 e a unidade de controle de frequência de acionamento ex512 na Figura 34. Aqui, cada uma da unidade de processamento de decodificação ex801 que executa o método de decodificação de imagem móvel descrito em cada uma das modalidades e a unidade de processamento de decodificação ex802 que está em conformidade com o padrão convencional corresponde à unidade de processamento de sinal ex507 na Figura 34. A CPU ex502 determina a qual padrão os dados de vídeo estão em conformidade. Então, a unidade de controle de frequência de acionamento ex512 determina uma frequência de acionamento com base em um sinal da CPU ex502. Mais ainda, a unidade de processamento de sinal ex507 decodifica os dados de vídeo com base no sinal da CPU ex502. Por exemplo, as informações de identificação descritas na Modalidade 5 são provavelmente utilizadas para identificar os dados de vídeo. As informações de identificação não estão limitadas àquelas descritas na Modalidade, mas podem ser quaisquer informações desde que as informações indiquem a qual padrão os dados de vídeo estão em conformidade. Por exemplo, quando a qual padrão os dados de vídeo estão em conformidade pode ser determinado com base em um sinal externo para determinar que os dados de vídeo são utilizados para uma televisão ou um disco, etc., a determinação pode ser feita com base em tal sinal externo. Mais ainda, a CPU ex502 selecionada uma frequência de acionamento com base em, por exemplo, uma tabela de consulta na qual os padrões dos dados de vídeo estão associados com as frequências de acionamento como mostrado na Figura 37. A frequência de acionamento pode ser selecionada armazenando a tabela de consulta no armazenamento temporário ex508 e em uma memória interna de um LSI, e com referência à tabela de consulta pela CPU ex502.
[00369] A Figura 36 ilustra as etapas para executar um método na presente modalidade. Primeiro, na Etapa exS200, a unidade de processamento de sinal ex507 obtém as informações de identificação dos dados multiplexados. A seguir, na Etapa exS201, a CPU ex502 determina se os dados de vídeo são gerados ou não pelo método de codificação e o aparelho de codificação descritos em cada uma das modalidades, com base nas informações de identificação. Quando os dados de vídeo são gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descritos em cada uma das modalidades, Na Etapa exS202, a CPU ex502 transmite um sinal para ajustar a frequência de acionamento para uma frequência de acionamento alta para a unidade de controle de frequência de acionamento ex512. Então, a unidade de controle de frequência de aciona- mento ex512 ajusta a frequência de acionamento para a frequência de acionamento mais alta. Por outro lado, quando as informações de identificação indicam que os dados de vídeo estão em conformidade com o padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC-1, na Etapa exS203, a CPU ex502 transmite um sinal para ajustar a frequência de acionamento para uma frequência de acionamento mais baixa para a unidade de controle de frequência de acionamento ex512. Então a unidade de controle de frequência de acionamento ex512 ajusta a frequência de acionamento para uma frequência de acionamento mais baixa do que aquela no caso onde os dados de vídeo são gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descrito em cada uma das modalidades.
[00370] Mais ainda, juntamente com a comutação das frequências de acionamento, o efeito de conservação de energia pode ser aperfeiçoado mudando a voltagem a ser aplicada no LSI ex500 ou em um aparelho que inclui o LSI ex500. Por exemplo, quando a frequência de acionamento é ajustada mais baixa, a voltagem a ser aplicada no LSI ex500 ou no aparelho que inclui o LSI ex500 é provavelmente ajustada para uma voltagem mais baixa do que aquela no caso onde a frequência de acionamento é ajustada mais alta.
[00371] Mais ainda, quando a quantidade de processamento para decodificação é maior, a frequência de acionamento pode ser ajustada mais alta, e quando a quantidade de processamento para decodifica- ção é menor, a frequência de acionamento pode ser ajustada mais baixa que o método para ajustar a frequência de acionamento. Assim, o método de ajuste não está limitado àqueles acima descritos. Por exemplo, quando a quantidade de processamento para decodificar os dados de vídeo em conformidade com MPEG-4 AVC é maior do que a quantidade de processamento para decodificar os dados de vídeo gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descritos em cada uma das modalidades, a frequência de acionamento é provavelmente ajustada em ordem inversa ao ajuste acima descrito.
[00372] Mais ainda, o método para ajustar a frequência de acionamento não está limitado ao método para ajustar a frequência de acionamento mais baixa. Por exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descritos em cada uma das modalidades, a voltagem a ser aplicado no LSI ex500 ou no aparelho que inclui o LSI ex500 é provavelmente ajustada mais alta. Quando as informações de identificação in-dicam que os dados de vídeo estão em conformidade com o padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC-1, a voltagem a ser aplicada no LSI ex500 ou no aparelho que inclui o LSI ex500 é provavelmente ajustada mais baixa. Como outro exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descritos em cada uma das modalidades, o acionamento da CPU ex502 provavelmente não precisa ser suspenso. Quando as informações de identificação iniciam que os dados de vídeo estão em conformidade com o padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC-1, o acionamento da CPU ex502 é provavelmente suspenso em um dado tempo porque a CPU ex502 tem uma capacidade de processamento extra. Mesmo quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de imagem móvel e o aparelho de codificação de imagem móvel descritos em cada uma das modalidades, no caso onde a CPU ex502 tem uma capacidade de processamento extra, o acionamento da CPU ex502 é provavelmente suspenso em um dado tempo. Em tal caso, o tempo de suspensão é provavelmente ajustado mais curto do que aquele no caso onde quando as informações de identificação indicam que os dados de vídeo estão em conformidade com o padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC-1.
[00373] Consequentemente, o efeito de conservação de energia pode ser aperfeiçoado comutando entre as frequências de acionamento de acordo com o padrão ao qual os dados de vídeo estão em conformidade. Mais ainda, quando a LSI ex500 ou o aparelho que inclui o LSI ex500 é acionado utilizando uma bateria, a vida da bateria pode ser estendida com o efeito de conservação de energia.
[00374] Existem casos onde uma pluralidade de dados de vídeo que estão em conformidade com diferentes padrões, está provida para os dispositivos e sistemas, tal como uma televisão e um telefone celular. De modo a permitir a decodificação a pluralidade de dados de vídeo estão em conformidade com diferentes padrões, a unidade de processamento de sinal ex507 do LSI ex500 precisa estar em conformidade com os diferentes padrões. No entanto, um aumento na escala do circuito do LSI ex500 e um aumento no custo surgem com a utilização individual das unidades de processamento de sinal ex507 que estão em conformidade com os respectivos padrões.
[00375] Em vista disto, o que é concebível uma configuração na qual a unidade de processamento de decodificação para implementar o método de decodificação de imagem móvel descrito em cada uma das modalidades e a unidade de processamento de decodificação que está em conformidade com o padrão convencional, tal MPEG-2, MPEG-4 AVC, e VC-1 são parcialmente compartilhadas. Ex900 na Figura 38A mostra um exemplo da configuração. Por exemplo, o método de decodificação de imagem móvel descrito em cada uma das modalidades e o método de decodificação de imagem móvel que está em conformidade com MPEG-4 AVC têm, parcialmente em comum, os detalhes de processamento, tal como codificação de entropia, quanti- zação, inversa, filtragem de desbloqueio, e predição compensada em movimento. Os detalhes de processamento a ser compartilhado provavelmente incluem a utilização de uma unidade de processamento de decodificação ex902 que está em conformidade com MPEG-4 AVC. Em contraste, uma unidade de processamento de decodificação dedicada ex901 é provavelmente utilizada para outro processamento o qual é único para um aspecto da presente invenção e não está em conformidade com MPEG-4 AVC. Como o aspecto da presente invenção está caracterizado pelo particionamento de uma imagem especificamente, por exemplo, a unidade de processamento de decodificação dedicada ex901 é utilizada para o particionamento de uma imagem. De outro modo, a unidade de processamento de decodificação é provavelmente compartilhada para uma da quantização inversa, decodifi- cação entropia, filtragem de desbloqueio, e compensação de movimento, ou todo o processamento. A unidade de processamento de decodificação para implementar o método de decodificação de imagem móvel descrito em cada uma das modalidades pode ser compartilhada para o processamento a ser compartilhados, e uma unidade de processamento de decodificação dedicada pode ser utilizada para um processamento único daquele de MPEG-4 AVC.
[00376] Mais ainda, ex1000 na Figura 38B mostra outro exemplo em que o processamento é parcialmente compartilhado. Este exemplo utiliza uma configuração que inclui uma unidade de processamento de decodificação dedicada ex1001 que suporta o processamento único para um aspecto da presente invenção, uma unidade de processamento de decodificação dedicada ex1002 que suporta o processamento único para outro padrão convencional, e uma unidade de processamento de decodificação ex1003 que suporta o processamento a ser compartilhado entre o método de decodificação de imagem móvel de acordo com o aspecto da presente invenção e o método de decodifi- cação de imagem móvel convencional. Aqui, as unidades de processamento de decodificação dedicadas ex1001 e ex1002 não são necessariamente especializadas para o processamento de acordo com o aspecto da presente invenção e o processamento do padrão convencional, respectivamente, e podem ser aquelas capazes de implementar um processamento geral. Mais ainda, a configuração da presente modalidade pode ser implementada pelo LSI ex500.
[00377] Como tal, a redução da escala do circuito de um LSI e a redução do custo são possíveis compartilhando a unidade de processamento de decodificação para o processamento a ser compartilhado entre o método de decodificação de imagem móvel de acordo com o aspecto da presente invenção e o método de decodificação de imagem móvel em conformidade com o padrão convencional.
[00378] A presente invenção pode ser aplicada a um método de codificação de imagem, um método de decodificação de imagem, um aparelho de codificação de imagem, e um aparelho de decodificação de imagem. Além disso, a presente invenção pode ser utilizada para dispositivos de display de informações de alta resolução ou dispositivos de captura de imagem os quais incluem aparelhos de codificação de imagem, tal como uma televisão, um gravado de vídeo digital, um sistema de navegação de carro, um telefone celular, uma câmera de imagem parada digital e uma câmera de vídeo digital. LISTA DE SÍMBOLOS DE REFERÊNCIA 100 Aparelho de codificação de imagem 101 Sinal de imagem de entrada 105 Subtrator 106 Sinal residual 110 Unidade de transformação 111 Coeficiente de transformação 120, Unidade de quantização 121, 291 Coeficiente de quantização 130, 230 Unidade de Transformação inversa 131, 231 Sinal residual 140, 240 Somador 141, 151, 161, 171, 241, 251, 261, 271 Sinal de imagem decodificado 150, 250 Filtro de desbloqueio 160, 260 Filtro de loop adaptável 170, 270, Armazenamento temporário de quadro de referência 180, 280 Unidade de predição 181, 281 Sinal de predição 190, Unidade de codificação de entropia 191, 201 Sinal codificado 200 Aparelho de decodificação de imagem 290 Unidade de decodificação de entropia 300, 310, 330, 340, 350, 360, 370, 390, 400, 410, 420 Imagem 301, 302, 311, 312, 313, 314, 321, 381 Linha 320, 380 Cabeçalho de fatia 331, 332, 333, 341, 342, 343, 344, 351, 354, 361, 362, 363, 364, 365, 371, 372, 373, 374, 391, 392, 393, 394, 401, 402, 403, 404, 411, 412, 413, 414, 415, 421, 422, 423, 424 Fatia
Claims (2)
1. Método de codificação de imagem (400, 420) para codificar uma pluralidade de fatias (401, 402, 403, 404) nas quais uma imagem (400, 420) é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação (LCUs), para gerar um fluxo de bits, o método CARACTERIZADO pelo fato de que compreende: particionar a imagem (400, 420) nas fatias (401, 402, 403, 404); e codificar as fatias (401, 402, 403, 404) por um processamento paralelo de frente de onda (wavefront - WPP), em que cada uma das fatias é uma fatia normal (401, 402) tendo, em um cabeçalho de fatia (320), informações usadas para outra fatia ou uma fatia dependente (403, 404) que é decodificada usando informações incluídas em um cabeçalho de fatia (320) de outra fatia, a imagem (400, 420) inclui uma pluralidade de linhas (301, 302, 311, 312, 313, 314), cada uma das quais inclui duas ou mais das unidades de codificação (LCUs), no particionamento, quando a fatia normal (401, 402) inicia em uma posição diferente do início de uma primeira linha (301, 311), a imagem (400, 420) é particionada nas fatias para causar uma segunda linha (302, 312) imediatamente seguinte a primeira linha (301, 311) para não iniciar com a fatia dependente (403, 404), o processamento paralelo de frente de onda (WPP) inclui sincronizar informações de contexto e probabilidade no início de cada uma das fatias (401, 402, 403, 404), e na sincronização, uma fatia de um início da segunda linha (302, 312) não se refere a informações de fatia da fatia normal (401, 402).
2. Aparelho de codificação de imagem (100) para codificar uma pluralidade de fatias (401, 402, 403, 404) nas quais uma imagem (400, 420) é particionada e cada uma das quais inclui uma pluralidade de unidades de codificação (LCUs), para gerar um fluxo de bits, o aparelho de codificação de imagem (400, 420) CARACTERIZADO pelo fato de que compreende: um processador; e uma memória (ex367) tendo um instruções armazenado nela, as instruções fazendo com que o processador execute operações incluindo: particionar a imagem (400, 420) nas fatias (401, 402, 403, 404); e codificar as fatias (401, 402, 403, 404) por um processamento paralelo de frente de onda (wavefront - WPP), em que cada uma das fatias é uma fatia normal (401, 402) tendo, em um cabeçalho de fatia (320), informações usadas para outra fatia ou uma fatia dependente (403, 404) que é decodificada usando informações incluídas em um cabeçalho de fatia (320) de outra fatia, a imagem (400, 420) inclui uma pluralidade de linhas (301, 302, 311, 312, 313, 314), cada uma das quais inclui duas ou mais das unidades de codificação (LCUs), no particionamento, quando a fatia normal (401, 402) inicia em uma posição diferente do início de uma primeira linha (301, 311), a imagem (400, 420) é particionada nas fatias para causar uma segunda linha (302, 312) imediatamente seguinte a primeira linha (301, 311) para não iniciar com a fatia dependente (403, 404), o processamento paralelo de frente de onda (WPP) inclui sincronizar informações de contexto e probabilidade no início de cada uma das fatias (401, 402, 403, 404), e na sincronização, uma fatia de um início da segunda (302, 312) não se refere a informações de fatia da fatia normal (401, 402).
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261705864P | 2012-09-26 | 2012-09-26 | |
US61/705,864 | 2012-09-26 | ||
PCT/JP2013/005514 WO2014050030A1 (ja) | 2012-09-26 | 2013-09-18 | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
BR112015004246A2 BR112015004246A2 (pt) | 2017-07-04 |
BR112015004246A8 BR112015004246A8 (pt) | 2023-01-24 |
BR112015004246B1 true BR112015004246B1 (pt) | 2023-02-07 |
Family
ID=50338837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112015004246-5A BR112015004246B1 (pt) | 2012-09-26 | 2013-09-18 | Método de codificação de imagem e aparelho de codificação de imagem |
Country Status (14)
Country | Link |
---|---|
US (9) | US9100634B2 (pt) |
EP (3) | EP2903269B1 (pt) |
JP (1) | JP6124221B2 (pt) |
KR (2) | KR102063239B1 (pt) |
CN (2) | CN104584554B (pt) |
AU (1) | AU2013322000B2 (pt) |
BR (1) | BR112015004246B1 (pt) |
CA (1) | CA2882792C (pt) |
ES (1) | ES2716579T3 (pt) |
MX (1) | MX341067B (pt) |
MY (1) | MY181830A (pt) |
TW (1) | TWI581618B (pt) |
WO (1) | WO2014050030A1 (pt) |
ZA (1) | ZA201501520B (pt) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9621905B2 (en) * | 2012-06-29 | 2017-04-11 | Qualcomm Incorporated | Tiles and wavefront parallel processing |
WO2014050030A1 (ja) | 2012-09-26 | 2014-04-03 | パナソニック株式会社 | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置 |
RU2608465C1 (ru) * | 2013-01-04 | 2017-01-18 | Самсунг Электроникс Ко., Лтд. | Способ энтропийного кодирования сегмента слайса и устройство для него и способ энтропийного декодирования сегмента слайса и устройство для него |
GB2513303B (en) * | 2013-04-16 | 2017-06-07 | Canon Kk | Method and device for partitioning an image |
US20150049105A1 (en) * | 2013-08-13 | 2015-02-19 | Mediatek Inc. | Data processing apparatus for transmitting/receiving indication information of pixel data grouping setting via display interface and related data processing method |
KR102257269B1 (ko) | 2013-10-14 | 2021-05-26 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐 |
CN105659602B (zh) | 2013-10-14 | 2019-10-08 | 微软技术许可有限责任公司 | 用于视频和图像编码的帧内块复制预测模式的编码器侧选项 |
KR102275639B1 (ko) | 2013-10-14 | 2021-07-08 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 영상 코딩 및 디코딩에 대한 기본 색상 인덱스 맵 모드의 특징 |
US9736488B2 (en) * | 2013-11-27 | 2017-08-15 | Nxp Usa, Inc. | Decoding for high efficiency video transcoding |
US10469863B2 (en) | 2014-01-03 | 2019-11-05 | Microsoft Technology Licensing, Llc | Block vector prediction in video and image coding/decoding |
US11284103B2 (en) | 2014-01-17 | 2022-03-22 | Microsoft Technology Licensing, Llc | Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning |
WO2015192353A1 (en) | 2014-06-19 | 2015-12-23 | Microsoft Technology Licensing, Llc | Unified intra block copy and inter prediction modes |
EP3202150B1 (en) | 2014-09-30 | 2021-07-21 | Microsoft Technology Licensing, LLC | Rules for intra-picture prediction modes when wavefront parallel processing is enabled |
CN106664405B (zh) | 2015-06-09 | 2020-06-09 | 微软技术许可有限责任公司 | 用调色板模式对经逸出编码的像素的稳健编码/解码 |
US10382793B2 (en) * | 2015-06-23 | 2019-08-13 | Integrated Device Technology, Inc. | Apparatuses and methods for performing information extraction and insertion on bitstreams |
US20170105010A1 (en) * | 2015-10-09 | 2017-04-13 | Microsoft Technology Licensing, Llc | Receiver-side modifications for reduced video latency |
WO2017171438A1 (ko) * | 2016-03-30 | 2017-10-05 | 한국전자통신연구원 | 픽쳐 분할 정보를 사용하는 비디오의 부호화 및 복호화를 위한 방법 및 장치 |
US10593015B2 (en) | 2016-05-04 | 2020-03-17 | Texas Instruments Incorporated | Apparatus and method for efficient motion estimation |
CN108063948B (zh) * | 2016-11-08 | 2020-08-04 | 联发科技股份有限公司 | 配合多个处理器的影像处理装置及影像处理方法 |
CN107147916B (zh) * | 2017-06-09 | 2021-01-29 | 苏州蜗牛数字科技股份有限公司 | 一种在传输层上传输h.265编码视频数据的方法 |
CN107197296B (zh) * | 2017-06-22 | 2019-08-13 | 华中科技大学 | 一种基于COStream的HEVC并行编码方法和系统 |
BR112020024566A2 (pt) | 2018-06-14 | 2021-03-09 | Panasonic Intellectual Property Corporation Of America | Método de codificação de dados tridimensionais, método de decodificação de dados tridimensionais, dispositivo de codificação de dados tridimensionais e dispositivo de decodificação de dados tridimensionais |
KR20210093877A (ko) * | 2018-12-07 | 2021-07-28 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법 |
CN113785583A (zh) * | 2019-04-10 | 2021-12-10 | 华为技术有限公司 | 视频译码中的条带入口点 |
WO2021029646A1 (ko) * | 2019-08-12 | 2021-02-18 | 한국항공대학교산학협력단 | 하이 레벨 영상 분할과 영상 부호화/복호화 방법 및 장치 |
CN110933436A (zh) * | 2019-12-17 | 2020-03-27 | 展讯通信(上海)有限公司 | 图像编码方法、装置、计算机设备及存储介质 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2673494C (en) * | 2006-10-16 | 2014-07-08 | Nokia Corporation | System and method for using parallelly decodable slices for multi-view video coding |
CN101267564B (zh) * | 2008-04-16 | 2011-06-15 | 中国科学院计算技术研究所 | 一种多处理器视频编码芯片装置和方法 |
CN101836454B (zh) * | 2008-12-03 | 2012-08-22 | 联发科技股份有限公司 | 对有序熵切片执行平行cabac码处理的方法及装置 |
WO2010100875A1 (ja) | 2009-03-02 | 2010-09-10 | パナソニック株式会社 | 記録媒体、再生装置、及び集積回路 |
CN101656885B (zh) * | 2009-09-17 | 2011-12-07 | 中兴通讯股份有限公司 | 多核处理器中并行解码的方法和装置 |
US20120014431A1 (en) * | 2010-07-14 | 2012-01-19 | Jie Zhao | Methods and Systems for Parallel Video Encoding and Parallel Video Decoding |
US9313514B2 (en) * | 2010-10-01 | 2016-04-12 | Sharp Kabushiki Kaisha | Methods and systems for entropy coder initialization |
US20120230399A1 (en) * | 2011-03-10 | 2012-09-13 | Christopher Andrew Segall | Video decoder parallelization including a bitstream signal |
US20130003823A1 (en) * | 2011-07-01 | 2013-01-03 | Kiran Misra | System for initializing an arithmetic coder |
US9247258B2 (en) * | 2011-10-26 | 2016-01-26 | Qualcomm Incorporated | Unified design for picture partitioning schemes |
US9077998B2 (en) * | 2011-11-04 | 2015-07-07 | Qualcomm Incorporated | Padding of segments in coded slice NAL units |
TWI752680B (zh) | 2012-04-13 | 2022-01-11 | 美商Ge影像壓縮有限公司 | 用以自資料串流重構圖像的解碼器及方法、用以將圖像編碼入資料串流的編碼器及方法、與相關電腦程式及機器可存取媒體 |
CN115442623B (zh) * | 2012-06-29 | 2024-08-23 | Ge视频压缩有限责任公司 | 解码视频数据流的方法、存储介质、编码器、解码器 |
WO2014050030A1 (ja) | 2012-09-26 | 2014-04-03 | パナソニック株式会社 | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置 |
US20180020222A1 (en) * | 2016-07-12 | 2018-01-18 | Mediatek Inc. | Apparatus and Method for Low Latency Video Encoding |
-
2013
- 2013-09-18 WO PCT/JP2013/005514 patent/WO2014050030A1/ja active Application Filing
- 2013-09-18 KR KR1020157004465A patent/KR102063239B1/ko active IP Right Grant
- 2013-09-18 MX MX2015002890A patent/MX341067B/es active IP Right Grant
- 2013-09-18 EP EP13842739.8A patent/EP2903269B1/en active Active
- 2013-09-18 KR KR1020197038985A patent/KR102160372B1/ko active IP Right Grant
- 2013-09-18 MY MYPI2015000473A patent/MY181830A/en unknown
- 2013-09-18 AU AU2013322000A patent/AU2013322000B2/en active Active
- 2013-09-18 CN CN201380044373.2A patent/CN104584554B/zh active Active
- 2013-09-18 CA CA2882792A patent/CA2882792C/en active Active
- 2013-09-18 JP JP2014538155A patent/JP6124221B2/ja active Active
- 2013-09-18 CN CN201810735802.5A patent/CN108769698B/zh active Active
- 2013-09-18 EP EP21169590.3A patent/EP3876538A1/en active Pending
- 2013-09-18 BR BR112015004246-5A patent/BR112015004246B1/pt active IP Right Grant
- 2013-09-18 EP EP18214776.9A patent/EP3503552B1/en active Active
- 2013-09-18 ES ES13842739T patent/ES2716579T3/es active Active
- 2013-09-20 US US14/032,414 patent/US9100634B2/en active Active
- 2013-09-23 TW TW102134120A patent/TWI581618B/zh active
-
2015
- 2015-03-05 ZA ZA2015/01520A patent/ZA201501520B/en unknown
- 2015-05-08 US US14/707,439 patent/US9282334B2/en active Active
-
2016
- 2016-01-28 US US15/009,172 patent/US9420297B2/en active Active
- 2016-07-15 US US15/211,475 patent/US9693067B2/en active Active
-
2017
- 2017-05-10 US US15/591,381 patent/US9992505B2/en active Active
-
2018
- 2018-05-03 US US15/970,185 patent/US10743010B2/en active Active
-
2020
- 2020-07-02 US US16/919,209 patent/US11212544B2/en active Active
-
2021
- 2021-11-29 US US17/536,159 patent/US11863772B2/en active Active
-
2023
- 2023-11-20 US US18/514,382 patent/US20240089478A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2013322041B2 (en) | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus | |
CA2882792C (en) | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus | |
BR112015004140A2 (pt) | método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem | |
BR122022013246B1 (pt) | Aparelho de decodificação para decodificar um parâmetro de controle para controlar decodificação de uma imagem, e aparelho de codificação para codificar um parâmetro de controle para controlar codificação de uma imagem | |
BR112014004920B1 (pt) | Decisões de filtro de desbloqueio de baixa complexidade | |
BR112013027186B1 (pt) | Método de decodificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, aparelho de codificação de imagem e aparelho de codificação e deco dificação de imagem | |
BR112013030469B1 (pt) | Método de decodificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, aparelho de codificação de imagem, e aparelho de codificação e decodificação de imagem | |
BR112013018850B1 (pt) | Método e aparelho de decodificação de imagem, e método e aparelho de codificação de imagem | |
BR122023004444B1 (pt) | Aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem | |
BR112014026177B1 (pt) | Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem, e aparelho de codificação e decodificação de imagem | |
BR112013033365B1 (pt) | Método de codificação de imagem e método de decodificação de imagem | |
BR112013033374B1 (pt) | Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B25A | Requested transfer of rights approved |
Owner name: SUN PATENT TRUST (US) |
|
B25A | Requested transfer of rights approved |
Owner name: VELOS MEDIA INTERNATIONAL LIMITED (IE) |
|
B15K | Others concerning applications: alteration of classification |
Ipc: H04N 7/00 (2011.01) |
|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B15K | Others concerning applications: alteration of classification |
Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/00 Ipc: H04N 13/189 (2018.01), H04N 19/436 (2014.01), H04N |
|
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B25A | Requested transfer of rights approved |
Owner name: SUN PATENT TRUST (US) |
|
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 18/09/2013, OBSERVADAS AS CONDICOES LEGAIS |