Turinys:

„De Rostros Con Arduino Intel Edison“nustatymas: 8 žingsniai
„De Rostros Con Arduino Intel Edison“nustatymas: 8 žingsniai

Video: „De Rostros Con Arduino Intel Edison“nustatymas: 8 žingsniai

Video: „De Rostros Con Arduino Intel Edison“nustatymas: 8 žingsniai
Video: Seguidor facial con Arduino 2024, Liepa
Anonim
Atraskite „Rostros Con Arduino Intel Edison“
Atraskite „Rostros Con Arduino Intel Edison“

El procesamiento de imágenes o la visión por computadora es uno de esos campos que requiere enormes cantidades de researcht debido a que involucra metet para para,quo, processar, analyar y comprender las imágenes del mundo real con el fin de producir informationción number of para simbóan ser tratados por un ordenador. Tiesą sakant, „los mejores“algoritmas pasakoms tareas se basan en redes neuronales convolucionales, las cuales generalmente processa miles de imágenes de rostros humanos mediante el uso de aprendizaje supervisado para entrenar el algoritmo que identifika el objeto buscado. Sin embargo, no vamos a meternos en tantos lios en este instructable y usaremos una biblioteca de código abierto de visión por computadora llamada OpenCV la cual gracias al arduo trabajo de la comunidad de cientificos y desarrolladores que aportan, factizan y mantienen el. con un rico set de carcaterisiticas que podemos įgyvendinimo palengvinimas para la detección y reconocimiento de imágenes.

Atidarykite „OpenCV“ir įjunkite „C ++“, kad pasiektumėte objektus, nesvarbu, ar jie praeina, ar nėra „Python como nuestro lenguaje de programción para realizar la detección de rostros“. Aprašymas: un procesamiento y una imágen de salida. „Intel Edison“neturi vaizdo įrašų sąsajos, kuri yra sukurta naudojant „Python“scenarijų ir asmeninį kompiuterį. Luego, después del funcionamiento exitoso del código en la PC, modificaremos el código para korerlo en elison. Las cosas se aclararán cuando hagamos la implementación práctica. Nuestro objetivo es realizar la detección de rostros y, si se deta, realizar alguna acción.

Prekės

El material que requerimos para llevar a cabo este tutorial:

Aparatūra

  • 1 nešiojamas kompiuteris/kompiuteris.
  • 1 „Placa Arduino Intel Edison“.
  • 2 kabeliai USB micro-B.
  • 1 išmanusis telefonas su programa „IP Webcam“.
  • 1 variklis sg 90.

PROGRAMINĖ ĮRANGA

  • „Intel Flash tool Lite V5.2.4“
  • PuTTy
  • „FileZilla“FTP
  • Imágen Yocto Poky (V25.5-15)
  • VS kodas
  • „Python“2.7
  • „OpenCV“versija 3.3.0
  • Kvaila
  • Libreria MRAA
  • „Windows“tvarkyklės, skirtos „Intel Edison“(„Se descargan en cuanto se plact“).
  • „Windows“archyvas („Pueda ser que te falten al momento de instalar OpenCV en tu laptop“).

1 žingsnis: „Conectando El Intel Edison“ir „La PC“

„Conectando El Intel Edison“ir „La PC“
„Conectando El Intel Edison“ir „La PC“
„Conectando El Intel Edison“ir „La PC“
„Conectando El Intel Edison“ir „La PC“
„Conectando El Intel Edison“ir „PC“
„Conectando El Intel Edison“ir „PC“

„Intel Edison“aparatinės įrangos būdas ir pristatymas:

  • „Placa de desarrollo“kūrimas iš „Intel“suderinamo „Arduino“(es la que usamos en este tutorial).
  • Naudojant „Mini-Breakout“(„con el móudlo ya montado“) suderinama „Arduino Board“išplėtimo plokštė.
  • „Intel Edison“yra natūralus („Aqui requerimos fabricar nuestra propia PCB“) metodas.

