segunda-feira, 27 de junho de 2011

Exploração de Recursos _ WebCam

Depois de tudo resolvido comecei a explorar com mais calma o código relativo ao “Bubble_Game” do tutorial do Andy Best. 

Substituindo alguns parâmetros numa das linhas consegui que as bolhas aparecessem fixas e aleatoriamente no palco. Faltava arrastar as bolhas ao invés de estas serem destruídas aquando do movimento.

Pesquisando sobre como poderia transformar o “remove” da imagem no arrastamento da mesma consoante a direcção do movimento, descobri o exemplo também de Andy Best ,“Particle Engine + Optical Flow”. Foi necessário instalar a livraria “sms” e “JMyron”. A “OpenGL” já estava previamente instalada. Ao correr o Processing surgiu mais um erro depois daqueles relativos à falta de livrarias, nomeadamente, “UnsatisfiedLinkError: C:\processing-1.2.1\libraries\JMyron\library\JMyron.dll: Can't find dependent libraries” que foi resolvido com a cópia dos ficheiros “DSVL.dll” e ” myron_ezcam.dll” relativos à livraria “JMyron” para o System32. O ultimo erro estava presente na linha de código “int[] vals = Unimotion.getSMSArray();” e acontecia devido a falta da livraria “Unimotion” disponível apenas para MACO´X, sendo mencionado no fórum de discussão que apagando apenas as linhas de código relativas a essa livraria, relacionada com a simulação de gravidade, o exemplo correria normalmente em ambiente Windows. E assim fiz.

Ao pesquisar qualquer tipo de informação que ajuda-se na compreensão do código relativo a este exemplo, para modificar consoante as necessidades do projecto, encontrei o exemplo “Image to Particle System”. Ao explora-lo, apesar de a acção ser desencadeada pelo movimento do rato, pensei que ao conjugá-lo com o exemplo anterior, estaria a usufruir de ambas as potencialidades criando o efeito pretendido.

Começou então a fase de compreensão do código dos dois exemplos. No exemplo de Andy Best consegui substituir as letras (char) por uma elipse. Mesmo depois de excluir a gravidade aplicada ao objecto e de controlar a velocidade e a interacção conforme o pretendido, a elipse começava sempre no mesmo espaço do palco e a sua posição estava em constante deslocação. Os atributos que definiam essa posição eram o loc.x e loc.y sendo que a substituição deste anulava por completo a relação entre o movimento e o objecto. Neste processo de exploração surgiu um erro inesperado relacionado com os ficheiros *.dll da livraria jmyron, que não se conseguia resolver. 

Desta forma foi necessária a formatação do computador. Mantendo o sistema Windows 7 de 64 bits eram constantes os problemas relacionados com as drivers do computador. Assim mudei o sistema para Windows Xp Profissional de 32bits à experiência

terça-feira, 31 de maio de 2011

"Image to Particle System"

“Image to Particle System” foi desenvolvido em 2011 e divulgado em Março desse mesmo ano por Powder.

O projecto consiste em analisar uma imagem convertendo cada pixel numa partícula da mesma cor. Essas partículas afastam-se do ângulo de acção do rato sendo que as partículas mais próximas diminuem e às outras é aplicado um blur que aumenta de intensidade quanto maior for a distância do rato. Quando o rato sai do posicionamento inicial das partículas, estas voltam a sua posição inicial.

Para experimentar o demo siga o link.

segunda-feira, 30 de maio de 2011

Exploração de Recursos _ EyeCam e WebCam

Com pouco tempo para chegar a um produto final, e com os problemas encontrados na utilização da Kinect, decidi explorar outras alternativas como a EyeCam da Ps3 ou uma WebCam comum. 

Primeiro passo, instalar a EyeCam no meu computador. Recorrendo á driver Cl-Eye-Driver-4.0.2.1017 disponível no Code Laboratories, a câmara foi instalada com sucesso. 

Posto isto, avancei para a exploração de um tutorial acerca do Processing e do OpenCv de Andy Best. Como já possuía o Processing (versão 1.5), corri o exemplo e os erros começaram a surgir:
“The Package ‘hypermedia’ does not existe. You might be missing a library” (erro relativo á linha de código “import hypermedia.video.*;”). Seria necessário instalar o OpenCv no meu computador. Instalei a versão 2.2.0 e descompactei a livraria OpenCv para as livrarias do Processing.

