[已答复] 对灰度图片统计灰度灰度值出现次数并用该次数取代原图中各个灰度值

[复制链接]
虎皮猫大人123 发表于 2021-11-25 18:07:43
想问下各位大哥,如何统计灰度值出现次数啊?跟在矩阵中统计元素一样吗?

12 条回复


WarnerChang 发表于 2021-11-25 18:35:42
是一样的吧,灰度值不也是一个矩阵吗?

虎皮猫大人123 发表于 2021-11-25 18:37:22
WarnerChang 发表于 2021-11-25 18:35
是一样的吧,灰度值不也是一个矩阵吗?

大哥 那这个灰度值出现次数咋统计的呀?

WarnerChang 发表于 2021-11-25 19:28:47
本帖最后由 WarnerChang 于 2021-11-25 19:37 编辑
虎皮猫大人123 发表于 2021-11-25 18:37
大哥 那这个灰度值出现次数咋统计的呀?

使用unique函数,可以返回出现的次数,具体看函数帮助文档,对于矩阵先将其转换为向量

https://www.mathworks.com/help/m ... =srchtitle_unique_1
你用imhist也是一样的道理

虎皮猫大人123 发表于 2021-11-25 21:24:10
WarnerChang 发表于 2021-11-25 19:28
使用unique函数,可以返回出现的次数,具体看函数帮助文档,对于矩阵先将其转换为向量

https://www.mathw ...

im=rgb2gray(imread('abc.jpg'));
[x,y]=size(im);
im1=zeros(x,y);
for i=0:255
    ind=find(im==i);
    im1(ind)=numel(ind)/x/y;
end
imshow(imadjust(im1));    请问这个代码能解决吗?我刚刚开始学,不知道怎么放出矩阵图

coolchen302 发表于 2021-11-26 08:46:40
虎皮猫大人123 发表于 2021-11-25 21:24
im=rgb2gray(imread('abc.jpg'));
[x,y]=size(im);
im1=zeros(x,y);

用tabulate试试吧

WarnerChang 发表于 2021-11-26 09:25:42
虎皮猫大人123 发表于 2021-11-25 21:24
im=rgb2gray(imread('abc.jpg'));
[x,y]=size(im);
im1=zeros(x,y);

一样的,放出矩阵图啥意思

虎皮猫大人123 发表于 7 天前

大哥发个完整代码呀

虎皮猫大人123 发表于 7 天前
WarnerChang 发表于 2021-11-26 09:25
一样的,放出矩阵图啥意思

就是,如何查看每一像素值出现次数的,还有这个代码里的for循环里面的俩语句是啥意思呀

WarnerChang 发表于 7 天前
虎皮猫大人123 发表于 2021-11-29 16:36
就是,如何查看每一像素值出现次数的,还有这个代码里的for循环里面的俩语句是啥意思呀 ...

im1不就是每个像素的频率嘛,find函数就是找到等于某个像素值的所有像素,numel函数统计像素的出现次数

虎皮猫大人123 发表于 7 天前
WarnerChang 发表于 2021-11-29 18:37
im1不就是每个像素的频率嘛,find函数就是找到等于某个像素值的所有像素,numel函数统计像素的出现次数 ...

哦哦,谢谢大哥啊,就是这个im1(ind)=numel(ind)/x/y这个想请教下 这个语句就只是知道numel函数的用法 后面(ind)/x/y和前面的im1(ind)还不是很懂

WarnerChang 发表于 7 天前
虎皮猫大人123 发表于 2021-11-29 20:34
哦哦,谢谢大哥啊,就是这个im1(ind)=numel(ind)/x/y这个想请教下 这个语句就只是知道numel函数的用法  ...

建议先看看matlab基础介绍书籍

虎皮猫大人123 发表于 7 天前
WarnerChang 发表于 2021-11-29 21:47
建议先看看matlab基础介绍书籍

好的 谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表