BRPI0706282A2 - interpolação bayesiana utilizando uma imagem de duas cores - Google Patents

interpolação bayesiana utilizando uma imagem de duas cores Download PDF

Info

Publication number
BRPI0706282A2
BRPI0706282A2 BRPI0706282-6A BRPI0706282A BRPI0706282A2 BR PI0706282 A2 BRPI0706282 A2 BR PI0706282A2 BR PI0706282 A BRPI0706282 A BR PI0706282A BR PI0706282 A2 BRPI0706282 A2 BR PI0706282A2
Authority
BR
Brazil
Prior art keywords
pixel
color
image
colors
value
Prior art date
Application number
BRPI0706282-6A
Other languages
English (en)
Inventor
Eric P Bennett
Matthew T Uyttendaele
Charles L Zitnick
Sing Bing Kang
Richard S Szeliski
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0706282A2 publication Critical patent/BRPI0706282A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/58Edge or detail enhancement; Noise or error suppression, e.g. colour misregistration correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • H04N23/12Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths with one sensor only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/843Demosaicing, e.g. interpolating colour pixel values
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • H04N25/13Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
    • H04N25/134Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on three different wavelength filter elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Color Television Image Signal Generators (AREA)
  • Image Processing (AREA)
  • Processing Of Color Television Signals (AREA)

Abstract

INTERPOLAçAO BAYESIANA UTILIZANDO UMA IMAGEM DE DUAS CORES. Um interpolador Bayesiano de imagem de duas cores e método para o processamento de imagem digital colorida a fim de interpolar uma imagem de tal modo a reduzir os artefatos de imagem. O método e sistema vem a ser um melhoramen to sobre as e um aperfeiçoamento às técnicas de interpolação anteriores. Uma passagem de interpolação preliminar é realizada sobre a imagem de modo a atribuir à cada pixel um valor de triplas de cores RGB totalmente especificado. O valor de cor final do pixel na imagem processada se limita a ser uma combinação linear de duas cores. Os valores de triplas de cores RGB totalmente especificados para cada pixel em uma imagem usada para encontrar duas cores favorecidas representadas nos agrupamentos. A quantidade de contribuição a partir destas duas cores favorecidas sobre o valor de cor finalé, então, determinada. O método e sistema pode também processar imagens múltiplas de modo a melhorar os resultados da interpolação. Ao se usar imagens múltiplas, a amostragem pode ser realizada em uma resolução mais fina, conhecida como uma super-resolução.

Description

