Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
来自推荐直方图函数的Bin中心-Matlab_Matlab - Fatal编程技术网

来自推荐直方图函数的Bin中心-Matlab

来自推荐直方图函数的Bin中心-Matlab,matlab,Matlab,Matlab现在建议使用直方图代替hist,但是没有像前面的函数那样显示一种明显的查找bin中心的方法 我的当前代码与hist函数配合良好: 身材 [counts171,position171]=历史(图像171_整形,200) 绘图(位置171,日志(计数171)) 我怎样才能转换这段代码,以便在仍然获得仓位中心的情况下,合并一个推荐的函数,例如“直方图”或“历史计数”来代替“历史记录”?histcounts返回边而不是仓位中心,仓位中心是边的连续元素之间的中点。因此,使用diff功能箱中心可

Matlab现在建议使用直方图代替hist,但是没有像前面的函数那样显示一种明显的查找bin中心的方法

我的当前代码与hist函数配合良好:

身材

[counts171,position171]=历史(图像171_整形,200)

绘图(位置171,日志(计数171))


我怎样才能转换这段代码,以便在仍然获得仓位中心的情况下,合并一个推荐的函数,例如“直方图”或“历史计数”来代替“历史记录”?

histcounts
返回边而不是仓位中心,仓位中心是边的连续元素之间的中点。因此,使用
diff
功能箱中心可以获得:

[counts171,edges171] = histcounts(image171_reshaped,200);

position171 = edges171(1:end-1) + diff(edges171) / 2;

谢谢,效果很好。我以前也尝试过类似的方法,但无法得到相同长度的向量。你能解释一下第二行的第一部分“edge171(1:end-1)”是什么吗?当然可以。假设边为:边=[1 3 6 11],则箱子中心位于[1 3]和[3 6]之间,并且[6 11]之间,因此,如果边的数量为4,则箱子的数量为3。然后,我们只需要通过连续元素之间的差异(diff)来添加前3条边
end
表示向量的结束元素,end-1表示结束元素之前的元素,因此1:end-1表示向量中除结束元素以外的所有元素