CN115719358A - 一种x射线安检图像中直线段提取方法 - Google Patents

一种x射线安检图像中直线段提取方法 Download PDF

Info

Publication number
CN115719358A
CN115719358A CN202211476286.1A CN202211476286A CN115719358A CN 115719358 A CN115719358 A CN 115719358A CN 202211476286 A CN202211476286 A CN 202211476286A CN 115719358 A CN115719358 A CN 115719358A
Authority
CN
China
Prior art keywords
edge
point
image
current
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.)
Pending
Application number
CN202211476286.1A
Other languages
English (en)
Inventor
毛林
任世龙
孔维武
李宏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
First Research Institute of Ministry of Public Security
Beijing Zhongdun Anmin Analysis Technology Co Ltd
Original Assignee
First Research Institute of Ministry of Public Security
Beijing Zhongdun Anmin Analysis Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by First Research Institute of Ministry of Public Security, Beijing Zhongdun Anmin Analysis Technology Co Ltd filed Critical First Research Institute of Ministry of Public Security
Priority to CN202211476286.1A priority Critical patent/CN115719358A/zh
Publication of CN115719358A publication Critical patent/CN115719358A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

本发明公开了一种X射线安检图像中直线段提取方法,首先利用基于图像局部熵的各向异性滤波方法对X射线安检图像进行滤波,在去除噪声的同时也可以很好保持图像中的弱边缘;然后提出图像边缘单像素细化的方法和曲线提取的方法,相对现有常规方法,可以提取更大长度的曲线,减小曲线断裂的概率;然后利用Douglas‑Peucker算法提取直线段,在提取直线段的同时可以保留直线段间的交点;最后根据X射线安检图像的先验知识,去除无机物物体、行包边缘等显著干扰直线段。本发明可以解决安检设备行包图像中薄片型物体边缘不清晰、提取边缘直线段不连续的问题,高效准确地实现薄片型物体边缘直线段的检测,对后续X射线安检图像中薄片***物的分割与识别有重要意义。

Description

