Esta semana apesar de ter decidido que não ia pegar na tese porque tinha 1 exame e 2 entregas de projectos, acabei por ainda dar uma olhada.
Acabei por organizar todo o projecto e junta-lo num programa com o modulo de webcam.
Tive reunião com o Prof. Tiago Guerreiro, que acabou por ser bastante produtiva. Testamos o prototipo que tinha feito e discutimos algumas ideias. Acabei por vir com boas sugestões, nomeadamente ao nivel do filtro de cor em que deveria passar a imagem de RGB para o espaco de cor HSV de modo a ter um desempenho melhor e também ver o projecto de OpenCV - Open Computer Vision Library, uma biblioteca de processamento de imagem que me poderá dar bastante jeito.
Para além disso fui assistir à apresentação do Prof. Tiago Guerreiro sobre Assistive Technologies for Spinal Cord Injured Individuals que me deu uma noção diferente do que existe sobre a area e do que se poderá fazer na mesma.
Li também o paper sobre Computer Vision Interaction for People with Disabilities, o qual vou seguir até ao final do ano.
No final da semana acabei por criar o tal metodo de converter imagens RGB em HSV, que vou utilizar para o filtro de cores de modo a tentar melhora-lo.
Espero ter até ao Natal ter um prototipo que satisfaça as condições descritas no paper.
segunda-feira, 10 de dezembro de 2007
Semana 21
Esta semana consegui voltar à carga.
Tal como já tinha ficado combinado, comecei a trabalhar com a webcam ligada ao computador.
Depois de alguma procura, consegui arranjar uma biblioteca que funcionasse com a maior parte das webcam's e comecei a fazer os primeiros testes.
Apliquei a biblioteca de processamento que já tinha vindo a contruir (ImageProcessorMobile) para o HTC, e esta funcionou bem. Tem como base a Compact Framework e por isso limita um pouco os calculos por não ter grande parte das funções.
Perdi mais de metade da semana de volta da detecção de objectos. Depois de procurar e ler alguns foruns da especialidade, a melhor opção pareceu-me seguir o que o Andrew tinha feito na biblioteca dele (aforge). O grande problema foi que eu tinha que por aquela funcao a funcionar, mas com a compact framework, o que implicava não usar alguns tipos de dados importantes.
Depois de falar com ele e tirar algumas duvidas e ao fim de bastantes tentativas consegui no final implementar um detector de objectos (blobcounter), que baseado numa imagem binarizada, identifica objectos de um dado tamanho (que podemos definir).
O algoritmo funciona bastante bem caso a imagem binariazada que lhe é passada tenha bem definidas as áreas a preto e branco. Quando a imagem não tem uma fronteira bem definida entre objectos é complicado para essa função detecta-los.
Ao detectar os objectos, estes são catalogados como rectângulos, que permite assim analisa-los relativamente à sua posição, extremos e tamanho.
Depois disto passei para o filtros de (uma determinada) cor. Este filtro funciona basicamente como um filtro de threshold, em que o que fica a branco é o que está dentro do valor de cor e a preto o que está fora desse valor.
Implementei uma função que permitia receber um valor de margem e que analisava um conjunto de 20 pixeis no centro da imagem, detectava a sua cor média e aplicava o dado filtro com base nessa cor. Para facilitar o processo, a imagem era convertida para preto e branco, donde apenas se extraia o valor do pixel da mesma (visto que os 3 pixeis têm o mesmo valor).
Comecei por aplicar um filtro de preto e branco básico, no qual o valor de um pixel cinzento = (r + g + b)/3. Isto trouxe bastantes problemas, pois o filtro detectava até 3 vezes na imagem uma cor diferente para cada valor. (por exemplo, tudo vermelho, ou tudo verde, ou tudo azul, ambos davam 255/3).
Para resolver isto apliquei um filtro de preto e branco RMY, em que cinzento = (r * 0.3 + g * 0.59 + b * 0.11). Isto melhorou o desempenho, no entanto o mesmo ainda só funciona bem em locais em que a iluminação não é muito intensa e em que haja uma grande diferença entre a cor do objecto a que queremos aplicar e a cor do fundo.
De seguida passei para a detecção de movimento. Comecei tal como sugerido por dividir a imagem em 4 partes e analisar a intensidade de luz em cada uma delas. Através da analise da movimentação dos histogramas tentava detectar para onde é que a imagem se tinha mexido.
Mesmo depois de ter criado vários filtros para limpar a imagem, como o filtro de erosão e o de pixelate, o resultado não foi o que esperava. A taxa de sucesso era baixa, e so funcionava em fundos escuros e com luz bastante controlada.
Passei para outra aproximação, que foi utilizar a detecção de objectos que já tinha feito e ver para onde o objecto se mexia. O algoritmo apesar de bastante simples, apenas analisa o objecto de maior tamanho, teve resultados muito satisfatórios.
Depois de ver isso resolvi então juntar ainda o filtro de cor a esse algoritmo e o resultado foi bastante bom. Nota-se que quando o filtro de cor é bem aplicado a detecção da movimentação do objecto é bastante mais precisa.
Consegui então chegar ao pretendido e ter um sistema que tem a funcionar, de um modo ainda simples, a detecção de objectos, como a detecção de movimentos, como a detecção de cores.
Para as proximas semanas tenho que juntar tudo isto num programa e tentar começar a melhora-lo.
Tal como já tinha ficado combinado, comecei a trabalhar com a webcam ligada ao computador.
Depois de alguma procura, consegui arranjar uma biblioteca que funcionasse com a maior parte das webcam's e comecei a fazer os primeiros testes.
Apliquei a biblioteca de processamento que já tinha vindo a contruir (ImageProcessorMobile) para o HTC, e esta funcionou bem. Tem como base a Compact Framework e por isso limita um pouco os calculos por não ter grande parte das funções.
Perdi mais de metade da semana de volta da detecção de objectos. Depois de procurar e ler alguns foruns da especialidade, a melhor opção pareceu-me seguir o que o Andrew tinha feito na biblioteca dele (aforge). O grande problema foi que eu tinha que por aquela funcao a funcionar, mas com a compact framework, o que implicava não usar alguns tipos de dados importantes.
Depois de falar com ele e tirar algumas duvidas e ao fim de bastantes tentativas consegui no final implementar um detector de objectos (blobcounter), que baseado numa imagem binarizada, identifica objectos de um dado tamanho (que podemos definir).
O algoritmo funciona bastante bem caso a imagem binariazada que lhe é passada tenha bem definidas as áreas a preto e branco. Quando a imagem não tem uma fronteira bem definida entre objectos é complicado para essa função detecta-los.
Ao detectar os objectos, estes são catalogados como rectângulos, que permite assim analisa-los relativamente à sua posição, extremos e tamanho.
Depois disto passei para o filtros de (uma determinada) cor. Este filtro funciona basicamente como um filtro de threshold, em que o que fica a branco é o que está dentro do valor de cor e a preto o que está fora desse valor.
Implementei uma função que permitia receber um valor de margem e que analisava um conjunto de 20 pixeis no centro da imagem, detectava a sua cor média e aplicava o dado filtro com base nessa cor. Para facilitar o processo, a imagem era convertida para preto e branco, donde apenas se extraia o valor do pixel da mesma (visto que os 3 pixeis têm o mesmo valor).
Comecei por aplicar um filtro de preto e branco básico, no qual o valor de um pixel cinzento = (r + g + b)/3. Isto trouxe bastantes problemas, pois o filtro detectava até 3 vezes na imagem uma cor diferente para cada valor. (por exemplo, tudo vermelho, ou tudo verde, ou tudo azul, ambos davam 255/3).
Para resolver isto apliquei um filtro de preto e branco RMY, em que cinzento = (r * 0.3 + g * 0.59 + b * 0.11). Isto melhorou o desempenho, no entanto o mesmo ainda só funciona bem em locais em que a iluminação não é muito intensa e em que haja uma grande diferença entre a cor do objecto a que queremos aplicar e a cor do fundo.
De seguida passei para a detecção de movimento. Comecei tal como sugerido por dividir a imagem em 4 partes e analisar a intensidade de luz em cada uma delas. Através da analise da movimentação dos histogramas tentava detectar para onde é que a imagem se tinha mexido.
Mesmo depois de ter criado vários filtros para limpar a imagem, como o filtro de erosão e o de pixelate, o resultado não foi o que esperava. A taxa de sucesso era baixa, e so funcionava em fundos escuros e com luz bastante controlada.
Passei para outra aproximação, que foi utilizar a detecção de objectos que já tinha feito e ver para onde o objecto se mexia. O algoritmo apesar de bastante simples, apenas analisa o objecto de maior tamanho, teve resultados muito satisfatórios.
Depois de ver isso resolvi então juntar ainda o filtro de cor a esse algoritmo e o resultado foi bastante bom. Nota-se que quando o filtro de cor é bem aplicado a detecção da movimentação do objecto é bastante mais precisa.
Consegui então chegar ao pretendido e ter um sistema que tem a funcionar, de um modo ainda simples, a detecção de objectos, como a detecção de movimentos, como a detecção de cores.
Para as proximas semanas tenho que juntar tudo isto num programa e tentar começar a melhora-lo.
domingo, 25 de novembro de 2007
Semana 20
Esta semana tive muito pouco tempo para pegar na tese, devido às entregas de dois projectos das 4 cadeiras que estou a fazer.
Depois da reunião da semana com o Prof. Tiago Guerreiro, vimos que como ainda não havia novidades por parte da disponibilização da API via Novabase, e tendo em conta a qualidade e o tempo de espera entre imagens que eram possíveis obter através do directshow o melhor seria comecar a criar uma aplicação no PC, utilizando uma webcam e depois "porta-la" para o PDA. Isto tempo em conta todos os problemas que possam advir, nomeadamente as incompatibilidades entre algumas das bibliotecas da .NET Compact Framework e da .NET Framework normal. Começar também a ver a algoritmos que possibilitem a detecção de gamas de cor, detecção de objectos e de objectos com uma determinada cor e no final detecção de movimento (nomeadamente as 4 direcções).
Fui também ver a discussão da tese de mestrado do Ricardo Gamboa, que gostei bastante e que se assemelhava um pouco à minha. Permitiu-me ter uma noção mais real do que me espera daqui a uns meses, tendo tirado algumas notas com algumas coisas que achei importantes.
Depois da reunião da semana com o Prof. Tiago Guerreiro, vimos que como ainda não havia novidades por parte da disponibilização da API via Novabase, e tendo em conta a qualidade e o tempo de espera entre imagens que eram possíveis obter através do directshow o melhor seria comecar a criar uma aplicação no PC, utilizando uma webcam e depois "porta-la" para o PDA. Isto tempo em conta todos os problemas que possam advir, nomeadamente as incompatibilidades entre algumas das bibliotecas da .NET Compact Framework e da .NET Framework normal. Começar também a ver a algoritmos que possibilitem a detecção de gamas de cor, detecção de objectos e de objectos com uma determinada cor e no final detecção de movimento (nomeadamente as 4 direcções).
Fui também ver a discussão da tese de mestrado do Ricardo Gamboa, que gostei bastante e que se assemelhava um pouco à minha. Permitiu-me ter uma noção mais real do que me espera daqui a uns meses, tendo tirado algumas notas com algumas coisas que achei importantes.
Semana 19
Consegui finalmente utilizar a câmara do telefone directamente! Depois de mais pesquisa e mais troca de mensagens em foruns descobri uma aplicação feita pelo Marcus Perryman (http://blogs.msdn.com/marcpe/archive/2006/03/03/542941.aspx) que serviu de base para conseguir arranjar uma forma de ir buscar as imagens directamente à camera de forma mais "crua".
Depois de tanto entusiasmo veio de novo a desilusão, já esperada, de que as fotos acabam por ser tiradas apenas de 4 em 4 segundos (3 e pouco, mas algumas ficam a meio se escolher os tais 3 segundos) e a sua qualidade é bastante má.
No entanto isto permitiu-me avançar bastante no que queria, e que já tinha começado a fazer para o próprio PDA. Assim, com isto a funcionar consegui por a funcionar as seguintes funções no PDA automaticamente:
- Detectar se fica escuro de repente e desligar o ecrã se tal acontecer (como se alguém pusesse o telefone no bolso/mala/etc)
- Detectar uma determinada cor predominante na imagem, por exemplo quando alguém associa a cor verde a um amigo e aponta para um papel verde, o telemovel liga automaticamente para esse amigo.
- Detectar que houve movimento acima de um determinado valor.
Isto tudo recorrendo a funções que fiz, tendo como base a AForge.net, através de processamento de imagem nomeadamente, transformações para preto & branco, threshold, diferenca de imagens, estatísticas de cor, conversores de RGB para Luminância.
Foi um bom avanço, permitindo-me explorar directamente outra ferramentas, visto que comecei a fazer processamento de imagem em tempo real e também comecei a mexer com bibliotecas que lidam directamente com o telefone.
Depois de tanto entusiasmo veio de novo a desilusão, já esperada, de que as fotos acabam por ser tiradas apenas de 4 em 4 segundos (3 e pouco, mas algumas ficam a meio se escolher os tais 3 segundos) e a sua qualidade é bastante má.
No entanto isto permitiu-me avançar bastante no que queria, e que já tinha começado a fazer para o próprio PDA. Assim, com isto a funcionar consegui por a funcionar as seguintes funções no PDA automaticamente:
- Detectar se fica escuro de repente e desligar o ecrã se tal acontecer (como se alguém pusesse o telefone no bolso/mala/etc)
- Detectar uma determinada cor predominante na imagem, por exemplo quando alguém associa a cor verde a um amigo e aponta para um papel verde, o telemovel liga automaticamente para esse amigo.
- Detectar que houve movimento acima de um determinado valor.
Isto tudo recorrendo a funções que fiz, tendo como base a AForge.net, através de processamento de imagem nomeadamente, transformações para preto & branco, threshold, diferenca de imagens, estatísticas de cor, conversores de RGB para Luminância.
Foi um bom avanço, permitindo-me explorar directamente outra ferramentas, visto que comecei a fazer processamento de imagem em tempo real e também comecei a mexer com bibliotecas que lidam directamente com o telefone.
segunda-feira, 12 de novembro de 2007
Semana 18
Depois de já ter algumas das funçoes feitas, para o processamento de imagem, descobri o AForge.net.
Esta biblioteca tem uma quantidade enorme de filtros e funções de processamento de imagem. Depois de a testar vi que a velocidade de processamento era muito mais rapida que a das funçoes que tinha feito.
Como tal, comecei a utiliza-la e fiz uma aplicação em windows que recebia um video e ia analisando as frames, através desses filtros, fornecendo informações relativas às caracteristicas da frame actual, nomeadamente luminancia, cor dominante, media de cinzentos, etc.
Depois de alguns melhoramentos no programa, e de melhor perceber a plataforma AForge.net resolvi então passar essa aplicação que tinha feito para o Pocket PC.
No entanto, e devido ao facto da .NET Compact Framework ter algumas funções bastante limitadas relativamente à .NET Framework normal, o programa não funcionou.
Como tal, tive que abandonar a biblioteca AForge.net, e criar manualmente as funções de processamento de imagem. Depois de encontrar o código fonte da mesma, tive a tentar percebe-lo para poder utilizar algum do conhecimento no programa para PocketPC.
Um dos principais problemas foi o facto da .NET Compact Framework nao ter o modo de 8bits na classe Bitmap, isto faz com que grande parte das funções de tratamento de imagem a preto e branco tenha deixado de funcionar.
Tive que arranjar uma soluçao para esse problema, e consegui implementar algumas das funções que utilizava no programa inicial.
No entanto, algumas funçoes, nomeadamente a Luminancia, não mostraram grande performance no telefone, e penso que não poderão ser utilizadas, numa altura em que se analise várias imagens por segundo, quando a interface com a camera seja fornecida pela HTC.
Esta biblioteca tem uma quantidade enorme de filtros e funções de processamento de imagem. Depois de a testar vi que a velocidade de processamento era muito mais rapida que a das funçoes que tinha feito.
Como tal, comecei a utiliza-la e fiz uma aplicação em windows que recebia um video e ia analisando as frames, através desses filtros, fornecendo informações relativas às caracteristicas da frame actual, nomeadamente luminancia, cor dominante, media de cinzentos, etc.
Depois de alguns melhoramentos no programa, e de melhor perceber a plataforma AForge.net resolvi então passar essa aplicação que tinha feito para o Pocket PC.
No entanto, e devido ao facto da .NET Compact Framework ter algumas funções bastante limitadas relativamente à .NET Framework normal, o programa não funcionou.
Como tal, tive que abandonar a biblioteca AForge.net, e criar manualmente as funções de processamento de imagem. Depois de encontrar o código fonte da mesma, tive a tentar percebe-lo para poder utilizar algum do conhecimento no programa para PocketPC.
Um dos principais problemas foi o facto da .NET Compact Framework nao ter o modo de 8bits na classe Bitmap, isto faz com que grande parte das funções de tratamento de imagem a preto e branco tenha deixado de funcionar.
Tive que arranjar uma soluçao para esse problema, e consegui implementar algumas das funções que utilizava no programa inicial.
No entanto, algumas funçoes, nomeadamente a Luminancia, não mostraram grande performance no telefone, e penso que não poderão ser utilizadas, numa altura em que se analise várias imagens por segundo, quando a interface com a camera seja fornecida pela HTC.
Semana 17
Esta semana andei de volta da ligação entre a camera e o futuro programa em C# de tratamento da imagens obtidas por ela.
Visto que não ha nenhuma API fornecida pela HTC, andei a tentar encontrar em vários foruns da especialidade ser havia alguma alternativa.
Passados dois dias, as respostas eram sempre as mesmas, que a unica hipotese era criar uma API para em C++, utilizando o directshow.
Como tal, decidi esperar pela resposta da HTC, apesar de ter arranjado alguns exemplos que me podem ajudar.
Decidi comecar a investigar algoritmos de processamento de imagem para utilizar no processamento das imagens vindas da camera mais tarde.
Comecei então a fazer uma classe com algumas funções para esse propósito.
Visto que não ha nenhuma API fornecida pela HTC, andei a tentar encontrar em vários foruns da especialidade ser havia alguma alternativa.
Passados dois dias, as respostas eram sempre as mesmas, que a unica hipotese era criar uma API para em C++, utilizando o directshow.
Como tal, decidi esperar pela resposta da HTC, apesar de ter arranjado alguns exemplos que me podem ajudar.
Decidi comecar a investigar algoritmos de processamento de imagem para utilizar no processamento das imagens vindas da camera mais tarde.
Comecei então a fazer uma classe com algumas funções para esse propósito.
Semana 16
Esta semana tivemos o Workshop Móvel no Tagus Park.
Tivemos a rever as plataformas e a testar alguns programas, nomeadamente o LorretoTTS.
Discuti com o Prof. Tiago Guerreiro algumas ideias interessantes, como a utilização da camera para interacção no carro, ou noutros cenários em que estejamos mais ocupados.
Falamos também do facto deste trabalho ter que ter um objectivo concreto e uma linha condutora ao longo da evolução do trabalho. No entanto, e dado o facto do trabalho ainda não estar num estado muito evoluido, não ficou decidido nada de concreto relativamente a qual o caminho a seguir concretamente.
A hipotese de utilizar este tipo de interacção com pessoas com algumas dificuldades motoras pareceu-me bastante interessante, mas estas opções irão ser aprofundadas ao longo do tempo.
Durante o resto da semana não pude trabalhar mais na Dissertação, porque tive a 1ª entrega do projecto de GPI e a entrega da pesquisa temática de AOSI.
Tivemos a rever as plataformas e a testar alguns programas, nomeadamente o LorretoTTS.
Discuti com o Prof. Tiago Guerreiro algumas ideias interessantes, como a utilização da camera para interacção no carro, ou noutros cenários em que estejamos mais ocupados.
Falamos também do facto deste trabalho ter que ter um objectivo concreto e uma linha condutora ao longo da evolução do trabalho. No entanto, e dado o facto do trabalho ainda não estar num estado muito evoluido, não ficou decidido nada de concreto relativamente a qual o caminho a seguir concretamente.
A hipotese de utilizar este tipo de interacção com pessoas com algumas dificuldades motoras pareceu-me bastante interessante, mas estas opções irão ser aprofundadas ao longo do tempo.
Durante o resto da semana não pude trabalhar mais na Dissertação, porque tive a 1ª entrega do projecto de GPI e a entrega da pesquisa temática de AOSI.
sexta-feira, 19 de outubro de 2007
Semana 15
Esta semana explorei melhor a plataforma a utilizar, nomeadamente o Visual Studio + Windows Mobile 6 Professional SDK + Compact Framework 2.0
Comecei a ver as possibilidades de utilização da camara dos telemoveis através desta plataforma. Descobri então que a Microsoft criou aparir do Windows Mobile 5 uma framework para esse tipo de acessos.
Relativamente às cameras a utilização do directshow é a mais utilizada/recomendada, apesar de ser em c++.
No entanto, e depois de vários testes, os resultados obtidos não foram satisfatorios, tendo conseguido obter uma imagem com qualidade muito pequena e videos muito lentos e espaçados.
Descobri no final que o problema estava relacionado com o facto da HTC ter limitado na API que forneceu à Microsoft do HTC P3600 (dispositivo no qual estava a testar) e na maior parte dos seus dispositivos apenas a utilização de video/imagens a 160x120 pixeis (7.5 Hz).
Como tal torna-se assim complicado muito utilizar este tipo de acesso à camera para produzir alguns resultados positivos.
Na próxima semana irei reunir-me com o Prof. Tiago Guerreiro para tentarmos arranjar uma solução para o problema, ou arranjar um telemovel em que não haja essa limitação ou contactar a HTC na tentativa de nos ser fornecida outra API com menos "limitações"
Comecei a ver as possibilidades de utilização da camara dos telemoveis através desta plataforma. Descobri então que a Microsoft criou aparir do Windows Mobile 5 uma framework para esse tipo de acessos.
Relativamente às cameras a utilização do directshow é a mais utilizada/recomendada, apesar de ser em c++.
No entanto, e depois de vários testes, os resultados obtidos não foram satisfatorios, tendo conseguido obter uma imagem com qualidade muito pequena e videos muito lentos e espaçados.
Descobri no final que o problema estava relacionado com o facto da HTC ter limitado na API que forneceu à Microsoft do HTC P3600 (dispositivo no qual estava a testar) e na maior parte dos seus dispositivos apenas a utilização de video/imagens a 160x120 pixeis (7.5 Hz).
Como tal torna-se assim complicado muito utilizar este tipo de acesso à camera para produzir alguns resultados positivos.
Na próxima semana irei reunir-me com o Prof. Tiago Guerreiro para tentarmos arranjar uma solução para o problema, ou arranjar um telemovel em que não haja essa limitação ou contactar a HTC na tentativa de nos ser fornecida outra API com menos "limitações"
Semana 14
Esta semana tive a reuniao com o Prof. Tiago Guerreiro onde foram decididas algumas alterações/adições ao survey, nomeadamente a inclusão de referências a outros trabalhos feitas na area na zona de comparação de tecnologias e na elaboração de algumas caracteristicas comuns que permitissem comparar depois tecnologias e algoritmos ao nivel da interacção por telefone.
Foram também discutidas as ideias que tinha vindo a escrever sobre as possiveis metaforas de utilização do telefone através da sua camara no dia a dia.
Para além disso comecei a ver um pouco a plataforma que irei usar no desenvolvimento deste projecto.
Foram também discutidas as ideias que tinha vindo a escrever sobre as possiveis metaforas de utilização do telefone através da sua camara no dia a dia.
Para além disso comecei a ver um pouco a plataforma que irei usar no desenvolvimento deste projecto.
quarta-feira, 3 de outubro de 2007
Semana 13
Esta semana acabei por ler mais uns papers, nomeadamente sobre interacção.
Achei o paper do Ken Hinckley bastante interessante, tendo focado aspectos relativos ao poder de interacção com aparelhos com vários sensores muito interessantes.
A possibilidade de saber a proximidade do utilizador do telefone, se o mesmo está a andar ou a agarrar no aparelho ou mesmo a detecção do som permitem que a quantidade de informação disponivel para "trabalhar" seja enorme. Isto propencia o aparecimento de aplicações com um enorme poder de adaptação ao dia-a-dia do utilizador.
Fiz algum "brain storming" relativamente a possiveis casos de uso para o Camera-Phone, tendo chegado a algumas ideias, que irei discutir mais tarde com o Prof. Tiago Guerreiro para ver a sua viabilidade.
Achei o paper do Ken Hinckley bastante interessante, tendo focado aspectos relativos ao poder de interacção com aparelhos com vários sensores muito interessantes.
A possibilidade de saber a proximidade do utilizador do telefone, se o mesmo está a andar ou a agarrar no aparelho ou mesmo a detecção do som permitem que a quantidade de informação disponivel para "trabalhar" seja enorme. Isto propencia o aparecimento de aplicações com um enorme poder de adaptação ao dia-a-dia do utilizador.
Fiz algum "brain storming" relativamente a possiveis casos de uso para o Camera-Phone, tendo chegado a algumas ideias, que irei discutir mais tarde com o Prof. Tiago Guerreiro para ver a sua viabilidade.
sexta-feira, 28 de setembro de 2007
Semana 12
Acabei de escrever a primeira versão do survey.
1ª Reunião com o Prof. Tiago Guerreiro:
- Melhor noção do que era suposto fazer durante as próximas semanas
- Alguns conselhos interessantes no que toca à area a investigar
- Bastante ideias engraçadas que poderão ser utilizadas no futuro caso se opte por um trabalho mais focado nas interfaces.
- Possibilidade de ajudar o dia a dia de pessoas com deficiencias por exemplo através de simples mecanismos de detecção de movimentos.
- Fiquei de melhorar o survey e pensar em casos de utilização
1ª Reunião com o Prof. Tiago Guerreiro:
- Melhor noção do que era suposto fazer durante as próximas semanas
- Alguns conselhos interessantes no que toca à area a investigar
- Bastante ideias engraçadas que poderão ser utilizadas no futuro caso se opte por um trabalho mais focado nas interfaces.
- Possibilidade de ajudar o dia a dia de pessoas com deficiencias por exemplo através de simples mecanismos de detecção de movimentos.
- Fiquei de melhorar o survey e pensar em casos de utilização
Semana 11
Acabei por não ter tempo muito tempo para pegar no survey, por causa dos trabalhos que tive que entregar no IST e das confusões das inscrições na secretaria por causa de Bolonha e dos alunos com epoca especial.
Acabei por apenas voltar à escrita no final da semana.
Acabei por apenas voltar à escrita no final da semana.
Semana 8 e 9
Estive a estudar para os exames de Época Especial em Setembro, e acabei por não pegar na dissertação.
Semana 7
Mais uns artigos interessantes sobre jogos utilizando a camera.
Alguns pormenores que poderão ser úteis como por exemplo ter um botão de reset ao nível do movimento (em que ao se carregar nele o documento volta ao inicio, não precisando de andar a mover a camera para a esquerda várias vezes).
Alguns estudos mostraram que a técnica de varrimento era mais imprecisa que a de point & shoot.
Paper interessante por parte de Hansen e Eriksoon no que toca ao "mundo envolvente" da movimentação da camera. Referiram a criação de uma esfera com centro na camera, dividida em 3 camadas, correspondentes a 3 zonas. A primeira zona, era a zona estável, a segunda, a zona de movimento lento e a ultima a zona de movimento rápido.
Alguns pormenores que poderão ser úteis como por exemplo ter um botão de reset ao nível do movimento (em que ao se carregar nele o documento volta ao inicio, não precisando de andar a mover a camera para a esquerda várias vezes).
Alguns estudos mostraram que a técnica de varrimento era mais imprecisa que a de point & shoot.
Paper interessante por parte de Hansen e Eriksoon no que toca ao "mundo envolvente" da movimentação da camera. Referiram a criação de uma esfera com centro na camera, dividida em 3 camadas, correspondentes a 3 zonas. A primeira zona, era a zona estável, a segunda, a zona de movimento lento e a ultima a zona de movimento rápido.
Semana 6
Comecei a fazer um rascunho por alto do esquema que devia ter o meu survey.
De focar no facto de todos os telemoveis terem camera hoje em dia. Do tipo de complexidade ao nivel do processamento da informação ser menor que os acelerometros. De haver já soluções a nivel academico a funcionar a este nivel. Temos também o exemplo do iPhone, que utiliza apenas um acelerometro e um touch-screen, acelerometro esse que poderá ser substituido pela camera.
Li mais um papers, nomeadamente um da Nokia, com uma investigação bastante aprofundada. Alguns detalhes engraçados como o facto de se estar limitado fisicamente quando se quer andar para o lado num documento através da camera.
De focar no facto de todos os telemoveis terem camera hoje em dia. Do tipo de complexidade ao nivel do processamento da informação ser menor que os acelerometros. De haver já soluções a nivel academico a funcionar a este nivel. Temos também o exemplo do iPhone, que utiliza apenas um acelerometro e um touch-screen, acelerometro esse que poderá ser substituido pela camera.
Li mais um papers, nomeadamente um da Nokia, com uma investigação bastante aprofundada. Alguns detalhes engraçados como o facto de se estar limitado fisicamente quando se quer andar para o lado num documento através da camera.
Semana 5
Depois de ler o email do Tiago Guerreiro sobre o tipo de documento que é suposto o survey ser, acabei por ver um pouco o estilo da tese do Prof. Manuel da Fonseca.
Vi com especial atenção o survey do Ricardo Gamboa, que me irá ajudar bastante na primeira parte do esquema do meu survey.
Li mais alguns papers, como por exemplo o do Thomas Hansen, com a ideia do Mixed Interaction Space que acabaram por contruibuir um pouco para o aprofundamento das possiveis técnicas a utilizar no futuro ao nivel da implementação para o tratamento das imagens).
Vi com especial atenção o survey do Ricardo Gamboa, que me irá ajudar bastante na primeira parte do esquema do meu survey.
Li mais alguns papers, como por exemplo o do Thomas Hansen, com a ideia do Mixed Interaction Space que acabaram por contruibuir um pouco para o aprofundamento das possiveis técnicas a utilizar no futuro ao nivel da implementação para o tratamento das imagens).
Semana 4
Li os papers que tinha impresso.
Acabei por imprimir mais referencias desses mesmos papers.
Especial atenção para as etiquetas visuais estudadas pelo Rohs e o modo de interacção que ele falou.
Deu-me algumas ideias como por exemplo a utilização de etiquetas visuais (através da ligação a um servidor) para por exemplo pessoas estrangeiras utilizarem no pais que estão a visitar e não conseguem perceber a lingua local.
Acabei por imprimir mais referencias desses mesmos papers.
Especial atenção para as etiquetas visuais estudadas pelo Rohs e o modo de interacção que ele falou.
Deu-me algumas ideias como por exemplo a utilização de etiquetas visuais (através da ligação a um servidor) para por exemplo pessoas estrangeiras utilizarem no pais que estão a visitar e não conseguem perceber a lingua local.
Semana 3
Li o paper do Wang, sobre o TinyMotion. Acabei por ir visitar a página desse projecto e ver por alto o código deles e o outro artigo que tinham feito. Imprimi também os papers que ele tinha utilizado como referencias para ler posteriormente
sábado, 21 de julho de 2007
Semana 2
Ainda com exames de 2º semestre acabei por imprimir alguns papers mas o tempo que tive foi dedicado a estudar para os exames.
Agora, já de férias e com motivação para avançar!
Agora, já de férias e com motivação para avançar!
Semana 1
Na semana passada:
- Comecei a investigar e a ler alguns papers sobre "camera phone interaction"
- Reunião com o Prof. Tiago Guerreiro para tirar algumas duvidas com que fiquei durante a leitura dos papers, relacionadas com a direcção a tomar sobre o tema.
- Comecei a investigar e a ler alguns papers sobre "camera phone interaction"
- Reunião com o Prof. Tiago Guerreiro para tirar algumas duvidas com que fiquei durante a leitura dos papers, relacionadas com a direcção a tomar sobre o tema.
segunda-feira, 9 de julho de 2007
Início
Neste blog irá estar presente toda a evolução do projecto "Camera Phone", nomeadamente os vários processos efectuados na realização do mesmo.
Subscrever:
Mensagens (Atom)