• Correndo o exemplo, surge um novo erro, “UnsatisfiedLinkError: hypermedia.video.OpenCV.capture(III)V” (erro relativo á linha de código “opencv.capture( 640, 480 )”). Segundo os comentários esta linha seria apenas para definir o tamanho da captura da câmara pré-definida. Consultando alguns fóruns de discussão sobre o tema, era mencionado que a versão 1.0 do OpenCV seria mais adequada para sistema Windows, por isso substitui a versão previamente instalada pela versão em questão.

O erro mantinha-se. Depois de aprofundar a pesquisa sobre o mesmo descobri que o ficheiro “OpenCv.dll” presente na livraria acrescentada nas livrarias do Processing, assim como todos os ficheiros da mesma extensão presentes na pasta bin do OpenCV instalado, deveriam ser copiados para a pasta system32.

Este processo foi repetido em três máquinas distintas, assim como a instalação do Cmake 2.8.4 (um pré-requisito). Em sistema Windows 7 de 64bits (ASUS) e com uma WebCam comum o exemplo funciona correctamente, ao contrário da performance em sistema Windows 7 de 64bits (ACER) onde o segundo erro não é resolvido. Já em sistema Windows Vista de 32bits, os erros anteriormente descritos são resolvidos. No entanto, recorrendo a uma WebCam comum apenas se vêem as bolhas a cair e o background, que deveria revelar a imagem captada pela WebCam, apresenta-se totalmente negro, não havendo qualquer tipo de interacção com as bolhas. Recorrendo à EyeCam não existe qualquer tipo de reacção por parte do Processing. Sendo o processo igual para ambos, não se compreende a disparidade de resultados.

Por fim descobri que apesar de a pasta “System 32” mostrar os ficheiros *.dll os mesmos não estavam a ser copiados para essa pasta daí não funcionar em Windows 7 de 64bits (ACER). Depois de descoberto e resolvido o problema, consegui explorar o exemplo apenas com a WebCam pois assim que a EyeCam era conectada com o computador, o exemplo deixava de funcionar mesmo desactivando a WebCam predefinida do computador. Para correr o exemplo novamente com a WebCam, depois de desconectar a EyeCam, era mesmo assim necessário reiniciar o sistema.

Tendo em conta todos estes acontecimentos decidi explorar os exemplos usufruindo apenas da WebCam do meu computador.

"Particle Engine + Optical Flow"

Este é um projecto também desenvolvido por Andy Best em 2008 .

No início ao correr a aplicação apenas é adicionada uma letra, sendo que se clicar com o rato outras serão adicionadas. Essa letra surge sempre mesma posição assemelhando-se e possui gravidade deslocando-se pelo palco, as outras surgem na posição do rato. Quando o movimento ocorre na área de influência dessa letra, movimento esse detectado através da WebCam, a letra é deslocada consoante a direcção e velocidade do movimento.

Tendo em conta que o pretendido era arrastar um qualquer objecto consoante a direcção do movimento talvez este exemplo resolva o problema.

"Bubbles-Game"

“Bubbles_Game” foi desenvolvido por Andy Best em 2009, um tutorial que relaciona o Processing, a livraria OpenCv, a WebCam e o reconhecimento de movimento.

Comparando a frame actual e a frame anterior, analisando a mudança entre pixéis brancos e pretos, o código permite que seja detectado qualquer movimento através da WebCam. Esse movimento, por sua vez, resulta no desaparecimento das bolhas em questão, sendo essas bolhas imagens.

Fazendo algumas alterações, este exemplo poderia ajudar-me na construção dos meus palcos se consegui-se alterar o posicionamento das bolhas consoante a direcção do movimento efectuado arrastando-as em vez de as remover. 

quinta-feira, 26 de maio de 2011

"MultiMultiTouchTouch"

O "Polyphonic Theremin" foi desenvolvido pela Moog Music Company recorrendo á tecnologia IDIOT (Isso Directional Inductive Oscillator Technology) em que apenas com a movimentação dos gestos se conseguem controlar vários sons. Consoante distância e a posição dos dedos é tocado um diferente som, ou uma diferente tonalidade sendo possível controlar cinco vozes distintas ao mesmo tempo. 

