您好,登錄后才能下訂單哦!
opencv
OpenCV是一個基于BSD許可(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統上。它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。
OpenCV用C++語言編寫,它的主要接口也是C++語言,但是依然保留了大量的C語言接口。該庫也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。這些語言的API接口函數可以通過在線文檔獲得。如今也提供對于C#、Ch、Ruby,GO的支持。
所有新的開發和算法都是用C++接口。一個使用CUDA的GPU接口也于2010年9月開始實現。
import numpy as np import cv2 cap =cv2.VideoCapture(0) while(1): #獲取每一幀 ret,frame = cap.read() #RGB轉換到HSV hsv = cv2.cvtColor(frame,cv2.COLOR_BGR2HSV) #設定藍色的閾值。確定要追蹤的顏色為藍色。 lower_blue = np.array([100,50,50]) upper_blue = np.array([120,255,255]) #根據閾值構建掩模,構建黑白圖 #hsv:原圖 #lower_blue:圖像中低于這個lower_blue的值,圖像值變為0,即黑色 #upper_blue:圖像中高于這個upper_blue的值,圖像值變為0 #而在lower_blue~upper_blue之間的值變成255,即白色。 mask = cv2.inRange(hsv,lower_blue,upper_blue) #對原圖像和掩模進行位運算 #藍色覆蓋白色區域,黑色不覆蓋,實現了白色轉化為要追蹤的藍色,也就是追蹤效果。 res = cv2.bitwise_and(frame,frame,mask=mask) #顯示圖像 cv2.imshow('frame',frame) cv2.imshow('mask',mask) cv2.imshow('res',res) k = cv2.waitKey(5)& 0xFF if k==27: break #關閉窗口 cv2.destroyAllWindows()
關于顏色閾值圖(百度)。
結果如下圖所示。
總結
以上所述是小編給大家介紹的如何用OpenCV -python3實現視頻物體追蹤,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。