国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

基于FPGA的線陣CCD子圖像提取模塊的設計與仿真

發布時間:2014-12-17 15:42    發布者:designapp
關鍵詞: FPGA , 線陣CCD , 圖像提取

        0 引言
在工業生產自動化系統中,通過計算機視覺和圖像處理技術來實現產品的質量監測和控制,已逐漸成為一種有效的應用技術。線陣CCD圖像傳感器廣泛地應用于產品尺寸測量和分類、非接觸尺寸測量、條形碼、形態識別等眾多領域。在圖像檢測系統中,應具備一個高速的子圖像提取和輸出模塊,本文采用FPGA器件EP3C25F256C8和CCD線陣圖像傳感器RL1024P,實現線陣CCD圖像檢測系統中的子圖像提取和輸出功能。
1 子圖像提取模塊的設計
子圖像提取模塊的功能可描述為:采用FPGA器件實現,根據串行輸入的黑白圖像和同步信號,提取該圖像中設定尺寸大小的子圖像。假設輸入圖像大小為i*j,某一像素點的坐標位置為(X,Y),要取出子圖像的大小為m*n,則用c代碼描述為:for(b=0;b
根據系統設計的要求,線陣CCD圖像采集模塊采用串行的方式輸出1×1024像素的一行圖像,子圖像提取模塊接收該圖像數據、緩沖、再輸出16×16像素的子圖像。子圖像提取模塊的外部端口,如圖1所示。主要信號有:像素同步時鐘信號CCD_CLK、像素數據CCD_DATA、當前輸入像素的坐標CCD_ADDR[90];另外,N_RST和SYS_CLK為系統提供的復位信號和處理時鐘信號。其中,每個CCD_CLK的上升沿出現時CCD_DATA像素有效,且該像素所在的位置為CCD_ADDR[90]值。



為了實現每個CCD_CLK周期內均輸出一個子圖像,SYS_CLK應該為CCD_CLK的10倍左右。




       
本文采用“圖像轉置緩沖區”的方法來實現子圖像提取模塊。“圖像轉置緩沖區”是一個按行寫入(更新)、按列讀出的一個RAM緩沖區。在FPGA內部設置一個1024個單元的RAM緩沖區,每個單元的位寬為16bits.線陣CCD采集模塊輸出的線陣圖像與子圖像的關系,如圖2所示。其中,第0行表示圖像的當前行,第N行為歷史行,每行有1024個像素,按照p0至p1023的像素順序輸出。假設當前CCD_CLK輸入的像素為第0行的p16像素,則其對應的16X16子圖像為圖中的陰影部分。
“圖像轉置緩沖區”RAM塊存儲圖像的結構,如圖3所示。



RAM塊共有1024個單元,每個單元為16位的寬度,可存放最近的16行圖像數據。對比圖2和圖3,可以發現,RAM塊的地址編號相當于線陣CCD圖像的某一行像素的位置,某個RAM單元的位D15~D0對應某一列的最近16個像素,相當于對線陣圖像轉置后再存放到RAM塊中。對RAM緩沖區進行寫操作時,由于線陣CCD圖像的數據是按行逐位輸入的,每個CCD_CLK時鐘上升沿出現時,僅需更新RAM緩沖區中當前像素對應的比特,因此在邏輯上是根據圖像按行寫入RAM區的。在FPGA器件中,可設計一個狀態機來實現“圖像轉置緩沖區”的讀寫操作,如圖4所示。



子圖像提取模塊輸出的子圖像有256個像素,在FPGA內部通過寄存器暫存上一個輸出的子圖像;當更新RAM區的某個像素時,把16X16的滑動窗口向右移動一列像素的位置,把滑動窗口內的數據作為輸出,就可以得到新的子圖像。




       
2 設計仿真
在本文的設計仿真中,由于用到圖像文件的解析和圖像顯示,因此借助MATLAB和Modelsim軟件,通過文件讀寫的方式實現的聯合仿真,可使仿真處理更加便捷和直觀。其中,MATLAB用來把圖像文件轉換為輸入的像素,以及顯示輸出的子圖像;Modelsim用來仿真和驗證FPGA設計是否正確。



本文使用MATLAB和Modelsim進行聯合仿真,主要有以下三個步驟。第一步,在MATLAB中編寫m文件,讀取bmp位圖文件并把像素數據寫入文件datain.txt中,作為ModelSim仿真的輸入激勵信號。第二步,在ModelSim中,用VHDL編寫Testbench測試文件,讀取datain.txt文件,產生與CCD_CLK同步的像素信號;編寫DO文件進行自動化仿真,再把仿真輸出的子圖像數據保存在dataout.txt文件中。第三步,在MATLAB中編寫m文件,解析dataout.txt文件,依次顯示為16×16的黑白圖片序列,確定仿真結果是否正確。本設計仿真輸入的圖像及輸出的子圖像序列,如圖5所示。從仿真結果可知,設計方法是正確的,仿真結果符合設計功能的要求。

3 結束語
應用線陣CCD圖像傳感器進行產品檢測時,連續、高速地輸出子圖像序列是必不可少的重要環節,采用FPGA實現子圖像序列的提取和輸出,有多種不同的設計方法。本文采用“圖像轉置緩沖區”和狀態機的方式,來實現系統所要求的子圖像提取和輸出的功能,并用MATLAB和ModelSim工具軟件對設計進行了聯合仿真,該方法具有FPGA資源占用少、結構簡單、高速處理,以及便捷和直觀的特點,對其他類似的FPGA設計項目有很好的參考作用。


本文地址:http://www.4huy16.com/thread-135910-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • “芯”光璀璨,鵬城共賞——2025 Microchip中國技術精英年會深圳站回顧
  • 技術熱潮席卷三城,2025 Microchip中國技術精英年會圓滿收官!
  • Microchip第22屆中國技術精英年會上海首站開幕
  • 電動兩輪車設計生態系統
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表