À semelhança do que acontece no projecto da Moog, sendo ele um embuste ou não, Tim Thompson, um artista, inventor e também músico, criou o seu próprio instrumento em Abril de 2011 ao qual baptizou de “MultiMultiTouchTouch”. Essa criação foi gerada em Windows 7 com a utilização da Kinect, das drivers libfreenect, do ambiente Cinder que por sua vez se pode conjugar com o Processing ou com o Openframeworks, o OpenCv, OSC, Python e a sua própria linguagem de programação intitulada KeyKit

O que acontece é que é detectada a distância a que as mãos ou dedos se encontram da estrutura de maneira, ou seja, é feita uma leitura de profundidade. Assim, quando as mãos se encontram dentro de um dos quatro quadrantes da estrutura é possível reproduzir-se vários sons apenas com o movimento. Esses sons variam não só consoante o quadrante com que se interage mas também com a posição das mãos ou dos dedos nesse mesmo quadrante. Existe ainda a vantagem de ser possível interagir mais do que uma pessoa.

Além desta primeira versão ter sofrido algumas alterações, ainda foi/ desenvolvida uma segunda versão do instrumento. ver aqui

terça-feira, 24 de maio de 2011

"Shadowgram"

“Shadowgram” foi um projecto desenvolvido por David Stolarsky e apresentado no Design Touch Tokyo em Novembro de 2010 recorrendo a uma câmera, ao OpenFrameworks e a uma plotter de corte

Os espectadores faziam uma pose que era imediatamente processada e cortada pela plotter, sendo o suporte vinil. Todas as silhuetas eram colocadas num painel pelos intervenientes sendo possível a colocação de uma mensagem. Desta forma os intervenientes criaram a sua individualidade rodeando-a de expressões.

sábado, 14 de maio de 2011

"Tilted Arc"

“Tilted Arc” foi uma escultura de Richard Serra, desenvolvida em 1981 para a praça federal de Nova Iorque. Consiste num muro em aço de 120 metros de comprimento e 12 de altura que se situa no centro da praça.

Esta intervenção gerou vários conflitos desde o momento em que foi construída! Foram abertos vários inquéritos com vista na recolocação escultura que, segundo os queixosos, interferia com a circulação dos trabalhadores pois a travessia da praça implicava contornar este muro. Segundo o Richard Serra era mesmo esse o objectivo, "o observador dá-se conta de si próprio e do seu movimento pela praça. Á medida que se move, a escultura muda. A contracção e expansão da escultura resultam do movimento do observador. Passo a passo, não só a percepção da escultura muda como também todo o ambiente envolvente." Pode-se concluir que o observador, ou seja, o frequentador da praça, possui um papel relevante no que define a obra. 

A sua recolocação resultaria na destruição da mesma, sendo que se chegasse a esse ponto, Richard Serra retiraria o seu nome da obra. No final havia mais apoiantes do que queixosos e a permanência do muro foi assegurada por votos. No entanto na noite de 15 de Março de 1989, os trabalhadores da praça uniram-se e desfizeram a escultura levando os seus pedaços para a sucata.

quinta-feira, 28 de abril de 2011

"Be Your Own Souvenir"

“Be your own souvenir” foi uma instalação realizada em Janeiro de 2011 pelo grupo blablabLAB, que durou duas semanas em Barcelona.

Os turistas e habitantes de “La Rampa” e de toda a cidade de Barcelona, foram convidados a tornaram-se estátuas transformando a sua performance na sua própria recordação da cidade. O principal objectivo consiste na troca de papéis entre a audiência onde o espectador se torna performer, o artista em turista e o observador em objecto. Torna-se evidente a questão da partilha de autoria e de criatividade sendo que o observador desempenha um papel importante no objectivo e execução da obra.

Foram utlizadas três Kinect´s para o rastreamento do corpo a 360 graus, o OpenFrameworks e software OpenKinect.

quarta-feira, 27 de abril de 2011

Exploração de Recursos _ Kinect

