一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种内窥镜自主导航的实现方法及内窥镜装置

2022-09-15 06:44:48 来源:中国专利 TAG:


1.本发明涉及内窥镜技术领域。


背景技术:

2.内窥镜是一种常用的具有图像传感器、光学镜头、光源照明、机械装置等元件的检测仪器。由于内窥镜所应用的环境为不规则的复杂通道,如肠道等,故现有技术的内窥镜具有在不规则通道内自主导航的能力。
3.而在内窥镜自主导航的算法中,现有的内窥镜自主导航策略大多针对图像中最深/最暗区域的检测,即图像中最深/最暗的区域所在方向就是内窥镜需要转向的方向,但是这种方法并没有考虑到复杂通道内的不规则结构对照相机获取图像的影响。例如,肠道内的褶皱结构会对内窥镜运动产生的影响,这些褶皱结构距离镜头更近,如果不将此结构考虑在内,可能会造成穿孔等严重后果。


技术实现要素:

4.为解决上述问题,本技术提供一种内窥镜自主导航的实现方法,能够在复杂环境下提高内窥镜自主导航的效率。
5.本发明还提供了使用该内窥镜自主导航的实现方法的内窥镜装置。
6.为实现上述目的,本发明提供的内窥镜自主导航的实现方法可采用以下技术方案:
7.一种内窥镜自主导航的实现方法,其特征在于:
8.通过内窥镜末端的摄像头获取肠道内图像并且传输给计算机进行图像预处理;
9.对完成预处理的图像进行轮廓提取,获取图像轮廓;
10.若能够获取清晰的轮廓,首先设定轮廓面积阈值,判断封闭轮廓与开放轮廓,若封闭轮廓存在,内窥镜便直行,不进行转向;
11.当仅存在开放轮廓时,则对轮廓进行分类,每帧图像的轮廓分为左侧轮廓和右侧轮廓,
12.当一侧轮廓数量n大于另侧轮廓数量p时,包括了n=3或4、n=2或n=1的情况;
13.n=3或4时,采用ahp层次分析法,以轮廓到图像中心的距离为依据,给每一个轮廓赋予相应的权重,通过矩阵运算得出转向判定系数e。
14.n=2时,通过矩阵运算得出转向判定系数e。
15.n=1时,通过检测轮廓开口方向确定转向判定系数e;
16.当n=p时,通过检测轮廓向左或者向右的个数来确定转向判定系数e;
17.所述转向判定系数e用以确定内窥镜的转向角度。
18.进一步的,所述对图像的预处理方法包括:
19.将每帧图片转换成灰度图片;
20.使用限制对比度自适应直方图均衡化方法来增强灰度图像对比度;
21.采用9
×
9的高斯核对图像进行高斯滤波。
22.进一步的,在完成图像预处理过后,所述对图像轮廓提取的方法包括:
23.对高斯滤波后的图像采取均值方法的自适应阈值来去掉背景色的影响;
24.初步去除背景色之后,使用3
×
3的卷积核对图像进行形态学闭操作,对缺失的轮廓信息进行补充;
25.对补充完成后的图片使用opencv内置findcontours函数进行轮廓提取,并计算每一个轮廓的面积,通过设定阈值来填充较小的轮廓;
26.填充完成后再次使用3
×
3的卷积核进行形态学闭操作;
27.形态学操作结束后进行findcontours轮廓提取操作。
28.最后对各轮廓提取最小外接圆,得到最小外接圆半径以及圆心。
29.进一步的,所述轮廓信息的不同在于各轮廓最小外接圆圆心相对图像中心点的位置。
30.进一步的,若不能够获取清晰的轮廓,则根据已有的参数,设计三重控制策略来控制内窥镜转向;所述三重策略包括:
31.读取之前存储的转向控制参数以及轮廓状态参数,取临近的五个参数求和,若轮廓状态参数的和大于等于阈值,通过转向控制参数的和来设定转向幅度,正负表示方向,若轮廓状态参数的和小于阈值,则触发了三重控制策略,第一步是根据转向控制参数的和的大小来控制转向幅度的大小,正负表示方向;
32.第二步是在执行完成第一步的基础上,若还无法捕捉到清晰的轮廓,便采取与第一步转向方向不同且大于第一步转向幅度的转向;
33.第三步是在执行完第二步的基础上,若还是无法捕捉到清晰的轮廓,便采取与第一步转向方向相同且大于第二步转向幅度的转向。
34.进一步的,当n=3或4时,计算相应的权重
[0035][0036]
ω
0i
是一个过度参数,用来计算轮廓权重;n=3或者4;a
ij
代表了判断矩阵中i行j列的参数,1≤i≤n,1≤j≤n;
[0037][0038]
ωi是指某一个轮廓根据计算所得出的权重,1≤i≤n;
[0039]
其中
[0040]
得出各轮廓对应的权重之后,通过公式计算转向判定系数e:
[0041][0042]
其中,left/right是归一化后的左/右横向误差,rl/rr是映射后的左/右最小外切半径,δ代表抑制参数,n/p是左/右侧的开放轮廓数量;
[0043]
当n=2时,计算转向判定系数e:
[0044][0045]
当n=1时,设定e为中等幅度转向;
[0046]
转向角度ω为:
[0047][0048]
当n=p时,若某一侧的轮廓个数与另一侧的个数之差大于2则设定为中等幅度转向,否则便设定为小幅度转向。
[0049]
进一步的,所述转向控制参数的定义为:在处理完每一帧图片后,根据图片信息或已存储数据得出的转向控制结果,正负表示方向。
[0050]
进一步的,所述轮廓状态参数的定义为:当能够提取到清晰的轮廓时,该帧对应的轮廓状态参数为1,若不能,则为0。
[0051]
进一步的,所述转向幅度是指内窥镜转动的角度,在分析判断过程中,是根据转向判定系数来确定的,转向判定系数是通过对轮廓信息或者转向控制参数分析计算得出的。
[0052]
有益效果:
[0053]
相对于现有技术,本发明的图像处理以及轮廓提取方法简单,速度较快,针对不同的轮廓设计的分析处理方法能够大大减少轮廓计算所需的时间。本发明针对每一帧图像的处理速度在20-25ms,完全满足实时处理的要求,能够在复杂环境下克服由于图像误差对内窥镜自主导航造成的影响,提高内窥镜自主导航的效率及准确率。
[0054]
本发明同时提供了采用上述实现方法的内窥镜装置,所述装置包括内窥镜,直行驱动模块、转向控制模块,用户界面;所述直行驱动模块通过两个舵机的摩擦带动内窥镜的直行运动;所述转向控制模块通过舵机与内窥镜转向旋钮相连来控制内窥镜的转向。
附图说明
[0055]
图1是内窥镜自主导航的实现方法的流程图;
[0056]
图2是对图片进行预处理以及轮廓提取之后的处理示意图;
[0057]
图3是对清晰轮廓的分析示意图;
[0058]
图4是对清晰轮廓的处理流程示意图;
[0059]
图5是对不清晰轮廓的处理流程示意图;
[0060]
图6是对肠道内图像的轮廓提取与分析图;
[0061]
图7是采用本发明内窥镜自主导航的实现方法对于图像处理验证的示意图。
具体实施方式
[0062]
以下结合附图对本发明一个具体实施方式进行说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0063]
图1表示的是整个控制方法实施的具体流程图,如图所示,内窥镜末端的照相机拍摄肠道内图像,并且通过usb接口将图像(640
×
480)传输给图像处理模块(计算机),在对图像经过分析处理过后进行控制判断,随后将内窥镜的控制参数传输给单片机,单片机根据数据来控制舵机的转动,从而实现对内窥镜的控制。具体实施步骤如下所示:
[0064]
首先将图像进行图像预处理操作,预处理操作包括灰度化,限制对比度自适应直方图均衡化以及高斯滤波。其中限制对比度自适应直方图均衡化的cliplimit设为2,tilegridsize为(12,12),高斯滤波的ksize为(9,9),sigmax设为1。
[0065]
在图像预处理完成后,对图像采用均值方法的的自适应阈值来去掉背景色的影响,接着采用3
×
3的卷积核对图像进行形态学闭合操作来补充一些缺失的轮廓信息,对补充结束的轮廓进行opencv内置的findcontours轮廓提取操作,并且计算每个轮廓的面积,使用背景色填充面积小于阈值的轮廓,在填充完毕后,再次进行形态学闭合操作,最后通过findcontours轮廓提取操作来完成轮廓提取。
[0066]
本发明从整张图片的层面上对一些细小的轮廓进行处理,采用opencv内置的findcontours操作结合轮廓面积阈值能够快速的去除图像中细小的噪点,能够较好的保存大的轮廓信息且处理速度较快。
[0067]
若能够获取到清晰的轮廓信息,首先对每一个轮廓进行最小外接圆提取操作,得到最小外接圆半径已经相对应的圆心坐标,根据圆心坐标相对图像中心(320,240)位置将轮廓进行左右分类,以左右为例(竖直方向同理),计算各轮廓最小外接圆圆心到图像中心的距离,并且将数据归一化,归一化公式:
[0068][0069]
结合真实的肠道内图像,以左侧为例,将轮廓信息情况分为四类,具体为,图像中心左侧轮廓数量(n)大于等于右侧(p),n=3/4,n=2,n=1,n=p。
[0070]
当n=3或4时,结合ahp层次分析法,根据每个轮廓最小外接圆圆心到图像中心距离的远近赋予不同的权重,因为越靠近图像中心的轮廓就越靠近摄像头,所以人工给出如下的判断矩阵。n=3时,根据每个轮廓距离图像中心距离的远近被分为close,mid,far三类,给出一个3
×
3的数值矩阵。n=4时,根据每个轮廓距离图像中心距离的远近被分为close,mid,far,farthest四类,给出一个4
×
4的数值矩阵。通过如下公式(2)(3)计算相应的权重,矩阵第i行j列的数据对应公式中a
ij
,矩阵中的数值是人为给出,用来计算每个轮廓对应的权重,以列来看,数值的大小代表着重要性的高低:
[0071] closemidfarweightclose1240.578mid0.511.50.263far0.250.6710.159
[0072] closemidfarfarthestweight
close12480.544mid0.511.530.236far0.250.67120.146farthest0.1250.330.510.074
[0073][0074]
ω
0i
是一个过度参数,用来计算轮廓权重;n=3或者4;a
ij
代表了判断矩阵中i行j列的参数,1≤i≤n,1≤j≤n,判断矩阵是根据经验给出得一个3
×
3或4
×
4数值矩阵。
[0075][0076]
ωi是指某一个轮廓根据计算所得出的权重,1≤i≤n。
[0077]
得出各轮廓对应的权重之后,通过公式(4)计算转向判定系数e:
[0078][0079]
其中ω代表由(2)和(3)计算的权重,left/right是归一化后的左/右横向误差,rl/rr是映射后的左/右最小外切半径,δ代表抑制参数(当p》0,1-δ=10δ),n/p是左/右侧的开放轮廓数量。
[0080]
当n=2时,通过公式(5)计算转向判定系数e:
[0081][0082]
当n=1时,此时只能提取到一个开放的轮廓信息,此时通过计算轮廓的开口方向,即轮廓最小外接圆圆心相对轮廓凹点(轮廓与其最小外接圆的切点)的位置来判断转向,设定e为中等幅度转向。
[0083]
当n=p时,通过检测轮廓向左或者向右的个数来确定转向系数e。若某一侧的轮廓个数与另一侧的个数之差大于2则设定为中等幅度转向,否则便设定为小幅度转向。
[0084]
在整个转向控制过程中,统一使用0表示直线、ω
min
表示极小振幅(1
°
)、ω
small
表示小振幅(2
°
)、ω
mid
表示中等振幅(3
°
)、ω
big
表示大振幅(5
°
)、ω
max
表示最大振幅(10
°
)和ω
extreme
表示极大振幅(20
°
)。正负符号表示左右方向。其中,清晰轮廓阶段的控制幅度为0、ω
min
、ω
small
和ω
mid

