找回密码
 注册
关于网站域名变更的通知
查看: 269|回复: 2
打印 上一主题 下一主题

如何用MATLAB计算不规则图形面积

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-2-12 09:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
如何用matlab计算不规则图形面积,要有具体的过程和编程语句,知道的帮个忙,谢了.# d5 {/ v( Z4 X8 t- ?& L) A

该用户从未签到

2#
发表于 2022-2-12 09:34 | 只看该作者
最简单的思路:先转成灰度图,然后转成二值图像,然后利用黑色/总像素的比值乘以图像的总面积,得到图形的面积。
' U6 `. B$ z7 M: E$ i- i1 x5 S
7 n4 A% c% d; O! L$ d% Z) ?. q如果想做的细,其中的任何一个步骤都会很精致,尤其是二值化,算法有很多种,需要结合实际情况选择合用的算法,或者编写程序根据图像特征自动选择算法。再麻烦一点的话,彩色图像的色彩分割本身就是一个硕士课题了。

该用户从未签到

3#
发表于 2022-2-12 09:40 | 只看该作者
黑色/总像素的比值乘以图像的总面积,得到图形的面积的方法可以行得通。+ j* m# G  h7 L  T5 n
a=imread(‘ 路径:\\文件名’);' c+ J+ l+ y: U: Y2 N5 C! e7 M
sum=0;
2 L2 a; @! v# y0 rfor i=1:size(a,1)  %图像的行数
" K$ i% w" M! W% }* Efor j=1:size(a,2)  %图像的列数
( g* \, X, t, E0 F5 n3 Z2 `if a(i,j)>=threshhold %阈值threshhold,大于是白色亮的部分
$ J+ c9 ~7 {$ hsum=sum+1;: [9 A; ?( o7 G0 @2 L+ H
end9 C( X4 Y8 u) J, U% }
end
: h- E. }0 Z/ w0 Hend; ~: j* Q- P9 E6 H
S=总面积*sum/(size(a,1)*size(a,2)) *总面积可以使用格尺量出  。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-21 08:03 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表