日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 電源 > 數字電源
[導讀]對基于FPGA以及NIOS的圖像采集與處理系統(tǒng)進行了深入研究,在完成硬件實驗平臺設計的基礎上,完成了嵌入式操作系統(tǒng)的移植及應用程序的設計。以PDF417二維條碼的識別為例,對識別過程及識別算法進行研究,并對所設計的系統(tǒng)進行測試,達到了較好的識別效果。

 隨著計算機技術和人工智能技術的快速發(fā)展,圖像識別技術已成為人工智能的基礎技術,它涉及的技術領域越來越廣泛,應用越來越深入。隨著現代工業(yè)生產向高速化、自動化方向的發(fā)展,以形狀為特征的圖像識別在現代生產中的應用日益增加,不論是材料、工業(yè)自動化、遙感技術,還是產品質檢都需要對形狀進行檢測。因此,開發(fā)集圖像信號的采集與處理于一體、具有高集成度、高保密性的圖像處理系統(tǒng)將成為行業(yè)的發(fā)展趨勢。此外,基于32 bit微處理器純嵌入式系統(tǒng)的圖像采集處理技術正處于方興未艾階段,發(fā)展前景廣闊,可廣泛應用于工業(yè)自動化生產、監(jiān)護/防盜系統(tǒng)、機器人視覺等技術中。SoPC技術是Altera公司提出的一種靈活、高效的SoC解決方案,是一種新的軟硬件協同設計的系統(tǒng)設計技術。本系統(tǒng)就是在這種背景下提出的。其主要工作是設計一個實用的圖像采集和處理平臺,能完成目標圖像的采集輸入,并能對采集到的圖像進行處理和識別。
1 系統(tǒng)整體方案及硬件設計
    系統(tǒng)要求在FPGA片內利用SoPC技術實現便攜式的圖像采集與處理。它通過對原始圖像的掃描,經數字圖像處理與識別后即可將得到的大容量的承載信息(包括文字、頭像、指紋等個人信息)在LCD上顯示,并可通過USB接口將信息拷貝,或通過RS-232接口將信息上傳給PC機,也可以通過GPRS將獲得的信息方便快捷地發(fā)往數據中心作驗證。
    整個系統(tǒng)的核心部分是內嵌Nios II軟核的FPGA,外圍設備和芯片包括圖像獲取設備、顯示器及片外SDRAM和FLASH存儲器、輸入設備等。系統(tǒng)結構框圖如圖1所示。


    系統(tǒng)的工作過程是:系統(tǒng)配置完成后,視頻獲取設備獲取視頻圖像,每幀圖像經模數轉換生成圖像數據進入預處理模塊,經預處理后的圖像數據送入SDRAM存儲器,由Nios II處理器進行圖像的后續(xù)處理和控制。處理后的圖像經數模轉換在監(jiān)視器上實時顯示。
1.1 圖像采集接口電路設計
    本系統(tǒng)采用美國OmiVision公司的數字式彩色CMOS圖像傳感器OV7640。該芯片分辨率為640×480像素,成像速度為30幀/s,采取逐行掃描方式,輸出為數字信號。工作原理如圖2。

    圖像采集的程序流程是:首先Nios初始化OV7640的各個寄存器,主要包括狀態(tài)寄存器(STA)、數據和時鐘控制寄存器(CLKRC)、自動增益控制寄存器(AGC)的設置;然后查詢等待,條碼圖像被OV7640采集進入數據寄存器后,通過DMA方式存入SDRAM,Nios再從SDRAM中提取數據進行譯碼。
