<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 基于FPGA的行人檢測系統(tǒng)設計,實現(xiàn)智能視頻監(jiān)控

          基于FPGA的行人檢測系統(tǒng)設計,實現(xiàn)智能視頻監(jiān)控

          作者: 時間:2014-04-18 來源:網絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/259124.htm

          2

          真實的視頻監(jiān)控場景中,存在著大量的背景區(qū)域。本系統(tǒng)引入用來提取前景目標,有利于減少目標的搜索范圍,從而加快檢測速度。本系統(tǒng)采用單高斯法來獲取前景目標。

          單高斯分布背景模型為每一圖像像素的灰度值分布建立了用單個高斯分布表示的模型,其中下標t表示幀號,分別表示高斯分布的矩陣和方差。設圖像當前像素點的灰度值為,若,其中T為概率閾值,則該像素點被判為前景點,否則為背景點。在實際應用中,記,則取概率閾值為。

          對于單高斯分布模型的更新,即各圖像點高斯分布參數的更新,我們引入如下更新公式:

          其中為更新率,的取值對前景目標的提取起著關鍵的作用。如果太小,則會使背景模型跟不上實際背景的更新速度;如果取太大,則可能將速度較慢的運動物體更新為背景模型的一部分。本系統(tǒng)將取值為0.005。

          通過高斯背景建模,可以生成當前幀圖像的前景像素點,將這些前景像素點標記為1,背景像素點標記為0,生成一張前景標記圖像。在后續(xù)的過程中,通過判斷子窗口中是否含有前景像素點以決定是否檢測。子窗口的遍歷不需要花費很多時間,但級聯(lián)分類器的特征計算是非常耗時的,因此這樣做可以大大減少檢測時間。

          3

          本系統(tǒng)采用的檢測方法是利用檢測窗口逐像素多尺度遍歷圖像區(qū)域,用訓練好的級聯(lián)Adaboost行人分類器檢測檢測窗口內是否存在行人,其中檢測窗口的尺寸等于訓練樣本的尺寸。在實際的視頻場景中,人的尺寸是隨著與攝像機之間的距離變化而變化的,因此需要考慮檢測目標與樣本尺寸匹配的問題。針對這個問題,本系統(tǒng)采用逐層縮小原始圖像的方法,以保證檢測目標與檢測窗口尺寸的一致性。

          對于縮放系數的選擇,也是影響檢測效果的因素之一。若縮放系數太低,可能導致目標形狀的畸變,從而影響檢測結果;但如果縮放系數太高,又會增加縮放次數,降低檢測效率。折衷考慮,我們選擇0.85為逐層縮放圖像的系數,圖像的逐層縮放需要在原始圖像和前景目標圖像上同時進行,直至圖片的尺寸小于檢測窗口的尺寸。

          4 多檢測窗口的合并

          由于本系統(tǒng)采用的檢測方法是逐像素多尺度遍歷檢測,可能導致對同一目標產生多個檢測結果(如圖二(a)所示),因此需要將這些重疊的窗口合并成一個檢測結果(如圖二(b)所示)。在合并的過程中,首先判斷當前窗口是否有足夠的臨近窗口。所謂臨近窗口就是兩個窗口R1和R2相交的面積S(如圖二(c)陰影部分所示)與兩個窗口面積的比值均大于0.6。如果有足夠多的臨近窗口,那么保留此窗口,并且將此窗口與其臨近窗口兩兩求平均合并為一個新的窗口(如圖二(c)虛框所示);如果沒有足夠多的臨近窗口,就將此窗口當是錯誤檢測結果刪除。

          圖二:(a)合并前 (b)合并后 (c)矩形窗口合并方法



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();