利用图像处理的额方法统计种子的个数
根据种子的特点,可以用的方法有:面积,周长。还有基于这两种方法的其他方案。
1、利用面积计算

clear all;close all;clc;
img=imread('种子.png');
figure;imshow(img);
img_R=img(:,:,1);%取红色通道分量分析
%%%基于面积做统计个数,计算整个二值图中的全部白色像素的个数,除以单个种子所占据的面积,即可得到大概个数
%%单个种子的面积可根据二值图中不是连连在一起的区域估算
figure;imhist(img_R);%观察直方图发现像素集中在20-150左右,取50-90计算面积,这里可以随意取,只要在范围内
img_R_bw=img_R<90&img_R>50;%根据直方图选取灰度值在50-90的区域进行面积计算
figure;imshow(img_R_bw);
img_R_bw_open=bwareaopen(img_R_bw,120);%删除小于120的区域,
figure;imshow(img_R_bw_open);
[area_label,num_label]=bwlabel(img_R_bw_open);%标记
% figure;imshow(area_label,[]);
Re_area=regionprops(area_label,'Area');%求连通区域的面积
%%%下面计算单个种子的像素面积
%通过观察图发现有的地方是多个连在一起的,将其忽略,最大的区域忽略,总共(num_label)各连通区域还剩下n个,将n个面积相加求均值。
Re_area=cell2mat(struct2cell(Re_area));%数据转化,将struct变成double
Re_m=length(Re_area);%求长度
all_sum=0;%总数
cout=0;%面积在120到200的个数
%%计算单个独立面积的个数和总和
for i=1:1:Re_mif Re_area(1,i)>100&&Re_area(1,i)<250all_sum=Re_area(1,i)+all_sum;cout=cout+1;end
end
if cout==0%没有单个独立的种子,需要重新设定参数sigle_area=1;
elsesigle_are=all_sum/cout;%每个种子平均面积
endRe_sum=sum(Re_area);%总面积
count_seed=round(Re_sum/sigle_are);%总面积除以单个面积求得大概的个数
fprintf('种子个数为%d\n',count_seed);

2、利用周长计算

clear all;close all;clc;
img=imread('种子.png');
figure;imshow(img);
img_R=img(:,:,1);%取红色通道分量分析
figure;imshow(img_R);%%利用种子周长统计个数,通过观察发现种子的周长大概在40左右
img_edge=edge(img_R,'canny');%利用canny算子提取边缘
figure;imshow(img_edge);
img_edge_skel=bwmorph(img_edge,'skel',Inf);%利用形态学函数提取边缘
figure;imshow(img_edge_skel);
img_R_bw_open=bwareaopen(img_edge_skel,10);%删除小于120的区域,
figure;imshow(img_R_bw_open);Re_sum=sum(sum(img_R_bw_open));%总周长
sigle_z=40;
count_seed=round(Re_sum/sigle_z);%总周长除以单个周长求得大概的个数
fprintf('利用区域条件方法统计的种子个数为%d\n',count_seed);

此外还有一些改进的方法,总体来收精度都不是很高。
链接:添加链接描述

种子数量统计,四种方法,(面积、周长、数据处理1、数据处理2)相关推荐

  1. python统计中文字符的个数_python统计中文字符数量的两种方法

    方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...

  2. python统计汉字个数是_python统计中文字符数量的两种方法

    方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...

  3. python怎么统计多少字符_python统计中文字符数量的两种方法

    方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...

  4. mysql 统计条目_mysql 统计表中条目数量的几种方法

    mysql 统计表中条目数量的几种方法 展开 通常的方法是: select count(*) from `table_name` select count(1) from `table_name` s ...

  5. python可以实现哪些功能_Python中实现机器学习功能的四种方法介绍

    本篇文章给大家带来的内容是关于Python中实现机器学习功能的四种方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在本文中,我们将介绍从数据集中选择要素的不同方法; 并使用S ...

  6. 分类:鸢尾花的分类(四种方法)

    iris数据集的中文名是安德森鸢尾花卉数据集,含有5个key,分别是DESCT,target_name(分类名称,即四个特征值的名称),target(分类,有150个数值,有(0,1,2)三种取值,分 ...

  7. (转).NET导出Excel的四种方法及评测

    .NET导出Excel的四种方法及评测 导出Excel是.NET的常见需求,开源社区.市场上,都提供了不少各式各样的Excel操作相关包.本文,我将使用NPOI.EPPlus.OpenXML.Aspo ...

  8. python去重语句_Python对列表去重的多种方法(四种方法)

    无聊统计了下列表去重到底有多少种方法.下面小编给大家总结一下,具体内容详情如下: 开发中对数组.列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序, 后 ...

  9. 判断无向图是否有回路有四种方法

     一.无向图回路的判断 对于无向图,判断其是否有回路有四种方法,如下所示: 1.利用深度优先搜索DFS,在搜索过程中判断是否会出现后向边(DFS中,连接顶点u到它的某一祖先顶点v的边),即在DFS ...

  10. java 数组效率_java数组复制的四种方法效率对比

    有关数组的基础知识,有很多方面,比方说初始化,引用,遍历,以及一维数组和二维数组,今天我们先看看数组复制的有关内容. 来源于牛客网的一道选择题: JAVA语言的下面几种数组复制方法中,哪个效率最高? ...

最新文章

  1. python dataframe是什么_python – 逐个构建DataFrame的最快方法是什么?
  2. 【小题目】 输出分数对应的等级 >=90-A >=80-B >=70-C >=60-D <60-E,从控制台获取数据
  3. jstat PID not found产生的原因
  4. Python 匿名函数 lambda - Python零基础入门教程
  5. matlabrobert锐化_基于Matlab的图像锐化的研究
  6. 如何查看linux的版本?
  7. 比特币价格跌破3万美元登上彭博社头版
  8. 英伟达老黄又来送大礼,全新Titan V CEO限量版GPU火力全开
  9. plsa java代码_LDA主题聚类学习小结
  10. 深度学习自学(九):Alexnet解读
  11. 阿里云祝顺民:云网络心智大图解读 | 云栖大会
  12. AD笔记4-元件封装库绘制
  13. Android反射系统截图Api
  14. vue3关闭语法错误提示
  15. Java常见面试题含答案(第一期)
  16. mysql姓名相同成绩不同_MySQL数据库
  17. 作为程序员,我将如何教育自己的孩子
  18. UI 设计师的进阶武器:如何立足于品牌做 UI 设计?
  19. python json接口数据提取_返回数据中提取数据的方法(JSON数据取其中某一个值的方法)...
  20. 分布式系统原理-分布式事务方案那么多,到底该选哪一个

热门文章

  1. 城市游戏 (java)
  2. 多项式线性回归matlab,Matlab多项式回归实现
  3. 黑马程序员JAVA基础-第一个程序
  4. Goole浏览器,进行页面访问发生错误。
  5. 我国水土流失面积有所减少,水土保持监管能力和现代化水平也显著提升[图]
  6. 【判断是不是树】HDU 1272 小希的迷宫
  7. 简单介绍sip协议message方法
  8. [前端]div不换行
  9. 二、进程管理(五)死锁
  10. mac os 录屏快捷键_Micro Snitch——Mac防监控软件