24小时热门版块排行榜    

查看: 2058  |  回复: 24

bluesea57

铁虫 (小有名气)

[求助] 求助使用MATLAB计算绿色叶片的覆盖度的问题

请教一下,不知哪位高手可以帮我计算一下附图中的绿色叶片占整张图片的百分率,最好是使用MATLAT软件,最好也能详细列出MATLAB计算的每一步程序,谢谢。绿色部分的阈值是R>=90,B>=90,G>=90

附图
回复此楼
希望在这里认识更多的朋友,共进步,共发展。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

【答案】应助回帖

★ ★ ★
余泽成(金币+3): 谢谢参与应助! 2011-11-13 21:42:40
CODE:
g = imread('1280476_1321176098_419.jpg'); %读入图像
r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,1)>=90); %注意黑色是0,白色是1
percent = ( 1739*1908 - sum(r(:)) ) / (1739*1908)

结果是0.2624,即26.24%

判定是叶子的部分如黑色部分所示

2楼2011-11-13 19:26:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

★ ★
余泽成(金币+2): 辛苦了! 2011-11-13 21:42:48
其实我觉得这个判定条件这么样子不好....你自己看着办吧...这样子是反过来选了,就是把“不是叶子的部分”选定为了1

因为matlab里面RGB值越大,越亮

所以最后计算的时候就是要这么减
3楼2011-11-13 19:31:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bluesea57

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by sudo at 2011-11-13 19:31:33:
其实我觉得这个判定条件这么样子不好....你自己看着办吧...这样子是反过来选了,就是把“不是叶子的部分”选定为了1

因为matlab里面RGB值越大,越亮

所以最后计算的时候就是要这么减

你好,你觉得怎样的判定条件会好一些呢?可以告诉我吗?
r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,1)>=90); 在程序中具体是啥意思,可以给解释一下吗?1739*1908 是不是代表像素数?谢谢!
希望在这里认识更多的朋友,共进步,共发展。
4楼2011-11-13 19:52:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

★ ★
余泽成(金币+2): 谢谢参与应助! 2011-11-13 21:43:33
引用回帖:
4楼: Originally posted by bluesea57 at 2011-11-13 19:52:39:
你好,你觉得怎样的判定条件会好一些呢?可以告诉我吗?
r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,1)>=90); 在程序中具体是啥意思,可以给解释一下吗?1739*1908 是不是代表像素数?谢谢!

=,=不好意思,笔误。。。

r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,3)>=90);

分别代表R>=90,G>=90,B>=90的条件,把原来的图像映射为一个只有0和1的矩阵,其中0表示没满足条件的,也就是黑色的部分~

这个条件将就能用嗯,更好的条件要慢慢试才能试出来

