1 简介
QR二维码的识别技术是数字图像处理领域研究的一个热门课题.随着物联网的不断发展,QR二维码凭借其强大的信息存储能力,方便快捷的识读优点,安全可靠的编码技术,已经逐渐地应用于各个行业领域.同时,二维码识读设备也朝着智能化,微型化和网络化的趋势发展.因此,对基于嵌入式图像采集处理的QR码识别系统的研究具有重大而深远的意义. 本文首先对国内外QR二维码识别技术进行了深入研究和对比,主要包括QR码的原理,结构特点,编码规则以及重点研究数字图像处理算法在QR二维码上的应用.结合QR二维码自身结构特征,通过数字图像处理算法对QR码进行灰度化处理,滤噪,二值化,图像定位,几何校正,图像分割等.在不同条件下,分析比较各算法的处理效果,算法鲁棒性以及执行速率
2 部分代码
%OTSU matlab程序
%G = imread('pre_noise.bmp');
function I=otsut(G)
I = G;
[m,n] = size(I);
Hist = zeros(255);%直方图
dHist = zeros(255);
variance = zeros(255);%方差
PXD = 0;
for i = 1:m
for j = 1:n
Hist(I(i,j)+2) = Hist(I(i,j)+2) + 1;
end
end
for i = 1:255
dHist(i) = Hist(i)/(m*n);
end
for PXD = 1:255
w0 = 0;
w1 = 0;
g0 = 0;
g1 = 0;
for i = 1:PXD
g0 = g0 + i*dHist(i);
w0 = w0 + dHist(i);
end
for i = PXD+1 : 255
g1 = g1 + i*dHist(i);
w1 = w1 + dHist(i);
end
variance(PXD) = w0*w1*(g0 - g1)*(g0 - g1);
end
PXD = 1;
for i = 1:255
if variance(PXD) < variance(i)
PXD = i;
end
end
for i = 1:m
for j = 1:n
if I(i,j) > PXD
I(i,j) = 255;
else
I(i,j) = 0;
end
end
end
imagBW = I;
3 仿真结果
4 参考文献
[1]马超. 基于人工智能算法的QR码识别系统应用与比较[D]. 杭州电子科技大学, 2013.
部分理论引用网络文献,若有侵权联系博主删除。
5 MATLAB代码与数据下载地址
见博客主页