一种X射线安检图像中直线段提取方法
技术领域
本发明涉及图像处理技术领域,具体涉及一种X射线安检图像中直线段提取方法。
背景技术
随着我国经济的高速增长,公共交通飞速发展,人们出行变得更加快捷便利的同时,公共交通安全问题也逐渐突显出来。因此,安检设备对行李中禁携物品的准确检测能力对保障国家安全、社会安定和人民生命财产安全变得越来越重要。
AT安检设备以其较高的检测能力和较经济的设备成本优势在机场、火车站等人员密集的公共场所得到广泛应用。长期以来,薄片型物体(如薄片型***物)探测一直是AT安检设备的功能瓶颈与技术难点,因薄片型物体厚度薄,X射线投影特征偏弱,再加上一旦行李箱中物品杂乱,出现明显重叠和遮挡情况,将进一步降低AT安检设备薄片型物体的检出能力。薄片型物体最有价值的投影特征是其边缘直线段,这是后续分割与进一步识别薄片型物体的基础,然而,X射线行包图像中薄片型物体投影往往存在灰度对比度低、边缘不清晰、易被其它物体遮挡等不利因素,利用常规的直线检测算法提取相关特征困难。
发明内容
针对现有技术的不足,本发明旨在提供一种X射线安检图像中直线段提取方法。
为了实现上述目的,本发明采用如下技术方案:
一种X射线安检图像中直线段提取方法,包括以下步骤:
步骤S1、获取原始X射线安检图像I(x,y);
步骤S2、对图像I(x,y)进行基于图像局部熵的各向异性滤波,得到滤波后的图像I1(x,y);
步骤S3、对图像I1(x,y)进行Canny边缘检测,得到边缘图像I2(x,y);
步骤S4、对图像I2(x,y)进行边缘细化处理,得到单像素边缘图像I3(x,y);具体过程为:
S4.1、求取图像I2(x,y)中每个边缘点的邻域分布情况;以×表示当前待处理边缘像素点,以P0-P7表示当前像素点的八邻域点,以P8-P23表示八邻域外点;
S4.2、当点×的八邻域点内无边缘点,消除当前边缘像素点×;
当点×的八邻域点内有1个边缘点P时,对边缘点P的八邻域点进行判断。若边缘点P的八邻域点除×点外仅有1个边缘点,则保留当前边缘像素点×;若边缘点P的八邻域点除×点外有2个边缘点,如果这2个边缘点相邻,且其中1点与边缘点P所成方向和×点与边缘点P所成方向相同,则保留当前边缘像素点×,其他情况下消除当前边缘像素点×;
当点×的八邻域点内有2个边缘点时,若这2个边缘点不连通,则消除当前边缘像素点×;若这2个边缘点连通时:
1)当这2个边缘点是对角关系时,若这2个边缘点中的任意一个边缘点在其八邻域点中除×点外,还有其他边缘点,则消除当前边缘像素点×;
2)当这2个边缘点是四连通关系时,若这2个边缘点在其八邻域点中均有边缘点,且为该2个边缘点的公有邻域边缘点时,消除当前边缘像素点×,其余情况则保留当前边缘像素点×。
当点×的八邻域点中有3个边缘点时,若这3个边缘点连通,且至少存在一个四连通时,消除当前边缘像素点×,否则保留当前边缘像素点×;
当点×的八邻域点中有4个以上边缘点时,若这些边缘点间存在连通关系,则消除当前边缘像素点×,否则保留当前边缘像素点×;
最后得到单像素边缘图像I3(x,y);
步骤S5、按照边缘跟踪方法从图像I3(x,y)中提取曲线,得到曲线集C;具体过程为:
S5.1、建立一个与图像I3(x,y)相同大小的标记矩阵用于表示像素被使用状态,标记矩阵初始化像素为0;
S5.2、遍历图像I3(x,y),若有边缘点的八邻域点内只有1个边缘点,则此边缘点为曲线起始点,以起始点为当前点开始跟踪;
S5.3、在标记矩阵中设置当前点值为1,遍历当前点的八邻域点,八邻域点中未标记的边缘点数量为N;
S5.4、若N=0,当前曲线跟踪结束,返回步骤S5.2,继续遍历图像I3(x,y),寻找新的曲线起始点;
若N=1,则下一边缘点为该未标记的边缘点,在当前曲线的曲线链码表中记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;链码值为八邻域的方向值,取值为0-7,逆时针方向递增;
若N≥2,首先确定曲线主方向,如果当前曲线像素点个数小于10,曲线主方向定义为当前曲线链码表中链码值的众数,否则曲线主方向定义为当前曲线链码表中后八个链码值的众数;如果当前点在曲线主方向处存在边缘点,则以这个边缘点为下一边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果当前点在曲线主方向处不存在边缘点,判断曲线主方向的链码值减一的位置是否存在边缘点,若存在边缘点,则下一边缘点为此点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果曲线主方向的链码值减一的位置不存在边缘点,判断主方向的链码值加一的位置是否存在边缘点,若存在边缘点,则下一边缘点为这个边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3,否则结束当前曲线跟踪,返回步骤S5.2;
最终得到曲线集C;
步骤S6、对曲线集C中每一条曲线按照Douglas-Peucker算法压缩,可得到所有直线段的端点;
步骤S7、定义直线段端点间的距离为直线长度,若直线长度满足所设长度阈值要求,则保留该直线,否则舍去;
步骤S8、根据直线端点可计算得到该直线段上的所有像素点,计算每条直线段的方程和角度,提取直线段;
步骤S9、根据X射线安检图像的先验知识,去除图像中的显著干扰直线段;
步骤S10、输出剩余直线段,流程结束。
进一步地,步骤S2的具体过程为:
S2.1、利用图像局部熵公式
Figure BDA0003960041020000051
计算图像I(x,y)每个像素点的局部熵,其中Ωk为以当前像素点(x,y)为中心的k×k邻域,L为图像灰度级,
Figure BDA0003960041020000052
为灰度级l在邻域Ωk中出现的概率,nl为灰度级为l的像素个数;
S2.2、P-M模型中扩散系数函数为
Figure BDA0003960041020000053
其中
Figure BDA0003960041020000054
为图像在像素点(x,y)处的梯度,K为梯度门限;定义结合局部熵的扩散系数
Figure BDA0003960041020000055
H(x,y)表示像素点(x,y)处的图像局部熵;
S2.3、采用八个方向离散化,迭代公式为:
Figure BDA0003960041020000056
其中,t为迭代次数,λ为控制平滑的参数,
Figure BDA0003960041020000057
为东、西、南、北、东南、东北、西南、西北八个方向的差分;
由此得到经过基于图像局部熵的各向异性滤波处理后的图像I1(x,y)。
进一步地,步骤S9的具体过程为:
S9.1、建立一个与原始X射线安检图像相同大小的全0矩阵作为背景边缘图;
S9.2、利用Prewitt算子计算图像I1(x,y)中每个像素点的梯度,在背景边缘图中用255标记梯度大于150的像素点;
S9.3、对图像I1(x,y)中每个像素点,遍历其上下左右四邻域,若四邻域中有且只有一个像素点值大于235,则在背景边缘图中用255标记该像素点;
S9.4、利用形态学膨胀处理背景边缘图;
S9.5、对于步骤S8中提取的所有直线段,遍历每条直线段上的各个像素点,若该条直线段上有一半以上的像素点都处于背景边缘图中的标记位置,则去除该条直线段。
本发明的有益效果在于:本发明首先利用基于图像局部熵的各向异性滤波方法对X射线安检图像进行滤波,在去除噪声的同时也可以很好保持图像中的弱边缘;然后提出图像边缘单像素细化的方法和曲线提取的方法,相对现有常规方法,可以提取更大长度的曲线,减小曲线断裂的概率;然后利用Douglas-Peucker算法提取直线段,在提取直线段的同时可以保留直线段间的交点;最后根据X射线安检图像的先验知识,去除无机物物体、行包边缘等显著干扰直线段。本发明可以解决安检设备行包图像中薄片型物体边缘不清晰、提取边缘直线段不连续的问题,高效准确地实现薄片型物体边缘直线段的检测,对后续X射线安检图像中薄片***物的分割与识别有重要意义。
附图说明
图1为本发明实施例1中的方法流程示意图;
图2为本发明实施例1中邻域模板示意图;
图3为本发明实施例2中获取的原始X射线安检图像;
图4为本发明实施例2中各向异性滤波处理后的图像;
图5为本发明实施例2中步骤S4处理后的单像素边缘图像;
图6为本发明实施例2中步骤S8提取直线段后的结果示意图;
图7为本发明实施例2中步骤S10输出的剩余直线段示意图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
实施例1
本实施例提供一种X射线安检图像中直线段提取方法,总体包括各向异性滤波、图像Canny边缘提取、图像边缘单像素处理、曲线提取、基于Douglas-Peucker算法的直线段提取、直线段长度判断和基于先验知识去除显著干扰直线段的步骤。
具体地,如图1所示,所述X射线安检图像中直线段提取方法包括以下步骤:
步骤S1、获取原始X射线安检图像I(x,y);
步骤S2、对图像I(x,y)进行基于图像局部熵的各向异性滤波,得到滤波后的图像I1(x,y);具体过程为:
S2.1、利用图像局部熵公式
Figure BDA0003960041020000081
计算图像I(x,y)每个像素点的局部熵,其中Ωk为以当前像素点(x,y)为中心的k×k邻域,L为图像灰度级,
Figure BDA0003960041020000082
为灰度级l在邻域Ωk中出现的概率,nl为灰度级为l的像素个数;
S2.2、P-M模型中扩散系数函数为
Figure BDA0003960041020000083
其中
Figure BDA0003960041020000084
为图像在像素点(x,y)处的梯度,K为梯度门限;定义结合局部熵的扩散系数
Figure BDA0003960041020000085
H(x,y)表示像素点(x,y)处的图像局部熵。
S2.3、采用八个方向离散化,迭代公式为:
Figure BDA0003960041020000086
其中,t为迭代次数,λ为控制平滑的参数,
Figure BDA0003960041020000087
为东、西、南、北、东南、东北、西南、西北八个方向的差分。
由此得到经过基于图像局部熵的各向异性滤波处理后的图像I1(x,y)。
步骤S3、对图像I1(x,y)进行Canny边缘检测,得到边缘图像I2(x,y);
步骤S4、对图像I2(x,y)进行边缘细化处理,得到单像素边缘图像I3(x,y);具体过程为:
S4.1、求取图像I2(x,y)中每个边缘点的邻域分布情况;邻域模板如图2所示,以×表示当前待处理边缘像素点,以P0-P7表示当前像素点的八邻域点,以P8-P23表示八邻域外点。
S4.2、当点×的八邻域点内无边缘点,消除当前边缘像素点×;
当点×的八邻域点内有1个边缘点P时,对边缘点P的八邻域点进行判断。若边缘点P的八邻域点除×点外仅有1个边缘点,则保留当前边缘像素点×;若边缘点P的八邻域点除×点外有2个边缘点,如果这2个边缘点相邻,且其中1点与边缘点P所成方向和×点与边缘点P所成方向相同,则保留当前边缘像素点×,其他情况下消除当前边缘像素点×;
当点×的八邻域点内有2个边缘点时,若这2个边缘点不连通,则消除当前边缘像素点×;若这2个边缘点连通时:
1)当这2个边缘点是对角关系时,例如图2的P4和P6,若这2个边缘点中的任意一个边缘点在其八邻域点中除×点外,还有其他边缘点,则消除当前边缘像素点×;
2)当这2个边缘点是四连通关系时,例如图2的P5和P6,若这2个边缘点在其八邻域点中均有边缘点,且为该2个边缘点的公有邻域边缘点时,如图2中的P19或P20或P19和P20,消除当前边缘像素点×,其余情况则保留当前边缘像素点×。
当点×的八邻域点中有3个边缘点时,若这3个边缘点连通,且至少存在一个四连通时,消除当前边缘像素点×,否则保留当前边缘像素点×;
当点×的八邻域点中有4个以上边缘点时,若这些边缘点间存在连通关系,则消除当前边缘像素点×,否则保留当前边缘像素点×;
最后得到单像素边缘图像I3(x,y);
步骤S5、按照边缘跟踪方法从图像I3(x,y)中提取曲线,得到曲线集C;具体过程为:
S5.1、建立一个与图像I3(x,y)相同大小的标记矩阵用于表示像素被使用状态,标记矩阵初始化像素为0;
S5.2、遍历图像I3(x,y),若有边缘点的八邻域点内只有1个边缘点,则此边缘点为曲线起始点,以起始点为当前点开始跟踪,并为当前曲线建立曲线链码表,用向量表示;
S5.3、在标记矩阵中设置当前点值为1,遍历当前点的八邻域点,八邻域点中未标记的边缘点数量为N;
S5.4、若N=0,当前曲线跟踪结束,返回步骤S5.2,继续遍历图像I3(x,y),寻找新的曲线起始点;
若N=1,则下一边缘点为该未标记的边缘点,在当前曲线的曲线链码表中记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;链码值为八邻域的方向值,取值为0-7,逆时针方向递增;
若N≥2,首先确定曲线主方向,如果当前曲线像素点个数小于10,曲线主方向定义为当前曲线链码表中链码值的众数,否则曲线主方向定义为当前曲线链码表中后八个链码值的众数;如果当前点在曲线主方向处存在边缘点,则以这个边缘点为下一边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果当前点在曲线主方向处不存在边缘点,判断曲线主方向的链码值减一的位置是否存在边缘点,若存在边缘点,则下一边缘点为此点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果曲线主方向的链码值减一的位置不存在边缘点,判断主方向的链码值加一的位置是否存在边缘点,若存在边缘点,则下一边缘点为这个边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3,否则结束当前曲线跟踪,返回步骤S5.2;
最终得到曲线集C;
步骤S6、对曲线集C中每一条曲线按照Douglas-Peucker算法压缩,可得到所有直线段的端点。Douglas-Peucker算法为本领域内公知技术,实现过程在此不以详述。
步骤S7、定义直线段端点间的距离为直线长度,若直线长度满足所设长度阈值要求,则保留该直线,否则舍去;
步骤S8、根据直线端点计算得到该直线段上的所有像素点,计算每条直线段的方程和角度,提取直线段;
步骤S9、根据X射线安检图像的先验知识,去除图像中无机物、托盘边缘、行包边缘等显著干扰直线段;具体过程为:
S9.1、建立一个与原始X射线安检图像相同大小的全0矩阵作为背景边缘图;
S9.2、利用Prewitt算子计算图像I1(x,y)中每个像素点的梯度,在背景边缘图中用255标记梯度大于150的像素点;
S9.3、对图像I1(x,y)中每个像素点,遍历其上下左右四邻域,若四邻域中有且只有一个像素点值大于235,则在背景边缘图中用255标记该像素点;
S9.4、利用形态学膨胀处理背景边缘图;
S9.5、对于步骤S8中提取的所有直线段,遍历每条直线段上的各个像素点,若该条直线段上有一半以上的像素点都处于背景边缘图中的标记位置,则去除该条直线段。
步骤S10、输出剩余直线段,流程结束。
实施例2
本实施例提供一种实施例1所述方法的应用实例。
步骤S1、通过AT安检设备采集,获得X射线安检图像I(x,y),为含有薄片型***物的某典型例图像,如图3所示;
步骤S2、对步骤S1获得的I(x,y)进行基于图像局部熵的各向异性滤波:
S2.1、利用图像局部熵公式
Figure BDA0003960041020000121
计算图像I(x,y)每个像素点的局部熵,其中Ωk为以当前像素点为中心的k×k邻域,本实施例中邻域大小的为7×7,L为图像灰度级,
Figure BDA0003960041020000131
为灰度级l在邻域Ωk中出现的概率,nl为灰度级为l的像素个数;
S2.2、P-M模型中扩散系数函数为
Figure BDA0003960041020000132
其中
Figure BDA0003960041020000133
为图像在(x,y)处的梯度,K为梯度门限,本实施例中取K=5。
定义结合局部熵的扩散系数
Figure BDA0003960041020000134
H(x,y)表示像素点(x,y)处的图像局部熵;
S2.3、采用八个方向离散化,迭代公式为:
Figure BDA0003960041020000135
其中,t为迭代次数,λ为控制平滑的参数,
Figure BDA0003960041020000136
为东、西、南、北、东南、东北、西南、西北八个方向的差分,本实施例中迭代次数和控制平滑参数分别为8和0.25。
由此,得到经过基于图像局部熵的各向异性滤波处理后的图像I1(x,y),如图4所示。
步骤S3、对图像I1(x,y)进行Canny边缘检测,得到边缘图像I2(x,y);
步骤S4、对图像I2(x,y)进行边缘细化处理,得到单像素边缘图像I3(x,y):
S4.1、求取图像I2(x,y)中每个边缘点的邻域分布情况,邻域模板如图2所示;
S4.2、当点×的八邻域点内无边缘点,消除当前边缘像素点×;
当点×的八邻域点内有1个边缘点P时,对边缘点P的八邻域点进行判断。若边缘点P的八邻域点除×点外仅有1个边缘点,则保留当前边缘像素点×;若边缘点P的八邻域点除×点外有2个边缘点,如果这2个边缘点相邻,且其中1点与边缘点P所成方向和×点与边缘点P所成方向相同,则保留当前边缘像素点×,其他情况下消除当前边缘像素点×;
当点×的八邻域点内有2个边缘点时,若这2个边缘点不连通,则消除当前边缘像素点×;若这2个边缘点连通时:
1)当这2个边缘点是对角关系时,例如图2的P4和P6,若这2个边缘点中的任意一个边缘点在其八邻域点中除×点外,还有其他边缘点,则消除当前边缘像素点×;
2)当这2个边缘点是四连通关系时,例如图2的P5和P6,若这2个边缘点在其八邻域点中均有边缘点,且为该2个边缘点的公有邻域边缘点时,如图2中的P19或P20或P19和P20,消除当前边缘像素点×,其余情况则保留当前边缘像素点×。
当点×的八邻域点中有3个边缘点时,若这3个边缘点连通,且至少存在一个四连通时,消除当前边缘像素点×,否则保留当前边缘像素点×;
当点×的八邻域点中有4个以上边缘点时,若这些边缘点间存在连通关系,则消除当前边缘像素点×,否则保留当前边缘像素点×;
边缘图I2(x,y)经过步骤S4的处理即可得到单像素边缘图像I3(x,y),如图5所示。
步骤S5,按照某种边缘跟踪方法从图像I3(x,y)中提取曲线,得到曲线集C,具体步骤为:
S5.1、建立一个与图像I3(x,y)相同大小的标记矩阵用于表示像素被使用状态,标记矩阵初始化像素为0;
S5.2、遍历图像I3(x,y),若有边缘点八邻域内只有1个边缘点,则此边缘点为曲线起始点,以起始点为当前点开始跟踪;
S5.3、在标记矩阵中设置当前点值为1,遍历当前点八邻域,八邻域内未标记的边缘点数量为N;
S5.4、若N=0,当前曲线跟踪结束,返回步骤S5.2,继续遍历图像I3(x,y),寻找新的曲线起始点;
若N=1,则下一边缘点为该未标记的边缘点,在当前曲线的曲线链码表中记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;链码值为八邻域的方向值,取值为0-7,逆时针方向递增;
若N≥2,首先确定曲线主方向,如果当前曲线像素点个数小于10,曲线主方向定义为当前曲线链码表中链码值的众数,否则曲线主方向定义为当前曲线链码表中后八个链码值的众数;如果当前点在曲线主方向处存在边缘点,则以这个边缘点为下一边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果当前点在曲线主方向处不存在边缘点,判断曲线主方向的链码值减一的位置是否存在边缘点,若存在边缘点,则下一边缘点为此点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果曲线主方向的链码值减一的位置不存在边缘点,判断主方向的链码值加一的位置是否存在边缘点,若存在边缘点,则下一边缘点为这个边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3,否则结束当前曲线跟踪,返回步骤S5.2;
最终得到曲线集C;
步骤S6、对曲线集C中每一条曲线按照Douglas-Peucker算法压缩,得到所有直线的端点;
步骤S7、根据直线端点可计算得到直线长度,若直线长度满足所设长度阈值要求,则保留该直线,否则舍去。本发明中直线长度阈值一种可选方案为15;
步骤S8、根据直线端点得到该直线段上的所有像素点,计算每条直线段的方程的角度,提取直线段,如图6所示;
步骤S9、根据X射线安检图像的先验知识,去除图像中无机物、托盘边缘、行包边缘等显著干扰直线段,其具体实现方法为:
S9.1、建立一个与原图像相同大小的全0矩阵作为背景边缘图;
S9.2、利用Prewitt算子计算图像I1(x,y)中每个像素点的梯度,在背景边缘图中用255标记梯度大于150的像素点;
S9.3、对图像I1(x,y)中每个像素点,遍历其上下左右四邻域,若四邻域中有且只有一个像素点值大于235,在背景边缘图中用255标记该像素点;
S9.4、利用形态学膨胀处理背景边缘图;
S9.5、对于步骤S8中提取的所有直线段,遍历每条直线段上的各个像素点,若该条直线段上有一半及以上的像素点都处于背景边缘图中的标记位置,则去除该条直线段。
步骤S10,输出剩余直线段,如图7所示,算法结束。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。

