Sirva datos almacenados en la nube hacia aplicaciones móviles

Los motores de búsqueda visual han creado un nuevo paradigma de aplicaciones móviles. Sin embargo, para usar esta tecnología de manera efectiva, se debe establecer y dar mantenimiento a un conjunto de datos grande y públicamente accesible. El almacenamiento basado en nube representa una gran solución a usar cuando se despliega una aplicación con un motor de búsqueda visual. Sepa cómo una organización puede usar un motor de búsqueda visual y almacenamiento basado en nube para automatizar los procesos de negocios.

Steve Markey, Principal, nControl

Steve MarkeySteve Markey es consultor, profesor adjunto, y presidente actual de la división de Delaware Valley (Gran Filadelfia) de la Cloud Security Alliance (CSA). Cuenta con múltiples certificaciones y títulos, y tiene más de 11 años de experiencia en el sector de la tecnología. Steve frecuentemente discurre sobre información de seguridad, privacidad de la información, computación en nube, gestión de proyectos, e-discovery, y gobernanza de la información.



13-05-2013

Las aplicaciones móviles que usan motores de búsqueda visual se están volviendo más importantes. Los casos de uso se están incrementando en industrias como defensa, seguros, cuidado de la salud y moda co\nforme estas tecnologías maduran. La capacidad de tomar una fotografía y hacer que un algoritmo reconozca los objetos de la imagen requiere un almacenamiento de datos para que el algoritmo realice las comparaciones, y estos almacenamientos de datos se colocan cada vez más en la nube. Este artículo proporciona una comprensión de los algoritmos de motor de búsqueda visual que están disponibles, cómo usan los almacenamientos de datos, cómo conectar su aplicación a estos almacenamientos de datos, y los pros y contras de escoger soluciones de un proveedor específico.

¿Qué son los motores de búsqueda visual?

Aunque los motores de búsqueda visual no se limitan a dispositivos móviles (smartphones o tablets), son el punto final o interfaz de usuario más importante, debido a que los dispositivos móviles estos días cuentan con cámaras incorporadas. Con estas cámaras, las aplicaciones móviles pueden interactuar con las imágenes tomadas con estas cámaras asincrónicamente.

Mediante el uso de los motores de búsqueda visual, los usuarios pueden tomar una fotografía de dos dimensiones y usar el algoritmo de "búsqueda" para determinar si la imagen contiene objetos reconocidos. Estos algoritmos están desplegados en aplicaciones móviles vía conectores de software llamados interfaces de programación de aplicaciones (APIs). Las APIs de proveedores de motores de búsqueda visual como los IQ Engines permiten a los programadores crear sus propias aplicaciones usando la tecnología de motor de búsqueda visual.

Algunos proveedores de motor de búsqueda visual cuentan con aplicaciones móviles pre-desarrolladas para su uso, como Google Goggles. Sin embargo, Google todavía tiene que desplegar una API para Goggles, lo que significa que existen casos de uso limitados para esta aplicación en la industria. Un motor de búsqueda visual también es puesto a disposición por una compañía italiana llamada Macroglossa. Se conoce poco del despliegue o uso de Macroglossa en la industria, pero es una alternativa a los IQ Engine y Google. Sin importar el motor de búsqueda visual usado, todos funcionan con dinámicas y procesos comunes.

El uso de IQ Engines VisionIQ es un ejemplo, el usuario primero toma una fotografía usando el dispositivo móvil, que desencadena el proceso de búsqueda visual del lado del cliente cuando una aplicación que usa VisionIQ es cargada. Posteriormente, el servicio de motor de búsqueda visual API llama al software del lado del servidor, que a su vez referencia las reglas de negocios del entrenamiento llevado a cabo acerca de qué es un almacenamiento de datos basado en nube para obtener una verificación de salud. Finalmente, para almacenamientos de datos públicos, se permite una externalización colectiva para permitir al público ayudar en el perfeccionamiento del algoritmo. La Figura 1 demuestra este proceso.

Figura 1. El proceso de motor de búsqueda visual conforme es definido por IQ Engines VisionIQ
Image showing the visual search engine process as defined by IQ Engines VisionIQ

