1. 程式人生 > 實用技巧 >ml-10-2-應用例項-圖片 文字識別( ( Application Example-Photo OCR) )

ml-10-2-應用例項-圖片 文字識別( ( Application Example-Photo OCR) )

應用例項-圖片 文字識別( ( Application Example-Photo OCR) )

問題描述和流程圖Problem Description and Pipeline

影象文字識別應用所作的事是,從一張給定的圖片中識別文字。這比從一份掃描文件中
識別文字要複雜的多

為了完成這樣的工作,需要採取如下步驟:

  1. 文字偵測(Text detection)——將圖片上的文字與其他環境物件分離開來
  2. 字元切分(Character segmentation)——將文字分割成一個個單一的字元
  3. 字元分類(Character classification)——確定每一個字元是什麼 可以用任務流程圖來表

達這個問題,每一項任務可以由一個單獨的小隊來負責解決:

img

滑動視窗Sliding Windows

滑動視窗是一項用來從影象中抽取物件的技術。假使我們需要在一張圖片中識別行人,
首先要做的是用許多固定尺寸的圖片來訓練一個能夠準確識別行人的模型。然後我們用之前
訓練識別行人的模型時所採用的圖片尺寸在我們要進行行 人識別的圖片上進行剪裁,然後
將剪裁得到的切片交給模型,讓模型判斷是否為行人,然後在圖片上滑動剪裁區域重新進行
剪裁,將新剪裁的切片也交給模型進行判斷,如此迴圈直至將圖片全部檢測完。

img

一旦完成後,我們按比例放大剪裁的區域,再以新的尺寸對圖片進行剪裁,將新剪裁的
切片按比例縮小至模型所採納的尺寸,交給模型進行判斷,如此迴圈。

滑動視窗技術也被用於文字識別,首先訓練模型能夠區分字元與非字元,然後,運用滑

動視窗技術識別字符,一旦完成了字元的識別,我們將識別得出的區域進行一些擴充套件,然後
將重疊的區域進行合併。接著我們以寬高比作為過濾條件,過濾掉高度比寬度更大的區域
(認為單詞的長度通常比高度要大)。下圖中綠色的區域是經過這些步驟後被認為是文字的
區域,而紅色的區域是被忽略的。

img

以上便是文字偵測階段。 下一步是訓練一個模型來完成將文字分割成一個個字元的任
務,需要的訓練集由單個字元的圖片和兩個相連字元之間的圖片來訓練模型。

img

模型訓練完後,我們仍然是使用滑動視窗技術來進行字元識別。

以上便是字元切分階段。 最後一個階段是字元分類階段,利用神經網路、支援向量機
或者邏輯迴歸演算法訓練一個分類器即可。

img

獲取大量資料和人工資料Getting Lots of Data and Artificial Data

如果我們的模型是低方差的,那麼獲得更多的資料用於訓練模型,是能夠有更好的效果
的。問題在於,我們怎樣獲得資料,資料不總是可以直接獲得的,我們有可能需要人工地創
造一些資料。

以我們的文字識別應用為例,我們可以字型網站下載各種字型,然後利用這些不同的字
體配上各種不同的隨機背景圖片創造出一些用於訓練的例項,這讓我們能夠獲得一個無限大
的訓練集。這是從零開始創造例項。

另一種方法是,利用已有的資料,然後對其進行修改,例如將已有的字元圖片進行一些
扭曲、旋轉、模糊處理。只要我們認為實際資料有可能和經過這樣處理後的資料類似,我們
便可以用這樣的方法來創造大量的資料。

有關獲得更多資料的幾種方法:

  1. 人工資料合成
  2. 手動收集、標記資料
  3. 眾包

上限分析:哪部分管道的接下去做Ceiling Analysis_ What Part of the Pipeline to Work on Next

在機器學習的應用中,我們通常需要通過幾個步驟才能進行最終的預測,我們如何能夠
知道哪一部分最值得我們花時間和精力去改善呢?這個問題可以通過上限分析來回答。

回到我們的文字識別應用中,我們的流程圖如下:

img

流程圖中每一部分的輸出都是下一部分的輸入,上限分析中,我們選取一部分,手工提
供 100%正確的輸出結果,然後看應用的整體效果提升了多少。假使我們的例子中總體效果
為 72%的正確率。

如果我們令文字偵測部分輸出的結果 100%正確,發現系統的總體效果從 72%提高到了
89%。這意味著我們很可能會希望投入時間精力來提高我們的文字偵測部分。

接著我們手動選擇資料,讓字元切分輸出的結果 100%正確,發現系統的總體效果只提
升了 1%,這意味著,我們的字元切分部分可能已經足夠好了。

最後我們手工選擇資料,讓字元分類輸出的結果 100%正確,系統的總體效果又提升了
10%,這意味著我們可能也會應該投入更多的時間和精力來提高應用的總體表現。

img

不洗澡的鯨魚   
 
 </div> 

             
          <div class=


相關推薦

ml-10-2-應用例項-圖片 文字識別( ( Application Example-Photo OCR) )

應用例項-圖片 文字識別( ( Application Example-Photo OCR) ) 問題描述和流程圖Problem Description and Pipeline

Python呼叫百度OCR實現圖片文字識別的示例程式碼

百度AI提供了一天50000次的免費文字識別額度,可以愉快的免費使用!下面直接上方法:

c++ 呼叫opencv+tesseract做圖片文字識別

2020年12月28日22:08:08 環境:windows10 vscode cmake vcpkg vcpkg installopencv vcpkg installtesseract

linux系統如何使用ocr圖片文字識別

技術標籤:思博 1、安裝GCC開發環境,從而支援後續程式的編譯安裝: yum groupinstall "Development Tools"

視訊教程:圖片文字識別多執行緒多工並行OCR,高效高速圖片文字支援輸出Excel表格

視訊教程:圖片文字識別多執行緒多工並行OCR,高效高速圖片文字支援輸出Excel表格 詳情:http://t.cn/A6IjGHbK

最後 1 天!1 元 1 萬次通用文字識別 / 網路圖片文字識別文字識別 OCR 特惠促銷

百度智慧雲現已開啟文字識別 OCR 特惠活動,支援免費體驗 OCR 文字識別能力,還有新使用者特惠、新老使用者同享特惠活動。新使用者首購方面,新使用者可以 1 元的價格體驗通用文字識別 (標準版)、網路圖片文字識別

OCR圖片文字識別

1 #從相應的aip匯入AipOcr模組 2 from aip import AipOcr 3 from pandas.core.frame import DataFrame

Python3使用騰訊雲文字識別(騰訊OCR)提取圖片中的文字內容例項詳解

百度OCR體驗地址: https://ai.baidu.com/tech/imagerecognition/general 騰訊OCR體驗地址: https://cloud.tencent.com/act/event/ocrdemo

python 利用百度API識別圖片文字2】(多執行緒版)

#!/usr/bin/env python3 # -*- coding: utf-8 -*- \"\"\" Created on Tue Jun 12 09:37:38 2018 利用百度api實現圖片文字識別

python cv2在驗證碼識別應用例項解析

這篇文章主要介紹了python cv2在驗證碼識別應用例項解析,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

文字識別還能這樣用?通過Python做文字識別到破解圖片驗證碼

前期準備 1. 安裝包,直接在終端上輸入pip指令即可: # 傳送瀏覽器請求 pip3 install requests

使用tess4j完成身份證和營業執照圖片文字識別

這兩天研究了一下關於OCR圖文解析的技術。當然市場上已經有開源服務,比如百度的AI開放平臺,就有OCR相關的API介面。我這裡選用的是Tesseract開源框架,java封裝版本是tess4j。結合網上公佈的一些開源專案提供的demo

VBA呼叫百度智慧雲的文字識別獲取圖片中的數字

平時經常需要把相片中的文字轉換為可編輯的文字。 百度的文字識別可以讓C#、Python等語言呼叫。我把它整合到了API封裝庫了。

python利用pytesseract 實現本地識別圖片文字【3】(多執行緒)

#!/usr/bin/env python3 # -*- coding: utf-8 -*- import glob from os import path import os import pytesseract

python 利用百度API批量識別圖片文字【1】

#!/usr/bin/env python3 # -*- coding: utf-8 -*- \"\"\" Created on Tue Jun 12 09:37:38 2018 利用百度api實現圖片文字識別

python利用pytesseract 實現本地識別圖片文字

#!/usr/bin/env python3 # -*- coding: utf-8 -*- import glob from os import path import os import pytesseract

python 利用百度API識別圖片文字(多執行緒版)

#!/usr/bin/env python3 # -*- coding: utf-8 -*- \"\"\" Created on Tue Jun 12 09:37:38 2018 利用百度api實現圖片文字識別

谷歌 Chrome OS 將推出新功能,掃描應用支援 PDF OCR 文字識別

6 月 20 日訊息根據外媒 AndroidPolice 訊息,谷歌即將為 Chromebook 膝上型電腦的專屬系統 Chrome OS 推出新功能,掃描應用會支援 PDF 文件的 OCR 文字識別。這一類膝上型電腦因為其具有非常高的價效比,在海外教育

C#用百度OCR識別圖片文字

百度OCR識別圖片文字 百度有直接的Nuget包引用非常的簡單呼叫: 具體怎麼用看說明文件就夠了:

iOS 在系統相簿呼叫自己的應用編輯圖片 - Photo Editing Extension

Created by Ningyuan 2020/05/23 先扔個官方設計指南 Human Interface Guidelines:Photo Editing iOS 8 之後,蘋果提供了幾個應用擴充套件功能,分別是Today Widget、Share、Action、Photo Editing、Storage Provi