Algoritmo de Detecção de Nuvens em Imagens All Sky

O estudo “Lake-Breeze Influence on Cloudiness Over a Brazilian Reservoir: A Potential Hotspot for Floating Photovoltaic Energy” investigou como a brisa lacustre influencia a formação e a supressão de nuvens sobre o reservatório da Usina Hidrelétrica de Furnas (MG) e quais os impactos desse processo na disponibilidade de radiação solar para sistemas fotovoltaicos flutuantes (FPV). Os resultados obtidos foram bastante relevantes para compreensão desse mecanismo no potencial dos FPV. Neste texto a seguir, o objetivo é detalhar a metodologia empregada para calcular a fração de cobertura de nuvens a partir de imagens all sky, utilizada no artigo.

A brisa lacustre resulta do contraste térmico entre a superfície aquática e o solo adjacente, gerando diferentes padrões de circulação atmosférica ao longo do dia. Pela manhã, o gradiente de temperatura água-terra promove fluxos de convergência próximos à superfície no centro do reservatório, enquanto nos níveis superiores a circulação transporta nuvens em direção às áreas continentais. Nesse período, observa-se movimento ascendente sobre o reservatório e descendente sobre o entorno. Assim, no início da tarde, ocorre a formação de nebulosidade sobre a lâmina d’água, reduzindo a irradiância solar incidente — um comportamento típico de eventos de brisa lacustre, associado ao aquecimento intenso da superfície terrestre e à inversão do fluxo vertical. Entretanto, no decorrer da tarde, o movimento descendente (subsidente) sobre o reservatório passa a inibir o desenvolvimento de nuvens, favorecendo condições de céu mais limpo e maior disponibilidade de radiação solar.

Esquema de funcionamento da brisa lacustre no período da tarde. Fonte: Wikipedia
Esquema de funcionamento da brisa lacustre no período da tarde. Fonte: Wikipedia

Os resultados mostraram que o reservatório registrou irradiância entre 5,3% e 12,7% superior em relação às áreas terrestres durante a estação seca, especialmente no período da tarde. Esse ganho se refletiu em um aumento de até 14,6% na produção de energia dos sistemas FPV em comparação aos sistemas instalados em terra. Assim, o estudo evidencia que reservatórios tropicais, como o de Furnas, apresentam condições ideais para a instalação de FPV, contribuindo para a segurança energética e para o aproveitamento eficiente dos recursos naturais.

Estimativa de nebulosidade com imagens all sky

Para avaliar a cobertura de nuvens efetiva sobre o reservatório, este estudo também incorporou dados de imagens do satélite GOES-16 e medições in situ do instrumento All Sky Imager. O ASI-16 All Sky Imager é um sistema automático de câmera de céu completo com um campo de visão de 180°. Ele fornece imagens para segmentação de nuvens a cada 5 minutos. O algoritmo desenvolvido para estimar a fração de cobertura de nuvens (Cloud Fraction – CF) em imagens hemisféricas obtidas por câmeras do tipo All Sky (ASIs) foi estruturado em uma sequência de etapas, descritas a seguir e na figura a seguir.

Fluxograma do algoritmo de estimativa de fração de cobertura de nuvens usando imagem all sky. Adaptado de Carvalho et al. (2025)
Fluxograma do algoritmo de estimativa de fração de cobertura de nuvens usando imagem all sky. Adaptado de Carvalho et al. (2025)

O processamento inicia com a definição da região de interesse (ROI) e a aplicação de máscaras binárias para remover interferências visuais, como suportes da câmera ou objetos próximos. Em seguida, são realizadas correções cromáticas para compensar distorções em condições de baixa iluminação. A análise prossegue com o cálculo do índice espectral NBRR (Normalized Blue-Red Ratio), que permite diferenciar céu claro e nuvens, seguido da segmentação adaptativa da imagem. Por fim, os pixels são classificados em três categorias — céu claro, nuvem e interferência — e a fração de cobertura de nuvens é obtida pela proporção de pixels identificados como nuvem em relação à área útil da imagem.

A ROI é definida como um círculo centralizado na imagem, com raio proporcional às suas dimensões. Para restringir a análise ao ângulo zenital de até 80°, o raio é reduzido em 15%. Em casos de desalinhamento ou distorções, a detecção automática da ROI pode ser feita pelo algoritmo HoughCircles, que utiliza filtros de borda e parâmetros de restrição para selecionar o círculo mais representativo da área útil.

