我试图通过opencv python中的Sobel函数获得渐变的方向。问题是当我将x和y方向的梯度提供给相位函数时,无论相位度是真还是假,它总是给出相同的结果。以下是示例代码:
img = cv2.imread('frameBB.jpg',0)
sobelx = cv2.Sobel(img,cv2.CV_32F,1,0,ksize=3)
sobely= cv2.Sobel(img,cv2.CV_32F,0,1,ksize=3)
phase=cv2.phase(sobelx,sobely,True)
然后我得到相位的直方图,最后得到相位函数的最后一个参数的结果为True或False。两种情况下的直方图都是这样的。
这是原始图像及其渐变图像的样子:
我不确定我在这里做错了什么,为什么我在两种情况下都得到弧度的渐变角度。