Kitabı oku: «Innovando la educación en la tecnología», sayfa 12
3. RESULTADOS
El camino y la pirámide propuesta para alcanzar el objetivo de la TD en una organización están basados, en gran parte, en el estudio de casos de éxito, teorías, marcos de trabajo y propuestas teóricas de diversas fuentes. Sumado a esto, la experiencia vivencial de participar de una estrategia viva de la más grande empresa de consumo masivo del Perú, la cual supo crear y alinear los tres bloques, de estructura organizacional, agile mindset y GEIT, ejemplifica bien todo lo propuesto.
A junio de 2019, con apenas seis meses de existencia, el CoE Digital de Alicorp había generado tal impacto en la organización, que su meta de incremento recurrente del EBITDA (beneficios antes de intereses, impuestos, depreciación y amortización, o EBITDA, por sus siglas en inglés) organizacional se incrementó en un 512 %. Lo cual no fue resultado de un mal cálculo inicial o mala estimación del impacto en el EBITDA, sino más bien del excelente desempeño que el CoE Digital demostró con las capacidades recién adquiridas, apalancadas por una estructura organizacional única y un agile mindset alineado a los objetivos estratégicos de la organización.
Actualmente, las sinergias de los seis leads del CoE Digital se plasman en la figura 7 que ilustra las sinergias y el proceso por el cual pasan casi todas las iniciativas planeadas hasta el 2021.
Los resultados de iniciar una travesía de TD no serán inmediatos. Se trata de un proceso largo, muchas veces doloroso y con un camino plagado de retos.
4. CONCLUSIONES
Para subirse a la ola de la TD es necesario:
• Todo viaje de TD debe iniciar con los altos ejecutivos de la organización dispuestos a impulsar, participar y comprometerse con el cambio.
• Iniciar el proceso de TD con la estructura organizacional adecuada, la cual puede implementarse dentro de un CoE que sirva como punto de partida para el resto del cambio organizacional. Sin embargo, se debe considerar que este CoE debe tener el nivel adecuado de autonomía, autoridad y flexibilidad para llevar a cabo su labor.
• Generar un agile mindset apalancado en una estructura organizacional adecuada que le brinde la autonomía, autoridad, flexibilidad, cercanía con el negocio y sinergias necesarias para generar un cambio (progresivo) orgánico en el mindset de todas las personas de la organización.
• Implementar un GEIT a nivel del CoE que luego pueda ser elevado a toda la organización a través de los cuatro beneficios relacionados a la TD. Si el resto de la organización empieza a ver los beneficios de un GEIT correctamente implementado, esto servirá como palanca para llevarlo a un mayor nivel organizacional.
• Asegurarse de que el CoE que se genere sea balanceado y evitar caer en los extremos, tales como el CoE aislado o el CoE limitado. De esta forma, el crecimiento y aceptación del CoE será orgánico, ya que las áreas de negocio empezarán a ver el valor que se genera de una estructura adecuada y correctamente posicionada dentro de la organización.
• Asegurarse de alinear correctamente las capacidades del CoE con los cinco dominios de la TD propuestos (Rogers, 2016). Las capacidades deben permitir alcanzar y desarrollar cada uno de estos dominios.
• Es posible iniciar una transformación ágil, pero esta debe estar alineada con el objetivo final de alcanzar la TD. De lo contrario los recursos podrían destinarse erróneamente.
• Formar un equipo de agentes transformacionales que estén a la altura del reto. Es necesario que cuenten con experiencia en sus áreas de conocimiento, pero es mucho más crítico que se asegure las sinergias entre todos los líderes de los frentes de la TD.
REFERENCIAS
Harshak, A., Schmaus, B., y Dimitrova, D. (2013). Building a digital culture: How to meet the challenge of multichannel digitization. USA: Booz & Company, PricewaterhouseCoopers.
Herbert, L. (2017). Digital Transformation: Build Your Organization’s Future for the Innovation Age. London: Bloomsbury Publishing.
ISACA. (2015). CGEIT Review Manual, 7th Edition. Schaumburg, IL, USA: ISACA Knowledge Center, ISACA.
Leading Agile. (2016). Why Agile Fails in Large Enterprises - Large Scale Agile Transformation [archivo de video]. Recuperado de https://www.youtube.com/watch?v=Oo3zlOTbN2E
Project Management Institute. (2017). Agile Practice Guide. Newtown Square, Pennsylvania, USA: Project Management Institute, Inc.
Project Management Institute. (2016). Governance of Portfolios, Programs and Projects: A practice guide. Newtown Square, Pennsylvania, USA: Project Management Institute, Inc.
Rogers, D. L. (2016). The Digital Transformation Playbook: Rethink your business for the digital age. New York: Columbia University Press, Columbia Business School.
Siebel T. M. (2019). Digital Transformation: Survive and Thrive in an Era of Mass Extinction. New York: RosettaBooks.
Westerman, G., Bonnet, D., y Mcafee, A. (2014). Leading Digital: Turning Technology into Business Transformation. Boston: Harvard Business Review, Havard University.
Sistema de detección y clasificación de peces utilizando visión computacional
Rodrigo Mejía
20140809@aloe.ulima.edu.pe / Universidad de Lima, Perú
Gianfranco Rosales
20141199@aloe.ulima.edu.pe / Universidad de Lima, Perú
Recepción: 21-6-2019 / Aceptación: 8-8-2019
RESUMEN. La gestión de los recursos hidrobiológicos implica tanto el aspecto ecológico a través del equilibrio del ecosistema, como el aspecto económico mediante el control de la cantidad y calidad de los recursos pesqueros producidos en el Perú. En la actualidad, labores relacionadas a esta gestión son realizadas por empresas privadas y entidades del Estado como el Imarpe. La misión de estas es proteger la calidad de los recursos que llegan a los hogares de millones de peruanos. Esta investigación busca desarrollar un sistema para la detección, clasificación y, finalmente, la medición de diversas especies de peces, utilizando técnicas de visión computacional como el algoritmo SURF y redes neuronales convolucionales. Las pruebas, utilizando dos especies de peces, demostraron que la identificación alcanza un nivel de precisión del 90 % y que la clasificación alcanza una precisión del 80 %. Estos valores se obtienen bajo determinadas condiciones que se comentan en el desarrollo del artículo.
PALABRAS CLAVE: visión computacional, SURF, background subtraction, border detection, red neuronal convolucional, machine learning, detección, clasificación, inceptionV3, peces, CNN
Fish Detection and Classification System Using Computational Vision
ABSTRACT. The management of hydrobiological resources involves both the ecological aspect through the balance of the ecosystem, and the economic aspect through the control of the quantity and quality of the fishery resources produced in our country. Currently, work related to this management is carried out by private companies and state entities such as Imarpe. Their mission is to protect the quality of the resources that reach the homes of millions of Peruvians. This research aims to develop a system for the detection, classification and finally measurement of various species of fish, using computational vision techniques such as the SURF algorithm and convolutional neural networks. The tests, which used two fish species, showed that the identification reaches a 90% accuracy level and the classification reaches an 80% accuracy level. These values are achieved under certain conditions that are discussed in the article.
KEYWORDS: computational vision, SURF, background subtraction, border detection, convolutional neural network, machine learning, detection, classification, inception V3, fish, CNN
1. INTRODUCCIÓN
Los recursos marinos representan una fuente de recursos valiosa para el desarrollo de la economía y la alimentación de sus comunidades tanto para el mundo como para nuestro país. La Organización de las Naciones Unidas para la Alimentación y la Agricultura (FAO, por sus siglas en inglés), indica que el consumo aparente de kilogramos per cápita para la alimentación y otros fines es cercano a la utilización total de recursos disponibles. Particularmente, nuestro país es uno de los países más ricos en recursos pesqueros del planeta, ocupando el quinto lugar de producción pesquera en el año 2016 (FAO, 2018). Durante el período enero-junio del 2018, el Perú exportó 839,3 toneladas de pescado, lo cual en términos monetarios significó 1787,6 millones de dólares (Sociedad Nacional de Pesquería, 2018).
Acorde al Codex Alimentarius de la FAO (CRFM, 2016), la trazabilidad es definida como “la capacidad de seguir el movimiento de un alimento a través de etapas específicas de producción, elaboración y distribución”. En el caso de instituciones como el IMARPE (Instituto del Mar del Perú), en donde realizan la clasificación y medida de especies de forma manual, le podría generar un ahorro de esfuerzo y tiempo automatizando estos procedimientos. En el caso de terminales pesqueros también podrían acceder a este ahorro, facilitando la trazabilidad debido al menor tiempo para analizar los peces.
Dichas estadísticas y antecedentes expresan la importancia de contar con recursos de calidad que, al ser extraídos del mar, presenten condiciones óptimas para la llegada al consumidor final. Por ello, en esta investigación se plantea un sistema de detección, clasificación y medida de determinadas especies de peces, tarea realizada manualmente en los laboratorios de instituciones como el Instituto del Mar del Perú y que, de desarrollarse adecuadamente, significaría un ahorro de esfuerzos importantes para este tipo de organizaciones.
2. ESTADO DEL ARTE
En esta sección se analizan trabajos relacionados a las aristas claves de esta investigación: la detección de objetos y la clasificación de imágenes mediante aprendizaje supervisado. Por un lado, la discusión sobre detección de objetos abarca trabajos relacionados en otros campos de estudio (p. ej., detección de ballenas) y la comparación de resultados del algoritmo SURF con otros afines como SIFT, ORB, entre otros. Acto seguido, para el análisis de los trabajos relacionados a la tarea de clasificación de imágenes, se discute la aplicación de redes neuronales convolucionales (también en su abreviatura como CNN) en la tarea de clasificación, así como las arquitecturas de las mismas, y aplicaciones e investigaciones orientadas al reconocimiento de peces.
2.1 Detección de objetos en otros campos de estudio
Las investigaciones relacionadas a la detección de objetos específicos vinculados a la visión computacional son las siguientes:
Nadarajan, Chen-Burger y Fisher (2011) diseñaron un sistema capaz de analizar vídeos bajo el agua para detectar, rastrear y contar peces. Para la detección de peces, los autores utilizaron el modelo gaussiano y el H-model que ahorra el costo computacional, donde los valores de precisión terminaron entre 80,5 %–89,5 %.
Mahajan y Perkins (2015) se enfocaron en detectar e identificar ballenas en un conjunto de imágenes tomadas de manera aérea. Para la detección de ballenas se utilizaron las técnicas cascade object detector (COD) y el método de agrupamiento de K-medias (KMC). Para la identificación de las ballenas utilizaron SIFT y support vector machine (SVM). Los resultados de esta investigación concluyeron que KMC detecta mejor que COD en el 90 % de los casos, mientras que no consiguieron que los métodos de identificación funcionen de manera satisfactoria.
Chincha y Tian (2011) propusieron un método de reconocimiento de objetos para ayudar a invidentes para que encuentren sus pertenencias mediante el algoritmo de visión computacional SURF. Los objetos por detectar eran llaves, teléfonos celulares, billeteras, lentes de sol y zapatillas. Este método propuesto por los autores terminó con un 84 % de precisión para los cinco tipos de objetos. Por otro lado, Shujuan, Zhize, Xingang, Guan, Wenqi y De (2015) utilizaron el mismo algoritmo para realizar una detección de vehículos a tiempo real. Sus resultados fueron positivos, solo con pequeños percances como la confusión entre el carril y el vehículo, y en condiciones de alta y baja luminosidad, donde el detector de vehículos no funcionaba de la manera esperada.
2.2 Reconocimiento de peces
Chen, Sun y Shang (2017) proponen un sistema de clasificación de peces automático para el etiquetado de los peces usando tecnologías de aprendizaje profundo, específicamente modelos combinados de tecnologías de redes neuronales convolucionales. La clasificación se trabajó con distintas arquitecturas combinadas como ResNet50, InceptionV3 y VGG16. La técnica que obtuvo un mejor resultado respecto a la función de error fue la técnica InceptionV3, entrenada con data externa con el valor de 0,853 de pérdida.
Frost y Geisler (2016) comparan los métodos de clasificación bayesianos ingenuos, máquinas de vectores de soporte y árboles aleatorios para clasificar especies de peces del mismo conjunto de datos trabajado por Chen, Sun y Shang (2017). La precisión de clasificación obtenida es de 7 %, 40 % y 80 % para cada método de clasificación, respectivamente. Posterior a la optimización del método de árboles aleatorios se logró obtener un valor de precisión general del modelo en el entrenamiento de 99,5 % y en la fase de prueba de 83,4 %.
Dada la revisión de literatura mencionada, el equipo de trabajo concluyó que las técnicas de redes neuronales convolucionales profundas y el algoritmo SURF son válidas para la propuesta de solución.
3. METODOLOGÍA
Esta sección detallará determinados tópicos para el entendimiento del nacimiento de la solución que se plantea. Primero, hace referencia a las etapas de la investigación. A continuación, hace referencia y detalla la estructura de la solución propuesta. Luego, se mencionan los métodos que se probaron durante el proceso. Finalmente, se explica la manera en que se validó el trabajo realizado.
3.1 Etapas de desarrollo de la solución
Durante la primera fase, se buscaron métodos para resolver el problema planteado: poder detectar y clasificar peces en imágenes que presenten determinada escena. Para lograr esto, se investigó arduamente de manera que se identificaron métodos potenciales para el planteamiento de una futura solución: emplear algoritmos hand-crafted como lo son SURF, SIFT, etc., y el uso de redes neuronales convolucionales profundas para la tarea de clasificación de imágenes.
La siguiente fase o etapa consistió en la obtención de los datos (imágenes) a trabajar. Para el desarrollo de la prueba de concepto que se realizó, se empleó un conjunto de datos obtenidos de la organización Kaggle. Gracias a los optimistas resultados obtenidos, se propuso mejorar y ajustar la solución preliminar propuesta y trabajar con datos reales, imágenes que presenten a los peces que se encuentran en nuestro litoral.
Esto da pase a la tercera etapa: la obtención de los datos finales. Para esta labor, el equipo de trabajo se contactó con múltiples organizaciones. En última instancia, se recibió el apoyo del Instituto del Mar del Perú. Gracias al apoyo del ingeniero Julio Alarcón, jefe de Artes de Pesca de la institución, el equipo pudo programar una visita guiada a cargo del personal de Gestión de la Calidad del Terminal Pesquero de Ventanilla, a fin de capturar las imágenes que se emplean en el presente trabajo. Finalmente, como última etapa se encuentra la optimización de los métodos. Esta se realizó en base a los resultados empíricos obtenidos durante la fase de experimentación.
3.2 Estructura de la solución
La solución propuesta posee determinados procesos que el sistema realizó para conseguir el objetivo planteado, donde se empezó con el preprocesamiento de las imágenes y se culminó con la visualización e interpretación de los resultados de clasificación en la interfaz gráfica de usuario.
Se realiza el preprocesamiento de imágenes. Este consiste en dos tareas esenciales: el redimensionamiento de las imágenes y el entrenamiento realizado de manera iterativa, evaluando y analizando los resultados obtenidos de los valores de pérdida y precisión que se obtienen durante el proceso de entrenamiento y validación. La salida de este último mencionado es un archivo en formato HDF5 conteniendo los pesos y conexiones ideales generadas en el proceso de entrenamiento de la red. Este proceso fue realizado íntegramente en la nube de Google Colaboratory, por lo que se logró cruzar la barrera de recursos computacionales que se tuvo al comienzo de la investigación.
Paralelamente, se realizó la detección de características de una imagen base, donde el algoritmo SURF trabajó con una silueta característica de un pez. Posteriormente, se extrajeron las características de las imágenes reales, donde se quiso identificar y detectar al pez en un contexto real. Este último paso se logró gracias al uso de la técnica background subtraction y border detection, donde el primero se encarga de substraer al pez del contexto total de la imagen y el segundo de detectar los bordes de la imagen. Tras la detección, se hizo el feature matching entre ambas imágenes, donde se analiza si la imagen del conjunto de datos tiene las características de la imagen base. Si la imagen las contiene, se procesa el pez detectado generando una imagen, la cual sirve de entrada a la red neuronal convolucional para poder realizar la clasificación en las imágenes. Finalmente, teniendo como entrada los pesos generados en el entrenamiento y la imagen del pez detectado, se clasifica. En la siguiente figura se muestra de manera gráfica el proceso descrito.
3.3 Métodos probados
Respecto a la tarea de clasificación, se probaron tres arquitecturas de red neuronal convolucional conocidas. Estas fueron VGG-16, ResNet e InceptionV3. Se optó, finalmente, trabajar con la última mencionada por presentar los mejores resultados preliminares en base a las pruebas realizadas. Por ello, en esta investigación este modelo se optimiza a nivel de parámetros y agregación de capas con el fin de obtener las mejores conexiones y pesos para el modelo final. En la siguiente figura se observa gráficamente el modelo InceptionV3 con la agregación de capas en la parte superior. En la parte inferior se observan las últimas capas del modelo original de InceptionV3, las cuales son precargadas con los pesos de ImageNet. Por otro lado, las capas agregadas se entrenan con las imágenes del conjunto de imágenes de peces obtenidos por el equipo de trabajo.
Por otro lado, para la tarea de detección se probaron tres algoritmos de visión computacional: SIFT, SURF y ORB. Se optó trabajar con SURF porque detectó satisfactoriamente a los peces en sus respectivas escenas. Otras técnicas implementadas para poder facilitar la detección fueron background substraction y border detection.
4. EXPERIMENTACIÓN
Se decidió utilizar un arco para poder realizar la toma de las fotos con los siguientes equipos computacionales: una cámara Logitech c922 Pro Stream que tiene como resolución máxima 1080p/30fps y un ángulo de visión de 78º, un ordenador de procesamiento remoto de Google Colaboratory (GPU Tesla K80 con 2496 CUDA cores) y un ordenador con las librerías instaladas.
4.1 Detección del pez en la escena
Para la detección de los peces se utilizaron las siguientes técnicas: el algoritmo de visión computacional SURF, la técnica de background subtraction y border detection. Para la detección y caracterización de la imagen base, fue utilizado un contorno de un pez, el cual presenta las siguientes condiciones:
• Fondo blanco.
• Es únicamente un contorno genérico de un pez.
• La imagen tiene características que todos los peces del conjunto de datos poseen.
Para empezar, se procesó la imagen base, encontrando sus características mediante el algoritmo SURF. Posteriormente, se aplicó background subtraction en la escena del pez que se quiere detectar su presencia en la escena, donde se comparan dos imágenes: la de la escena sin el pez y la del pez en la escena. En las imágenes presentadas, se muestra el pez cojinova.
Como se puede observar en la tabla 1, las imágenes tras el background substraction, el pez se ve de manera clara. Posteriormente, se aplica el border detection para poder detectar el contorno de estas imágenes.
Debido a que se aplicó el background substraction, previamente, el contorno del resto de peces en la imagen no se visualiza de manera tan clara como el del pez objetivo. Ya teniendo el borde detectado de ambas imágenes (la imagen a detectar y la silueta genérica) se procede a la etapa de coincidencia de características detectadas entre ambas imágenes.
Esta etapa de coincidencia de características (feature matching, en inglés) se realiza mediante FLANN (Fast Library Approximate Nearest Neighbor), la cual es una librería que permite comparar los puntos de características encontrados en ambas imágenes. Tras realizar la coincidencia de características, se pasa a la prueba de ratios de distancia entre los puntos vecinos para filtrar la similitud de coincidencias, donde se definen las coincidencias que van a ser tomadas en cuenta.
Finalmente, la parte de detección del pez en la escena concluye devolviendo como resultado el pez detectado y extraído de la escena para su posterior clasificación.