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

正文內(nèi)容

電子科學(xué)與技術(shù)碩士論文-基于arm9的手寫體數(shù)字識別技術(shù)研究與實(shí)現(xiàn)-資料下載頁

2024-11-16 17:53本頁面

【導(dǎo)讀】手寫體識別作為一種最簡單直接的人機(jī)交互手段,在智能設(shè)備中有重要作用。大,近年來在嵌入式領(lǐng)域得到廣泛的應(yīng)用。本文圍繞ARM9核心的硬件平臺,研究在Linux. 上實(shí)現(xiàn)手寫體數(shù)字的自動識別的方法。通過分析手寫體識別技術(shù)的發(fā)展?fàn)顩r,ARM核心系列芯片的應(yīng)用情況,對ARM.Linux內(nèi)核進(jìn)行配置及編譯,掛載了適用于NANDFLASH. 結(jié)合當(dāng)今圖像識別技術(shù)的發(fā)展,闡述了模式識別問題中圖像預(yù)處理的主要方法,進(jìn)行了參數(shù)優(yōu)化,減少了網(wǎng)絡(luò)訓(xùn)練失敗的幾率及訓(xùn)練所使用的時間。訓(xùn)練完成后,使用字符圖片樣本對神經(jīng)網(wǎng)絡(luò)進(jìn)行了測。試,并給出了測試結(jié)果,證明了訓(xùn)練結(jié)果的正確性。生成C語言代碼,并結(jié)合Qt及Linux的特點(diǎn)進(jìn)行適應(yīng)性修改。嵌入到程序主體當(dāng)中,下載到ARM平臺上運(yùn)行。本文的設(shè)計原理適合于更復(fù)雜的文字識別場合,具有借鑒意義。根據(jù)需求對網(wǎng)絡(luò)進(jìn)

  

