Სარჩევი:

Detección De Rostros Con Arduino Intel Edison: 8 ნაბიჯი
Detección De Rostros Con Arduino Intel Edison: 8 ნაბიჯი

ვიდეო: Detección De Rostros Con Arduino Intel Edison: 8 ნაბიჯი

ვიდეო: Detección De Rostros Con Arduino Intel Edison: 8 ნაბიჯი
ვიდეო: Detección y seguimiento de rostros con OpenCV + Python + Arduino Uno 2024, ივლისი
Anonim
Detección De Rostros Con Arduino Intel Edison
Detección De Rostros Con Arduino Intel Edison

ამ პროცესის დამუშავების პროცესის, ანალიზისა და ანალიზის შემსწავლელი მონაცემების სიღრმისეული მოთხოვნების შესაბამისად, საჭიროა გამოვიყენოთ უზარმაზარი ზომები კვლევის პროცესში, გამოვიყენოთ და გავაანალიზოთ ჩვენი შესაძლებლობების რეალური შესაძლებლობები. ser tratados por un ordenador. ფაქტობრივად, los mejores algoritmos para tales tareas se basan en redes neuronales convolucionales, las cuales generalmente Processing miles de imágenes de rostros humanos mediante el uso de aprendizaje supervisado for entrenar el algoritmo que identificara el objeto buscado. ეს ემბარგოა, არ არის საჭირო იმისათვის, რომ გამოიყენოთ ინსტრუქცია და გამოიყენოთ ჩვენი ბიბლიოთეკა, რომელიც დაფუძნებულია OpenCV– ს ღია გზავნილებზე, როგორც arduo trabajo de la comunidad de cientificos y desarrolladores y aportan real, con un rico set de carcaterisiticas que podemos implementar facilmente para la detección y reconocimiento de imágenes.

OpenCV არის encuentra escrita en C ++ ორიენტაციისა და მიზნის მისაღწევად, ეს ნიშნავს, რომ ეს არის რამდენიმე ძირითადი პარაგრაფი, რომლებიც გამოიყენება ჩვენი პროგრამის გამოყენებით Python como nuestro lenguaje de programaciónn for realizar la detección de rostros. un procesamiento y una imágen de salida. Intel Edison არ შეიცავს ვიდეოს ინტერფეისს, რომელიც არის Python– ის ან სხვა კომპიუტერის სკრიპტის გამომცემელი. Luego, después del funcionamiento exitoso del código en la PC, modificaremos el código para correrlo en el Edison. Las cosas se aclararán cuando hagamos la implementación práctica. Nuestro objetivo es realizar la detección de rostros y, si se detecta, realizar alguna acción.

მარაგები

El material que Requerimos para llevar a cabo este tutorial es:

HARDWARE

  • 1 ლეპტოპი/კომპიუტერი.
  • 1 Placa Arduino Intel Edison.
  • 2 კაბელი USB micro-B.
  • სმარტფონის 1 აპლიკაცია "IP ვებკამერა".
  • 1 სერვომოტორული sg 90.

პროგრამული უზრუნველყოფა

  • Intel Flash Tool Lite V5.2.4
  • PuTTy
  • FileZilla FTP
  • Imágen Yocto Poky (V25.5-15)
  • VS კოდი
  • პითონი 2.7
  • OpenCV ვერსია 3.3.0
  • ამობურცული
  • Libreria MRAA
  • დრაივერები Windows– ისთვის Intel Edison– ისთვის (Se descargan en cuanto se conecta la placa).
  • Windows– ის არქივი (თქვენ უნდა გახსნათ Windows XP– ის ლეპტოპი).

ნაბიჯი 1: Conectando El Intel Edison a La PC

Conectando El Intel Edison და La PC
Conectando El Intel Edison და La PC
Conectando El Intel Edison და La PC
Conectando El Intel Edison და La PC
Conectando El Intel Edison და La PC
Conectando El Intel Edison და La PC

აპარატურის ინდექსი Intel Edison lo podemos encontrar en tres presentaciones:

  • დააინსტალირეთ Intel– ით თავსებადი Arduino– სთან ერთად (ეს არის გამოყენების ინსტრუქცია).
  • Una placa mini-breakout (con el móudlo ya montado) თავსებადი con la გაფართოების Board de Arduino.
  • გამოიყენეთ Intel Edison და თქვენი ბუნებრივი რესურსები (საჭიროა PCB– ს მიერ მომზადებული პროდუქტები).

