MÉTODO PARA SIMULAR GRANULAÇÃO DE FILME MEDIANTE COMPOSIÇÃO EM MOSAICO DE AMOSTRAS PRÉ-COMPUTADAS
REFERÊNCIA CRUZADA A PEDIDOS CORRELATOS
Este pedido reivindica prioridade sob 35 USC
119(e) para o Pedido Provisório de Patente US 60/505.146 depositado em 23 de setembro de 2003 cujos ensinamentos são aqui incorporados.
CAMPO TÉCNICO
Esta invenção se refere a uma técnica de simular granulação de filme em uma imagem.
TÉCNICA ANTECEDENTE
Publicações anteriores de autoria dos presentes inventores e atribuídas ao presente cessionário propuseram simular granulação de filme em um fluxo de vídeo decodifica15 do mediante primeiramente, filtragem de granulação da imagem antes de compactaçao. O fluxo de vídeo é submetido à compactação e transmissão subseqüente para um decodificador para recebimento junto com uma mensagem contendo informação sobre a granulação de filme que estava presente no fluxo an20 tes da compactação. Ao receber o fluxo de vídeo compactado e a mensagem contendo informação de granulação, o decodificador decodifica o fluxo compactado e então restaura a aparência granulosa original da imagem mediante simulação da granulação do filme com base no conteúdo da mensagem de infor25 mação de granulação. A mensagem de granulação de filme pode assumir a forma de uma mensagem de Informação de Aperfeiçoamento Suplementar (SEI) acompanhando o fluxo de vídeo codificado .
Simular granulação de filme dessa forma proporciona grande economia de taxa de bits para aplicações de alta qualidade onde a preservação de granulação de filme se torna importante. Contudo, esse método de simular granulação de 5 filme aumenta a complexidade do decodificador uma vez que o decodificador deve reproduzir e combinar a granulação de filme com o fluxo de vídeo decodificado como especificado pela mensagem de informação de granulação de filme transmit ida.
Desse modo, existe a necessidade de uma técnica para simular granulação de filme que supere as desvantagens da técnica anterior.
BREVE SUMÁRIO DA INVENÇÃO
Resumidamente, a presente invenção provê um método para simular granulação de filme em um bloco de imagem de entrada. O método começa mediante, primeiramente, computação de um valor médio de pelo menos um parâmetro de imagem para o bloco de imagem de entrada. Posteriormente, um bloco de granulação de filme é selecionado a partir de pelo menos um 20 grupo previamente estabelecido de blocos de granulação cujo parâmetro de imagem deve combinar estreitamente com o parâmetro de imagem do bloco de imagem de entrada. O bloco selecionado é, então, combinado com o bloco de imagem de entrada .
Selecionar um bloco de granulação de filme a partir do pelo menos um grupo de blocos de granulação de filme preestabelecidos para combinação com a imagem de entrada reduz a complexidade associada à simulação de granulação de
filme em um decodificador como era feito pelos métodos anteriores. Adicionalmente, selecionar um bloco de granulação de filme a partir do pelo menos um grupo de blocos de granulação de filme preestabelecidos reduz os artefatos que de ou5 tro modo poderíam surgir ao se fazer a transição entre blocos de granulação de filme independentemente gerados.
DESCRIÇÃO RESUMIDA DOS DESENHOS
A Figura 1 ilustra as etapas de um método da técnica anterior para simulação de granulação de filme mediante 10 composição em mosaico de amostras de granulação de filme independentemente geradas;
A Figura 2 ilustra as etapas de um método da técnica anterior para gerar os blocos de granulação de filme para o método da Figura 1;
A Figura 3 ilustra uma parte de um decodificador da técnica anterior para gerar uma imagem de saída contendo granulação de filme;
A Figura 4 ilustra as etapas de um método de acordo com uma modalidade ilustrativa dos princípios presentes 20 para simular granulação de filme mediante composição em mosaico de blocos pré-computados de granulação de filme;
A Figura 5 ilustra as etapas de um método de acordo com uma modalidade ilustrativa dos princípios presentes para preestabelecer os blocos de granulação de filme usados 25 no método da Figura 4; e
A Figura 6 ilustra as etapas de um método de acordo com uma outra modalidade ilustrativa dos presentes princípios para simular granulação de filme mediante composição
em mosaico de blocos de granulação de filme obtidos a partir de características de imagem de entrada.
DESCRIÇÃO DETALHADA
De acordo com os presentes princípios, simulação de granulação de filme em uma imagem ocorre mediante composição em mosaico de blocos de filme individuais preestabelecidos. 0 termo composição em mosaico dos blocos de filme individuais implica na elaboração de uma imagem composta mediante combinação de blocos de granulação de filme individu10 ais que são menores em tamanho. Para considerar as vantagens de simulação de granulação de filme mediante composição em mosaico de amostras de granulação de filme préestabelecidas, será útil uma descrição do processo de simulação de granulação de filme da técnica anterior.
A Figura 1 ilustra as etapas de um método da técnica anterior para simular granulação de filme na base de bloco-a-bloco. O método da Figura 1 começa mediante, primeiramente, inicialização de variáveis do sistema durante etapa
10. Durante etapa 12, um bloco sucessivo de um conjunto de blocos de N x M pixels (onde N e M são individualmente inteiros maiores do que zero) é lido a partir de uma imagem de entrada 13. A leitura dos blocos durante a etapa 12 ocorre na ordem de varredura - rastreio. Antes da etapa 12, a imagem de entrada 13 tipicamente é submetida à filtragem para remover ou pelo menos atenuar a granulação de filme seguido pela decomposição para produzir blocos não sobrepostos de N x M pixels. Compactação inicial da imagem pode ela própria servir para remover ou atenuar granulação de filme. Em al
guns casos a imagem de entrada não terá qualquer granulação de filme inicial, seja porque a imagem foi digitalmente capturada e/ou, gerada por computador. Sob tais circunstâncias, adicionar granulação onde nenhuma granulação existia aper5 feiçoará a imagem.
Após a etapa 12, a média numérica da intensidade de imagem, é computada durante etapa 14 para o bloco que se acabou de ler. A seguir, ocorre a seleção de parâmetros de granulação de filme durante etapa 16. A seleção é feita a 10 partir de um conjunto de parâmetros de granulação de filme providos em uma mensagem 17 de granulação de filme acompanhando a imagem de entrada de acordo com o valor médio de intensidade computado durante etapa 14. Tipicamente a mensagem 17 de granulação de filme assume a forma de uma Mensagem 15 de Aperfeiçoamento Suplementar (SEI) , e por essa razão, o termo mensagem SEI aparecerá daqui por diante ao se referir à mensagem contendo informação de granulação de filme.
Devido ao fato das características de granulação de filme poder variar dependendo do nível de intensidade, a seleção 20 realizada durante a etapa 16 pode produzir diferentes parâmetros de granulação de filme dependendo da intensidade média medida no bloco de imagem extraído.
Utilizando os parâmetros de granulação de filme selecionados durante etapa 16, em bloco de N x M pixel de 25 amostras de granulação de filme é gerado durante etapa 18 para uso na criação de uma imagem 19 de granulação de filme.
Cada um dos blocos de granulação de filme gerados através desse processo é submetido a armazenamento e composição para
produzir uma imagem de granulação de filme que mapeia para o tamanho da imagem de entrada original. Esse processo de composição constitui composição em mosaico como discutido anteriormente. Após etapa 18, ocorre uma verificação durante a etapa 20 no sentido de se o bloco selecionado durante etapa constitui o último bloco da imagem de entrada 11 . Se permanecerem blocos adicionais, a execução do programa deriva para a etapa 12 e aquelas após a mesma. Caso contrário ocorre a etapa 22 e o processo termina.
A Figura 2 ilustra as etapas individuais que compreendem coletivamente a etapa 18 da Figura 1 para gerar o bloco de N x M amostras de granulação de filme. O método da Figura 2 começa mediante execução da etapa 200 durante a qual ocorre a inicialização das variáveis do sistema. Poste15 riormente, a geração de um bloco de N x M valores aleatórios ocorre durante etapa 202 utilizando um ou mais parâmetros obtidos a partir da mensagem SEI 17. 0 bloco gerado durante etapa 2 04 é submetido a uma Transformação Discreta de Coseno (DCT) durante a etapa 2 04 para obter um conjunto cor20 respondente de N x M coeficientes de frequência. Outras transformações, além de DCT também poderíam ser usadas. Os coeficientes computados durante a etapa 204 são submetidos à filtragem de frequência durante etapa 206, com os coeficientes de filtragem computados de acordo com um ou mais dos pa25 râmetros contidos na mensagem SEI 17. A filtragem de frequência controla o tamanho da granulação simulada. Os coeficientes de freqüência filtrada são submetidos a uma Transformação de Co-seno Discreta Inversa (IDCT) durante etapa
208 para produzir a imagem 19 de granulação de filme. Esse processo exige a especificação do desvio de ruído assim como frequências de corte superior e inferior que controlam o processo de filtragem no domínio de frequência. Para aplicações de codificação de vídeo, a mensagem SEI 17 transporta tipicamente tal informação. Após a etapa 208, o processo termina.
A Figura 3 ilustra um diagrama esquemático de blocos de uma parte de um decodificador 300 que realiza combinação de granulação de filme com a imagem original. Um bloco de soma 310 dentro do decodificador 300 recebe uma imagem 13 de entrada decodificada em uma primeira entrada. A imagem 19 de granulação de filme da Figura 2 é submetida à ação de desbloquear em um filtro redutor de efeito de bloco 314 antes do recebimento na segunda entrada do bloco de soma 310. O bloco de soma 310 soma a imagem de entrada 13 e a imagem 19 de granulação de filme para produzir uma imagem de saida 316 que contém a granulação de filme. Uma vez que os blocos individuais da granulação de filme foram gerados independentemente, artefatos podem ser percebidos nas transmissões entre os blocos. Desse modo, o filtro redutor de efeito de bloco 314 se torna importante para reduzir os artefatos visuais resultantes da composição em mosaico de granulação de filme.
Como desse modo descrito, o método da técnica anterior para simulação de granulação de filme exige a geração de granulação de filme para combinação com cada bloco processado de pixels da imagem de entrada. Ao contrário, a simulação de granulação de filme de acordo com os presentes
princípios obtém maior eficiência mediante limitação da geração de granulação de filme por intermédio de um processo de criação de grupo no qual um número limitado de blocos de granulação de filme é computado. Essa abordagem reduz inten5 samente a complexidade computacional do processo de simulação de granulação de filme.
A Figura 4 ilustra as etapas de um método de acordo com uma primeira modalidade dos presentes princípios para simulação de granulação de filme. Como discutido em maior 10 detalhe a segui, o método de simulação de granulação de filme da Figura 5 evita vantajosamente a geração instantânea de granulação de filme mediante seleção de blocos de granulação de filme, individuais, pré-computados, a partir de um grupo de tais blocos. 0 método da Figura 4 começa mediante, pri15 meiramente, inicialização das variáveis do sistema durante etapa 400. A seguir um bloco sucessivo de N x M pixels é lido durante a etapa 402 a partir da imagem de entrada 13. Leitura dos blocos durante a etapa 402 ocorre na ordem de varredura - rastreio. Como discutido acima, a imagem de en20 trada 13 tipicamente terá tido toda a sua granulação removida ou atenuada e terá sido decomposta em blocos não sobrepostos de N x M pixels (onde N e M são inteiros cada um deles maior do que zero) . Compactação inicial da imagem pode ela própria servir para remover ou atenuar granulação de 25 filme. Em alguns casos a imagem de entrada não terá qualquer granulação de filme inicial, seja porque a imagem foi capturada digitalmente e/ou gerada por computador. Sob tais circunstâncias, adicionar granulação onde não existia granula9
ção aperfeiçoará a imagem.
Após a etapa 402, o valor médio de um parâmetro de imagem, tipicamente, o valor de intensidade médio é computado durante etapa 404 para o bloco que se acabou de ler durante etapa 402. A seguir, um bloco de granulação de filme é selecionado durante etapa 406 a partir de pelo menos um grupo de blocos de granulação de filme, preestabelecidos, précomputados da maneira descrita daqui por diante com relação à Figura 5. Mais propriamente do que se basear em um único grupo de blocos de granulação de filme, múltiplos grupos poderíam existir a partir dos quais a seleção poderia ocorrer dependendo da intensidade média da imagem ou dependendo de um ou mais diferentes parâmetros de imagem. Quando mais do que um bloco está disponível para o mesmo nível de intensidade e componente de cor, um critério de seleção deve ser especificado. Por exemplo, seleção pseudo-aleatória de blocos a partir do grupo poderia ocorrer para evitar a criação de padrões quando um número reduzido de blocos estiver disponível . Também se pode fazer uso de cópias transformadas do conjunto de blocos de granulação de filme disponíveis.
Após a seleção de bloco durante etapa 406, o bloco selecionado é submetido, tipicamente, a uma transformação durante a etapa 410 para produzir o bloco 19 de imagem de granulação de filme para combinação com a imagem de granulação de filme. Após etapa 410, ocorre uma verificação para determinar se permanecem blocos de imagem adicionais durante etapa 412. Se permanecerem blocos adicionais de imagem, a execução do programa deriva para etapa 402 e aquelas após a mesma. Caso contrário, a execução do programa termina durante etapa 414.
A Figura 5 ilustra as etapas de um método de acordo com os presentes princípios para gerar os blocos 408 de granulação de filme, preestabelecidos, da Figura 4. O método da Figura 5 começa mediante, primeiramente, realização da inicialização durante a etapa 500 para reajustar todas as variáveis do sistema. A seguir, ocorre a seleção de um conjunto de parâmetros de granulação de filme a partir da men10 sagem SEI 17, durante a etapa 502. Posteriormente, um conjunto de K blocos de amostras de granulação de filme (onde K é um inteiro maior do que zero) é gerado para cada conjunto de parâmetros na mensagem SEI 17 durante a etapa 504. Diferentes conjuntos de parâmetros especificarão diferentes com15 ponentes de cor e diferentes níveis de intensidade. Uma implementação específica com K=1 resulta nas exigências computacionais mais baixas, gerando somente um bloco de granulação de filme por conjunto de parâmetros. Contudo, para evitar a criação de padrões, é preferível utilizar um número 20 maior de blocos ou até mesmo um número diferente de blocos para diferentes níveis de intensidade.
Após a etapa 504, ocorre uma verificação durante a etapa 506 para determinar se permanecem conjuntos de parâmetros adicionais. Se permanecerem conjuntos adicionais, a e25 xecução do programa deriva para a etapa 502 e aquelas após a mesma. Caso contrário, a execução do programa termina durante a etapa 508.
O processo descrito com relação à Figura 5 para
criar um grupo de blocos de granulação de filme preestabelecidos permanece completamente desacoplado da combinação de granulação de filme que ocorre no decodificador 10 como descrito na Figura 3. Apesar da vantagem computacional de ante5 cipar a geração de granulação de filme, o método de simulação de granulação de filme da Figura 4 incorre na inconveniência de permanecer desconhecendo se as imagens de entrada farão uso de todos os blocos armazenados no grupo.
A Figura 6 ilustra uma modalidade alternativa de um método de simulação de granulação de filme, de acordo com os presentes princípios, que faz uso das características de imagens de entrada. Como será mais bem-entendido a seguir, o método de granulação de filme da Figura 6 não cria um grupo de blocos de granulação de filme, a priori, para todos os possíveis níveis de intensidade presentes na mensagem SEI
17. Em vez disso, o método da Figura 6 é submetido à criação de um conjunto limitado de blocos de granulação de filme e é submetido à atualização do grupo de blocos dependendo das características de imagem de entrada.
O método da Figura 6 começa mediante, primeiramente, realização de inicialização durante etapa 600 para reajustar todas as variáveis do sistema. A etapa 602 vem após a etapa 600 durante a qual ocorre a seleção de um bloco de N x M pixels a partir da imagem de entrada 13. Posteriormente, a média de pelo menos um parâmetro de imagem (por exemplo, a média da intensidade de imagem) do bloco de imagem previamente selecionado é computada durante etapa 604. Durante etapa 606 ocorre uma verificação no sentido da disponibilida12
de de um bloco de granulação de filme cuja intensidade média combina mais estreitamente com a intensidade média do bloco de imagem selecionado. Se não existir tal bloco, então a execução do programa deriva para a etapa 608, um conjunto de parâmetros é selecionado a partir da mensagem SEI 17. A seguir, um bloco de granulação de filme N x M é gerado a partir dos parâmetros selecionados durante etapa 610. O bloco gerado durante etapa 610 entra agora no grupo de blocos 408 de granulação de filme pré-computado. A etapa 612 vem após a etapa 610. A etapa 612 também vem após a etapa 606 mediante uma determinação de que o bloco de granulação de filme no grupo tem uma intensidade média combinando mais estreitamente com aquela do bloco de imagem selecionado. Durante etapa 612, a seleção do bloco de granulação de filme combinando mais estreitamente ocorre a partir do grupo 408 de blocos de granulação de filme. A seguir, o bloco selecionado é submetido, tipicamente, a uma transformação durante etapa 614 para composição em mosaico com os blocos previamente selecionados para produzir a imagem 19 de granulação de filme. Dessa forma, o bloco de transformação é combinado com a imagem de granulação de filme. Uma determinação ocorre durante a etapa 616 no sentido de se o bloco selecionado durante etapa 602 constitui o último bloco. Caso contrário, a execução do programa deriva para a etapa 602. Caso contrário, a execução do programa termina durante a etapa 618.
método descrito acima pode avaliar se os blocos não estão disponíveis não somente quando o grupo 408 está vazio, mas também se os blocos existentes tiverem sido usa13
dos recentemente para combinação. Outros critérios para gerenciar a criação de grupo e atualizar o processo também poderíam ser considerados. 0 método da Figura 6 poderia criar progressivamente e/ou atualizar o grupo 408 de blocos de 5 granulação de filme preestabelecidos dependendo das características das imagens de entrada. Por exemplo, o grupo 408 poderia ser organizado para arranjar um número maior de blocos dentro dos níveis de intensidade mais eficazes para evitar a criação de padrões visuais. De acordo com essa estra10 tégia, a distribuição de blocos de granulação de filme no grupo 408 poderia progressivamente combinar variações nas características de imagem relacionadas a escurecimento ou clareamento.
anteriormente mencionado descreve uma técnica para simular granulação de filme em uma imagem.