基于手机热点传输的微型光谱仪系统研究

2021-03-09 09:19孙中懿王方欢毕宗杰崔子浩付石友田兆硕
激光与红外 2021年2期
关键词:光谱仪像素点热点

孙中懿,王方欢,毕宗杰,崔子浩,付石友,田兆硕

(哈尔滨工业大学(威海)船海光电装备研究所,山东 威海 264209)

1 引 言

传统光谱检测系统一般由光谱采集系统和基于PC平台的光谱数据处理软件两部分组成,由于系统需要计算机进行处理显示,给户外使用带来了不便[1-3]。适应各种工况的便携式微型光谱仪有效弥补这一缺点,是光谱仪市场的一个重要发展方向。微电子技术的发展使得光谱仪器微型化研究成为可能,在光谱采集和实时处理相结合的基础上,形成集成化、微型化以及智能化的光谱仪已经成为微型光谱检测设备领域的研究热点[4]。智能手机结合光谱仪的使用方法是光谱检测技术的新手段,是实现光谱仪器实时性及智能化的有效途径。

一般情况下,微型光谱仪与智能手机进行连接的方式有两种,一种为USB连接,另一种为无线连接。USB连接方式需光谱仪通过数据线连接到智能手机,对设备底层驱动的要求高,由于存在连接线,设备较为繁琐不利于远距离的数据传输。而无线连接方式一般采用较为成熟的蓝牙或WiFi,但蓝牙协议较为繁琐,其传输速率和稳定性易受影响[5],因此基于蓝牙方式传输的微型光谱仪在数据传输速率、传输距离、检测速度以及连接稳定性等方面的存在不足之处,不利于高速便携式光谱检测设备的发展。采用WiFi连接需要光谱仪开启自身WiFi,可能被其他移动设备连接,容易造成信息泄露安全性差[6],且手机端开启WiFi后无法使用移动网络连接到外部网络,因此不方便采用此连接方式。

由于移动热点网络能够有效地提高无线资源的利用率、能够在户外或者没有网络的地方上网并实现恶劣无线环境下的通信,所以在近几年受到了学术界和工业界的广泛关注[7]。目前大部分智能手机自带开启WiFi热点功能,这给光谱仪数据无线传输提供了新的思路。

本文利用手机热点进行微型光谱仪与手机间通信,光谱仪无线模块可以自动连接设置好的手机热点。结合Open WRT系统及集成开发环境Android Studio完成了系统数据传输处理及显示的功能,该系统能够有效弥补传统光谱检测系统携带不便的不足,通过无线热点传输方式保证了数据传输的速率和可靠性,避免了有线连接带来的不便,能够实时处理显示光谱仪采集的光谱数据,这对于后期研发便携式、微型化及智能化一体的光谱检测系统具有一定的意义。

2 系统整体结构设计

基于手机热点传输的微型光谱仪主要由进行光谱数据采集的微型光谱仪硬件和进行光谱显示的手机端组成,二者通过手机热点方式进行数据传输和控制,系统整体结构如图1所示。

被测物体发出的信号光通过光谱仪外壳的SMA标准接口进入分光系统,再经凸透镜将光信号聚集到CCD进行数据采集成像,CCD将采集到的图像通过Open WRT无线模块发送到手机端,手机端可以对光谱采集进行启停控制并进行光谱数据处理和图像化显示。

整个光谱仪通过充电电池给Open WRT无线模块和CCD进行供电,并有相应指示灯进行电量指示,也可以通过USB对充电电池进行充电和系统供电。

图1 微型光谱仪系统结构图

3 微型光谱仪硬件系统设计

微型光谱仪主要进行光谱信息采集,并通过Open WRT无线模块将光谱图像发送到手机端。

3.1 Open WRT无线模块设计

Open WRT无线模块是基于Atheros AR9331处理芯片设计的WiFi核心模块,支持Open WRT操作系统,主要技术参数如表1所示,核心模块还引出USB、UART和WiFi天线等接口方便外设接入。

表1 WiFi核心模块主要技术参数

手机端和Open WRT无线模块连接分为WiFi和热点两种,随着云存储及大数据的发展,光谱数据上传到云端数据库成为未来发展的趋势。二者使用WiFi连接时手机端不能够使用移动数据连接到外部网络,而二者采用热点连接方式时手机端可以使用移动数据访问外部网,因此我们手机端和光谱仪采用手机热点连接方式,必要时可以将光谱数据传入云端数据库。

设置时首先打开手机端移动热点,设置热点的网络名称和密码,然后登录Open WRT系统搜索附近的无线网,找到手机端热点网络并加入。设置完成之后,Open WRT系统启动后会自动识别并连接这个移动端的热点。此时手机端不仅能够通过局域网的IP访问Open WRT无线模块,还可以使用移动数据访问互联网。

3.2 光谱图像获取及传输设计

光谱图像的获取选择的是CCD成像模块,其支持Windows和Linux操作系统,免驱适用于Open WRT系统,图像分辨率为1280×720。CCD成像模块与Open WRT无线模块使用USB的连接方式进行连接,成像模块将光谱数据通过MJPG图像格式传输到无线模块。Open WRT识别光谱图像主要是通过mjpg-streamer软件包进行实现,mjpg-streamer软件包工作流程如图2所示。获取的光谱图像通过TCP协议以JPEG数据流形式传到手机端,进而达到传输图像数据的目的。

图2 mjpg-streamer软件包工作流程图

4 基于Android的手机端软件设计