თქვენ იყენებთ გაფართოების თავსებადობას Arduino debido a la flexibilidad და compatibilidad para interactuar con otros actuadores y sensores– თან ერთად. El Intel Edison, სხვადასხვა სისტემები Arduino como UNO– ს ან MEGA– ს შორის, რომელიც დაკავშირებულია ოპერაციულ სისტემასთან, Linux– ის Yocto– ს მსგავსად.

USB კაბელის კაბელი USB micro-B del Arduino Edison– ს აქვს ახალი ლეპტოპი. Fijate bien que el interrupor (marcado con el número 1 en la imágen), ეს არის ის, რაც შეიძლება გამოყენებულ იქნას როგორც Arduino Edison permanecerá apagado.

El conector USB micro-B marcado con el numero 2 შეგიძლიათ გამოიყენოთ 5V კვების სისტემის გამოყენებით, გამოიყენეთ IDE Arduino პროგრამა, ლექცია/მეხსიერება და მეხსიერება, რომელიც იყენებს USB და Ethernet სერვისებს.

El conector USB micro-B marcado con el número 3 რომ გამოვიყენოთ SSH– სთან ერთად, ედისონის გამოყენებით.

თქვენ შეგიძლიათ დააინსტალიროთ Windows– ის დრაივერები. Posteriormente revisamos en el Admsinistrador de dispositivos de Windows si reconoce dos puertos:

  • El puerto COM ვირტუალური del Intel Edison
  • სერიული COM del Intel Edison.

ეს არის წინა ვერსიის გადამოწმების მეთოდი, რომელიც მოიცავს შემდეგ პროგრამებს, Intel Edison– ს Linux– ის გამოსახულების გამოყენებით.

ნაბიჯი 2: 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

თქვენ შეგიძლიათ გამოიყენოთ კომპიუტერი კომპიუტერის საშუალებით, რომელიც ასახავს Linux– ის გამოსახულებას. თქვენ შეგიძლიათ გამოიყენოთ Flash Flash პროგრამა Intel– ისთვის: Flash Tool Lite და conector USB micro-B marcado con el numero 2 (ver paso anterior).

1. გაეცანით "Flash Tool Lite" და დაკავშირებულია კომპიუტერთან.

2. დააწკაპუნეთ და შეისწავლეთ არქივი. Zip de la imagen de Linux და descargaste (edison-image-ww25.5-15.zip).

3. დააწკაპუნეთ ღილაკზე "დაიწყეთ ციმციმი", რომელიც აწარმოებს არქივს და ავრცელებს Linux– ს და Intel Edison– ის ქვემოთა სისტემას.

4. თქვენ უნდა გაეცნოთ კონვექტორულ კაბელს USB კაბელი 2, hazlo.

5. El rectangulito de carga debe de llegar al 100%. ლისტო! თქვენ იცით Intel Edison.

თქვენ შეგიძლიათ დააინსტალიროთ "Linux Yocto Poky" პროგრამული უზრუნველყოფა Intel Edison– ის კონფიგურაციის საშუალებით.

ნაბიჯი 3: Configrando El Intel Edison (Primeros Pasos)

Configurando El Intel Edison (Primeros Pasos)
Configurando El Intel Edison (Primeros Pasos)
Configurando El Intel Edison (Primeros Pasos)
Configurando El Intel Edison (Primeros Pasos)
Configurando El Intel Edison (Primeros Pasos)
Configurando El Intel Edison (Primeros Pasos)

გსურთ, იხილოთ აღწერის ქართული (საქართველო) ვერსია Google Translate- ის მეშვეობით? აღწერის ინგლისური (ამერიკის შეერთებული შტატები) ვერსიის დაბრუნება თარგმანი PuTTY არის კლიენტის SSH და ტელეფონის ნომერი, რომელიც თავდაპირველად გამოქვეყნდა Simon Tatham– ისთვის Windows– ის პლატფორმაზე. Vamos a usar la conexión serial aqui.

Antes de abrir la terminal de PuTTY, abre el "Administrador de dispositivos" y anota el número de puerto korrespondiente para el COM del Edison (არა ვირტუალური). Este valor lo usaremos para inicializar la comunicación.

