matlab 如何计算一幅图像中某一灰度值的像素个数

 我来答
59分粑粑分享生活
高粉答主

2020-05-18 · 专注生活好物分享,解答日常方方面面的问题
59分粑粑分享生活
采纳数:326 获赞数:119835

向TA提问 私信TA
展开全部

方法和详细的操作步骤如下:

1、第一步,打开需要处理的图像,然后编写以下代码,见下图红框标注处,转到下面的步骤。

2、第二步,执行完上面的操作之后,可以看到图像均衡的图片,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,画出平衡图片的直方图,在平衡前后对图片进行比较,见下图。这样,就解决了这个问题了。

wchyumo2011
推荐于2017-10-11 · TA获得超过2万个赞
知道大有可为答主
回答量:5810
采纳率:79%
帮助的人:2852万
展开全部

可以配合使用函数find和函数length或者函数find和函数length求得。

1、函数find和函数length配合使用获得像素为value的像素个数

% 读入数据112.bmp是要读入的图像
I = imread('112.bmp');
% 如果为彩色图像需转为灰度图像,否则不需要
I = rgb2gray(I);
% value为要计算的像素值
[r,c]=find(I==value);
% 获得个数
num=length(r);

2、函数find和函数sum配合使用获得像素为value的像素个数

% 读入数据112.bmp是要读入的图像
I = imread('112.bmp');
% 如果为彩色图像需转为灰度图像,否则不需要
I = rgb2gray(I);
% 获得像素值为value的素值个数
num=sum(sum(I==value));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
惠桂兰紫香
2020-01-04 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.3万
采纳率:29%
帮助的人:1269万
展开全部
function
greyvalue
=
calcrowgrey(pic)
%备注:输入值为读取文件后的图像数据,可以是m行
n列
或者是[m*n*3]
(彩色图片)
%
直接计算灰度值,如果是黑白图像,计算结束
greyvalue
=
sum(greyvalue
,2);
%判断如果是彩色图像
if
length(size(greyvalue
)>2
greyvalue
=
sum(greyvalue
,3);
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fyg26856469
推荐于2017-09-30 · TA获得超过698个赞
知道小有建树答主
回答量:140
采纳率:0%
帮助的人:211万
展开全部
假设A是图像所代表的矩阵,value为某一灰度值,num为图像A中该灰度值的像素个数,则有:
[r,c]=find(A==value);
num=length(r);

或者
num=sum(sum(A==value));
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jackwuzm
2010-03-20 · TA获得超过2512个赞
知道小有建树答主
回答量:1149
采纳率:100%
帮助的人:785万
展开全部
很容易。
首先用imread函数把图像读进矩阵中,
然后用一个循环语句,比较像素值,如果值相同,计数器(例如使用变量num)增加1.灰度是三个色素:红绿蓝三个分量的平均值 。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式