Gerenciamento de cor - Color management

Em sistemas de imagem digital, gerenciamento de cores (ou gerenciamento de cores ) é a conversão controlada entre as representações de cores de vários dispositivos, como scanners de imagem , câmeras digitais , monitores, telas de TV, impressoras de filme, impressoras de computador , impressoras offset e mídia correspondente.

O principal objetivo do gerenciamento de cores é obter uma boa correspondência entre dispositivos coloridos; por exemplo, as cores de um quadro de um vídeo devem aparecer iguais em um monitor LCD de computador , em uma tela de TV de plasma e como um pôster impresso. O gerenciamento de cores ajuda a obter a mesma aparência em todos esses dispositivos, desde que os dispositivos sejam capazes de fornecer as intensidades de cores necessárias. Com a fotografia, muitas vezes é fundamental que as impressões ou galerias online tenham a aparência desejada. O gerenciamento de cores não pode garantir a reprodução de cores idênticas, pois isso raramente é possível, mas pode pelo menos dar mais controle sobre quaisquer alterações que possam ocorrer.

Partes dessa tecnologia são implementadas no sistema operacional (SO), nas bibliotecas auxiliares, no aplicativo e nos dispositivos. Uma visão de plataforma cruzada de gerenciamento de cores é o uso de um sistema de gerenciamento de cores compatível com ICC. O International Color Consortium (ICC) é um consórcio da indústria que definiu:

  • Um padrão aberto para um Módulo de correspondência de cores (CMM) no nível do sistema operacional
  • perfis de cores para:
    • Dispositivos, incluindo perfis de devicelink que representam uma transformação de cor completa do dispositivo de origem para o dispositivo de destino
    • Espaços de trabalho , os espaços de cores nos quais os dados de cores devem ser manipulados

Existem outras abordagens para o gerenciamento de cores além do uso de perfis ICC . Isso se deve em parte à história e em parte a outras necessidades que não as abrangidas pelo padrão ICC. As indústrias de cinema e radiodifusão usam alguns dos mesmos conceitos, mas frequentemente contam com soluções boutique mais limitadas. A indústria cinematográfica, por exemplo, costuma usar LUTs 3D ( tabela de pesquisa ) para representar uma transformação completa de cores para uma codificação RGB específica. No nível do consumidor, o gerenciamento de cores atualmente se aplica mais a imagens estáticas do que a vídeos. Sistemas operacionais como macOS, iOS e Android podem fazer gerenciamento de cores para vídeos em todo o sistema, enquanto no Windows o gerenciamento de cores de vídeo é virtualmente inexistente.

Visão geral

  1. Caracterizar. Cada dispositivo com gerenciamento de cores requer uma tabela personalizada, ou "perfil de cor", que caracteriza a resposta de cor desse dispositivo específico.
  2. Padronize. Cada perfil de cor descreve essas cores em relação a um conjunto padronizado de cores de referência (o "Espaço de conexão do perfil").
  3. Traduzir. O software gerenciado por cores usa esses perfis padronizados para converter as cores de um dispositivo para outro. Isso geralmente é executado por um módulo de gerenciamento de cores (CMM).

Hardware

Caracterização

Para descrever o comportamento de vários dispositivos de saída, eles devem ser comparados (medidos) em relação a um espaço de cores padrão . Freqüentemente, uma etapa chamada linearização é executada primeiro, para desfazer o efeito da correção de gama que foi feita para obter o máximo dos caminhos de cor de 8 bits limitados . Os instrumentos usados ​​para medir as cores dos dispositivos incluem colorímetros e espectrofotômetros . Como resultado intermediário, a gama do dispositivo é descrita na forma de dados de medição dispersos. A transformação dos dados de medição dispersos em uma forma mais regular, utilizável pelo aplicativo, é chamada de criação de perfil . A criação de perfil é um processo complexo que envolve matemática, computação intensa, julgamento, teste e iteração. Depois que o perfil é concluído, uma descrição de cor idealizada do dispositivo é criada. Essa descrição é chamada de perfil .

Calibração

