在利用opencv進行圖片處理時,經常需要查看圖片關心區域或位置的像素數值,苦于沒有應手的小軟件,我用python3.6+opencv3.4簡單編制一個小工具,供大家使用。
流程
1.建立標準的鼠標交互函數,當鼠標在圖像上移動時,即時顯示鼠標位置的像素數值(opencv像素為BGR格式)。
2.建立圖像窗口,綁定鼠標回調函數。
3.按下‘q'鍵,退出。
4.僅需15行代碼,就是這么簡單。
代碼
# -*- coding: utf-8 -*-import cv2img= cv2.imread('006.png') #定義圖片位置img= cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) #轉化為灰度圖def onmouse(event, x, y, flags, param): #標準鼠標交互函數 if event==cv2.EVENT_MOUSEMOVE: #當鼠標移動時 print(img[y,x]) #顯示鼠標所在像素的數值,注意像素表示方法和坐標位置的不同def main(): cv2.namedWindow("img") #構建窗口 cv2.setMouseCallback("img", onmouse) #回調綁定窗口 while True: #無限循環 cv2.imshow("img",img) #顯示圖像 if cv2.waitKey() == ord('q'):break #按下‘q'鍵,退出 cv2.destroyAllWindows() #關閉窗口if __name__ == '__main__': #運行 main()彩色圖運行效果
灰度圖運行效果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。
新聞熱點
疑難解答