python_opencv用线段画封闭矩形的实例
如下所示:
defdraw_circle(event,x,y,flags,param):
globalix,iy,drawing,mode,start_x,start_y
ifevent==cv2.EVENT_LBUTTONDOWN:
ifdrawing==False:
start_x,start_y=x,y
ix,iy=x,y
drawing=True
elifdrawing==True:
cv2.line(img,(ix,iy),(x,y),(0,255,0),3)
ix,iy=x,y
print(drawing)
elifevent==cv2.EVENT_MBUTTONDOWN:
drawing=False
cv2.line(img,(ix,iy),(start_x,start_y),(0,255,0),3)
print(drawing)
#
#elifevent==cv2.EVENT_RBUTTONUP:
#cv2.line(img,(ix,iy),(x,y),(0,255,0),3)
#NextwehavetobindthismousecallbackfunctiontoOpenCV##window.Inthemainloop,weshouldsetakeyboardbindingfor
#key‘m'totogglebetweenrectangleandcircle.
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
ifk==ord('m'):#切换模式
mode=notmode
elifk==27:
break
cv2.destroyAllWindows()
以上这篇python_opencv用线段画封闭矩形的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。