【正文】 到文件系統(tǒng)層次樹中。每次安裝時,文件系統(tǒng)將被連 接到一個被稱為安裝目錄或安裝點(diǎn)的目錄上,文件系統(tǒng)中 的內(nèi)容將會取代此目錄 中原來的內(nèi)容。當(dāng)文件系統(tǒng)被卸載時,安裝目錄中原有的文件將再次出現(xiàn)。 當(dāng)磁盤初始化時,磁盤中將添加一個描述磁盤物理邏輯構(gòu)成的分區(qū)結(jié)構(gòu)。包 含文件系統(tǒng)的設(shè)備稱為塊設(shè)備,文件系統(tǒng)將數(shù)據(jù)組織成目錄、軟連接等存在于物 理塊設(shè)備中的邏輯層次結(jié)構(gòu)。 Linux系統(tǒng)將塊設(shè)備看成簡單的線性組合關(guān)系,并 不關(guān)心磁盤設(shè)備真正的底層物理結(jié)構(gòu)與邏輯。塊設(shè)備驅(qū)動程序負(fù)責(zé)將 Linux發(fā)來 的塊操作轉(zhuǎn)換為實(shí)際的物理磁盤操作,為 Linux文件操作提供服務(wù)。塊設(shè)備驅(qū)動 中將保存磁盤的磁道、扇區(qū)、柱面數(shù)、位置等相關(guān)信息。不同 的物理設(shè)備有不同 信息記錄,但是在 Linux系統(tǒng)看來,這些都是一樣的。因此只要驅(qū)動設(shè)置正確, 通過塊設(shè)備的掛載, Linux可以操作各種各樣的記錄設(shè)備,甚至是遠(yuǎn)程的基于網(wǎng) 絡(luò)的設(shè)備,而不管他們的物理狀態(tài)。 文件系統(tǒng)中的文件是數(shù)據(jù)的集合,不僅包括用戶正常記錄的數(shù)據(jù),還包括文 件系統(tǒng)的結(jié)構(gòu)信息,以及 Linux系統(tǒng)中所見到的文件名、目錄、軟連接、文件保 護(hù)與校驗信息等內(nèi)容。此外文件中還要保存安全信息以便保持操作系統(tǒng)的基本完 16 碩 {:學(xué)位論文 整性。所有這些數(shù)據(jù)被封裝到“文件”單元中提供給用戶使用 。 2. 3. 4. 2加載 YAFFS文件系統(tǒng) 本文的系統(tǒng)掛載了 NANDFLASH,其特點(diǎn)是容量大,存儲區(qū)可能有壞點(diǎn),以 頁面為單位進(jìn)行存取。針對這些特點(diǎn), YAFFS文件系統(tǒng)進(jìn)行了針對性的加強(qiáng)。它 是日志結(jié)構(gòu)的文件系統(tǒng),提供平衡損耗與掉電保護(hù)功能,可以有效避免隨機(jī)掉電 對文件系統(tǒng)一致性與完整性的損壞。 YAFFS采用了多策略混合的垃圾回收算法, 結(jié)合了貪心算法的高效性和隨機(jī)算法的平均性,達(dá)到了兼顧損耗平均和系統(tǒng)開銷 的目的。 YAFFS將文件組織成固定大小 (5 12字節(jié) )的數(shù)據(jù)段。每個文件都有一個頁 面專門存放文件 頭,文件頭保存了文件的模式、所有者 id、組 id、長度、文件名 等信息。為了提高文件數(shù)據(jù)塊的查找速度,文件的數(shù)據(jù)段被組織成樹形結(jié)構(gòu)。 YAFFS在進(jìn)行改寫操作時總是先寫入新的數(shù)據(jù)塊,然后將舊的數(shù)據(jù)塊從文件中刪 除。 NANDFLASH物理存取是以頁面為單位進(jìn)行的,因此 YAFFS文件系統(tǒng)也將 文件組織成固定大小的數(shù)據(jù)段,利用 NANDFLASH所提供的每個頁面 16字節(jié)的 備用空間存放校驗及文件結(jié)構(gòu)信息,以實(shí)現(xiàn)錯誤檢測及壞塊處理的功能,同時提 高了文件系統(tǒng)的操作速度。 YAFFS使用頁面?zhèn)溆每臻g的 ECC進(jìn)行錯誤檢測,出 現(xiàn)多次錯誤后此頁面便會停止使用。 YAFFS充分利用了 NANDFLAsH所提供的 每個頁面 l 6字節(jié)的備用存儲空間,參考了 SmartMedia的設(shè)定,備用空間中的 6 字節(jié)被用作頁面數(shù)據(jù)的 ECC, 2個字節(jié)分別用作塊狀態(tài)字和數(shù)據(jù)狀態(tài)字,其余的 8字節(jié)用來存放文件系統(tǒng)的組織信息,即元數(shù)據(jù)。由于文件系統(tǒng)的基本組織信息 被保存在頁面的備份空間中,因此,在文件系統(tǒng)加載時只需要掃描各個頁面的備 份空間,即可建立起整個文件系統(tǒng)的結(jié)構(gòu),加快了文件系統(tǒng)的加載速度。 在內(nèi)核中建立 YAFFS目錄 fs/ yaffs,并把 yaffs代碼 復(fù)制到此目錄下。修改 Kconng和 makefile,使得可以配置 YAFFS。在 YAFFS目錄中生成 Makenle和 Kconfig文件。配置內(nèi)核時選中 MTD支持和 YAFFS支持,編譯內(nèi)核并把內(nèi)核下 載到開發(fā)板的 FLASH上,制作根文件系統(tǒng)并下載到 FLASH指定位置。這樣, YAFFS文件系統(tǒng)便被安裝到嵌入式 Linux系統(tǒng)中了。 2. 3. 5觸摸屏加載與調(diào)試 2. 3. 5. 1 Linux中觸摸屏的加載方式 Linux下的觸摸屏驅(qū)動程序主要都在/ kernel/ drivers/ char/ s3c2410. ts. c文件 中。 在觸摸屏設(shè)備驅(qū)動程序中,全局變量 struct TS DEV tsdev用來保存觸摸屏的相關(guān) 參數(shù)、等待處理的消息隊列、當(dāng)前采樣數(shù)據(jù)、上一次采樣數(shù)據(jù)等信息。 Ts RET 結(jié)構(gòu)體中的信息就是驅(qū)動程序提供給上層應(yīng)用程序使用的信息,用來存儲觸摸屏 的返回值。上層應(yīng)用程序通過讀接口,從底層驅(qū)動中讀取信息,并根據(jù)得到的值 進(jìn)行其他方面的操作。 基于 ARM9的于寫體數(shù)寧識別技術(shù)研究‘ j實(shí)現(xiàn) TS DEV結(jié)構(gòu)用于記錄觸摸屏運(yùn)行的各種狀態(tài), PenStatus包括 PEN UP、 PEN DOWN和 PEN FLEETING。 buf【 MAX TS BUF】是用來存放數(shù)據(jù)信息的事件 隊列, head、 tail分別指向事件隊列的頭和尾。程序中的事件隊列是一個環(huán)形結(jié)構(gòu), 當(dāng)有事件加入時,隊列頭加一,當(dāng)有事件被取走時,隊列尾加一,當(dāng)頭尾位置指 針一致時讀取該事件的信息,進(jìn)程會被安排進(jìn)入睡眠。 WQ等待隊列,包含一個 鎖變量和一個正在睡眠進(jìn)程鏈表。當(dāng)有好幾個進(jìn)程都在等待某件事時, Linux會 把這些進(jìn)程記錄到這個等待隊列。它的作用是當(dāng)沒有筆觸事件發(fā)生時,阻塞上層 的讀操作,直到有筆觸事件發(fā)生。隊列使用自旋 鎖,自旋鎖是基于共享變量來工 作的,函數(shù)可以通過給某個變量設(shè)置一個特殊值來獲得鎖。而其他需要鎖的函數(shù) 則會循環(huán)查詢鎖是否可用。 MAX TS BUF的值為 16,即在沒有被讀取之前,系 統(tǒng)緩沖區(qū)中最多可以存放 16個筆觸數(shù)據(jù)信息。 2. 3. 5. 2加載觸摸屏的主要步驟 首先在驅(qū)動模塊初始化函數(shù)中,除了對驅(qū)動的字符設(shè)備的注冊外,還要對中 斷進(jìn)行申請。一般需要申請兩個觸摸屏相關(guān)的中斷。一個是 IRQ TC中斷,該中 斷在筆按下時,對應(yīng)管腳產(chǎn)生表示中斷的低電平信號;另一個是 IRQ ADC DONE 中斷,該 中斷是當(dāng)芯片內(nèi)部 A/ D轉(zhuǎn)換結(jié)束后,通知中斷控制器產(chǎn)生中斷,這時就 可以去讀取轉(zhuǎn)換得到的數(shù)據(jù)。 當(dāng)觸摸屏被按下后,就會觸發(fā)中斷,這時 Linux系統(tǒng)會調(diào)用申請中斷時附帶 的s3c2410 isr tc中斷回調(diào)函數(shù),該函數(shù)中判斷若為筆抬起則啟動 x軸坐標(biāo)的 A/ D 轉(zhuǎn)換。轉(zhuǎn)換完畢后會,會觸發(fā)產(chǎn)生 ADC中斷,這時就會調(diào)用申請中斷時附帶的 s3c2410 isr adc中斷回調(diào)函數(shù),在該函數(shù)中進(jìn)行判斷。若 x軸坐標(biāo)轉(zhuǎn)換結(jié)束馬上 進(jìn)行 y軸坐標(biāo)的 A/ D坐標(biāo)轉(zhuǎn)換;若 y軸坐標(biāo)轉(zhuǎn)換結(jié)束,則重新回到等待中斷模式, 然后將坐標(biāo)值寫入 環(huán)形緩沖區(qū),并環(huán)形等待隊列中的進(jìn)程。將 ADC觸摸屏控制 寄存器 ADCTSC的第 8位設(shè)為 1,使得筆抬起也能產(chǎn)生中斷信號。 將修改后的觸摸屏驅(qū)動加入 Linux內(nèi)核,重新編譯下載,觸摸屏便能將信號 送給 Linux系統(tǒng)了。 2. 3. 6準(zhǔn)備功能層軟件開發(fā) 工作進(jìn)行到這里,硬件平臺及底層的軟件開發(fā)基本完成,可以開始準(zhǔn)備應(yīng)用 層及功能層的軟件設(shè)計開發(fā)了。為了減小開發(fā)及調(diào)試的難度,本文所設(shè)計的系統(tǒng) 以識別0— 9十個阿拉伯?dāng)?shù)字為主要目標(biāo),在實(shí)現(xiàn)基本的阿拉伯?dāng)?shù)字辨別的基礎(chǔ)上 再考慮擴(kuò)充識別對象的范圍。手寫辨別程序最終目的是在 ARM. Linux平臺運(yùn)行, 其中邏輯辨別模塊需要在PC. Window平臺上編程并測試,然后將完成的模塊嵌入 主程序,移植到 ARM. Linux平臺下。 Qt的一個重要特點(diǎn)就是它的跨平臺特性, 所有的 Qt庫函數(shù)都有 Windows和 Linux版本,用戶所寫的應(yīng)用程序基本不需要 改動就能夠在 Linux和 Window平臺移植運(yùn)行。得益于 Qt的這一良好特性,本文 18 碩十學(xué)位論文 所要編寫的大量應(yīng)用程序不需要考慮太多就能達(dá)到程序與硬件平臺的無關(guān)性,同 時在 PC和Linux上運(yùn)行。所有程序在編寫時不調(diào)用平 臺特有函數(shù),用純 C/ C++ 及 Qt庫完成,以減少硬件平臺的不同帶來的影響,減小軟件開發(fā)工作量。程序的 總體框架見圖 2. 5: 圖 2— 5程序總體結(jié)構(gòu) 本文的工作路線如下:先設(shè)計并實(shí)現(xiàn)圖像預(yù)處理模塊,然后利用此模塊在 PC 上將測試用圖像文件轉(zhuǎn)換成標(biāo)準(zhǔn)的數(shù)組,作為下一模塊的輸入。然后在 PC上設(shè) 計并實(shí)現(xiàn)圖像識別邏輯模塊,將上一步轉(zhuǎn)換后的圖像輸入此模塊,調(diào)試并得到理 想的結(jié)果。當(dāng)邏輯判斷滿足預(yù)定要求時,將此模塊變成代碼,嵌入到 Qt的主程序 當(dāng)中,最后實(shí)現(xiàn)觸摸屏動作處理模塊,形成 從觸摸屏動作生成圖像再變成歸一化 數(shù)據(jù)最后到自動識別的程序流程,移植到ARM. Linux平臺上完成數(shù)字字符識別功 能。 19 基于 ARM9的手寫體數(shù)寧識別技術(shù)研究與實(shí)現(xiàn) 第 3章手寫體數(shù)字識別系統(tǒng)圖像預(yù)處理的研究與實(shí)現(xiàn) 3. 1跨平臺編程環(huán)境 Qt 3. 1. 1選擇 GUI作為交互方式 在系統(tǒng)操控方式中,業(yè)界一直存在著 2大流派,既 CLI(Command Line Ins truction)與 GUI(Graphic User Interface GUI)。 CLI的意思是使用命令行及指令 輸入的方式與計算機(jī)系統(tǒng)發(fā)生互動;而 GUI是指通過圖形、對話框等模式與操作 者完成信息交互,如普通個人電腦上裝的 windows操作系統(tǒng)就是 GUI形式的代 表者。不可否認(rèn),在當(dāng)今的信息科技條件下,只有 CLI方式才能最大可能的與計 算機(jī)系統(tǒng)完成信息的交互,真正的獲得“完全的系統(tǒng)控制權(quán) ,因此大多數(shù)科技開 發(fā)人員都使用 CLI方式以獲得更大的操控自由度。本文開發(fā)所使用的系統(tǒng)平臺是 Linux, Linux的強(qiáng)項在于其內(nèi)核的穩(wěn)定、強(qiáng)大、高效。與 windows平臺對比,圖 形界面 從來不是 Linux的優(yōu)勢所在。但是對于普通的使用者以及一般的外圍開發(fā) 人員,圖形 GUI方式由于其簡單直觀,無疑更容易被接受,甚至在某些場合,圖 形操作方式是必須的。 windows操作系統(tǒng)的成功與廣泛流行,并不是由于其技術(shù) 的領(lǐng)先性,很大程度上是其圖形化的操作界面受到大量的普通計算機(jī)使用者的青 睞而造成的。因此一個系統(tǒng)要走入普通用戶手中,一個友好直觀的GUI系統(tǒng)是不 可缺少的。本文所要完成的字符識別功能與圖形密切相關(guān),目標(biāo)使用對象為普通 的操作人員,因此使用 GUI方式更能滿足要求。 3. 1. 2主流的嵌入式 GUI 在嵌入式系統(tǒng)硬件性能不斷提高的今天,圖形用戶界面的地位變得越來越重 要,它的存在為使用者提供了友好便利的人機(jī)界面。但是嵌入式 GUI與桌面機(jī)系 統(tǒng) GUI又有區(qū)別,主要是因為嵌入式系統(tǒng)硬件資源一般有限而 GUI操作又屬于 比較消耗資源的一類操作,因此嵌入式 GUI要求簡單、直觀、可靠、占用資源小 并且反應(yīng)迅速。同時,嵌入式系統(tǒng)不像標(biāo)準(zhǔn)的 PC那樣結(jié)構(gòu)統(tǒng)一,各個硬件系統(tǒng) 之間有較大的差異性及特殊性,因此嵌入式 GuI需要具備高度可移植性與可裁剪 性,以適應(yīng)不同的硬件條件和使用需求。支持嵌入式 Linux操作系統(tǒng)的圖形類 庫 和開發(fā)系統(tǒng),常見的開源版本有以下三種【 49】: (1)MicroWindows:著名的開放源碼的嵌入式 GUI軟件,它的設(shè)計宗旨是針 對體積小的裝置建立一套先進(jìn)的視窗環(huán)境。 MicroWindows能夠在沒有任何操作系 統(tǒng)或其他圖形系統(tǒng)的支持下運(yùn)行,對裸顯示設(shè)備進(jìn)行直接操作。因此, MicroWin dows顯得十分小巧,便于移植到各種硬件和軟件系統(tǒng)上。 20 碩十學(xué)位論文 (2)MiniGUI:國內(nèi)做得比較好的自由軟件項目之一,它可以在以 Linux為基 礎(chǔ)的應(yīng)用平臺上提供一個簡單可行的 MiniGUl支持系統(tǒng)?!靶 笔?MiniGUI的特色, MiniGUI可以應(yīng)用在電視機(jī)頂盒、實(shí)時控制系統(tǒng)及掌上電腦等諸多場合。由于這 是由中國人自己開發(fā)的 GUI系統(tǒng),所以對中文的支持最好。 (3)Qt/ Embedded:由挪威著名的 Trolltech公司開發(fā)的面向嵌入式系統(tǒng)的 Qt 版本。Qt/ Embedded類庫完全采用 C++封裝,豐富的控件資源和較好的可移植性 是 Qt/ Embedded最為優(yōu)秀的一方面。它的類庫接口完全兼容于同版本的 Qt. x 11, 使用 X. windows下的開發(fā)工具可以直接開發(fā) 基于 Qt/ Embedded的應(yīng)用程序 GUI 界面。 3. 1. 3 Qt的特點(diǎn) Qt被設(shè)計成跨平臺的開發(fā)工具,由 Trolltech最初創(chuàng)建并用于 LinuX臺式機(jī)。 它支持各種帶有 UNIX核心特點(diǎn)的系統(tǒng),其中就包括 Linux系統(tǒng),同時 Qt還支持 當(dāng)今普通計算機(jī)上流行的 Windows視窗系統(tǒng)。 Linux上最流行的桌面環(huán)境 KDE 就是用 Qt編寫的,從 KDE桌面可以看出 Qt提供的是一個重量級的圖形開發(fā)環(huán) 境,使用它可以開發(fā)出藝術(shù)級的 GUI效果。 。 Qt/ Embedded以原始 Qt為基礎(chǔ),做了許多富有特色的調(diào)整 ,使之更加適用于 嵌入式環(huán)境。 Qt/ Embedded進(jìn)一步
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1