Tendo em conta as os recursos técnicos que mencionem como recursos a serem explorados comecei por instalar a Kinect no meu computador que possui sistema Windows 7 de 64 bits. Á primeira tentativa, tendo em conta os passos e as actualizações de Vangos Pterneas divulgados a 8 de Fevereiro de 2011 no the code project” e no seu blog a 20 de Fevereiro do mesmo ano, com a utilização das drivers da PrimeSense. Depois de confirmar que não possui outra qualquer driver instalada no meu computador segui os passos do freelancer. No entanto os demos/exemplos que faziam parte do OpeNNi e do Nite não funcionaram.
Experimentei trocar a driver para CLNUI e consegui visualizar a imagem real e a respectiva imagem em profundidade, por isso, insisti nas drivers PrimeSense
Resolvi repetir o processo num computador de sistema Windows Vista de 32 bits, com as versões do Openni, NITE, e do Sensor, que foram actualizadas entretanto, mas ao confirmar no “Gestor de Dispositivos”, reparei que a driver não era reconhecida mesmo seguindo os mesmos passos.
Substituindo as versões indicadas por versões estáveis, noutro computador também com Windows 7 de 64bits, consegui abrir um painel que mostrava a imagem real e imagem em profundidade captadas pela Kinect. Outro dos painéis dava o feedback da Kinect em relação ao numero de users, ou seja o numero de pessoas que se encontravam em frente à mesma, sendo que por vezes era mostrada uma mensagem indicando a falha de calibração.
Mesmo assim tentei liga-la ao exemplo do Tiago Serra e da Sensebloom via Processing. Explorando o exemplo "Stickmanetic" e depois de corrigir algumas linhas de código e “instalar” as livrarias pedidas estaria tudo a postos para interagir … pensei eu! Nem sinal do movimento do user, apenas caem as partículas. Ao correr o outro exemplo “MotionCapture3D” surge apenas uma janela branca…
Com o relógio em tic-tac decidi explorar o Eye Toy da PS3 … até ver! :D

sábado, 16 de abril de 2011

“Dancing With Swarming Particles”

“Dancing With Swarming Particles” foi uma instalação interactiva e performativa realizado em Março de 2011 por Rodrigo Carvalho com o apoio da cordenadora Anna Mura e a performer Tamar Regev em Barcelona.

O corpo virtual é constituído por partículas que vagueiam pela interface sendo que só quando existe movimento por parte do corpo do interveniente é que essas partículas são atraídas para o corpo virtual acompanhando depois os restantes gestos.

É um projecto que utiliza ferramentas que poderei utilizar no meu projecto visto que os recursos utilizados foram a Kinect e o projecto ”XBox Kinect OSCeleton” de Tiago Serra e a Sensebloom. Quanto ao conceito centra-se na relação entre o interveniente, e a interface gráfica proposta inserindo esse interveniente na própria produção tornando-o co-autor.

quarta-feira, 13 de abril de 2011

“Anthropometries"

“Anthropometries” é um conjunto de obras de Yves Klein dos anos 60. O Artista contava com a participação de mulheres modelos que cobriam o seu corpo de tinta e “imprimiam-se” a si próprias nas enormes telas.
Yves Klein faz dos próprios modelos, pincéis vivos que devem actuar sobre a tela, não é mais a representação do modelo, mas o corpo como sujeito, como parte integrante do trabalho.” (Azevedo, Oliveira, & Lardosa, 2008) ou seja, os intervenientes fazem parte da obra, os modelos interagiam com ela criando silhuetas na tela branca e assim, desempenharam um papel importante na construção neste conjunto de obras de Yves Klein tendo também responsabilidade sob o produto final, tornando-se deste modo co-autores da obra.

terça-feira, 29 de março de 2011

"Galápagos"

Galápagos foi uma instalação interactiva criada por Karl Sims em 1997 e esteve em exposição em Tokio desde esse ano até 2000 e no Museu “DeCordova” em Lincoln, Massachussetts. Fez parte das iniciativas “Make Your Move: Interactive Computer Art” e do “Boston Cyberarts Festival 1999”.

A instalação era constituída por vários monitores que possuíam, cada um deles, um ser animado 3D e ligado ao respectivo sensor activado com os pés. O espectador ao ver as formas presentes em cada monitor escolhia o que mais lhe agradava esteticamente permanecendo em cima do sensor, possibilitando assim a mutação desse organismo e a sua reprodução. Se um organismo não for considerado interessante pelo observador é removido e é dado lugar a uma nova vida virtual.