Naudojate platinimo suderinamumą su „Arduino debido“ir „flexibilidad“bei suderinamumu, skirtu sąveikai su kitais veikėjais ir sensacijomis. „Intel Intel Edison“, „Arduino como“platforma „UNO“arba „MEGA“yra tinkama operacinei sistemai, nes tai yra „Linux“versija „Yocto“.

Kalbėkite apie tai, kaip prijungti kabelius prie USB micro-B del Arduino Edison ir kito nešiojamojo kompiuterio. Pirkėjai turi savo pertraukiklį (marcado con el número 1 en la imágen), est apuntando hacia abajo, si no se encuentra en dicha posición el Arduino Edison permanecerá apagado.

USB jungties „micro-B“marcadas turi 2 numerius, skirtus naudoti 5V, IDE „Arduino“programos, atminties blykstės ir eskritūros bei USB ir USB jungties naudojimo instrukcijas.

„USB micro-B“marcado jungtis su 3 nenaudojamais prieiga prie SSH ir naujo Edisono.

Jei norite įdiegti „Windows“tvarkykles, naudokite šią programą. Posteriormente revisamos en el Admsinistrador de Windows ir reconoce dos puertos:

  • „COM“virtualus „Intel Edison“
  • Tai „Intel Edison“serijos COM.

Pritaikykite ankstesnę peržiūrą, pasiteisinkite, išjunkite „Intel Edison“su „Linux“vaizdais.

2 žingsnis: „Flasheando El Intel Edison“

„Flasheando El Intel Edison“
„Flasheando El Intel Edison“
„Flasheando El Intel Edison“
„Flasheando El Intel Edison“
„Flasheando El Intel Edison“
„Flasheando El Intel Edison“

Naudojant kompiuterį, reikia ištaisyti klaidas, kad būtų galima nustatyti, kaip veikia „Linux“. Jei norite naudoti „Intel“blykstę, naudokite ją: „Flash Tool Lite“ir USB mikro-B „marcado con el number 2“(ver paso anterior).

1. Suteikite „Flash Tool Lite“ir kompiuterio sąranką.

2. Haz click en Examinar y busca el archivo.zip de la imagen de Linux que descargaste (edison-image-ww25.5-15.zip).

3. Después de hacer click en "Start to flash", la herramienta descomprimirá automáticamente el archivo y empezará a subir la imágen de Linux and el Intel Edison.

4. Išsiaiškinkite ir išjunkite jungiamąjį kabelį USB kabelis 2, hazlo.

5. El stačiakampis de carga debe de llegar al 100%. Listo! Blykstė „Intel Edison“.

„Ahora que ya tienes“įdiegė „Linux Yocto Poky“imitatorių ir sukūrė „Intel Edison“konfigūraciją.

3 veiksmas: sukonfigūruokite „El Intel Edison“(„Primeros Pasos“)

„Intel Intel Edison“konfigūracija („Primeros Pasos“)
„Intel Intel Edison“konfigūracija („Primeros Pasos“)
„Intel Intel Edison“konfigūracija („Primeros Pasos“)
„Intel Intel Edison“konfigūracija („Primeros Pasos“)
„Intel Intel Edison“konfigūracija („Primeros Pasos“)
„Intel Intel Edison“konfigūracija („Primeros Pasos“)

„Edison“blykstės aprašymas, ahora configuraremos el dispositivo, para ello vamos and usar la terminal PuTTY. „PuTTY“yra SSH ir telneto klientas, originalus Simono Tathamo pasirinkimas „Windows“platformoje. Vamos a usar la conexión serial aqui.

„PuTTY“terminalas, abre el „Administrador de dispositivos“ir anota el número de puerto korespondencija „COM del Edison“(ne el virtualus). Este valor lo usaremos para inicializar la comunicación.

