基于mlx90640的热成像python端应用开发
在python端驱动mlx90640,双线性插值算法完成图像放大,实现热成像。
文章目录
前言
本设计包含的设计子模块有:mlx90640传感器数据帧解析,伪彩色编码,双线性插值等。
一、Anaconda环境和三方库下载
1.anaconda下载
点击next
一直点击Next直到finish界面,两个选项不打勾
2.三方库下载
将压缩包中的opencv_python-4.5.5-cp39-cp39-win_amd64.whl 文件复制到如下路径的文件夹里
在电脑开始界面搜索栏中搜索Anaconda Prompt打开,如下图
输入pip install pyserial安装串口支持包
下面安装cv的支持库,一步步路由到软件安装目录中的site-packages,如下图。
cv支持库安装成功!
二、模块串口驱动下载
将模块连接电脑usb口,然后右击此电脑->属性->设备管理器->查看是否有SERIAL CH340
并将COM口的号码记下,后面使用,下图是COM4,不同的设备COM口号不一样。
若检测不到串口,则按如下提示安装串口驱动,检查到了则忽略。
三、热成像模块配置
双击打开官方包里的软件
串口号选择刚刚设备管理器记下的,波特率设置为115200,点击打开
若有热成像出现,则配置成功;
若无热成像出现,则换选其他波特率试试,总有一个能成功。把这个成功显示的波特率记下,方便后续使用。
到此可以关闭软件。以后也无需再配置,配置一次成功即可。
四、打开Spyder热成像工程
1.打开工程
在开始搜索栏中搜索spyder点击打开
点击Projects找到Open Projects点击,然后打开热成像工程
本工程一共两个.py文件,其中pro_main.py是主函数文件,mlx90640_app.py是自定义函数库文件,如下图。
2.串口号和波特率修改
点击mlx90640_app.py文件,将之前记录下来的COM口号和波特率设置的值在箭头指向的位置对应修改,如下图。
插好模块,检查好COM口号后,点击pro_main.py文件后,点击绿色三角形即可运行程序!
点击桌面下弹出的窗口即为热成像显示上位机
点击键盘Esc键才可以退出程序!!!!!!!!
重新点击绿色三角形又可运行程序!
五、子模块说明
1.串口检测模块serial_init
该函数定义在mlx90640_app.py文件
功能:检测模块是否连接
2.数据帧解析模块Frame_Rcg
模块的官方包里提供了模块的数据手册,其中有一帧数据的帧格式,按照帧格式在函数代码中先进行帧头识别,识别成功后,将后续接收的温度数据存放到MLX_RX_BUFF变量中,一个温度数据两字节大小。
3.温度数据插值扩充模块Data_Interp2d
由于模块的分辨率为32×24,数据量比较少,若直接将每个数据点复制成10×10遍,图像可变为320×240大小的,但这时的图像马赛克现象较为严重,视觉感受极差。因此,在模块里使用了interpolate.interp2d()函数进行图像数据的三次插值,达到的效果为图像平缓放大,较为柔和。
4.伪彩色编码模块Temp2RGB
实现温度数据到RGB格式的图像数据的转换
5. 文字叠加函数cv2AddChineseText
在spyder上运行mlx90640驱动实时显示热成像
技术支持联系方式
qq:1456804187
技术支持包含:项目工程+详细教程文档+开发指导。