《数字图像处理拓展资源 (35).pdf》由会员分享,可在线阅读,更多相关《数字图像处理拓展资源 (35).pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、特征提取的应用 (Application of Feature Extraction) 粒度测定(Granularity Mensuration) 粒度测定是在不精确分割图像目标的基础上,确定图像中目 标的大小和分布情况。 下面通过一个例子来进行说明。 【例10.15】计算如图所示的雪花图像中的雪花大小的分布情况 首先对低对比度图像需要进行增强处理,然后通过数学形 态学运算计算粒度大小的总体分布,再计算不同半径下的粒 度分布。 特征提取的应用 (Application of Feature Extraction) 粒度测定(Granularity Mensuration) (1)读取图像并增强
2、 (2)计算粒度大小的总体分布。 for counter = 0:22 remain = imopen(claheI, strel(disk, counter); intensity_area(counter + 1) = sum(remain(:); end figure; plot(intensity_area, m - *), grid on; 粒度测定(Granularity Mensuration) (3)计算不同半径下的粒度分布。 intensity_area_prime= diff(intensity_area);%差分 figure; plot(intensity_area_p
3、rime, m - *), grid on; title(Granulometry (Size Distribution) of Snowflakes); set(gca, xtick, 0 2 4 6 8 10 12 14 16 18 20 22); xlabel(radius of snowflakes (pixels); ylabel(Sum of pixel values in snowflakes as a function of radius); open5 = imopen(claheI,strel(disk,5); %半径为5开运算 open6 = imopen(claheI,
4、strel(disk,6); %半径为6开运算 rad5 = imsubtract(open5,open6); %半径为5的粒度 figure; imshow(rad5,); 特征提取的应用 (Application of Feature Extraction) 圆形目标判别(Circle Shape Recognition) 一幅图像中,除了目标对象大小不同外,也会经常出现不同形 状的目标物体,例如有圆形、方形或其他不规则的形状。 下面通过一个例子来进行说明。 【例10.16】确定图10.31所示的图像中的圆形目标。 首先要将图像进行灰度化和二值化,然后确定图像中的目 标边界,再计算目标区域
5、的特征,根据面积和周长的关系来 确定图像是否为圆形。 圆形目标判别(Circle Shape Recognition) (1)读取图像并转化为二值图像。 把RGB真彩色图像转化为灰度图像,然后按 照最大类间方差法得到阈值,将灰度图像转换 为二值图像 (2)寻找边界。 bw = bwareaopen(bw,30); %去除小目标 se = strel(disk,2); %圆形结构元素 bw = imclose(bw,se); %关操作 bw = imfill(bw,holes); %填充孔洞 figure; imshow(bw) %显示填充孔洞的图像 B,L = bwboundaries(bw,
6、noholes); %图像边界 figure; imshow(label2rgb(L, jet, .5 .5 .5)%不同颜色显示 hold on for k = 1:length(B) boundary = Bk; %显示白色边界 plot(boundary(:,2),boundary(:,1), w, LineWidth, 2) end 圆形目标判别(Circle Shape Recognition) (3)确定圆形目标。 stats = regionprops(L,Area,Centroid); %求取面积、重心等 threshold = 1.06; %设定判定阈值 for k = 1:
7、length(B) boundary = Bk; delta_sq = diff(boundary).2; P = sum(sqrt(sum(delta_sq,2); %求取周长 A = stats(k).Area; %面积 F = (P2)/(4*pi*A); %圆形度的计算 F_string = sprintf(%2.2f,F); if F 800); %取面积大于300像素区域 bw2=ismember(cc,idx); se=strel(disk,5); %取半径为5的圆形结构元素 bw3=bw2; for i=1:3 bw3=imdilate(bw3,se); %用结构元素对区域进行
8、3次膨胀 bw3=imerode(bw3,se); %用结构元素对区域进行3次腐蚀 end figure,imshow(read(video,1); %显示背景帧 figure,imshow(read(video,400); %显示当前帧 figure,imshow(dtarget); %显示差分图像 figure,imshow(bw); %显示二值化后的图像 figure,imshow(bw2); %显示去除小目标后的区域 figure imshow(bw3);%显示3次膨胀腐蚀后的结果 运动目标特征提取 (Feature Extraction of Moving Object) (a)背景帧(b)当前帧(c)差分图像 (d)二值化后图像(e)去除小面积后图像(f)最后结果图像 图10.35 运动目标特征提取 运动目标特征提取 (Feature Extraction of Moving Object) (3)目标区域特征计算。 dd=bwlabel(bw3); stats2=regionprops(dd,Area,Centroid); stats2.Area stats2.Centroid 对得到的运动目标区域计算特征,得到其面积为341 10,重心 坐标为(289.186 9, 353.453 6)。