Sensoriamento Remoto II, Prof. Dr.Ing. Jorge Centeno - UFPR

Transformação IHS

Transformação RGB-IHS: Para obter a representação polar das cores no sistema IHS a partir do RGB é necessário um pouco de matemática. Br a) A intensidade é a soma das componentes R+G+B. Mas, como a soma pode ser muito grande, é normalmente escalada ao intervalor 0-255, ou 0.0-1.0. No Envi, por exemplo, a Intensidade é calculada como: I= a*(R+G+B), com a=raiz quadrada de 3; Um plano qualquer, perpendicular à linha de cinzas (cuja direção é [1 1 1], pode ser descrito por dois vetores perpendiculares a esta direção. Uma possibilidade é usar o vetor V1= [0 1 -1]. O produto destes dos vetores I e B1 é nulo. Pode comprovar?

O segundo vetor deste plano deve ser também perpendicular a I. Se ainda condicionamos que ele seja também perpendicular a V1, existe apenas uma direção possível, dada por múltiplos do vetor V1= [2 -1 -1]. Novamente, estes vetores podem produzir valores muito grandes, pelo que também serão normalizados. Assim, obtém-se o seguinte sistema I-V1-V2, que é uma rotação do sistema RGB.

Agora resta usar V1 e V2 para calcular as coordenadas polares da cor no plano perpendicular a I. Da figura ao lado, pode-se deduzir que a tangente do ângulo Hue é V2/V1. Da mesma forma, a Saturação é o tamanho da soma vetorial de V1 e V2, ou seja:

Então, a princípio você poderia programar esta transformação no Python?
Exemplo: Veja, abaixo, as componentes IHS de uma composição colorida Landsat (543 ETM+). As áreas de solo nu, rosa, tem alta Intensidade e são bem saturadas. Por isso a cor aparece tão intensa. A vegetação, por outro lado, tem Intensidade média e baixa saturação. Logo, ela aparece "desbotada" na imagem colorida. As diferenças de "tonalidade" são visíveis na componente Hue. As áreas em rosa são bem claras, enquanto as verde escuras.


Para continuar voce pode voltar ao menu principal ou continuar para a aula de Tasseled cap .


Copyright © 2020
Jorge Centeno: centeno@ufpr.br