1.2 基于Nios的SoPC系統(tǒng)硬件設計
    基于Nios軟核的SoPC系統(tǒng)設計是整個系統(tǒng)硬件設計的核心,包括Nios軟核處理器的設計、數據采集控制的設計、圖像信號FFT分析的實現、參數顯示以及RS232通信模塊的設計等。另外,使用Nios進行嵌入式設計在硬件上必需使用Altera公司的FPGA。
    Nios處理器核的硬件設計是根據系統(tǒng)的功能要求定制合適的CPU和外設,然后在SoPC和Quartus II中實現。在硬件設計流程中,可以靈活定制Nios CPU的許多特性甚至指令,可以使用Altera提供的IP Core來加快設計者開發(fā)Nios外設的速度并提高外設性能,也可以使用第三方的IP Core,或者使用VHDL、Verilog自行定制外設。
    系統(tǒng)Nios外設主要包括:
    (1)CMOS圖像傳感器接口模塊。由于Altera沒有提供CMOS圖像傳感器接口模塊,所以使用VHDL編程自行定制。通過VHDL編程設計一個CMOS圖像傳感器控制模塊,采用接入Avalon總線的方式自定制外設。
    (2)由于要對數字圖像信號進行FFT運算,所以采集的數據必須先進行存儲,然后再作FFT計算。因此,必須設計FIFO存儲器和FFT實現的硬件。
    (3)RS232通信電路模塊。RS232通信可以通過串行口UART加上一個轉換芯片來實現。所以,本系統(tǒng)利用SoPC中提供的UART組件來實現RS232通信接口的設計。
    (4)LCD液晶顯示模塊。LCD液晶顯示是通過配置Nios的PIO接口來控制的。
    除上面所述之外,根據系統(tǒng)要求,Nios處理器核應當配置以下組件及接口模塊:cpu、boot_rom(用于系統(tǒng)引導)、uart1(用于系統(tǒng)的仿真調試)、uart_rs232(用于串口通訊)、Timer1(系統(tǒng)內部時鐘)、lan_timer(以太網通信用時鐘)、button_pio(用于參數設置)、lcd_pio(用于參數顯示)、user_logic_ad_nv_ctl和user_logic_ad_power_ctl(自定義的AD轉換的接口模塊)、Ethernet(用于以太網通信)、ext_ram(外部SRAM)、dma(用于將采集的數據直接存入SRAM中)和ext_flash(外部flash)。
    本系統(tǒng)中數據的存儲是通過設計FIFO存儲器電路實現的。FIFO存儲器電路主要由一個雙口RAM模塊(Dual-Port RAM)和狀態(tài)機模塊(State Machine Table)組成,通過先進先出(FIFO)堆棧把數據存儲在雙口RAM中。其設計是在Matlab環(huán)境下利用Altera DSP Builder設計工具實現的。
    電路設計完成并仿真驗證成功后,應用DSP Builder中的signal Compiler進行編譯分析,經signal Compiler轉換后可以變成VHDL語言的程序。同時,在Quartus II中,可以將VHDL語言程序轉換成電路符號,便于應用原理圖的方法設計硬件系統(tǒng)。由FIFO存儲器的VHDL程序生成的電路符號如圖3所示。在設計過程中,需要用到Quartus II軟件和其內嵌的IP Toolbench。按照本系統(tǒng)的要求設置FFT的參數為:點數為1 024點,數據寬度為12 bit。最后設計生成FFT的MegaCore Function模塊,包含一些VHDL程序及其他相關的文件。由VHDL程序生成的FFT模塊電路符號如圖4所示。

[!--empirenews.page--]

2 系統(tǒng)軟件設計
    系統(tǒng)軟件部分包括實時操作系統(tǒng)μC/OS-II和數據采集與處理部分的應用程序。在Nios II IDE中將軟件開發(fā)分為兩大部分,一部分是底層系統(tǒng)軟件的開發(fā),主要完成BSP(板級支持包)的功能;另一部分則是用戶應用軟件的開發(fā)(包括用戶硬件驅動及用戶上層應用軟件)。整個用戶軟件的開發(fā)及調試工作都可以在Nios II IDE中完成。
2.1 實時操作系統(tǒng)μC/OS-II在Nios上的移植
    在本課題中使用的是μC/OS-II的v2.83版本,源碼可以從Micrium的網站上獲得。同時還要從網站上獲得μC/OS-II在EDK中使用的配置文件μCOS-II_v2_1_0.mld和μCOS-II_v2_1_0.tcl。將這兩個文件放到EDK能找到的路徑下,這樣在EDK中才能配置使用μC/OS-II。在EDK中通過菜單Software->Software Platform Settings打開配置窗口,在OS中選擇μC/OS-II,OS Version中選擇 v2.83a,然后進入OS & Library對μC/OS-II進行配置。
    在Nios II IDE中,可以對μC/OS-II的源碼位置、BSP包源碼位置、移植程序文件位置、應用程序文件位置進行修改,同時還可對μC/OS-II進行剪裁配置,如是否使用事件、互斥信號量、消息郵箱及任務是否可刪除等。
