首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >圆形邻域运算: matlab颜色直方图

圆形邻域运算: matlab颜色直方图
EN

Stack Overflow用户
提问于 2012-11-05 22:17:17
回答 1查看 1.1K关注 0票数 4

假设我有一张灰度图像。考虑每个像素周围的圆形邻域窗口。我需要得到每个像素周围圆形邻域的颜色直方图。

如何在MatLab中有效地实现圆形邻域操作来解决此问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-06 00:58:20

我不想把所有的东西都给你,但我想这对你有很大的帮助。

你可以做一圈这样的事情

代码语言:javascript
运行
复制
h = fspecial('disk',rad);
h = h>0;

然后你可以把它放在一个更大的矩阵中的任何地方,像这样

代码语言:javascript
运行
复制
h2 = zeros(N,M);
h2(c_offset-rad:c_offset+rad,r_offset-rad:r_offset+rad) = h;

现在你有了一个与你的图像大小(列/行大小)相同的矩阵。您可以将其用作从矩阵中获取数据的引用表,类似于您可以通过以下语句仅返回大于0.5的值

代码语言:javascript
运行
复制
r = rand(10);
d = r(r>0.5);

编辑:

您还需要在某些地方使用数据类型,以使MATLAB满意。例如,h2必须是逻辑的,才能将其用作另一个矩阵的引用表。如果没有适当的类型,hist也不会工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13233949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档