verification
用邊界框驗證 OCR 辨識結果
信心分數只能告訴你模型有多沒把握,邊界框卻能直接指出你該往哪裡核對。本文教你用每個欄位的邊界框和比對比例來驗證擷取出的資料,而不是盲目相信辨識結果。
5 分鐘閱讀· 2026-06-25
驗證 OCR 通常意味著得自己把整份文件再讀一遍——既慢,又正好是你當初想省下的工。邊界框徹底改變了這個流程:你不必再左右對照兩欄文字,而是讓視線直接跳到圖片上「這個值是從哪裡讀出來的」那一點。對或錯,一眼就看得出來。
每個值都會帶著兩個訊號
space-ocr 在每個欄位上回傳的不只是文字:
- 一個邊界框 + 方向頂點(oriented vertices)——標示這個值是從哪裡讀出來的。如果框落在頁面上錯誤的位置,那這個值就值得懷疑,即使它看起來很合理。
- 一個
match_ratio(0–1)——標示這個值的字元有多少比例真的在頁面上被定位到。引擎把 ≥ 0.85 視為可信的比對結果;比例較低的,就是你該逐一目視確認的清單。
兩者合在一起,就把驗證變成了分流作業:依比對比例排序,只看數值低的那些,再透過各自的邊界框逐一確認。
為什麼邊界框值得信任
這些框並不是語言模型畫出來的。引擎會把每個擷取出的值,逐字與視覺 OCR 在頁面上實際偵測到的符號(symbol)進行比對——match_ratio 就是它在頁面上找到了該值多少比例的文字。(當模型額外提示它用了哪些單字 token 時,這些提示會拿來與欄、列的一致性交叉驗證,而非照單全收。)所以一個框代表的是「這些字元確實存在於頁面上」的證據——而不是憑空在它應該出現的地方畫個框猜一猜。完整的推論邏輯,請參閱 具備稽核軌跡的文件 OCR。
- 取回帶有邊界框的結果呼叫 GET /view(預設就會包含邊界框)或 POST /ocr/fields——每個值都會附帶一個 bbox 與 match_ratio。
- 依比對比例排序先把低於 0.85 的欄位浮上來;那些正是最值得人工看一眼的值。
- 透過位置確認點選或將游標移到被標記的值上,就能看到它在來源圖片上是從哪個確切區域讀出來的。
- 覆寫後繼續往下直接就地修正任何辨識錯誤;原始的 OCR 值會保留下來以供存證。
邊界框如何幫助驗證 OCR?
邊界框會標示一個值是從哪個確切區域讀出來的,所以你只要看一個點就能驗證,而不必把整份文件重讀一遍。再搭配比對比例,你就能做分流:只檢查信心較低的欄位,並透過各自的位置逐一確認。
比對比例要多少才算可靠?
space-ocr 把 0.85 或更高的 match_ratio 視為可信的比對結果;1.0 代表這個值的每一個字元都在頁面上被定位到。凡是低於 0.85 的,都當作需要複查的欄位來看待。
驗證時需要重跑一次 OCR 嗎?
不用。邊界框與比對比例本來就是標準回應的一部分,而用 GET /view 查詢已儲存的工作表,永遠不會重跑 OCR,也不會耗掉點數。
相關文章