2.2 實時操作系統(tǒng)下的軟件設計
    μC/OS-II在ALTERA的Nios微處理器上移植并測試完成后,建立了基于μC/OS-II實時多任務內核的硬件開發(fā)平臺,但μC/OS-II僅是一個有源碼的內核,在實際應用中,對外設的操作需要自行編寫底層的代碼。在此平臺下進一步開發(fā),實現數據采集功能,需要建立相關的應用程序,也就是要根據整個系統(tǒng)的要求,劃分不同的任務,這些任務交由實時內核來調度管理。一般一個任務對應于一段獨立的主程序,它可能調用各種子程序,并使用各種系統(tǒng)資源,以完成某種特定的功能,并且實時內核允許多個任務并行運行。采用實時操作系統(tǒng),使應用程序的編寫簡單且易于調試。
    主程序用C語言編寫,其主要程序如下:
    void main()
        {sys_initialize();//系統(tǒng)初始化
        while(1)
        {ad_fft_ctl();//數據采集及FFT計算子程序
            case collection_order:    //圖像采集命令
            image_collection();//圖像采集
            image_process();//圖像處理
            image_save();//圖像保存
            mps_decoder();//調用相應的解碼算法
            case rs232_transfer://傳輸數據命令
            lcd_display(p1,p2,p3);//LCD液晶顯示子程序
        }
    }
3 系統(tǒng)調試與應用實例
    調試包括硬件和軟件調試。硬件調試分析電路的設計合理性及焊接工藝的可靠性,以保證所設計的各個模塊合理,重點放在調試自己所設計的IP核和硬件邏輯的可靠性與適用性。軟件調試主要是集中在系統(tǒng)內核的應用程序,以保證各個功能都成功實現。這是一個相當復雜的過程。
3.1 系統(tǒng)硬件調試
    為了驗證FPGA能否正常工作,把CMOS圖像傳感器的輸出連接到Nios II開發(fā)板的擴展插座上,編寫VHDL程序,讀取CMOS圖像傳感器的輸出并存儲到FPGA的內部RAM中,利用Quartus II的工具In-System Memory Content Editor,讀取內部RAM的值。
    要設計用戶邏輯或者外設,除了要編寫實現特定功能的邏輯之外,還要編寫與Avalon總線的接口,這就要求對Avalon總線的規(guī)范很熟悉。測試結果表明,程序能夠通過JTAG接口成功下載到FPGA上,顯示在LCD上的運行結果也正確。這說明FPGA、JTAG接口、電源、晶振和LCD顯示等電路均能正常工作。
3.2 系統(tǒng)軟件調試
    Nios II集成開發(fā)環(huán)境(IDE)是Nios II系列嵌入式處理器的基本軟件開發(fā)工具,所有的開發(fā)任務都可以在Nios II IDE下完成,包括編輯、編譯、調試程序和下載。系統(tǒng)的軟件設計和調試全部在Nios II IDE下完成,使用C/C++語言編程。
3.3 系統(tǒng)應用實例——PDF417二維條碼的識別
    二維條碼掃描器開始工作時,首先采集二維條碼圖像數據,由于實際工作中條碼圖像會出現污損等情況,對碼字的正確譯出造成影響,所以必須對采集到的圖像進行降噪、校正等預處理。條碼圖像為灰度圖像,對其進行二值化才能進行碼字識別。在將PDF417碼的所有碼字正確分割后,以查表方式在碼本中查找與碼字相對應的值,將編碼數據譯出。為確認掃描的有效性,必須進行前向錯誤校驗。如出錯,則進行糾錯。最后,將譯碼的正確數據傳輸到上位計算機或LCD顯示。識別過程如圖5所示。

    二維條碼數據全部識別完以后,Nois控制輸出一個中斷申請信號,開始執(zhí)行中斷服務程序。首先選定數據傳輸口地址,然后譯碼結果可通過RS-232接口被送至計算機,計算機接收該譯碼數據后,中斷結束。重復該過程,直至全部譯碼結果輸出結束。整個軟件處理過程控制在0.3 s以內,完全可以滿足系統(tǒng)實時性要求。
    本文對基于FPGA以及Nios的圖像采集與處理系統(tǒng)設計進行了深入研究,并在設計完成硬件實驗平臺的基礎之上,完成了嵌入式操作系統(tǒng)的移植及應用程序的設計。系統(tǒng)采用Nios處理器和FPGA,必要的外圍電路和處理器能集中在一塊芯片上,減少了系統(tǒng)體積,簡化了系統(tǒng)規(guī)模,同時可以方便地進行擴展和升級。μC/OS-II操作系統(tǒng)移植到Nios處理器上,提高了系統(tǒng)的運行效率和可靠性。嵌入式圖像處理系統(tǒng)作為一種新型的智能化視覺系統(tǒng),以其種種優(yōu)點使之具有廣闊的應用前景和良好的經濟價值。研究與推廣嵌入式圖像處理系統(tǒng)無疑是科技進步的表現,尤其當嵌入式圖像處理系統(tǒng)應用于工業(yè)生產上時,必能提高生產效率,推動生產力的發(fā)展。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