Abre PUTTY y luego, „Serial“botanikos rinkinys ir „COM del Edison“prancūzų kalba. Posteriormente anota la velocidad en baudios a la que se comunicara el Edison con tu equipo, escribe 115200. Finalmente presiona abrir para empezar la comunicación con el dispositivo.

Una vez que estas en la terminal de PuTTY puedes ejecutar comandos para configurar tu Edison. Išsami informacija apie tai, kaip sudaryti tareos, esančios haremoje ir sukonfigūruoti konfigūraciją el.

  • Konfigūracinė ir nenuosekli programa.
  • Configurar una contraseña para root.
  • „Conectar el Edison“ir raudonas WIFI.

Prisijunkite. Prisijunkite prie „root“ir „Enter“. Veras "root@edison" reiškia, kad tai yra encuentras ir el.

Ahora que ya te encuentras listo para teclear comandos, aprašykite:

configure_edison -setup

Įveskite ir įveskite posteriormente escribe un password y nuevamente presiona enter. Luego te pedira un nombre para el dispositivo (que en realidad es un alias mas que un nombre), escribe un nombre y da enter.

Galutinis pedira konfigūravimas be raudono WIFI. El móudlo escaneara el lugar y detectará las redes WIFI disponibles, escribe el number de la opción de la red detectada la que te vas a conectar y posteriormente te pedirá el password de la red, escríbelo y presiona enter.

Listo! Dabar tai yra WIFI ryšys. Te mostrará una pantalla en el navegador con tu hostame y tu directcción IP. Asimismo puedes revisar más parámetros de tu conexión escribiendo:

ifconfig

Įveskite raudonąjį WIFI, kuris yra labiausiai paruoštas.

Išsamus konfigūracijos sąrašas, skirtas konfigūruoti „Entorno de Desarrollo Integrado“(IDE) programoje. En nuestro caso sera… ¡Python!

4 žingsnis: „Usando Python Para Programar El Edison“

„Usando Python“programa „El Edison“
„Usando Python“programa „El Edison“
„Usando Python“programoje „El Edison“
„Usando Python“programoje „El Edison“

„El Edison“programa, skirta naudoti Arduino IDE, sin embargo aqui usaremos Python.

Naudodami „Python“aparatinę įrangą, naudokite biblioteka „MRAA“naudodamiesi GPIO sąveika. MRAA ir un biblioteca esqueleto de bajo nivel para comunicarse with los GPIO's and plataformas GNU / Linux and es compatible with casi todas las placas basadas en Linux utilizadas. Para ello procederemos a instalarla.

En Putty, vete a la terminal y escribe (puedes ocupar el editor vi o nano por ejemplo) ir el archivo que gestiona los paquetes de Linux /etc/opkg/base-feeds.conf lo siguiente:

  • src/gz all
  • src/gz edison
  • src/gz core2-32

Apsaugos archyvo ir faktinio sąrašo sąrašas, skirtas aprašymui:

opkg atnaujinimas

Ahora vamos ir instalar git, aprašykite:

opkg įdiegti git

„Ahora vamos“ir „GitHib en el Edison“instaliavimo ir saugyklos vieta:

git klonas https://github.com/drejkim/edison-scripts.git ~/edison-scripts

Ahora añadiremos ~/edison-scripts al PATH:

  • echo 'export PATH = $ PATH: ~/edison-scripts' >> ~/.profile
  • šaltinis ~/.profile

Ahora ejecutaremos los siguientes comandos:

  • resizeBoot.sh
  • installPip.sh
  • installMraa.sh

Listo! Ya debemos de tener configurado correctamente Python en elison. Naudokite „FileZilla“, kad galėtumėte iš anksto išstumti anekdotą ir išgelbėti („prueba.py“). „FileZilla“kompiuteryje („Lo debiste de haber descargado“) ir „Campo de Servicor“, „usuario“, „contraseña“ir „Puerto“escribimos la IP de tu edison (revisalo escribiendo ifcong en tu edison), el. usuario (root), tu slaptažodis y galutinis en el campo del puerto escribiremos 22, ya que es el que generalmente se emplea para conexiones SSH.