[0085]
转向判定系数e确定后,根据(6)确定转向角度。图6是对肠道轮廓的提取与判断结果。
[0086][0087]
若无法提取到清晰的轮廓信息,则根据已有的转向控制参数以及轮廓状态参数,其中
[0088]
第一步是读取在此帧图像之前的转向控制参数以及轮廓状态参数,取临近的五个参数求和,若轮廓状态参数的和大于等于阈值,通过转向控制参数的和来小幅度转向,正负表示方向,若轮廓状态参数的和小于阈值,则触发了三重控制策略,第一步是根据转向控制参数的和的大小来控制转向幅度的大小(ω
big
),正负表示方向。
[0089]
第二步是在执行完成第一步的基础上,若还无法捕捉到清晰的轮廓,便采取与第一步转向方向不同的大幅度转向(ω
max
)。
[0090]
第三步是在执行完第二步的基础上,若还是无法捕捉到清晰的轮廓,便采取与第一步转向方向相同的更大幅度的转向(ω
extreme
)。每连续的五次操作中,只会出现以此三重控制策略中的其中一步。
[0091]
为验证上述实施例提供的内窥镜自主导航的实现方法对于实时采集图片的处理效率,对上述实现方法具体应用在人体肠道内环境中的内窥镜采集图片并按照上述导航的实现方法进行图片处理,如图7所示,在图片采集验证中,采集了96张图片来测试每张图片的验证速度,25ms以内占比90.62%,所有图片平均用时为22.072ms。
[0092]
故上述实施方法针对图像的处理速度一般可以控制在20-25ms,完全满足实时处理的要求,能够在复杂环境下克服由于图像误差对内窥镜自主导航造成的影响,提高内窥镜自主导航的效率及准确率。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献