opencv3/python 鼠標響應(yīng)操作詳解
更新時間:2019年12月11日 09:29:24 作者:阿卡蒂奧
今天小編就為大家分享一篇opencv3/python 鼠標響應(yīng)操作詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
鼠標回調(diào)函數(shù):
def setMouseCallback( windowName, #窗口名稱 onMouse, #鼠標響應(yīng)處理函數(shù) param=None) #處理函數(shù)的ID
event鼠標事件:
event: EVENT_LBUTTONDBLCLK = 7 左鍵雙擊 EVENT_LBUTTONDOWN = 1 左鍵點擊 EVENT_LBUTTONUP = 4 左鍵釋放 EVENT_MBUTTONDBLCLK = 9 中間釋放 EVENT_MBUTTONDOWN = 3 中間點擊 EVENT_MBUTTONUP = 6 中間釋放 EVENT_MOUSEHWHEEL = 11 滾輪事件 EVENT_MOUSEMOVE = 0 滑動 EVENT_MOUSEWHEEL = 10 滾輪事件 EVENT_RBUTTONDBLCLK = 8 右鍵雙擊 EVENT_RBUTTONDOWN = 2 右鍵點擊 EVENT_RBUTTONUP = 5 右鍵釋放 flags: EVENT_FLAG_ALTKEY = 32 按Alt不放事件 EVENT_FLAG_CTRLKEY = 8 按Ctrl不放事件 EVENT_FLAG_LBUTTON = 1 左鍵拖拽 EVENT_FLAG_MBUTTON = 4 中鍵拖拽 EVENT_FLAG_RBUTTON = 2 右鍵拖拽 EVENT_FLAG_SHIFTKEY = 16 按Shift不放事件
示例
在圖像上用鼠標點擊左鍵拖拽畫一矩形,并輸出矩形信息:
import cv2
def draw_rectangle(event,x,y,flags,param):
global ix, iy
if event==cv2.EVENT_LBUTTONDOWN:
ix, iy = x, y
print("point1:=", x, y)
elif event==cv2.EVENT_LBUTTONUP:
print("point2:=", x, y)
print("width=",x-ix)
print("height=", y - iy)
cv2.rectangle(img, (ix, iy), (x, y), (0, 255, 0), 2)
img = cv2.imread("max.png") #加載圖片
cv2.namedWindow('image')
cv2.setMouseCallback('image', draw_rectangle)
while(1):
cv2.imshow('image', img)
if cv2.waitKey(20) & 0xFF == 27:
break
cv2.destroyAllWindows()
輸出:
point1:= 254 64 point2:= 708 569 width= 454 height= 505

以上這篇opencv3/python 鼠標響應(yīng)操作詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python原始字符串與Unicode字符串操作符用法實例分析
這篇文章主要介紹了Python原始字符串與Unicode字符串操作符用法,結(jié)合實例形式分析了Python針對原始字符與Unicode字符的操作符用法,需要的朋友可以參考下2017-07-07
PyTorch實現(xiàn)手寫數(shù)字識別的示例代碼
本文主要介紹了PyTorch實現(xiàn)手寫數(shù)字識別的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下<BR>2022-05-05
在PyCharm搭建OpenCV-python的環(huán)境的詳細過程
這篇文章主要介紹了在PyCharm搭建OpenCV-python的環(huán)境的詳細過程,本文通過圖文并茂的形式給大家介紹搭建步驟,對PyCharm搭建OpenCV-python環(huán)境相關(guān)知識感興趣的朋友一起看看吧2022-05-05
Python實現(xiàn)繁體轉(zhuǎn)為簡體的方法示例
這篇文章主要介紹了Python實現(xiàn)繁體轉(zhuǎn)為簡體的方法,涉及Python編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2018-12-12

