1 简介
本设计主要针对指针式仪表的数字化读数的研究,提高读取效率和读数的准确性.以MATLAB为载体对图像进行仿真处理,通过设备采集图片,对图像进行表盘定位,图像预处理,边缘检测,Hough变换等操作,识别出指针的位置,得出指针所在直线的斜率,并结合角度与量程的关系,显示得出的示数.
2 部分代码
clear all; close all; clc; P= imread('时钟-2.jpg'); %2/5/8/11 没问题 7/10反 13图分针错 16图时针错 I = imresize(P,0.7); % 图像缩小70% % figure('NumberTitle', 'off', 'Name', '原图'); % imshow(I); % 去除背景 [m,n]=size(I); for i=1:m for j=1:n if I(i,j)>100 I(i,j)=256; end end end imshow(I); I1 = im2bw(I); %rgb转化为二值化图像 % figure('NumberTitle', 'off', 'Name', '二值化后图像'); % imshow(I1); % I2 = edge(I1,'canny'); %canny 算子提取边界 % figure(3) % imshow(I2) I20 = imcomplement(I1); %图像反色 % figure('NumberTitle', 'off', 'Name', '反色