Assim o observador, torna-se parte integrante da instalação que só obtém o seu propósito quando essa interacção é concretizada. Apesar de Karl Sims ter desenvolvido o software que permite esta criação genética virtual e estes gráficos, o participante é que decide a qualidade estética que o conjunto poderá assumir ao escolher os organismos mais interessantes.

“Autómato Disserto”

“Autómato Disserto” foi um projecto realizado em 2008 por Miguel Cunha e Nelson Zagalo. 

Centrou-se na construção de uma instalação interactiva a qual era constituída por três manequins iguais, além do material técnico necessário. A instalação permite a construção da narrativa pelo espectador que ao circular pelo espaço desperta determinados acontecimentos, ou seja, existe uma relação causa/efeito entre o participante e o espaço. Quando o espectador se encontra a uma  certa distância dos manequins, estes emitem o mesmo discurso em sintonia. A certa altura este “inicio de narrativa”, este ponto de partida começa a ser repetitivo. Cabe ao espectador a decisão de continuar ou não a ouvir o discurso. Se continuar a circular pelo espaço aproximando-se de um determinado manequim, o participante está a escolher uma continuação do discurso, sendo assim construída uma narrativa interactiva, ou seja, o participante ao se aproximar de um manequim está escolher o discurso que pretende ouvir, num ponto em que a homogeneidade do discurso entre os três é quebrada. Pelas suas escolhas o participante transmite a sua própria mensagem.

Se o participante chegar perto do último manequim, no seu discurso este convida o participante a colocar a máscara branca criando a sua imagem que será projectada. Com isto o participante assume características semelhantes à dos manequins criando-se a perda de identidade e a construção de uma de igualdade, uma massificação.

segunda-feira, 7 de março de 2011

“XBox Kinect OSCeleton”

Tiago Serra e a Sensebloom criaram o  XBox Kinect OSCeleton, um sistema de captação de movimento. Consiste em definir pontos de referência, ou seja, criar um esqueleto que associa o movimento do corpo humano a um qualquer elemento virtual, possibilitando assim a criação de uma animação 2D ou 3D fiel aos gestos e movimentos captados.

Este projecto foi um dos vencedores de um concurso em que um dos objectivos era a criação de um demo/aplicação open source que fizesse uso da Kinect.
 
Assim, a mais-valia para o meu projecto é que existe a possibilidade de usar esta ferramenta, recorrendo às livrarias em causa e adapta-la conforme as necessidades do meu projecto.

domingo, 6 de março de 2011

"Interactive Puppet Prototype with Xbox Kinect"


Esta foi uma experiência realizada por Theo Watson e Emily Gobeille em Novembro do ano passado (2010). Os recursos utilizados foram o OpenFrameworks e a Kinect recorrendo a drivers de libfreenect e ofxKinect cedidas pela comunidade OpenKinect.

Este foi um dos primeiros exemplos que encontrei que ilustrasse o que pode ser feito conjugando estas duas ferramentas e desde então, comecei a interessar-me e a descobrir potencialidades para a concepção do meu projecto. 

O protótipo cria o movimento de uma ave tendo como base um braço humano. Cada movimento físico associa-se a um movimento virtual. Por exemplo, é possível abrir o bico da ave com o simples movimento abrir/fechar da mão, assim como o movimento rotacional da mão para cima/baixo corresponde ao levantar/baixar da cabeça da ave. 

Basicamente criaram-se pontos de ligação entre “um” objecto virtual e “um objecto” físico de forma a moverem-se em perfeita sintonia. Esta será uma mais-valia para o meu projecto no que diz respeito ao paralelismo necessário entre o ambiente físico e o ambiente virtual.

Para ver o vídeo siga o link.

sexta-feira, 4 de março de 2011

Lançamento de Kinect em Munique 2010


No dia 9 de Novembro de 2010, para marcar o lançamento da Kinect em Munich, Evan Grant Seeper intervêm no Stachus gate. Essa intervenção consistiu em criar uma instalação artística interactiva em que foi projectado um ambiente virtual na fachada do Stachus gate na Karlspratz, uma praça da cidade de Munique.

A fachada foi modelada virtualmente adquirindo diversas propriedades, incluindo diversos elementos fluidos e partículas, com as quais as pessoas podiam interagir livremente sem serem necessários comandos ou outros controladores apenas com os seus movimentos. Essa interacção consistiu em deslocar, manipular e esmagar elementos e até manipular a sua própria silhueta que a certa altura era projectada na fachada, assumindo diversas características. 

