前面講了這麼多設計理念,但最重要的可編輯還沒做到。目前可以生成一份圖片簡報了,但要怎麼變成可編輯文字的PPT形式呢? 這時候就要用到OCR、字型還原、背景修復了:
| 原圖 | OCR&字型修復 |
|---|---|
![]() |
![]() |
OCR的目的是把文字從圖片裡抽出來,這樣一來就可以對產生的文字作編輯。這邊選用多語言友善的Paddle OCR,可以準確識別出文字/位置。輸入一張圖片,Paddle OCR會輸出陣列,包含每個文字區域對應的box,有text(辨識文字)、confidence(分數)、polygon(四邊形區域),有了這些就可以在編輯區組合出文字框。
但是只有文字還不夠,字型、字體大小、顏色資訊都會丟失,所以這邊會先過一遍AI,輸出字型/色彩/對齊,用這些來重建文字。但是!改了字型,寬度高度的估算(Box)又失效了,這邊要重新渲染,調整出符合Box的大小,避免掉跑版問題。
看起來很簡單的OCR,做起來其實有很多問題。主要是辨識的準確度(尤其是小字)、字體顏色大小還原、段落還原、簡體字誤判,有很多需要優化的地方。一開始box準確性還有很大的問題,所幸PP-OCRv6更新後,文字還原變準了很多,實際使用上多半是字型修復這邊的問題,目前也改到穩定很多了。
其實「抽取功能」到這裡還沒結束,因為我們只拿到了精確還原的文字框,直接蓋上圖片的話,會跟原有的文字重疊,變成殘影,所以還需要做背景修復(去除文字),這個部分下一章會說明。