Claims (3)

1.一种X射线安检图像中直线段提取方法,其特征在于,包括以下步骤:
步骤S1、获取原始X射线安检图像I(x,y);
步骤S2、对图像I(x,y)进行基于图像局部熵的各向异性滤波,得到滤波后的图像I1(x,y);
步骤S3、对图像I1(x,y)进行Canny边缘检测,得到边缘图像I2(x,y);
步骤S4、对图像I2(x,y)进行边缘细化处理,得到单像素边缘图像I3(x,y);具体过程为:
S4.1、求取图像I2(x,y)中每个边缘点的邻域分布情况;以×表示当前待处理边缘像素点,以P0-P7表示当前像素点的八邻域点,以P8-P23表示八邻域外点;
S4.2、当点×的八邻域点内无边缘点,消除当前边缘像素点×;
当点×的八邻域点内有1个边缘点P时,对边缘点P的八邻域点进行判断;若边缘点P的八邻域点除×点外仅有1个边缘点,则保留当前边缘像素点×;若边缘点P的八邻域点除×点外有2个边缘点,如果这2个边缘点相邻,且其中1点与边缘点P所成方向和×点与边缘点P所成方向相同,则保留当前边缘像素点×,其他情况下消除当前边缘像素点×;
当点×的八邻域点内有2个边缘点时,若这2个边缘点不连通,则消除当前边缘像素点×;若这2个边缘点连通时:
1)当这2个边缘点是对角关系时,若这2个边缘点中的任意一个边缘点在其八邻域点中除×点外,还有其他边缘点,则消除当前边缘像素点×;
2)当这2个边缘点是四连通关系时,若这2个边缘点在其八邻域点中均有边缘点,且为该2个边缘点的公有邻域边缘点时,消除当前边缘像素点×,其余情况则保留当前边缘像素点×;
当点×的八邻域点中有3个边缘点时,若这3个边缘点连通,且至少存在一个四连通时,消除当前边缘像素点×,否则保留当前边缘像素点×;
当点×的八邻域点中有4个以上边缘点时,若这些边缘点间存在连通关系,则消除当前边缘像素点×,否则保留当前边缘像素点×;
最后得到单像素边缘图像I3(x,y);
步骤S5、按照边缘跟踪方法从图像I3(x,y)中提取曲线,得到曲线集C;具体过程为:
S5.1、建立一个与图像I3(x,y)相同大小的标记矩阵用于表示像素被使用状态,标记矩阵初始化像素为0;
S5.2、遍历图像I3(x,y),若边缘点的八邻域点内只有1个边缘点,则此边缘点为曲线起始点,以起始点为当前点开始跟踪;
S5.3、在标记矩阵中设置当前点值为1,遍历当前点的八邻域点,八邻域点中未标记的边缘点数量为N;
S5.4、若N=0,当前曲线跟踪结束,返回步骤S5.2,继续遍历图像I3(x,y),寻找新的曲线起始点;
若N=1,则下一边缘点为该未标记的边缘点,在当前曲线的曲线链码表中记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;链码值为八邻域的方向值,取值为0-7,逆时针方向递增;
若N≥2,首先确定曲线主方向,如果当前曲线像素点个数小于10,曲线主方向定义为当前曲线链码表中链码值的众数,否则曲线主方向定义为当前曲线链码表中后八个链码值的众数;如果当前点在曲线主方向处存在边缘点,则以这个边缘点为下一边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果当前点在曲线主方向处不存在边缘点,判断曲线主方向的链码值减一的位置是否存在边缘点,若存在边缘点,则下一边缘点为此点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3;如果曲线主方向的链码值减一的位置不存在边缘点,判断主方向的链码值加一的位置是否存在边缘点,若存在边缘点,则下一边缘点为这个边缘点,在当前曲线的曲线链码表记录当前点到下一边缘点的链码值,并把下一边缘点设为当前点,返回步骤S5.3,否则结束当前曲线跟踪,返回步骤S5.2;
最终得到曲线集C;
步骤S6、对曲线集C中每一条曲线按照Douglas-Peucker算法压缩,可得到所有直线段的端点;
步骤S7、定义直线段端点间的距离为直线长度,若直线长度满足所设长度阈值要求,则保留该直线,否则舍去;
步骤S8、根据直线端点可计算得到该直线段上的所有像素点,计算每条直线段的方程和角度,提取直线段;
步骤S9、根据X射线安检图像的先验知识,去除图像中的显著干扰直线段;
步骤S10、输出剩余直线段,流程结束。
2.根据权利要求1所述的方法,其特征在于,步骤S2的具体过程为:
S2.1、利用图像局部熵公式
Figure FDA0003960041010000041
计算图像I(x,y)每个像素点的局部熵,其中Ωk为以当前像素点(x,y)为中心的k×k邻域,L为图像灰度级,
Figure FDA0003960041010000042
为灰度级l在邻域Ωk中出现的概率,nl为灰度级为l的像素个数;
S2.2、P-M模型中扩散系数函数为
Figure FDA0003960041010000043
其中▽I(x,y)|为图像在像素点(x,y)处的梯度,K为梯度门限;定义结合局部熵的扩散系数
Figure FDA0003960041010000044
H(x,y)表示像素点(x,y)处的图像局部熵;
S2.3、采用八个方向离散化,迭代公式为:
Figure FDA0003960041010000045
其中,t为迭代次数,λ为控制平滑的参数,
Figure FDA0003960041010000046
为东、西、南、北、东南、东北、西南、西北八个方向的差分;
由此得到经过基于图像局部熵的各向异性滤波处理后的图像I1(x,y)。
3.根据权利要求1所述的方法,其特征在于,步骤S9的具体过程为:
S9.1、建立一个与原始X射线安检图像相同大小的全0矩阵作为背景边缘图;
S9.2、利用Prewitt算子计算图像I1(x,y)中每个像素点的梯度,在背景边缘图中用255标记梯度大于150的像素点;
S9.3、对图像I1(x,y)中每个像素点,遍历其上下左右四邻域,若四邻域中有且只有一个像素点值大于235,则在背景边缘图中用255标记该像素点;
S9.4、利用形态学膨胀处理背景边缘图;
S9.5、对于步骤S8中提取的所有直线段,遍历每条直线段上的各个像素点,若该条直线段上有一半以上的像素点都处于背景边缘图中的标记位置,则去除该条直线段。
CN202211476286.1A 2022-11-23 2022-11-23 一种x射线安检图像中直线段提取方法 Pending CN115719358A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211476286.1A CN115719358A (zh) 2022-11-23 2022-11-23 一种x射线安检图像中直线段提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211476286.1A CN115719358A (zh) 2022-11-23 2022-11-23 一种x射线安检图像中直线段提取方法

Publications (1)

Publication Number Publication Date
CN115719358A true CN115719358A (zh) 2023-02-28

Family

ID=85256072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211476286.1A Pending CN115719358A (zh) 2022-11-23 2022-11-23 一种x射线安检图像中直线段提取方法

Country Status (1)

Country Link
CN (1) CN115719358A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503912A (zh) * 2023-06-25 2023-07-28 山东艾克斯智能科技有限公司 基于电子图囊的安检预警方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503912A (zh) * 2023-06-25 2023-07-28 山东艾克斯智能科技有限公司 基于电子图囊的安检预警方法
CN116503912B (zh) * 2023-06-25 2023-08-25 山东艾克斯智能科技有限公司 基于电子图囊的安检预警方法

Similar Documents

Publication Publication Date Title
CN104751142B (zh) 一种基于笔划特征的自然场景文本检测方法
CN110349207B (zh) 一种复杂环境下的视觉定位方法
CN109785285B (zh) 一种基于椭圆特征拟合的绝缘子破损检测方法
CN107688806B (zh) 一种基于仿射变换的自由场景文本检测方法
CN107045634B (zh) 一种基于最大稳定极值区域与笔画宽度的文本定位方法
CN111931538A (zh) 一种Micro QR二维码的定位方法
CN111489337B (zh) 一种自动光学检测伪缺陷去除方法及***
CN105447489B (zh) 一种图片ocr识别***的字符与背景粘连噪声消除方法
WO2015066984A1 (zh) 一种面向复杂背景的光学字符识别方法及装置
CN109712147A (zh) 一种基于Zhang-Suen图像骨架提取的干涉条纹中心线拟合方法
CN112308872B (zh) 基于多尺度Gabor一阶导数的图像边缘检测方法
CN112488046A (zh) 一种基于无人机高分辨率影像的车道线提取方法
CN115719358A (zh) 一种x射线安检图像中直线段提取方法
CN110782385A (zh) 一种基于深度学习的图像水印的去除方法
CN110687122A (zh) 一种陶瓦表面裂纹检测方法及***
CN111652844B (zh) 一种基于数字图像区域增长的x射线缺陷检测方法及***
Ashoori-Lalimi et al. An efficient method for vehicle license plate detection in complex scenes
CN115205560A (zh) 一种基于单目相机的先验地图辅助室内定位方法
Zhao et al. Analysis of image edge checking algorithms for the estimation of pear size
CN108460735A (zh) 基于单幅图像的改进暗通道去雾方法
CN104102911A (zh) 一种基于aoi的子弹表观缺陷检测***的图像处理算法
CN112200769B (zh) 一种用于违建检测的定点监控新旧时相图像变化检测方法
CN111583156B (zh) 文档图像底纹去除方法及***
CN112258518B (zh) 一种海天线提取方法及装置
CN111815591B (zh) 基于ct图像的肺结节检测方法

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