CN114022554B - 一种基于yolo的按摩机器人穴位检测与定位方法 - Google Patents
一种基于yolo的按摩机器人穴位检测与定位方法 Download PDFInfo
- Publication number
- CN114022554B CN114022554B CN202111295931.5A CN202111295931A CN114022554B CN 114022554 B CN114022554 B CN 114022554B CN 202111295931 A CN202111295931 A CN 202111295931A CN 114022554 B CN114022554 B CN 114022554B
- Authority
- CN
- China
- Prior art keywords
- acupoint
- acupuncture point
- edge
- positioning
- edge points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例涉及一种基于YOLO的按摩机器人穴位检测与定位方法,方法包括:A10、采集贴有圆形穴位贴的人体原始图像;A20、采用YOLO网络模型对圆形穴位贴进行粗定位,得到粗定位的穴位区域;A30、对粗定位的穴位区域进行预处理,并采用Canny算法,获取穴位贴的边缘点;A40、基于穴位贴的边缘点,确定最大连通区域,将确定的最大连通区域作为穴位贴的边缘,并基于提取的最大连通区域采用最小二乘法的方式获取精确的穴位中心信息。通过本方法实现了人体穴位识别和定位的准确性问题,提高了结果的可靠性。
Description
技术领域
本申请属于理疗机器人技术领域,具体涉及一种基于YOLO的按摩机器人穴位检测与定位方法。
背景技术
中医推拿是我国医学领域的重要组成部分,目前该领域主要是由经验丰富医师用人工的方法对患者进行按摩治疗。一个疗程下来,医师需要付出大量的体力劳动和时间,而将中医推拿理论与机器人技术相结合,将是解决这一问题的最优解决方案。近些年来众多专家学者围绕按摩机器人的关键技术展开了一系列研究,但大都集中在按摩机理分析和计算机仿真方向,另有研究人员开发出一种实时图像采集的按摩机器人跟踪系统,实现对按摩穴位的动态跟踪。然而,当今大多数基于视觉定位的按摩机器人往往对工作环境要求很高,要求按摩背景单一,对复杂背景不具有普遍性且定位精度低,在智能程度上与专业按摩师还相差甚远。
发明内容
(一)要解决的技术问题
鉴于现有技术的上述缺点、不足,本申请提供一种基于YOLO的按摩机器人穴位检测与定位方法,定位精度高且对按摩背景无限制。
(二)技术方案
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种基于YOLO的按摩机器人穴位检测与定位方法,该方法包括:
A10、采集贴有圆形穴位贴的人体原始图像;
A20、采用YOLO网络模型对圆形穴位贴进行粗定位,得到粗定位的穴位区域;
A30、对粗定位的穴位区域进行预处理,并采用Canny算法检测预处理后的穴位区域的边缘像素点,获取穴位贴的边缘像素点;
A40、基于穴位贴的边缘像素点,确定最大连通区域,将确定的最大连通区域作为穴位贴的边缘,并基于所述边缘采用最小二乘法的方式获取精确的穴位中心信息。
可选地,所述A20包括:
A201、将人体原始图像自适应缩放成A×A×3大小的图并进行切片处理;在切片处理后变为B×B×12大小的网络图,A和B为大于零的自然数;
A202、对网络图进行卷积操作输出三个特征图:第一特征图76×76×3、第二特征图38×38×3、第三特征图19×19×3;
A203、基于三个特征图,获取属于穴位贴的预测框的位置和类别信息,
A204、将预测框的位置映射回A×A的输入图像上;并对每个预测框的类别信息做非极大值抑制处理,得到属于穴位贴的预测框信息作为粗定位的穴位区域。
可选地,所述A201包括:
将人体原始图像按照第一缩放比例缩放成640×640×3大小的图;
在切片处理后变为320×320×12大小的网络图。
可选地,所述A203包括:
基于三个特征图,利用锚框信息计算得到预测框,所述锚框信息为YOLO在输入图像中进行网格划分生成的锚框得到的;
针对每一个预测框,加上前景概率、背景概率以及类别概率计算出预测框的位置和类别信息。
可选地,所述A204包括:
将预测框的位置信息按照第一放大比例放大得到相对于人体原始图像的真实位置信息;所述第一放大比例=1/第一缩放比例;
针对每一个类别,采用非极大值抑制处理方式消除重叠度大于预设阈值的预测框;
或者,获取每一个候选预测框的置信度得分,将所有的候选预测框排序,选取得分最高的候选预测框作为选定的预测框信息;
以及获取其他的候选预测框与当前选定的预测框的重合程度,
如果重合程度大于预设阈值则删除该候选预测框;
确定穴位贴的数量,判断选定的预测框的数量是否和穴位贴的数量一致,若不一致,则选择部分与选定的预测框重合的候选预测框继续删除,直至选定的预测框的数量和穴位贴的数量一致。
可选地,所述A30包括:
对粗定位的穴位区域进行高斯平滑滤波处理,得到滤波后的穴位区域;
采用大律法对滤波后的穴位区域进行二值化处理,对于二值化处理过程中获取用于检测边缘点的高阈值和低阈值;所述高阈值和低阈值的比值位于2:1到3:1之间;所述高阈值和所述低阈值为二值化后的图像的灰度值;
为了保证Canny算法提取到是穴位贴上的边缘点,而不是噪声区域的边缘点,获取所述穴位贴的边缘点之后,先判断边缘点的数量是否大于粗定位的穴位区域的高的方向上像素点总数的一半,若是,则确定获得穴位贴的边缘点;
需要说明的是,YOLO粗定位得到目标区域大部分被穴位贴占据,所以穴位贴上边缘点的数量必然大于穴位贴的高或宽方向上像素点总数的一半,否则就不是大部分占据了。
否则,放弃本张人体原始图像。
可选地,所述A40中的基于所述边缘采用最小二乘法的方法获取精确的穴位中心信息,包括:
部分圆形穴位贴在人体原始图像中会成像为椭圆,即圆形穴位贴透视投影会成为椭圆形;
采用最小二乘拟合椭圆发代替最小二乘拟合圆;
具体地,拟合椭圆的目标优化方程为公式(1):
min||ax2+bxy+cy2+dx+ey+f||2=0 公式(1)
其中,a,b,c,d,e,f为常数,x,y为检测到的目标边缘点的坐标;当检测到多个目标边缘点(xi,yi)时,有公式(2):
AX=B 公式(3)
根据最小二乘得到:
X=(ATA)-1B 公式(4)
获取方程系数矩阵X的值,得到拟合椭圆的方程及椭圆中心坐标(x0,y0):
基于公式(5)获取到精确的穴位中心信息。
可选地,还包括:若人体原始图像存在残缺穴位贴,则识别去除穴位贴的边缘点中的残缺处的不属于椭圆的边缘点;
具体地,对穴位贴的边缘点进行形态学处理,通过边缘曲率的比较方式识别残缺区域并去除。
为了更好的理解和说明,以下对残缺穴位贴的处理过程进行说明:
为了将含有噪声的目标粗定位区域与噪声区域分离开来,选择对目标粗定位区域检测到的边缘进行形态学处理。考虑到前面进行了穴位贴的粗定位,这会使得穴位贴成为粗定位区域的主要部分,故提取出其中的最大连通区域即为穴位贴边缘。
此时,如果人体原始图像存在残缺穴位贴,在进行目标边缘检测时也会将目标残缺处的边缘点一并检测出来,而最小二乘拟合易受离群噪声点的干扰,但进行降噪处理又会使得部分边缘信息点丢失,故在最小二乘拟合前移除目标残缺处的边缘点显得尤为重要。也就是说,其识别去除穴位贴的边缘检测点中的残缺处的不属于椭圆的边缘检测点;
对于残缺穴位贴(由于前面判断了边缘点的数量是否大于粗定位的穴位区域的高的方向上像素点总数的一半,这就表明残缺穴位贴是能提取到足够多的边缘点的),通过边缘曲率的比较方式识别残缺区域并去除。例如穴位贴边缘的曲率为a,残缺处的曲率为b;那么曲率a会大于曲率b,保留曲率大的即为穴位贴边缘。
第二方面,本发明实施例还提供一种机器人,包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上第一方面任一项所述的基于YOLO的按摩机器人穴位检测与定位方法的步骤。
第三方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上第一方面任一项所述的基于YOLO的按摩机器人穴位检测与定位方法的步骤。
(三)有益效果
本申请提供的技术方案可以包括以下有益效果:
1)本发明将最高版本的YOLO(You Only Look Once version 5)网络模型运用于圆形穴位贴的粗定位,实现了在复杂场景下检测圆形穴位贴目标区域的问题,提高了检测结果的速度和可靠性,且能够降低环境光线的要求,同时可有效排除相似目标干扰的问题。
2)由于在检测过程中先粗定位,再精确定位,缩小了Canny算法的检测区域,使得检测结果的鲁棒性更强,检测结果精度更高,速度更快,不遗漏存在遮挡的穴位贴。
3)可以推广到任何一个基于视觉定位设备中使用,其使得智能理疗机器人的应用广泛化。
附图说明
图1为本发明一实施例提供的基于YOLO的按摩机器人穴位检测与定位方法的流程图;
图2为本发明基于YOLO的穴位贴检测算法网络结构的示意图;
图3为穴位贴的粗定位的现有和本发明的比对图;
图4为穴位贴的精确定位的过程示意图;
图5为本发明的按摩机器人现场实测场景的示意图;
图6为以圆心距长度误差验证圆心定位精度的测量图;
图7示出两个按摩穴位的中心距离L′与直尺测量值L的相对误差Er来衡量算法的精度的示意图;
图8为四种穴位贴中心定位方法相对误差比较的示意图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。可以理解的是,以下所描述的具体的实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合;为了便于描述,附图中仅示出了与发明相关的部分。
当前,考虑到专业按摩技师可以根据多年的按摩经验确定人体穴位点,而机器人很难通过相机采集到的图像特征准确定位复杂的人体穴位,业内人士选择在穴位处贴放圆形人工标志的方法来辅助机器人/按摩机器人进行穴位自动识别和定位。因此,人体穴位的识别和定位问题就转化为圆形标志点检测与定位算法研究。
目前,常用的圆心定位方法包括Hough变换法、模板匹配法、高斯拟合法、加权型灰度重心法和最小二乘曲线拟合法等,这些方法在标记点测量环境质量较高的情况下可以实现被测目标的准确定位,但是针对按摩机器人特殊的应用环境,例如光照、人体背部为一个曲面,人工穴位贴标志在放置时会产生不同程度的倾斜和变形、遮挡成残缺圆等情况并不适用。其中,较为常用的Hough变换法对阈值参数设置敏感,容易产生冗余采样;加权型灰度重心法在过暗或过曝的环境下会产生较大误差,显然不适用于按摩机器人穴位贴定位的实际运用;最小二乘曲线拟合法拟合精度高、计算量小,但易受离群点的干扰导致拟合效果急剧变差。这些对圆形标记点测量环境要求较高的方法并不能有效排除相似目标干扰且在不同程度上存在着鲁棒性不强,对环境光线要求高等局限性。
鉴于此,为了解决上述方法的局限问题,本发明结合深度学习目标检测技术和改进的圆心定位算法,提出一种基于YOLO的按摩机器人穴位检测与定位方法,通过由粗到细的渐进式人体穴位检测与定位方案,可以在有干扰、过暗、过曝、形变等复杂情况下实现人体穴位的自动检测和精确定位。
实施例一
如图1所示,本发明实施例提供一种基于YOLO的按摩机器人穴位检测与定位方法,本实施例方法的执行主体可为按摩机器人或机器人,其主要是计算机程序集成在机器人内。特别说明的是,本实施例的YOLO网络模型为最高版本的YOLO网络模型如v5版本,本实施例的方法包括下述步骤:
A10、采集贴有圆形穴位贴的人体原始图像;
该步骤中的采集可为任意相机的普通采集。通常穴位贴的类别可包括白色穴位贴或黑色穴位贴。在其他实施例中,还可以是其他颜色,本实施例不对其限定,根据实际需要设置,本实施例的方案可以黑色和白色类别的穴位贴进行举例来说。
A20、采用YOLO网络模型对圆形穴位贴进行粗定位,得到粗定位的穴位区域。
A30、对粗定位的穴位区域进行预处理,并采用Canny算法检测预处理后的穴位区域的边缘点,获取穴位贴的边缘点。
基于上述步骤A20中穴位贴的粗定位,这会使得穴位贴成为粗定位区域的主要部分,故提取出其中的最大连通区域即为穴位贴边缘。
当然,摄像机采集到的图片中,圆形穴位贴可能会在该图片的任意位置,粗定位就是将该圆形穴位贴从图像中找到其所在的大致区域;Canny算法(即Canny边缘检测算法)是将上一步粗定位区域内的圆形穴位贴的边缘检测出来(粗定位穴位贴的目的就是为了避免Canny边缘检测时检测整张图像的目标边缘)。如图3所示,其中图3(a)为穴位贴的粗定位,里面黑色圆为穴位贴,外面方框为粗定位区域(方框是在原图上粗定位后代码自动画出来的,是为了方便展示粗定位区域的范围);图3(b)为Canny算法只检测上一步骤的粗定位区域的黑色穴位贴的边缘,可以看到该黑色穴位贴上还有一小块干扰物,Canny边缘检测时也会将该干扰物的边缘检测出来;图3(c)为本发明的方法提取最大连通域处理后的边缘检测结果,可以看到已经将干扰物的边缘去除,由此过滤掉噪声区域,效果更好。
A40、基于穴位贴的边缘点,确定最大连通区域,将确定的最大连通区域作为穴位贴的边缘,并基于所述边缘采用最小二乘法的方式获取精确的穴位中心信息。
本实施例中,先粗定位,再精确定位,缩小了Canny算法的检测区域,使得检测结果的鲁棒性更强,检测结果精度更高,速度更快,不遗漏存在遮挡的穴位贴。
为更好的理解上述步骤的过程,下面对上述步骤A20进行详细说明如下:
A201、将人体原始图像自适应缩放成A×A×3大小(例如可以是640×640×3)的图并进行切片处理;在切片处理后变为B*B*12(例如可以是320×320×12)大小的网络图/网格图。
对图片进行切片操作是YOLO网络模型自带的功能,具体步骤:如在一张3×4×4(说明:3表示3通道,即R、G、B;4为图像的宽和高)的图片中每隔一个像素拿一个像素值,类似于邻近下采样,这样一个通道就可以拿到四张图片(3个通道总共可得到12张图片),四张图片互补,将图片的宽、高信息就集中到了通道空间,输入通道扩充了4倍,即拼接起来的图片相对于原先的RGB三通道模式变成了12个通道,最后将得到的新图片再经过卷积操作,最终得到了没有信息丢失情况下的二倍下采样特征图。
本实施例中的切片处理前后图的大小可根据处理设备的处理速度确定,本实施例不对其限定,根据实际需要调整。切片处理的目的就是为了减少计算量以加快处理速度。
A202、对网络图进行卷积操作输出三个特征图:第一特征图76×76×3、第二特征图38×38×3、第三特征图19×19×3;
也就是说,进行卷积操作并输出三个特征图76×76×3、38×38×3、19×19×3;再加上前景概率、背景概率以及类别概率计算出预测框的位置和所属类别等信息(该处的前景概率是指检测出目标物体的概率,该处检测的对象是特征图)。
A203、基于三个特征图,获取属于穴位贴的预测框的位置和类别信息。例如,可以利用锚框信息计算得到预测框,其中,锚框信息为YOLO在输入图像中进行网格划分生成的锚框得到的信息。
针对每一个预测框,加上前景概率、背景概率以及类别概率计算出预测框的位置和类别信息。
A204、将预测框的位置映射回A×A的输入图像上;并对每个预测框的类别信息做非极大值抑制处理,得到属于穴位贴的预测框信息作为粗定位的穴位区域。
需要说明的是,YOLO在输入图像时会将图像划分为S×S个网格,首先以每个网格中心为中心使每个网格生成多个锚框,然后根据训练好的模型参数去预测这些锚框的类别和偏移量,进而得到预测的边界框。
此外,目标检测分为训练阶段和预测阶段,在经过训练阶段后会得到一个训练好的网络模型参数;故在预测阶段时可以使用这个训练好的网络模型对图像中的目标进行检测。需要检测的图像经过这个网络后就能得到目标的边界框、对应的概率(这里的目标可能为前景也可能为背景也就是该边界框内可能是要检测的目标也可能不是)以及类别概率;这个过程会将概率低于阈值的边界框给去掉,由于阈值和锚框数量选择的问题,同一个目标可能会输出多个相似的预测边界框,这样不仅不简洁,而且会增加计算量,故使用非极大值抑制可去除重复的框,最终保留输出的是置信度最高的框。
本实施例中使用的YOLO网络模型是属于预测阶段使用的YOLO网络模型。
本实施例中,将三个特征图上的结果(如三个特征图上得到的预测框的信息,即类别和位置信息)全部映射回640×640的输入图像上;也就是说,在输入图片时会先按一定比例缩放图片,再进行一系列处理后得到三个特征图,进而得到预测框信息,此时得到的预测框位置信息是缩放后图片的位置,想要将此预测框位置信息对应到原图上的话那就按之前输入时的缩放比例放大即可得到原图上目标预测框的真实位置。
最后对每个类别做非极大值抑制处理(NMS),消除重叠度高的框,得到最终的预测框信息(即对应粗定位步骤的粗定位信息)及得分(即预测框属于穴位贴的概率得分),从而完成目标的检测和定位。
由于目标检测的过程中在同一目标的位置上会产生大量的候选预测框,这些候选预测框相互之间可能会有重叠,故需要去除重叠的候选预测框。每个候选预测框都有一个置信度得分(score),如穴位贴检测,会在很多框上都有得分,然后把这些得分全部排序。选取得分最高的那个预测框,接下来计算其他的预测框与当前选定的预测框的重合程度(IOU的全称为交并比(Intersection over Union),其计算的是“预测的边框”和“真实的边框”的交集和并集的比值,用于测量真实和预测之间的相关度,相关度越高,该值越高),如果重合程度大于一定阈值就删除,因为在同一个目标穴位贴上可能会有好几个高得分的预测框,都是穴位贴目标。
如果特征图中检测出好几个穴位贴目标,此时按照前面的步骤也是能保证每个穴位贴最终都有一个候选预测框。这是一个迭代的过程,上述的非极大值抑制就是选取了某一个最大的得分,然后删除了他周边的几个候选预测框,第二次迭代的时候在剩下的框里面选取一个最大的,然后再删除它周围区域大于一定阈值的,这样不停的迭代下去就会得到所有想要找到的目标物体的区域。
实施例二
在当前的理疗机器人领域,人体穴位识别和定位是按摩机器人的关键问题,是保证机器人安全工作的先决条件。本实施例中结合人工标志点和深度学习目标检测技术,提出了基于YOLO的按摩机器人穴位检测与定位方法。
该方法主要包括两部分:圆形穴位贴粗定位和中心精确定位。方法流程如图1所示。首先用YOLO网络模型对圆形穴位贴进行粗定位,再进行高斯滤波并结合大津法和Canny算法,获取到圆形标志的边缘点,基于边缘检测结果用最大连通域的提取方法进一步排除非目标点的干扰,最后通过最小二乘法对人工标志点的圆心坐标进行精确定位,并利用现有的机器人手眼标定技术转换为机器人按摩穴位坐标,实现人体穴位的自动检测和定位。
为更好的说明上述方法以下结合图2至图8对本实施例的方法进行详细的说明:
步骤1:圆形穴位贴粗定位
由于人体原始图像中的圆形穴位贴往往只占相机视场的一小部分,如果选择遍历整幅人体原始图像寻找圆形穴位贴的圆心,不仅会降低目标检测效率,在目标提取时也容易受背景干扰,降低目标检测精度。本实施例将YOLO网络模型运用于圆形穴位贴的粗定位,实现了在复杂场景下检测圆形穴位贴目标区域的问题,提高了结果的可靠性。
YOLO网络模型是一个可以预测对象类别和边界框的端到端神经网络,其模型架构采用PyTorch架构、构造了两种CSP结构、增加了Focus结构。其网络结构主要由四个主要组件组成:Input(输入层)、Backbone(骨架层)、Neck(连接层)和Prediction(预测输出层)。Input部分主要完成数据增强,计算最佳锚框值等基本任务;Backbone是负责在不同层上进行特征提取的卷积神经网络;Neck对Backbone提取到的图像特征进行增强融合处理,并传递给Prediction;Prediction完成对图像类别特征的预测并生成边界框。
YOLO网络模型中默认设置了9种锚框,先算了一次YOLO网络模型中默认设置的锚框与真实标注框的比例值,选出比例值最大的值作为当前值(设为a)。若a小于设定的一个阈值,则通过聚类算法重新算锚框。若再算出来的a比之前的大,则用新的。比之前还更差的话,用原来的锚框。
基于YOLO的网络结构如图2所示,本实施例中采用的是最高版本的YOLO网络模型。首先将原图(带有穴位贴的原始图像)自适应缩放成640×640×3(640×640是输入图片的宽和高;3是指该图片有三个通道,即R、G、B)大小的图,在切片处理后变为320×320×12大小的图,再经过卷积操作后可以得到输出层76×76×3、38×38×3、19×19×3三个特征图;然后利用锚框信息计算得到预测框,再加上前景概率、背景概率以及类别概率计算出预测框的位置和所属类别等信息,将三个特征图上的结果全部映射回640×640的输入图像上;最后对每个类别做非极大值抑制处理(NMS),消除重叠度高的框,得到最终的预测框信息及得分,从而完成目标的检测和定位。
YOLOv5粗定位穴位贴后是有一个粗定位的区域的,穴位贴位于粗定位区域之内如图3(a)和图4(a)中穴位贴外围方框所示即为穴位贴的粗定位区域;例如粗定位区域的宽为w和高为h,那么此处的“穴位区域的高的方向上像素点总数的一半”理解为:检测出的边缘点的像素总数为sum,如果满足sum>=(h/2),认为检测到的边缘点为可用点;否则,放弃本张图片,重新采集图像并重新提取边缘点。
步骤二:圆形穴位贴精确定位
(1)圆形边缘提取
边缘检测算法中较为常用的有Sobel算法、Laplacian算法、Canny算法等,它们之间都存在一定的局限性。其中,Sobel算法边缘定位精度不高;Laplacian算法对噪声敏感、容易产生双边缘且不能检测边缘的方向。Canny算法是一种多阶段算法融合在一起的边缘检测算法。由于其在噪声抑制和边缘精度定位方面都能取得比较好的效果,因而被广泛应用,故本实施例采用Canny算法检测穴位贴的边缘点。
1)为了克服Canny算法高低阈值不能自适应的问题,本实施例结合大津法,将其获取到图像的最佳阈值作为Canny算子的低阈值,高低阈值比设置在2:1到3:1之间,提高了边缘提取的准确性与连续性;
需要说明的是,Canny算法检测图像中的目标边缘轮廓时,需要人为确定两个阈值:高阈值、低阈值。两个阈值是有区别的,高阈值是将要提取轮廓的物体与背景区分开来,是决定目标与背景对比度的;低阈值是用来平滑边缘的轮廓,有时高的阈值设置太大了,可能边缘轮廓不连续或者不够平滑,通过低阈值来平滑轮廓线,或者使不连续的部分连接起来。
而大津法在前景与背景的分离上的效果比较好,能够计算出一个最优的分割阈值。在穴位贴的边缘轮廓检测中,为了适应不同的环境,选用大津法计算出的阈值会是一个最优阈值,故可将大津法计算出的阈值设置为Canny算法边缘检测的低阈值,高阈值为低阈值的2~3倍,这样可以提高边缘提取的准确性与连续性。
2)为了排除边缘检测算法没有提取到目标边缘的情况,本实施例对获取到的目标边缘像素点的个数进行判定,若点数小于粗定位区域高方向上像素点总数的一半,则认定为边缘检测没有提取到目标边缘,放弃本张图像;
3)为了将含有噪声的目标粗定位区域与噪声区域分离开来,本实施例对目标粗定位区域检测到的边缘进行形态学处理。考虑到前面进行了穴位贴的粗定位,这会使得穴位贴成为粗定位区域的主要部分,故提取出其中的最大连通区域即为穴位贴边缘。如图3所示。其中,图3(a)中的红色框为目标粗定位区域;图3(b)中传统的边缘检测算法在检测目标的同时也会将噪声区域检测出来;图3(c)为本发明的边缘检测算法,通过对比可以看出本发明算法可过滤掉噪声区域。
(2)圆形中心提取
由于受到环境及不同的个体背部起伏不一的影响,使得圆形穴位贴过曝、过暗或成像为椭圆。考虑到圆形穴位贴透视投影在画面上往往蜕变为椭圆形,故本发明采用最小二乘拟合椭圆法代替最小二乘拟合圆,提高圆形穴位贴圆心的检测精度。
拟合椭圆的最优化问题可表示为:
min||ax2+bxy+cy2+dx+ey+f||2=0 (1)
式中a,b,c,d,e,f为常数,x,y为检测到的目标边缘点的坐标。当检测到多个目标边缘点(xi,yi)时,有:
AX=B (3)
根据最小二乘可得:
X=(ATA)-1B (4)
由此即可解得方程系数矩阵X的值,从而得到拟合的椭圆方程及椭圆中心坐标(x0,y0):
在圆形中心的提取过程中,由于残缺穴位贴或机械臂在按摩过程中对穴位贴遮挡使得成像为残缺目标的情况,如图4(a)所示。在进行目标边缘检测时,目标残缺处的边缘点,即离群点,也会被检测出来,如图4(b)所示。由于中心精确定位采用的是最小二乘拟合法,易受离群噪声点的干扰,故在拟合之前移除目标残缺处的边缘点显得尤为重要。本发明通过计算离散点曲率的方法移除残缺处边缘点曲率小于指定阈值的点,如图4(c)所示。然后再采用数据拟合方法,能够有效避免目标残缺处边缘点对最小二乘拟合的影响,如图4(d)和图4(e)所示,从而提高了定位精度。
其中,图4(c)为本实施例中去除离群点后剩下的有效目标边缘点;图4(d)为传统方法进行最小二乘拟合的结果(虚线为拟合曲线,实线为传统边缘检测出的边缘点组成的曲线),由于离群点参与拟合,拟合结果明显偏离原目标;图4(e)为去除离群点后再进行拟合的结果,拟合结果得到明显的改善。
步骤三:实验验证
为了评估前述方法的实际运用效果,实测实验的硬件平台采用Dell 5820 Tower工作站,其配置为Xeon(R)W-2235 3.80GHz处理器,64GB内存,NVIDIA Quadro RTX 4000显卡,分辨率为1920×1080的USB 3.0工业摄像头,像元尺寸为2.2μm×2.2μm,按摩机器人采用丹麦人机协作UR-5机器人,软件开发环境为Python 3.7.9+OpenCV4.5。同时,实验数据集既包括实地拍摄的图片也包括仿真圆和椭圆,考虑了不同光照、拍摄角度及遮挡等情况的图片共计190张,利用LabelImg对每张图中的穴位贴进行人工标注。为了避免样本训练过拟合,采用旋转、裁剪、局部变形等数据扩充方式将样本个数扩充为原来的10倍,按照9:1的比例将样本划分为训练集和测试集,数据集共计1900张图像。图5为基于本发明的方法开发的按摩机器人现场实测场景示意图。
考虑到按摩机器人在工作过程中往往因光线强弱、相似物等干扰引起误检测。图6为相似目标干扰的一种,其中图6(a)、图6(b)图为传统的圆心检测方法(如灰度重心法、Hough变换法、形心法)的检出结果;图6(c)、图6(d)为本发明方法对圆形穴位贴进行粗定位及圆心提取的结果。从实验结果可以看出,在穴位贴背景有干扰时,传统的圆心检测算法在检测目标的同时经常会将相似干扰物检测出来,影响后续定位筛选的难度;加入本发明的YOLO网络模型进行粗定位后,使相似目标干扰物得以排除在外,减少了后续精确定位的难度。
在定位精度上,考虑到现场实测不能直接获取到圆形穴位贴中心坐标真实值的问题,故本发明使用直尺测量出两个穴位贴之间的圆心距L作为测量基准来验证两圆心点的定位精度。用本发明的定位方法和灰度重心法、Hough变换法、形心法的三种圆心定位方法分别定位出L=30cm、L=40cm、L=50cm场景下的两圆心距L’,并利用九点标定法实现图像像素坐标向按摩机器人空间物理毫米坐标的转换,并分别进行100次重复实验(包括形变、遮挡等情况),其中亮环境和暗环境下各实验50次。如图7所示用两个按摩穴位的中心距离L′与直尺测量值L的相对误差Er来衡量算法的精度,如下式所示,并在图8做了定量分析对比。
图8中示出了两个按摩穴位中心距离的平均值与实际测量值的相对误差。由于目标穴位贴越偏离相机视场中间形变越严重,故在设定的三种距离中,随着两穴位贴距离的减小,四种定位算法的定位精度都有所提高;在L一样时,灰度重心法和形心法的误差较小,而Hough变换法由于受图像形变影响,使其出现较大的相对误差;本发明的方法在不同测试距离L下相对误差均能保持在1.8%以内,而灰度重心法和形心法在2.3%以内,Hough变换法波动最大,在3.4%以内。可知本发明在定位精度和鲁棒性方面均优于前三种算法,与仿真实验结论相一致,再一次验证了本发明在复杂背景、图像变换及光照变化等情况下的优越性。
实施例三
本申请第三方面提供了一种机器人,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上实施例中任意一项所述的基于YOLO的按摩机器人穴位检测与定位方法的步骤。
机器人可包括:至少一个处理器、至少一个存储器、至少一个网络接口和其他的用户接口。其各个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。其中,用户接口可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)或者触感板等。
可以理解,本实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
在本发明实施例中,处理器通过调用存储器存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器用于执行第一方面所提供的方法步骤。
上述本发明实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。
另外,结合上述实施例中的基于YOLO的按摩机器人穴位检测与定位方法,本发明实施例可提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上方法实施例中的任意一种基于YOLO的按摩机器人穴位检测与定位方法。
所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
应当注意的是,在权利要求中,不应将位于括号之间的任何附图标记理解成对权利要求的限制。词语“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的词语“一”或“一个”不排除存在多个这样的部件。此外,需要说明的是,在本说明书的描述中,术语“一个实施例”、“一些实施例”、“实施例”、“示例”、“具体示例”或“一些示例”等的描述,是指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。
尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例做出另外的变更和修改。所以,权利要求应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。
Claims (7)
1.一种基于YOLO的按摩机器人穴位检测与定位方法,其特征在于,该方法包括:
A10、采集贴有圆形穴位贴的人体原始图像;
A20、采用YOLO网络模型对圆形穴位贴进行粗定位,得到粗定位的穴位区域;
A30、对粗定位的穴位区域进行预处理,并采用Canny算法检测预处理后的穴位区域的边缘点,获取穴位贴的边缘点;
A40、基于穴位贴的边缘点,确定最大连通区域,将确定的最大连通区域作为穴位贴的边缘,并基于所述边缘采用最小二乘法的方式获取精确的穴位中心信息;
所述A20包括:A201、将人体原始图像自适应缩放成A×A×3大小的图并进行切片处理;在切片处理后变为B×B×12大小的网络图,A和B为大于零的自然数;
A202、对网络图进行卷积操作输出三个特征图:第一特征图76×76×3、第二特征图38×38×3、第三特征图19×19×3;
A203、基于三个特征图,获取属于穴位贴的预测框的位置和类别信息,
A204、将预测框的位置映射回A×A的输入图像上;并对每个预测框的类别信息做非极大值抑制处理,得到属于穴位贴的预测框信息作为粗定位的穴位区域;
所述A30包括:对粗定位的穴位区域进行高斯平滑滤波处理,得到滤波后的穴位区域;
采用大律法对滤波后的穴位区域进行二值化处理,对于二值化处理过程中获取用于检测边缘点的高阈值和低阈值;所述高阈值和低阈值的比值位于2:1到3:1之间;所述高阈值和所述低阈值为二值化后的图像的灰度值;
获取所述穴位贴的边缘点之后,判断边缘点的数量是否大于粗定位的穴位区域的高的方向上像素点总数的一半,若是,则确定获得穴位贴的边缘点;否则,放弃本张人体原始图像;
所述A40中的基于所述边缘采用最小二乘法的方法获取精确的穴位中心信息,包括:
部分圆形穴位贴在人体原始图像中会成像为椭圆,即圆形穴位贴透视投影会成为椭圆形;
采用最小二乘拟合椭圆法代替最小二乘拟合圆;
具体地,拟合椭圆的目标优化方程为公式(1):
min||ax2+bxy+cy2+dx+ey+f||2=0 公式(1)
其中,a,b,c,d,e,f为常数,x,y为检测到的目标边缘点的坐标;当检测到多个目标边缘点(xi,yi)时,有公式(2):
令
AX=B 公式(3)
根据最小二乘得到:
X=(ATA)-1B 公式(4)
获取方程系数矩阵X的值,得到拟合椭圆的方程及椭圆中心坐标(x0,y0):
基于公式(5)获取到精确的穴位中心信息。
2.根据权利要求1所述的方法,其特征在于,所述A201包括:
将人体原始图像按照第一缩放比例缩放成640×640×3大小的图;
在切片处理后变为320×320×12大小的网络图。
3.根据权利要求2所述的方法,其特征在于,所述A203包括:
基于三个特征图,利用锚框信息计算得到预测框,所述锚框信息为YOLO在输入图像中进行网格划分生成的锚框得到的;
针对每一个预测框,加上前景概率、背景概率以及类别概率计算出预测框的位置和类别信息。
4.根据权利要求2所述的方法,其特征在于,所述A204包括:
将预测框的位置信息按照第一放大比例放大得到相对于人体原始图像的真实位置信息;所述第一放大比例=1/第一缩放比例;
针对每一个类别,采用非极大值抑制处理方式消除重叠度大于预设阈值的预测框;
或者,获取每一个候选预测框的置信度得分,将所有的候选预测框排序,选取得分最高的候选预测框作为选定的预测框信息;
以及获取其他的候选预测框与当前选定的预测框的重合程度,
如果重合程度大于预设阈值则删除该候选预测框;
确定穴位贴的数量,判断选定的预测框的数量是否和穴位贴的数量一致,若不一致,则选择部分与选定的预测框重合的候选预测框继续删除,直至选定的预测框的数量和穴位贴的数量一致。
5.根据权利要求1所述的方法,其特征在于,还包括:
若人体原始图像存在残缺穴位贴,则识别去除穴位贴的边缘点中的残缺处的不属于椭圆的边缘点;
具体地,对穴位贴的边缘点进行形态学处理,通过边缘曲率的比较方式识别残缺区域并去除。
6.一种机器人,其特征在于,包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上权利要求1至5任一项所述的基于YOLO的按摩机器人穴位检测与定位方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上权利要求1至5任一项所述的基于YOLO的按摩机器人穴位检测与定位方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111295931.5A CN114022554B (zh) | 2021-11-03 | 2021-11-03 | 一种基于yolo的按摩机器人穴位检测与定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111295931.5A CN114022554B (zh) | 2021-11-03 | 2021-11-03 | 一种基于yolo的按摩机器人穴位检测与定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114022554A CN114022554A (zh) | 2022-02-08 |
CN114022554B true CN114022554B (zh) | 2023-02-03 |
Family
ID=80060736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111295931.5A Active CN114022554B (zh) | 2021-11-03 | 2021-11-03 | 一种基于yolo的按摩机器人穴位检测与定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114022554B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI807678B (zh) * | 2022-03-11 | 2023-07-01 | 亞東學校財團法人亞東科技大學 | 互動式按摩部位生成方法及系統 |
CN116188816B (zh) * | 2022-12-29 | 2024-05-28 | 广东省新黄埔中医药联合创新研究院 | 一种基于循环一致性变形图像匹配网络的穴位定位方法 |
CN117173200B (zh) * | 2023-11-03 | 2024-02-02 | 成都数之联科技股份有限公司 | 一种图像分割方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109568123A (zh) * | 2018-11-02 | 2019-04-05 | 广东数相智能科技有限公司 | 一种基于yolo目标检测的穴位定位方法 |
CN109758355A (zh) * | 2019-03-07 | 2019-05-17 | 西安伊蔓蒂电子科技有限公司 | 一种基于人体穴位二维图像处理和三维立体定位方法 |
CN110930374A (zh) * | 2019-11-13 | 2020-03-27 | 北京邮电大学 | 一种基于双深度相机的腧穴定位方法 |
WO2020164282A1 (zh) * | 2019-02-14 | 2020-08-20 | 平安科技(深圳)有限公司 | 基于yolo的图像目标识别方法、装置、电子设备和存储介质 |
CN113205063A (zh) * | 2021-05-19 | 2021-08-03 | 云南电网有限责任公司电力科学研究院 | 一种输电导线缺陷的视觉识别及定位方法 |
-
2021
- 2021-11-03 CN CN202111295931.5A patent/CN114022554B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109568123A (zh) * | 2018-11-02 | 2019-04-05 | 广东数相智能科技有限公司 | 一种基于yolo目标检测的穴位定位方法 |
WO2020164282A1 (zh) * | 2019-02-14 | 2020-08-20 | 平安科技(深圳)有限公司 | 基于yolo的图像目标识别方法、装置、电子设备和存储介质 |
CN109758355A (zh) * | 2019-03-07 | 2019-05-17 | 西安伊蔓蒂电子科技有限公司 | 一种基于人体穴位二维图像处理和三维立体定位方法 |
CN110930374A (zh) * | 2019-11-13 | 2020-03-27 | 北京邮电大学 | 一种基于双深度相机的腧穴定位方法 |
CN113205063A (zh) * | 2021-05-19 | 2021-08-03 | 云南电网有限责任公司电力科学研究院 | 一种输电导线缺陷的视觉识别及定位方法 |
Non-Patent Citations (3)
Title |
---|
Data fusion-based sustainable digital twin system of intelligent detection robotics;Bin He et.al;《Journal of Cleaner Production》;20200131;全文 * |
基于模板匹配的穴位定位与跟踪研究;张化凯;《科技通报》;20110930;全文 * |
基于红外热像图的Bell面瘫客观评估与选穴方法研究;刘旭龙;《中国博士学位论文全文数据库 (基础科学辑)》;20131215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114022554A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114022554B (zh) | 一种基于yolo的按摩机器人穴位检测与定位方法 | |
CN104424629B (zh) | 一种x光胸片肺部分割方法和装置 | |
US5457754A (en) | Method for automatic contour extraction of a cardiac image | |
CN109124662B (zh) | 肋骨中心线检测装置及方法 | |
CN101853333B (zh) | 医疗机器人导航定位图像中的标记拾取方法 | |
EP2085928B1 (en) | Detection of blobs in images | |
US20050129296A1 (en) | Method and system for detecting a fiducial in digital projection images | |
CN110930374A (zh) | 一种基于双深度相机的腧穴定位方法 | |
CN107665486A (zh) | 一种应用于x射线图像的自动拼接方法、装置及终端设备 | |
JPH09511077A (ja) | 異なる2種の方式による画像整合および画像相関のための自動化方法およびシステム | |
Su et al. | Junction detection for linear structures based on Hessian, correlation and shape information | |
CN111784701B (zh) | 结合边界特征增强和多尺度信息的超声图像分割方法及系统 | |
CN108986152A (zh) | 一种基于差分图像的异物检测方法及装置 | |
CN109363699A (zh) | 一种乳腺影像病灶识别的方法及装置 | |
CN113284160B (zh) | 一种手术导航标记珠体识别的方法、装置和设备 | |
CN111220235B (zh) | 水位监测方法及装置 | |
CN103460254A (zh) | 基于图像内容的自动亮度检测方法与装置 | |
CN109087310A (zh) | 睑板腺纹理区域的分割方法、系统、存储介质及智能终端 | |
US20030228044A1 (en) | Radiographic marker location | |
CN105205784B (zh) | 标尺识别方法及影像拼接方法 | |
CN113792718B (zh) | 深度图中人脸区域定位方法、电子设备及存储介质 | |
Wieclawek et al. | Watershed based intelligent scissors | |
Ballerini et al. | Multiple genetic snakes for bone segmentation | |
Wang et al. | Improved FCOS for detecting breast cancers | |
CN115880358A (zh) | 定位模型的构建方法、影像标志点的定位方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |