Aprendizaje automático. Aprendizaje profundo. Procesamiento natural del lenguaje. Visión por computador. Automatización. Reconocimiento de voz. Probablemente haya escuchado todos estos y muchos otros términos recientemente, todo bajo el paraguas de la inteligencia artificial. De hecho, el campo está creciendo tan rápidamente, cada vez es cada vez más difícil clavar una definición definitiva. AI se está convirtiendo en parte de casi todos los aspectos de nuestras vidas, desde Sitios web de comercio electrónico y los motores de búsqueda para desbloquear su teléfono.
Sus sitios web y aplicaciones pueden aprovechar las API para tocar directamente en la alimentación de AI. Sin tener que "entrenar" a los agentes AI, puede aprovechar las cantidades masivas de datos ya analizados. Google, Amazon, IBM y muchos otros han creado puntos finales para que los desarrolladores se enganchen y comiencen a usar AI de inmediato.
En la parte delantera, puede conectar comandos de voz, interfaces de chatbot o elementos creativos reactivos webgl. En la parte posterior, las bases de datos utilizan algoritmos inteligentes para maximizar la velocidad y el análisis. Las API pueden proporcionar una capa de abstracción de una amplia gama de funciones AI, desde predicciones hasta capacitación colectiva.
Recuerde, si está haciendo su sitio más complejo, es vital que evalúe su elección de Alojamiento web Servicio para asegurarse de que pueda manejarlo. ¿Haciendo un sitio desde cero? Considere simplificar el proceso con una parte superior. Creador de sitios web . Y si estás creando un nuevo sistema de diseño , es importante mantenerlo seguro y accesible en decente. almacenamiento en la nube .
La visión informática es el estudio y la creación de sistemas artificiales que extraen información de imágenes. También puede abarcar el sistema mecánico de la visión en sí. En términos de reconocimiento, es el proceso de analizar y determinar el contenido de una imagen o serie de imágenes (incluido el video). Esto podría incluir escaneos médicos, fotos, video de 360 grados y prácticamente cualquier tipo de imágenes que pueda imaginar.
La visión de la computadora con alimentación de AI puede:
Hay muchas opciones para las API de la visión, pero usaremos la API de la Visión de la Cloud de Google. Google alberga muchas API de AI, incluido el procesamiento de lenguaje natural, el reconocimiento de voz, el aprendizaje profundo y la visión.
La API de la visión en la nube permite que sus sitios y aplicaciones entiendan lo que hay en una imagen. Clasificará el contenido en categorías, etiquetando todo lo que ve. También proporciona una puntuación de confianza, por lo que sabe lo probable que sea que lo que cree que está en una imagen en realidad aparece allí. Puede usar esto para interactuar de manera inteligente con respecto a la entrada de la cámara en AR o aplicaciones de video. Podrías crear herramientas para ayudar a aquellos que están con discapacidad visual. Puede crear asistentes para ayudar a identificar edificios o puntos de referencia para los turistas. Las posibilidades son infinitas.
Si ha usado las API de Google antes, algunos de estos primeros pasos estarán familiarizados. Al igual que con otros servicios de Google, deberá configurar un proyecto de nube. Ve a la Consola de la plataforma de Google Cloud y cree un nuevo proyecto o seleccione uno existente. Al igual que la mayoría de los servicios de Google, la API de la Visión Cloud es gratuita para usar hasta que comience a hacer muchas solicitudes de API. Es posible que deba ingresar información de facturación cuando active la API, pero esto no se cobra a un bajo volumen de solicitudes y puede eliminar los servicios después de que haya terminado de realizar pruebas.
Navegar por el Biblioteca API y seleccione la API de la Cloud Vision para su proyecto.
Una vez habilitado, debe ver un poco de verificación verde y el mensaje 'API habilitado' a su lado.
A continuación necesitarás configurar un cuenta de servicio . Piense en la API como un servicio web que está creando. Como vamos a establecer el uso como un servicio típico, esta es la mejor práctica. También funciona mejor con el flujo de autenticación.
Una vez que tenga un proyecto con la API habilitada y una cuenta de servicio, puede descargar su clave privada como un archivo JSON. Tome nota de la ubicación del archivo, para que pueda usarlo en los siguientes pasos.
Si tiene algún problema con los primeros pasos que hay una guía de inicio rápido Eso ayuda y termina con la descarga de la tecla JSON.
Necesitas establecer el Google_application_credentials Variable ambiental, por lo que se puede acceder a las llamadas API. Esto apunta al archivo JSON que acaba de descargar y le ahorra tener que escribir la ruta cada vez. Abra una nueva ventana de terminal y use el exportar comando así:
export GOOGLE_APPLICATION_CREDENTIALS="/Users/[username]/Downloads/[file name].json"
Reemplace la [nombre de usuario] con su nombre de usuario. Asegúrese de que la ruta al lugar que almacenó el archivo de clave privado sea correcto. Reemplace la [Nombre del archivo] Con su archivo de clave privado y use la ruta a su archivo.
En Windows, puede hacer lo mismo a través de la línea de comandos, como esta:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\[username]\Downloads\[FILE_NAME].json"
Nota: Si cierra la ventana de su terminal o consola, es posible que deba ejecutar eso nuevamente para configurar la variable nuevamente. Añadiremos esto a nuestro código PHP en breve, por lo que no tiene que preocuparse de nuevo.
Ahora estás listo para cavar en la API de la visión de la nube. Usará enrollado para hacer pruebas rápidas de la API. También puede utilizar este método de su código también.
Las solicitudes de rizo se pueden hacer en la mayoría de los idiomas, ya sea que eso sea PHP, Python o nodo. De esta manera, puede hacer las llamadas directamente en la línea de comandos o asignar el resultado a una variable en el idioma de su elección. Encuentre algunos consejos rápidos en el uso de curl aquí .
Cree un archivo JSON simple para mantener los detalles de la solicitud. Llámalo google_vision.json . Almacenelo local en el que desea ejecutar los comandos de terminales.
{
"peticiones":[
{
"imagen":{
"fuente":{
"imageuri":
"https://upload.wikimedia.org/wikipedia/commons/9/93/golden_retriever_carlos_%2810581910556%29.jpg"
}
},
"caracteristicas": [{
"Tipo": "type_unpecified",
"MaxResults": 50
},
{
"Tipo": "Landmark_Detection",
"MaxResults": 50
},
{
"Tipo": "face_detection",
"MaxResults": 50
}
{
"Tipo": "label_detection",
"MaxResults": 50
},
{
"Tipo": "text_detection",
"MaxResults": 50
},
{
"Tipo": "safe_search_detection",
"MaxResults": 50
},
{
"Tipo": "image_properties",
"MaxResults": 50
}
]
}
]
}
En el código anterior, ha indicado una imagen para analizar, así como las características específicas de la API para usar, incluida la detección de la cara y la detección de puntos de referencia. Safe_search_detection Es ideal para saber si la imagen es segura y en qué categoría pertenece, como contenido de adultos o violento. Image_properties Te lo dice sobre los colores y los detalles del nivel de píxeles.
Para ejecutar el comando CURL, en su interfaz de terminal o línea de comandos, ingrese lo siguiente.
Curl -X Post -H "Autorización: Portador" $ (GCLOUD AUTÍO AUTÍO APLICACIÓN: TOKEN POR POR DE PULSO DE IMPRESIÓN DE PURSOS) -H "Tipo de contenido: Aplicación / JSON; Charlass = UTF-8" --Data-Binario @ google_vision.json "https://vision.googleapis.com/v1/images :anotate" & gt; Resultados
Usando el & gt; resultados Sintaxis, tendrá los resultados almacenados en un nuevo archivo llamado resultados para usted. Indicó la URL a la API ( "https://vision.googleapis.com/v1/images :anotate" ) e incluyó sus datos JSON para CORREO lo.
Es posible que se le solicite la primera vez que usa esto para activar la API o permitir el acceso. Responda Sí o y a ese mensaje y debe devolver el JSON.
Si abre el archivo de resultados, obtendrá los resultados de datos de JSON de la solicitud API de la Visión. Aquí hay un fragmento:
{
"Respuestas": [
{
"Labelannotations": [
{
"MEDIO": "/ M / 0BT9LR",
"Descripción": "Perro",
"Puntuación": 0.982986,
"TOPALIDAD": 0.982986
},
{
"Mid": "/ m / 01t032",
"Descripción": "Golden Retriever",
"Puntuación": 0.952482,
"TOPALIDAD": 0.952482
},
{
...
Ves algunos resultados muy útiles de inmediato. Bajo la Labelannotations ¡El nodo puede ver un coincidencia del 98 por ciento que la imagen contiene un "perro" y un coincidencia del 95 por ciento que contiene un "golden retriever"! El AI ya identificó el contenido de la imagen y otros detalles, incluido un "hocico" y el hecho de que es probable que sea un "perro deportivo".
Esto no requirió ningún entrenamiento de su parte debido al sistema ya capacitado de Google Vision AI. Al escanear los resultados, verá todo, desde las regiones recomendadas de cultivos, para las imágenes de recorte automático a los sujetos, a un detalle increíble de lo que hay en las imágenes, incluidos los colores y el contenido. Pruébelo con otras imágenes para ver qué tan poderosa es la API.
Puede continuar usando este método para probar las llamadas que usaremos. También puede configurar un SDK local en un idioma que prefiera e integral en su aplicación.
A continuación, hará una aplicación simple basada en la web para mostrar cómo integrar la API en sus proyectos.
Hay una serie de SDK disponibles en una variedad de idiomas para facilitar la integración. Usted utilizará el SDK PHP para esta siguiente sección. Si desea ajustar el código que sigue a un idioma diferente, hay un gran recurso de SDKS aquí .
Comience por asegurarse de que tiene una carpeta de proyecto configurada en su servidor local o remoto. Si ya no lo tiene, obtenga compositor e instale la carpeta de su proyecto. Opcionalmente, puede tener un compositor ya instalado a nivel mundial y eso también está bien.
Ejecute el siguiente comando compositor para instalar los archivos del proveedor para la Cloud Vision SDK.
PHP -R "Copiar ('https://getcomposer.org/installer', 'compositor-setup.php');"
PHP -R "if (hash_file ('sha384', 'composer-setup.php') === '93b54496392c0627746 70ac18b134c3b3a95e5a5e5c88
F1A9F115F203B75BF9A129D5DAA8BA6A13E2CC8A1DA080
6388A8 ') {ECHO' instalador verificado '; } else {echo 'instalador corrupto'; desvincular ('compositor-setup.php'); } echo php_eol; "
PHP Composer-Setup.php
PHP -R "Unlink ('compositor-setup.php');"
PHP Composer.Far requiere Google / Cloud-Vision
El compositor hace una carpeta de proveedores en la carpeta de su proyecto e instala todas las dependencias para usted. Si se queda atascado, lo que quiere usar PHP, puede consultar esto Instalación de recurso compositor .
Cree un nuevo archivo PHP en la carpeta de su proyecto. Sin embargo, configúrelo, pero incluya un formulario HTML simple para cargar imágenes para pruebas rápidas. Aquí hay un ejemplo de archivo PHP con el formulario incluido:
& lt;! DOCTYPE HTML & GT;
& lt; html & gt;
& lt; cabeza y gt;
& lt; title & gt; net - tutorial de visión informática & lt; / title & gt;
& lt; / cabeza y gt;
& lt; cuerpo y gt;
& lt; forman acción = "index.php" ctype = "Multipart / Form-Data-Data" Method = "Post" & GT;
& lt; H1 & GT; Seleccionar imagen & lt; / H1 & GT;
& lt; Entrada tipo = "Archivo" Nombre = "Archivo" & GT; & lt; BR / & GT; & LT; BR / & GT;
& lt; type = "enviar" valor = "Subir imagen" Name = "Enviar" & GT; & lt; br / & gt;
& lt; / FORK & GT;
& lt; div clase = "resultados" & gt;
& lt;? PHP
// el código PHP va aquí //
Si (! ISSET ($ _ Publicar ['enviar'])) {Die (); }
& gt;
& lt; / DIV & GT;
& lt; / body & gt;
& lt; / html & gt;
El código incluye un archivo HTML básico con un formulario y un marcador de posición para el código PHP. El código comienza a verificar la existencia de la imagen, enviado desde el formulario. Si aún no se envía, no hace nada.
Si prefiere señalar las imágenes en línea o en su sistema, omita este paso. Si desea procesar imágenes que seleccione, agregue este código para guardar la imagen seleccionada.
// guardar la imagen
$ filepath = $ _files ["Archivo"] ["Nombre"];
if (Move_uploaded_file ($ _ archivos ["Archivo"] ["tmp_name"], $ filepath)) {
echo "& lt; p & gt; & lt; img src =". $ filepath. "Estilo = 'Ancho: 400px; Altura: Auto;' / & gt; & lt; / p & gt; ";
} demás {
ECHO "ERROR !!";
}
Necesitas establecer el Google_application_credentials Variable para que se autentique. En php usamos el putenv comando para establecer una variable de entorno. Agregue este código Siguiente en su código PHP:
PUTENV ('Google_Application_Crenentials = / Users / RichardMattka / descargas / Vision Tutorial 1-0F464A9A0F7B.JSON');
Reemplace la ruta y el nombre del archivo a su archivo de clave privado de JSON.
Añadir la biblioteca y inicializar el Languague clase en su código. Añadir este código Siguiente:
Requiere __DIR__. '/vendor/autoload.php';
Utilice Google \ Cloud \ Vision \ V1 \ ImageanNotatorClient;
$ ProjectID = 'Vision-Tutorial-1';
$ imageannotator = nuevo imageannotatorclient ([
'ProyectID' = & gt; $ projectid
]);
Comience por requerir el AutoLoad del proveedor. Esto es similar en Python o nodo cuando necesita sus dependencias. Importar el Imageannotatorclient A continuación, para hacer uso de la clase. Definir tu Projecto ID . Si no está seguro de qué es esto, busque la consola de Google Cloud Project. Finalmente, crea un nuevo Imageannotatorclient Objeto usando su proyectorido y asignelo a la $ imagienenotator variable.
Comience a enviar la imagen a la API para su análisis. Mostrará el resultado como JSON a la pantalla por ahora, pero en la práctica podría evaluar los resultados y usarlos de la manera que desee.
Añadir lo siguiente para enviar la imagen a la API.
$ image = file_get_contents ($ filepath);
$ Response = $ Imagenenotator- & GT; LabelDetection ($ Imagen);
$ etiquetas = $ Respuesta- & gt; getlabelannotations ();
foreach ($ etiquetas como $ etiqueta) {
echo "& lt; div clase = 'resultado' & gt;";
$ resultado = $ label- & gt; getDescription ();
echo $ resultado. "(". $ label- & gt; getscore () ")";
echo "& lt; / div & gt;";
}
Esto envía el contenido del formulario enviado a la imagennotador Punto final y almacena el resultado en el RESPUESTA DE $ variable. Especifica el labado característica. También puedes usar Detección de rostro De Logodetection De TextDetection y muchas otras funciones. Para una lista completa, Chequea aquí .
A continuación, iterar sobre la lista de etiquetas. Este es solo un ejemplo para mostrar cómo usarlo: podría procesarlo y reaccionar a los resultados, sin embargo, necesita.
Otro ejemplo rápido de cuán poderosa se encuentra la API en el Detección de rostro función. Esto devolverá los datos de la emoción, así como la información de ubicación de dónde están en la imagen las caras. Pruebe este código para ver cómo funciona.
$ Response = $ Imagenenotator- & GT; Facetetection ($ imagen);
$ caras = $ Respuesta- & gt; getfaceannotations ();
$ probapeeliodname = ['desconocido', 'muy_unlikely', 'improbable',
'Posible', 'probable', 'muy_likly'];
// var_dump ($ etiquetas);
foreach ($ caras como $ cara) {
echo "& lt; div clase = 'resultado' & gt;";
$ enojo = $ cara- & gt; getangerlikeliud ();
printf ("ira:% s". php_eol, $ probapeeliodname [$ enojo]);
$ alegría = $ cara- & gt; getjoylikeliud ();
PrintF ("Joy:% s". php_eol, $ probapeeliodname [$ joy]);
$ vértices = $ FACE- & GT; GETBOUNDINGPOLY () - & GT; Getvertices ();
$ límites = [];
foreach ($ vértices como $ vértices) {
$ límites [] = sprintf ('(% d,% d)', $ vértice- & gt; getx (), $ vértice- & gt; gety ());
}
Imprimir ('límites:'. Únete a (',', $ límites). php_eol);
echo "& lt; / div & gt;";
}
Empiezas usando el Detección de rostro Función del anotador y pasa en la imagen como el ejemplo anterior. Entonces obtienes el FacenasNotiáonas . Utiliza una variedad de pesos de respuesta en lenguaje más común, por lo que puede ver la probabilidad de ciertas emociones. Siguiendo esto, itera la respuesta como antes. Usted verifica dos de varias emociones posibles, enojo y alegría, devolviendo los resultados de aquellos. Esto también le dará las esquinas de los cuadros delimitadores que definen cada cara encontrada.
Este artículo fue publicado originalmente en el número 316 de neto , la revista más vendida del mundo para diseñadores web y desarrolladores web. Comprar problema 316 aquí o Suscríbete aquí .
Artículos relacionados:
(Crédito de la imagen: Brendan McCaffrey (concepto original de Clara McCaffrey)) PureRef es un gran ejemplo de que u..
[dieciséis] (Crédito de la imagen: Alex Blake / Facebook) La configuración de privacidad de Facebook puede parecer un poco ..
Cualquiera que sea el tipo de artista, comprender cómo dibujar a una persona es una habilidad fundamental. Domina la forma humana, y cuando es hora de com..
[dieciséis] Si te has estado sintiendo atascado en una rutina creativa, puede que valga la pena tener un momento para hacer un balance..
[dieciséis] Página 1 de 5: Ver y cambiar HTML, CSS & AMP; Js Ver y cambiar HTML, CSS..
[dieciséis] Si sigues tendencias, es difícil perderse que VR está pasando por otro avivamiento. Ha sucedido antes, pero esta vez es ..
[dieciséis] En este tutorial, vamos a echar un vistazo a las formas de cambiar los estilos de los elementos de CSS, así como aparente..
[dieciséis] Para descargar los archivos adjuntos para el número 3D del mundo 3D, simplemente haga clic en el enlace a continuación, ..