首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法通过读取图像文件创建直方图数据

无法通过读取图像文件创建直方图数据
EN

Stack Overflow用户
提问于 2014-01-20 10:16:40
回答 1查看 109关注 0票数 0

我试图通过读取图像文件来创建直方图数据:

代码语言:javascript
复制
>> img = imread('Flowers.jpg');
>> g = img(:,:,2);
>> bins = 0:1:255;
>> H = hist(g(:), bins);
?? Error using ==> full
Function 'full' is not defined for values of class 'uint8'.

Error in ==> C:\MATLAB\toolbox\matlab\datafun\hist.m
On line 66  ==>     xx = full(real(xx)); y = full(real(y)); % For compatibility
>> version

ans =

6.5.0.180913a (R13)

>> 

我不知道为什么我会收到这个错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-20 12:22:21

如果您有图像处理工具箱,我建议您改用imhist。这将本机处理uint8图像,而不必进行任何转换,并且可以处理二进制和灰度图像。

hist类似,您可以在没有输出的情况下调用它来直接获取图像,或者获取输出并自己绘制结果。与hist不同,您只能给它一些回收箱(对于灰比例尺,这默认为256个),而不是向量。

代码语言:javascript
复制
img = imread('Flowers.jpg');
g = img(:,:,2);
[counts, x] = imhist(g);
stem(x,counts); % or bar, or whatever you prefer

这里的输出x将与您的bins相同。

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

https://stackoverflow.com/questions/21231254

复制
相关文章

相似问题

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