        <style>
            #donation_buttons td{
                border:medium none;
                background: inherit !important;
            }
            #donation_buttons table{               
                border:medium none;
                margin: auto;
                width: auto;
            }
        </style>
        {"id":5134,"date":"2019-11-26T13:51:12","date_gmt":"2019-11-26T13:51:12","guid":{"rendered":"http:\/\/rogerbit.com\/wprb\/?p=5134"},"modified":"2019-11-26T13:51:12","modified_gmt":"2019-11-26T13:51:12","slug":"identificacion-de-frutas-usando-arduino-y-tensorflow","status":"publish","type":"post","link":"https:\/\/rogerbit.com\/wprb\/2019\/11\/identificacion-de-frutas-usando-arduino-y-tensorflow\/","title":{"rendered":"Identificaci\u00f3n de frutas usando Arduino y TensorFlow"},"content":{"rendered":"<p><span>Arduino tiene la misi\u00f3n de hacer que el aprendizaje autom\u00e1tico sea lo suficientemente f\u00e1cil de usar para cualquiera.\u00a0La otra semana\u00a0<\/span><a href=\"https:\/\/blog.tensorflow.org\/2019\/11\/how-to-get-started-with-machine.html\"><span>anunciamos<\/span><\/a><span>\u00a0la disponibilidad de TensorFlow Lite Micro en Arduino Library Manager.\u00a0Con esto, algunos ejemplos de ML listos para usar, como reconocimiento de voz, visi\u00f3n artificial simple e incluso un tutorial de entrenamiento de reconocimiento de gestos de extremo a extremo.\u00a0Para un fondo completo, le recomendamos que eche un vistazo a ese\u00a0<\/span><a href=\"https:\/\/blog.arduino.cc\/2019\/10\/15\/get-started-with-machine-learning-on-arduino\/\"><span>art\u00edculo<\/span><\/a><span>\u00a0.\u00a0<\/span><\/p>\n<hr \/>\n<p>Tal vez pueda interesarte proyectos en arduino, pic, rob\u00f3tica, telecomunicaciones, suscribete en\u00a0<a href=\"http:\/\/www.youtube.com\/user\/carlosvolt?sub_confirmation=1\">http:\/\/www.youtube.com\/user\/carlosvolt?sub_confirmation=1<\/a>\u00a0mucho videos con c\u00f3digo fuentes completos y diagramas<\/p>\n<div id=\"ubm-banners-rotation-n1\" data-interval=\"4000\" class=\"ubm_banners_rotation\" style=\"overflow: hidden; width: 200px; height: 150px;\"><div id=\"3_ubm_banner\" class=\"ubm_rotating_banner\"><a href=\"https:\/\/bit.ly\/3aXRDAu\" target=\"_blank\" rel=\"dofollow\"><img src=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/useful_banner_manager_banners\/3-2-logo youtube.png\" width=\"100%\" height=\"100%\" alt=\"SUSCRIBETE A NUESTRO CANAL DE YOUTUBE, TUTORIALES GRATIS\" \/><\/a><\/div><\/div>\n<hr \/>\n<p><span>En este art\u00edculo, veremos un tutorial a\u00fan m\u00e1s simple de principio a fin utilizando la biblioteca Micro TensorFlow Lite y el\u00a0sensor de proximidad y color\u00edmetro\u00a0<\/span><a href=\"https:\/\/store.arduino.cc\/arduino-nano-33-ble-sense?utm_source=blog&amp;utm_campaign=ai&amp;utm_content=fruit_identification\"><span>Arduino Nano 33 BLE Sense<\/span><\/a><span>\u00a0para clasificar objetos.\u00a0Para hacer esto, ejecutaremos una peque\u00f1a red neuronal en el tablero mismo.\u00a0<\/span><\/p>\n<p><span>La filosof\u00eda de TinyML es hacer m\u00e1s en el dispositivo con menos recursos, en factores de forma m\u00e1s peque\u00f1os, menos energ\u00eda y silicio de menor costo.\u00a0Ejecutar inferencias en la misma placa que los sensores tiene beneficios en t\u00e9rminos de privacidad y duraci\u00f3n de la bater\u00eda y significa que se puede hacer independientemente de una conexi\u00f3n de red.\u00a0<\/span><\/p>\n<p><span>El hecho de que tengamos el sensor de proximidad en el tablero significa que obtenemos una lectura instant\u00e1nea de la profundidad de un objeto frente al tablero, en lugar de usar una c\u00e1mara y tener que determinar si un objeto es de inter\u00e9s a trav\u00e9s de la visi\u00f3n artificial.\u00a0<\/span><\/p>\n<p><span>En este tutorial, cuando el objeto est\u00e1 lo suficientemente cerca, tomamos muestras del color: el sensor RGB incorporado se puede ver como una c\u00e1mara de color de 1 p\u00edxel.\u00a0Si bien este m\u00e9todo tiene limitaciones, nos proporciona una forma r\u00e1pida de clasificar objetos solo con una peque\u00f1a cantidad de recursos.\u00a0Tenga en cuenta que podr\u00eda ejecutar un\u00a0<\/span><a href=\"http:\/\/cs231n.github.io\/convolutional-networks\/\"><span>modelo de visi\u00f3n<\/span><\/a><span>\u00a0completo\u00a0<a href=\"http:\/\/cs231n.github.io\/convolutional-networks\/\">basado en CNN<\/a>\u00a0en el dispositivo.\u00a0Como esta placa Arduino en particular incluye un color\u00edmetro a bordo, pensamos que ser\u00eda divertido e instructivo comenzar de esta manera.<\/span><\/p>\n<p><span>Mostraremos una aplicaci\u00f3n TinyML de extremo a extremo simple pero completa que se puede lograr r\u00e1pidamente y sin un fondo profundo en ML o incrustado.\u00a0Lo que cubrimos aqu\u00ed es la captura de datos, la capacitaci\u00f3n y la implementaci\u00f3n del clasificador.\u00a0Se pretende que sea una demostraci\u00f3n, pero hay margen para mejorar y aprovechar esto si decide conectar una c\u00e1mara externa en el futuro.\u00a0Queremos que tenga una idea de lo que es posible y un punto de partida con las herramientas disponibles.<\/span><\/p>\n<p><iframe loading=\"lazy\" width=\"1160\" height=\"653\" src=\"https:\/\/www.youtube.com\/embed\/ftLn-w8DCIw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<h3><strong><span>Lo que necesitar\u00e1s<\/span><\/strong><\/h3>\n<ul>\n<li><a href=\"https:\/\/store.arduino.cc\/arduino-nano-33-ble-sense?utm_source=blog&amp;utm_campaign=ai&amp;utm_content=fruit_identification\"><span>Arduino Nano 33 BLE Sense<\/span><\/a><\/li>\n<li><span>Un cable micro USB<\/span><\/li>\n<li><span>Una m\u00e1quina de escritorio \/ port\u00e1til con un navegador web\u00a0<\/span><\/li>\n<li><span>Algunos objetos de diferentes colores\u00a0<\/span><\/li>\n<\/ul>\n<h3><strong><span>Sobre el tablero Arduino<\/span><\/strong><\/h3>\n<p><span>La\u00a0placa de\u00a0<\/span><a href=\"https:\/\/store.arduino.cc\/arduino-nano-33-ble-sense?utm_source=blog&amp;utm_campaign=ai&amp;utm_content=fruit_identification\"><span>detecci\u00f3n Arduino Nano 33 BLE<\/span><\/a><span>\u00a0que estamos usando aqu\u00ed tiene un microcontrolador Arm Cortex-M4 con mbedOS y una tonelada de sensores integrados: micr\u00f3fono digital, aceler\u00f3metro, giroscopio, temperatura, humedad, presi\u00f3n, luz, color y proximidad.\u00a0<\/span><\/p>\n<p><span>Aunque es peque\u00f1o seg\u00fan la nube o los est\u00e1ndares m\u00f3viles, el microcontrolador es lo suficientemente potente como para ejecutar modelos TensorFlow Lite Micro y clasificar los datos del sensor de los sensores integrados.<\/span><\/p>\n<p><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm.png\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-5135\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm.png\" alt=\"\" width=\"980\" height=\"876\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm.png 980w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm-300x268.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm-768x686.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm-600x536.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/screen_shot_2019-11-04_at_6.37.14_pm-820x733.png 820w\" sizes=\"(max-width: 980px) 100vw, 980px\" \/><\/a><\/p>\n<h3><strong><span>Configuraci\u00f3n del editor web Arduino Create<\/span><\/strong><\/h3>\n<p><span>En este tutorial usaremos Arduino Create Web Editor, una herramienta basada en la nube para programar placas Arduino.\u00a0Para usarlo, debe registrarse para obtener una cuenta gratuita e instalar un complemento para permitir que el navegador se comunique con su placa Arduino a trav\u00e9s de un cable USB.<\/span><\/p>\n<p><span>Puede configurarlo r\u00e1pidamente siguiendo las\u00a0instrucciones de\u00a0<\/span><a href=\"https:\/\/create.arduino.cc\/getting-started\/plugin?page=1\"><span>inicio<\/span><\/a><span>\u00a0que lo guiar\u00e1n a trav\u00e9s de lo siguiente:<\/span><\/p>\n<ul>\n<li><span>Descargue e instale el complemento<\/span><\/li>\n<li><span>Inicie sesi\u00f3n o reg\u00edstrese para obtener una cuenta gratuita<\/span><\/li>\n<\/ul>\n<p><span>(\u00a0<\/span><strong><span>NOTA<\/span><\/strong><span>\u00a0: Si lo prefiere, tambi\u00e9n puede usar la aplicaci\u00f3n de escritorio Arduino IDE. La configuraci\u00f3n para la cual se describe en el\u00a0<\/span><a href=\"https:\/\/blog.arduino.cc\/2019\/10\/15\/get-started-with-machine-learning-on-arduino\/\"><span>tutorial anterior<\/span><\/a><span>\u00a0).<\/span><\/p>\n<h3><strong><span>Capturando datos de entrenamiento<\/span><\/strong><\/h3>\n<p><span>Ahora capturaremos datos para usar para entrenar nuestro modelo en TensorFlow.\u00a0Primero, elija algunos objetos de diferentes colores.\u00a0Usaremos fruta, pero puedes usar lo que prefieras.\u00a0<\/span><\/p>\n<h2><strong><span>Configurar el Arduino para la captura de datos<\/span><\/strong><\/h2>\n<p><span>A continuaci\u00f3n, usaremos Arduino Create para programar la placa Arduino con una aplicaci\u00f3n object_color_capture.ino que muestrea datos de color de los objetos que colocas cerca de \u00e9l.\u00a0La placa env\u00eda los datos de color como un registro CSV a su m\u00e1quina de escritorio a trav\u00e9s del cable USB.<\/span><\/p>\n<p><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/create_fruit_cap.gif\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-5136\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/create_fruit_cap.gif\" alt=\"\" width=\"480\" height=\"270\" \/><\/a><\/p>\n<p><span>Para cargar la aplicaci\u00f3n object_color_capture.ino en su placa Arduino:<\/span><\/p>\n<ul>\n<li><span>Conecte su placa a su computadora port\u00e1til o PC con un cable USB<\/span>\n<ul>\n<li><span>La placa Arduino lleva un micro USB macho<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Abra object_color_capture.ino en Arduino Crear haciendo clic en\u00a0<\/span><a href=\"https:\/\/create.arduino.cc\/editor\/TensorFlowExamples\/ca761558-13ed-4190-baee-89ced06147c3\/preview\"><span>este enlace<\/span><\/a><\/li>\n<\/ul>\n<p><span>Su navegador abrir\u00e1 la aplicaci\u00f3n web Arduino Create (vea GIF arriba).<\/span><\/p>\n<ul>\n<li><span>Presione ABRIR EN EL EDITOR WEB<\/span>\n<ul>\n<li><span>Para los usuarios existentes, este bot\u00f3n estar\u00e1 etiquetado AGREGAR A MI SKETCHBOOK<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Presione\u00a0<\/span><strong><span>Cargar y Guardar<\/span><\/strong>\n<ul>\n<li><span>Esto tomar\u00e1 un minuto<\/span><\/li>\n<li><span>Ver\u00e1 que la luz amarilla en el tablero parpadea mientras est\u00e1 programada<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Abra el\u00a0<strong>monitor<\/strong>\u00a0serial<\/span>\n<ul>\n<li><span>Esto abre el\u00a0panel\u00a0<\/span><strong><span>Monitor<\/span><\/strong><span>\u00a0en el lado izquierdo de la aplicaci\u00f3n web<\/span><\/li>\n<li><span>Ahora ver\u00e1 datos de color en formato CSV aqu\u00ed cuando los objetos est\u00e9n cerca de la parte superior del tablero<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2><strong><span>Captura de datos en archivos CSV para cada objeto<\/span><\/strong><\/h2>\n<p><span>Para cada objeto que queramos clasificar, capturaremos algunos datos de color.\u00a0Al hacer una captura r\u00e1pida con solo un ejemplo por clase, no entrenaremos un modelo generalizado, \u00a1pero a\u00fan podemos obtener una prueba r\u00e1pida de concepto trabajando con los objetos que tiene a mano!\u00a0<\/span><\/p>\n<p><span>Digamos, por ejemplo, que estamos probando una\u00a0<\/span><strong><span>manzana<\/span><\/strong><span>\u00a0:<\/span><\/p>\n<ul>\n<li><span>Restablezca la placa con el peque\u00f1o bot\u00f3n blanco en la parte superior.<\/span>\n<ul>\n<li><span>\u00a1Mantenga su dedo alejado del sensor, a menos que quiera probarlo!<\/span><\/li>\n<li><span>El\u00a0<\/span><strong><span>monitor<\/span><\/strong><span>\u00a0en Arduino Create dir\u00e1 &#8216;Puerto serie no disponible&#8217; por un minuto<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Entonces deber\u00eda ver rojo, verde, azul aparecer en la parte superior del monitor en serie<\/span><\/li>\n<li><span>Pon el frente del tablero a la manzana.\u00a0<\/span>\n<ul>\n<li><span>La placa solo tomar\u00e1 muestras cuando detecte que un objeto est\u00e1 cerca del sensor y est\u00e1 suficientemente iluminado (encienda las luces o est\u00e9 cerca de una ventana)<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Mueva el tablero alrededor de la superficie del objeto para capturar variaciones de color.<\/span><\/li>\n<li><span>Ver\u00e1 que los valores de color RGB aparecen en el monitor en serie como datos separados por comas.\u00a0<\/span><\/li>\n<li><span>Capture a los pocos segundos muestras del objeto.<\/span><\/li>\n<li><span>Copie y pegue estos datos de registro del\u00a0<\/span><strong><span>Monitor<\/span><\/strong><span>\u00a0en un editor de texto<\/span>\n<ul>\n<li><span>Consejo: desactive la casilla de verificaci\u00f3n AUTOSCROLL en la parte inferior para detener el movimiento del texto<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span>Guarde su archivo como\u00a0<\/span><strong><span>apple.csv<\/span><\/strong><\/li>\n<li><span>Restablezca la placa con el peque\u00f1o bot\u00f3n blanco en la parte superior.<\/span><\/li>\n<\/ul>\n<p><span>Hacer esto unas cuantas veces m\u00e1s, la captura de otros objetos (por ejemplo\u00a0<\/span><strong><span>banana.csv<\/span><\/strong><span>\u00a0,\u00a0<\/span><strong><span>orange.csv<\/span><\/strong><span>\u00a0).\u00a0<\/span><\/p>\n<p><strong><span>NOTA<\/span><\/strong><span>\u00a0: La primera l\u00ednea de cada uno de los archivos .csv deber\u00eda leer:<\/span><\/p>\n<pre class=\"wp-block-preformatted\"><span>Rojo verde azul<\/span><\/pre>\n<p><span>Si no lo ve en la parte superior, simplemente puede copiar y pegar en la l\u00ednea de arriba.\u00a0<\/span><\/p>\n<h3><strong><span>Entrenando al modelo<\/span><\/strong><\/h3>\n<p><span>Ahora usaremos colab para entrenar un modelo de ML utilizando los datos que acaba de capturar en la secci\u00f3n anterior.<\/span><\/p>\n<ul>\n<li><span>Primero abra el Cuaderno FruitToEmoji Jupyter en\u00a0<\/span><a href=\"https:\/\/colab.research.google.com\/github\/arduino\/ArduinoTensorFlowLiteTutorials\/blob\/master\/FruitToEmoji\/FruitToEmoji.ipynb\"><span>colab<\/span><\/a><\/li>\n<\/ul>\n<ul>\n<li><span>Siga las instrucciones en la colab<\/span>\n<ul>\n<li><span>Subir\u00e1 sus archivos * .csv\u00a0<\/span><\/li>\n<li><span>Analizando y preparando los datos<\/span><\/li>\n<li><span>Entrenando un modelo usando Keras<\/span><\/li>\n<li><span>Salida del modelo TensorFlowLite Micro<\/span><\/li>\n<li><span>Descargando esto para ejecutar el clasificador en Arduino\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span>\u00a1Una vez hecho esto, habr\u00e1 descargado model.h para ejecutar en su placa Arduino para clasificar objetos!<\/span><\/p>\n<div class=\"image-post\"><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM.png\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-5137\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM.png\" alt=\"\" width=\"1000\" height=\"845\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM.png 1000w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM-300x254.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM-768x649.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM-600x507.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-8.30.02-PM-820x693.png 820w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/a><\/div>\n<div><em><span>Colab lo guiar\u00e1 para colocar sus archivos .csv en la ventana de archivos, el resultado se muestra arriba<\/span><\/em><\/div>\n<div><\/div>\n<div><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM.png\"><img loading=\"lazy\" class=\"alignnone size-large wp-image-5138\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-1024x707.png\" alt=\"\" width=\"1024\" height=\"707\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-1024x707.png 1024w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-300x207.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-768x530.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-600x414.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM-820x566.png 820w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-01-at-10.21.39-PM.png 1278w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n<div>\n<h3><strong>Programe el modelo Micro TensorFlow Lite en la placa Arduino<\/strong><\/h3>\n<p>Finalmente, tomaremos el modelo que entrenamos en la etapa anterior y lo compilaremos y lo cargaremos en nuestra placa Arduino usando Arduino Create.<\/p>\n<ul>\n<li>Abra\u00a0<a href=\"https:\/\/create.arduino.cc\/editor\/TensorFlowExamples\/8508c70f-5155-4e3b-b982-c5f6bd36ea5c\/preview\">Classify_Object_Color.ino<\/a><\/li>\n<\/ul>\n<p>Su navegador abrir\u00e1 la aplicaci\u00f3n web Arduino Create:<\/p>\n<ul>\n<li>Presione el\u00a0bot\u00f3n\u00a0<strong>OPEN IN WEB EDITOR<\/strong><\/li>\n<li>Importe el modelo que descarg\u00f3 de colab usando\u00a0<strong>Importar archivo a boceto:\u00a0<\/strong><\/li>\n<\/ul>\n<p><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM.png\"><img loading=\"lazy\" class=\"alignnone size-large wp-image-5139\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-1024x266.png\" alt=\"\" width=\"1024\" height=\"266\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-1024x266.png 1024w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-300x78.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-768x199.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-600x156.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-820x213.png 820w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM-1320x342.png 1320w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.20.19-PM.png 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p><em>Importe el modelo que descarg\u00f3 de colab<\/em><\/p>\n<p><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM.png\"><img loading=\"lazy\" class=\"alignnone size-large wp-image-5140\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-1024x178.png\" alt=\"\" width=\"1024\" height=\"178\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-1024x178.png 1024w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-300x52.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-768x133.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-600x104.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-820x142.png 820w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM-1320x229.png 1320w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.16.55-PM.png 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<figure class=\"wp-block-image\"><figcaption><em>La pesta\u00f1a model.h ahora deber\u00eda verse as\u00ed<\/em><\/figcaption><\/figure>\n<ul>\n<li>Compila y sube la aplicaci\u00f3n a tu placa Arduino\n<ul>\n<li>Esto tomar\u00e1 un minuto<\/li>\n<li>Cuando termine, ver\u00e1 este mensaje en el\u00a0<strong>Monitor<\/strong>\u00a0:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><a href=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM.png\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-5141\" src=\"http:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM.png\" alt=\"\" width=\"824\" height=\"94\" srcset=\"https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM.png 824w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM-300x34.png 300w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM-768x88.png 768w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM-600x68.png 600w, https:\/\/rogerbit.com\/wprb\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.16.15-PM-820x94.png 820w\" sizes=\"(max-width: 824px) 100vw, 824px\" \/><\/a><\/p>\n<ul>\n<li>Coloque el sensor RGB de su Arduino cerca de los objetos con los que lo entren\u00f3<\/li>\n<li>Ver\u00e1 la salida de clasificaci\u00f3n en el\u00a0<strong>Monito<\/strong>\u00a0r:<\/li>\n<\/ul>\n<figure class=\"wp-block-image\">\n<div class=\"image-post\"><img class=\"wp-image-22815\" src=\"https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.13.56-PM.png\" sizes=\"(max-width: 1000px) 100vw, 1000px\" srcset=\"https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.13.56-PM.png 1000w, https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.13.56-PM-300x56.png 300w, https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-11-05-at-6.13.56-PM-768x144.png 768w\" alt=\"\" \/><\/div><figcaption><em>Salida del clasificador en Arduino Create Monitor<\/em><\/figcaption><\/figure>\n<p>Tambi\u00e9n puede editar el boceto object_color_classifier.ino para generar emojis en su lugar (\u00a1hemos dejado el c\u00f3digo unicode en los comentarios en el c\u00f3digo!), Que podr\u00e1 ver en el terminal Mac OS X o Linux al cerrar la pesta\u00f1a del navegador web con Arduino Cree, reinicie su placa y escriba cat \/cu\/usb.modem[n].<\/p>\n<figure class=\"wp-block-image\">\n<div class=\"image-post\"><img class=\"wp-image-22816\" src=\"https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.15.28-PM.png\" sizes=\"(max-width: 1000px) 100vw, 1000px\" srcset=\"https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.15.28-PM.png 1000w, https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.15.28-PM-300x147.png 300w, https:\/\/blog.arduino.cc\/wp-content\/uploads\/2019\/11\/Screen-Shot-2019-10-28-at-4.15.28-PM-768x377.png 768w\" alt=\"\" \/><\/div><figcaption><em>Salida de Arduino serie a terminal Linux usando resaltado ANSI y emojis unicode<\/em><\/figcaption><\/figure>\n<h3><strong>Aprendiendo m\u00e1s<\/strong><\/h3>\n<p>Los recursos en torno a TinyML a\u00fan est\u00e1n emergiendo, pero hay una gran oportunidad para comenzar y conocer a expertos que se realizar\u00e1n del 2 al 3 de diciembre en Mountain View, California, en la\u00a0<a href=\"https:\/\/armsummit.bemyapp.com\/?utm_source=arduino&amp;utm_medium=blog&amp;utm_campaign=tiny-ml-blog\">Cumbre de Desarrollo AIoT de Arm<\/a>\u00a0.\u00a0Esto incluye talleres de Sandeep Mistry, l\u00edder t\u00e9cnico de Arduino para ML en el dispositivo y de Pete Warden y Daniel Situnayake de Google, quienes literalmente escribieron el libro en\u00a0<a href=\"https:\/\/www.oreilly.com\/library\/view\/tinyml\/9781492052036\/\">TinyML<\/a>\u00a0.\u00a0Podr\u00e1s pasar tiempo con estos expertos y m\u00e1s en las sesiones de la comunidad TinyML all\u00ed tambi\u00e9n.\u00a0\u00a1Esperamos verte ah\u00ed!<\/p>\n<h3><strong>Conclusi\u00f3n<\/strong><\/h3>\n<p>Hemos visto una demostraci\u00f3n r\u00e1pida de principio a fin de aprendizaje autom\u00e1tico que se ejecuta en Arduino.\u00a0Se puede usar el mismo marco para muestrear diferentes sensores y entrenar modelos m\u00e1s complejos.\u00a0Para nuestro objeto por clasificaci\u00f3n de color, podr\u00edamos hacer m\u00e1s, muestreando m\u00e1s ejemplos en m\u00e1s condiciones para ayudar al modelo a generalizar.\u00a0En trabajos futuros, tambi\u00e9n podemos explorar c\u00f3mo ejecutar una CNN en el dispositivo.\u00a0Mientras tanto, esperamos que este sea un proyecto divertido y emocionante para usted.\u00a0\u00a1Que te diviertas!<\/p>\n<p><a href=\"https:\/\/blog.arduino.cc\/2019\/11\/07\/fruit-identification-using-arduino-and-tensorflow\/\">Fuente<\/a><\/p>\n<hr \/>\n<section class=\"bottom-article\">\n<div class=\"info-wrapper\">\n<p>SUSCRIBETE A NUESTROS BOLETINES, RECIBE EN TU CORREO LAS NOTICIAS M\u00c1S DESTACADAS, S\u00d3LO INGRESANDO TU CORREO ELECTR\u00d3NICO<\/p>\n<p>[wysija_form id=&#8221;1&#8243;]<\/p>\n<hr \/>\n<div class=\"page-sidebar widget\" id=\"donation_buttons\"><form action=\"https:\/\/www.paypal.com\/cgi-bin\/webscr\" method=\"post\" target=\"_blank\" ><input type=\"hidden\" name=\"business\" value=\"donacion@rogerbit.com\"><input type=\"hidden\" name=\"bn\" value=\"mbjtechnolabs_SP\"><input type=\"hidden\" name=\"cmd\" value=\"_donations\"><input type=\"hidden\" name=\"item_name\" value=\"Ayuda a RogerBit.com\"><input type=\"hidden\" name=\"item_number\" value=\"www.rogerbit.com\"><input type=\"hidden\" class=\"set_donation_button_amount\" name=\"amount\" value=\"1\"><table ><tbody><tr><td><label for=\"rogerBit necesita de tu ayuda para seguir existiendo :-)\">rogerBit necesita de tu ayuda para seguir existiendo :-)<\/label><\/td><\/tr><\/tbody><\/table><table ><tbody><tr><td><input style=\"margin-top:10px;\" type=\"image\" name=\"submit\" border=\"0\" src=\"https:\/\/www.paypal.com\/en_US\/i\/btn\/btn_donateCC_LG.gif\" alt=\"PayPal - The safer, easier way to pay online\"><\/td><\/tr><\/tbody><\/table><input type=\"hidden\" name=\"currency_code\" value=\"USD\"><input type=\"hidden\" name=\"notify_url\" value=\"https:\/\/rogerbit.com\/wprb\/?Donation_Button&#038;action=ipn_handler\"><\/form><\/div>\n<hr \/>\n<p><strong>VIDEO RECOMENDADO<\/strong><\/p>\n<p><iframe loading=\"lazy\" width=\"1160\" height=\"653\" src=\"https:\/\/www.youtube.com\/embed\/pvMdiV7u0MU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<\/div>\n<\/section>\n<\/div>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Arduino tiene la misi\u00f3n de hacer que el aprendizaje autom\u00e1tico sea lo suficientemente f\u00e1cil de usar para cualquiera.\u00a0La otra semana\u00a0anunciamos\u00a0la disponibilidad de TensorFlow Lite Micro en Arduino Library Manager.\u00a0Con esto, algunos ejemplos de ML listos para usar, como reconocimiento de voz, visi\u00f3n artificial simple e incluso un tutorial de entrenamiento de reconocimiento de gestos de [&hellip;]<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":5144,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[],"_links":{"self":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/5134"}],"collection":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/comments?post=5134"}],"version-history":[{"count":1,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/5134\/revisions"}],"predecessor-version":[{"id":5145,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/posts\/5134\/revisions\/5145"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/media\/5144"}],"wp:attachment":[{"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/media?parent=5134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/categories?post=5134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rogerbit.com\/wprb\/wp-json\/wp\/v2\/tags?post=5134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}