使用卷积隔离条形码

时间:2015-11-30 16:56:47

标签: matlab image-processing

我的目的是拍摄带有条形码和其他元素的图像(文字,数字等) 就像一本书封面: Barcode ;并将条形码与图像隔离开来。 结果应该是 - 从图像中删除其他元素并保持 只有条形码部分。

为此,我在考虑将Convolution作为抑制其他非垂直线的方法。

这是我到目前为止所做的:

clc
clear
close all

# %--- Image Read, Double and Gray ------------
Image =imread('barcode.jpg');
Image_Double = im2double(Image);
Image_Gray  = rgb2gray(Image_Double);

# %---- Matrix to be use for Conv -------------
Matrix = [3 0 -3
          3 0 -3 
          3 0 -3];

# %----- Output and Show --------------------- 
Output = conv2(Image_Gray,Matrix); 
imshow (Output,[]);

我知道还有其他方法,但我真的更喜欢坚持使用卷积

我只是想澄清一下,我是Image-Processing的新手。使用上面的代码我得到了这个结果:

result

我需要帮助才能从这里继续。

1 个答案:

答案 0 :(得分:0)

您可以将图像匹配与任何条形码图像一起用作模板。由于所有条形码图像相似(垂直黑线)匹配将在图像封面的条形码区域中创建比其他区域更多的匹配点。然后,您可以裁剪具有高密度匹配点的区域。该区域将是条形码区域