gpt4 book ai didi

image - 我应该使用哪种方法来查找图像中像素的梯度方向?

转载 作者:行者123 更新时间:2023-12-02 03:25:21 26 4
gpt4 key购买 nike

我遇到了两种寻找梯度大小和方向的方法

1:

I=imread('12.jpg');
I1=rgb2gray(I);
ed=edge(I1,'canny',0.4);
[gx gy]=gradient(double(ed),0.5);
figure;
imshow(I);
gm=sqrt(gx.^2+gy.^2);
gdp=atan2(gy,gx);
figure;
imshow(gm);
figure; imshow(gdp);

gm 将存储梯度幅度,gdir 将存储方向

2: 一个内置的matlab函数

[gm gdp]=imgradient(ed);

两者的输出完全不同。我应该使用哪一个来实现笔画宽度变换?

最佳答案

虽然原始论文没有说明应该使用哪种方法,但我发现在两个流行的 SWT 实现中:DetectTextCCV使用 Sobel 算子。

您得到不同的输出是因为您计算了 Canny 方法输出的梯度(而不是输入图像的 Sobel,因为它应该这样做)。此外,imgradient 以度数返回梯度方向,atan2 结果以弧度为单位。如果您想自己计算方向,您应该使用 imgradient 获取幅度和方向,或者使用 imgradientxy 获取方向梯度。

线索可以引用这个file或者他们的 technical report .

关于image - 我应该使用哪种方法来查找图像中像素的梯度方向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30659614/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com