在這篇文章中,小編將對FPGA的相關內容和情況加以介紹以幫助大家增進對它的了解程度,和小編一起來閱讀以下內容吧。

關鍵字: FPGA SOPC 芯片

摘要:為了解決視頻流數據實時顯示和圖像預處理問題,設計了基于FPGA和OV5640攝像頭的圖像采集和處理系統(tǒng)。該系統(tǒng)通過OV5640攝像頭進行圖像數據的采集,然后將其傳輸至FPGA內部,FPGA先控制視頻流數據存儲在SD...

關鍵字: FPGA OV5640 圖像采集

摘 要 :學生在課堂上的考勤是學生日常管理的重要任務,傳統(tǒng)的紙質點名方式會浪費很多時間和精力?,F有許多非手工方式,雖然能節(jié)約精力,但是必須排隊刷卡、采集虹膜、人臉或者指紋,也很費力。文中提出一種自動考勤系統(tǒng),無需人工干預...

關鍵字: 人臉識別 圖像采集 考勤系統(tǒng) 課堂視頻 虹膜 出勤率

摘要:基于SOPC的在線分析儀器平臺從數據采集到顯示已經可以完成分析儀器的基本功能。通過添加與上位機的通信來方便數據的驗證和平臺與網絡的鏈接以及數據傳輸,從而在非線性驗證和TCP/IP通訊方面實現對上位機的信息管理,同時...

關鍵字: SOPC 信息管理 非線性 TCP/IP

摘 要:機器視覺已在國內外引起了廣范的關注,人們對機器視覺的應用呼聲越來越高。文中給出一種以嵌入式芯片為核心,配合攝像頭、網絡接口等外設,搭建了基于OpenCV的嵌入式圖像采集傳輸系統(tǒng)。從嵌入式微處理器的網絡傳輸和圖像處...

關鍵字: OpenCV3 嵌入式 圖像采集 圖像傳輸

摘 要:為了更好地實現物聯網或工業(yè)控制領域中傳感器網絡設備的遠程監(jiān)控功能,本文設計了一種基于FPGA的嵌入式網關系統(tǒng)的隨機方法。該設計通過構建可編程片上系統(tǒng) (SOPC),并利用Nios II嵌入式系統(tǒng)通過串口通信來實現...

關鍵字: 嵌入式網關 FPGA NIOS II COS-II操作系統(tǒng) SOPC

點擊上方藍字關注我們!直播日程日期:8月25日(周三)時間:下午14:30-15:30主題:借助TIDLP?技術,開始您的下一代4K顯示應用設計內容簡介在這場直播中,您將了解TIDLP?技術如何幫助您利用4K顯示快速普及...

關鍵字: 應用設計 TI

點擊上方藍字關注我們!直播日程日期:8月25日(周三)時間:下午14:30-15:30主題:借助TIDLP?技術,開始您的下一代4K顯示應用設計內容簡介在這場直播中,您將了解TIDLP?技術如何幫助您利用4K顯示快速普及...

關鍵字: 應用設計 TI

摘要:針對工業(yè)控制領域中對多串口通信的需求,采用SOPC技術并利用FPGA的可編程性,給出了一個基于NiosII的30路串口數據轉發(fā)通信處理機的設計方法,同時定義了相應的數據通信協議,從而實現了30路下位機與上位機的串口...

關鍵字: 多串口通信 SOPC FPGA NIOS

摘要:給出了采用EDA軟件Quartus II中的SOPC Builder來構建SOPC系統(tǒng),再通過所構建的SOPC系統(tǒng)為平 臺,在Altera公司的FPGA多媒體開發(fā)平臺DE2上來設計物聯網數字鐘的具體方法。

關鍵字: 物聯網 Quartus II SOPC FPGA DE2 數字鐘

數字電源

15504 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