MARKETPLACE
PLUGINS
GOOGLE VISION - DETECT TEXT
Google Vision - Detect Text logo

Google Vision - Detect Text

Published August 2020
   •    Updated this month

Plugin details

Improve your image understanding by extracting text within an image file that is provided as input, using Google Vision's powerful AI.
The following element is provided:
- GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE)

The following actions are provided:
- DETECT TEXT ON IMAGE (FRONT-END DESKTOP & NATIVE MOBILE)
- DETECT TEXT ON IMAGE (BACK-END)

⚠ WARNING: This service provides text detection operations in an image such as a scene. If you intend to perform an OCR operation on a document, please refer to the "Google Vision - OCR Document" plugin.

A script is provided to automatically configure your Google Cloud settings.

The plugin returns a list of text, words, and the detected language.

Demo Link: https://gcpvisiondemo-text.bubbleapps.io/version-test
Editor Link: https://app.bubble.io/page?name=index&id=gcpvisiondemo-text-editor&tab=tabs-1

💡 𝗦𝘂𝗯𝘀𝗰𝗿𝗶𝗽𝘁𝗶𝗼𝗻𝘀 𝗮𝗿𝗲 𝗽𝗿𝗼𝗿𝗮𝘁𝗲𝗱. 𝗜𝗳 𝘆𝗼𝘂 𝗶𝗻𝘀𝘁𝗮𝗹𝗹 𝗮𝗻𝗱 𝘂𝗻𝘀𝘂𝗯𝘀𝗰𝗿𝗶𝗯𝗲 𝘁𝗵𝗶𝘀 𝗽𝗹𝘂𝗴𝗶𝗻 𝗶𝗻 𝗼𝗻𝗲 𝗱𝗮𝘆 𝘁𝗼 𝘁𝗲𝘀𝘁 𝗶𝘁 𝗼𝘂𝘁, 𝘆𝗼𝘂'𝗹𝗹 𝗼𝗻𝗹𝘆 𝗯𝗲 𝗰𝗵𝗮𝗿𝗴𝗲𝗱 𝟭/𝟯𝟬𝘁𝗵 𝗼𝗳 𝘁𝗵𝗲 𝗺𝗼𝗻𝘁𝗵𝗹𝘆 𝘀𝘂𝗯𝘀𝗰𝗿𝗶𝗽𝘁𝗶𝗼𝗻 𝗳𝗲𝗲.

📖 𝗦𝘁𝗲𝗽-𝗯𝘆-𝗦𝘁𝗲𝗽 𝗶𝗻𝘀𝘁𝗿𝘂𝗰𝘁𝗶𝗼𝗻𝘀 𝗮𝗿𝗲 𝘁𝗵𝗲 "𝗜𝗻𝘀𝘁𝗿𝘂𝗰𝘁𝗶𝗼𝗻𝘀" 𝘀𝗲𝗰𝘁𝗶𝗼𝗻 𝗮𝗻𝗱 𝗗𝗲𝗺𝗼 𝗘𝗱𝗶𝘁𝗼𝗿 𝗶𝘀 𝗶𝗻 𝘁𝗵𝗲 "𝗟𝗶𝗻𝗸𝘀" 𝘀𝗲𝗰𝘁𝗶𝗼𝗻 𝗼𝗳 𝘁𝗵𝗲 𝗣𝗹𝘂𝗴𝗶𝗻 𝗣𝗮𝗴𝗲.

Contact us at [email protected] for any additional feature you would require or support question.

$99

One time  •  Or  $5/mo

3.7 stars   •   3 ratings
87 installs  
This plugin does not collect or track your personal data.

Platform

Web & Native mobile

Contributor details

wise:able logo
wise:able
Joined 2020   •   122 Plugins
View contributor profile

Instructions

1️⃣: GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE) ====================================================

📋 ELEMENT DESCRIPTION
--------------------------------
GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE) provides DETECT TEXT ON IMAGE action to extract text within an image provided as input. The front-end element is suitable for applications when reactivity is desired, such as but not limited to, mobile applications. It supports multiple image formats and automatically optimizes images to meet Google Cloud Vision requirements.

