Page 83 - 《中国医疗器械杂志》2026年第1期
P. 83
Chinese Journal of Medical Instrumentation 2026年 第50卷 第1期
临 床 医 学 工 程
1)视频图像预处理:通过OpenCV库调用
( findContours函数来获得较完整的轮廓,然后筛选
VideoCapture函数捕获视频并按帧保存,再对图像 横线,选择最长的横线线段,终点坐标 (x , y ) 为
2
2
进行逐帧处理。预处理主要包括采用加权平均法 最长线段的终点坐标,采用迭代竖线刻度线法来查
进行图像灰度化;使用Canny算子进行边缘检测, 找放射源坐标。
低阈值为400,高阈值为450;为了放射源位置的准
确性,实验需要将获取的图像进行角度校正,具体
图4 截取矩形区域
的处理方法是获取图像的长和宽,指定图像中心为
Fig.4 Diagram of intercepting a rectangular area
旋转中心,利用cv2.getRotationMatrix2D计算得到
图像的二维旋转矩阵,利用cv2.warpAffine仿射变 line_x = line[0][0] (2)
换函数来实现旋转图像,图像对比如图2所示。 line_y = line[0][1] (3)
计算距离d,采用迭代公式(4):
√
2
2
2
d = (x −line_x) +(y −line_y) 2 (4)
如果距离比当前最近的刻度线更近,则更新最
(a) 旋转校正前 (b) 旋转校正后 接近的刻度线和距离,直到找到最近刻度线位置,
(a) Before rotation correction (b) After rotation correction 将其认定为放射源位置,并记录。放射源位置坐标
图2 利用旋转矩阵校正前后图像对比 捕捉如图5所示。
Fig.2 Comparison of images before and after correction using rotation
matrix
旋转矩阵:
[ ]
cosθ −sinθ
M(θ) =
sinθ cosθ
[ ] [ ]
1 0 0 −1 注:右下角蓝色线段为最接近放射源顶端的刻度线,即放射源位置坐
= cosθ +sinθ 标信息。
0 1 1 0
( [ ]) 图5 膨胀和腐蚀操作处理后放射源位置坐标捕捉
0 −1
= exp θ (1) Fig.5 Capture of radioactive source position coordinates after dilation
1 0 and erosion operations
(
2)基于LSD算法和Numpy库提取刻度线并
( 4)分析放射源停留时间:如果当前放射源
储存刻度线位置坐标。
位置发生了变化,则计算停留时间,更新当前位置
LSD算法是一种线段检测算法,由GROMPONE
对应的起始帧(第m帧)及放射源离开该位置的
VON GIOI等 提出,相较传统的霍夫变换线段检 终止帧(第m+t帧)根据视频帧率、帧位置坐标计
[14]
测算法,LSD算法可以在线性时间内获得亚像素级 算出每个位置停留时间,过滤过小的停留时间,消
精度的检测结果,适用于任何数字图像,无需调试
除及融合“噪声”帧,得到每个位置停留时间
参数。其变换提取速度远快于霍夫变换提取速度,
( T=T -T )。
具有较强的鲁棒性。实验的目标是刻度线,所以 m+t m
1.3 肉眼观察法
在检测线段过程中会设定限制条件。为了筛选出接
直接用肉眼观察录制好的视频并判断放射源位
近垂直的线段(以水平轴为基准,90°为完全垂
置。用秒表法测量驻留位置每个驻留点时间误差和
直),降低噪声干扰,将限制检测线段的角度设置
重复定位每个驻留点时间误差;用视频截取法测量
为75°~105°,刻度线有3种长度,实验用Numpy分
累积驻留定位每个驻留点时间误差。
组储存,LSD算法提取刻度线如图3所示。
1.4 统计分析
本研究使用SPSS 26.0版本统计分析软件,对
图3 LSD算法提取刻度线 实验所得的放射源驻留点位置和时间结果计算平均
Fig.3 Extraction of scale lines by LSD algorithm 值和标准差,将视觉分析法与肉眼观察法所得误差
( 结果,分别与实验设定基准值进行比对,误差值更
3)分析放射源运动位置:使用灰度化函数
将图像转化为16位灰度图像,检查坐标顺序,截取 接近基准值的方法,其检测精度更高。对本研究机
矩形区域,如图4所示。使用膨胀和腐蚀操作填充 器视觉分析方法与肉眼观察法测量值进行成对样本
空隙和消除干扰,使用Canny边缘检测算子和 t检验,P<0.05为差异有统计学意义。
79

