教學文章

圖片轉文字辨識不準?提高 OCR 準確率的拍照與裁切技巧

約 4 分鐘艾迪爾工作室

OCR(光學字元辨識)就是把圖片裡的字「讀」出來變成可以複製、編輯的文字。講義、合約、截圖、看板,拍下來就能轉成文字,省掉重打的時間。

很多人第一次用會覺得「錯字好多」。其實大部分 OCR 引擎在乾淨的印刷文件上都相當準,錯誤多半來自原圖:字太小、拍歪了、有陰影、選錯語言。下面依影響大小排列,一項一項改善。

1. 先選對語言

這是最容易被忽略、影響又最大的一項。OCR 會依照你選的語言去比對字形,選「英文」去辨識中文文件,結果一定是亂碼;中英夾雜的文件只選中文,英文單字也會被硬拆成奇怪的中文字。

  • 純繁體中文:選繁體中文。
  • 中英夾雜(技術文件、菜單、名片):同時選繁體中文與英文。
  • 簡體中文文件不要用繁體去辨識,字形差異會讓錯字暴增。
  • 語言選太多也會變慢、變不準,只勾真的有出現的語言。

2. 字要夠大、夠清楚

辨識引擎看的是像素。一個中文字如果在圖片裡只有十幾個像素高,筆畫糊成一團,再好的模型也只能猜。經驗上,內文字高能有 30 像素以上,結果就會穩定很多。

  • 拍整頁 A4 文件時,讓文件佔滿畫面,不要留一大圈桌面。
  • 字很小的文件(合約附註、說明書)分成上下兩半各拍一張,比一張拍整頁準。
  • 截圖時先把畫面放大到 125–150% 再截,而不是截完再放大圖片——事後放大不會多出細節。
  • 對焦要清楚:手機點一下文字讓它對焦,拍完放大檢查字的邊緣是不是銳利的。

3. 正對、光線平均、沒有陰影

  • 手機與紙面平行,從正上方拍。斜著拍會讓遠端的字變小、行變成斜線,辨識時容易整行錯位。
  • 靠窗的自然光最好;用檯燈時從側前方打光,避免手機和手的影子落在紙上。
  • 亮面紙或護貝過的文件容易反光,換個角度讓反光點離開文字。
  • 書本靠近裝訂處的字會彎曲,用手輕壓攤平,或只拍單頁。
  • 背景用素色桌面,跟紙張的顏色有對比。

4. 裁掉不需要的部分

圖片裡的雜物(桌面花紋、旁邊的另一頁、手指、Logo 圖案)會被當成「可能是字」去辨識,產生一堆亂碼行。辨識前把圖片裁到只剩要的文字範圍,結果會乾淨很多。

如果還是有雜訊行,可以利用每一行的信心度:信心度低的行多半是雜訊或圖案,用門檻一次濾掉,再看有沒有誤刪。

哪些內容本來就很難辨識

內容難度建議
印刷體橫排文件低照上面的方法拍,通常大部分正確
螢幕截圖低截圖前先放大畫面
直排中文(書籍、古文)中到高一般 OCR 以橫排為主,直排容易亂序,要另外選支援直排的工具
表格中文字讀得出來,但欄位與格線不會保留,要自己整理
藝術字、招牌、手寫字體高字形與訓練資料差太多,錯字多
手寫字很高以印刷體訓練的 OCR 幾乎讀不出來

辨識完怎麼快速校對

  1. 先整體掃一遍,看有沒有整行錯位或漏行,這通常是原圖歪斜造成的,重拍比逐字改快。
  2. 中文 OCR 常把字跟字之間插進空白,用取代功能一次清掉(好的工具會自動處理)。
  3. 特別檢查容易混淆的字:「已/己/巳」「末/未」「日/曰」,以及數字 0 與英文字母 O、1 與 l。
  4. 數字、金額、日期、人名一定要對照原圖核對,這些錯了最麻煩。

站上的圖片轉文字工具使用 Tesseract 引擎,支援繁中、簡中、英文、日文、韓文,每一行都標出信心度,也會自動清掉中文字之間多餘的空白。辨識在瀏覽器裡進行,文件不會上傳——合約、證件這類內容,這點比辨識率還重要。

常見問題

PDF 可以直接 OCR 嗎?
如果 PDF 本來就有文字層(可以選取文字),直接複製就好,不需要 OCR。掃描版的 PDF 要先把頁面轉成圖片再辨識。
為什麼中文比英文慢、比較容易錯?
中文常用字有好幾千個,英文只有幾十個字母與符號,比對的難度與資料量差很多。這是所有 OCR 引擎都會遇到的情況。
辨識結果會保留排版嗎?
一般只保留斷行,不保留字體、欄位與表格。需要原排版時,通常要另外用版面分析的工具,或辨識後自己排。
照片解析度越高越好嗎?
到一定程度之後就沒差了。重點是「字在圖片裡夠大」,而不是整張圖的像素數。拍得清楚、裁掉多餘的部分,比一味提高解析度有效。

參考資料

法規與平台規定可能調整,實際以官方最新公告為準。內容有錯誤歡迎寫信告訴我們。