我想得到两个数组的等价索引之和,然后设置它们的阈值。这段代码运行速度很慢,我不得不经常使用这个函数。在python中有没有更有效的方法?你知道吗
sobelx = cv2.Sobel(smoothed,cv2.CV_64F,1,0,ksize=-1)
sobely = cv2.Sobel(smoothed,cv2.CV_64F,0,1,ksize=-1)
for i in range(0,height-1):
for j in range(0,width-1):
xvalue= sobelx[i,j]
yvalue= sobely[i,j]
tmp = math.sqrt(math.pow(xvalue,2) + math.pow(yvalue,2))
if tmp > 255:
tmp = 255
elif tmp <0:
tmp =0
self.gradientmap[i,j] = tmp
这应该可以做到:
我不知道
sobelx
和sobely
的确切类型是什么,但我假设从你的问题中有2numpy.array
。你知道吗注意:我去掉了
tmp < 0
的情况,因为你永远不会有负的平方根。你知道吗相关问题 更多 >
编程相关推荐