1 | 软件暂不公开 |
1 简介
本软件是一款专业的磁流体形态分析系统,通过计算机视觉技术自动处理视频文件,可精确识别液滴轮廓、测量左右接触角、计算液滴高度与宽度,并基于用户设定的标尺进行实际尺寸校准;软件提供友好的用户界面,支持区域选择、多视图显示和实时处理进度,同时将分析结果以视频和CSV数据格式保存。
图1 软件界面示意图
本软件采用基于PyQt5的多线程架构设计,实现了视频处理与用户界面的高效分离;核心算法使用OpenCV实现,包括二值化阈值处理、Canny边缘检测以及坐标系统定位算法,通过检测液滴轮廓上的关键点位坐标实现接触角度的精确计算;软件引入了图像ROI选择机制和标尺校准系统,通过像素与实际尺寸的线性映射关系实现测量结果的标准化;数据处理流程包括帧提取、图像预处理、边缘检测、坐标计算和参数输出,所有处理结果通过Pandas数据框架进行存储和导出;此外,软件集成了实时数据可视化与多视图切换功能,支持同步显示原始图像、边缘检测结果和标注测量结果的输出图像。
2 系统软硬件要求
本软件要求输入视频具备高质量的采集条件:首先,视频必须保持画面纯净无干扰,确保液滴轮廓清晰可见;其次,液滴的支撑平台需与地面平行,以避免测量误差;同时,可以采用LED灯从后方向前打光,形成背光效果以最大化液滴与背景的对比度;此外,为实现精确的尺寸校准,需在液滴附近放置圆柱形标定器作为参照物,且标尺的实际尺寸需预先测量并输入系统。这些条件的配合能确保软件算法正确识别边缘轮廓,提供准确的角度和尺寸测量结果。
图2 视频采集结构
操作系统:Windows 10/11、macOS 10.14以上或Linux发行版
处理器:Intel Core i5/AMD Ryzen 5 或更高级处理器(推荐多核心处理器)
内存:8GB RAM(处理高分辨率或长视频时建议16GB)
存储:100GB存储(SSD存储设备可提供更快的视频读取速度)
显示:1920×1080及以上分辨率显示器,用于清晰查看分析结果
3 软件运行说明
本软件为单一的可执行文件,用户下载对应平台的可执行程序,无需安装,双击即可运行。
4 系统操作说明
本软件分为“文件设置”,“区域选择”和“处理控制”三个区域。首先,在”文件设置”中选择输入视频和输出目录;其次,通过”区域选择”功能框选液滴区域(ROI)并标记圆柱标定器位置,填入其实际直径(mm);最后,在”处理控制”部分点击”开始处理”启动分析,可通过视图切换按钮查看不同处理效果,处理完成后结果将保存为CSV数据和带标注的视频。操作界面直观,全程可通过日志窗口监控处理状态。
4.1 文件设置
文件设置包含二个区域,如图3所示。在视频输入中,点击 按钮选择待识别视频,在输出设置中,点击
按钮选择数据表和视频的输出路径。视频输入设置完毕后会显示视频的名称、分辨率、FPS,时长和总帧数的信息,输出设置完毕后会显示输出的路径。同时软件右侧会加载视频的第一帧作为参考。
图3 文件设置视图
4.2 区域选择
在区域选择中需要分两步完成设置,如图所示。
图4 区域选择视图
首先,点击按钮会弹出新的窗口窗口会显示选取视频的第一帧。在需要识别的液滴处,按住鼠标左键并拖动,框选完整液滴后松开左键,按下 Enter 或 空格键 即可完成选取(如图5所示)。
图5 选择识别区域
完成识别区域的选择后,点击按钮会弹出新的窗口(如图6所示)此时,同样会显示选取视频的第一帧。请在标尺所在区域按住鼠标左键拖动,框选完整标尺后松开左键,按下 Enter 或 空格键 完成选取。
图6 选择标尺区域
选取完成后,在文本框输入标尺的实际直径(默认值为 6.95 毫米)
完成以上操作后,软件会显示识别区域和标尺的具体坐标,并在右侧用 绿色 和 蓝色 方框分别标识识别区域和标尺区域(如图 7 所示)。
图7 区域选择的设置
4.3 处理控制
处理控制界面包含 5 个视图,分别是:处理操作、处理进度、预览设置,处理日志和视频显示,如图8所示。
图8 处理控制视图
4.3.1 处理操作
在处理操作视图中,点击 按钮可启动视频文件的处理,点击
按钮可随时中断处理。
4.3.2 处理进度
处理进度 视图会实时显示处理的完成度。当进度达到 100% 或用户手动停止处理时,软件会自动输出处理后的数据和视频。
图9 处理进度
4.3.3 预览设置
在预览设置视图中,可选择以下三种预览模式:
• 输出视图(图10):展示处理完成后的视频画面,包括原始输入视频及识别到的信息,如 左接触角、右接触角、液滴宽度和液滴高度。
• 边缘视图(图11):用于观察液滴轮廓,帮助验证识别的准确性。
• 识别视图(图12):仅显示识别区域,并标注识别出的液滴信息,包括 左接触角**、右接触角、**液滴宽度和液滴高度。
图10 输出视图
图11 边缘视图
图12 识别视图
4.3.4 处理日志
处理日志视图会实时显示系统执行的操作,用户可通过鼠标拖动滚动条查看历史记录,以便在识别错误时进行参考。如图13所示。
图13 处理日志视图
5 识别数据的输出
当处理进度达到 100% 或用户手动停止处理后,软件会自动将处理结果输出到 用户选定的路径,包含以下两类文件:
1.CSV文件:记录处理过程中的数据信息,包括时间(Time)、左接触角(Left Angle)、右接触角(Right Angle)、液滴高度(Height)和液滴宽度(Width)。如表1所示
Time (s) | Left Angle | Right Angle | Height | Width |
---|---|---|---|---|
0 | 59.04 | 57.99 | 1.7 | 5.47 |
0.04170833 | 59.04 | 54.46 | 1.7 | 5.47 |
0.08341667 | 59.04 | 57.99 | 1.7 | 5.47 |
… | … | … | … | … |
表1 数据格式示例
2.视频文件:在原始视频的基础上绘制识别到的数据信息,如图14所示。
图14 输出视频中的一帧