Alguma ferramenta para me dizer o valor exato da cor em um ponto em uma imagem png?

10

Desejo obter o valor exato da cor (RGB, HSB ou qualquer outro valor do espaço de cor que possa ser convertido em valor RGB) em um determinado ponto (de preferência no ponto sob o cursor) em uma imagem png. Alguma ferramenta para isso? Obrigado.

PS: Para ser mais específico, não estou pedindo o seletor de cores da tela, mas o seletor de dados de cores da imagem PNG. O seletor de cores da tela geral não pode escolher perfeitamente o valor exato da cor em uma imagem PNG, por exemplo, falta um canal alfa.

an0
fonte
Ou, como você mencionou PNG, também precisa do valor do canal alfa?
Jari Keinänen 5/10/11
@koiyu Claro, o canal alfa também é necessário.
an0
ubuntu askubuntu.com/questions/163783/…
Ciro Santilli escreveu

Respostas:

18

Usando o ImageMagick :

$ convert image.png - corte '1x1 + 100 + 200 ' txt: -

Saídas, por exemplo

# ImageMagick pixel enumeração: 1,1255, rgb
0,0: (236,236,236) #ECECEC rgb (236,236,236)

Ou, se o arquivo for PNG-24, ele gera, por exemplo,

# ImageMagick pixel enumeração: 1,1255, rgba
0,0: (0, 0, 0,243) # 000000F3 rgba (0,0,0,0,952941)

Na -cropopção, defini primeiro a área a ser cortada, que neste caso é de 1x1 pixels. Depois defini a localização da colheita em relação ao canto noroeste , ou seja, no canto superior esquerdo.

Por fim, converti a saída para textual com txt:-. O ImageMagick envia todas as cores da imagem para STDOUT (nesse caso, existe apenas uma cor, pois o tamanho da imagem é de 1 pixel), o que significa que você pode processá-lo com técnicas normais de shell. Por exemplo, ao canalizar a saída, tail -n 1você obteria apenas a linha de informações de pixel.

Se você precisar da cor do pixel em qualquer outro espaço de cores, verifique a -colorspaceopção com o nome apropriado .

†) Na verdade, a localização é relativa ao -gravityvalor especificado , mas o padrão é "Noroeste".

Jari Keinänen
fonte
Obrigado, mas posso obter o valor do canal alfa com este método?
an0
@ an0 Sim. Se você usar o comando mencionado com um arquivo PNG-24, obterá uma saída de, por exemplo,0,0: ( 0, 0, 0,243) #000000F3 rgba(0,0,0,0.952941)
Jari Keinänen 6/10/11
Para algumas cores, recebo nomes de cores em forma de texto (por exemplo, 'preto' ou 'verde-azulado') em vez de seus valores RGB usando esse método. Este post nos fóruns do imagemagick tem outra solução que parece funcionar, mas é muito mais complexa. imagemagick.org/discourse-server/viewtopic.php?t=13694#p46473
Wyatt8740
6

O DigitalColor Meter (encontrado em / Aplicativos / Utilitários) informa o valor da cor (RGB) do pixel em que o cursor está passando o mouse.

por favor me apague
fonte
2
Não estou pedindo o seletor de cores da tela, mas o seletor de dados de cores da imagem PNG. O seletor de cores da tela geral não pode escolher perfeitamente o valor exato da cor em uma imagem PNG.
an0
Você solicitou um valor RGB para o pixel em que o cursor está passando o mouse. Se você abrir o arquivo png e passar o mouse sobre o pixel, obterá o valor RGB dessa cor, não?
delete delete me
O canal alfa está ausente.
an0
Desculpe, não poderia ter sido de mais ajuda.
por favor me apague
O canal alfa não faz parte do RGB.
Daniel
2

Encontrei uma maneira viável no Stack Overflow de Roman Nurik :

No painel Informações do Photoshop, você pode escolher 'Opacidade' como um modo de leitura, embora ele apareça como uma porcentagem e não como um valor alfa real.

Para habilitá-lo, basta abrir a janela Informações, escolha Opções do painel e defina o modo Leitura da segunda cor como Opacidade.

... Mas você precisa do Photoshop para isso. Eu ainda acredito que deveria haver maneiras mais simples. Espero que alguém possa ajudar.

an0
fonte
1

Se você não possui o Photoshop e não quer gastar muito para obter esse recurso, o aplicativo GIMP da FOSS (Software Livre / de Código Aberto) fará o trabalho por você.

www.gimp.org

Warren Keuffel
fonte
-2

colorhunter.com é o que eu consegui encontrar enquanto pesquisava essa mesma pergunta. boa sorte

Jenifer Daniels
fonte
Olá Jenifer, apenas para informar que esta resposta foi sinalizada automaticamente como baixa qualidade durante o comprimento e o conteúdo (abreviação de um link basicamente). Se você pode expandir sua resposta para ser mais do que uma referência a outro site, talvez copie alguns dos recursos do aplicativo etc. na resposta, seria muito melhor.
stuffe