"INTERPOLAÇÃO BAYESIANA UTILIZANDO UMA IMAGEM DEDUAS CORES"
FUNDAMENTOS DA INVENÇÃO
As câmeras digitais continuam a crescer em popula-ridade e qualidade à medida que o custo de tais câmeras con-tinua a diminuir. A maioria das câmeras digitais continua ausar um único sensor de imagem para capturar as informaçõesde cor para cada pixel em uma imagem colorida. 0 sensor deimagem, que é tipicamente um dispositivo de carga acoplada(CCD) ou um semicondutor de óxido metálico complementar(CMOS), faz parte de um conjunto (array) de sensores quejuntos representam os pixéis de uma imagem colorida.
Um sensor de imagem só pode gerar informações so-bre uma única cor em um determinado pixel. Uma imagem colo-rida, porém, é representada pela combinação de três imagensmonocromáticas distintas. A fim de exibir uma imagem colori-da, todos dentre os valores de cor vermelha, azul e verde(RGB) são necessários em cada pixel. A fim de obter as ou-tras duas cores em falta, uma técnica deve ser utilizada afim de estimar ou interpolar as cores ausentes nos pixéiscircundantes de uma imagem. A esta classe de técnicas de pa-ra estimar ou interpolar se chama técnicas de "interpolação".
O termo "interpolação" é derivado do fato de umconjunto de filtros de cor (CFA) ser utilizado na frente dossensores de imagem, com o conjunto CFA sendo disposto em umpadrão de mosaico. Este padrão de mosaico tem apenas um va-lor de cor para cada um dos pixéis na imagem. A fim de obteruma imagem com cores totais (full-color), o padrão de mosai-co deve ser "interpolado". Sendo assim, a interpolação é umatécnica para se interpolar de volta a imagem capturada comum conjunto CFA de padrões de mosaico, de modo que um valorde cores RGB totais possa ser associado a cada pixel.
Mais especificamente, uma câmera digital de sensorúnico captura uma imagem usando um conjunto de sensores deimagem precedido na trajetória ótica por um conjunto CFA. Aum conjunto CFA extremamente popular e de mosaico comum sechama o padrão de mosaico de Bayer. Para cada conjunto depixéis 2x2, dois pixéis diagonalmente opostos têm filtrosverdes, e os outros dois pixéis têm filtros vermelho e azul.
Uma vez que a cor verde (G) carrega a maior parte das infor-mações de luminância para os seres humanos, a sua taxa deamostragem é duas vezes a da cor vermelha (R) e da cor azul (B).
Existem muitos tipos de técnicas de interpolaçãoatualmente disponíveis, tais como a interpolação bilinear, afiltragem mediana, o conjunto CFA de vetor, a modelagem ba-seada em gradientes, e a modelagem estatística. No entanto,cada uma destas técnicas de interpolação atuais produz arte-fatos visuais e quantitativamente mensuráveis. Estes artefa-tos incluem os artefatos de graduação gráfica ou "zippe-ring", nos quais um pixel sim e outro não, ao longo de umaborda, se alternam e são considerados na borda e fora daborda, e a aberração de cor, quando amarelos, púrpuras, ecianos aparecem ao longo de ou sobre bordas nítidas.
SUMÁRIO DA INVENÇÃOO presente sumário é provido de modo a introduziruma seleção de conceitos de uma forma simplificada e que seencontram também descritos mais adiante, na Descrição Deta-lhada. Este sumário não se destina a identificar as princi-pais características ou as características essenciais da ma-téria reivindicada, nem se destina a ser usado no sentido delimitar o âmbito da matéria reivindicada.
O método e sistema de interpolação Bayesiana deuma imagem de duas cores apresentado neste documento incluio processamento de um imagem digital no sentido de interpo-lar a imagem de tal modo a reduzir os artefatos de imagem. Ométodo e sistema de interpolação Bayesiana de uma imagem deduas cores emprega um modelo de imagem que modela as corespor toda uma borda como uma combinação linear das cores emcada lado. Isso diminui a possibilidade de se induzir umaaberração de cor. Além disso, o modelo estatístico utilizadopelo método e sistema de interpolação Bayesiana de uma ima-gem de duas cores não se baseia em uma grade, permitindo,assim, facilmente, extensões tanto para a interpolação demúltiplas imagens para um processamento de vídeo como tambémpara uma amostragem de produção não interativa de uma super-resolução. Ao se restringir a imagem produzida a um modelolinear, o ruído visível em áreas aplainadas é também reduzi-do, preservando, ainda, bordas nítidas.
O método e sistema de interpolação Bayesiana deuma imagem de duas cores representa um aperfeiçoamento comrelação às técnicas de interpolação existentes. O método esistema desempenha uma passagem de interpolação preliminarsobre uma imagem de modo a atribuir a cada pixel da imagemum valor de cor tripla RGB totalmente especificado. Os re-sultados desta passagem preliminar são em seguida melhoradospelo método e sistema de interpolação Bayesiana de uma ima-gem de duas cores. A idéia geral é que, dentro de uma peque-na janela ou região de processamento (como, por exemplo, um"patch" de pixel 5x5) que se encontra centralizada em umpixel que é processado, supõe-se que haja apenas duas coresdentro daquela região de processamento. A suposição de ape-nas duas cores resulta na eliminação virtual de cores alea-tórias no resultado final. A cor do pixel fica, então, res-trita a uma combinação linear dessas duas cores. Isto dimi-nui as cores espúrias que causam os artefatos de cor.
O método de interpolação Bayesiana de uma imagemde duas cores inclui a obtenção de um valor de cor triplaRGB totalmente especificado para cada pixel em uma imagem e,em seguida, o uso das triplas de cores RGB para determinarum valor de cor final para cada pixel. 0 valor de cor finalé uma combinação de duas cores valor e só tem a contribuiçãode duas cores. As duas cores são encontradas em por meio doagrupamento das triplas de cores RGB totalmente especifica-das em dois agrupamentos, considerando o mínimo de cada a-grupamento, e chamando o mínimo de cada agrupamento de duascores favorecidas.
Quando as duas cores favorecidas são encontradas,é necessário determinar o quanto de contribuição cada coroferece para o valor de cor final. Isto é obtido por meio dacomputação de um valor misturado fracional para cada pixelutilizando as amostras de uma região de processamento obti-das a partir de um filtro de cor Bayer. Em seguida, o valormisturado fracional máximo é encontrado ao se descobrir aprobabilidade máxima do valor misturado fracional dado aoconjunto de amostras. 0 valor de cor final é computado apartir do valor misturado fracional máximo e das duas coresfavorecidas.
0 método e sistema de interpolação Bayesiana deuma imagem de duas cores pode também processar imagens múl-tiplas a fim de melhorar os resultados da interpolação. Asimagens múltiplas são primeiramente registradas umas às ou-tras para que as mesmas fiquem alinhadas. Uma imagem de re-ferência é selecionada, e as outras imagens são reconstruí-das com relação à imagem de referência. O processamento ésemelhante ao caso de uma imagem única, exceto pelo fato deser utilizada uma técnica a fim de compensar o alinhamentoimperfeito das imagens. A técnica de compensação utiliza umfator de escala a fim de aumentar a variância da distribui-ção Gaussiana quando a soma das diferenças quadradas é gran-de. Este fator de escala varia com base na qualidade do al-goritmo de alinhamento.
Ao se usar imagens múltiplas, o método e sistemade interpolação Bayesiana de uma imagem de duas cores tambémpode amostrar em uma resolução mais fina, o que é conhecidocomo super-resolução. Quando em super-resolução, o agrupa-mento estatístico e os tamanhos da vizinhança local podemser ligeiramente reduzidos a fim de capturar os detalhes fi-nos. Fora isso, o sistema funciona do mesmo modo como o fezno caso da interpolação de múltiplas imagens.
Deve-se notar que modalidades alternativas sãopossíveis, e que as etapas e os elementos aqui apresentadospodem ser alterados, acrescentados ou eliminados, dependendoda modalidade em particular. Estas modalidades alternativasincluem etapas alternativas e elementos alternativos que po-dem ser utilizados, e as mudanças estruturais que podem serfeitas, sem se afastar do âmbito de aplicação da presenteinvenção.
BREVE DESCRIÇÃO DOS DESENHOS
Com referência a seguir aos desenhos nos quais nú-meros de referência similares representam partes correspon-dentes em sua totalidade:
A Figura 1 é um diagrama em blocos ilustrando umaprimeira implementação exemplar do método e sistema de in-terpolação Bayesiana de uma imagem de duas cores aqui apre-sentado.
A Figura 2 é um diagrama em blocos ilustrando umasegunda implementação exemplar do método e sistema de inter-polação Bayesiana de uma imagem de duas cores aqui apresen-tado.
A Figura 3 é um fluxograma geral ilustrando o fun-cionamento geral do interpolador Bayesiano de uma imagem deduas cores mostrado nas Figuras 1 e 2.
A Figura 4 é um fluxograma detalhado ilustrando osdemais detalhes de funcionamento do método de interpolaçãoBayesiana de uma imagem de duas cores mostrado na Figura 3.
A Figura 5 é um fluxograma ilustrando o processode computação de duas cores favorecidas.
A Figura 6 é um fluxograma ilustrando os detalhesdo processo de computação do valor de cor final.
A Figura 7 é um diagrama em blocos ilustrando osdetalhes do interpolador Bayesiano de uma imagem de duas co-res mostrado nas Figuras 1 e 2.
A Figura 8 ilustra um exemplo de um ambiente desistema computacional adequado no qual o método e sistema deinterpolação Bayesiana de uma imagem de duas cores pode seraplicado.
DESCRIÇÃO DETALHADA DA INVENÇÃO
Na descrição a seguir do método e sistema de in-terpolação Bayesiana de uma imagem de duas cores, faz-se re-ferência aos desenhos em anexo, que fazem parte da mesma, ena qual é mostrado a titulo de ilustração um exemplo especi-fico mediante o qual o método e sistema de interpolação Ba-yesiana de uma imagem de duas cores pode ser praticado. De-ve-se entender que outras modalidades podem ser utilizadas emudanças estruturais podem ser feitas sem se afastar do âm-bito de aplicação da matéria reivindicada.
I. Visão Geral
As Figuras 1 e 2 são diagramas em blocos ilustran-do duas implementações exemplares do método e sistema de in-terpolação Bayesiana de uma imagem de duas cores aqui apre-sentadas. Deve-se notar que as Figuras 1 e 2 são apenas duasdentre as várias maneiras nas quais o método e sistema deinterpolação Bayesiana de uma imagem de duas cores pode serimplementado e usado.Com referência à Figura 1, na primeira implementa-ção exemplar, o interpolador Bayesiano de uma imagem de duascores 200 reside em um sistema de câmera digital 210. Em ge-ral, o interpolador Bayesiano de uma imagem de duas cores200 prevê um aperfeiçoamento à imagem colorida (não mostra-da) após uma passagem de interpolação preliminar feita usan-do-se um interpolador de passagem preliminar 220. Mais espe-cificamente, conforme mostrado na Figura 1, o interpoladorBayesiano de uma imagem de duas cores 200 faz parte do sis-tema de câmera digital 210 que inclui um conjunto de senso-res de imagem 225. O conjunto 225 é composto de uma plurali-dade de sensores de imagem, onde cada sensor de imagem é ca-paz de determinar a existência de um único valor de cor.
0 conjunto de sensores de imagem 225 inclui umsubstrato de sensor 230, conjunto de filtros de cor (CFA)240, 250 e lentes 250. Deve-se notar que a lente é normal-mente disposta sobre o conjunto CFA 240, que por sua vez édisposto sobre o substrato 230, conforme indicado nas Figu-ras 1 e 2 pela linha tracejada. A luz a partir da imagem aser capturada (não mostrada) entra no sistema de câmera di-gital 210 (conforme indicado pelas setas 255). 0 objetivo dalente 250 é concentrar a luz recebida 255 sobre o conjuntode sensores de imagem 225. Cada sensor do conjunto de senso-res de imagem 225 representa um pixel. 0 conjunto CFA 240muda a resposta de cor de cada pixel. O substrato de sensor230 capta a luz recebida de cor especifica (conforme deter-minado pelo conjunto CFA 240) e gera um sinal elétrico. Des-ta forma, o conjunto de sensores de imagem 225 amostra a luzrecebida 255 de uma imagem com os sensores de vermelho, ver-de e azul dispostos no conjunto de sensores de imagem 225.
Cada pixel do conjunto de sensores de imagem 225 éo resultado de um sensor de vermelho, verde ou azul. Destemodo, a saida de sensor é um sinal elétrico de cada sensorque corresponde a um único valor de cor para cada pixel doconjunto de sensores de imagem 225. 0 resultado vem a ser osdados brutos de pixel padronizados em mosaico 260. Conformemencionado acima, a fim de exibir a imagem de cores totais,as informações das cores vermelha, verde e azul devem serobtidas em cada pixel. Isto é obtido por meio da interpola-ção dos valores de cor em falta nos dados de pixel padroni-zados em mosaico 260.
Os dados brutos de pixel padronizados em mosaico260 são enviados para um primeiro dispositivo computacional270 localizado a bordo do sistema de câmera digital 210. En-contram-se localizados no primeiro dispositivo computacional270 o interpolador de passagem preliminar 220 e interpoladorBayesiano de imagem de duas cores 200. 0 interpolador depassagem preliminar 220 é usado para interpolar uma estima-tiva dos valores de cor em falta. 0 resultado do interpola-dor de passagem preliminar 220 vem a ser os dados de pixel280 contendo valores de cores RGB totais para cada pixel naimagem colorida captada pelo sistema de câmera digital 210.
O interpolador Bayesiano de imagem de duas cores 200 recebeos dados de pixel 280 e processa estes dados 280 conformedescrito em detalhes abaixo. Após processamento pelo inter-polador Bayesiano de imagem de duas cores 200, uma imagemdigital colorida com poucos artefatos de imagem 290 é obtida.
Com referência a seguir à Figura 2, na segunda im-plementação exemplar, o interpolador Bayesiano de imagem deduas cores 200 reside em um segundo dispositivo computacio-nal 295 que é diferente do sistema de câmera digital 210. Osdados brutos de pixel padronizado em mosaico 260 são envia-dos a partir da sistema de câmera digital 210 para o segundodispositivo computacional 295. Os dados de pixel 260 são ti-picamente enviados para o segundo dispositivo computacional295 através de uma conexão de interface 297, que pode seruma interface USB, uma interface IEEE 1394, uma interfaceBluetooth ou qualquer outra interface adequada para otransporte dos dados brutos de pixel 260 do sistema de câme-ra digital 210 para o segundo dispositivo computacional 295.
Tal como detalhado abaixo, o interpolador Bayesiano de ima-gem de duas cores utiliza o método de interpolação Bayesianade uma imagem de duas cores a fim de aperfeiçoar os dados depixel 260 e prover a imagem digital colorida aperfeiçoadacom poucos artefatos de imagem 290.
II. Visão Operacional
0 funcionamento do interpolador Bayesiano de ima-gem de duas cores 200 e do método utilizado no mesmo mostra-do nas Figuras 1 e 2 será apresentado a seguir. A Figura 3 éum fluxograma geral ilustrando o funcionamento geral do in-terpolador Bayesiano de imagem de duas cores 200. Em geral,o método de interpolação Bayesiana de uma imagem de duas co-res entra os valores de pixel de cor de uma imagem, processacada um dos pixéis, e emite uma imagem processada com poucosartefatos de imagem.
Mais especificamente, conforme mostrado na Figura3, o método de interpolação Bayesiana de uma imagem de duascores começa pela obtenção de um valor de cor tripla total-mente especificado vermelha (R), verde (G) e azul (B) paracada pixel em uma imagem digital colorida (caixa 300). Atripla de cores RGB totalmente especificada significa que osvalores de vermelho, verde e azul estão disponíveis para opixel. Tipicamente, o método de interpolação Bayesiana deuma imagem de duas cores obtém estes valores de cor triplaRGB totalmente especificados por meio de uma passagem de in-terpolação preliminar sobre a imagem digital colorida. O mé-todo de interpolação Bayesiana de uma imagem de duas cores,neste caso, aperfeiçoa os resultados da passagem de interpo-lação preliminar.
Em seguida, o método de interpolação Bayesiana deuma imagem de duas cores determina um valor de cor final pa-ra cada pixel da imagem digital colorida (caixa 310). O va-lor de cor final é uma combinação ou mistura de duas cores,onde as duas cores são obtidas por meio do uso de pelo menosalguns dos valores de cor tripla RGB totalmente especifica-dos. Em outras palavras, ainda que possa haver várias corescontidas nos valores de cor tripla RGB totalmente especifi-cados, apenas uma combinação de duas desses valores de cor éutilizada para determinar um valor de cor final para o pixelque está sendo processado. O resultado é um valor de cor fi-nal encontrado para cada um dos pixéis na imagem digital co-lorida (caixa 320).
III. Detalhes Operacionais e Exemplo de Funcionamento
Os detalhes do método de interpolação Bayesiana deuma imagem de duas cores serão apresentados a seguir. A Fi-gura 4 é um fluxograma detalhado ilustrando os detalhes ex-tras do funcionamento do método de interpolação Bayesiana deuma imagem de duas cores mostrado na Figura 3. Em particu-lar, uma passagem de interpolação preliminar é realizada demodo a computar as triplas de RGB totalmente especificadaspara cada pixel da imagem digital colorida (caixa 400). Ini-cialmente, há um padrão Bayer para a imagem, no qual existeapenas um valor de cor R, G, ou B para cada pixel da imagem.
A passagem de interpolação preliminar usa uma técnica de in-terpolação para a obtenção de um real valor de cor total(RGB) em cada um dos pixéis em uma região de processamentocentralizada em um pixel que é processado. Em uma modalida-de, a passagem de interpolação preliminar é realizada utili-zando uma técnica de interpolação bilinear. Em modalidadesalternativas, outros tipos de técnicas de interpolação depassagem preliminar podem ser utilizados, tais como as téc-nicas de filtragem mediana, as técnicas de conjunto CFA ve-torial, as técnicas baseadas em gradiente, e as técnicas demodelagem estatística. Ao se selecionar uma técnica de in-terpolação de passagem preliminar, no entanto, deve-se sali-entar que a técnica que propiciará a melhor contribuiçãotambém produzirá o melhor resultado pelo método de interpo-lação Bayesiana de uma imagem de duas cores.Em seguida, um pixel é selecionado para processa-mento e é definido como um pixel processado. Além disso, umaregião próxima ao pixel processado é definida como uma regi-ão de processamento (caixa 410). A região de processamento(ou "janela" ou "patch") é tipicamente um patch de pixel 5 χ5, embora outros tamanhos sejam possíveis. Em uma modalida-de, o tamanho do patch é um número ímpar, de tal modo que opixel processado fique centralizado na região de processa-mento. A título de exemplo, em uma região de processamento 5χ 5, o pixel processado seria o pixel central do patch 5 χ 5.
As duas cores favorecidas são então computadas pa-ra o pixel processado (caixa 420). Isto é obtido utilizandoas triplas de cores RGB totalmente especificadas de cada pi-xel na região de processamento. Conforme explicado em deta-lhe abaixo, as triplas de cores RGB totalmente especificadaspodem conter várias cores, mas essas cores são agrupadas emapenas duas cores favorecidas. Um valor de cor final para opixel é computado utilizando as duas cores favorecidas e astriplas de cores RGB totalmente especificadas (caixa 430). 0processo de seleção de um pixel, a definição de uma regiãode processamento, a computação das duas cores favorecidas, ea computação de um valor de cor final se repetem para o res-tante dos pixéis na imagem digital colorida (caixa 440) . Oresultado do método de interpolação Bayesiana de uma imagemde duas cores é uma imagem digital colorida aperfeiçoada compoucos artefatos de imagem (caixa 450).
A Figura 5 é um fluxograma que ilustra o processode computação de duas cores favorecidas. Em outras palavras,a Figura 5 ilustra a forma como as duas cores favorecidas éencontrada dentre os valores de cor dos pixéis nas regiõesde processamento. 0 processo começa por meio da realizaçãode um agrupamento inicial das triplas de cores RGB totalmen-te especifiçadas para cada pixel na região de processamento(caixa 500). Partindo do principio que a região de processa-mento é de 5 χ 5 pixéis, o objetivo será encontrar as duascores favorecidas dentre os valores de 25 cores, na regiãode processamento 5 χ 5, e o grupo destes valores de 25 coresem 2 cores favorecidas. Isto pode ser feito utilizando ge-ralmente qualquer técnica de agrupamento. Em uma modalidade,uma técnica de K-médias é utilizada por causa da sua efici-ência. O "K" na técnica de K-médias refere-se ao número detipos de agrupamento, quando, neste caso, k = 2. A técnicade agrupamento de K-médias representa um ponto de equilíbrioentre precisão e velocidade. A técnica de agrupamento de K-médias é bem conhecida por aqueles com habilidade na arte, enão será apresentada em mais detalhes. Em modalidades alter-nativas, uma técnica de maximização de expectativa (EM) ouuma técnica de deslocamento mínimo é utilizada.
0 único problema, porém, com a técnica de média K,é que um fator discrepante poderá afetar negativamente osresultados. Um fator discrepante será um ponto de dado quese localiza longe dos demais dados. A distribuição estatís-tica espera que pontos de dados recaiam em uma determinadafaixa, e aqueles que não são chamados de fator discrepante.
A fim de corrigir os fatores discrepantes, o processo decomputação de duas cores favorecidas inclui uma técnica derejeição de fator discrepante. A técnica de rejeição fatordiscrepante é usada para minimizar a influência de fatoresdiscrepantes sobre as duas cores favorecidas (caixa 510).
As duas cores favorecidas em seguida são computa-das por meio da atualização do agrupamento de triplas de co-res RGB totalmente especificadas para cada pixel na regiãode processamento através do uso dos resultados de rejeiçãode fatores discrepantes (caixa 520). O processamento se re-pete então para os demais pixéis da imagem digital colorida(caixa 530). Duas cores favorecidas para cada pixel são en-tão obtidas para cada pixel da imagem.
A Figura 6 é um fluxograma ilustrando os detalhesdo processo de computação do valor de cor final. O processose inicia por meio da definição de um valor misturado fra-cional para o pixel processado que especifica a contribuiçãode cada uma dentre as duas cores favorecidas para o valor decor final (caixa 600). Sendo assim, o valor misturado fra-cional determina quanto de contribuição o valor de cor finaldo pixel recebe de cada uma dentre as duas cores favoreci-das .
Um valor misturado fracional máximo é em seguidadeterminado para o ' pixel pr.ocessado (caixa 610) . O valormisturado fracional máximo é definido como uma mistura oucombinação de duas cores favorecidas, o que maximiza a pos-sibilidade de o valor misturado fracional utilizar cada umadas triplas de cores RGB totalmente especificadas na regiãode processamento. Isto envolve possivelmente a procura demais de um conjunto de cores, e, em seguida, a tentativa detodas essas cores para ver qual oferece o valor máximo. Porexemplo, imagine a tentativa de três cores, J, K, L, e atentativa de todas as combinações de J, K, L, e veja qualdelas oferece a mais alta probabilidade. Deste modo, de to-das as cores, as duas cores favorecidas são as duas melhorescores que explicam o pixel processado. As "melhores" duascores significam as duas cores que maximizam o argumento domáximo (ou o "arg max") da equação (3) abaixo indicada. 0arg max é o valor de um dado argumento para o qual o valorde uma determinada expressão atinge o seu valor máximo.
0 valor de cor final é, em seguida, computado parao pixel processado utilizando as duas cores favorecidas e ovalor misturado fracional máximo (caixa 620). Este valor decor final é apresentado na equação (1) indicada abaixo. Oprocessamento acima se repete para o restante dos pixéis naimagem digital colorida, a fim de obter uma valor de cor fi-nal para cada um dos pixéis (caixa 630).
Para entender mais completamente o método e siste-ma de interpolação Bayesiana de uma imagem de duas cores a-qui apresentado, os detalhes operacionais de um exemplo fun-cional são apresentados. Deve-se notar que este exemplo fun-cional é apenas uma maneira pela qual o Método e sistema deinterpolação Bayesiana de uma imagem de duas cores pode serimplementado.
A hipótese central de processamento com o método esistema de interpolação Bayesiana de uma imagem de duas co-res é que, no máximo, existem duas cores representativasdentro daquela vizinhança. 0 valor de cor final de cada pi-xel dentro dessa vizinhança é uma das cores representativasou é uma combinação de ambas. Neste exemplo funcional, acombinação das cores representativas foi uma combinação Ii-near. Embora esta hipótese seja violada nas áreas em quemais de duas cores diferentes se encontram, tais ocorrênciassão relativamente raras. Sendo assim, o método e sistema deinterpolação Bayesiana de uma imagem de duas cores é muitorobusto.
Para descobrir o modelo de duas cores subjacentesem cada pixel, a vizinhança que circunda cada pixel é agru-pado em duas dessas cores. A imagem de Bayer provê apenasuma única amostra de canal, deixando dois valores de cortripla RGB desconhecidos e um coeficiente de mistura desco-nhecido para especificar o modelo. Neste exemplo funcional,foi utilizada uma técnica de média K ponderado na qual o pe-so é a distância euclidiana inversa de cada amostra para ocentro do núcleo. Note-se que os tamanhos de agrupamento nãosão equilibrados, em função do que um único detalhe de pixelem uma área de outra forma aplainada poderá ser preservado.
Além disso, o agrupamento podem ser feito em outros espaçosde cor, tais como no ίαβ ou no XYZ, mas o processamento nes-tes espaços faz pouca diferença na exatidão dos agrupamentos.
0 tamanho da vizinhança das amostras a agrupar éuma função de quão grandes os detalhes coloridos aparecem naimagem de origem. Neste exemplo funcional, foi observado queum raio de dois pixéis em torno do centro do núcleo funcionabem. Isto forneceu um número suficiente de amostras de cadaum dos canais de cor de Bayer.
Uma vez ser possível a existência de mais de duascores em uma área de imagem local ou a presença de um ruídosignificante, o método e sistema de interpolação Bayesianade uma imagem de duas cores também utiliza a técnica de re-jeição de fator discrepante. Ao se usar a média e a variân-cia dos agrupamentos, as amostras que se encontram fora deum desvio padrão único de sua média de agrupamento mais pró-ximo foram rejeitadas. A técnica de média K em seguida serepete a fim de obter uma média de agrupamentos mais limpos.Isto provê uma reprodução melhor quando os valores de cormuda rapidamente para fora do centro de núcleo.
0 fator mais importante na qualidade do agrupamen-to é a escolha de uma técnica de interpolação de passagempreliminar usada para uma interpolação de "bootstrapping" afim de tornar o agrupamento tratável. Embora muitos tipos detécnicas de interpolação de passagem preliminar possam serusados (conforme listado acima), há qualidades que melhoramo seu desempenho. A primeira é a preservação ou a acentuaçãodos recursos de alta freqüência. Técnicas, tais como a dainterpolação linear e a da interpolação mediana, têm a ten-dência de passar baixo o filtro, o que deveria ser evitado.
De maneira alternativa, os algoritmos que preservam altasfreqüências são suscetíveis à geração de aberrações de bordae graduações gráficas. Neste exemplo funcional, uma técnicade interpolação linear de alta qualidade (HQLI) é usada nainterpolação de passagem preliminar, uma vez que a mesmapreserva altas freqüências e não gera muitos artefatos deaberração.
Interpolação de Duas Cores
0 modelo de duas cores provê dois priors de coresRGB, JeK, para cada pixel χ na imagem. A cor C do pixel χé presumidamente uma combinação linear destas duas cores, emque:
<formula>formula see original document page 20</formula>
A equação (1) é uma equação de mistura, e computao valor de cor final C para o pixel x.
Dentro de uma vizinhança do pixel χ, o sensor deBayer dá um conjunto de amostras si 6 S. 0 índice do canalde cores RGB especificado pela amostra si é indicado por ti,e α é o valor misturado fracional.
Quando Jti especifica o canal de cor tith para acor J, e similarmente para K e C, neste caso o valor desco-nhecido do valor misturado fracional α pode ser computadodiretamente da amostra de Bayer sx no local χ (no pixel cen-tral) em que:
<formula>formula see original document page 20</formula>
No entanto, quando a diferença entre Jtx e Ktx épequena, a estimativa de a será imprecisa devido à discreti-zação e ao ruído da imagem. Observa-se que s é um elementode S para Si., no qual, para uma região de processamento 5 χ5, i varia de 1 a 25, de tal modo que haja 25 Sj.. Os Si sãoapenas para um único canal (ou cor) , e a cor é especificadapelos ti (ou R, ou G, ou B).
Uma estimativa mais robusta de α usando o conjuntotodo de amostras S é desejada. Em outras palavras, é deseja-do se achar o valor mais provável (ou o valor misturado fra-cional máximo) α de um dado conjunto de amostras S e priorsde cor JeK, em que:
<formula>formula see original document page 21</formula>
Na equação (3) ,JeK são as duas cores favoreci-das. No espaço de cor, pode-se imaginar que uma linha é de-senhada de J para K, e que o valor misturado fracional α va-ria de 0 a 1 ou mais. Isto significa que oi=OemK, e α = 1em J. Dito de outra forma, a equação (3) acha um arg max deoí, o que maximiza a probabilidade de a, dado S, em que S é oconjunto de todas as amostras de cor que se encontram nasregiões de processamento (um patch de 5 χ 5, neste exemplofuncional). Deve-se notar que S é o único que contém amos-tras que são de fato amostradas, e não obtidas por meio deinterpolação.
Ao se usar o teorema de Bayes, e pressupondo que Je K são independentes de S e a, a equação (3) poderá ser re-feita de modo a produzir:<formula>formula see original document page 22</formula>
Com a suposição de que todos os si são independen-tes, temos:
<formula>formula see original document page 22</formula>
J, K e α especificam uma cor prevista, C* = (1 -a) J + aK para o pixel x. Supondo uma distribuição idêntica5 independente (i.i.d.) para o ruido de cor vizinha, a relaçãoentre C*tt e Si pode ser modelada usando uma distribuiçãonormal:
<formula>formula see original document page 22</formula>
A equação (6) computa a probabilidade de se usaruma distribuição gaussiana. C* é a cor computada dado um oí.A distribuição entre pixéis vizinhos é altamente kurtótico,mas, para uma eficiência computacional, supõe-se uma distri-buição gaussiana. A variância oíj.2 depende de dois fatores:(1) o ruido de imagem global por canal σΝι, e (2) a distân-cia do pixel entre χ e Si. Supõe-se que as cores de pixelsejam localmente similares, e menos similares mas afastadas.Deste modo, a variância entre Si e Cti aumenta à medida que asua distância no espaço de imagem aumenta. Em uma modalida-de, a variância Oi é computada como:
<formula>formula see original document page 23</formula>
em que Ad é a distância de pixel entre χ e Si, e λé uma constante que, neste exemplar funcional, é empirica-mente definida em 6. Deste modo, a equação (7) determina quea variância aumente linearmente com a distância a partir dopixel central (o pixel processado), ou do pixel no centro daregião de processamento. Em modalidades alternativas, outrasfunções para aumentar monotonicamente a distância podem serusadas.
A largura da distribuição gaussiana, ou a variân-cia, o2, indica quanta influência uma amostra em particulartem sobre o resultado final. Uma outra maneira de se pensarsobre este aspecto é a certeza da amostra. Quando há incer-teza sobre uma amostra, a sua curva gaussiana terá uma gran-de largura (ou uma grande variância, o2) . Em contrapartida,quando há certeza sobre uma amostra, a sua curva gaussianaterá uma pequena largura (ou pequena variância, o2) .
A equação (7) é uma função que determina que a va-riância aumente com a distância a partir do pixel processado(ou central), em torno do qual a região de processamento fi-ca centralizada. Ou seja, os pixéis que ficam mais próximosdo pixel central são mais desejáveis e têm uma peso maior. Equanto maior a variância, menor a influência que o pixel oua amostra tem sobre o resultado final. Sendo assim, a vari-ância deve aumentar com a distância do pixel central, pormeio de uma determinada função. Embora uma função linear emforma de equação (7) seja usada neste exemplo funcional, ou-tros tipos de funções que determinem a variância de uma ma-neira similar poderão também ser usados.
Uma vez que o valor de Si é conhecido e se desejacomputar o valor de α, o que maximiza a equação (6), é útilredefinir a mesma como se segue:
<formula>formula see original document page 24</formula>
A equação (8) é uma distribuição gaussiana sobre occom um ai médio e uma variância σ2αι:
<formula>formula see original document page 24</formula>
É de fato desejado solucionar a, e, para isso, asequações são redefinidas de modo a se obter a equação (10) .Em particular, as equações (5) e (8) podem ser combinadas demodo a produzir:<formula>formula see original document page 25</formula>
0 valor ótimo de α em P(SiIaiJzK) é:
<formula>formula see original document page 25</formula>
Na prática, a contribuição dos componentes colori-dos é ignorada quando a diferença absoluta entre Jt± e Kti émenor que 2.0.
Ao solucionar as equações (10) e (11), os ai e osσi precisam ser encontrados, em que os o2i são as variânciasassociadas a cada uma das amostras. 0 valor misturado fra-cional ótimo, a*, é em seguida encontrado, que é o valor αótimo, a* em seguida é usada para computar o valor de corfinal. Uma pequena penalidade é imposta para um valor α quenão é 0 nem 1. Consequentemente, em uma modalidade, α tem umvalor de 0, enquanto, em uma modalidade alternativa, α temum valor de 1.
Em seguida, é feita uma determinação para que α(0, 1, ou α*) produza o valor mais alto para a equação (5).Em outras palavras, a equação (5) é avaliada com cada umdestes três α a fim de determinar que α oferece a respostamais elevada. Para a equação (10), os ai são computados u-sando a equação (9). Dada a amostra Si, a equação (9) compu-ta o valor de α. Dito de outra forma, α é o que a amostra Sidetermina o que Oii deveria ser. Na equação (10), um produtodos ai é usado. Quando uma curva gaussiana é multiplicada,uma outra curva gaussiana é obtida. O valor do pico da curvagaussiana, todas as curvas gaussianas de cada uma das 25 a-mostras multiplicadas juntas, é representado pelo Oii*, dadopela equação (11). Pode ser mostrado que a média do produtode todas as curvas gaussianas será a equação (11), que é umamédia ponderada.
(3), um prior deve ser definido em α. P(a). Dado que a maiorparte dos pixéis dentro de uma imagem só tem contribuição deuma única cor, α é polarizado de modo a apresentar um valorde 0 ou 1:
<formula>formula see original document page 26</formula>
em que η é sempre menor que 1 (η<1). 0 valor de ηdepende da quantidade de aplainamento desejada. Dada umagrande quantidade de ruido de imagem, η«1.
Uma vez que a função prior de α é plana com doisimpulsos, apenas o valor da equação (3) em três pontos: 0,-1, e α* precisa ser examinado. Qualquer que seja, o máximo éatribuído como o valor final ά para o pixel que é processa-do, com uma cor de pixel correspondente de (1 - á)J + áK.
0 erro quantitativo desta abordagem pode ser aindadiminuído ao forçar que o vermelho, o verde ou o azul em umpixel de saída seja o valor originalmente captado pelo sen-sor, ao mesmo tempo determinando que os outros dois canaissejam consistentes com ά. Uma vez que λ pesa a amostra cen-trai pesadamente, é improvável que estes dois valores sejammuito diferentes. Ainda, quando a amostragem de saída é fei-ta em uma grade diferente da grade de entrada, uma amostrade Bayer original não fica disponível em cada pixel.
Interpolação de Múltiplas Imagens
Ao se usar a solução bayesiana sem grade, a infor-mação de múltiplas imagens pode ser introduzida no modelosem significativamente alterar a metodologia. Estas imagensde suporte são consideradas similares, mas não exatamenteiguais, tais como as dos quadros de vídeo subseqüentes. Alémdisso, estas amostras de Bayer adicionais podem ser usadassem mudar os atributos das mesmas. Para se usar imagens desuporte, um mapeamento protetor por imagem deve ser computa-do de modo a registrar cada imagem para a primeira imagem.
0 método e sistema de interpolação Bayesiana deuma imagem de duas cores pode obter amostras a partir demúltiplas imagens, contanto que as mesmas estejam registra-das. 0 registro das imagens permite que múltiplas imagens deuma cena sejam alinhadas juntas de modo que as mesmas possamser usadas. No entanto, quando as imagens são alinhadas, asmesmas não podem ser orientadas iguais. 0 método e sistemade interpolação Bayesiana de uma imagem de duas cores sele-ciona uma imagem de referência e reconstrói as demais ima-gens com relação à imagem de referência. A região de proces-samento se torna, assim, circular, e as amostras são consi-deradas dentro um raio determinado do pixel processado (oucentral).
Em geral, melhores resultados são obtidos ao seusar mais imagens. No entanto, existe uma troca entre o tem-po de processamento e a qualidade. Em uma modalidade, o nú-mero de imagens usada é 3, de tal modo que o tempo de pro-cessamento seja muito curto e a qualidade, muito boa. Nasmodalidades alternativas, o número de imagens usadas podemser mais ou menos que três.
À medida que mais imagens são adicionadas, a vizi-nhança das amostras usadas pode ser diminuída e ainda assimmanter amostras suficientes para agrupar no J e no K. Sendoassim, a possibilidade de a mesma conter mais de duas coresrepresentativas é menor. Deste modo, quando cada amostra deR, G e B aparece próxima da amostra que é reconstruída, acombinação de interpolação vizinha mais próxima das amostrasde Bayer poderá ser usada. Δ noção de se usar um agrupamentoe uma reconstrução ponderada permanece igual a da única ima-gem entrada. Quando registrado, mesmo que o mesmo canal decor apareça no mesmo local de pixel, haverá ainda um benefí-cio, ou seja, uma redução de ruído.
Ao se incluir imagens de suporte, existe o riscode se introduzir dados ruins ou enganosos. 0 mapeamento pro-tetor global não considera todas as mudanças de cena (câmeramóvel, objetos que se movimentam, alterações nas condiçõesde iluminação, e aparência de objetos). Erros de registropodem ocorrer. A fim de reduzir tais erros, garante-se queapenas os dados das imagens de suporte e de referência lo-calmente similares são combinados. A similaridade é medidaem um espaço de cores RGB, usando-se uma técnica de Soma deDiferenças Absolutas (SAD) em uma janela local de 7 χ 7, in-dicada como G.
Múltiplas imagens são manipuladas por meio do a-juste da definição de σ± de modo a incluir o erro de corre-lação entre as imagens de referência e de suporte:
<formula>formula see original document page 29</formula>
0 termo (1 + TG) é a penalidade de incompatibili-dade, com T = 0.1 neste exemplo funcional. G é a soma dasdiferenças quadradas.
Quando as múltiplas imagens são alinhadas, o ali-nhamento não pode ser perfeito. Para compensar isto, é usadaa soma das diferenças quadradas. Ao invés de se usar a equa-ção (7), é usada a equação (13). A única diferença é o últi-mo termo, (1 + TG). 0 T é um fator de escala. Deste modo, oúltimo termo da equação (13), (1 + TG), determina que a va-riância da curva gaussiana seja aumentada quando a soma dasdiferenças quadradas é grande.
0 termo T é quanto a soma do valor das diferençasquadradas é ponderada. A mesma é determinada empiricamente.Em uma modalidade, T é igual a aproximadamente 0.1. Em moda-lidades alternativas, outros valore de T podem ser usados.
No entanto, é importante que T não seja ponderado muito al-to. Quando T é muito grande, as informações de outras ima-gens nunca então poderão ser usadas. Quando T é muito peque-no, neste caso as informações de outras imagens poderão serusadas, mesmo que as imagens não estejam apropriadamente a-linhadas. Deste modo, um equilíbrio deve ser encontrado. 0termo T varia com base na qualidade do algoritmo de alinha-mento.
Para implementar uma interpolação de múltiplas i-magens, tudo que se precisa é adicionar amostras de Bayerpróximas nas imagens de suporte a fim de definir S, e usar aequação de variância acima. Deve-se notar que as amostras emS são as amostras de sensor de Bayer, uma vez que o uso dasamostras originais evitará a necessidade de qualquer mudançade atributos.
Super-Resolução
Uma outra vantagem da abordagem sem grade, esta-tística do método e sistema de interpolação Bayesiana de umaimagem de duas cores é que qualquer grade de amostragem podeser usada para a reconstrução, como, por exemplo, uma gradede amostragem tendo uma resolução maior que a das imagensoriginais. Uma vez que as distâncias euclidianas de pontoflutuante são usadas para as medidas estatísticas, um valorcontínuo de α poderá ser gerado em qualquer lugar na imagem.
Devido ao alinhamento das amostras a partir de múltiplas i-magens, o valor de α poderá codificar bordas e nitidez entreos pixéis na grade original. Isto pode ser explorado de modoa manipular uma super-resolução dentro da estrutura do méto-do e sistema de interpolação Bayesiana de uma imagem de duascores.
Ao super-resolver, os tamanhos de agrupamento es-tatístico e de vizinhança local podem ser levemente encolhi-dos de modo a captar detalhes finos. De outra forma, o méto-do e sistema de interpolação Bayesiana de uma imagem de duascores opera de maneira similar tal como no caso de uma in-terpolação de múltiplas imagens.
IV. Visão Estrutural
A estrutura do interpolador Bayesiano de imagem deduas cores 200 será apresentada a seguir. A fim de entenderde uma forma mais completa a estrutura do interpolador Baye-siano de imagem de duas cores 200, serão apresentados os de-talhes de uma modalidade exemplar. Contudo, deve-se notarque esta modalidade exemplar é tão-somente uma dentre as di-versas maneiras nas quais o interpolador Bayesiano de imagemde duas cores 200 pode ser implementado e usado.
A Figura 7 é um diagrama em blocos ilustrando osdetalhes do interpolador Bayesiano de imagem de duas cores200 mostrado nas Figuras 1 e 2. De modo geral, o interpola-dor Bayesiano de imagem de duas cores 200 processa uma ima-gem digital colorida tendo os valores de cores RGB totalmen-te especificados para cada pixel, encontra um valor de corfinal para cada pixel como uma combinação de duas cores, eproduz a imagem digital colorida com artefatos reduzidos. Emtermos específicos, a entrada para o interpolador Bayesianode imagem de duas cores 200 é um dado de pixel contendo da-dos de cores RGB totalmente especificados para cada pixel naimagem digital colorida 280. Conforme explicado acima, estesdados são obtidos ao se fazer uma passagem de interpolaçãopreliminar sobre a imagem. Em uma modalidade, a passagem deinterpolação preliminar é feita usando uma técnica de inter-polação linear de alta qualidade. De maneira alternativa,outros tipos de técnicos de interpolação poderão ser usados,como, por exemplo, a interpolação bilinear.
O interpolador Bayesiano de imagem de duas cores200 inclui um seletor de pixel processamento 700, que sele-ciona um pixel a partir da imagem a ser processada. Eventu-almente, todos os pixéis na imagem são processados, mas oseletor de pixel processado 700 capta um pixel por vez noprocessamento. Um módulo de definição de região de processa-mento 710 define uma região de processamento (ou patch) emtorno do pixel processado. Tipicamente, o pixel processadofica no centro da região de processamento. Em uma modalida-de, a região de processamento é uma área de pixel de 5 χ 5.Em modalidades alternativas, regiões de processamento de ou-tros tamanhos (como, por exemplo, uma área de pixel de 3 χ 3ou uma área de pixel de 7 χ 7) poderão também ser usadas.
O interpolador Bayesiano de imagem de duas cores200 inclui ainda um módulo de agrupamento 720 que determinaas duas cores favorecidas usadas para definir um valor decor final para o pixel processado. 0 módulo de agrupamentousa uma técnica de agrupamento para agrupar os valores decores RGB a partir dos pixéis da região de processamento emdois agrupamentos. A média de cada um dos dois agrupamentosse torna as duas cores favorecidas. Em uma modalidade, umatécnica de agrupamento de K-médias com um estágio de rejei-ção de fator discrepante é usada no agrupamento. Em modali-dades alternativas, outros tipos de técnicas de agrupamentopodem ser usadas.O interpolador 200 inclui ainda um módulo de con-tribuição e combinação 730 que determina quanto de cada umadas duas cores favorecidas é usado no valor de cor final, ecombina as duas cores favorecidas de modo a obter o valor decor final. O módulo 730 encontra a contribuição de cada umadas duas cores favorecidas ao definir um valor misturadofracional máximo que maximiza a probabilidade de um valormisturado fracional dado um conjunto de amostras. 0 conjuntode amostras contém valores de cor amostrados a partir dospixéis da região de processamento. O módulo 730 em seguidacombina o valor misturado fracional máximo e as duas coresfavorecidas de modo a computar o valor de cor final para opixel processado. Em uma modalidade, as duas cores favoreci-das são linearmente combinadas. Em uma modalidade, as duascores favorecidas são combinadas de uma maneira não linear.O processamento pelo interpolador Bayesiano de imagem de du-as cores 200 se repete para cada pixel na imagem. 0 resulta-do é uma imagem digital colorida aperfeiçoada com poucos ar-tefatos de imagem 290.
V. Ambiente Operacional Exemplar
O interpolador Bayesiano de imagem de duas cores200 e o método usado no mesmo são concebidos de modo a ope-rar em um ambiente computacional. A apresentação a seguirtem o propósito de prover uma descrição breve e geral de umambiente computacional adequado no qual o interpolador Baye-siano de imagem de duas cores e método poderão ser implemen-tados.
A Figura ilustra um exemplo de um sistema computa-cional adequado no qual o interpolador Bayesiano de imagemde duas cores e método podem ser implementados. O ambientede sistema computacional 800 é tão-somente um exemplo de umambiente computacional adequado e não tem a intenção de su-gerir nenhuma limitação ao âmbito de aplicação ou funciona-lidade da presente invenção. Tampouco deve o ambiente compu-tacional 800 ser interpretado como tendo qualquer dependên-cia ou nivel de exigência com relação a um ou combinação decomponentes ilustrados no ambiente operacional exemplar.
0 interpolador Bayesiano de imagem de duas cores emétodo são operacionais com inúmeros outros ambientes ouconfigurações de sistemas computacionais de uso geral ou deuso especial. Exemplos de sistemas computacionais, ambien-tes, e/ou configurações bem conhecidos que podem ser adequa-dos para uso com o sistema e método de ampliação de texturaindireta incluem, sem, no entanto, se limitar a, computado-res pessoais, computadores servidores, computador portátil,laptop ou móvel, ou dispositivos de comunicação, tais como,os telefones celulares e os PDA, sistemas multiprocessado-res, sistemas baseados em microprocessador, aparelhos deco-dificadores, equipamentos eletrônicos programáveis pelo con-sumidor, PC de rede, minicomputadores, computadores de gran-de porte, ambientes computacionais distribuídos que incluemquaisquer dentre os sistemas e dispositivos acima, ou coisado gênero.
0 interpolador Bayesiano de imagem de duas cores emétodo podem ser descritos no contexto geral das instruçõesexecutáveis em computador, tais como, os módulos de programaque são executados por um computador. De modo geral, os mó-dulos de programa incluem rotinas, programas, objetos, com-ponentes, estruturas de dados, etc., que executam tarefasparticulares ou implementam tipos de dados abstratos parti-culares. 0 interpolador Bayesiano de imagem de duas cores emétodo podem também ser praticados em ambientes computacio-nais distribuídos nos quais tarefas são realizadas por dis-positivos de processamento remotos conectados através de umarede de comunicação. Em um ambiente computacional distribuí-do, os módulos de programa podem se localizar tanto em ummeio de armazenamento de computador local ou remoto, inclu-indo os dispositivos de armazenamento de memória. Com refe-rência à Figura 8, um sistema exemplar para o interpoladorBayesiano de imagem de duas cores e método inclui um dispo-sitivo computacional de uso geral na forma de um computador-810 (do primeiro dispositivo computacional 270 na Figura 1 edo segundo dispositivo computacional 295 na Figura 2 são e-xemplos do computador 810). Os meios de comunicação tipica-mente incorporam instruções legíveis em computador, estrutu-ras de dados, módulos de programa e outros dados em um sinalde dados modulados, tais como uma onda portadora ou outromecanismo de transporte e inclui quaisquer meios de libera-ção de informação.
Observa-se que o termo "sinal de dados modulados"significa um sinal que tem uma ou mais de suas característi-cas definidas ou modificadas de tal maneira a codificar in-formações no sinal. A título de exemplo, e não de limitação,os meios de comunicação incluem os meios de conexão física,como, por exemplo, uma rede com fio ou uma conexão a cabo, emeios sem fio, como, por exemplo, os meios acústicos, de RF,infravermelhos ou outros meios sem fio. As combinações dequaisquer dentre os meios acima devem ser também incluídasdentro do âmbito de aplicação dos meios legíveis em computador.
A memória de sistema 830 inclui um meio de armaze-namento em computador na forma de uma memória volátil e/ounão volátil, como, por exemplo, a memória de leitura (ROM)831 e a memória de acesso aleatório (RAM) 832. Um sistemabásico de entrada e saída 833 (BIOS), que contém as rotinasbásicas que ajudam a transferir informações entre elementosdentro do computador 810, como, por exemplo, durante a ini-cialização, fica tipicamente armazenado na memória ROM 831.A memória RAM 832 tipicamente contém módulos de dados e/ouprograma que são imediatamente acessíveis à e/ou que sãocorrentemente operados pela unidade de processamento 820. Àguisa de exemplo, e não de limitação, a Figura 8 ilustra osistema operacional 834, os programas de aplicação 835, ou-tros módulos de programa 836, e os dados de programa 837.
O computador 810 pode incluir ainda outros meiosde armazenamento em computador removíveis / não removíveis,voláteis / não voláteis. A título de exemplo somente, a Fi-gura 8 ilustra uma unidade de disco rígido 841 que lê a par-tir de ou grava em um meio magnético não removível e não vo-látil, uma unidade de disco magnético 851 que lê a partir deou grava em um disco magnético removível, não volátil 852, euma unidade de disco ótico 855 que lê a partir de ou gravaem um disco ótico removível, não volátil 856, como, por e-xemplo, um CD ROM ou outro meio ótico.
Outros meios de armazenamento em computador remo-víveis / não removíveis, voláteis / não voláteis que podemser usados em um ambiente operacional exemplar incluem, po-rém não se limitam a, cassetes de fita magnética, cartões dememória flash, discos versáteis digitais, fita de vídeo di-gital, memória RAM em estado sólido, memória ROM em estadosólido, ou coisa do gênero. A unidade de disco rígido 841 étipicamente conectada ao barramento de sistema 821 atravésde uma interface de memória não removível, como, por exem-plo, a interface 840, e a unidade de disco magnético 851 e aunidade de disco ótico 855 são tipicamente conectadas aobarramento de sistema 821 por meio de uma interface de memó-ria removível, como, por exemplo, a interface 850.
As unidades e seus meios associados de armazena-mento em computador que são apresentados acima e ilustradosna Figura 8 provêm o armazenamento de instruções legíveis emcomputador, estruturas de dados, módulos de programa e ou-tros dados para o computador 810. Na Figura 8, por exemplo,a unidade de disco rígido 841 é ilustrada como o sistema o-peracional de armazenamento 844, os programas de aplicação845, outros módulos de programa 846, e os dados de programa847. Observa-se que estes componentes podem ser iguais aosou diferentes do sistema operacional 834, dos programas deaplicação 835, de outros módulos de programa 836, ou dos da-dos de programa 837. O sistema operacional 844, os programasde aplicação 845, outros módulos de programa 846, e os dadosde programa 847 recebem números diferentes na presente in-venção a fim de ilustrar que, no mínimo, os mesmos são có-pias diferentes. Um usuário pode entrar comandos e informa-ções para o computador 110 através de dispositivos de entra-da, como, por exemplo, por meio de um teclado 862 ou de umdispositivo de indicação 8 61, comumente referidos como mou-se, um trackball, ou mesa sensível ao toque.
Outros dispositivos de entrada (não mostrados) po-dem incluir um microfone, um joystick, uma controladora dejogos, uma antena parabólica via satélite, um leitor ótico(scanner), um receptor de rádio, ou um receptor de televisãoou de vídeo de difusão, ou coisa do gênero. Estes e outrosdispositivos de entrada são, com freqüência, conectados àunidade de processamento 820 através de uma interface de en-trada de usuário 860 que é acoplada ao barramento de sistema821, mas podem ser conectados por meio de outra interface ouestruturas de barramento, como, por exemplo, uma porta para-lela, uma porta de jogos, ou um barramento serial universal(USB). Um monitor 891 ou outro tipo de dispositivo de imagemé também conectado ao barramento de sistema 821 através deuma interface, como, por exemplo, uma interface de vídeo890. Além do monitor, os computadores podem incluir aindaoutros dispositivos de saída periféricos, como, por exemplo,alto-falantes 897 e uma impressora 896, os quais podem serconectados por meio de uma interface periférica de saída895.
O computador 810 pode operar em um ambiente de re-de utilizando conexões lógicas com um ou mais computadoresremotos, como, por exemplo, um computador remoto 880. 0 com-putador remoto 880 pode ser um computador pessoal, um servi-dor, um roteador, um PC de rede, um dispositivo de rede nãohierárquica ou outro nó de rede comum, e tipicamente incluimuitos dos ou todos os elementos descritos acima com relaçãoao computador 810, embora apenas um dispositivo de armazena-mento de memória 881 seja ilustrado na Figura 8. As conexõeslógicas ilustradas na Figura 8 incluem uma rede de área lo-cal (LAN) 871 e uma rede de área remota (WAN) 873, mas podemincluir ainda outras redes. Estes ambientes de rede são co-muns em escritórios, em redes de computador empresariais, emintranets e na Internet.
Quando utilizado em um ambiente de rede LAN, ocomputador 810 é conectado à rede LAN 871 através de uma in-terface de rede ou adaptadora 870. Quando utilizado em umambiente de rede WAN, o computador 810 tipicamente inclui ummodem 872 ou outro meio para o estabelecimento de comunica-ções pela rede WAN 873, como, por exemplo, pela Internet. Omodem 872, que pode ser interno ou externo, pode ser conec-tado ao barramento de sistema 821 via a interface de entradade usuário 8 60, ou por outro mecanismo apropriado. Em um am-biente de rede, os módulos de programa ilustrados com rela-ção ao computador 810, ou porções do mesmo, podem ser arma-zenados no dispositivo de armazenamento de memória remoto. Àguisa de exemplo, e não de limitação, a Figura 8 ilustraprogramas de aplicação remota 885 residentes no dispositivode memória 881. Será apreciado que as conexões de rede mos-tradas são exemplares e outros meios para se estabelecer umenlace de comunicação entre os computadores podem ser usados.
A Descrição Detalhada acima foi apresentada parafins de ilustração e descrição. Muitas modificações e varia-ções são possíveis à luz do ensinamento acima. A presentedescrição não pretende ser exaustiva ou limitar a matériaaqui descrita à forma exata apresentada. Embora a matériatenha sido descrita em uma linguagem específica aos aspectosestruturais e/ou atos metodológicos, deve-se entender que amatéria definida nas reivindicações em apenso não necessari-amente se limitam aos aspectos ou atos específicos descritosacima. Ao contrário, os aspectos e atos específicos acimareferidos são apresentados como formas exemplares de imple-mentação das reivindicações em apenso ao presente documento.