Jei norite perkelti duomenis iš archyvo „prueba.py“, aplankas „root“.

Ahora escribe, desde tu Edison y en la ubicación "root" el comando siguiente para ejecutar el código.

python prueba.py

„LED 13“stebėjimo debiutai apima 2 milisekundes. y se apaga 2 milisegundos.

Felicidades! Turi ištaisytą klaidą ir kodą bei fitono para Edisonui. Ahora ya estamos sąrašas procesų vaizdams ir nuodugniam Edisonui ir Pythonui, pero antescribe ir probaremos el Código de Python, kad būtų galima aptikti kompiuterį …

5 veiksmas: nustatykite „Rostros Con OpenCV“

Detektorius Rostrosas su „OpenCV“
Detektorius Rostrosas su „OpenCV“
Detektorius Rostrosas su „OpenCV“
Detektorius Rostrosas su „OpenCV“

„Intel Intel Edison“nėra vaizdo įrašų sąsajos sąsaja, po to, kai tai yra bandomoji programa, skirta „Python“funkcijai, kuri leidžia tobulinti probaremos el.

Nuestro objetivo es realizar la detección de rostros y, si se deta, realizar alguna acción.

Antes de empezar reikia, kad būtų įdiegtas „Python“ir „OpenCv“en nuestras computadora. Jei norite sužinoti, kaip tai padaryti realiame kompiuteryje:

  1. Parsisiųsti žaidimą Python 2.7 iš kompiuterio
  2. Parsisiųsti OpenCV versiją 3.3.0
  3. Ve al directorio en donde se extrajo OpenCv y pozicionate en C: / opencv / build / python / 2.7 / x86 y copia el arhivo cv2.pyd al directorio de python C: / Python27 / Lib / site-package.
  4. Instaliuoti pip, mas info en el siguiente enlace
  5. Įdiekite „numpy“ir parašykite „python -m pip pip install“-vartotojo numpy

Patikrinkite, ar reikia atlikti teisingą veikimo aprašymą ir įvesti kompiuterio python terminalą ir įvesti:

  • importuoti numpy
  • importuoti cv2

Ambos comandos respectivamente deben de responder ningún mensaje de error (osea nada), indicando que las bibliotecas se han importado correctamente.

Ahora descarga el archivo "3_detectaRostrosOjos.py", tai yra Python en terminalo kompiuteris ir koregavimo programa. Išsami programa, skirta aktyvuoti internetinę kamerą, skirtą asmeniniam kompiuteriui ir detektyvui, o taip pat yra komentaras, skirtas ESC.

Čia lograste, felicidades! Pasemos al siguiente paso que es korer este código desde nuestro Intel Edison y activar un motor a pasos cada vez que detecte un rostro.

6 veiksmas: Antes De Llegar Al Código En Edison… Teoria De Funcionamiento

Antes De Llegar Al Código ir Edison… Teoria De Funcionamiento!
Antes De Llegar Al Código ir Edison… Teoria De Funcionamiento!

La Detección de rostros es un caso muy específico del reconocimiento de objetos. Hay muchos enfoques para el reconocimiento veido. Nuodėmių embargas, vamos a discutir los dos mas comunes:

Segmentación basada en color: En esta técnica, la cara se segmenta según el color de la piel. Įveskite algoritmą, skirtą RGB formato vaizdams, mientras que en la etapa de processamien la cambiamos a los formatos HSV o YIQ. En este process, cada píxel es clasificado como un píxel del color de la piel o un píxel sin color de la piel. La razón detrás del uso de otros modeles de color que no sean RGB es que a veces RGB no puede differen los colores de la piel en diferentes condiciones de luz. Esto mejora reiškia reikšmingą spalvų naudojimą. Nosotros no usaremos este algoritmo

