簡易檢索 / 詳目顯示

研究生: 倪嘉德
Jia-De Ni
論文名稱: 基於鏈結串列之霍夫轉換直線偵測演算處理器之軟/硬體整合設計與實現
Hardware/Software Codesign and Implementation of a Linked-List-based Hough-Transform Algorithmic Processor for Line Detection
指導教授: 吳乾彌
Chen-Mie Wu
口試委員: 陳省隆
Hsing-Lung Chen
張勝良
Sheng-Lyang Jang
呂政修
Jenq-Shiou Leu
吳乾彌
Chen-Mie Wu
學位類別: 碩士
Master
系所名稱: 電資學院 - 電子工程系
Department of Electronic and Computer Engineering
論文出版年: 2018
畢業學年度: 106
語文別: 中文
論文頁數: 135
中文關鍵詞: 直線偵測霍夫轉換軟硬體整合設計現場可程式化邏輯閘陣列
外文關鍵詞: Line Detection, Hough-Transform, FPGA, Hardware/Software Codesign
相關次數: 點閱:232下載:19
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 本論文係有關基於鏈結串列之霍夫轉換直線偵測演算處理器之軟/硬體整合設計與實現,研究工作包含四大部分:
    第一部分為在分析演算法特性並考量嵌入式系統之記憶體資源限制後,發展出基於鏈結串列之霍夫轉換直線偵測演算法,並以C程式語言撰寫相關軟體,以驗證其功能之正確性。
    第二部分為設計與開發基於鏈結串列之霍夫轉換直線偵測演算處理器,其組成包括控制單元、來源資料記憶體、有效像素邏輯、座標暨記憶體位址產生器、霍夫參數產生器和基於鏈結串列之霍夫轉換直線偵測演算副處理器。最後,將上述硬體設計整合於可程式系統單晶片中,並實現於Altera FPGA開發板上。
    第三部分為實現與驗證基於鏈結串列之霍夫轉換直線偵測演算處理器軟/硬體整合設計,藉由NIOS II整合式開發環境撰寫相關軟體及驅動程式,並進行功能驗證與分析。
    第四部分為演算法及演算處理器執行效能之評估。
    整體而言,本論文的目標為研究基於鏈結串列之霍夫轉換直線偵測演算法及其演算處理器之軟硬體整合設計與實現,並將之實現於Altera FPGA開發板上,以證實其能顯著地改善原始演算法之執行及記憶體效能。


    This thesis is related to the hardware/software codesign and implementation of a linked-list-based Hough-transform algorithmic processor for line detection. The research includes four parts:

    The first part is to analyze the property of the algorithm and, after considering that the embedded systems have limited memory resources, a linked-list-based Hough-transform algorithm for line detection has been developed. Also the C language is used to write the program for implementing and verifying the proposed algorithm.

    The second part is to design and develop a linked-list-based Hough-transform algorithmic processor for line detection. This algorithmic processor consists of a control unit, a source data buffer, a valid-pixel logic, a coordinate-and-address generator, a Hough-parameter generator, and a linked-list-based Hough-transform algorithmic subprocessor. The algorithmic processor is integrated onto a SOPC-based chip and implemented on an Altera FPGA development board.

    The third part is about the hardware/software codesign of a linked-list-based Hough-transform algorithmic processor for line detection. Software and driver programs are developed by using the NIOS II integrated development environment to verify and analyze the function of this algorithmic processor.

    The fourth part is to evaluate the performance of the algorithm and the algorithmic processor.
    In conclusion, the goal of this thesis is: (1) to develop a linked-list-based Hough-transform algorithm for line detection; (2) to finish the hardware/software codesign and implementation of the HT-based algorithmic processor. Finally, by implementing this algorithmic processor on an FPGA development board, both the modified algorithm and the related algorithmic processor are proved to be more memory-efficient and have better performance.

    第 1 章 緒論 1 1.1 研究背景與動機 1 1.2 研究內容之相關架構 3 1.3 論文組織與概觀 5 第 2 章 基於鏈結串列之霍夫轉換直線偵測演算處理器之發展環境與驗證流程 6 2.1 SOPC-based軟/硬體整合設計簡介 6 2.2 MacOS Xcode 軟體開發環境 8 2.3 Altera SOPC-based軟體開發環境 8 2.3.1 NIOS II 整合開發環境(IDE) 8 2.3.2 NIOS II Command Shell 9 2.4 Altera SOPC-based硬體開發環境 9 2.4.1 NIOS II 嵌入式系統 9 2.4.1.1 NIOS II 處理器 11 2.4.1.2 Avalon Bus 匯流排 12 2.4.2 Quartus II FPGA 發展系統 17 2.4.2.1 Quartus II 開發環境 17 2.4.2.2 SOPC Builder 19 2.4.3 ModelSim HDL模擬系統 20 2.4.4 Altera Stratix II FPGA開發板 21 2.5 基於鏈結串列之霍夫轉換直線偵測演算處理器之開發流程與驗證架構 22 2.5.1 基於鏈結串列之霍夫轉換直線偵測演算處理器之硬體開發流程 22 2.5.2 基於鏈結串列之霍夫轉換直線偵測演算法之軟體驗證流程 23 第 3 章 基於鏈結串列之霍夫轉換直線偵測演算法之相關軟體設計 25 3.1 霍夫轉換直線偵測演算法之原理介紹 25 3.2 霍夫轉換直線偵測演算法之流程說明 27 3.3 圖形資料儲存方式與資料格式 29 3.4 基於鏈結串列之霍夫轉換直線偵測演算法之設計及流程說明 31 3.4.1 初始化及設定各項參數設定 36 3.4.2 影像檔案讀取副程式 37 3.4.3 前處理副程式 37 3.4.4 直線角度預判方法 38 3.4.5 基於鏈結串列之緊湊霍夫空間設計 42 3.4.5.1 基於鏈結串列之霍夫空間的資料結構 43 3.4.5.2 緊湊霍夫空間之初始化 46 3.4.5.3 緊湊霍夫空間之投票方法 46 3.4.5.4 緊湊霍夫空間中尋找區域最大值方法 50 3.4.6 合併鄰近直線參數 52 第 4 章 基於鏈結串列之霍夫轉換直線偵測演算處理器之硬體設計 56 4.1 演算處理器硬體設計簡介 56 4.2 演算處理器之硬體架構設計 57 4.3 演算處理器之記憶體設計 58 4.3.1 影像資料儲存格式 59 4.3.2 影像資料於內部記憶體之儲存方式 59 4.3.3 基於鏈結串列之緊湊霍夫空間之記憶體規畫 61 4.3.4 轉換結果之儲存方式 63 4.4 基於鏈結串列之霍夫轉換直線偵測演算處理器之硬體設計與實現 64 4.4.1 演算處理器結構簡介 64 4.4.2 系統控制單元之硬體設計 67 4.4.3 座標暨記憶體位址產生模組 70 4.4.4 來源資料記憶體模組 74 4.4.5 霍夫參數產生模組 75 4.4.6 基於鏈結串列之霍夫轉換直線偵測演算副處理器 77 4.4.6.1 基於鏈結串列之霍夫空間模組 78 4.4.6.2 投票控制器 79 4.4.6.3 尋找區域最大值控制器 82 4.4.6.4 合併鄰近直線參數控制器 84 4.5 基於鏈結串列之霍夫轉換直線偵測演算處理器之軟/硬體介面設計 86 4.5.1 控制及狀態暫存器資料格式設計 86 4.5.2 NIOS II 驅動程式介面設計 86 第 5 章 基於鏈結串列之霍夫轉換直線偵測演算處理器之功能驗證與效能測試 88 5.1 驗證與測試環境簡介 88 5.2 驗證與測試流程 89 5.2.1 軟體效能測試方法 89 5.2.2 軟/硬體整合設計效能評估方法 89 5.3 基於鏈結串列之霍夫轉換直線偵測演算處理器之結果驗證 91 5.3.1 原始影像測試樣本 91 5.3.2 經前處理之影像測試樣本 98 5.3.3 本演算法與一般性霍夫轉換之偵測結果比較 104 5.4 基於鏈結串列之霍夫轉換直線偵測演算處理器之效能比較 110 5.4.1 軟體記憶體用量分析 110 5.4.2 軟體執行速度分析 111 5.4.3 硬體設計執行速度比較 112 第 6 章 結論 114 參考文獻 115

    [1] P. V. C. Hough, Method and means for recognizing complex patterns, U.S. Patent 3,069,654, 1962.
    [2] P. V. C. Hough, Machine Analysis of Bubble Chamber Pictures, Proc. Int. Conf. High Energy Accelerators and Instrumentation, 1959.
    [3] R. O. Duda and P. E. Hart, Use of the Hough Transformation to Detect Lines and Curves in Pictures, Comm. ACM, Volume 15, pp.11-15, 1972.
    [4] P. E. Hart, How the Hough Transform was Invented, IEEE Signal Processing Magazine, 2009.
    [5] P. Mukhopadhyay and B. B. Chaudhuri, A survey of Hough Transform, Pattern Recognition, Volume 48, Issue 3, 2015.
    [6] J. Illingworth and J. Kittler, A survey of the hough transform, Computer Vision, Graphics, and Image Processing, Volume 44, Issue 1, 1988.
    [7] K. L. Chung, Z. W. Lin, S. T. Huang, Y. H. Huang, and H. Y. M. Liao, New orientation-based elimination approach for accurate line-detection, Pattern Recognition Letters, Volume 31, Issue 1, 2010.
    [8] T. Petković and S. Lončarić, An Extension to Hough Transform Based on Gradient Orientation, Proceedings of the Croatian Computer Vision Workshop, 2015.
    [9] R. C. Gonzalez and R. E. Woods, Digital Image Processing, Addison-Weslay Publishing Company, Inc, 1993.
    [10] L. G. Shapiro and G. C. Stockman, Computer Vision, Pearson, 2001.
    [11] M. D. Ciletti, Advanced Digital Design with the Verilog HDL, Pearson, 2011.
    [12] E. Horowitz, S. Sahni, and S. Anderson-Freed, Fundamemtals of Data Structures in C, Silicon Press, 2008.
    [13] M. Sonka, V. Hlavac, and R. Boyle, Image Processing, Analysis, amd Machine Vision, PWS Publishing, 1999.
    [14] D. G. Bailey, Design for Embedded Image Processing on FPGAs, Wiley Publishing, 2011.
    [15] Altera Corporation, NIOS Development Board Stratix II Editon Refrence Manual, 2007.
    [16] Altera Corporation, Nios II Classic Processor Reference Guide, edition NII5V1, 2016.
    [17] Altera Corporation, Quartus II Handbook, 2010.
    [18] Altera Corporation, Avalon Bus Specification Reference Manual, Altera Corporation, 2002.
    [19] Altera Corporation, SOPC Builder User Guide, 2010.
    [20] IEEE, IEEE Standard for Verilog Hardware Description Language, IEEE Standard 1364-2005, 2006.
    [21] 黃健軒,HT-based直線偵測兩階段演算處理器之軟/硬體整合設計與實現,國立臺灣科技大學碩士學位論文,民國100年。
    [22] 陳鶴仁,SOPC-Based 演算處理器驗證系統之硬體設計,國立臺灣科技大學碩士學位論文,民國95年。
    [23] 許博翔,多像素管線式單回合聯通物件標示演算處理器之軟/硬整合設計與實現,國立臺灣科技大學碩士學位論文,民國101年。
    [24] 龔柏元,基於FPGA單次迭代平行細線化演算法處理系統之設計與實現,國立臺灣科技大學碩士學位論文,民國104年。
    [25] 方毅瑋,兩階段區塊式圓形霍夫轉換演算處理系統之軟/硬整合設計與實現,國立臺灣科技大學碩士學位論文,民國107年。

    QR CODE