Claims (12)

1. Método para o processamento de uma imagem digi-tal colorida (260), CARACTERIZADO pelo fato de compreenderas etapas de:- obter valores de triplas de cores RGB totalmenteespecifiçados para cada pixel da imagem digital colorida(300); e- determinar um valor de cor final para cada pixelcomo uma combinação de duas cores usando os valores de tri-plas de cores RGB totalmente especificados (310) a fim deobter uma imagem digital colorida aperfeiçoada, com poucosartefatos de imagem (290).
2. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de compreender ainda o uso de umatécnica de interpolação de passagem preliminar a fim de ob-ter os valores de triplas de corpo RGB totalmente especifi-cados para cada pixel (400).
3. Método, de acordo com a reivindicação 2,CARACTERIZADO pelo fato de compreender ainda o uso de umatécnica de interpolação linear de alta qualidade (220) a fimde obter os valores de triplas de cores RGB totalmente espe-cificados para cada pixel (280).
4. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a etapa de determinar um va-lor de cor final (430) compreende ainda as etapas de:- encontrar as duas cores para cada pixel usandoos valores de triplas de cores RGB totalmente especificados(420); e- designar as duas cores como duas cores favoreci-das (420).
5. Método, de acordo com a reivindicação 4,CARACTERIZADO pelo fato de compreender ainda a etapa de:- definir uma região de processamento na imagemdigital colorida centralizada em um pixel que é processado(410);- em que o valor de cor final é determinado pelopixel processado (630).
6. Método, de acordo com a reivindicação 5,CARACTERIZADO pelo fato de compreender ainda a etapa de a-grupar valores de cor de pixéis na região de processamentonas duas cores favorecidas usando uma técnica de agrupamento(500).
7. Método, de acordo com a reivindicação 6,CARACTERIZADO pelo fato de que a técnica de agrupamento éuma técnica de agrupamento de K-médias (720).
8. Método, de acordo com a reivindicação 6,CARACTERIZADO pelo fato de compreender ainda o uso de umatécnica de rejeição de fator discrepante com a técnica deagrupamento a fim de melhorar os resultados de agrupamento(510).
9. Método, de acordo com a reivindicação 5,CARACTERIZADO pelo fato de compreender ainda a determinaçãode quanta contribuição cada uma das duas cores favorecidasoferece ao valor de cor final (730) .
10. Método, de acordo com a reivindicação 9,CARACTERIZADO pelo fato de compreender ainda a definição deum valor misturado fracional que especifica a contribuiçãode cada uma das duas cores favorecidas ao valor de cor final(600).
11. Método, de acordo com a reivindicação 10,CARACTERIZADO pelo fato de compreender ainda a determinaçãode um valor misturado fracional máximo para o pixel proces-sado definido como uma mistura das duas cores favorecidasque maximiza a probabilidade do valor misturado fracionaldado a cada um dos valores de cor de pixel na região de pro-cessamento (610).
12. Método, de acordo com a reivindicação 10,CARACTERIZADO pelo fato de compreender ainda o valor mistu-rado fracional máximo para cada pixel e as duas cores favo-recidas para cada pixel a fim de obter o valor de cor finalpara cada um dos pixéis na imagem digital colorida (620).
BRPI0706282-6A 2006-01-30 2007-01-25 interpolação bayesiana utilizando uma imagem de duas cores BRPI0706282A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/343,581 2006-01-30
US11/343,581 US7706609B2 (en) 2006-01-30 2006-01-30 Bayesian demosaicing using a two-color image
PCT/US2007/001982 WO2007089519A1 (en) 2006-01-30 2007-01-25 Bayesian demosaicing using a two-color image