A remoção de interferências visuais — como hastes sombreadoras, insetos ou pessoas — é realizada por meio de uma máscara binária obtida com a técnica de Minimum Cross-Entropy (MCE), proposta por Li & Lee (1993) e aprimorada por Li & Tam (1998). Esse método determina automaticamente o limiar ótimo de segmentação ao minimizar a entropia cruzada entre a imagem original e sua versão segmentada, sem pressupor distribuições prévias de intensidade. A implementação foi feita com o método threshold_li da biblioteca scikit-image.

Como controle de qualidade, aplica-se um critério baseado na proporção entre pixels válidos e aqueles marcados como interferência. Valores fora do intervalo aceitável, definido empiricamente a partir de imagens de referência, indicam problemas como excesso de obstruções ou reflexos intensos na estrutura da câmera. Nessas situações, a imagem pode ser descartada ou sinalizada para revisão manual. No conjunto analisado, todas as imagens atenderam ao critério.

Para corrigir distorções cromáticas em condições de baixa irradiância (<100 W/m²), foi implementado um ajuste da temperatura de cor. As imagens são convertidas para o espaço CIELAB, onde a componente L representa luminância e os canais a e b codificam variações de cor. Quando mais de 10% dos pixels apresentam valores elevados no canal b (indicando tonalidade amarelada, comum em horários próximos ao pôr ou nascer do sol), aplica-se uma correção cromática com constante negativa (−40), deslocando o canal b em direção ao azul. Após o ajuste, os valores são limitados ao intervalo [0, 255] e reconvertidos para RGB.

No espaço RGB, cada pixel é composto pelos canais vermelho (R), verde (G) e azul (B). A partir deles, calcula-se o índice NBRR:

\(
NBRR = \frac{B – R}{B + R}
\)

Esse índice explora o contraste espectral entre céu claro (mais azul) e nuvens (mais próximas do branco), permitindo uma segmentação eficiente.

A segmentação é realizada sobre a imagem NBRR convertida para escala de cinza, utilizando o método de limiarização adaptativa adaptiveThreshold da biblioteca OpenCV. Essa técnica calcula limiares locais com base na média dos pixels em janelas deslizantes (block size), ajustadas por uma constante. Blocos menores captam melhor variações locais, mas são mais sensíveis a ruído; blocos maiores suavizam a imagem, podendo ocultar nuvens fragmentadas. A constante atua como fator de correção, modulando a sensibilidade do método. Após testes de calibração, foram adotados block_size = 651 e constant = 10.0, valores que equilibraram robustez e capacidade de detecção sob diferentes condições de iluminação.

O resultado da segmentação classifica os pixels em três categorias: céu claro (255), nuvem (127) e interferência (0). A Figura 1 ilustra um exemplo de análise, mostrando a ROI, a máscara de interferências e a imagem final segmentada. A partir dessa classificação, calcula-se a porcentagem de nuvens em relação à área útil da imagem, obtendo-se o valor final da fração de cobertura de nuvens.

Os códigos estão disponíveis no github: viniroger/cf_estimate.

Referências

Carvalho, V.S.O., Assireu, A.T., Martins, F.R., Rocha, V.R.R., Gonçalves, A.R., Rodrigues, C.C.F., Pezzi, L.P., Santini, M.F., Machado, G.B.M., Pes, M.P., Fisch, G., Lake-Breeze Influence on Cloudiness Over a Brazilian Reservoir: A Potential Hotspot for Floating Photovoltaic Energy. Earth Syst Environ (2025). https://doi.org/10.1007/s41748-025-00908-4

C.H. Li, C.K. Lee, Minimum cross entropy thresholding, Pattern Recognition, Volume 26, Issue 4, 1993, Pages 617-625, ISSN 0031-3203, https://doi.org/10.1016/0031-3203(93)90115-D.

C.H. Li, P.K.S. Tam, An iterative algorithm for minimum cross entropy thresholding, Pattern Recognition Letters, Volume 19, Issue 8, 1998, Pages 771-776, ISSN 0167-8655, https://doi.org/10.1016/S0167-8655(98)00057-9.

Muhammad Syazwan Rifdi Bin Mohd Rashid, Jinghong Zheng, Ernest Sng, Kurinji Malar Rajendhiran, Zhen Ye, Li Hong Idris Lim, An enhanced cloud segmentation algorithm for accurate irradiance forecasting, Solar Energy, Volume 221, 2021, Pages 218-231, ISSN 0038-092X, https://doi.org/10.1016/j.solener.2021.03.061.

Leave a Reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.