OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列C函数和少量c++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV用c++语言编写,它的主要接口也是c++语言,但是依然保留了大量的C语言接口。该库也有大量的Python, Java和MATLAB/八度(版本2.5)的接口。这些语言的API接口函数可以通过在线文档获得。如今也提供对于c#, Ch, Ruby,去的支持。
所有新的开发和算法都是用c++接口。一个使用CUDA GPU的接口也于2010年9月开始实现。
进口numpy np 进口cv2 帽=cv2.VideoCapture (0) 而(1): #获取每一帧 ret,?cap.read () # RGB转换到HSV cv2.COLOR_BGR2HSV hsv=cv2.cvtColor(框架) #设定蓝色的阈值。确定要追踪的颜色为蓝色。 lower_blue=np.array((100年,50,50)) upper_blue=np.array ([120255255]) #根据阈值构建掩模,构建黑白图 # hsv:原图 # lower_blue:图像中低于这个lower_blue的值,图像值变为0,即黑色 # upper_blue:图像中高于这个upper_blue的值,图像值变为0 #而在lower_blue ~ upper_blue之间的值变成255年,即白色。 掩码=cv2.inRange (hsv, lower_blue upper_blue) #对原图像和掩模进行位运算 #蓝色覆盖白色区域,黑色不覆盖,实现了白色转化为要追踪的蓝色,也就是追踪效果。 res=cv2.bitwise_and(帧,帧,面膜=面具) #显示图像 cv2.imshow(帧,帧) cv2.imshow(面具,面具) cv2.imshow (res, res) k=cv2.waitKey (5),0 xff 如果k==27日: 打破 #关闭窗口 cv2.destroyAllWindows ()
关于颜色阈值图(百度)。
结果如下图所示。
以上所述是小编给大家介绍的如何用OpenCV -python3实现视频物体追踪,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持。
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!