2.
Interface tangível é o que possibilita a interação
entre agentes através de um objeto. Exemplos:
mouse, teclado, touchscreen, volante, acelerador e
etc;
Computação visual é a ciência que estuda a
propriedade da visão de extrair informações de
imagens, através da computação;
4. Atualmente em sua versão 1.4 o reacTIVision é um
framework multi-plataforma de computação
visual lançado com licença open-source.
* Foi criado para ser o sensor fundamental da
reacTable, um instrumento musical eletrônico.
* O framework é composto por outros softwares
também licenciados open-source.
5.
Núcleo reacTIVision: provê os algoritmos de
reconhecimento de padrão de imagem e também a
estrutura para que os demais projetos que o compõe
funcionem de forma modular;
PortVideo: um framework multi-plataforma de acesso
a câmeras desenvolvido especificamente para atender as
necessidades do reacTIVision;
TUIO: um framework que provê um protocolo comum
e uma API para mesas multi-toque;
6.
O módulo mais importante;
Capacidade de rastrear objetos;
Alguns algorítmos de detecção: Amoeba,
Classic, D-Touch e Finger.
8.
Responsável pela funcionalidade visual do
reacTIVision;
Provê API de vídeo;
9.
É o responsável pela comunicação do
reacTIVision;
Provê API para rastrear os objetos em tempo real;
Possui implementação nas mais comuns
tecnologias;
10. Para construir um cliente reacTIVision usando
Java será necessário:
Fazer o download do reacTIVision (Linux, Windows
e OSX)
Imprimir uma folha com fiduciais
Baixar o arquivo jar com a biblioteca de classes
necessárias a implementação do cliente.
Todos os itens podem ser obtidos em
http://reactivision.sourceforge.net/
11. Conforme dito anteriormente a tecnologia
empregada no exemplo será Java, para tanto você
deverá criar um projeto no ambiente de
desenvolvimento que você utiliza e importar a
biblioteca libTUIO.jar que pode ser encontrada no
site do reacTIVision sob o nome TUIO_JAVA.zip,
o arquivo trás também diversos exemplos de
utilização do mesmo.
12. Para implementar uma aplicação que funcione
junto com o reacTIVision você precisará criar um
listener das mensagens TUIO enviadas pelo
reacTIVision, a fim de interpretá-las e utiliza-las
como parâmetros de entrada para o seu software.
Para tanto crie uma classe que implemente a
interface TuioListener, para satisfazer o contrato
da interface você precisará implementar alguns
métodos, tais métodos são os responsáveis por
abstrair as mensagens TUIO em
objetos/propriedades Java.
13. Repare que recebemos um TuioObject como
argumento dos métodos implementados, tal objeto
possui uma série de métodos e propriedades que
descrevem o estado do objeto. Portanto podemos
assumir que cada método em analogia seria um
evento disparado para o seu software através da
interface e você possui em tempo de execução o
atual estado do agente que o disparou, o objeto.
14. O cliente é quem realmente “lê” as mensagens
enviadas pelo reacTIVision, cria o objeto
TuioObject e chama o método correto para cada
determinado “evento”, para tanto devemos criar
uma nova instância de TuioClient especificando
para seu construtor a porta em que ele deve ouvir,
a porta padrão TUIO é a 3333.
15. Após criada a instância do cliente você deverá
passar uma instância da classe que implementa
TuioListener que você implementou
anteriormente para o método addTuioListener(..)
Após adicionar a instância da classe você poderá
chamar connect() de TuioClient e observar o
resultado a partir dos eventos disparados pela
interface.
16. Durante esta apresentação foi mostrado alguns
conceitos sobre interfaces tangíveis através da
computação visual e foi exemplificado a sua
utilização através de uma ferramenta open-source,
o software criado como exemplo não explorou
todas as possíveis funcionalidades porém caso
haja interesse me coloco a disposição. Todo
material incluindo este será disponibilizado no site
www.jmotta.com