Sommario:

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

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

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

Projeto apresentado no Intel IoT Roadshow - San Paolo (nov. 2015)

Esempio di rilevamento di immagini con Intel Edison, webcam, programmata con Python e OpenCV.

Neste exemplo será dimostrato come programar uma Intel Edison para vigiar um ambiente e enviar um 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 executar este projeto, o ideal é que você já esteja familiarizado com a Intel Edison.

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

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

Link al progetto:

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

Passaggio 1: preparare un Intel Edison E Lista De Materiais E Pacotes

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

Para este progetto é preciso:

- Intel Edison

- Webcam (usando una Logitech C270)

1 cavo USB

1 Fonte 7~12 Vcc

Per il corretto funzionamento, la sua Intel Edison deve essere collegata a una nuova connessione WiFi con accesso a Internet.

I successivi passaggi devonom estar installati su Intel Edison:

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

# echo -e "src/gz all 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

# aggiornamento opkg

# opkg install python-opencv

# opkg install python-numpy

# opkg install python-pip

# pip installa 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.

Passaggio 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)

Link per l'installazione di Telegram su Android:

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

Antes de começar a programar, é preciso obter um Bot Telegram, para isso, no seu celular ou cliente para PC do Telegram, converse com "BotFather" para obter um bot.

per maggiori informazioni a respeito, visite:

core.telegram.org/bots#botfather

Será sollecitato que você escolha um nome de usuário e o nome do Bot, siga as instruções e você obterá uma chave com o seguinte formato:

111111111:AAAAaAaAAAAAA1aaaaaA1Aaa1AAAAaa11a1

Per testare seu bot, no terminal da Intel Edison digite "python" e o console python se iniciado, digite os seguenti comandi:

>> importa telepot

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

>> bot.getMe()

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

>> uscita()

Passaggio 3: Enviando E Recebendo Mensagens

Enviando E Recebendo Mensagens
Enviando E Recebendo Mensagens

Agora é ora da Intel Edison mandar e receber mensagem.

Do seu celular ou cliente para PC envie uma mensagem para seu bot;

No terminal Intel Edison é hora de executar um pequeno listener, apenas para descobrir o ID do aplicativo instalado no celular ou PC, para isso siga os passis:

vi ascoltatore.py

#! /usr/bin/python

sistema di importazione

tempo di importazione

importare telepot

def handle(msg):

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

stampa (tipo_contenuto, id_chat)

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

stampa messaggio

TOKEN = 'sua chave'

bot = telepot. Bot(TOKEN)

bot.notifyOnMessage(handle)

stampa 'Ascolto…'

mentre 1:

tempo.sonno(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 executar:

pitone

>> importa telepot

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

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

>> uscita()

Passaggio 4: Riconnettere 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 finalizzare o projeto.

com a Intel Edison desligada, modifica la posizione "Client" per "Host" conforme a imagem, "espete" una webcam sulla porta USB e, a volte, su Intel Edison, utilizza una fonte e un cavo USB per il debug per il programmatore.

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

vi spy.py

#! /usr/bin/python

importa cv2

tempo di importazione

import telepotTOKEN = '111111111:AAAOaOaAaAAA1aataAq2qaa9XAAajAe35b8'

bot = telepot. Bot(TOKEN)

video_capture = cv2. VideoCapture(0)

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

mentre vero:

ret, frame = video_capture.read()

facce = face_cascade.detectMultiScale(frame, 1.3, 5)

se len(facce) > 0:

mensagem = "Incontro {0} pessoas, verifique! \n Proximo aviso em 5 minuti.".format(.len(faces)) bot.sendMessage(121111111, messaggio)

tempo.sonno(300)

video_capture.release()

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

#chmod +x spy.py

### esegui o programma:

#./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…

Passaggio 5: testare un rilevamento del tempo reale e lo streaming di immagini

Testando un rilevamento del tempo reale E Streaming di immagini
Testando un rilevamento del tempo reale E Streaming di immagini
Testando un rilevamento del tempo reale E Streaming di immagini
Testando un rilevamento del tempo reale E Streaming di immagini
Testando un rilevamento del tempo reale E Streaming di immagini
Testando un rilevamento del tempo reale E Streaming di immagini

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

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

Para o correto funcionamento deste programa, 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 as imagens do Intel Edison e ver o resultado do reconhecimento facial, por favor leia o excelente artigo do Prof. André Curvello em:

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

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

Consigliato: