树叶的分类
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、树叶的分类
涉及的方法有分配、图像处理,对边缘轮廓进行检测,根据轮廓特征进行(二值化)、特征:特征
% 根据形状进行特征提取
% 孙丰元2009
% 只是一个简单的演示,可以根据程序学习使用相关的函数
% Step 1: 读图
RGB = imread('test.bmp');
figure,
imshow(RGB),
title('原始图像');
% Step 2: 转为灰度图像
GRAY = rgb2gray(RGB);
figure,
imshow(GRAY),
title('灰度图像');
% Step 3: 转为二进制图像
threshold = graythresh(GRAY);
BW = im2bw(GRAY, threshold);
figure,
imshow(BW),
title('二进制图像');
% Step 4: 取反
BW = ~ BW;
figure,
imshow(BW),
title('二进制图像取反');
% Step 5: 取边界
[B,L] = bwboundaries(BW, 'noholes');
% Step 6: 判断属性
STATS = regionprops(L, 'BoundingBox','Extent');
% Step 7: 根据属性分类
% 正方形= 3 = (1 + 2) = (X=Y and Extent = 1)
% 矩形= 2 = (0 + 2) = (X~=Y and Extent = 1)
% 圆形= 1 = (1 + 0) = (X=Y and Extent < 1)
% 其它= 0
figure,
imshow(RGB),
title('结果');
hold on
for i = 1 : length(STATS)
W(i) = uint8(abs(STATS(i).BoundingBox(3)-STATS(i).BoundingBox(4)) < 0.1); W(i) = W(i) + 2 * uint8((STATS(i).Extent - 1) == 0 );
centroid = STATS(i).Centroid;
switch W(i)
case 1
plot(centroid(1),centroid(2),'wO');% 圆形
case 2
plot(centroid(1),centroid(2),'wX');% 矩形
2、树叶形状的影响因素
阳光、气候、降雨量
多元统计、
3、树的形状与分布
4、树叶形状与与分叉
5、树叶重量的估计