Processamento de imagens HDR utilizando shaders gráficos em múltiplas plataformas

Detalhes bibliográficos
Ano de defesa: 2017
Autor(a) principal: Munhoz, Rafael Gomes
Orientador(a): Balan, André Guilherme Ribeiro
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal do ABC
Programa de Pós-Graduação: Programa de Pós-Graduação em Ciência da Computação
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Link de acesso: http://biblioteca.ufabc.edu.br/index.php?codigo_sophia=106595&midiaext=74728
http://biblioteca.ufabc.edu.br/index.php?codigo_sophia=106595&midiaext=74728/index.php?codigo_sophia=106595&midiaext=74727
Resumo: Uma cena real possui uma grande variação de contraste que, quando vista pelo olho humano, resulta em detalhes que sensores de câmeras digitais comuns não conseguem capturar. Isso ocorre devido às limitações dos dispositivos para obter e exibir diferentes valores de cor. Imagens HDR (High Dynamic Range), por sua vez, são representações que conseguem reproduzir essa amplitude de valores. Para gerar e exibir imagens HDR, diante das limitações dos dispositivos, é necessário trabalhar em um domínio de menor alcance, com imagens LDR (Low Dynamic Range). Os algoritmos que mapeiam os valores entre os domínios são chamadas de operadores de tone-mapping. Apenas a aplicação de tone-mapping não gera resultados de alta qualidade, sendo necessárias técnicas de redução de ruídos e decomposição de imagem para tal. Essas técnicas implicam um alto custo computacional e demandam muito tempo quando executados na CPU. Por outro lado, o processamento na GPU oferece um paralelismo natural, por viabilizar operações a serem aplicadas a todos os pixels, simultaneamente. Uma das maneiras de programar essas operações na GPU é através do uso de shaders gráficos, alterando a forma que os pixels da imagem são reproduzidos. Com o constante crescimento da utilização de dispositivos móveis, um tema recorrente é o desempenho e a viabilidade de aplicações de alta performance em tais dispositivos, que atualmente, na maioria dos casos, possuem em sua arquitetura uma GPU programável. Nesse trabalho, desenvolvemos shaders gráficos OpenGL para processar operações de tonemapping, bem como a decomposição multiescala de imagens utilizando filtros não lineares importantes e modernos, a fim de preservar a maioria dos detalhes das imagens. Isso gera resultados mais nítidos quando comparados com técnicas que aplicam os operadores de tone-mapping diretamente nas imagens. Por outro lado, o processamento em GPU representa uma enorme melhoria de velocidade em relação ao processamento da CPU. A aplicação que desenvolvemos é multiplataforma para que ele possa ser executado em desktops e dispositivos móveis. Utilizamos a aplicação para avaliar o desempenho de diferentes operadores de tone-mapping e diferentes filtros de imagem não lineares para executar a decomposição de imagens em vários níveis.