Detecção de movimento
Tive a oportunidade de conhecer um projeto de detecção de movimento feito totalmente em delphi, queru tentar reproduzi-lo.
Descrição do projeto:
Uma camera/webcam ´ligada´ em um micro, eh possivel detectar qualquer movimento dentro dakela area. Apos essa detecção eh disparadu um evento, este podendo ser;
- Tocar uma musica
- Mandar um email
- etc.
Atraves de uma conversa com alguns amigos, pude perceber que poderia se implantadu nesse projeto uma Rede Neural Artificial (RNA). Estou com dificuldade em implanta-la, visto que, conhecu pouca coisa sobre o assuntu. Gostaria de contar com a colaboracao de algumas pessoas daki, se possivel ...
PS:
Nao eh trabalhu de faculdade, pos ou mestradu. Eh pura curiosidade!!!
Falow.
Descrição do projeto:
Uma camera/webcam ´ligada´ em um micro, eh possivel detectar qualquer movimento dentro dakela area. Apos essa detecção eh disparadu um evento, este podendo ser;
- Tocar uma musica
- Mandar um email
- etc.
Atraves de uma conversa com alguns amigos, pude perceber que poderia se implantadu nesse projeto uma Rede Neural Artificial (RNA). Estou com dificuldade em implanta-la, visto que, conhecu pouca coisa sobre o assuntu. Gostaria de contar com a colaboracao de algumas pessoas daki, se possivel ...
PS:
Nao eh trabalhu de faculdade, pos ou mestradu. Eh pura curiosidade!!!
Falow.
Phr34k3r
Curtidas 0
Respostas
Rabitz
07/07/2003
olha, uma maneira simples de fazer uma webcam detectar movimento, é assim...
faça com que a webcam, dispare fotos de tempos em tempos, e tente comparar as duas últimas fotos.... se houver diferença, ocorreu movimento na área.
bem, só não me pergunte como fazer... que isso também não sei, o que eu sei, é que os softwares que fazem este tipo de detecção, convertem a imagem para uma fórmula matemática... se você souber como fazer isso, já meio caminho andado.
abraços
Rabitz
faça com que a webcam, dispare fotos de tempos em tempos, e tente comparar as duas últimas fotos.... se houver diferença, ocorreu movimento na área.
bem, só não me pergunte como fazer... que isso também não sei, o que eu sei, é que os softwares que fazem este tipo de detecção, convertem a imagem para uma fórmula matemática... se você souber como fazer isso, já meio caminho andado.
abraços
Rabitz
GOSTEI 0
Phr34k3r
07/07/2003
olha, uma maneira simples de fazer uma webcam detectar movimento, é assim...
Jah pensei assim tambem ...
Mas o que acontece se passar uma mosca na area da tela nesse momento? O evento eh disparado ...
Ha uma necessidade de uma tolerancia maior para disparar um evento, pequenos objetos nao podem ocasionar o disparo.
Eu vejo a ´coisa da toda´ da seguinte maneira, o que eh uma imagem? Dentre outras coisas, se trata de uma matriz. Uma matriz eh formada por pontos. Entao se houvesse um meio de mapear a tela com pontos e com uma distancia maior entre eles na tela da camera, creio que jah resolveria metade do problema. Mas nao sei como fazer issu!
Inicialmente citei RNA, pois ha uma tolerancia maior para esses ´pequenos objetos´. Jah vi algumas aplicacoes, muito interessantes.
Valews.
GOSTEI 0
Bráulio Auditoria
07/07/2003
Uma idéia (não sei se funciona) é utilizar a disparação de fotos e utilizar uma matriz de diferença.
Exemplo:
0 é para não alterado e 1 para alterado.
a matriz ficará assim:
000000011111110000000
000000011111110000000
000000011111110000000
000000011111110000000
000000000000000000000
Conte quantos uns tem por linha e saberá se o número de pixels alterados. Você irá delimitar um número de uns para relevância
OBS: Cuidado com o timer que você usará para disparar as fotos. Lembre-se que além de disparar as fotos você deverá recalcular sua matriz e isso demora algum tempo.
Espero ter ajudado
Exemplo:
0 é para não alterado e 1 para alterado.
a matriz ficará assim:
000000011111110000000
000000011111110000000
000000011111110000000
000000011111110000000
000000000000000000000
Conte quantos uns tem por linha e saberá se o número de pixels alterados. Você irá delimitar um número de uns para relevância
OBS: Cuidado com o timer que você usará para disparar as fotos. Lembre-se que além de disparar as fotos você deverá recalcular sua matriz e isso demora algum tempo.
Espero ter ajudado
GOSTEI 0
Bráulio Auditoria
07/07/2003
Uma idéia (não sei se funciona) é utilizar a disparação de fotos e utilizar uma matriz de diferença.
Exemplo:
0 é para não alterado e 1 para alterado.
a matriz ficará assim:
000000011111110000000
000000011111110000000
000000011111110000000
000000011111110000000
000000000000000000000
Conte quantos uns tem por linha e saberá se o número de pixels alterados. Você irá delimitar um número de uns para relevância
OBS: Cuidado com o timer que você usará para disparar as fotos. Lembre-se que além de disparar as fotos você deverá recalcular sua matriz e isso demora algum tempo.
Espero ter ajudado
Exemplo:
0 é para não alterado e 1 para alterado.
a matriz ficará assim:
000000011111110000000
000000011111110000000
000000011111110000000
000000011111110000000
000000000000000000000
Conte quantos uns tem por linha e saberá se o número de pixels alterados. Você irá delimitar um número de uns para relevância
OBS: Cuidado com o timer que você usará para disparar as fotos. Lembre-se que além de disparar as fotos você deverá recalcular sua matriz e isso demora algum tempo.
Espero ter ajudado
GOSTEI 0
Phr34k3r
07/07/2003
Responder soh uma ver jah tava de bom tamanhu, hauahuaha :D :D :D ...
Gostei de sua ideia!
Vou tentar implementar issu, vc tem curiosidade de ver o codigo quandu ficar pronto?
Gostei de sua ideia!
Vou tentar implementar issu, vc tem curiosidade de ver o codigo quandu ficar pronto?
GOSTEI 0
Rabitz
07/07/2003
com certeza, não só eu, nem só o Braulio, mas, acredito que seja de muita utilidade para toda a comunidade delphiana.
Se você puder disponibilizar o código, qando terminado, ou até mesmo em fases do projeto, tenho certeza que todos irão aproveitar este conhecimento, e, quem sabe, ajudar em pequenas partes, montando um ´bom´ detector de moviventos para webcams.
Valeu
Rabitz
Se você puder disponibilizar o código, qando terminado, ou até mesmo em fases do projeto, tenho certeza que todos irão aproveitar este conhecimento, e, quem sabe, ajudar em pequenas partes, montando um ´bom´ detector de moviventos para webcams.
Valeu
Rabitz
GOSTEI 0
Ricardosb2000
07/07/2003
tambem tenho interesse nesse codigo, se possivel !!!!
Sds
Richard
Sds
Richard
GOSTEI 0
José Henrique
07/07/2003
Vejam esta página
[url]http://www.linhadecodigo.com.br/artigos_impressao.asp?id_ac=279[/url]
[url]http://www.linhadecodigo.com.br/artigos_impressao.asp?id_ac=279[/url]
GOSTEI 0
Ricardosb2000
07/07/2003
ESSE DEMO ESTA EM C E SE POSSIVEL GOSTARIA DE EXEMPLO EM DELPHI PARA WINDOWS
SDS
SDS
GOSTEI 0
Adriano Santos
07/07/2003
RNA é simplesmente show, acredito, assim como disseram alguns colegas, que é do interesse de todos. Não só porque o assunto é diferente, mas porque isso é tecnologia pura e um passo para o futuro. Acho super interessante saber como funcionam determinadas coisas.
Passa o fonte ou trechos dele quando estiver pronto, blz?
Passa o fonte ou trechos dele quando estiver pronto, blz?
GOSTEI 0
Blues
07/07/2003
E ai grande!
Já trabalhei com RNA pra fazer um sistema de reconhecimento de voz.
Não recomendo RNA só pra detectar imagem, vá por comparação de alterados mesmo.
E se pousar uma mosca na camera?
Então cara, faz o seguinte, adiciona um layer com uma camada de cor predominante na imagem capturada, e deixe só o mais forte e compare.
Tem exemplos disso pra Linux no www.vivaolinux.com.br
abraços.
Já trabalhei com RNA pra fazer um sistema de reconhecimento de voz.
Não recomendo RNA só pra detectar imagem, vá por comparação de alterados mesmo.
E se pousar uma mosca na camera?
Então cara, faz o seguinte, adiciona um layer com uma camada de cor predominante na imagem capturada, e deixe só o mais forte e compare.
Tem exemplos disso pra Linux no www.vivaolinux.com.br
abraços.
GOSTEI 0