Publications (1)

Publication Number Publication Date
BRPI0706282A2 true BRPI0706282A2 (pt) 2011-03-22

Family

ID=38321691

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0706282-6A BRPI0706282A2 (pt) 2006-01-30 2007-01-25 interpolação bayesiana utilizando uma imagem de duas cores

Country Status (8)

Country Link
US (1) US7706609B2 (pt)
EP (1) EP1967010B1 (pt)
JP (1) JP4527172B2 (pt)
KR (1) KR101183371B1 (pt)
CN (1) CN101375611B (pt)
BR (1) BRPI0706282A2 (pt)
MY (1) MY149682A (pt)
WO (1) WO2007089519A1 (pt)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8165389B2 (en) 2004-03-15 2012-04-24 Microsoft Corp. Adaptive interpolation with artifact reduction of images
GB2426881B (en) * 2005-06-01 2010-12-29 Snell & Wilcox Ltd Method and apparatus for spatial interpolation of colour images
KR100793288B1 (ko) * 2007-05-11 2008-01-14 주식회사 코아로직 영상 처리 장치 및 그 방법
US8031970B2 (en) * 2007-08-27 2011-10-04 Arcsoft, Inc. Method of restoring closed-eye portrait photo
US8035704B2 (en) 2008-01-03 2011-10-11 Aptina Imaging Corporation Method and apparatus for processing a digital image having defective pixels
JP5047048B2 (ja) 2008-04-30 2012-10-10 キヤノン株式会社 画像処理装置、撮像装置、制御方法、プログラム、及び記憶媒体
US11119396B1 (en) 2008-05-19 2021-09-14 Spatial Cam Llc Camera system with a plurality of image sensors
US10585344B1 (en) 2008-05-19 2020-03-10 Spatial Cam Llc Camera system with a plurality of image sensors
US8355042B2 (en) * 2008-10-16 2013-01-15 Spatial Cam Llc Controller in a camera for creating a panoramic image
US8781250B2 (en) * 2008-06-26 2014-07-15 Microsoft Corporation Image deconvolution using color priors
TWI423666B (zh) * 2008-12-31 2014-01-11 Altek Corp Image elimination method for image sequence
US8462171B2 (en) * 2009-02-06 2013-06-11 Micrososft Corporation Saturation contrast image enhancement
WO2011069055A2 (en) 2009-12-04 2011-06-09 Stc.Unm System and methods of compressed sensing as applied to computer graphics and computer imaging
US8345132B2 (en) * 2010-07-23 2013-01-01 Omnivision Technologies, Inc. Image sensor with dual element color filter array and three channel color output
US8553978B2 (en) * 2010-11-03 2013-10-08 Csr Technology Inc. System and method for providing multi resolution purple fringing detection and correction
US8730329B2 (en) * 2011-07-11 2014-05-20 Qualcomm, Incorporated Automatic adaptive image sharpening
US20130031063A1 (en) * 2011-07-26 2013-01-31 International Business Machines Corporation Compression of data partitioned into clusters
US9224362B2 (en) 2013-03-14 2015-12-29 Microsoft Technology Licensing, Llc Monochromatic edge geometry reconstruction through achromatic guidance
US9336570B2 (en) * 2014-05-15 2016-05-10 The United States Of America, As Represented By The Secretary Of The Navy Demosaicking system and method for color array based multi-spectral sensors
US9219870B1 (en) 2014-07-31 2015-12-22 Apple Inc. Sensor data rescaler for image signal processing
FR3046711B1 (fr) 2016-01-08 2018-02-16 Stmicroelectronics (Grenoble 2) Sas Compression et decompression de donnees video
CN111681191B (zh) * 2020-05-11 2024-02-27 安徽百诚慧通科技股份有限公司 一种基于fpga的彩色图像去马赛克方法、系统及存储介质
KR102488627B1 (ko) * 2021-11-08 2023-01-18 청주대학교 산학협력단 피포페인팅 이미지 자동변환방법 및 이를 이용한 피포페인팅 이미지 자동변환 시스템

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3871065A (en) * 1972-08-02 1975-03-18 Gen Co Ltd Thermal printing process
US4642678A (en) * 1984-09-10 1987-02-10 Eastman Kodak Company Signal processing method and apparatus for producing interpolated chrominance values in a sampled color image signal
US4724395A (en) * 1985-08-05 1988-02-09 Polaroid Corporation Median filter for reconstructing missing color samples
US5373322A (en) * 1993-06-30 1994-12-13 Eastman Kodak Company Apparatus and method for adaptively interpolating a full color image utilizing chrominance gradients
US5629734A (en) * 1995-03-17 1997-05-13 Eastman Kodak Company Adaptive color plan interpolation in single sensor color electronic camera
US5956431A (en) * 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values
US6356588B1 (en) * 1998-04-17 2002-03-12 Ayao Wada Method for digital compression of color images
JP4311794B2 (ja) * 1999-01-29 2009-08-12 オリンパス株式会社 画像処理装置及び画像処理プログラムを格納した記録媒体
US6438270B1 (en) * 1999-03-03 2002-08-20 Xerox Corporation Methods and systems for image sharpening
EP2056607B1 (en) 2001-03-05 2010-12-29 Nikon Corporation Image processing apparatus and image processing program
JP4622141B2 (ja) * 2001-04-13 2011-02-02 ソニー株式会社 画像処理装置および画像処理方法、記録媒体、並びにプログラム
JP3608544B2 (ja) * 2001-10-31 2005-01-12 ソニー株式会社 パラメータ生成装置および方法
FI115942B (fi) 2002-10-14 2005-08-15 Nokia Corp Menetelmä kuvien interpoloimiseksi ja terävöittämiseksi
JP4269734B2 (ja) * 2003-03-25 2009-05-27 株式会社日立製作所 投写型カラー表示装置
JP4162582B2 (ja) * 2003-12-19 2008-10-08 株式会社東芝 補間フレーム生成方法及び装置
US7502505B2 (en) * 2004-03-15 2009-03-10 Microsoft Corporation High-quality gradient-corrected linear interpolation for demosaicing of color images