🔧 STEP-BY-STEP SETUP
--------------------------------
ℹ️ The steps from 0) to 1) can be automatically performed by logging in into your Google Cloud Console, opening the Cloud Shell (top right corner of your page) and copy pasting this command and press enter:

 wget -q https://storage.googleapis.com/bubblegcpdemo/demo-assets/wiseable-gcp-vision.py && python3 wiseable-gcp-vision.py

0) Set-up a project from Google Cloud Console: https://cloud.google.com/vision/docs/setup
 - Create or select a project
 - Enable the CLOUD VISION API for that project
 - Create a service account
 - Download a private key as JSON.

1) Open the private key JSON file with a text editor, copy/paste the following parameters from your file to the Plugin settings:
 - CLIENT_EMAIL
 - PROJECT_ID
 - PRIVATE_KEY, including the -----BEGIN PRIVATE KEY-----\\n prefix and \\n-----END PRIVATE KEY-----\\n suffix.

2) Register on plugins.wiseable.io. Create a new Credential which associates your BUBBLE APP URL, GCP CLIENT_EMAIL, PROJECT_ID, and PRIVATE_KEY.
The registration service will generate your PUBLIC ACCESS KEY. This key serves as a secure proxy for your real API key. It allows your application to communicate with the service without exposing your real API key. Since this PUBLIC ACCESS KEY is explicitly tied to your registered BUBBLE APP URL, it can only be used from that domain, ensuring that even if the key is publicly visible, it remains safe and cannot be misused by unauthorized sources.

3) Enter in the PLUGIN SETTINGS your PUBLIC ACCESS KEY (used for this element only).

4) Add the GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE) element to the page on which the text detection feature must be integrated. Select the RESULT DATA TYPE as Returned type, must always be set to "RESULT (VISION - DETECT TEXT)".

5) Integrate the logic into your application using the following GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE) element's states and actions:

FIELDS:
- RESULT DATA TYPE: Returned type, must always be set to "RESULT (VISION - DETECT TEXT)".  

EVENTS:
- SUCCESS: Event triggered upon success
- ERROR: Event triggered upon error

EXPOSED STATES:
Use any element able to show/process the data of interest (such as a Group with a Text field) stored within the result of the following states of the GOOGLE VISION - DETECT TEXT (FRONT-END DESKTOP & NATIVE MOBILE) element:
- RESULTS: Populated upon SUCCESS event. Returns a list of text, words, and the detected language.
- ERROR MESSAGE: Populated upon ERROR event.
- IS PROCESSING: Set to true when processing is in progress, false otherwise.

