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

正文內容

樓層智能視頻監(jiān)控系統(tǒng)-資料下載頁

2024-12-03 20:08本頁面

【導讀】覺技術,是一項新興的安防技術。其主要是采用圖像處理、模式識別和計算機視。后及時取證的全自動、全天候、實時監(jiān)控的智能系統(tǒng)。搶劫等發(fā)案率逐年增加。因此,國家有關部門提出對社會治安進行綜合治理,并。把創(chuàng)建和諧社會作為其中的重要內容。了整個社會生活水平的提高,人們生活不再僅僅局限于傳統(tǒng)的衣、食、住、行,飛機場、火車站、校園、超市等已經得到了廣泛應用。視頻監(jiān)控作為安全防范系。采用視頻監(jiān)控為主的多。種技術防范結合的系統(tǒng)是預防和制止犯罪最為有效的措施。事后進行某些案件回放分析,必要時也可作為呈堂證供。因此,在樓層建立一套。創(chuàng)造極為有利的條件。純模擬的視頻監(jiān)控系統(tǒng),稱為閉路視頻監(jiān)控系統(tǒng)。監(jiān)控系統(tǒng)或網絡數字視頻監(jiān)控系統(tǒng)。在24小時連續(xù)工作模式下無故障運行。便,故障后需恢復正常工作的時間極短。面,使授權的操作員能及時處理各類問題,確保系統(tǒng)仍能正常工作和操作。設閥值基礎上判定是否發(fā)動報警聯(lián)動。

  

