2016-10-18 11 views
1

我正在開發一個項目來提取車牌字符。我開發了一種由MSER開發的方法來分割具有複雜背景的車牌字符,並且效果很好。問題是,在某些情況下,如下所示,牌照的框架(牌照持有者)拼接或佔據字符的一部分。通過具有幾乎相同的顏色,字符和框架成爲單個對象。從幀中提取這些字符是不可能的,所以我無法檢測字符。被對象遮擋的文本的文本分割

我環顧四周,如果牌照的「水平投影」可以產生一些有用的東西,但它似乎也需要一個良好的偏斜校正算法,才能應用它,這可能不是解決這個問題的最佳方案,需要一系列新算法。因此,我想問問在這裏是否存在這樣一種好的方式,並且您指出了正確的方式。

在此先感謝。

(PS:我是爲了保護隱私模糊車牌的一部分圖像的質量是不是satifying但我認爲這是不夠了解的問題)

enter image description here

enter image description here

+0

通過模糊可以很清楚地看到字符。你可以模糊他們更多或模糊他們更少? – Tapio

+0

完成。感謝您的警告。 – Horizon1710

回答

1

在分割字符之前,您可以嘗試用邏輯掩碼限制感興趣的區域。讓我們一用一凸包,他們是真正的多才多藝:

利用Matlab 2016B:

Plate = imread(Plate.jpg); 

grayPlate = rgb2gray(Plate); % rgb -> grayscale 

bwPlate = imbinarize(grayPlate); % binarize, Otsu's method. 

bwPlate = imopen(bwPlate, strel('disk', 4)); 
% Morphological opening, removes small white areas. These bloat the convex 
% hull if let through. 

convPlate = bwconvhull(bwPlate); 

for i=1:3 %Apply the logical mask 
    tempPlate = Plate(:,:,i); 
    tempPlate(~convPlate) = 255; 
    Plate(:,:,i) = tempPlate; 
end 

結果:

Comparison of plates before and after

該車優點使我們的生活有點困難。但是,這應該更容易管理,特別是如果您擺弄灰度權重,二值化和過濾。