研究生: |
梁仁綜 Jen-Tsung Liang |
---|---|
論文名稱: |
基於嵌入式Linux核心之圖形介面移植與即時影像銜接串流控制系統開發 Graphic Interface Porting and Real-time Video Stream Stitching System Development on Embedded Linux |
指導教授: |
邱炳樟
Bin-Chang Chieu |
口試委員: |
徐敬文
Ching-Wen Hsue 黃忠偉 Jong-Woei Whang |
學位類別: |
碩士 Master |
系所名稱: |
電資學院 - 電子工程系 Department of Electronic and Computer Engineering |
論文出版年: | 2017 |
畢業學年度: | 105 |
語文別: | 中文 |
論文頁數: | 78 |
中文關鍵詞: | V4L subsystem 、嵌入式系統 、遠端監控 、Embedded Linux 、Linux Kernel |
外文關鍵詞: | V4L subsystem, Embedded system, Far-end Monitoring, Embedded Linux, Linux Kernel |
相關次數: | 點閱:215 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
從2007開始,嵌入式系統的發展歸功於在硬體上的突破,架設一個監控系統的硬體門檻因此降低;一個多影像裝置的串流平台開發可以在不同的領域提供整合應用。
本論文的目標是希望提供一個嵌入式多裝置監視控制平台設計方法,其在硬體上易於擴充,且移植性高,適用於不同的嵌入式Linux平台上,並期望用最少的系統資源來完成。
由於考慮到硬體的移植性及降低資源的使用量,僅使用一般小型嵌入式系統專用的圖形函式庫MiniGUI及一般Linux核心皆會支援的V4L子系統及uvc_class_driver。筆者首先分析linux的系統管理方法及開機起動流程,接著分析V4L2核心源碼詳述V4L2核心在底層與V4L2 platform driver、V4L2 driver的互動及記憶體緩衝分配,最後實作移植u-boot、Linux kernel、filesystem與MiniGUI核心至開發板,並利用系統程式將以上資源整合開發,在開發板上實現一個即時影像串流銜接遠端監控系統。
Since 2007, the growing trend of embedded system is due to the breakthrough on the hardware. Therefore, the hardware threshold of building a surveillance system was reduced. A multi-device streaming platform is able to provide integrated applications in the different domain.
The focus of this thesis is to provide a solution (which is flexible for hardware expansion, and has highly portability on different embedded Linux platform) for a general embedded multi-device supervisory control platform which is expected to be accomplished with less system resources usage.
Considering to the hardware portability and the reduction of resource usage, this research only uses V4L subsystem, uvc_class_driver which are supported in the general Linux kernel and MiniGUI (a graphic interface software core that specially-designed for small scale embedded system).
To start with, the author analyzed the system management and the kernel initialization of a Linux kernel. Next, the author detailed the memory assignment in V4L2 subsystem and the interactions among V4L2 core, V4L2 platform driver, and V4L2 driver by analyzing the V4L2 subsystem source code in kernel space. In addition, the author implemented the porting of u-boot, Linux kernel, filesystem and the MiniGUI core of the development board. Finally, the author, accomplished an integrated development with the resources above by using system program. The far-end real-time stream supervisory control system was realized on the development board.
參考文獻
[1]Xu Hu,Congfeng Jiang,Wei Zhang, Jilin Zhang, Ritai Yu, Changping Lv “An Event Based GUI Programming Toolkit for Embedded System”, IEEE Asia-Pacific Services Computing Conference, Dec. 2010, pp.625-631, doi:10.1109/APSCC.2010.115.
[2]Li Lo , Liang-Teh Lee , and Huang-Yuan Chang, “A Modified Interactive Oriented Scheduler for GUI-based Embedded Systems”, 8th IEEE International Conference on Computer and Information Technology, July 2008, pp.243-248, doi:10.1109/CIT.2008.4594681.
[3]IEEE(2015), Towards a Definition of the Internet of Things (IoT) Revision#1
[4]North America Intellectual Property Corporation issue 177, http://www.naipo.com/Portals/1/web_tw/Knowledge_Center/Industry_Economy/IPNC_170125_0703.htm
[5]Min Jin, Xiang Zhou, Peng Duan, Zefeng Tian, and Jihui Zhou , “The Design and Implementation of Embedded Configuration Software Based on Embedded-Linux”, International Conference on Computer Science and Software Engineering, Dec 2008, pp.98-101, doi:10.1109/CSSE.2008.640.
[6]Fang Hongping, Fang KangLing, “The Design of Remote Embedded Monitoring System based on Internet” International Conference on Measuring Technology and Mechatronics Automation, March 2010. pp.852-854, doi: 10.1109/ICMTMA.2010.48
[7]Liu Yang, Linying Jiang, Kun Yue, Heming Pang, “Design and Implementation of the Lab Remote Monitoring System Based on Embedded Web Technology” International Forum on Information Technology and Applications, uly 2010, pp.172-175, doi:10.1109/IFITA.2010.175
[8]Virendra.V.Shete, Niraj Ukunde, “Intelligent embedded video monitoring system for home surveillance”, International Conference on Inventive Computation Technologies, Aug. 2016, doi:10.1109/INVENTIVE.2016.7823191
[9]Thomas Gonnot, Jafar Saniie, “Embedded and modular video processing design platform”, IEEE International Conference on Electro/Information Technology, June 2014, pp.290-293, doi: 10.1109/EIT.2014.6871779
[10]Xiangdong Cai, Guangwei Ouyang, Xiaoqing Zhang, “The Design of Streaming Media Video Terminal Based on Embedded Linux”, 8th International Conference on Future Generation Communication and Networking, Dec. 2014, pp.68-71, doi:10.1109/FGCN.2014.24
[11]Chen Xiao, Wendong Wang, Nan Yang, Lifeng Wang, “A video sensing oriented speed adjustable fast multimedia encryption scheme and embedded system”, IEEE Computers, Communications and IT Applications Conference, Oct. 2014, pp.234-238, doi: 10.1109/ComComAp.2014.7017202
[12]Wenhua Cui1, Yuanyuan Chen, Chufan Sun, Xianlong “Design and implementation of embedded video monitoring system based on Tiny210”, Proceeding of the 11th World Congress on Intelligent Control and Automation,July 2014, pp.4651-4656, doi:10.1109/WCICA.2014.7053499
[13]林正緯(2015), 基於嵌入式Linux核心之3G網路移植與開發, 碩士論文
[14]Raspberry Pi 3 model datasheet, https://cdn.sparkfun.com/datasheets/Dev/RaspberryPi/2020826.pdf
[15]Raspberry Pi fundation(2014), Introducing-raspberry-pi-model-b-plus, https://www.raspberrypi.org/blog/introducing-raspberry-pi-model-b-plus/
[16]Wiki(2017), Raspbian, https://zh.wikipedia.org/wiki/Raspbian
[17]Shenzhen SUNSKY Technology, 720P Waterproof USB Endoscope Snake Tube Inspection Camera, https://www.sunsky-online.com/product/default!view.do?subject.itemNo=S-CA-0304
[18]Interface of Linux, Linux, http://slideplayer.com/slide/5262846/
[19]Robert Love。Linux Kernel Development 2nd Edition (2005), South India:TBS publishers’ distributors
[20]Operating System Concepts, Eighth Edition。Abraham Silberschatz, Greg Gagne, and Peter Baer Galvin。United States:John Wiley & Sons, Incorporated
[21]Loda chou(2017), Linux kernel memory management, http://loda.hala01.com/2017/06/androidlinux-kernel.html
[22]Virtual File System(2009), Linux VFS, http://akaseon.tistory.com/55
[23]陳鍾誠(2010), Virtual File System, http://sp1.wikidot.com/linuxvfs
[24]Christophersmart(2016), Building and Booting Upstream Linux and U-Boot for Raspberry Pi 2/3 ARM Boards, https://blog.christophersmart.com/
[25]Wiki(2014), Video4Linux, https://zh.wikipedia.org/wiki/Video4Linux
[26]鄭強(2011), 王者歸來-Linux驅動開發權威指南, 臺北,佳魁資訊股份有限公司
[27]Constantine Shulyupin, Interactive map of Linux kernel, http://www.makelinux.net/kernel_map/
[28]TWword(2013), MiniGUI, http://www.twword.com/wiki/MiniGUI
[29]Gustavo Duarte(2009), Anatomy of a Program in Memory, http://duartes.org/gustavo/blog/post/anatomy-of-a-program-in-memory/
[30]shadiyya(2011), Storage Allocator-“malloc”, https://fathimashadiyya.wordpress.com/tag/malloc/
[31]FOURCC organization, YUY2 yuv pixel format, http://www.fourcc.org/pixel-format/yuv-yuy2/