【正文】 的 vd = 2可以知道內存映射時最多支持兩幀,因此定義 int framestat[2],表示幀的狀態(tài),用 frame=0 或者 1 表示當前為哪一幀,通過改變framestat[frame]和 frame 的值來進行雙緩沖,即采集一幀時處理另一幀,同時 第 30 頁 西華大學畢業(yè)設計說明書 加一個外循環(huán)達到連續(xù)多幀的采集,每幀的地址都是通過 cam_mmap 加上偏移地址 vd[frame]得到。值得注意的是,由于偏移地址只有 vd [0] 和 vd [1], 在采集完下一幀之前必須將當前幀處理完畢,否則再次采集到的新數據會將當前數據覆蓋。 抓取圖像的子函數為: if ((ret =ioctl(cam_fp,VIDIOCMCAPTURE,amp。vdv_mmap)) 0) { printf(get capture error, ret(%d)\n,ret)。 goto err。 } framestate[frame]=1。 //截取成功,設置幀的狀 態(tài) 進行同步處理,即等待一幀圖像采集完成的子函數: if(ioctl(cam_fp, VIDIOCSYNC, amp。vd) 0) { printf(get capture error, ret(%d)\n,ret)。 goto err } framestate[frame]=0。 //同步成功,設置幀的狀態(tài) 當一幀圖像采集成功后,需要對幀號和地址進行 調整,然后繼續(xù)采集下一幀。 frame=frame^ 1; //幀號的調整,因為最多支持兩幀 address=cam_mmap + vd[frame]); //幀的地址 時間檢測函數的返回值就是程序執(zhí)行到該函數時的時刻點,在要檢測函數的開始和結束處分別放上時間函數,通過做差值即可得出待測程序的執(zhí)行時間。時間檢測函數如下: double ms_time (void) //返回值單位為毫秒 { static struct timeval tod。 gettimeofday (amp。tod, NULL)。 //gettimeofday()會把當前的時間由tod所指 //的結構回,時區(qū)的信息則放到 NULL所指的結構體 return ((double) * + (double) / )。 第 31 頁 西華大學畢業(yè)設計說明書 } ms_time1 = ms_time () ms_time0。 printf(%f\n,ms_time1)。 在實驗中,本人發(fā)現截取圖像的大部分時間花在同步等待上。以在 PC 機上的實驗為例,本人在視頻采集程序中加入時間監(jiān)測函數,發(fā)現采集一幀圖像要花75ms 左右的時間,但執(zhí)行同步等待的函數就要花費 65ms~70ms 的時間,因此想到采用雙緩沖進行視頻采集,即在循環(huán)外就先采集一幀,進入循環(huán)采集過程中時先同步等待該幀采集完,然后采集下一幀,在等待當前這一幀采集完的同時來處理上一幀。處理完后進行下一次的循環(huán)。最后實驗發(fā)現該雙緩沖能大大減少程序運行時間,為壓縮模塊提供了恒定了視頻流。雙緩沖示意圖如圖 所示: 圖 雙緩沖示意圖 編寫完基于 V4L 的視頻采集程序之后,就可以把它進行交叉編譯下載到開發(fā)板上運行進行測試。本文采用模塊化的測試方法,把采集的視頻數據存在文件“ ”中,這個視頻流原始數據可用軟件 Yuv viewer 播放。但剛開始測試時,如果不成功,我們不好判斷原因究竟是出于硬件還是軟件。這里可用開源的 vidcat 程序來判斷硬件是否搭建好,即用命令 vidcat – d /dev/video0 – p y 。 vidcat 的流程圖 如圖 : 處理上一幀 采集下一幀 同步等 待 采集一幀 循環(huán)采集 第 32 頁 西華大學畢業(yè)設計說明書 程 序 開 始設 定 默 認 值G e t o p t ( )= E O F重 設 相 關 信 息M a x _ t r y > 0打 開 視 頻 設 備是 否 成 功采 集 圖 像是 否 采 取 成 功關 閉 視 頻 設 備標 準 輸 出M a x _ t r y 等 待 1秒NY圖 片 格 式 轉 換程 序 結 束YNYNY 圖 vidcat 流程圖 編碼設計 如果攝像頭以 15幀 /秒的速度采集圖像,在采集程序中設定一幀圖像大小為640 480(以像素為單位 ),采用 YUV420P 的格式,那么一幀圖像大小就為 640480 =460800Byte。一秒鐘傳輸的數據量就是 460800 15=,可見數據量非常大。這么大的圖像信息會給存儲器的存儲容量、網絡通信信道的帶寬以及處理器的處理速度增加極大的壓力。這就需要在 數據傳輸之前進行壓縮編碼以減少數據量。 本文采用 S3C6410內部集成的多媒體編解 碼 模塊 MFC進行 編碼。 MFC 模塊具有高性能的視頻編解碼功能,支持 MPEG 、 的編解 碼 ,并支持 VC1 解碼,性能可以達到全雙工 30fps@640 480 同時編解碼和半雙工 30fps@720 480或 25fps@720 576 編解碼。本文已在前面的內容中介紹了MFC 驅動的移植,現在介紹基于 的視頻壓縮編碼的 MFC 應用程序。 第 33 頁 西華大學畢業(yè)設計說明書 MFC 應用程序的流程圖見圖 所示: 程 序 開 始打 開 M F C 設 備是 否 打 開 成 功設 定 編 碼 參 數接 收 編 碼 數 據編 碼錯 誤 處 理Y程 序 結 束NM F C 編 碼 信 息 初 始 化是 否 成 功后 續(xù) 處 理 ( 傳 輸 )是 否 打 開 成 功重 設 配 置 參 數NYNY 圖 MFC 應用程序流程圖 MFC 應用程序中用到的主要結構體有以下幾個: typedef struct { int ret_code。 // [OUT] Return code int in_width。 // [IN] width of YUV420 frame to be encoded int in_height。 // [IN] height of YUV420 frame to be encoded int in_bitrate。 // [IN] Encoding parameter: Bitrate (kbps) int in_gopNum。 // [IN] Encoding parameter: GOP Number int in_frameRateRes。 // [IN] Encoding parameter: Frame rate 第 34 頁 西華大學畢業(yè)設計說明書 (Res) int in_frameRateDiv。 // [IN] Encoding parameter: Frame rate (Divider) } MFC_ENC_INIT_ARG。 typedef struct { int ret_code。 // [OUT] Return code int out_encoded_size。 // [OUT] Length of Encoded video stream int out_header_size。 // [OUT] Length of video stream header } MFC_ENC_EXE_ARG。 typedef struct { int ret_code。 // [OUT] Return code int in_usr_data。 // [IN] User data for translating Kernelmode address to Usermode address int in_usr_data2。 int out_buf_addr。 // [OUT] Buffer address int out_buf_size。 // [OUT] Size of buffer address } MFC_GET_BUF_ADDR_ARG。 MFC 應用程序中包括以下幾個主要步驟: 設備初始化 handle = SsbSipH264EncodeInit(width, height, frame_rate, bitrate, gop_num);該初始化函數完成了以下任務: ① 打開 MFC設備 hOpen = open(MFC_DEV_NAME, O_RDWR|O_NDELAY); ② Mapping the MFC Input/Output Buffer,即采用內存映射的方式進行視頻流的輸入輸出。 addr = (unsigned char *) mmap(0, BUF_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, hOpen, 0); ③ 設定編碼參數,如設置幀率、比特率等。 frame_rate = atoi(argv[3]); bitrate = atoi(argv[4]); gop_num = atoi(argv[5])。 重設配置參數,這里主要是選擇輸出流的格式:單片還是多片。 slices[0] = 1。 // 0 for single, 1 for multiple slices[1] = 4。 // count of slices SsbSipH264EncodeSetConfig(handle, 第 35 頁 西華大學畢業(yè)設計說明書 264_ENC_SETCONF_NUM_SLICES, slices)。 MFC 編碼執(zhí)行子函數 SsbSipH264EncodeExe(handle);該子函數完成了以下任務: ① 初始化 MFC 編碼信息。 ioctl(pCTXhOpen, IOCTL_MFC_H264_ENC_INIT, amp。mfc_args); ② MFC 接收要編碼的視頻原始 數據,即 USB 攝像頭采集的數據。首先要得到輸入緩沖區(qū)的地址,然后把原始的 YUV 數據復制到 MFC 輸入緩沖區(qū)內。涉及到的函數為: p_inbuf = (unsigned char*)SsbSipH264EncodeGetInBuf(handle, 0),里面主要通過命令 ioctl(pCTXhOpen,IOCTL_MFC_GET_FRAM_BUF_ADDR, amp。mfc_args)得到幀緩沖區(qū)的地址,然后進行數據復制 memcpy(p_inbuf, cam_mmap + [!frame], frame_size); ③ 編碼幀緩沖區(qū)中的視頻流。 ioctl(pCTXhOpen, IOCTL_MFC_H264_ENC_EXE, amp。mfc_args); 得到編碼輸出緩沖區(qū)的地址,為后續(xù)研究提供已編碼好的 視頻流。 p_outbuf = (unsigned char*)SsbSipH264EncodeGetOutBuf(handle, amp。size);里面主要通過命令 ioctl(pCTXhOpen, IOCTL_MFC_GET_LINE_BUF_ADDR, amp。mfc_args)得到輸出緩沖區(qū)的地址 。 第 31 頁 西華大學畢業(yè)設計 說明書 7 總結與體會 伴隨 著計算機技術、多媒體技術及網絡技術的迅猛發(fā)展,基于嵌入式的視頻監(jiān)控技術必然走向數字化、網絡化 、智能化 ,并且視頻監(jiān)控將逐步走入每一個人的生活,發(fā)揮比以往更重要的作用。在將來,無線傳輸必然將逐步取代現有的有線傳輸方式,終端也將由 PC 機逐漸演變?yōu)?PDA 手持設備、手機等。眾所周知,視頻數據的壓縮永遠是無線視頻監(jiān)控領域的核心問題之一。人們在尋求更高視頻質量,更好壓縮性能的編碼技術的路上,經歷了一代又一代編碼標準的提出。而直到 的問世,視頻編碼技術才終顯成熟。本文以 在視頻壓縮編碼中的應用為目標,結合視頻數據高速采集的關鍵技術,設計并實現了一個基于 ARM11 的視頻采集和壓縮編碼系統(tǒng)。采用本系統(tǒng)進行視頻數據采集壓縮,圖像連續(xù)性好。而且本系統(tǒng)屬于一個相對獨立的整體模塊,可以很方便地應用到其它系統(tǒng)中。 在經過對整個系統(tǒng)的方案論證后, 本 課題 主要完成了以下工作: ( 1) 熟悉 Linux 系統(tǒng)下內核源碼以及視頻編碼驅動,這些雖然都是 Linux 自帶,但由于在以前從沒有接觸過,在了解起來還是有一定的難度。同時要完成系統(tǒng)開發(fā),還必須 熟悉了開發(fā)板硬件平臺,完成了系統(tǒng)軟件 設計 。 ( 2) 根據 Linux 自帶的 V4L 完成了嵌入式的視頻采
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1