如果把文字識(shí)別比作一條工廠生產(chǎn)線,傳統(tǒng) OCR 就像老師傅的手工工坊:銼刀、卡尺、放大鏡,每一步都靠經(jīng)驗(yàn);深度學(xué)習(xí) OCR 則像全自動(dòng)化車間,機(jī)械臂、傳感器、自適應(yīng)軌道,一氣呵成。下面用 3 分鐘時(shí)間,帶你拆解這條產(chǎn)線的每個(gè)齒輪。
傳統(tǒng)工坊:五把刻刀圖像預(yù)處理
先把原始照片“洗剪吹”:灰度、二值、去噪、拉正。這一步?jīng)Q定了后面所有環(huán)節(jié)的原料質(zhì)量——照片歪了,字符也會(huì)跟著跳舞。
版面分析
用連通域或投影法,像裁布一樣把整頁切成文字塊、表格、圖片。閾值多少、切多寬,全靠老師傅多年手感。遇到彎曲文本或密集表格,往往一刀切不準(zhǔn)。
手工特征
HOG、LBP、輪廓、投影直方圖……這些名字聽著像化學(xué)元素表,其實(shí)是工程師給字符畫的“素描”。它們只在訓(xùn)練階段出現(xiàn)一次,之后就被固化為分類器的“模板”。
分類器識(shí)別
SVM、KNN、MLP 輪流上崗,逐字比對模板。模板覆蓋不到的生僻字、花體字,只能靠詞典猜,猜錯(cuò)就“*”號(hào)伺候。
后處理修修補(bǔ)補(bǔ)
語言模型像語文老師,用詞典和正則補(bǔ)丁把錯(cuò)別字圈出來。遇到“0 與 O”“1 與 l”,還得人工再查一遍。
深度學(xué)習(xí)車間:三大機(jī)械臂文字檢測子網(wǎng)絡(luò)
CNN/FCN/Transformer 一眼掃過去,直接框出所有文字區(qū)域,彎曲文本也能貼著邊緣畫框;再不用人工去調(diào)連通域閾值。
文字識(shí)別子網(wǎng)絡(luò)
特征臂:CNN 或 ViT 把圖像切成高維特征圖。
序列臂:BiLSTM 或 Transformer 捕獲字符間的上下文,連筆草書也能讀順。
解碼臂:CTC 或 Attention 把特征流翻譯成字符串,整個(gè)過程一氣呵成。
端到端大模型
一張圖喂進(jìn)去,坐標(biāo)+文字一次性端出來。檢測、矯正、識(shí)別共享一次主干特征,計(jì)算量不隨文字塊數(shù)量爆炸,反而更省算力。表格區(qū)域也不再被粗暴丟棄,而是用結(jié)構(gòu)恢復(fù)網(wǎng)絡(luò)直接生成行列邏輯,單元格里的內(nèi)容同時(shí)完成 OCR。
工坊與車間的對決速度與精度
老師傅能做 100 頁;車間一小時(shí)跑 10 000 頁,生僻字、手寫體、低分辨率統(tǒng)統(tǒng)不降準(zhǔn)度。
擴(kuò)展性
新字體來了,傳統(tǒng)線要重新刻模板;深度學(xué)習(xí)只需再喂一批數(shù)據(jù),模型自己長出新“肌肉”。
復(fù)雜頁面
傳統(tǒng)線看到圖片就畫叉;端到端模型在同一幅特征圖里,文字、表格、圖片并行處理,互不干擾。
傳統(tǒng)OCR像老匠人,一刀一刀刻;深度學(xué)習(xí)像機(jī)器人,一眼看完、一筆寫全。