Para que el algoritmo de motor de búsqueda visual reconozca imágenes, un usuario debe primero entrenar al sistema usando una combinación de la imagen y los atributos de soporte que son ya sea cargados a un almacenamiento de datos basado en nube o colocados en la ruta de un buscador web. Google Goggles usa la ruta de buscador web. Para usar Goggles, usted debe primero representar las imágenes y los atributos de soporte o metadatos en HTML. VisionIQ usa almacenamientos de datos basados en nube a los que los desarrolladores y personal técnico suben el contenido vía APIs completos de Representational State Transfer (REST). Sin importar cómo se exploran o suben las imágenes y los metadatos asociados con esas imágenes (color, textura, fecha, marca), el algoritmo debe primero analizar y perfeccionar continuamente los datos. La Figura 2 proporciona un ejemplo de una imagen con los atributos asociados.

Figura 2. El modelo de datos VisionIQ
Image showing the VisionIQ data model

Observe que el algoritmo de búsqueda y los atributos deben perfeccionarse iterativamente en el transcurso de la planificación prevista para permitir un índice de éxito adecuado. Después de que el sistema haya sido entrenado para obtener un índice aceptable de precisión, estará listo para ser desplegado para las pruebas de aceptación de usuario (UAT). UAT permite a los desarrolladores y a la organización perfeccionar las imágenes y el algoritmo de búsqueda de manera que la aplicación sea más útil en escenarios del mundo real donde hay luz ambiental alternativa, pantallas no claras y ángulos múltiples. Ya que la nube es más usualmente utilizada para almacenar los datos para entrenar a estos sistemas, es prudente repasar lo que significa "nube".


Nube y cobertura de búsqueda visual

Ahora déjenme explicar cómo la computación en nube y los motores de búsqueda visual trabajan conjuntamente.

La estructura de la nube

La computación en nube es un cambio de imagen, si se ve desde ese punto de vista, del viejo modelo de proveedor de servicio de aplicación (ASP). Sin embargo, las verdaderas ofertas de la nube tienen matices adicionales al modelo ASP—específicamente, agrupación de recursos, utilización bajo demanda, multi-inquilinos, y elasticidad rápida. Los proveedores de servicio de nube (CSPs) ofrecen servicios con base en diferentes modelos de servicio y despliegue de nube.

Los modelos de servicio de nube son métodos en que una organización puede usar la nube afirmada en los requerimientos de negocios, como Infraestructura como servicio (IaaS), Plataforma como servicio (PaaS) y Software como servicio (SaaS). En contraste, los modelos de despliegue de nube incluyen nubes públicas, privadas, híbridas y comunitarias. La mayoría de los CSPs tienen nubes públicas, aunque algunos aprovechan las nubes externas y privadas también. La mayoría de las grandes organizaciones aprovechan a la nube internamente como una nube privada. Las nubes híbridas aprovechan soluciones de nube tanto públicas como privadas. Una nube comunitaria aprovecha la agrupación de recursos en una gran medida, un ejemplo es el número de escuelas en un distrito escolar que comparten recursos de servidor para procesamiento de información.

La mayoría de los modelos de despliegue y servicio de nube usados para motores de búsqueda visual aprovechan múltiples modelos de cada. Por ejemplo, cuando los clientes de IQ Engines optan por externalización colectiva, entonces usan un modelo privado de nube IaaS y PaaS. Este modelo aprovecha agrupaciones de almacenamiento cerradas para sus almacenamientos de datos basados en IaaS y APIS basadas en PaaS para ser llamadas por aplicaciones móviles. Sin embargo, cuando los consumidores de las ofertas de IQ Engines habilitan la externalización colectiva de sus almacenamientos de datos, este despliegue se vuelve una nube pública. La clasificación de Google Goggles es una solución pública SaaS, ya que no cuenta con una API pero permite la externalización colectiva.

Motores de búsqueda colectiva y computación en nube