O objectivo era levar as pessoas a desviarem-se do seu dia-a-dia e do stress a que muitas vezes estão sujeitas, envolvendo-as num ambiente de diversão e descontracção.

Para assistir ao vídeo siga o link.

quinta-feira, 3 de março de 2011





“Fabricate Yourself” é um projecto muito recente de Karl D.D. Willis que foi apresentado no Funchal (Madeira) entre 23 e 24 de Janeiro deste ano, durante a conferência “Tangible, Embedded and Embodied Interaction” (TEI).

O projecto consiste em criar modelos 3D a partir de uma pose criada e escolhida pelo participante. Essa posse é escolhida em tempo real sendo que é recolhida e processada, através da conjugação do Openframeworks com a Kinect.

Para ser possível criar estes pequenos modelos, as poses foram processadas com uma resolução de imagem de ¼ da resolução máxima que a Kinect alcança, ou seja, esta resolução está directamente relacionada com o tamanho de impressão do modelo que neste caso e de aproximadamente 3x3cm. 

Estes modelos 3D, criados pela Dimension uPrint, podem ser ligados entre si como um puzzle, criando uma personalização de um ser, um misto de auto-retratos ou até uma cadeia de emoções.

Para ver mais fotos e visualizar o vídeo clique aqui


Estado da Arte

Vou deixando aqui alguns exemplos sobre o que está e o que tem sido feito tendo em conta os objectivos do meu projecto. 
Estes exemplos não expressam necessariamente um todo, uma unidade. Podem simplesmente possuir certas características ou pormenores que de algum modo fundamentam/auxiliam o meu projecto.

terça-feira, 1 de março de 2011

Sinopse

Este projecto surge no âmbito da unidade curricular "Projecto de Artes e Multimédia" do 3º ano do curso de "Artes Plásticas e Multimédia" da "Escola Superior de Educação de Viseu".
 
O principal objectivo do projecto é criar um espaço onde exista impreterivelmente uma relação entre esse e o espectador proporcionando a estimulação dos seus sentidos, da sua criatividade e capacidade de resposta a desafios propostos, em grande, parte pela possibilidade de interacção inerente não só com o espaço físico mas também com o espaço virtual.
O espectador dá o seu contributo desempenhando um papel de criador, embora esteja condicionado pela versatilidade que os espaços lhe oferecem. Deste modo o produto não transmite a expressão do criador mas sim de vários anónimos alheios ao projecto sendo que o grafismo do ambiente baseia-se no meu traço e na expressão pessoal do desenho a grafite.

                A instalação será baseada numa história/narrativa e no conceito de BD (banda desenhada). Os espectadores serão convidados a participar e interagir partindo da escolha de um excerto da história, excerto esse que devem representar conjugando a sua percepção e compreensão da história e interacção com elementos físicos e virtuais. Depois de todos os excertos criados cada um vai corresponder a uma vinheta da BD, criando uma banda desenhada dinâmica que reúne várias interpretações/personalizações!

Pretendo aperfeiçoar e recolher conhecimentos acerca dos softwares Open Source tendo em conta as possibilidades que estes nos oferecem, explorar linguagens de programação e articular estas duas vertentes. O software a ser explorado deverá permitir conjugar vários componentes multimédia, para a implementação prática do processo de carácter criativo.

No que diz respeito à captação de vídeo, não se pretende usar uma câmara de vídeo comum mas sim uma ferramenta que capte e acompanhe os movimentos por parte do espectador e que permita um grau de interacção e de realismo sem recorrer a comandos ou outros periféricos.

Desenvolver a capacidade de sincronizar tarefas distintas desde a criação da história à programação e ao grafismo sem que existam “pontas soltas” de forma a conceber um todo coerente é outro dos objectivos deste projecto assim como partilhar o desenvolvimento e progressos desde a fase inicial/exploratória até ao produto final.

Assim, pretendo criar uma instalação interactiva que responda á questão “De que forma uma narrativa pode ser contada/construída tendo como base interpretações de vários indivíduos?” explorando desta forma duas áreas divergentes mas com o objectivo de se complementarem.