1739*1908是表示像素数
5楼2011-11-13 20:04:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bluesea57

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by sudo at 2011-11-13 19:26:34:
[code]
g = imread('1280476_1321176098_419.jpg'); %读入图像
r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,1)>=90); %注意黑色是0,白色是1
percent = ( 1739*1908 - sum(r() ) / (1739*1908)
...

请教您一下,如果阈值同时满足:R大于等于23,小于等于75;G大于等于24,小于等于86;B大于等于22,小于等于67;且G>R>B。还是计算附件的图片中的绿色部分占整张图片的百分率,那计算程序又是哪一个呢?谢谢
希望在这里认识更多的朋友,共进步,共发展。
6楼2011-11-13 21:42:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

【答案】应助回帖


jjdg(金币+1): 感谢参与 2011-11-14 09:37:12
bluesea57(金币+3): 不错的帖子。 2011-11-14 09:56:07
引用回帖:
6楼: Originally posted by bluesea57 at 2011-11-13 21:42:16:
请教您一下,如果阈值同时满足:R大于等于23,小于等于75;G大于等于24,小于等于86;B大于等于22,小于等于67;且G>R>B。还是计算附件的图片中的绿色部分占整张图片的百分率,那计算程序又是哪一个呢?谢谢

举个简单的例子以便你理解~

首先我们定义一个2x2x2的三维数组吧
CODE:
a(:,:,1)=[10 20;30 40];
a(:,:,2)=[50 60;70 80];

这样,当你使用a(:,:,1)的时候,指的就是这个二维矩阵:
10 20
30 40

接下来我们看布尔运算
如果我写a(:,:,1)>=15,这个布尔表达式就返回一个各个元素与15比较大小的结果,如果>15则为真,即1,反之则假,得0,于是
CODE:
a(:,:,1)>=15

会得到一个矩阵
0 1
1 1

很容易理解吧?

再接下来就是位运算的问题了,我们先t=a(:,:,1),然后看看这样子会有什么效果:
CODE:
(t>=15) & (t<=35)

其中&运算的作用,就是与,1&1=1,1&0=0,0&1=0,0&0=0
于是上面的计算是这样的:
CODE:
[0 1]  &  [1 1]
[1 1]     [1 0]

对应的元素相与,计算结果就是:
0 1
1 0

OK,大概解说完毕,请楼主举一反三吧=,=....
7楼2011-11-13 22:17:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bluesea57

铁虫 (小有名气)

谢谢,十分感谢!
希望在这里认识更多的朋友,共进步,共发展。
8楼2011-11-13 22:36:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hhucy

实习版主 (著名写手)

DOE锅炉工

引用回帖:
8楼: Originally posted by bluesea57 at 2011-11-13 22:36:08:
谢谢,十分感谢!

想问一下 这个像素数是如何得到的?
人生那么多不确定,你怕什么
9楼2011-11-14 18:47:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hhucy

实习版主 (著名写手)

DOE锅炉工

引用回帖:
5楼: Originally posted by sudo at 2011-11-13 20:04:50:
=,=不好意思,笔误。。。

r = (g(:,:,1)>=90) | (g(:,:,2)>=90) | (g(:,:,3)>=90);

分别代表R>=90,G>=90,B>=90的条件,把原来的图像映射为一个只有0和1的矩阵,其中0表示没满足条件的 ...

请问 这个像素数是如何得到的? 谢谢
人生那么多不确定,你怕什么
10楼2011-11-14 18:47:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 bluesea57 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 能源材料化学课题组招收硕士研究生8-10名 +5 脱颖而出 2026-03-16 14/700 2026-03-20 09:30 by kkcoco25
[考研] 0856调剂,是学校就去 +7 sllhht 2026-03-19 8/400 2026-03-20 09:30 by 每天只摆一小会
[考研] 0703化学调剂 +10 妮妮ninicgb 2026-03-15 14/700 2026-03-19 22:59 by 学员8dgXkO
[考研] 288求调剂 +15 于海海海海 2026-03-19 15/750 2026-03-19 22:41 by 学员8dgXkO
[考研] 求调剂 +3 Mqqqqqq 2026-03-19 3/150 2026-03-19 14:11 by peike
[考研] 344求调剂 +6 knight344 2026-03-16 7/350 2026-03-18 20:13 by walc
[考研] 295求调剂 +3 一志愿京区211 2026-03-18 5/250 2026-03-18 17:03 by zhaoqian0518
[考研] 070300化学319求调剂 +6 锦鲤0909 2026-03-17 6/300 2026-03-18 13:22 by Iveryant
[考研] 303求调剂 +4 睿08 2026-03-17 6/300 2026-03-18 11:01 by Iveryant
[考研] 0703化学336分求调剂 +6 zbzihdhd 2026-03-15 7/350 2026-03-18 09:53 by zhukairuo
[考研] 301求调剂 +9 yy要上岸呀 2026-03-17 9/450 2026-03-18 08:58 by 无际的草原
[考研] 301求调剂 +4 A_JiXing 2026-03-16 4/200 2026-03-17 17:32 by ruiyingmiao
[考研] 085601求调剂 +4 Du.11 2026-03-16 4/200 2026-03-17 17:08 by ruiyingmiao
[考研] 332求调剂 +6 Zz版 2026-03-13 6/300 2026-03-17 17:03 by ruiyingmiao
[考研] 283求调剂 +3 听风就是雨; 2026-03-16 3/150 2026-03-17 07:41 by 热情沙漠
[考研] 药学383 求调剂 +3 药学chy 2026-03-15 4/200 2026-03-16 20:51 by 元子^0^
[考研] 326求调剂 +3 mlpqaz03 2026-03-15 3/150 2026-03-16 07:33 by Iveryant
[考研] 0856专硕279求调剂 +5 加油加油!? 2026-03-15 5/250 2026-03-15 11:58 by 2020015
[考研] 中科大材料与化工319求调剂 +3 孟鑫材料 2026-03-14 3/150 2026-03-14 20:10 by ms629
[考研] 本科南京大学一志愿川大药学327 +3 麦田耕者 2026-03-14 3/150 2026-03-14 20:04 by 外星文明
信息提示
请填处理意见