En este artículo, se le guiará a través de la configuración y ejecución de su primer modelo de aprendizaje automático en su RaspberryPi utilizando el acelerador USB Google Coral.
¿Qué es?
Coral USB Accelerator es un dispositivo USB que proporciona un Edge TPU como coprocesador para su computadora. Permite al usuario ejecutar la inferencia de los modelos TensorFlow Lite preentrenados en su propio hardware ejecutando Linux
.
Requisitos previos de hardware
Como se mencionó anteriormente, el Acelerador requiere una computadora en funcionamiento Ubunutu10.0
o superior. En esta guía, usaremos una RaspberryPi para la computadora. Además de RaspberryPi, también necesitará un cable USB-A a micro-USB, una fuente de alimentación para RaspberryPi, una tarjeta microSD y un cable USB-A a USB-C.
Configurando tu RaspberryPi
Instale la última versión de Raspbian
en su microSD e insértela en la RaspberryPi. Si tiene acceso a un teclado, mouse y pantalla dedicados para su RaspberryPi, puede omitir los siguientes pasos. En caso de que no tenga acceso a periféricos dedicados para su RaspberryPi, continúe, conecte su RaspberryPi a su red personal y habilite SSH. Una vez que haya hecho eso, continúe y encienda su RaspberryPi y SSH a través de su computadora portátil.
Configuración del programa
Puede descargar el kit de desarrollo de software mediante wget
. Para instalar wget
, escriba el siguiente comando en la terminal.
sudo apt-get install wget
Luego escriba el siguiente comando.
$wget http://storage.googleapis.com/cloud-iot-edge-pretrained-models/edgetpu_api.tar.gz
$tar -xvzf edgetpu_api.tar.gz
Luego ejecute el script de instalación-
$ cd python-tflite-source $ bash ./install.sh
Te encontrarás con el siguiente mensaje:
“Durante el funcionamiento normal, Edge TPU Accelerator puede calentarse, según las cargas de trabajo de cálculo y la frecuencia de funcionamiento. Tocar la parte metálica del dispositivo después de haber estado funcionando durante un período prolongado puede provocar molestias y/o quemaduras en la piel. Como tal, cuando se ejecuta a la frecuencia de funcionamiento predeterminada, el dispositivo está diseñado para funcionar de manera segura a una temperatura ambiente de 35 °C o menos. O cuando se ejecuta a la frecuencia operativa máxima, debe operarse a una temperatura ambiente de 25 °C o menos”.
Esto es algo a tener en cuenta al trabajar con el Acelerador. Si planea usar la placa durante períodos prolongados, considere usar refrigeración activa o pasiva.
Ejecutando su primer modelo ML
El software que descargamos en el paso anterior contiene el Edge TPU Python module
, que proporciona API simples para la clasificación de imágenes y la detección de objetos. Usaremos la API de detección de objetos para este ejemplo. El código de demostración se puede encontrar en /home/pi/python-tflite-source/edgetpu/demo
.
El script de ejemplo está diseñado para realizar el reconocimiento de objetos en una imagen. Puede usar imágenes estándar que contengan objetos cotidianos y ejecutarlas a través del modelo ML usando el código que se menciona a continuación.
$ python3 ./object_detection.py \ --model python-tflite-source/edgetpu/test_data/ \ mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite \ --label python-tflite-source/edgetpu/test_data/coco_labels.txt \ --input "file path of input image" \ --output "file name and path of output image"
Si está ejecutando un SSH a RaspberryPi, puede copiar la imagen de salida a su computadora portátil usando el scp
comando.
Seguir adelante
Ahora que ha ejecutado su primer programa, puede jugar con el programa y probar cosas diferentes. Puede comenzar bajando el nivel de umbral para la confianza del modelo de clasificación; esto hará que el modelo muestre los resultados de los objetos que reconoce, pero el modelo no está lo suficientemente seguro de que sea correcto. Hacer esto puede ayudarlo a comprender cómo funciona el modelo de inferencia y los factores que afectan la confianza del modelo de reconocimiento. Una vez que esté seguro del código y el funcionamiento de TensorFlow, puede pasar a agregar una cámara a la RaspberryPi; esto eliminará la necesidad de transferir la imagen a la que se debe hacer referencia. Más adelante, también puede considerar agregar una pequeña pantalla LCD a la RaspberryPi, lo que casi hace que la necesidad de una computadora portátil sea redundante. Una vez que esté lo suficientemente seguro con el acelerador de TPU,
Las posibilidades son infinitas y el alcance de las correcciones y mejoras es ilimitado.
Publicación traducida automáticamente
Artículo escrito por ayush_npatel y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA