OpenCV學習筆記(二十一)——車輛識別和跟蹤
今天在GitHub上看到一個對車輛訓練好的模型,即xml檔案,於是拿來測試了一個效果。我用這個xml檔案對視訊中的每一幀畫面進行簡單的車輛識別定位,演示程式碼如下:
import cv2 import numpy as np camera = cv2.VideoCapture ("video.avi") camera.open("video.avi") car_cascade = cv2.CascadeClassifier('cars.xml') while True: (grabbed,frame) = camera.read() grayvideo = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) cars = car_cascade.detectMultiScale(grayvideo, 1.1, 1) # print(cars) # print(type(cars)) # print(cars.shape) # 部分輸出如下所示: # [[255 62 37 37] # [144 25 35 35] # [219 81 62 62] # [246 52 54 54]] # < class 'numpy.ndarray'> # (4, 4) # ... for (x,y,w,h) in cars: cv2.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),2) cv2.imshow("video",frame) if cv2.waitKey(1)== ord('q'): break camera.release() cv2.destroyAllWindows()
執行程式,擷取其中某幾幀畫面,如下:
顯然,該模型對汽車識別的精度不夠。
附:測試視訊以及xml模型檔案下載地址
https://download.csdn.net/download/weixin_41695564/10419268
相關推薦
OpenCV學習筆記(二十一)——車輛識別和跟蹤
今天在GitHub上看到一個對車輛訓練好的模型,即xml檔案,於是拿來測試了一個效果。我用這個xml檔案對視訊中的每一幀畫面進行簡單的車輛識別定位,演示程式碼如下:import cv2 import numpy as np camera = cv2.VideoCa
OpenCV學習筆記(二十一)——簡單的單目視覺測距嘗試
前言: 視覺測距作為機器視覺領域內基礎技術之一而受到廣泛的關注,其在機器人領域內佔有重要的地位,廣泛應用於機器視覺定位、目標跟蹤、視覺避障等。機器視覺測量主要分為:單目視覺測量、雙目視覺測量、結構光視覺測量等。結構光由於光源的限制,應用的場合比較固定;
Python學習筆記(二十一)
準備 for ring 價格 python use imp pri exce 使用ElementTree解析XML文件 # 導入Python中內置的處理XML文件的模塊try: import xml.etree.cElementTree as ETexcept Imp
Java學習筆記(二十一):類型轉換和instanceof關鍵字
方法 png true feed out 實例 strong 運算符 nbsp 基本數據類型轉換: 自動類型轉換:把大類型的數據賦值給大類型的變量(此時的大小指的是容量的範圍) 1 byte b = 12; //byte是一個字節 2 int i = b; //i
nginx 原始碼學習筆記(二十一)—— event 模組(二) ——事件驅動核心ngx_process_events_and_timers
首先繼續回憶下,之前子執行緒執行操作裡面有一個未涉及的內容ngx_process_events_and_timers,今天我們就來研究下這個函式。 本篇文章來自於:http://blog.csdn.net/lengzijian/article/details/7601730 先來看一下第十九
Effective_STL 學習筆記(二十一) 永遠讓比較函式對相等的值返回 false
除非比較函式總是為相等的值返回 false,否則將會打破所有的標準關聯容器, 不管關聯容器是否允許存在副本(set、map、multiset、multimap) 對於(set、map)使用 less_equal (<=): 1 !( 10A <= 10B ) &a
機器學習筆記(二十一):TensorFlow實戰十三(遷移學習)
1 - 引言 越複雜的神經網路,需要的訓練集越大,ImageNet影象分類資料集有120萬標註圖片,所以才能將152層的ResNet的模型訓練到大約96.%的正確率。但是在真正的應用中,很難收集到如此多的標註資料。即使收集到也需要花費大量人力物力來標註。並且即使有了大量的資料集,要訓練一
Javaweb學習筆記——(二十一)——————過濾器
過濾器 過濾器概述 1.什麼是過濾器: 過濾器javaweb三大元件之一,它與Serlvet很相似,不過它過濾器是用來攔截請求的,而不是處理 請求的。 當用戶請求某個Servlet
OpenCV學習筆記(六十一)——建立支援OpenGL的OpenCV工程“Master OpenCV”chp.3
從OpenCV2.4beta版本,OpenGL就可以有介面到highgui的模組中了。結合Master OpenCV第三章的閱讀,這裡說說如何在OpenCV的顯示中嵌入OpenGL的虛擬物體。 要注意的一點:如果想使OpenCV支援OpenGL,不能使用預編譯好的libra
OpenCV學習筆記(五十一)——imge stitching影象拼接stitching
stitching是OpenCV2.4.0一個新模組,功能是實現影象拼接,所有的相關函式都被封裝在Stitcher類當中。這個類當中我們可能用到的成員函式有createDefault、estimateTransform、composePanorama、stitch。其內部實
OpenCV學習筆記(四十一)——再看基礎資料結構core
記得我在OpenCV學習筆記(四)——新版本的資料結構core裡面講過新版本的資料結構了,可是我再看這部分的時候,我發現我當時實在是看得太馬虎了。對於新版本的資料結構,我再說說。 Point_類不用多言,裡面兩個成員變數x,y。Point_<int>就是Poin
OpenCV學習筆記(二十六)——小試SVM演算法ml OpenCV學習筆記(二十七)——基於級聯分類器的目標檢測objdect OpenCV學習筆記(二十八)——光流法對運動目標跟蹤Video Ope
OpenCV學習筆記(二十六)——小試SVM演算法ml 總感覺自己停留在碼農的初級階段,要想更上一層,就得靜下心來,好好研究一下演算法的東西。OpenCV作為一個計算機視覺的開源庫,肯定不會只停留在數字影象處理的初級階段,我也得加油,深入研究它的演算法庫。就從ml入手
python OpenCV學習筆記(二十五):傅立葉變換(Fourier Transform )
傅立葉變換用於分析各種濾波器的頻率特性。對於影象,二維離散傅立葉變換(2D Discrete Fourier Transform/DFT)用於尋找頻域。快速傅立葉變換(Fast Fourier Transform/FFT)的快速演算法用於計算DFT。
OpenCV學習筆記(二十六)——小試SVM演算法ml
總感覺自己停留在碼農的初級階段,要想更上一層,就得靜下心來,好好研究一下演算法的東西。OpenCV作為一個計算機視覺的開源庫,肯定不會只停留在數字影象處理的初級階段,我也得加油,深入研究它的演算法庫。就從ml入手吧,最近做東西遇到隨機森林,被搞的頭大,深深感覺自己肚子裡貨太
OpenCV學習筆記(二十五)——OpenCV圖形介面設計Qt+VS2008
一直對MFC對OpenCV的支援不好而耿耿於懷,瞭解了Qt對OpenCV支援很好,但網上這方面的資料很少。大部分的圖形互動的設計都是基於OpenCV2.0之前的資料結構lpImage進行的。最近得到了一本好書《OpenCV 2 Computer Vision Applica
python OpenCV學習筆記(二十七):Hough線變換
Hough變換是一種很流行的技術,可以檢測任何可以用數學的形式來表示的形狀。即使它被破壞或變形,它也能檢測出它的形狀。我們將會看到它是如何工作的。 一條線可以表示成y = mx + c或引數形式,像ρ=xcosθ+ysinθ,其中ρ是從原點到直線的垂直
unity shader學習筆記(二十一)——Unity中的高階紋理之渲染紋理
渲染紋理 渲染目標紋理(Render Target Texture, RTT)是指一個攝像機將渲染結果輸出到顏色緩衝中,並顯示到螢幕上,而不是傳統的幀緩衝和後備緩衝。 多重渲染目標(Multiple Render Target, MRT)是指把場景同
Linux學習筆記(二十四)管道符和作業控制、shell變量、環境變量配置文件
環境變量配置文件 管道符 一、管道符和作業控制cat 1.txt |wc -l ; cat 1.txt |grep ‘aaa‘將前面命令的結果輸入給後面的命令ctrl z 暫停一個任務、這時候任務隱藏到後臺,通過fg可以重新吊起任務到前臺運行jobs查看後臺的任務bg[id]把任務調到後臺fg[id]
Effective_STL 學習筆記(二十七) 用 distance 和 advance 把 const_iterator 轉化成 iterator
並不存在從 const_iterator 到 iterator 之間的隱式轉換 一種安全的、可移植的方法獲取他所對應的 iterator: 1 typedef deque<int> IntDeque; // 方便的typedef 2 typedef Int
Django學習筆記(二十六):閱讀計數和優化計數(防重新整理)
閱讀計數主要就是記錄網頁被瀏覽的次數,防刷的方法就是記錄瀏覽的cookie,使每個cookie只能增加一次閱讀數, 當然,刪除cookie和關閉瀏覽器就可以重新增加閱讀數,更加優化的方法還在學習中,先分享這個我會的 models.py的程式碼 class Books(m