姓名:张嘉眙 学号:19020100136 学院:电子工程学院
转自:https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CJFD&dbname=CJFDLAST2021&filename=HSGD202102006&v=SuDPmi3cSmxq8n5fdxQ%25mmd2FuoTt9me4AgXClJByNmCUtHUUgzw%25mmd2BylkiaEXffPrVl%25mmd2BMV
【嵌牛导读】基于Linux的视频网络嵌入式控制系统设计
【嵌牛鼻子】基于Linux的视频网络嵌入式控制系统
【嵌牛提问】Linux的视频网络嵌入式控制系统是怎样设计的
【嵌牛正文】
信息处理课程(如“数字图像处理”“语音数字信号处理”等)的讲授难度大,要求教师不仅具备信息处理和算法知识,还要有从事硬件系统的开发经验,以便通过硬件平台实践,促进学生理解信息处理理论、流程和方法。可见,信息处理课程的教学注重理论与实践相结合,具有基础性、综合性和实践性的特点。当前国内尚未形成统一的信息处理教学平台,各类信息处理平台相互独立,兼容性差。高校在开设信息处理相关课程时困难较多,主要表现在以下2个方面:一方面,几乎所有信息处理实验平台厂家均过分注重实验平台的外观设计及功能,配备了很多演示性实例,而缺乏信息处理的开发过程实例,导致学生只能简单操作这些实验实例,无法真正理解课堂上所学的信息处理理论知识;另一方面,一些信息处理实验平台厂家对某些并不涉及知识产权的源代码进行了封装,做成库文件提供给学生使用,导致教师和学生无法了解底层的信息处理过程。在此类平台上教学,教师无法讲解信息处理的软件架构,学生也无法编写或添加信息处理代码。
针对以上问题,设计了一种基于嵌入式Linux信息处理的开放性教学平台。可同时接入多路图像、语音和简单信号,方便裁剪和扩展功能,且代码完全开源和开放,便于教师和学生编写和修改代码。
1 信息处理开放性教学平台设计
1.1硬件设计
为解决信息处理的兼容性问题,设计的教学平台硬件系统架构如图1所示。基于嵌入式Linux系统的教学平台的核心处理器为imx6,其主频可达1.2 GHz。imx6集成了CAN、千兆网等功能模块。输入模块中包括了图像信号、语音信号以及简单信号(如温度、红外等)输入。输出模块包括了WiFi信号、I/O信号和4G/V2X 信号输出。
图像信号输入模块通过千兆网口和嵌入式Linux教学平台进行数据通信,保证了图像数据的实时性。语音信号输入模块通过USB和嵌入式Linux教学平台进行连接。针对不同的基本信号输入模块,嵌入式Linux教学平台留有多种通信的数据输入接口,例如I/O,UART,CAN 和V2X无线通信接口。WiFi信号输出通过UART和嵌入式Linux教学平台进行连接,平台将信息处理的结果通过WiFi发送到平板及PC的显示端。I/O信号输出模块输出LED、继电器控制等一些高低电平控制信号。系统中还保留了4G通信接口和V2X通信接口,保证了数据输出的多样性,可以和多种外部设备进行数据通信,提升了教学平台的兼容性。
1.2 软件设计
本信息处理开放性教学平台采用了嵌入式Linux系统架构,包括应用层、内核层和硬件层。同时,借鉴了Linux系统架构的特点,在嵌入式Linux的应用层进行教学平台应用程序架构设计。依据不同信息处理的功能要求,教学平台将模块独立和分离,以进程方式独立运行,方便平台功能的裁剪和扩展。教学平台应用层软件架构如图2所示,共划分为3层,分别是I/O Layer(输入输出层)、Service Layer(应用服务层)和Application Layer(应用层)。
输入输出层主要负责与外部设备进行通信,实现设备的输入和输出功能,同时为上层应用提供数据,并且模块能够根据接入的设备进行相应的功能裁剪和扩展。该层包括了图像信息服务、语音信息服务、I/O信息服务、WiFi信息服务、预留的接口服务。这些模块的主要作用是从相应的外部设备中获取数据,并进行一定的处理,为上层应用提供不同类型的数据。预留接口服务代表了一些可扩展的信息处理接口服务,根据不同的接口进行不同的程序设计,每个不同的接口服务都是一个独立的进程。
应用服务层主要包括输入数据处理和输出信息处理模块,主要负责对输入数据进行整合和处理,并将数据分发至应用层,同时为应用层提供数据发送的接口。数据处理模块包含了图像数据处理模块、语音信号处理模块、I/O数据处理模块。图像数据处理通过共享内存上传的视频流数据识别图像,将识别结果进行封装,并向上层应用层传输。语音信号处理模块和I/O数据处理模块的功能与图像数据处理逻辑类似。
2 教学案例设计与应用
为验证本平台的开放性,设计了“基于视频流信息处理”的课程设计案例,并应用在安徽工业大学电子信息相关专业中。同时,该案例涉及视频信息的编解码、网络通信及硬软件等知识,因而它也是电子信息工程及相关专业重要的综合实践课程内容。
2.1 教学案例设计
2.1.1 案例设计的价值
随着网络不断发展,视频传输的应用越来越广泛,但是由于原始视频信息占带宽很大,比如一段1 920×1 080的高清视频,其信息量在7.5 M/s左右,既不利于视频信息保存,也不利于视频信息传输。因此,研究视频流的编码、传输、解码及播放具有重要的应用价值。
2.1.2 案例设计的内容
1)总体设计方案。
查阅相关文献,理解视频流信息的概念、涉及的知识内容和应用现状,得出课程设计中的功能需求。依据功能需求,讨论并设计总体方案,熟悉本文的信息处理开放性教学平台的软硬件架构。
2) 基于信息处理开放性教学平台的嵌入式流媒体服务器的设计。
在开放性教学平台中设计视频信息的获取、打包和网络发送程序。
3) 基于H.264的播放器设计。
在PC接收端设计视频信息的解码及播放程序。
4) 测试验证。
完成整体的实时视频流的获取、发送、解码、播放、设计和测试,并满足实时视频的技术指标要求。
5) 设计报告。
依据设计内容,撰写内容结构清晰的设计报告,以使非专业人员也能读懂课程设计的框架。
2.1.3 案例设计的课程时间安排
该课程设计案例课程时间依据不同的专业可调。针对安徽工业大学电子信息工程专业课程的特点,将每组设计任务安排为“流媒体服务器设计”“H.264的播放器设计”“网络视频流文件的传递”“总体设计和测试”4个部分。课程设计实践安排共计4周,其中,开放性信息处理平台的熟悉和课题理解时间安排为1周,包括答疑和考核;设计与调试时间安排为2周,包括答疑和考核;设计报告和答辩时间安排为1周。
2.1.4 案例设计的评分标准
依据工程认证思想,本案例注重过程性考核,本案例分3部分评价:2次设计考核、1次答辩和实验总结报告。3部分占总分比例为4∶4∶2,且每部分不可为0分。
2.2 教学案例应用
2.2.1 方案设计
学生依据课程设计的功能需求,并结合开放性实验平台特点,教学案例的总体设计方案如图所 示。
在基于嵌入式Linux的开放性教学平台上运行流媒体服务器,通过RTSP(实时流传输协议)从海康网络摄像头中获取视频流数据,并通过教学平台的WiFi模块将视频流数据以UDP形式发送到后台监控平台中。后台通过WiFi接收视频数据流,经FFmpeg解码后放入解码链表,再通过SDL进行实时的视频播放。
2.2.2 总体测试
总体测试步骤为:首先在教学平台运行流媒体服务器程序,从摄像头获取视频流再通过UDP网络程序转发;接着运行PC端解码播放程序,显示视频信息。
2.2.3 教学效果
本教学案例涉及“视频信息的编解码”“网络通信”“数据结构”“嵌入式系统”“硬件和软件编程”等多个课程知识,因此是一个基于复杂信息处理的综合安全和电子信息工程工程认证的复杂工程性教学案例,不仅要求学生具备相关的专业知识,同时也锻练了学生解决实际应用问题的能力。基于教学平台的开放性,案例中各个部分都由学生自己完成。学生从低层到上层应用完全清晰,提高了学习兴趣。
3 结论
针对当前信息处理教学平台存在相互独立、兼容性和开放性差等问题,设计了一种基于嵌入式Linux信息处理的开放性教学平台,可同时接入多路图像、语音和简单信号。在应用层软件架构上采用分层架构,方便功能裁剪和扩展。平台代码完全开源和开放,便于教师和学生编写和修改信息处理代码。教学效果表明该平台具有较好的开放性和兼容性。