Abre PUTTY y luego, seelcciona el botón "Serial" და ingresa el número de puerto COM del Edison. გამოქვეყნების თარიღი en baudios a la que se comunicara el Edison con tu equipo, escribe 115200. დასასრულს presiona abrir para empezar la comunicación con el dispitivivo.

Una vez que estas en la terminal de PuTTY puedes ejecutar comandos para configurar tu Edison. Lo siguiente es un listado tareas que haremos en la consola para configurar el dispitivo:

  • კონფიგურაციის გარეშე, რომელიც გამოიყენება დისპსოტივისთვის.
  • კონფიგურაცია root კონტრასტის გარეშე.
  • Conectar el Edison არის წითელი WIFI.

თქვენ უნდა შეხვიდეთ სისტემაში. აღწერეთ "root" y presiona "Enter". ეს არის "root@edison", რაც ნიშნავს იმას, რომ თქვენ მოგიწევთ ჩართვა დირექტორის ფესვში.

გაეცანით თქვენს ჩამონათვალს ტეკელარული კომანდოსთვის, აღწერეთ:

configure_edison -დაყენება

შეიყვანეთ წინა პოსტი და შეიყვანეთ პაროლი და შეიყვანეთ ახალი მნიშვნელობა. Luego te pedira un nombre para el dispositivo (que en realidad es un alias mas que un nombre), აღწერეთ არა ნომინალურად და შესასვლელად.

დაასრულეთ თქვენი წითელი WIFI კონფიგურაცია. WIFI disponibles, აღწერეთ თქვენი რიცხვი და აღწერეთ თქვენი წითელი წითელი დეტექტორი, რომელიც შეიცვლება წინა პაროლით, შეიყვანეთ პაროლი და შეიყვანეთ.

ლისტო! ეს არის დაკავშირებული WIFI– სთან. Te mostrará una pantalla en el navegador con tu hostame y tu dirección IP. Asimismo puedes revisar más parámetros de tu conexión escribiendo:

ifconfig

Presiona enter y te mostrará los parámetros de tu red WIFI.

Ya estamos listo para configurar el Entorno de Desarrollo Integrado (IDE) para empezar con la programación. არ ვიცი რა არის… ¡პითონი!

ნაბიჯი 4: Usando Python Para Programar El Edison

უსანდო პითონი პროგრამისტი ელ ედისონისთვის
უსანდო პითონი პროგრამისტი ელ ედისონისთვის
უსანდო პითონი პროგრამისტი ელ ედისონისთვის
უსანდო პითონი პროგრამისტი ელ ედისონისთვის

El Edison– მა გამოიყენა პროგრამა IDE de Arduino– სთვის, რომელიც ემსახურება პითონის გამოყენებას.

Python– ის ტექნიკითა და ტექნიკით, საჭიროა ბიბლიოთეკის „MRAA“გამოყენება GPIO– სთან ურთიერთობისას. MRAA არის ბიბლიოთეკა ქალაქის დონეზე, რომელიც დაკავშირებულია GPIO– ს GNU / Linux– ის პლატფორმებთან და არის თავსებადი სისტემებით, რომლებიც გამოიყენება Linux– ის გამოყენებით. Para ello procederemos a instalarla.

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

  • src/gz ყველა
  • src/gz edison
  • src/gz core2-32

შემდგომი დაცვა არქივში და აქტუალიზაციასთან დაკავშირებული პაკეტების აღწერილობაში:

opkg განახლება

Ahora vamos instalar git, აღწერეთ:

opkg დააინსტალირეთ git

Ahora vamos a instalar un repositorio de GitHib en el Edison:

git კლონი https://github.com/drejkim/edison-scripts.git ~/edison-scripts

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

  • echo 'export PATH = $ PATH: ~/edison-scripts' >> ~/.პროფილი
  • წყარო ~/.პროფილი

Ahora ejecutaremos los siguientes comandos:

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

ლისტო! ეს არის პითონისა და ედისონის კონფიგურაციის კონფიგურაცია. გთხოვთ გაითვალისწინოთ წინა ejecutaremos el código anexado en este paso ("prueba.py") და FileZilla. ფაილზილა (PC debista de haber descargado) გამოიყენება კამპანიაში "Servidor", "usuario", "contraseña" y "Puerto" escribimos la IP de tu edison (revisalo escribiendo ifcong en tu edison), el usuario (root), tu password y finalmente en el campo del puerto escribiremos 22, ya que es el que generalmente se emplea para conexiones SSH.

