freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于opencv的車輛檢測(cè)論文-資料下載頁

2024-11-08 00:54本頁面

【導(dǎo)讀】智能交通系統(tǒng)是目前世界交通運(yùn)輸領(lǐng)域正在研究和廣泛關(guān)注的課題。計(jì)、流量監(jiān)控和高速公路管理起到了越來越重要的作用。車輛分析系統(tǒng),用于道路上車輛的檢測(cè)。檢測(cè)過程是首先對(duì)視頻圖像進(jìn)行預(yù)處理,利用背景差分法檢測(cè)出運(yùn)動(dòng)車輛。經(jīng)過實(shí)驗(yàn)驗(yàn)證,該方法可以較準(zhǔn)確地檢測(cè)出車。輛目標(biāo),檢測(cè)的成功率可達(dá)到90%以上。

  

【正文】 time image tracking for automatic traffic monitoring and enforcement applications[J]. Image and Vision Computing, 2020,22(6):485501 [16] 謝俊 .基于 OpenCV 的視頻檢測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [D].電子科技大學(xué), 2020. [17] 陳吉廬 .基于 OpenCV 的紅外運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤算法研究及實(shí)現(xiàn) [D].南京理工大 學(xué) .2020. [18] 呂杉 .基于 OpenCV 的視頻運(yùn)動(dòng)檢測(cè)中背景減除算法的研究與改進(jìn) [D].吉林大 學(xué), 2020. [19] 梁錫寧 .基于 OpenCV 的目標(biāo)跟蹤軟件與系統(tǒng)實(shí)現(xiàn) [D].電子科技大學(xué), 2020. [20] Zhiqiang Wei,Xiaopeng Ji and Peng moving object detection for video monitoring systems[J].Journal of Systems Engineer and Electronics,2020,17(4):73l736 大連交通大學(xué) 2020 屆本科生畢業(yè)論文 21 附 錄 通過以下代碼,在 Microsoft Visual Studio 2020 下運(yùn)行,完成圖像預(yù)處理、背景更新及前景運(yùn)動(dòng)車輛檢測(cè)等工作。 include opencv2/ include iostream include include string include include using namespace cv。 using namespace std。 ifdef _DEBUG define new DEBUG_NEW undef THIS_FILE static char THIS_FILE[] = __FILE__。 endif void main() {//打開文件 /////////////////////////////////////////////////// IplImage* pFrame = NULL。 IplImage* pFrImg = NULL。 IplImage* pBkImg = NULL。 IplImage* pFrImg1 = NULL。 CvMat* pFrameMat = NULL。 CvMat* pFrMat = NULL。 CvMat* pBkMat = NULL。 CvMat* pFrMat1 = NULL。 CvMemStorage * storage = cvCreateMemStorage(0)。//輪廓邊緣提取時(shí)的參數(shù) CvSeq * contour = 0。//輪廓邊緣提取時(shí)的參數(shù) int mode = CV_RETR_EXTERNAL。//輪廓邊緣提取時(shí)的參數(shù) //形態(tài)學(xué)處理時(shí)內(nèi)核的大小 IplConvKernel* Element = cvCreateStructuringElementEx(13, 13, 1, 1, CV_SHAPE_RECT, NULL)。 CvFont font1。//初始化字體格式 int liype = CV_AA。 cvInitFont(amp。font1, CV_FONT_HERSHEY_SIMPLEX, , , 0, 1, 8)。 //用字符串時(shí)一定要把 using namespace std。寫在前面,否則不能用 ,下面是用于顯示的字符串 string msg[10] = { JGD01, JGD02, JGD03, JGD04, JGD05, JGD06, JGD07, JGD08, JGD09, JGD10 }。 int No = 0。//用于記錄顯示車輛 bool FindCar = false。 CvPoint pt1, pt2, pt3, pt4, pt5。 = 200。//(視頻中左下點(diǎn) ) = 200。 大連交通大學(xué) 2020 屆本科生畢業(yè)論文 22 = 600。//(視頻中右上點(diǎn) ) = 320。 CvRect bndRect = cvRect(0, 0, 0, 0)。//用 cvBoundingRect 畫出外接矩形時(shí) 需要的矩形 int avgX = 0。//The midpoint X position of the rectangle surrounding the moving objects int avgY = 0。//The midpoint Y position of the rectangle surrounding the moving objects int avgX1 = 0。//用來合并相近的車輛 int avgY1 = 0。 CvCapture* pCapture = NULL。 int nFrmNum = 0。//表示圖像的幀數(shù) //創(chuàng)建窗口 cvNamedWindow(video, 1)。 cvNamedWindow(foreground, 1)。 cvMoveWindow(video, 30, 0)。 cvMoveWindow(foreground, 690, 0)。 pCapture = cvCaptureFromFile(E:\\畢業(yè)設(shè)計(jì) \\視頻 \\)。 pFrame = cvQueryFrame(pCapture)。 int widthT, heightT。 widthT = pFramewidth。 heightT = pFrameheight。 IplImage* pFrameTemp = cvQueryFrame(pCapture)。 pFrame = cvCreateImage(cvGetSize(pFrameTemp), 8, 3)。 cvCopy(pFrameTemp, pFrame)。//逐幀讀取視頻 ,cvQueryFrame 從攝像頭或者文件中抓取并返回一幀 while (pFrameTemp = cvQueryFrame(pCapture)) { cvCopy(pFrameTemp, pFrame)。 nFrmNum++。//如果是第一幀,需要申請(qǐng)內(nèi)存,并初始化 if (nFrmNum == 1) { pBkImg = cvCreateImage(cvSize(pFramewidth, pFrameheight), IPL_DEPTH_8U, 1)。 pFrImg = cvCreateImage(cvSize(pFramewidth, pFrameheight), IPL_DEPTH_8U, 1)。 pBkMat = cvCreateMat(pFrameheight, pFramewidth, CV_32FC1)。 pFrMat = cvCreateMat(pFrameheight, pFramewidth, CV_32FC1)。 pFrameMat = cvCreateMat(pFrameheight, pFramewidth, CV_32FC1)。 cvCvtColor(pFrame, pBkImg, CV_BGR2GRAY)。 cvCvtColor(pFrame, pFrImg, CV_BGR2GRAY)。 cvConvert(pFrImg, pFrameMat)。 cvConvert(pFrImg, pFrMat)。 cvConvert(pFrImg, pBkMat)。 } else if (nFrmNum =2)//從第三幀開始,根據(jù)完全目標(biāo)檔案來新增或刪除運(yùn)動(dòng)車輛檔案。 { cvCvtColor(pFrame, pFrImg, CV_BGR2GRAY)。 cvConvert(pFrImg, pFrameMat)。//高斯濾波先,以平滑圖像 大連交通大學(xué) 2020 屆本科生畢業(yè)論文 23 cvSmooth(pFrameMat, pFrameMat, CV_GAUSSIAN, 3, 0, 0)。//在視頻中設(shè)置并畫出感興趣的區(qū)域 cvRectangle(pFrame, pt1, pt2, CV_RGB(255, 0, 0), 2, 8, 0)。//當(dāng)前幀跟背景圖相減 ,cvAbsDiff 計(jì)算兩個(gè)數(shù)組差的絕對(duì)值 cvAbsDiff(pFrameMat, pBkMat, pFrMat)。 //二值化前景圖 ,void cvThreshold( const CvArr* src, CvArr* dst, double threshold, //double max_value, int threshold_type )。 cvThreshold(pFrMat, pFrImg, 60, , CV_THRESH_BINARY)。 //通過查找邊界找出 ROI 矩形區(qū)域內(nèi)的運(yùn)動(dòng)車輛,建立完全目標(biāo)檔案 cvDilate(pFrImg, pBkImg, Element, 1)。 cvFindContours(pBkImg, storage, amp。contour, sizeof(CvContour), mode, CV_CHAIN_APPROX_SIMPLE)。 for (。 contour != 0。 contour = contourh_next) { bndRect = cvBoundingRect(contour, 0)。 avgX = ( + + ) / 2。 avgY = ( + + ) / 2。 = 。//寫字的左下角點(diǎn) = avgY。 if (avgX 200 amp。amp。 avgX 600 amp。amp。 avgY 280 amp。amp。 avgY 100) { = 。 = 。 = + 。 = + 。 if (40amp。amp。45) //把長度小于某個(gè)閥值的干擾矩形去掉 { cvRectangle(pFrame, pt3, pt4, CV_RGB(255, 0, 0), 1, 8, 0)。 } } } //更新背景 /////////////////////////////////////////////////// cvRunningAvg(pFrameMat, pBkMat, , 0)。 //將背景轉(zhuǎn)化為圖像格式,用以顯示 cvConvert(pBkMat, pBkImg)。 //顯示圖像 //////////////////////////////////////////////////// cvShowImage(video, pFrame)。 cvShowImage(background, pBkImg)。 cvShowImage(foreground, pFrImg)。 if (cvWaitKey(2) = 0) break。 } }//while 循環(huán)結(jié)束 cvReleaseStructuringElement(amp。Element)。//刪除結(jié)構(gòu)元素 大連交通大學(xué) 2020 屆本科生畢業(yè)論文 24 //銷毀窗口 cvDestroyWindow(video)。 cvDestroyWindow(background)。 cvDestroyWindow(foreground)。 //釋放圖像和矩陣 cvReleaseImage(amp。pFrImg)。 cvReleaseImage(amp。pBkImg)。 cvReleaseMat(amp。pFrameMat)。 cvReleaseMat(amp。pFrMat)。 cvReleaseMat(amp。pBkMat)。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1