python_opencv用线段画封闭矩形的实例

如下所示:

def draw_circle(event,x,y,flags,param):

global ix,iy,drawing,mode,start_x,start_y

if event == cv2.EVENT_LBUTTONDOWN:

if drawing == False:

start_x, start_y = x,y

ix,iy = x,y

drawing = True

elif drawing == True:

cv2.line(img,(ix,iy),(x,y),(0,255,0),3)

ix, iy = x, y

print(drawing)

elif event == cv2.EVENT_MBUTTONDOWN:

drawing = False

cv2.line(img, (ix, iy), (start_x, start_y), (0, 255, 0), 3)

print(drawing)

#

# elif event == cv2.EVENT_RBUTTONUP:

# cv2.line(img,(ix,iy),(x,y),(0,255,0),3)

# Next we have to bind this mouse callback function to OpenCV # # window. In the main loop, we should set a keyboard binding for

# key ‘m' to toggle between rectangle and circle.

img = np.zeros((512,512,3), np.uint8)

cv2.namedWindow('image')

cv2.setMouseCallback('image',draw_circle)

while(1):

cv2.imshow('image',img)

k = cv2.waitKey(1) & 0xFF

if k == ord('m'): # 切换模式

mode = not mode

elif k == 27:

break

cv2.destroyAllWindows()

以上这篇python_opencv用线段画封闭矩形的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 python_opencv用线段画封闭矩形的实例 的全部内容, 来源链接: utcz.com/z/324034.html

回到顶部