A calibração é como a caracterização, exceto que pode incluir o ajuste do dispositivo, em oposição a apenas a medição do dispositivo. O gerenciamento de cores às vezes é evitado calibrando os dispositivos para um espaço de cores padrão comum, como sRGB ; quando a calibração é bem feita, nenhuma tradução de cores é necessária para que todos os dispositivos manuseiem as cores de maneira consistente. Evitar a complexidade do gerenciamento de cores foi um dos objetivos no desenvolvimento do sRGB.

Perfis de cor

Uma visão 3D de dois perfis ICC

Embedding

Os próprios formatos de imagem (como TIFF , JPEG , PNG , EPS , PDF e SVG ) podem conter perfis de cores incorporados, mas não são obrigados a fazê-lo pelo formato de imagem. O padrão International Color Consortium foi criado para reunir vários desenvolvedores e fabricantes. O padrão ICC permite a troca de características do dispositivo de saída e espaços de cores na forma de metadados . Isso permite a incorporação de perfis de cores em imagens, bem como armazená-los em um banco de dados ou diretório de perfis.

Espaços de trabalho

Os espaços de trabalho, como sRGB , Adobe RGB ou ProPhoto, são espaços de cores que facilitam bons resultados durante a edição. Por exemplo, pixels com valores iguais de R, G, B devem parecer neutros. Usar um grande espaço de trabalho (gama) levará à posterização , enquanto usar um pequeno espaço de trabalho levará ao corte . Essa compensação é uma consideração para o editor de imagem crítica.

Transformação de cor

A transformação da cor, ou conversão do espaço de cor, é a transformação da representação de uma cor de um espaço de cor para outro. Esse cálculo é necessário sempre que os dados são trocados dentro de uma cadeia com gerenciamento de cores e realizados por um Módulo de correspondência de cores . A transformação das informações de cores com perfis em diferentes dispositivos de saída é obtida referenciando os dados do perfil em um espaço de cores padrão. Facilita a conversão de cores de um dispositivo para um espaço de cores padrão selecionado e daí para as cores de outro dispositivo. Ao garantir que o espaço de cores de referência cubra as muitas cores possíveis que os humanos podem ver, esse conceito permite a troca de cores entre muitos dispositivos de saída de cores diferentes. As transformações de cores podem ser representadas por dois perfis (perfil de origem e perfil de destino) ou por um perfil de link de dispositivo. Nesse processo, há aproximações envolvidas que garantem que a imagem mantenha suas importantes qualidades de cor e também dá a oportunidade de controlar como as cores estão sendo alteradas.

Espaço de conexão de perfil

Na terminologia do International Color Consortium , uma tradução entre dois espaços de cores pode passar por um espaço de conexão de perfis (PCS): Espaço de Cores 1 → PCS ( CIELAB ou CIEXYZ ) → Espaço de cores 2; as conversões de entrada e saída do PCS são especificadas cada uma por um perfil.

Mapeamento de gama

Em quase todos os processos de tradução, temos de lidar com o fato de que a gama de cores dos diferentes dispositivos varia, o que torna impossível uma reprodução precisa. Portanto, eles precisam de algum rearranjo próximo às fronteiras da gama. Algumas cores devem ser deslocadas para dentro da gama, pois, de outra forma, não podem ser representadas no dispositivo de saída e seriam simplesmente cortadas. Essa chamada incompatibilidade de gama ocorre, por exemplo, quando traduzimos do espaço de cores RGB com uma gama mais ampla para o espaço de cores CMYK com uma gama de gama mais estreita. Neste exemplo, a cor azul-púrpura escura altamente saturada do primário "azul" de um monitor de computador típico é impossível de imprimir em papel com uma impressora CMYK típica . A aproximação mais próxima dentro da gama da impressora será muito menos saturada. Por outro lado, o primário "ciano" de uma impressora jato de tinta, um azul de brilho médio saturado, está fora da gama de um monitor de computador típico. O sistema de gerenciamento de cores pode utilizar vários métodos para obter os resultados desejados e fornecer aos usuários experientes o controle do comportamento do mapeamento de gama.

Tentativa de renderização

