華文網

LEADTOOLS中如何使用文檔清理命令介面來清理文檔圖像

文檔清理對文檔成像有很大的影響。它改進了文檔的視覺效果和可讀性。檔圖像清理是OCR,條碼,PDF,表單識別,檔案等類似的功能的必備預處理,它可以增強了這些功能的效果和效率。

準確度- 圖像很少完美。原始檔中的顏色,角度,缺陷都會對識別技術的準確性產生影響。通過正確對齊圖像並移除重要區域周圍的障礙物,識別過程可以掃描圖像,並尋找您要提取的文本和資料。

壓縮- 大多數壓縮演算法的工作原理是通過找到方法來巧妙地將圖元組合在一起,使用較少的體積,但仍然將圖像重建為原始圖像(或接近原始的有損方法),未壓縮資料。

在文檔中,黑白圖像尤其如此。通過去除圖元點,打孔和邊框等不必要的偽像,可以得到更好的壓縮效果。

速度- 隨著不必要的圖元越來越少,幾乎每個演算法都可以更快地完成其工作。

使用LEADTOOLS進行文檔圖像清理

本文教大家如何利用LEADTOOLS進行這些優化。這裡有一些最常用的清理功能,可以輕鬆應用於任何圖像,進行這些基礎的處理後可以使您更高級的功能成為更好的運行。

轉換圖像顏色(Inverted Image)

由於許多原因,雙色圖像可能會反轉。掃描器設置,反轉調色板,彩色蒙版或從一種格式轉換到另一種格式都可能導致應為黑色的圖元為白色,反之亦然。這個功能可以在每個圖像上運行。

InvertedPageCommand invertedPage = new InvertedPageCommand(InvertedPageCommandFlags.Process);invertedPage.Run(img);

去斑點(Despeckle)

斑點經常正圖像、掃描器或半色調中出現。它適用於白色背景上的黑色斑點和黑色背景上的白色斑點。運行此功能以刪除它們。

DespeckleCommand despecklePage = new DespeckleCommand;despecklePage.Run(img);

移除直線(Line Removal)

兩種最常見的線條來源是表格和紙張折疊。

在這兩種情況下,即使與列印或手寫的文本相交,也可以檢測和刪除窄的水平線或垂直線。這是任何識別技術的必備功能。

LineRemoveCommand lnPage = new LineRemoveCommand;lnPage.Type = LineRemoveCommandType.Horizontal;lnPage.Flags = LineRemoveCommandFlags.UseGap;lnPage.GapLength = 2;lnPage.MaximumLineWidth = 5;lnPage.MinimumLineLength = 200;lnPage.MaximumWallPercent = 10;lnPage.Wall = 7;lnPage.Run(img);

移除邊框(Border Removal)

如果圖像掃描時有平板背襯上有額外的空間,掃描器將填充一個顏色的間隙。 如果它是黑色的,

那麼它可以被刪除。

BorderRemoveCommand borderPage = new BorderRemoveCommand;borderPage.Run(img);

打孔移除(Hole Punch Removal)

如果掃描器掃描出任何的打孔,並且黑色,您可以消除它們以恢復這些區域以匹配背景。

HolePunchRemoveCommand holePage = new HolePunchRemoveCommand;holePage.Run(img);

文檔清理的其他功能

上述功能是可以應用于任何文檔圖像的通用文檔清理功能。 LEADTOOLS提供了更多的文檔影像處理功能,如歪斜校正,3D傾斜校正等,可用於更精確的處理。

3D傾斜校正等,可用於更精確的處理。