A
obra DEEP ALICE traz como desafio técnico a geração em tempo real de imagens
por Inteligência Artificial a partir de imagens produzidas pelos interatores durante
a Exposição/Festival. Além das imagens que servem como input inicial, também
temos prompts que são gerados automaticamente, de maneira coordenada com
as imagens, a partir dos livros "Alice no País das Maravilhas" e "Alice Através do Espelho" de Lewis Carrol. Esse fluxo de processamento
de informação que passa pela composição em tempo real das imagens selecionadas
pelos interatores e pela geração automática de prompts mobiliza uma
orquestração de diversos programas/plataformas de programação. Como cérebro que
controla todo o andamento da interação, além da captura das imagens de vídeo,
temos um software programado em MAX/MSP. Esse software (uma coleção de módulos com
diversas funções – ver tabela abaixo) produz e envia os prompts gerados automaticamente, além de transmitir a imagem capturada para outra
plataforma de programação chamada Touch Designer (TD) que serve, nesse caso,
como interface para o StreamDiffusion (ST), responsável pela geração de imagens
por IA. O software programado em MAX/MSP controla a variação de parâmetros da
geração de imagens de IA ao enviá-los para o TD. O TD, por sua vez, encaminha
esses parâmetros para o StreamDiffusion. Nos bastidores, os 2 softwares
(MAX/MSP e TD) também trocam as imagens geradas por IA: elas são geradas no TD
e enviadas para o MAX/MSP para que nele seja realizada uma “pós-produção” em tempo
real (ajustes na imagem, fusões entre imagens, sobreposição de texto/prompts).
Além do processamento das imagens, o software MAX/MSP se comunica com 2
aplicativos programados em Python que, por sua vez, se comunicam com a
Plataforma OpenAI. Um deles traduz os prompts produzidos pelo MAX/MSP do inglês
para o português a cada geração de prompt e o outro promove a inversão dos
caracteres dos prompts na fase mais profunda do “sonho”. Cabe ressaltar que os
programas escritos em Python foram programados com a assistência de IA
(ChatGPT).
Módulo Touch Designer: recebe as imagens de vídeo do MAX/MSP e as processa a partir dos prompts do módulo "Deep Alice PROMP2"
Módulo MAX/MSP "DeepAlice MAESTRO": realiza todo o controle das dinâmicas da interação e variação de estados da obra. Envia e recebe parâmteros dos outros módulos a partir do protocolo OSC.
Tabela de Estados da Interação:
Estados |
Ação do usuário |
Softwares/operação |
Resultado/imagem |
1 - Inicial |
Recortes disponíveis fora do campo da CAM1. Superfície verde da mesa 1 no campo de visão da da câmera 1. |
O módulo "DeepAlice CAPTURA" do MAX/MSP captura de CAM1; transmite imagem ajustada para Touch Designer (via servidor SPOUT); Touch Designer realiza Chroma Key da cor verde |
Resultado do Chroma Key nas 2 telas |
2 - Composição inicial |
O interator seleciona recortes dos personagens e recortes de papel verde e vermelho. Montagem de uma composição com esses recortes no campo da CAM1 |
O módulo "DeepAlice CAPTURA" do MAX/MSP captura de CAM1; transmite imagem ajustada para Touch Designer (via servidor SPOUT); Touch Designer realiza Chroma Key da cor verde |
Resultado do Chroma Key nas 2 telas |
3 - Movimento da Espiral (durante X segundos) |
O próprio interator inicial ou algum outro se posiciona na mesa 2 e gira a espiral sobre a mesa 2 |
1- O módulo "DeepAlice CAPTURA" do MAX/MSP captura a imagem da CAM2 (sobre a mesa 2) e produz uma transparência gradativa ao identificar o movimento da espiral (via Algorítmo de Computação Visual) 2- o módulo "DeepAlice PROMP1" do MAX/MSP gera randomicamente uma sequência formada por 3 personagens dos 2 livros) 3- Touch Designer inicia a produção da imagem generativa a partir do input da CAM1 e do Prompt gerado pelo MAX/MSP (tanto os prompts quantos os parâmetros trafegam entre MAX/MSP e TouchDesigner a partir do protocolo de rede OSC). O Touch Designer se comunica com o StreamDiffusion (uma variação do Stable Diffusion), enviando os parâmetros e prompts recebidos do MAX/MSP para que o SD gere o stream de vídeo. Depois de gerar a imagem, esta é enviada para o módulo "VIDEO MIXER" do MAX/MSP para a construção da imagem final, acompanhada por legendas (prompts) 4- o módulo "DeepAlice PROMPT1" do MAX/MSP envia para ChatGPT (via código em Python qie se comunica com a API da OpenAI através de OSC) um pedido para tradução do inglês para português do prompt gerado. |
A imagem gerada pelo Touch Designer (a partir do StreamDiffusion é exibida na tela 2 após a dissipação da imagem da mesa 1. As imagens geradas sofrem contínuas transformações alimentadas pelas variações das imagens no vídeo da mesa 1 e da contínua variação de parâmetros e pesos da síntese de imagem por IA. Legenda: na tela 1 a legenda aparece espelhada. Na tela 2, quando a imagem de IA é revelada, esta também aparece. |
4 - Movimento da Espiral (durante X segundos) |
----- |
Alteração do estado anterior: o prompt passa a ser gerado pelo módulo "DeepAlice PROMPT2". Quatro segmentos dos textos dos 2 livros são aleatoriamente selecionados e reagrupados, formando uma nova sentença. |
Imagem: Gerada a partir de prompts mais complexos e sem sentido claro. Legenda: mesmo comportamento do estado anterior |
5 - Movimento da Espiral (durante X segundos) |
- - - - |
O módulo "DeepAlice PROMPT2" gera uma nova sentença sem sentido. O módulo envia para ChatGPT (via código em Python qie se comunica com a API da OpenAI através de OSC) um pedido para inversão das letras da sentença gerada, além da inversão do início/fim da sentença. |
Imagem: Gerada a partir de prompts mais complexos e incompreensíveis para a máquina. Legenda: mesmo comportamento do estado anterior (apresentando o inverso do inverso na TELA 1 e o inverso da sentença na tela 2) |
6 - Parada da Espiral |
Interator para de girar a espiral |
O módulo "Deep Alice VIDEO MIXER" dissipa gradualmente a imagem gerada pelo TD/SD, revelando novamente a imagem original gerada na mesa 1 |
Resultado do Chroma Key da mesa 1volta a ser apresentado nas 2 telas |
Nenhum comentário:
Postar um comentário