how to implement these equations in Matlab?
显示 更早的评论
I have the following equations

where
and
represent the first-order derivative of matrix I . I tried to implement these equations in matlab using the following lines:
fx = diff(I,1,2);
fx = padarray(fx, [0 1 0], 'post');
fy = diff(I,1,1);
fy = padarray(fy, [1 0 0], 'post');
Gx = -log10(fx);
Gy = -log10(fy);
however, the value of Gx and Gy are complex numbers which means that these equations don't implemented correctely. does anyone know how to implement these equations correctely in matlab? any help will be appreciated.
5 个评论
VBBV
2020-10-2
编辑:Walter Roberson
2020-10-2
fx = padarray(fx,[0 1],0,'post');
Similarly for fy. The second argument in pad array is size of matrix. Third arg is value
ghada sandoub
2020-10-2
VBBV
2020-10-2
编辑:Walter Roberson
2020-10-2
May be use natural log instead of decimal log
Gx = -log(fx);
John D'Errico
2020-10-2
natural log vs log10 is irrelevant. If one gives complex, than so will the other.
The log of a negative number is complex. Taken to ANY base.
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Linear Algebra 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!