Las aplicaciones móviles que usan motores de búsqueda visual frecuentemente tienen imágenes para entrenamiento del sistema subidas a almacenamientos de datos basados en nube vía APIs. El formato API más predominante estos días es el REST. Las APIs REST siguen el modelo de arquitectura orientada a servicios y por lo tanto son comúnmente usados por arquitecturas de software basadas en servicios web para propósitos de integración. Debido a que están basados en web, las APIs REST son más usadas para aplicaciones de software thin-client que se consumen vía un navegador de Internet o un servidor web. Como se mencionó, las APIs REST son relativamente una tecnología nueva que requiere un formato API específico, pero flexible.

Los servicios de computación en nube por naturaleza son distribuidos; de manera que, el uso de las APIs—particularmente APIs RESTful basadas en web—por parte de los consumidores, representa una solución lógica para el consumo remoto de servicios. Esta solución incrementa su importancia conforme los requerimientos para una fuerza de trabajo remota y móvil necesitan ser satisfechos. Los ejemplos incluyen múltiples departamentos basados en reclamaciones para una compañía de seguros que aprovecha un almacenamiento de datos común basado en nube para procesamiento de negocios. En este ejemplo, los ajustadores de seguros usan aplicaciones móviles con APIs VisionIQ REST para tomar, etiquetar, y reconocer fotografías de casas dañadas por el agua después de un desastre natural. Estas fotografías pueden ser usadas para perfeccionar iterativamente el algoritmo al ser almacenado en un almacenamiento de datos en nube centralizado y privado. Internamente, la externalización colectiva puede posteriormente ser usada para ampliar la precisión del sistema al identificar daño pro agua versus uso y desgaste o negligencia.

Otro caso de uso es el despliegue de aplicaciones móviles que emplean motores de búsqueda visual y almacenamientos de datos en nube privada para servicios de diagnóstico médico. Estos servicios usan una imagen de raspadura, cortada, marca, moretón, o similar para complementar diversos atributos que proporciona el paciente en respuestas a preguntas incluidas en la aplicación para proporcionar un diagnóstico. Esta información puede ser acoplada con una llamada telefónica por parte del profesional del cuidado de la salud para verificar el diagnóstico. Dicha aplicación puede intercambiar datos con un sistema de registros de salud electrónicos de los sistemas de cuidado de la salud vía APIs REST para obtener una automatización completa.

Finalmente, para propósitos de inteligencia, legales, y de orden público, estas aplicaciones harán expedito el reconocimiento de personas de interés y evidencia en casos. Los algoritmos de reconocimiento facial no son nuevos, y es seguro que las aplicaciones móviles con esta funcionalidad para estos grupos existen, aunque no al nivel y proliferación que existirán en el futuro. Es muy probable que en las escenas de crímenes los investigadores puedan usar aplicaciones móviles para la mayoría de su trabajo en unos años.


En conclusión

Conforme las aplicaciones móviles maduran, la tecnología de motor de búsqueda visual irá de la mano con ellas. Las APIs que usan formatos contemporáneos como REST, impulsarán la inter-operabilidad móvil y de la nube para obtener casos de uso mejorados de tecnologías motor de búsqueda visual, especialmente cuando Google lance su API para agrupar aplicaciones móviles personalizadas con Goggles. Con el crecimiento de motores de búsqueda visual, los almacenamientos de datos basados en nube se volverán más predominantes.

Estos almacenamientos serán llamados por APIs, y se usarán los datos de uso para perfeccionar todavía más el algoritmo de búsqueda, que es la clave para el éxito de esta tecnología. Este perfeccionamiento puede ser hecho por los mismos proveedores o con la inclusión de externalización colectiva. Conforme estos algoritmos son perfeccionados, la manera en que son usados crecerá exponencialmente. Aunque este artículo incluye varios casos de uso, no es exagerado imaginar que muchos más casos de uso serán introducidos a lo largo del tiempo. La proliferación de dispositivos móviles con cámaras ha traído una nueva era tecnológica que, cuando se perfeccione, cambiará la manera en que vivimos nuestras vidas y realizamos nuestros negocios.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

  • Participe en la comunidad de developerWorks. Conéctese con otros usuarios developerWorks mientras explora los blogs, foros, grupos y wikis dirigidos a desarrolladores.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Cloud computing, Desarrollo móvil
ArticleID=929548
ArticleTitle=Sirva datos almacenados en la nube hacia aplicaciones móviles
publish-date=05132013