Quando a gama do espaço de cores de origem excede a do destino, as cores saturadas podem ser cortadas (representadas de maneira incorreta) ou queimadas de maneira mais formal . O módulo de gerenciamento de cores pode lidar com esse problema de várias maneiras. A especificação ICC inclui quatro propósitos de renderização diferentes, listados abaixo. Antes que a tentativa de renderização real seja realizada, pode-se simular temporariamente a renderização por prova digital . É uma ferramenta útil, pois prevê o resultado das cores e está disponível como um aplicativo em muitos sistemas de gerenciamento de cores:

Colorimétrico absoluto
A colorimetria absoluta e a colorimetria relativa realmente usam a mesma tabela, mas diferem no ajuste para a mídia de ponto branco. Se o dispositivo de saída tiver uma gama muito maior do que o perfil de origem, ou seja, todas as cores na fonte podem ser representadas na saída, o uso da intenção de renderização de colorimetria absoluta idealmente (ignorando ruído, precisão, etc.) daria uma saída exata dos valores CIELAB especificados. Perceptivelmente, as cores podem parecer incorretas, mas as medições do instrumento da saída resultante corresponderiam à fonte. As cores fora das cores possíveis do sistema de impressão de prova são mapeadas para o limite da gama de cores.

A colorimetria absoluta é útil para obter uma cor especificada exata (por exemplo, azul IBM) ou para quantificar a precisão dos métodos de mapeamento.

Colorimétrico Relativo
O objetivo na colorimetria relativa é ser fiel à cor especificada, com apenas uma correção para a mídia. A colorimetria relativa é útil em aplicativos de revisão, pois pode ser usada para se ter uma ideia de como uma impressão em um dispositivo aparecerá em um dispositivo diferente. As diferenças de mídia são a única coisa que realmente deve ser ajustada, embora algum mapeamento de gama também precise ser aplicado. Normalmente, isso é feito de forma que a tonalidade e a luminosidade sejam mantidas ao custo de uma saturação reduzida. Por padrão, as cores dentro da gama permanecem inalteradas, enquanto as cores fora da gama são fixadas.

Colorimétrico relativo é a tentativa de renderização padrão em muitos sistemas.

Perceptivo
A intenção perceptiva move suavemente as cores fora da gama para a gama, preservando as gradações, mas distorce as cores dentro da gama no processo. Assim como a intenção de saturação, os resultados realmente dependem do criador do perfil. É até mesmo assim que alguns concorrentes desse mercado se diferenciam. O criador de perfis tenta fazer resultados agradáveis ​​com essa intenção. A renderização perceptual é recomendada para separação de cores.
Saturação
A intenção de saturação é projetada para apresentar gráficos comerciais atraentes, preservando a saturação (colorido). É mais útil em gráficos e diagramas, onde há uma paleta discreta de cores que o designer deseja saturar para torná-las intensas, mas onde o matiz específico é menos importante.

Na prática, os fotógrafos quase sempre usam a intenção relativa ou perceptual, pois para imagens naturais, o vazamento de cores absoluto causa , enquanto a saturação produz cores não naturais. Se uma imagem inteira estiver dentro da gama, o relativo é perfeito, mas quando houver cores fora da gama, o que é preferível depende caso a caso.

Uma correção de ponto preto (BPC) não é aplicada para perfis colorimétricos absolutos ou de devicelink. Para ICCv4, é sempre aplicado a

Implementação

Módulo de gerenciamento de cores

O módulo de correspondência de cores (também - método ou - sistema ) é um algoritmo de software que ajusta os valores numéricos que são enviados ou recebidos de diferentes dispositivos para que a cor percebida que eles produzem permaneça consistente. A questão principal aqui é como lidar com uma cor que não pode ser reproduzida em um determinado dispositivo para mostrá-la por um dispositivo diferente como se fosse visualmente da mesma cor, assim como quando a gama de cores reproduzíveis entre transparências coloridas e impressos são diferentes. Não existe um método comum para este processo e o desempenho depende da capacidade de cada método de correspondência de cores.

Alguns CMMs bem conhecidos são ColorSync , Adobe CMM, Little CMS e ArgyllCMS.

Nível do sistema operacional

Visualizador de perfil de cor no KDE Plasma 5 , mostrando um perfil de cor ICC