Also Published As

Publication number Publication date
EP1967010A1 (en) 2008-09-10
EP1967010A4 (en) 2012-01-18
KR101183371B1 (ko) 2012-09-14
CN101375611A (zh) 2009-02-25
MY149682A (en) 2013-09-30
US7706609B2 (en) 2010-04-27
US20070177033A1 (en) 2007-08-02
JP4527172B2 (ja) 2010-08-18
WO2007089519A1 (en) 2007-08-09
EP1967010B1 (en) 2013-07-17
KR20080090426A (ko) 2008-10-08
CN101375611B (zh) 2011-03-02
JP2009525636A (ja) 2009-07-09

Similar Documents

Publication Publication Date Title
BRPI0706282A2 (pt) interpolação bayesiana utilizando uma imagem de duas cores
Jiang et al. Learning the image processing pipeline
Ramanath et al. Color image processing pipeline
CN101925922B (zh) 内插系统和方法
EP2652678B1 (en) Systems and methods for synthesizing high resolution images using super-resolution processes
Ng et al. Using geometry invariants for camera response function estimation
Gaiani et al. An advanced pre-processing pipeline to improve automated photogrammetric reconstructions of architectural scenes
US6836572B2 (en) Interpolation processing apparatus and recording medium having interpolation processing program recorded therein
Finlayson et al. The alternating least squares technique for nonuniform intensity color correction
US20080240559A1 (en) Adaptive interpolation with artifact reduction of images
KR20040066051A (ko) 가중 그래디언트 기반 및 컬러 수정 보간
BR102014022192A2 (pt) método e aparelho associado para corrigir artefato de cor de imagem
US8565491B2 (en) Image processing apparatus, image processing method, program, and imaging apparatus
KR102083721B1 (ko) 딥 러닝을 이용한 양안기반 초해상 이미징 방법 및 그 장치
WO2019196109A1 (zh) 一种抑制图像伪彩的方法及装置
Zhang et al. Preprocessing and fusion analysis of GF-2 satellite Remote-sensed spatial data
US10360661B2 (en) Determining multispectral or hyperspectral image data
US20170316585A1 (en) Image processing device and method for color balancing
US10594903B2 (en) Method and system for determining parameters of an image processing pipeline of a digital camera
Battiato et al. Image processing for embedded devices
Stamatopoulos et al. Accuracy aspects of utilizing raw imagery in photogrammetric measurement
US7433540B1 (en) Decomposing natural image sequences
Wang et al. Image demosaicing by non-local similarity and local correlation
KR102018246B1 (ko) 그라디언트 기반 rgbw cfa 디모자킹 장치 및 방법
Nieves et al. Unsupervised illuminant estimation from natural scenes: an RGB digital camera suffices

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 8A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2290 DE 25/11/2014.