数字图像处理课程设计之图像特征提取文档格式.docx
- 文档编号:20684314
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:8
- 大小:63.75KB
数字图像处理课程设计之图像特征提取文档格式.docx
《数字图像处理课程设计之图像特征提取文档格式.docx》由会员分享,可在线阅读,更多相关《数字图像处理课程设计之图像特征提取文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
很大,或者说原始样本处于一个高维空间中,通过映射或变换的方法可以将高维空间中的特
征描述用低维空间的特征来描述,这个过程就叫特征提取。
特征是一个数字图像中“有趣”
的部分,它是许多计算机图像分析算法的起点。
因此一个算法是否成功往往由它使用和定义
的特征决定。
因此特征提取最重要的一个特性是“可重复性”:
同一场景的不同图像所提取
的特征应该是相同的。
二、设计的内容
能对图像文件(进bmgjpg、tiff、gif等)进行打开、保存、另存、打印、退出等功能操作;
(一)图像预处理功能:
数字图像的增强处理功能:
空域中的点运算、直方图的均衡化、各种空间域平滑算
法(如局部平滑滤波法、中值滤波等)。
(二)图像特征提取
区域图的面积、周长的统计;
区域单元的个数统计等。
三、总体方案设计
(一)图像特征提取的算法
我们知道一幅图像可定义为一个二维函数f(x,y),这里x和y是空间坐标,而在任何
一对空间坐标(x,y)上的幅值f称为该图像的强度或灰度。
当x,y和幅值f为有限的离散
数值时,称该图像为数字图像。
而图像的特征提取主要有以下几种方法:
边界特征法,傅里
叶形状描述符法,几何参数法,形状不变矩法等。
而区域的周长及面积的算法如下:
(1)面积S:
图像中的区域面积S可以用同一标记的区域内像素的个数总和来表示。
按上述表示法区域R的面积S=41。
区域面积可以通过扫描图像,累加同一标记像素得到,
或者是直接在加标记处理时计数得到。
假设区域的边界链码为a1a2an,每个码段ai所表示的线段长度为h,那么该
区域边界的周长为n
Pline(nne)>/2
i1
式中ne为链码序列中偶数码个数;
n为链码序列中码的总个数。
周长L:
区域周长L是用区域中相邻边缘点间距离之和来表示。
采用不同的距离公式,关于
周长L的计算有很多方法。
常用的有两种:
一种计算方法是采用欧式距离,在区域的边界像素中,设某像素与其水平或垂直方向
上相邻边缘像素间的距离为1,与倾斜方向上相邻边缘像素间的距离为2。
周长就是这些
像素间距离的总和。
这种方法计算的周长与实际周长相符,因而计算精度比较高。
另一种计算方法是采用8邻域距离,将边界的像素个数总和作为周长。
也就是说,只
22。
要累加边缘点数即可得到周长,比较方便,但是,它与实际周长间有差异。
根据这两种计算
周长的方式,以区域R的面积和周长图为例,区域的周长是
对x轴的积分S就是面积。
式中yiyi1ai2是初始点的纵坐标,ai0和ai2分别是
链码第环的长度在k=0(水平),k=2(垂直)方向的分量。
对于封闭链码(初始点坐标与终点坐标相同),y0能任意选择。
按顺时针方向编码,根据面积计算公式得到链码所代表的包围区域的面积。
四、各个功能模块的主要实现程序
五、测试和调试
下面是根据设计要求做出的其
直方图:
l=imread('
2.jpg'
);
J=rgb2gray(l);
subplot(2,2,1);
imshow(l);
title('
subplot(2,2,2);
imshow(J);
imhist(J)
I=imread('
image(I);
原始图象'
J=imadjust(l,[0.30.8],[01],1);
subplot(2,2,2);
image(J);
灰度线形变换后的图象
subplot(2,2,3);
imhist(I);
原始图象的直方图
subplot(2,2,4);
imhist(J);
matlab程序
'
变换后的图象的直方图
原图象'
转化为灰度图象'
)
imshow(I);
J=im2bw(I,0.5);
figure;
imshow(J)
i=imread('
subplot(1,2,1);
image(i);
j=rgb2gray(i);
subplot(1,2,2);
imshow(j);
J1=histeq(J);
imshow(J1);
imhist(J1);
运行程序,得到结果如下:
A<
FrffcVic*4mi"
T«
ab3虑KpH*^1
i.■_--—™——―■—:
^09U哥汶帶富■武口罚■□
fidfdrVia«
p泌越p曲)1■必叶网乙
:
迅
空间域平滑算法中的中值滤波:
原图像'
加高斯噪声'
加椒盐噪声'
加乘性噪声'
J1=imnoise(l,'
gaussian'
0,0.02);
J2=imnoise(l,'
salt&
pepper'
0.02);
J3=imnoise(l,'
speckle'
subplot(2,2,1),imshow(l),title('
subplot(2,2,2),imshow(J1),title('
subplot(2,2,3),imshow(J2),title('
subplot(2,2,4),imshow(J3),title('
运行程序,结果如下:
Figure1L口回
区域图的面积和周长的程序:
I=imread('
BW=im2bw(l);
%转化为二值图像
[L,N]=bwlabel(BW,4);
%标注二进制图像中已连接的部分
X=1;
%默认图像中只有一个连同区域.
[ij]=find(L==X);
%将标注的区域放到一个数组中
bwi=bwselect(L,i,j,4);
p=bwperim(bwi);
perm=sum(sum(p));
%周长.
area=size(i);
%面积.标注区域像素点数就为物体面积.
imshow(BW);
pa=['
图像面积为:
num2str(area)'
像素点'
];
pp=['
图像周长为:
num2str(perm)'
像素'
xxx=[pa,pp];
title(xxx);
程序运行结果如下:
■Figure1
六、课程设计总结与体会
设计利用matlab来对其进行复杂图像的特征提取,图像的特征提取是在图像处理非常
重要的。
特征提取是图象处理中的一个初级运算,也就是说它是对一个图像进行的第一个运
算处理。
它检查每个像素来确定该像素是否代表一个特征。
假如它是一个更大的算法的一部
分,那么这个算法一般只检查图像的特征区域。
作为特征提取的一个前提运算,输入图像一
般通过高斯模糊核在尺度空间中被平滑。
此后通过局部导数运算来计算图像的一个或多个特
征。
有时,假如特征提取需要许多的计算时间,而可以使用的时间有限制,一个高层次算法
可以用来控制特征提取阶层,这样仅图像的部分被用来寻找特征。
由于许多计算机图像算法
使用特征提取作为其初级计算步骤,因此有大量特征提取算法被发展,其提取的特征各种各
样,它们的计算复杂性和可重复性也非常不同。
因此图像的特征提取很重要。
这次的课程
设计,我受益颇多!
让我们明白了matlab这款软件的强大,通过这几天的探究,我明白要想把一个东西做好,必须下足功夫,必须专心致志,必须去亲自动手。
这几天的学习,让我知道了怎么样更好的利用自身优势,怎么样去完成一份课程设计。
七、参考文献
[1]李弼程,彭天强,彭波.智能图像处理技术[M].北京:
电子工业岀版社,2004
[2]于殿涨.图像检测与处理技术[M].西安:
西安电子科技大学岀版社,2006
[3]杨淑莹.VC+十图像处理程序设计[M].北京:
北方交通大学岀版社,2003
[4]孙家广.计算机图形学[M].北京:
清华大学岀版社,2002
[5]王新梅.纠错码与差错控制.北京:
人民邮电岀版社[M],1989.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字图像 处理 课程设计 图像 特征 提取