თქვენ შეგიძლიათ შეცვალოთ არქივი "prueba.py" საქაღალდეში "root".

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

პითონი prueba.py

დააკვირდით LED– სთან ერთად, რომელიც შეიცავს 13 მილიონზე მეტ რაოდენობას. y se apaga 2 milisegundos.

¡ფელიციდადები! აქვს ejecutado correctamente un código en phyton para tu Edison. თქვენ შეგიძლიათ შეაფასოთ პროცესორი, რომელიც შედგენილია Edison– ში და Python– ში, ან აღწერს თქვენს პრობლემებს, თუ როგორ ხდება Python– მა აღმოაჩინოს თქვენი კომპიუტერები…

ნაბიჯი 5: აღმოაჩინეთ Rostros Con OpenCV

Detectando Rostros Con OpenCV
Detectando Rostros Con OpenCV
Detectando Rostros Con OpenCV
Detectando Rostros Con OpenCV

El Intel Edison არ შეიცავს რაიმე სახის ვიდეოს გადაღებას, თუ როგორ გამოვიყენო ის, თუ როგორ გამოვიყენო ის პითონის ფუნქციონირებით და ალბათობით, რომელიც ემზადება კომპიუტერის შემდგომში და ედისონში.

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

Antes de empezar necesitamos tener instalado Python y OpenCv en nuestras computadora. Por lo que vamos a realizar estos pasos en nuestra PC:

  1. ჩამოტვირთეთ Python 2.7 კომპიუტერის გარეშე
  2. ჩამოტვირთეთ OpenCV ვერსია 3.3.0
  3. თქვენ შეგიძლიათ გახსნათ OpenCv და CC: / opencv / build / python / 2.7 / x86 და დააკოპირეთ cv2.pydon დირექტორი დირექტორი python C: / Python27 / Lib / საიტ-პაკეტები.
  4. დააინსტალირეთ, გაეცანით ინფორმაციას და შეიტანეთ დამატებითი ინფორმაცია
  5. Install numpy escribiendo el comando de python -m pip install -მომხმარებელი numpy

იმის გასარკვევად, თუ როგორ უნდა შევასრულოთ კორექტირების ფუნქცია, დავწერო ტერმინალი პითონისა და კომპიუტერის შესასვლელად:

  • იმპორტირებული numpy
  • იმპორტი cv2

Ambos comandos respectivamente deben de responder ningún mensaje de error (osea nada), მიუთითებს რა ბიბლიოთეკას აქვს შესამოწმებელი შესწორება.

დააწკაპუნეთ არქივში "3_detectaRostrosOjos.py", არ არის პითონის ტერმინალი და თქვენი კომპიუტერი და შესაბამისი პროგრამა. ეს არის პროგრამული უზრუნველყოფა, რომელიც ააქტიურებს ვებკამერას თქვენს კომპიუტერში და აღმოაჩენს როსტროს და აჩვენებს თქვენს კომპიუტერს, შემდეგ გაეცანით პროგრამას ESC.

გილოცავთ, გილოცავთ! Pasemos al siguiente paso que es correr est código desde nuestro Intel Edison y activar un motor and pasos cada vez que detee un rostro.

ნაბიჯი 6: Antes De Llegar Al Código En Edison… ¡Teoria De Funcionamiento

Antes De Llegar Al Código En Edison… ¡Teoria De Funcionamiento!
Antes De Llegar Al Código En 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 სახის. Sin embargo, 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. შემოვიღე ეს არის algoritmo suele ser una imagen en formato de colours RGB, mientras que en la etapa de processamiento la cambiamos და los formatos HSV o YIQ. ამ პროცესის შესაბამისად, ეს არის კლასიკური გაფორმება, რომელიც დაკავშირებულია ფერით და ლაპარაკით. მოდელის გამოყენების ფერი შეიძლება გამოყენებულ იქნას როგორც მოდელი, რომელიც არ შეესაბამება RGB და არის RGB, რომელიც არ განასხვავებს სხვადასხვა ფერებს სხვადასხვა პირობაზე. Esto mejora signativamente al usar otros modelos de color. Nosotros no usaremos este algoritmo

