Image to text Recognition

Optical word recognition – targets typewritten text, one word at a time (for languages that use a space as a word divider). Convert image to text, online and for free. Online text document converter to extract text from all kinds of images such as PNG, JPG and more!

Please upload picture (or you can insert URL instead) and then copy link and paste to the form below


Upload file

How you can recreate this

Проект по загрузке изображения или документа в WordPress для получения прямой ссылки на документ или изображение для использования функции ocr распознования текста через Google Apps Script

Для этого проекта нам потребуются Google Forms, Sheet и Apps Script.

1. В Google Forms создаем форму с двумя обязательными текстовыми вопросами : 

Ссылка на изображение и Email

Далее мы заходим в Ответы формы и нажимаем привязать к таблице. Имя листа изменить на ImageOCR

Выбираем в меню таблицы Расширения -> Apps Script

2. В Apps Script меняем названием проекта на ImageRecognition и прописываем следующую функцию:

 var ss = SpreadsheetApp.getActiveSpreadsheet()
    var sheet = ss.getSheetByName('ImageOCR')
      var url = sheet.getRange(sheet.getLastRow(),2).getValue() //get link from form
      var imgBlob = UrlFetchApp.fetch(url).getBlob() //Return the data inside this object as a blob.
      //A data interchange object for Apps Script services.
      var res = {
        title: imgBlob.getName(),
        mimeType: imgBlob.getContentType //content type auto}
      }
      var options = { //image recognition
        ocr: true
      }
      var fileocr = Drive.Files.insert(res, imgBlob, options)
      var openfile = DocumentApp.openById(fileocr.id)
      var clientEmail = sheet.getRange(sheet.getLastRow(),3).getValue()
      var extract_text = openfile.getBody().getText()
     
      sheet.getRange(sheet.getLastRow(),4).setValue(extract_text)
      var ocresult = sheet.getRange(sheet.getLastRow(),4).getValue()

      var body =
      'Hello! <br/><br/>Thank you for using my <strong>Image to Text recognition service</strong><br/><br/>Your picture:<br/><br/>' +
        '<img src="'+url+'" alt="OCR" width="480px" height="auto"><br/><br/>Text that was recognized:<br/><br/><strong>'+ocresult+'</strong><br/><br/>-------------<br/><br/>Good luck!';
 
    MailApp.sendEmail(clientEmail, "Image to text recognition",'',{htmlBody: body});
    }

   
Слева в разделе сервисы нажимаем + что бы добавить Drive API версии 2. Нажимаем сохранить проект.

3. В левом меню нажимаем Триггеры -> Добавление триггера. 
Выберите функцию – ImageToText. Выберите источник мероприятия – из таблицы. Выберите тип события – при отправке формы

4. После чего возвращаемся в созданную форму и нажимаем Отправить – HTML-код – и копируем HTML код.
5. В своем WordPress сайте добавляем новый пост или страницу добавляем блок Произвольный HTML и вставляем ранее скопированный HTML код и сохраняем страницу.
6. В результате этого на странице появится форма куда можно указать ссылку на документ или изображение, после чего указать свой email, и на этот email придет результат в виде изображения и распознанного текста.

Внимание, шаги далее могут не работать на общедоступном сервере (если на нем есть ограничения по загрузке файлов)
1. В своем WordPress сайте устанавливаем плагин WordPress File Upload Autor: Nickolas Bossinas и включаем его.
2. Заходим в WordPress File Upload Control Panel
3. Добавляем новую форму для загрузки файлов
4. В настройках формы требуется указать следующие настройки:

General:
Single Button Operation ON 
Allowed File Extensions *.pdf,*.doc,*.jpeg,*.jpg,*.png,*.gif
Create Upload Path ON
Labels:
Success Upload Message https://domainname.com/wp-content/uploads/%filename%.
Где domainname.com ваш домен

5. После чего копируем Generated shortcode и на странице с Google формой добавляем новый блок Шорткод и вставляем ранее скопированный код и сохраняем страницу.
6. В результате этого на странице появится форма куда можно загрузить документ или изображение, после чего сразу скопировать прямую ссылку на файл который можно указать в форме для распознования текста и получить результат на email.