python求线段长度_如何在Python OpenCV中获取角度和线长度

我有一大块代码要得到起点、终点,与凸性缺陷相差甚远:hull = cv2.convexHull(cnt,returnPoints = False)

defects = cv2.convexityDefects(cnt,hull)

for i in range(defects.shape[0]):

s,e,f,d = defects[i,0]

start = tuple(cnt[s][0])

end = tuple(cnt[e][0])

far = tuple(cnt[f][0])

cv2.line(res,far,end,[0,255,0],2)

cv2.line(res,start,far,[0,255,0],2)

如果出现以下情况,我需要消除手指的凸面缺陷:

线条长度<;0.4lbb和角度>;80o

那么,如何从这些开始、结束、远变量中获取角度和线长度值呢?从给定的规则中消除凸性缺陷?

编辑

如果我使用这段代码,我会得到给定代码的角度,这是真的吗?angle = int(math.atan((start[0]-start[1])/(end[0]-end[1]))*180/math.pi)

你可能感兴趣的:(python求线段长度)