clc %清空
clear all
close all
mainfc;
ii=imread('测试图片.jpg');%读取图像
subplot(241),imshow(ii);title('原图');%显示
i=ii;
[m,n,q]=size(i);
for z=1:q %每个通道读取像素
for x=1:m %每个通道的每行读取像素
for y=1:n %每个通道的每列读取像素
if i(x,y,z)>70 %像素值大于70就认为不是草莓的颜色,变成黑色
i(x,y,z)=0;
else
i(x,y,z)=255; %否则变成白色,是草莓颜色
end
end
end
end
i=rgb2gray(i);%灰度图
subplot(242),imshow(i);title('灰度图');
tt=graythresh(i);
i=im2bw(i,tt);%二值图
subplot(243),imshow(i);title('二值图');%显示
i= imfill(i,'hole');%填充洞洞
subplot(244),imshow(i);title('填洞');%显示
SE = strel('disk',8);
i=imopen(i,SE); %分界线
subplot(245),imshow(i);title('开运算图');%显示
i= imclose(i,SE);
subplot(246),imshow(i);title('闭运算图');%显示
SE = strel('disk',40);
i=imopen(i,SE); %去除干扰
subplot(247),imshow(i);title('去除干扰');%显示
it=i;
[B,L]=bwboundaries(it,'noholes');
stats=regionprops(L,'all');
[L,num] = bwlabel(it); %标记
subplot(248),imshow(ii);title('定位图');%显示
hold on
for i=1:num
z(i)=stats(i).MajorAxisLength/stats(i).MinorAxisLength;
%s(i)=stats(i).Area;
%b(i)=stats(i).Eccentricity;
%disp(b(i));
if z(i)<3
rectangle('Position',[stats(i).BoundingBox],'EdgeColor','g');
end
end
柠檬少少开发
- 粉丝: 2229
- 资源: 222
最新资源
- 计算机毕业设计:python+爬虫+cnki网站爬
- nyakumi-lewd-snack-3-4k_720p.7z.002
- 现在微信小程序能用的mqtt.min.js
- 基于MPC的非线性摆锤系统轨迹跟踪控制matlab仿真,包括程序中文注释,仿真操作步骤
- shell脚本入门-变量、字符串, Shell脚本中变量与字符串的基础操作教程
- 基于MATLAB的ITS信道模型数值模拟仿真,包括程序中文注释,仿真操作步骤
- 基于Java、JavaScript、CSS的电子产品商城设计与实现源码
- 基于Vue 2的zjc项目设计源码,适用于赶项目需求
- 基于跨语言统一的C++头文件设计源码开发方案
- 基于MindSpore 1.3的T-GCNTemporal Graph Convolutional Network设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