Android设备处理能力强,数据传输接口完善,便携性强,应用广泛[1,8],因此整个系统采用Android手机作为数据处理与显示部分。手机端和光谱仪通过手机的热点网络进行交互,接收光谱仪采集的光谱数据并将光谱数据进行图形化显示。

4.1 手机端与光谱仪的连接控制

打开热点的手机相当于路由器,光谱仪无线模块作为客户端,获取热点手机的IP建立Socket连接,双方进行通信。由于手机端和光谱仪距离影响和网络状态的不稳定导致与Open WRT无线模块在建立Socket连接时的时间不是固定值,对数据传输和控制造成了一定的影响。经过测试,二者正常的连接时间为30 ms左右,但是也会出现连接时间为1400 ms左右的情况。为了解决连接时间不固定的问题,在进行连接时,设定每次连接时间最高为80 ms,如果超过该时间则重新进行连接。由于连接超时是个别情况出现,所以最多连接三次就能建立连接,因此手机端和无线模块的最多连接时间为240 ms左右。整个Socket连接流程如图3所示。

图3 Socket连接流程图

4.2 光谱图像的接收和处理

因为光谱图像采用的是网络传输,因此首先要在Android Manifest.xml声明WiFi开发权限,使用Wifi Manager获取当前网络的地址,判定当前网络状态是否已经和无线模块相连接。

Android SDK对HTTP提供了支持,提供了HttpURL Connection的标准Java接口。HttpURL Connection实现简单的基于URL请求的相应功能。通过访问对应的URL地址获取到光谱图像的输入流数据,再将输入流数据转化为Android端可处理的位图信息。

Android移动端使用getPixels方法提取Bitmap位图数据中的各像素值,并将像素点的信息依次保存在数组中。然后分别提取数组中每个像素点的RGB分量,根据公式(1)进行移位运算可以将每个像素点的RGB值转化为灰度值[9]。

gray=(R·38+G·75+B·14)≫7

(1)

其中,gray为像素点的灰度值;R,G,B分别为该像素点红、绿、蓝分量的值。

最后将转化的灰度值信息保存在长度为像素点数的数组之中,按照上述过程取得三帧光谱图像的灰度值信息,并按照叠加平均法将三组灰度值取平均得到降噪之后的灰度值。并将叠加平均降噪之后的灰度值信息保存,以便后期处理。

4.3 光谱数据图形化显示

本系统最终将接收处理后的光谱数据以图形化形式直观表示,方便进行观察和数据分析。本系统最终使用折线图形式表示光谱数据的规律,因此选用AChart Engine绘制工具库,其结构如图4所示。AChart Engine支持绘制折线图、饼图、散点图、柱状图等,绘制的图表支持水平和垂直两种展示方式并且可以自定义很多其他功能。此外AChart Engine支持建立一个view对象,或者建立一个用于启动Activity的Intent。

图4 AChart Engine结构图

折线图构成需要五项重要元素,XY Multiple Series Renderer用于整体折线图设置,包括设置坐标轴外边距、X轴和Y轴最大值、坐标轴内部及外部颜色、显示形式和缩放比例等;XY Series Render用于设置光谱曲线,包括曲线颜色、点的形状、是否显示数值等;XY Multiple Series Dataset用于所有数据的存放并通过XY Series对象来提供绘制折线点集合数据。XY Multiple Series Renderer和XY Multiple Series Dataset传入Chart Factory后,调用get Line Chart View(Context context,XY Multiple Renderer,XY Multiple Series Dataset)方法来进行折线图的显示。最终显示的是以像素点为横坐标,相对强度为纵坐标的折线图表示的光谱曲线。

5 系统测试

为了测试整个系统的可行性和可靠性,选择日光灯和He-Ne激光及背景作为测试项目,测试系统可行性并对传输距离和传输速度进行了测试,测试用Android手机为魅蓝Note6。

首先测试的是日光灯,测试实验图如图5所示,显示曲线如图6所示,可以看出测试结果有三个明显的特征峰。

图5 日光灯测试实验图

图6 手机显示日光灯像素点-相对强度曲线

He-Ne激光及背景测试如图7所示,实验结果如图8所示,可以看出有一个明显的特征峰。

为了测试本系统的处理性能,在光谱图像显示部分通过对接收的每帧图像定义起止位标识来实时计算数据传输的帧频,通过多次试验可知,实际测量处理速度为8 f/s。在室内室外多处进行连接距离的测试传输控制距离,最远传输控制距离均可达13 m以上。

图7 He-Ne激光及背景测试图

图8 手机显示He-Ne激光及背景像素点-相对强度曲线

6 结 论

针对目前微型光谱仪的发展趋势,基于Open WRT系统和Android系统设计了一种手机热点传输的微型光谱仪系统。该系统能够应用到目前主流的安卓手机上,具有良好的兼容性,通过手机热点形式实现了光谱仪与手机端的数据传输。光谱图像传输速率为8 f/s,满足传输条件的距离最远可达13 m以上,光谱曲线图形化显示经测试基本满足条件。整个系统具有传输速率快、成本低、处理能力强、易于携带等优点,适合室内外实时测量,有一定的实际应用价值。

猜你喜欢
光谱仪像素点热点
热点
基于局部相似性的特征匹配筛选算法
热点
基于5×5邻域像素点相关性的划痕修复算法
结合热点做演讲
基于canvas的前端数据加密
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
中阶梯光栅光谱仪自动化波长提取算法
医用显微成像光谱仪的光谱定标技术
双面镜结构成像光谱仪的改进及性能分析