Funkcijomis pagrįstas pripažinimas: Esta es la técnica que si usaremos para este instructable. En esta técnica buscamos ciertas características, y en base a eso hacemos el reconocimiento. El empleo de "haar feature-based cascade" para la detekcija de rostros es un método eficaz de detección de objetos propuesto por Paul Viola y Michael Jones en su artíc Greitas objektų aptikimas naudojant sustiprintą paprastų funkcijų kaskadą. "2001 m. El algoritmo requiere de muchas imágenes positivas (en nuestro caso estas son imágenes de caras) y muchas imágenes negativas (que no contienen imágenes de caras). A partir de ello vamos a entrenar el modelo para extraer las características de cada imágen. Para este propósito, se utilizan las "haar feature" que se muestran en la figura. Cada una de las figuras es un valor único obtenido al restar la suma de píxeles debajo de un rectángulo blanco de la suma de píxeles debajo de un rectángulo negro. Los "haar features" deben estar entrenados para la cara, ojos, sonrisa ir kt. „OpenCV“biblioteka apima ir iš anksto nustatytų klasifikacijų sąjungą. Estos están disponibles en la carpeta C: / opencv / build / etc / haarcascades

7 veiksmas: nustatykite „Rostros“su „OpenCV“ir „Intel Edison“

Atraskite „Rostros“su „OpenCV“ir „Intel Edison“!
Atraskite „Rostros“su „OpenCV“ir „Intel Edison“!
Atraskite „Rostros“su „OpenCV“ir „Intel Edison“!
Atraskite „Rostros“su „OpenCV“ir „Intel Edison“!

Įdiegę biblioteka numpy y openCV su „Intel Edison“, para ello escribimos los siguientes comandos desde la Edison:

  • opkg atnaujinimas
  • opkg atnaujinimas
  • opkg įdiegti python-numpy python-opencv

Verifica que todo se haya instalado correctamente. Para ello ve a la terminal de Python desde tu arduino Edison y escribe:

  • importuoti numpy
  • importuoti cv2

Si cada uno de estos comandos no nos reporta ningún mensaje, todo se encuentra instalado a la perfección.

„Ahora vamos“yra „Intel Edison“vaizdo įrašų konfigūravimo įrankis. Atsisiųskite išmanųjį telefoną iš programos „IP Webcam“. „Hecho lo anterior“prisijungia prie programos „Ajustes de IP Webcam“/„Preferencias de video“/„Resolución de las fotos“ir dejamos el parámetro a 640x480. Tai yra „Intel Edison simplemente no está destinado“, skirtos procesų procesams, skirtiems debetams, skirtiems „RAM que posee“(1 GB RAM).

Iš „Web Webcam“programos spustelėkite žemesnį „Iniciar servidor“. Ahora, desde tu smart debes de poder ver la camara encendida (como si fuera a tomar photo) ir tiesioginis IP abajito. Įveskite dicha directcción IP ir naršykite žiniatinklyje iš kompiuterio ir deberas ver el video en vivo, en mi caso salgo yo sentado trabajando.

Kompiuteryje atsisiųskite „tres.py" ir el archivo "haarcascade_frontalface_default.xml" (Los dos códigos los puedes encontrar en los archivos del paso faktinis). Naudokite „FileZilla para pasar ambos códigos a una misma localidad de tu Edison (por ejemplo en el folder root) ir eytcuta el código de python con el comando:

python tres.py

Išsiųskite Edisono terminalą, kuriame bus rodomas „Dame la directcción IP“, įtrauktas į „IP“kamerą „IP Webcam“(es la misma que escribiste en el navegador de tu PC para conectarte) ir įveskite. Čia galite ištaisyti „Rostro detectado“ir Edisono terminalo bei „Rostro no detectado“terminalus, kuriuose yra žiniatinklio kamera. Išsiaiškinkite tai ir nustatykite „Intel Edison“deimanto žirio el. Variklį.

Rekomenduojamas: