關(guān)于opencv
OpenCV 是 Intel 開源計算機視覺庫 (Computer Version) 。它由一系列 C 函數(shù)和少量 C++ 類構(gòu)成,實現(xiàn)了圖像處理和計算機視覺方面的很多通用算法。
OpenCV 擁有包括 300 多個 C 函數(shù)的跨平臺的中、高層 API 。它不依賴于其它的外部庫 ―― 盡管也可以使用某些外部庫。 OpenCV 對非商業(yè)應(yīng)用和商業(yè)應(yīng)用都是免費 的。同時 OpenCV 提供了對硬件的訪問,可以直接訪問攝像頭,并且 opencv 還提供了一個簡單的 GUI(graphics user interface) 系統(tǒng) :highgui 。 我們就通過 OpenCV 提供的一些方法來構(gòu)造出這個人臉檢測 ( face detection ) 程序來。
opencv的python包裝
OpenCV 本身是有 C/C++ 編寫的,如果要在其他語言中使用,我們可以通過對其動態(tài)鏈接庫文件進行包裝即可,幸運的是, Python 下有很多個這樣的包裝,本文中使用的是 Cvtypes 。
事實上,在 Python 中很多的包都是來自第三方的,比如 PIL(Python Image Library) 即為 C 語言實現(xiàn)的一個圖形處理包,被包裝到了 Python 中,這些包裝可以讓你像使用 Python 的內(nèi)建函數(shù)一樣的使用這些 API 。
這個例子使用python編程:用opencv按一定間隔截取視頻幀,并保存為圖片。
import cv2 vc = cv2.VideoCapture('Test.avi') #讀入視頻文件 c=1 if vc.isOpened(): #判斷是否正常打開 rval , frame = vc.read() else: rval = False timeF = 1000 #視頻幀計數(shù)間隔頻率 while rval: #循環(huán)讀取視頻幀 rval, frame = vc.read() if(c%timeF == 0): #每隔timeF幀進行存儲操作 cv2.imwrite('image/'+str(c) + '.jpg',frame) #存儲為圖像 c = c + 1 cv2.waitKey(1) vc.release()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
