文本影像在影像處理中也是占用了一個比較大的空間,市面上也有著不少這方面的專業軟體,其中有一個比較重要的程序就是對文本影像背景的純化,因為背景復雜了后,對于后續的識別,包括二值化都會帶來不利的影響, 本文介紹三種不同的背景純化方式,
第一種方式: 借用Photoshop的一個演算法,名字叫影印,英文名是PhotoCopy,這個演算法的效果如下:
這里借用了一個網路上的圖片,細節和暗度的引數分別為5和10,執行完成后進行了反色操作,
這個演算法的核心還是高斯模糊,細節引數就是高斯模糊的半徑,
第二個演算法:使用了一個網友的提供的演算法,就叫他背景移除演算法吧,
具體的可以在https://www.cnblogs.com/jsxyhelu這個大俠的博客中查找,
這個演算法的基礎其實也是高斯模糊,一個簡答的代碼如下所示:
for (int Y = 0; Y < Height * Width; Y++) { if (Blur[Y] != 0) Dest[Y] = IM_ClampToByte(Src[Y] * 255 / Blur[Y]); }

第三個演算法: 我們姑且叫他背景純化吧,
這個演算法呢和Sauvola二值化有一定的聯系,我們知道Sauvola二值化一直是區域閾值方法的標桿,他的核心是計算某個區域區域的的均值和方差,這里也是把影像先分塊,然后按照某種原則,計算每個塊內的均值和方差,接著呢對每個像素位置使用均布均值和方差按照一定的原則確定其最后的顯示值,當然,由于只計算了塊內的方差和均值,因此,每個像素處的均值和方差可以用類似CLAHE演算法里的方式進行插值獲取,或者已經有的資料進行曲線擬合后在計算得到,前者速度快,后者更精確,

關于這個的原理我沒有弄清楚,但是確實效果可以,注意他其實并沒有二值化的,實測這個演算法效果還是不錯的,

原 圖 PhotoCopy的效果

背景去除演算法的效果 背景純化演算法的效果
上面這個結果,應該說后面兩個效果都還不錯的,
我們在看一個圖,區別就更為明顯了,

原 圖 PhotoCopy的效果

背景去除演算法的效果 背景純化演算法的效果
可以看出,背景去除那個演算法那原生的可以保留彩色的部分,其他的就不行,但是也可以適當的修改使得演算法部分能得以保留,
但是,PhotoCopy演算法還可以用在很多其他的場合,而后面的兩個演算法如果用于普通的影像,效果就有點過了,
我現在一直在改進最后一個演算法,覺得他很有前景,
在我的SSE Demo里也集成了上述三個演算法,分別位于Styleize --> PhotoCopy、Detection->Auxliary->RemoveBackGround以及Detection->Auxliary->PureGround選單下,
PureGround還有一些其他的選項,如下圖所示:

可在此處下載Demo: https://files.cnblogs.com/files/Imageshop/SSE_Optimization_Demo.rar
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/270727.html
標籤:其他
上一篇:OpenCV 之 影像幾何變換
下一篇:WebGPU[1] 三角形
