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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于CCD攝像頭的黑線提取算法

          基于CCD攝像頭的黑線提取算法

          作者:華文 俞斌 翁華 浙江大學(xué)電氣工程學(xué)院 時間:2009-02-13 來源:電子產(chǎn)品世界 收藏

            第三種做法: 找出每行的最黑點(diǎn),把它作為道路。

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

            由于每行搜索的是最黑點(diǎn),因此可以將黑點(diǎn)的閾值稍稍擴(kuò)大一點(diǎn),即使遠(yuǎn)方的黑白不清,由于找的是最黑點(diǎn)因此還是可以提取出真確的黑線的.它的主要問題是,不一定每行都有符合要求的點(diǎn),會造成一行丟失而失去后面的黑點(diǎn).解決的方法是當(dāng)發(fā)現(xiàn)一行丟失以后,不立即退出搜索,而是置一個丟失計數(shù)器,只有當(dāng)丟失計數(shù)器的值連續(xù)累加到一定的閾值后才退出.當(dāng)每次搜索到一行的黑線后看看丟失計數(shù)器是否為非零.若不是,則說明前面沒有丟失行.若是,則說明前面有幾行丟失了.我們可以根據(jù)這一行與上以有效行對中間的丟失行對中間的丟失行做一個線性化處理.然后清零丟失計數(shù)器.有了丟失計數(shù)器,我們可以對賽道的提取條件加以嚴(yán)格的限制,而不必?fù)?dān)心黑線的漏檢.比如我們可以嚴(yán)格限制黑線的寬度,這樣我們可以很容易濾除看到大塊的黑斑帶來的干擾;對于上述的斜看十字交叉線的問題我們只要根據(jù)上一行的黑線嚴(yán)格限制下一行黑線出現(xiàn)范圍便可輕松濾除.當(dāng)然在發(fā)現(xiàn)丟失行以后對于下一行的搜索必需加大黑線搜索的范圍,允許的連續(xù)丟失行越多則再次找回的黑線的可信度也就越低,在實(shí)際的提取過程中必須把握好這一閾值,使得即可以順利找到前方的道路,又不至于誤.實(shí)際證明這種方法實(shí)現(xiàn)簡單,可靠性也最高,黑線提取十分穩(wěn)定.

            (電壓跳變比較)

           

            圖4攝像頭的視頻輸出信號

            從攝像頭的視頻輸出信號,我們可以看出在黑線與白線之間有一個明顯的電壓跳變過程,我們可以利用這一特點(diǎn)來作為黑線的提取標(biāo)志.利用合理的硬件電路我們變可以實(shí)現(xiàn)在電壓跳變以前輸出邏輯1,在電壓跳變后輸出邏輯0.這樣單片機(jī)要做的就是不停地讀取引腳的電平狀態(tài).由于不需要AD轉(zhuǎn)化,這使得單片機(jī)在每個視頻的行中斷中讀取比AD多得多的點(diǎn),黑點(diǎn)的個數(shù)自然也很多.在是軟件要做的就是區(qū)分0與1而已,實(shí)現(xiàn)起來非常方便.下面是一幅由這種方法提取出的圖像與圖像的對比.

           

            圖5

           

            圖6 硬件采樣圖

           

            可以看到它的黑線非常明顯,效果很好。

            但是這種方法也存在著它的很多局限性:

            首先,它對環(huán)境的要求很苛刻,不能有縫,不能有反光.由于縫的顏色明顯易于周圍的顏色,因此在圖像上它就表現(xiàn)為一條黑線。其次由于反光的作用使得反光區(qū)域光線異常強(qiáng)烈。反光區(qū)在圖像上也是一片黑,使得白變黑。

            其次,它對橫向的分辨能力很弱。使得它對起始道的區(qū)分非常困難。比如起始道在圖像上往往會把中間的黑道變成白道,使得起始道的辨別以及黑線的提取困難。

            最后,對于十字交叉道,由于一行全是黑線,電壓無跳變,因此在圖像上它是一條白線,使得賽道出現(xiàn)斷點(diǎn).出現(xiàn)黑變白.更糟糕的情況是稍微斜看十字叉時,它會出現(xiàn)起始道的特征.使得賽車亂停機(jī).

            上述的黑變白以及白變黑的出現(xiàn),很大程度上抵消了它所帶來的方便性,軟件必須對于采到的黑線加以認(rèn)真判別它是否是真的黑線,這就涉及到許多方面的濾波.再則,由于單片機(jī)讀取的僅僅是0-1信號,丟失了每個點(diǎn)的之間細(xì)微的黑白程度,這給濾波也帶來極大的難處.為了正確它涉及到本文所提到過的所有濾波方式,包括線寬設(shè)置,黑線的連續(xù)性等等.

            但是它帶來的最大困難還是起始道的判別問題.起始道的干擾不僅來自十字交叉線,而且還來自一般賽道,因?yàn)楹苡锌赡茉谫惖赖膬蓚?cè)由于光線反射的不均衡導(dǎo)致電壓的跳變,使得在黑線的旁邊隔著一段白斑出現(xiàn)幾段的黑線,很容易誤認(rèn)起始道,最終導(dǎo)致起始道根本無法識別.

            基于以上的分析,最后我們還是選用了AD的第三種方法,它簡單,實(shí)用,效果很理想.

            它的流程圖以及程序代碼如下:

           

            圖7 流程圖

           

            參考文獻(xiàn):

            [1] 卓晴,黃開勝,邵貝貝等. 學(xué)做智能車—挑戰(zhàn)“飛思卡爾”杯. 北京航空航天大學(xué)出版社. 2007

            [2] 第二屆全國大學(xué)生“飛思卡爾”杯智能汽車競賽浙江大學(xué)捷豹II隊(duì)技術(shù)文檔

            [3] 第二屆全國大學(xué)生“飛思卡爾”杯智能汽車競賽上海交大speedstar隊(duì)技術(shù)文檔

          攝像頭相關(guān)文章:攝像頭原理

          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();