Sistemas Multimidia
Informações para alunos da disciplina Sistemas Multimídia, do módulo V do curso de Tecnologia em Análise e Desenvolvimento de Sistemas do IFPI.
Atividades valendo nota:
Homework #1 – processing (data de entrega 16/02/2012)
Baixar, instalar, e implementar um pequeno programa com processing.org. Aprender como fazer:
- linhas
- elipses e círculos
- mudar cor e largura das linhas
- controlar tamanho da janela
Relatar a experiência em um blog
- passo a passo
- fontes
- screenshots
Bonus - usar interatividade
Homework #2 – convolução (data de entrega 01/03/2012)
Implementar segmentacao ou gaussian blur através de convuloção;
Bonus 1 – Interatividade
Bonus 2 – Generalizacao da Operacao e experimentação com outros kernels (Ex. LaPlace)
Bonus 3 – Detecção automática de threshold com histograma
Atividade #3 – composição dinâmica de luzes
Atividade #4 – fotos 3D
Atividade #5: audio pitch (entrega 17/05/2012)
Implementar um detector de pitch (frequência fundamental) do áudio oriúndo do microfone. Pode-se usar uma FFT (transformada rápida de fourier) para converter o sinal em frequência, e assim procurar o pico.
Usar essa informação para criar uma representação da nota sendo cantada no microfone.
Requisitos:
- funcionar em tempo real, usando o audio do microfone;
- representar a escala em notas musicas (no lugar de frequências);
Bonus 1: implementar alternativamente uma interface para um afinador de instrumento de cordas (tuner);
Bonus 2: implementar um auto-tune (quantizar em tempo real o áudio, deslocando a frequência dominante para a nota exata mais próxima);
Referências interessantes para assuntos abordados (esses links podem mudar):
- Cores
- Material de processamento de sinais das universidades Princeton e Purdue.
Mais por vir…
Outros Links úteis:
Programação/prototipação:
processing.org – linguagem e IDE para prototipação de sketches interativos. Muito útil para realizar experimentos com imagens, vídeo, áudio e interação. Gera executáveis para Mac, Linux e Win, além de Applets. Possui um port Javascript, mas recomenda-se usar a versão original. O site oficial inclui muitos tutoriais introdutórios e intermediários.
Pure Data – linguagem de programação visual (mesmo, arrastar caixinhas) para processamento de sinais em real-time (áudio, vídeo, etc). Para verem do que é capaz, o software de música eletrônica da mesa ReacTable foi feito com PD.
OpenCV – biblioteca C/C++ para processamento de imagens/vídeos que implementa os principais algoritmos de visão computacional de maneira eficiente.
Arduino – hardware programável (a linguagem e IDE são baseadas em processing.org) que pode ser usado para prototipação de experimentos interativos que vão “além do computador”. O professor da disciplina possui alguns kits disponíveis para os projetos.
Unity3D – popular engine para criação de jogos e aplicativos interativos em 3D. Versão básica é gratuita, e gera executáveis para Win e Mac. Possui excelente documentação e uma comunidade bastante ativa.
Sugestões de projetos interessantes:
Make Magazine – muitos projetos úteis e divertidos, muitas vezes envolvendo hacking de dispositivos e montagem de equipamentos.
Instructables – outro site com muitos exemplos de projetos “faça você mesmo”.
Para ir alem da disciplina:
Trabalho de colegas do MIT Media Lab sobre displays 3D em camadas (3D de verdade).
Site da universidade de Stanford com informações sobre Light Fields, a representação prática mais completa da luz existente em uma cena. É a base para o que se imagina ser o futuro da fotografia e captura de imagens.