【发布时间】:2017-12-11 11:41:47
【问题描述】:
我想知道是否可以计算深度图像的梯度,给定 Matlab 中的深度数组(即计算深度数组中连接像素、二维数组单元之间的距离)。
由于每个像素都包含该像素与相机之间的距离,我认为这应该可以与 Matlab [FX,FY]=gradient(F) 函数有关。
问题是我收到了这个错误:
>> [Fx,Fy]=gradient(depth_array)
Error using ./
Integers can only be combined with integers of the same class, or scalar doubles.
Error in gradient (line 67)
g(2:n-1,:) = (f(3:n,:)-f(1:n-2,:)) ./ (h(3:n) - h(1:n-2));
如果有人能帮我一把,我将不胜感激。 Google 并没有太多关于这个主题的信息,至少我能找到。
编辑:
我的输入格式如下:480x640 uint16 输入样本:
1 2 3 4 < (column numbers)
1 1077 1077 1080 1080
2 1073 1073 1080 1080
3 1073 1073 1073 1073
4 1073 1073 1073 1073
5 1073 1073 1073 1073
6 1073 1073 1073 1073
7 1073 1073 1073 1073
^(row numbers)
【问题讨论】:
-
我会先检查你输入的格式,然后在第 67 行放置一个断点来检查那里发生了什么?
-
我有一个原始问题的输入样本。第 67 行的错误在 Matlab 函数中,我怎么能在那里设置断点?
-
用鼠标点击错误信息(第 67 行)matlab 将在这一行打开函数并放置断点。
标签: arrays matlab image-processing