【发布时间】:2018-09-16 15:41:03
【问题描述】:
所以我应该在 Octave 中对图像应用 Sobel 过滤器,但我不能使用图像包中的任何功能。我编写了代码,但我的输出只是一个黑色图像。这是我目前所拥有的:
%Sobel Gradient
kx= [1 ,0 ,-1; 2,0,-2; 1, 0 ,-1];
ky= [1,2,1; 0,0, 0; -1, -2 ,-1];
H = conv2(kx,im2double(my_img),'same');
V = conv2(ky,im2double(my_img),'same');
E = sqrtm(H.*H + V.*V);
figure 4
imshow(E, [])
感谢您的帮助!
【问题讨论】:
-
尝试在显示之前对图像进行标准化 - 我不擅长
Octave但类似E = max(0, E ./ (max(max(E)) / 255)); -
@MarkSetchell 在
imshow上的方括号应该做这项工作 -
@AnderBiguri 好的,谢谢!我断言我在 Octave 上不好的说法是正确的 :-)
-
@ray 这不是重复的,它不起作用的原因有很大不同!
-
@AnderBiguri 我笑不出来。您已经重新打开它。没关系。投我一票。
标签: matlab image-processing octave sobel