მახასიათებლებზე დაფუძნებული ამოცნობა: Esta es la técnica que si usaremos para este instructable. En esta técnica buscamos ciertas características, y საფუძველზე eso hacemos el reconocimiento. El empleo de "haar feature-based cascade" para la detección de rostros es un método eficaz de detección de objetos propuesto yu suchailo en arto yo Michael julio su Paulo " ობიექტების სწრაფი გამოვლენა მარტივი მახასიათებლების გაძლიერებული კასკადის გამოყენებით "2001 წ. 2001 წ." ეს არის კასკადი ფუნქცია ", რომელიც გამოიყენება უკუკავშირისა და პოზიტიური თვისებების საწინააღმდეგოდ. El algoritmo requiere de muchas imágenes positivas (en nuestro caso estas son imágenes de caras) და muchas imágenes negativas (que no contienen imágenes de caras). Partir de ello vamos entrenar el modelo para extraer las características de cada imágen. Para este propósito, se useizan 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 და ა.შ. ბიბლიოთეკა OpenCV contiene un conjunto de clasificadores predefinidos. Estos están disponibles en la carpeta C: / opencv / build / etc / haarcascades

ნაბიჯი 7: აღმოაჩინეთ Rostros Con OpenCV და Intel Edison

აღმოაჩინეთ Rostros Con OpenCV და Intel Edison!
აღმოაჩინეთ Rostros Con OpenCV და Intel Edison!
აღმოაჩინეთ Rostros Con OpenCV და Intel Edison!
აღმოაჩინეთ Rostros Con OpenCV და Intel Edison!

Vamos a instalar la biblioteca numpy y openCV en Intel Edison, para ello escribimos los siguientes comandos desde la terminal del Edison:

  • opkg განახლება
  • opkg განახლება
  • opkg დააინსტალირეთ python-numpy python-opencv

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

  • იმპორტირებული numpy
  • იმპორტი cv2

თუ თქვენ არ გექნებათ შეტყობინება, შეგიძლიათ შეაფასოთ ინსტალაცია la perfección.

Ahora vamos configurar la fuente de donde el donde el Intel Intel Edison leera los rostros. სმარტფონის საშუალებით შეგიძლიათ ჩამოტვირთოთ აპლიკაცია "IP ვებკამერა". ეს არის წინა აპლიკაცია "Ajustes de IP ვებკამერა"/"Preferencias de video"/"Resolución de las fotos" y dejamos el parámetro a 640x480. ეს არის ნოტარიუსი, რომელიც შეიცავს Intel Edison- ს მარტივად, რომელიც არ არის განსაზღვრული პროცესის დაწყების პროცესში, რომელიც დაფუძნებულია RAM– ის ოპერატიულ მეხსიერებაზე (1 GB ოპერატიული მეხსიერება).

პროგრამის "IP ვებკამერა" დააწკაპუნეთ ბოლოში "Iniciar servidor". შენიშვნა, სმარტფონის დებე დე პოდერის გადაღება კამერაში (როგორც სურათის სურათის გადაღება) და მისი უშუალო მართვა IP აბაჟით. გამოწერეთ დიპლომატიური მისამართი IP– ში და თქვენს ვებ – გვერდზე PC– ზე და ვიდეოებში, თუ ეს შესაძლებელია, როგორც ვიდეოში, ასევე გადაგზავნისას.

დააწკაპუნეთ el código "tres.py" y el archivo "haarcascade_frontalface_default.xml" (Los dos códigos los puedes encontrar en los archivos del paso ფაქტობრივი) თქვენს კომპიუტერში. გამოიყენეთ FileZilla for pasar ambos códigos un un misma localidad de tu Edison (მაგალითად, საქაღალდის ძირში) და python con el comando:

პითონის ტრესი. py

გსურთ, იხილოთ აღწერის ქართული (საქართველო) ვერსია Google Translate- ის მეშვეობით? აღწერის ინგლისური (ამერიკის შეერთებული შტატები) ვერსიის დაბრუნება თარგმანი თქვენ უნდა შეასწოროთ "Rostro deteco" და ტერმინალი Edison y "Rostro no detector" ტერმინალში, რომელიც დაფუძნებულია თქვენს მობილურ ვებ კამერაზე. Asimismo si se detea un rostro tu Intel Edison debe de hacer girar el servomotor.

გირჩევთ: