Tabla de contenido:

Intel Edison Espião + Bot Telegram: 5 pasos
Intel Edison Espião + Bot Telegram: 5 pasos

Video: Intel Edison Espião + Bot Telegram: 5 pasos

Video: Intel Edison Espião + Bot Telegram: 5 pasos
Video: Triangle Plotting Sparki Robot - Bil486-Robotics Course 2024, Junio
Anonim
Intel Edison Espião + Bot Telegram
Intel Edison Espião + Bot Telegram
Intel Edison Espião + Bot Telegram
Intel Edison Espião + Bot Telegram

Projeto apresentado no Intel IoT Roadshow - São Paulo (noviembre de 2015)

Ejemplo de detección de imagen con Intel Edison, cámara web, programada con Python y OpenCV.

Neste ejemplo será demostrado como programar uma Intel Edison para vigilar um ambiente y enviar uma notificação via aplicativo (Bot) Telegram caso um rosto seja detectado. Muito útil para evitar que crianças fiquem esquecidas em carros ou pra controle de acessos em ambientes restritos.

Para ejecutar este proyecto, o ideal é que você já esteja familiarizado con Intel Edison.

Caso seja sua primeira utilização, sugiro que leia este artigo:

www.embarcados.com.br/intel-edison-linux-di…

Enlace del proyecto:

github.com/MuriloFerraz/Intel-Edison-Webca…

Paso 1: Preparando una Intel Edison E Lista De Materiais E Pacotes

Preparando una Intel Edison E Lista De Materiais E Pacotes
Preparando una Intel Edison E Lista De Materiais E Pacotes
Preparando una Intel Edison E Lista De Materiais E Pacotes
Preparando una Intel Edison E Lista De Materiais E Pacotes

Para este projeto é preciso:

- Intel Edison

- Cámara web (la ue usa un Logitech C270)

1 Cabo USB

1 fuente 7 ~ 12 Vcc

Para o correto funcionamento, sua Intel Edison deve estar conectado à uma rede WiFi com acesso à Internet.

Os seguimos pacotes devem estar instalados en Intel Edison:

python-opencv, python-numpy, python-pip, telepot. Caso ainda não os tenha, ejecute os seguintes comandos no terminal da Intel Edison:

# echo -e "src / gz todos https://repo.opkg.net/edison/repo/all\nsrc/gz edison https://repo.opkg.net/edison/repo/edison\nsrc/gz core2- 32 https://repo.opkg.net/edison/repo/core2-32 "> /etc/opkg/base-feeds.conf

# actualización de opkg

# opkg instalar python-opencv

# opkg instalar python-numpy

# opkg instalar python-pip

# pip instalar telepot

É preciso baixar um arquivo para classificação e detecção de rostos para a Intel Edison ser capaz de reconhecer rostos, baixe o arquivo *.xml:

github.com/Itseez/opencv/blob/master/data/…

Transfira com o Filezila para o diretório "/ home / hoot" da Intel Edison.

Paso 2: Obtendo Um Bot Telegram (BotFather)

Obtendo Um Bot Telegram (BotFather)
Obtendo Um Bot Telegram (BotFather)
Obtendo Um Bot Telegram (BotFather)
Obtendo Um Bot Telegram (BotFather)

Enlace para la instalación de Telegram en Android:

play.google.com/store/apps/details?id=org….

Antes de começar un programa, ése preciso obter um Bot Telegram, para isso, no seu celular o cliente para PC do Telegram, converse com "BotFather" para obter um bot.

para mais informações a respeito, visite:

core.telegram.org/bots#botfather

Será solicitado que você escolha um nome de usuário e o nome do Bot, siga las instrucciones y você obterá uma chave com o seguinte formato:

111111111: AAAAaAaAAAAA1aaaaaA1Aaa1AAAAaa11a1

Para testar seu bot, no terminal da Intel Edison digite "python" e o consola python será iniciado, digite os seguintes comandos:

>> importar telepot

>> bot = telepot. Bot ('*** Sua Chave ***')

>> bot.getMe ()

#### você receberá informações sobre seu bot

>> salir ()

Paso 3: Enviando E Recebendo Mensagens

Enviando E Recebendo Mensagens
Enviando E Recebendo Mensagens

Agora é hora da Intel Edison mandar e receber mensagem.

Haga su celular o cliente para PC envie uma mensagem para seu bot;

No terminal Intel Edison é hora de ejecutar um pequeño oyente, solo para descobrir o ID do aplicativo instalado no celular ou PC, para isso siga os passos:

vi listener.py

#! / usr / bin / python

importar sys

tiempo de importación

importar telepot

def manejar (msg):

content_type, chat_type, chat_id = telepot.glance2 (msg)

imprimir (content_type, chat_id)

mensagem = msg ['texto']. strip (). lower ()

imprimir mensagem

TOKEN = 'sua chave'

bot = telepot. Bot (TOKEN)

bot.notifyOnMessage (identificador)

imprimir 'Escuchando …'

mientras que 1:

hora de dormir (10)

### para sair do VI aperte 'Esc', 'w', 'q' e 'Enter'.

#chmod + x listener.py

#./listener.py

Assim você receberá a mensagem que enviou do seu celular, anote o user_id (neste formato = 111111111) para enviar mensagem para o celular.

github.com/MuriloFerraz/Intel-Edison-Webca…

Para mandar uma mensagem é mais simples ainda, após ter anotado o user_id, no terminal da Intel Edison basta ejecutar:

pitón

>> importar telepot

>> bot = telepot. Bot ('Sua chave')

>> bot.sendMessage (user_id, 'Aqui eh intel edison !!!)

>> salir ()

Paso 4: Reconhecendo Rostos E Notificando

Reconhecendo Rostos E Notificando
Reconhecendo Rostos E Notificando
Reconhecendo Rostos E Notificando
Reconhecendo Rostos E Notificando
Reconhecendo Rostos E Notificando
Reconhecendo Rostos E Notificando

Agora é hora de finalmente finalizar o projeto.

com a Intel Edison desligada, mude a chave da posição "Client" para "Host" conforme a imagem, "espete" una webcam en un puerto USB e volte a ligar sua Intel Edison, utilice una fuente e o cabo USB de debug para programar.

Sertifique-se que sua Intel Edison esteja conectada a uma rede WiFi com acesso a Internet.

vi spy.py

#! / usr / bin / python

importar cv2

tiempo de importación

import telepotTOKEN = '111111111: AAAOaOaAaAAA1aataAq2qaa9XAAajAe35b8'

bot = telepot. Bot (TOKEN)

video_capture = cv2. VideoCapture (0)

face_cascade = cv2. CascadeClassifier ('/ inicio / root / haarcascade_frontalface_alt.xml')

mientras que es cierto:

ret, frame = video_capture.read ()

caras = face_cascade.detectMultiScale (marco, 1.3, 5)

si len (caras)> 0:

mensagem = "Encontrei {0} pessoas, verifique! / n Proximo aviso em 5 minutos.".format (.len (caras)) bot.sendMessage (121111111, mensagem)

tiempo. de sueño (300)

video_capture.release ()

### Salve o arquivo, de permissão para ejecução:

#chmod + x spy.py

### ejecutar o programa:

#./spy.py

## Se posicione na frente da webcam, quando um rosto for detectado, a notificação será enviada.

Se preferir acesse:

github.com/MuriloFerraz/Intel-Edison-Webca…

Paso 5: Testando una detección en tempo real E Streaming de imágenes

Testando a Detecção Em Tempo Real E Streaming De Imagens
Testando a Detecção Em Tempo Real E Streaming De Imagens
Testando a Detecção Em Tempo Real E Streaming De Imagens
Testando a Detecção Em Tempo Real E Streaming De Imagens
Testando a Detecção Em Tempo Real E Streaming De Imagens
Testando a Detecção Em Tempo Real E Streaming De Imagens

Se você gostaria de testar a detecção facial com envio de imagens em tempo real, transfira e execute este script.

github.com/MuriloFerraz/Intel-Edison-Webca…

Para o correto funcionamento deste program, além dos itens do primeiro passo, é preciso baixar e transferir para o diretório "/ home / root" o seguinte arquivo *.xml:

github.com/Itseez/opencv/blob/master/data/…

para criar um "cliente" no PC para receber como las imágenes de Intel Edison e ver o resultado del reconhecimento facial, por favor leia o excelente artigo del Prof. André Curvello em:

www.embarcados.com.br/visao-computacional-o…

Principalmente a parte "Codificação da Aplicação Cliente"

Recomendado: