Codificación en base64

Puedes proporcionar datos de imagen a la API de Vision si especificas la ruta URI a la imagen o si envías los datos de imagen como texto codificado en base64.

La mayoría de los entornos de desarrollo contienen una utilidad “base64” nativa para codificar una imagen binaria en datos de texto ASCII. Para codificar un archivo de imagen, haz lo siguiente:

Linux

    base64 input.jpg > output.txt

macOS

    base64 -i input.jpg -o output.txt

Windows

    C:> Base64.exe -e input.jpg > output.txt

PowerShell

    [Convert]::ToBase64String([IO.File]::ReadAllBytes("./input.jpg")) > output.txt

A continuación, puedes usar estos datos de imagen de salida de forma nativa dentro de la solicitud JSON:

{
  "requests":[
    {
      "image":{
        "content": "BASE64_ENCODED_DATA"
      },
      "features": [
        {
          "type":"LABEL_DETECTION",
          "maxResults":1
        }
      ]
    }
  ]
}

Cada lenguaje de programación tiene su propia forma de codificar archivos de imagen en base64:

Python

En Python, puedes codificar archivos de imagen en base64 de la siguiente manera:

# Import the base64 encoding library.
import base64

# Pass the image data to an encoding function.
def encode_image(image):
  image_content = image.read()
  return base64.b64encode(image_content)

Node.js

En Node.js, puedes codificar archivos de imagen en base64 de la siguiente manera:

// Read the file into memory.
var fs = require('fs');
var imageFile = fs.readFileSync('/path/to/file');

// Convert the image data to a Buffer and base64 encode it.
var encoded = Buffer.from(imageFile).toString('base64');

Java

En Java, puedes codificar archivos de imagen en base64 de la siguiente manera:

// Import the Base64 encoding library.
import org.apache.commons.codec.binary.Base64;

// Encode the image.
byte[] imageData = Base64.encodeBase64(imageFile.getBytes());

Go

En Go, puedes codificar archivos de imagen en base64 de la siguiente manera:

   import (
       "bufio"
       "encoding/base64"
       "io/ioutil"
       "os"
   )

   // Open image file.
   f, _ := os.Open("image.jpg")

   // Read entire image into byte slice.
   reader := bufio.NewReader(f)
   content, _ := ioutil.ReadAll(reader)

   // Encode image as base64.
   base64.StdEncoding.EncodeToString(content)
¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de la API de Cloud Vision
Si necesitas ayuda, visita nuestra página de asistencia.