视频动态库测试及心得
這幾天一直在弄動態(tài)庫測試,h給的寫好的動態(tài)庫--預(yù)處理模塊的庫。視頻處理項目一部分,需要連接實際情況測試。
需求:
1.把實際相機連接到,并讀取實時數(shù)據(jù)流,保存到雙循環(huán)鏈表里面;
2.測試背景建模的功能效果;
3.預(yù)處理四個數(shù)據(jù)(圖像)顯示結(jié)果;
4.測試實時處理多攝像頭效果顯示。
前幾天一直寫攝像頭數(shù)據(jù)接受模塊,寫的還算順利,因為之前做過的項目自己寫過DVR多通道的接受數(shù)據(jù),而且還單獨另寫了讀取網(wǎng)絡(luò)攝像頭的實時數(shù)據(jù),所以一天搞定了,并顯示原始圖像正常。
由于h給了接口文檔說明,直接調(diào)用了動態(tài)庫,update更新背景接口,測試用opencv顯示沒有多大問題,繼續(xù)測試預(yù)處理模塊、顯示,也花了一天的時間,晚上因為搞定了,第二天連續(xù)寫了雙通道顯示,也顯示正常,不過下午發(fā)現(xiàn)了一個嚴重的錯誤,運行一段時間程序就崩潰了,郁悶了好幾天,測試了好多辦法,這個也是在測試程序中最頭痛的事情。最終發(fā)現(xiàn)時因為memcpy函數(shù)接受目標和源數(shù)據(jù)大小不一致造成的,最主要原因應(yīng)該是設(shè)備傳輸大小圖像幀變化了,不知道什么原因,(猜測可能是海康DVR和不是海康攝像頭兼容問題)。后面又遇到中斷,是因為可能同時刪除了兩次,線程同步問題,加了鎖,沒了問題,不過后來我使用了拷貝構(gòu)造函數(shù),也沒有問題。
測試程序發(fā)現(xiàn)問題及總結(jié):
1. 首先要對你寫的程序的功能要理解,知道你測試的代碼的實現(xiàn)什么要求的;
2.分析你代碼里面有幾個類及結(jié)構(gòu),了解大致功能及接口實現(xiàn),邏輯結(jié)構(gòu);
3.要分段測試,分模塊檢測,不然很麻煩;
4.程序指針很麻煩,要清楚自己那些指針是干嘛的,特別類之間的傳遞,記錄好,不然釋放會導(dǎo)致你想不到的錯誤,調(diào)試半天沒有結(jié)果;
5.初始化問題要引起注意,不然類似4一樣的郁悶;
6.IDE提示很重要,不要舍棄每一個錯誤中斷信息,可能就是要修改的地方,我的就是這個原因,之前沒注意vs的中斷提示錯誤,郁悶半天,實在沒辦法檢查了vs中斷錯誤,果然就是那個原因;
7.最后,心態(tài)很重要,千萬不要心浮氣躁,慢慢來,相信會解決的,實在想不出出去散散心,回頭可能想出來了。
筆者在此測試庫心得共勉一下,謝謝。
轉(zhuǎn)載于:https://www.cnblogs.com/zCoderJoy/p/3916243.html
總結(jié)
以上是生活随笔為你收集整理的视频动态库测试及心得的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 广西外国语学院周边有什么好吃的?
- 下一篇: 咸味蛋挞怎么做,用八宝粥怎么做的?