Os sistemas operacionais Mac OS e macOS clássicos da Apple fornecem APIs de gerenciamento de cores no nível do sistema operacional desde 1993, por meio do ColorSync . O macOS adicionou gerenciamento automático de cores (assumindo sRGB para a maioria das coisas) automaticamente no sistema operacional, mas os aplicativos podem visar explicitamente outros espaços de cores, se assim o desejarem.

Desde 1997, o gerenciamento de cores no Windows está disponível por meio de um sistema de gerenciamento de cores ICC (ICM). Começando com o Windows Vista , a Microsoft introduziu uma nova arquitetura de cores conhecida como Windows Color System . WCS complementa o sistema Image Color Management (ICM) no Windows 2000 e Windows XP, originalmente escrito por Heidelberg . Infelizmente, a grande maioria dos aplicativos não usa o Windows Color System. Isso é ainda mais exacerbado pelo fato de que as APIs de decodificação de vídeo de hardware do Windows não permitem o gerenciamento de cores. Assim, quase todos os reprodutores de vídeo não podem ter gerenciamento de cores, e os navegadores (Chrome, Firefox, Edge) só podem fazer gerenciamento de cores para imagens, mas não para vídeo.

Os sistemas operacionais que usam o X Window System para gráficos podem usar perfis ICC , e o suporte para gerenciamento de cores no Linux , ainda menos maduro do que em outras plataformas, é coordenado pelo OpenICC em freedesktop.org e faz uso do LittleCMS .

Nível de arquivo

Certos tipos de arquivos de imagem ( TIFF e Photoshop ) incluem a noção de canais de cores para especificar o modo de cores do arquivo. Os canais mais comumente usados ​​são RGB (principalmente para exibição (monitores), mas também para algumas impressões de mesa) e CMYK (para impressão comercial). Um canal alfa adicional pode especificar um valor de máscara de transparência. Alguns softwares de imagem (como o Photoshop ) executam a separação automática de cores para manter as informações de cores no modo CMYK usando um perfil ICC especificado , como US Web Coated (SWOP) v2 .

Nível de aplicação

Em 2005, a maioria dos navegadores da web ignorava os perfis de cores. Exceções notáveis ​​foram o Safari , a partir da versão 2.0, e o Firefox, a partir da versão 3. Embora desativado por padrão no Firefox 3.0, o gerenciamento de cores ICC v2 e ICC v4 pode ser ativado usando um complemento ou definindo uma opção de configuração.

Desde julho de 2019, Safari, Chrome e Firefox são totalmente compatíveis com o gerenciamento de cores. No entanto, é importante observar que a maioria dos navegadores só faz gerenciamento de cores para imagens e elementos CSS, mas não para vídeo.

  • Firefox: a versão 3.5 (lançada em 2011) em diante oferece suporte a imagens marcadas com ICC v2, e a versão 8.0 (lançada em 2011) adiciona suporte a perfis ICC v4. A versão 89 (lançada em 2021) e superior aplicam o gerenciamento de cores a todas as imagens não marcadas e elementos de página por padrão.
  • Internet Explorer: suporta perfis ICC da versão 9 em diante, mas converte apenas imagens não-sRGB para o perfil sRGB, independentemente do espaço de cores real do monitor.
  • Google Chrome : usa o sistema fornecido com suporte ICC v2 e v4 no macOS e, a partir da versão 22 (lançada em 2012), oferece suporte a perfis ICC v2 por padrão em outras plataformas. As versões macOS do Chrome renderizam o vídeo corretamente.
  • Safari: tem suporte a partir da versão 2.0 (lançada em 2005). Suporta perfis ICC v2 e v4 e renderiza vídeo corretamente.
  • Opera: tem suporte desde 12.10 (lançado em 2012) para ICC v4.
  • Pale Moon suportou ICC v2 desde seu primeiro lançamento, e v4 desde Pale Moon 20.2 (lançado em 2013).

Em relação aos navegadores móveis, o Safari 13.1 (no iOS 13.4.1) reconhece o perfil de cor do dispositivo e pode exibir imagens de acordo. O Chrome 83 (no Android 9) ignora o perfil de exibição, simplesmente convertendo todas as imagens para sRGB.

Veja também

Referências

Leitura adicional

links externos