Arquivo da tag: solarização

Solarizações • Maragram Generator

Para exemplificar o funcionamento da solarização digital, dois exemplos de resultados, um de cada lado da imagem original. À esquerda, um exemplo de altas luzes invertidas e à direita, um exemplo de sombras invertidas.

Mas porque parar ai? Porque não passar a imagem mais uma vez pelo programa e criar mais ruídos interessantes?

E minha preferida até agora:

Enquanto isso, adicionei o app ao Play Store e abri uma sessão de testes. Foi horrível. As pessoas conseguiam baixar o app e instalar, mas ele não abria… A curva de aprendizado ainda aponta para cima, mais e mais.

Finalmente cheguei à versão 1.0.3 que abria sem muitos problemas na maioria dos dispositivos e estava a funcionar. Passou pelos pre-launch tests da PlayStore (que eu só descobri que existiam depois do fiasco da 1.0.0). Aprendi um tanto sobre os mínimos detalhes do arquivo Android Manifest e do arquivo Gradle Build… Aprendi sobre coisas que não pareciam importante no momento em que se cria o arquivo para trabalhar num projeto, no nome que se dá para isso ou aquilo, e de como isso afeta o bundle que é construído no final.

Alguns amigos finalmente conseguiram instalar e rodar o app no seus dispositivos Android e andaram usando a palavra “divertido” para definir o app. Dei o projeto como bem sucedido e concluído – consegui escrever um código novo, num pacote que ainda não tinha um determinado método, consegui implementar isso num app e publicar o app de maneira limitada e segura e ver ele funcionar nos dispositivos dessas pessoas.

Quando escrevi em Janeiro sobre o curso de Python que eu estava começando (e que consegui terminar!!!) eu ainda não imaginava por onde ia andar. Acabei me interessando pelo Flutter também e isso me levou ao Dart. A Angela Yu, professora do curso de Python no Udemy, sempre lembra que faz parte de ser programador a constante busca por exemplos e soluções pela internet. Ela defende que é impossível aprender tudo pela páginas de documentação. Essa última semana é prova disso e de que umas boas buscas pelo StackOverflow conseguem resolver a maioria dos problemas que nos aparecem.

Acho que ainda vou atualizar o código para incluir umas questões de acessibilidade, que o app deveria ter. Ajeitar uns pequenos detalhes. Tudo está disponível no meu Github para quem quiser avançar com a coisa.

Se você quiser experimentar no seu dispositivo Android, me manda uma mensagem com o email da sua conta da Play Store, eu libero a conta para o teste e devolvo um link para o app. Por enquanto a distribuição da app vai permanecer assim.

Dart Image Library • solarize.dart

Durante muito tempo eu sonhei em fazer coisas como essas. No entanto, a vida foi me levando por outros caminhos e quando eu percebi, o tempo tinha passado. Não vou pensar no tempo perdido, afinal…

Quando comecei a aprender Python no fim de 2023, logo me dei conta de que seria necessário estabelecer alguma meta/ objetivo para esse aprendizado. Comecei a listar possibilidades dentro da fotografia. O conceito de solarização digital sempre me atraiu. Lembrei que é uma operação matemática simples, que mesmo eu conseguia imaginar ou formular.

Então na medida em que eu conhecia mais da programação, já ia pesquisando bibliotecas e pacotes de processamento de imagem. Fui tentando aprender o que era possível, no começo a partir do Python. Fiz uns scripts usando a biblioteca Pillow, depois usando Kornia e OpenCV. O que eu queria mesmo era fazer um app para ter no meu smartphone. Isso acabou me levando a tentar aprender outras coisas ao mesmo tempo. Já falei nisso aqui antes…

O caminho que eu escolhi na programação para dispositivos móveis é o do Flutter. Essa linguagem é baseada numa outra linguagem chamada Dart e herda dela seus pacotes. Existe um pacote de processamento de imagem para Dart e estudei isso por uns tempos. O pacote tem código aberto e as implementações estão no Github. Implementações nesse caso se referem ao código interno dos filtros e Dart é relativamente fácil de ler para quem lê inglês.

Fiz um fork. Estudei a implementação do filtro Invert e do filtro Normalize e, apesar de ainda não ser um grande craque do Dart, consegui juntar partes de um de do outro. Tirei algumas dúvidas fazendo buscas no StackOverflow. Introduzi minhas fórmulas para solarizar e fiz algo que considero único (já me achando): dei a opção ao usuário de fazer a solarização pelas sombras ou pelas altas luzes. Inspiração veio do Man Ray.

Quando tentei com Pillow, Kornia e OpenCV acabei optando por solarizar e inverter, para conseguir algo parecido com esse efeito. Mas já que eu ia escrever tudo do início, o melhor era já incorporar a opção no código e finalizar com um tapa no contraste para deixar tudo mais interessante.

E sim, Man Ray chama seus fotogramas de rayograms.

Montei uma app simples no Flutter e incorporei o filtro para testar meu código. Tive que fazer uns ajustes e sofri com o null safety do Dart, mas valeu. A app rodou no meu Xiaomi e fiz versões solarizadas de várias imagens da minha galeria como as que ilustram esse post.

Aqui uma comparação dos dois modos de operação do filtro: sombras (esq) e altas luzes (dir). Depois de ter certeza que o código funcionava e gerava os resultados esperados fiz um pull request. Um dos responsáveis pelo pacote aceitou minha adição.

Olho para isso, assim, disponível para quem quiser usar e penso em como foi tão fácil passar pelas partes mais difíceis, não sei porque eu demorei tanto para começar essas coisas.

De micreiro a programador num estalo ou dois…

Aula • Solarização

O Renato me mandou uns scans dos nossos exercícios no workshop de Solarização de Negativos que aconteceu nesse último Fevereiro no Pompéia. Aqui um exemplo do Delta 100 da Ilford,a foto referência e depois a foto solarizada.

Nesse exemplo o filme que é ISO 100 havia sido exposto com EI 160. Revelamos em Dektol já usado bem envelhecido (para tentar evitar a Hidroquinona) e lá pelo meio do caminho da revelação acendemos a luz de um ampliador durante 1 segundo.

Solarização

Nas minhas buscas sobre a invenção do ampliador fotográfico, procurando por histórias de um cara chamado Draper, que foi quem primeiro descreveu a ampliação de uma fotografia, segundo um website sobre a história da fotografia, acabei esbarrando em uma preciosidade. Um livro sobre solarização disponível na rede: Solarization Desmystified, de William Jolly. Um artigo interessante de Ed Buffaloe.