ELEMENT ACTIONS - TRIGGERED IN WORKFLOW:
- DETECT TEXT ON IMAGE (FRONT-END DESKTOP & NATIVE MOBILE): Extract text within an image. Populate RESULTS state upon completion.

  Inputs Fields:
     - IMAGE: Image from the Bubble.io uploader, or a Protocol-relative URLs (//server/file.ext), a HTTPS file URL (https://server/file.ext) or a Google Storage URI (gs://bucket/image.jpg). For both Protocol-relative and HTTPS URL, the file must be accessible through HTTPS Protocol.
     - LANGUAGE HINT: Providing a language hint to the service is not required, but can be done if the service is having trouble detecting the language used in your image. List of Language Hint: https://cloud.google.com/vision/docs/languages

2️⃣: DETECT TEXT ON IMAGE (BACK-END)
==================================

📋 ACTION DESCRIPTION
--------------------------------
DETECT TEXT ON IMAGE (BACK-END) extracts text within a JPEG, PNG8, PNG24, GIF, Animated GIF (first frame only), BMP, WEBP, RAW, ICO image file that is provided as input, using Google Vision's powerful AI.
The back-end action is suitable for applications when volume or asynchronous processing is desired.

🔧 STEP-BY-STEP SETUP
--------------------------------
ℹ️ If not already done, perform steps 0 and 1 of the first element setup. The back-end action does not require the PUBLIC ACCESS KEY.

1) Set up the action "DETECT TEXT ON IMAGE (BACK-END)" action in the workflow.

  Input Fields:
     - IMAGE: JPEG, PNG8, PNG24, GIF, Animated GIF (first frame only), BMP, WEBP, RAW, ICO image file from the Bubble.io picture uploader, a Protocol-relative URLs (//server/image.jpg), a HTTPS image URL (https://server/image.jpg) or a Google Storage URI (gs://bucket/image.jpg). For both Protocol-relative and HTTPS URL, the file must be accessible through HTTPS Protocol.
     - LANGUAGE HINT: Providing a language hint to the service is not required, but can be done if the service is having trouble detecting the language used in your image. List of Language Hint: https://cloud.google.com/vision/docs/languages
     - RESULT DATA TYPE: Returned type, must always be set to "RESULT (VISION)".

  Output Fields:
     - RESULT: Returns a list of text, words, and the detected language.

🔍 IMPLEMENTATION EXAMPLE
======================
Feel free to browse the app editor in the Service URL for an implementation example.

ℹ️ ADDITIONAL INFORMATION
======================
> Supported image formats: https://cloud.google.com/vision/docs/supported-files

> Supported languages: https://cloud.google.com/vision/docs/languages#supported-langs

> GOOGLE VISION service limits: https://cloud.google.com/vision/quotas

⚠️ TROUBLESHOOTING
================
Any plugin related error will be posted to the Logs tab, "Server logs" section of your App Editor.
Make sure that "Plugin server side logging" and "Plugin client side logging" are selected in "Show Advanced".

For front-end actions, you can also open your browser's developer console (F12 or Ctrl+Shift+I in most browsers) to view detailed error messages and logs.

Always check the ERROR MESSAGE state of the element and implement error handling using the ERROR event to provide a better user experience.

> Server Logs Details: https://manual.bubble.io/core-resources/bubbles-interface/logs-tab#server-logs

⚡ PERFORMANCE CONSIDERATIONS
===========================

GENERAL
-------------
For back-end actions, this implementation posts the file data to GOOGLE VISION for non-Google Storage URIs (e.g: non-gs://). The maximum processing duration of this action is capped at 30 seconds as per Bubble.io design. This time limitation does not apply to front-end actions.

⏱️ BACK-END ACTION START DELAY
-----------------------------------------------
Each time a server-side action is called, Bubble initializes a small virtual machine to execute the action. If the same action is called shortly after, the caching mechanism kicks in, resulting in faster execution on subsequent calls.

A useful workaround is to fire a dummy execution at page load, which pre-warms the Bubble engine for the next few minutes, reducing the impact of cold starts for your users.

FRONT-END VS BACK-END PROCESSING
----------------------------------------------------
The front-end element is designed to support and optimize multiple image formats and will automatically compress images to adhere to Google Cloud Vision requirements. The back-end action doesn't perform this optimization, so be careful with file size and format when using it.

❓ QUESTIONS?
===========
Contact us at [email protected] for any additional feature you would require or support question.

Types

This plugin can be found under the following types:
Api   •   Background Services   •   Element   •   Event   •   Action

Categories

This plugin can be found under the following categories:
Media   •   Productivity   •   AI   •   Image   •   Mobile   •   Visual Elements

Resources

Support contact
Documentation
Tutorial

Rating and reviews

Average rating (3.7)

works like charm!
February 11th, 2025
It enables us to automate a huge part of our workload and the implementation takes less than 25 seconds
Great!
March 25th, 2022
Awful experience
May 20th, 2021
For weeks I have been trying to make it work and nothing.
Hello! We are sorry you had troubled setting-up our plugin. Please reach us as per the instructions if you require assistance. (plugin author)
May 20th, 2021
  •  
wise:able
Bubble
CoAlias Logo Powered by CoAlias