CN116228634A - 用于图像检测的距离变换计算方法、应用、终端及介质 - Google Patents
用于图像检测的距离变换计算方法、应用、终端及介质 Download PDFInfo
- Publication number
- CN116228634A CN116228634A CN202211563386.8A CN202211563386A CN116228634A CN 116228634 A CN116228634 A CN 116228634A CN 202211563386 A CN202211563386 A CN 202211563386A CN 116228634 A CN116228634 A CN 116228634A
- Authority
- CN
- China
- Prior art keywords
- pixel point
- point
- zero
- image
- zero pixel
- 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.)
- Granted
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 70
- 238000001514 detection method Methods 0.000 title claims abstract description 46
- 230000009466 transformation Effects 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims abstract description 11
- 230000015654 memory Effects 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 11
- 241000894006 Bacteria Species 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 230000003139 buffering effect Effects 0.000 abstract description 5
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000012360 testing method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 235000005121 Sorbus torminalis Nutrition 0.000 description 1
- 244000152100 Sorbus torminalis Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw 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/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20036—Morphological image processing
- G06T2207/20041—Distance transform
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种用于图像检测的距离变换计算方法,包括:以图像中的一非零像素点为中心,分别以第一像素点和第二像素点为半径画圆,形成圆环区域;在圆环区域内搜索零像素点,如果没找到零像素点,则将环形的外圆半径增加到第三像素点,重复该步骤,直到搜索到零像素点为止;重复上述过程,直至遍历图像中的每一个点;根据搜索到的零像素点,计算坐标原点与零像素点之间的欧几里得距离。同时提供了该距离变换计算方法的应用。本发明中每个点的计算不依赖于其他点的计算,也不需要中间缓存,能够适用于GPU并行计算实现。在零点均匀分布的情况下,非零像素值占比较高时同样可以获得较高的性能。
Description
技术领域
本发明涉及图像检测技术领域,具体地,涉及一种用于图像检测的距离变换计算方法、应用、终端及介质。
背景技术
距离变换提供了像素与可能表示物体或某些特征的图像子集的距离度量。二值图像将图像分为了背景和物体两部分,物体通常又称为前景目标。在二值图像中,通常将前景目标的灰度值设为255,即白色,背景的灰度值设为0,即黑色。因此,定义非零像素点即为前景目标,零像素点即为背景,图像中前景目标中的像素点距离背景越远,那么距离值就越大,如果将这个距离值替换为像素值,那么新生成的图像中这个点就越亮,进而能够找前景目标中的目标点(例如中心点)。
现有的用于图像检测的距离变换计算技术,通常存在如下技术问题:
1、需要多次遍历图像才能计算出结果,并且通过GPU实现时,需要一块缓存存放中间结果;
2、在图像检测时,后一个像素点必须在前一个像素点计算完成后才能开始计算,很难在GPU上实现并行;
3、不容易将二值化计算和距离变换(distance transform)计算融合,或者融合后计算量增加。
经过检索发现:
A.MEIJSTER等人在《A GENERAL ALGORITHM FOR COMPUTING DISTANCETRANSFORMS IN LINEAR TIME》中公开了一种计算数字图像距离变换的通用算法。该算法分为两个阶段,两个阶段均包含两个扫描,一个向前扫描,一个向后扫描。第一阶段按列扫描图像,第二阶段按行扫描图像。由于每一行(列)的计算独立于其他行(列)的计算,算法可以很容易地在共享内存计算机上并行化。该算法可用于精确的欧氏、曼哈顿(L1范数)和棋盘距离(L∞范数)变换的计算。但是,该算法中图像内容对算法性能没有影响,需要从上倒下、从下到上、从左到右、从右到左,四次遍历图像,所以该算法仍然需要开辟一块临时空间存放中间结果。
现有的一种二值图像的距离变换技术,通过表识空间点(目标点与背景点)距离的过程,最终将二值图像转换为灰度图像。但是该技术仍然需要多次遍历图像,后一个点的结果需要前一个点计算完成才能进行计算很难实现并行(https://static.kancloud.cn/trent/imagesharp/10047)。
发明内容
本发明针对现有技术中存在的上述不足,提供了一种用于图像检测的距离变换(di stance transform)计算方法、应用、终端及介质。
根据本发明的一个方面,提供了一种用于图像检测的距离变换计算方法,包括:
以图像中的一非零像素点为坐标原点,构建坐标轴;
以所述坐标原点为中心,分别以坐标轴上相邻的第一像素点和第二像素点为半径画圆,得到内圆和外圆,形成圆环区域;
在所述圆环区域内搜索零像素点,如果没有找到零像素点,则将所述圆环区域的外圆半径增加到坐标轴上与所述第二像素点相邻的第三像素点,重复搜索的步骤,直到搜索到零像素点为止;如果找到零像素点,则根据搜索到的零像素点,计算坐标原点与零像素点之间的欧几里得距离;
重复上述过程,直至遍历图像中的每一个像素点,完成图像中的距离变换计算;
其中:
所述圆环区域包括所述内圆的边以及所述内圆的边至所述外圆的边之间的区域。
可选地,在所述圆环区域内搜索零像素点,包括:
分别搜索所述圆环区域的内圆的边在坐标轴上的坐标点是否包含零像素点;如果包含零像素点,则结束搜索;如果不包含零像素点,则继续执行一下步骤;
将所述内圆的边在坐标轴上的坐标点中的任意一个作为起始点;
以逆时针或顺时针方向为起始方向,从所述起始点开始沿所述起始方向递增一个像素点,并以该像素点作为第一目标点,搜索零像素点;
确定第二目标点至第八目标点,其中,所述第二目标点至所述第四目标点分别为沿所述起始方向所形成的所述第一目标点的对称点,所述第五目标点为沿所述起始方向所形成的所述第一目标点的互换点,所述第六目标点至所述第八目标点分别为沿所述起始方向所形成的所述第五目标点的对称点;
从所述第一目标点开始,按照所述起始方向,分别依次搜索所述第一目标点至所述第八目标点是否包含零像素点,完成一组零像素点搜索;如果包含零点,则结束搜索;如果不包含零像素点,则继续执行一下步骤;
将上一组的第一目标点作为起始点,沿所述起始方向递增一个像素点作为下一组的第一目标点,重复上述搜索的步骤,直至当前第一目标点的坐标点超出所述圆环区域的外圆的边,完成在该圆环区域内的搜索。
可选地,计算坐标原点与零像素点之间的欧几里得距离,包括:
设所述坐标原点为(Xi,Yi),设所述零像素点(Xj,Yj),计算所述坐标原点与所述零像素点之间的欧几里得距离d(i,j)为:
可选地,判断图像中的零像素点,包括:
针对二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val==0;当if val==0为true时,所述像素点为零像素点;否则,if val==0为false,所述像素点为非零像素点;
针对非二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val<二值化的阈值;当if val<二值化的阈值为true时,所述像素点为零像素点;否则,if val<二值化的阈值为false,所述像素点为非零像素点。
根据本发明的第二个方面,提供了一种上述任一项所述的用于图像检测的距离变换计算方法,应用于车辆自动驾驶控制系统,进行目标车辆和车道线之间的距离检测。
根据本发明的第三个方面,提供了一种上述任一项所述的用于图像检测的距离变换计算方法,应用于目标检测系统,进行多张图像中同一目标物体的检测。
根据本发明的第四个方面,提供了一种上述任一项所述的用于图像检测的距离变换计算方法,应用于医学图像处理系统,进行细胞或细菌分布规律的检测。
根据本发明的第五个方面,提供了一种终端,包括:存储器、GPU处理器及存储在存储器上并可在处理器上运行的计算机程序,所述GPU处理器执行所述程序时可用于执行上述任一项所述的方法。
根据本发明的第六个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述任一项所述的方法。
由于采用了上述技术方案,本发明与现有技术相比,具有如下至少一项的有益效果:
本发明提供的用于图像检测的距离变换计算方法、应用、终端及介质,其中每个点的计算不依赖于其他点的计算,也不需要中间缓存,能够适用于GPU并行计算实现。
本发明提供的用于图像检测的距离变换计算方法、应用、终端及介质,在零点均匀分布的情况下,非零像素值占比较高时同样可以获得较高的性能。
本发明提供的用于图像检测的距离变换计算方法、应用、终端及介质,可以在不增加计算量的情况下,实现二值化和距离变换计算的融合。
本发明提供的用于图像检测的距离变换计算方法、应用、终端及介质,可以应用于自动驾驶、目标检测、医学图像处理等图像检测技术领域中,当物体在图像中分布相对均匀时(例如具有较小且密集的格子的棋盘格图像、医学领域的细菌分布图像等),加速效果明显。
本发明提供的用于图像检测的距离变换计算方法、应用、终端及介质,只要一次遍历图像,并且不需要中间缓存,提高了图像检测的效率,降低了对计算环境的要求。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例中用于图像检测的距离变换计算方法的工作流程图。
图2为本发明一优选实施例中距离变换计算方法的工作流程图。
图3为本发明一优选实施例中圆环区域内搜索方法示意图。
具体实施方式
下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
图1为本发明实施例提供的用于图像检测的距离变换计算方法的工作流程图。
如图1所示,该实施例提供的用于图像检测的距离变换计算方法,可以包括:
S1,以图像中的一非零像素点为坐标原点,构建坐标轴;
S2,以坐标原点为中心,分别以坐标轴上相邻的第一像素点和第二像素点为半径画圆,得到内圆和外圆,形成圆环区域;
S3,在圆环区域内搜索零像素点,如果没有找到零像素点,则将圆环区域的外圆半径增加到坐标轴上与第二像素点相邻的第三像素点,重复搜索的步骤,直到搜索到零像素点为止;如果找到零像素点,则根据搜索到的零像素点,计算坐标原点与零像素点之间的欧几里得距离;
S4,重复S1~S3的过程,直至遍历图像中的每一个像素点点,完成图像中的距离变换计算;
其中:
圆环区域包括内圆的边以及内圆的边至外圆的边之间的区域。
下面结合优选实施例,对本发明上述实施例提供的技术方案进一步说明。
距离变换(Distance transform)计算图像中每一个非零像素点距离自己最近的零像素点的距离,而距离的类型一般有三种:DIST_L1(曼哈顿距离)、DIST_L2(欧几里得距离)、DIST_C(象棋格距离),该实施例主要针对DIST_L2进行优化。
本发明一优选实施例提供的距离变换计算方法,其具体计算过程如下。
假设位置点0为一个非零像素点,要找到离该点位置最近的零像素点,从而算出L2距离,如图2所示,该优选实施例的实现方法为:
步骤1,以位置点0为坐标原点,构建坐标轴;其中,该位置点0为图像中的一非零像素点;
步骤2,以位置点0为中心,分别以位置点1和位置点2为半径画圆;其中,位置点1和位置点2分别为坐标轴上相邻的两个像素点;
步骤3,在两个圆形成的圆环区域内(包括内部圆形的边)搜索零像素点,如果没找到零像素点,则将环形的半径增加到位置点3,重复上述步骤,直到搜索到零像素点为止,然后计算出对应的DIST_L2距离。其中,相邻两个位置点即相邻两个像素点之间的距离,定义为一个距离单位;其中,位置点3为坐标轴上与位置点2相邻的像素点;
步骤4,重复步骤1~步骤3的过程,直至遍历图像中的每一个点;
步骤5,计算搜索到的零像素点所对应的DIST_L2距离。
进一步地,在步骤3的一优选实施例中,在圆环区域内搜索零像素点的方法,具体包括如下步骤:
步骤3.1,分别搜索内圆的边在坐标轴上的坐标点是否包含零像素点;如果包含零像素点则结束搜索,如果不包含零像素点则继续执行一下步骤;
步骤3.2,将内圆的边在坐标轴上的坐标点中的任意一个作为起始点;
步骤3.3,以逆时针或顺时针方向为起始方向,从起始点开始沿起始方向递增一个像素点,并以该点作为第一目标点,搜索零像素点;
步骤3.4,确定第二目标点至第八目标点,其中,第二目标点至第四目标点分别为沿起始方向所形成的第一目标点的对称点,第五目标点为沿起始方向所形成的第一目标点的互换点,第六目标点至第八目标点分别为沿起始方向所形成的第五目标点的对称点;
步骤3.5,从第一目标点开始,按照起始方向,依次搜索第一目标点至第八目标点是否包含零像素点,完成一组零像素点搜索;如果包含零像素点则结束搜索,如果不包含零像素点则继续下一步骤;
步骤3.6,将上一组的第一目标点沿起始方向,递增一个像素点作为下一组的第一目标点,重复上述步骤,直至当前第一目标点的坐标点超出外圆的边,完成在该圆环区域内的搜索。
本发明上述实施例提供的用于图像检测的距离变换计算方法,采用在圆环区域内搜索零像素点的方法,对零点进行搜索,保证了每次搜索到的第一个零点为离该点最近的零点,并进行距离计算,这样就不用搜索多个零点然后找出最近的那个,实现单个点搜索最优化,减少计算量。两个点可以同时进行distance tranform计算,适合在GPU上并行计算。本发明上述实施例提供的用于图像检测的距离变换计算方法,可以在不增加计算量的情况下融合二值化。
下面以一个具体应用实例,对步骤1的搜索方法进一步说明。该具体应用实例以内圆的边在X轴上的坐标点作为第二起始点,以逆时针为起始方向实施。
如图3所示,在圆环O3区域内搜索零像素点的方法,包括:
分别搜索点(3,0)、(-3,0)、(0,3)、(0,-3)是否为零像素点;如果是,则结束搜索,如果不是,则进入下一个步骤;
以x正半轴上的点(3,0)作为起始点,开始往y正半轴(3,a)方向(逆时针方向),纵坐标递增(向上偏移)1个像素点,搜索零像素点,同时搜索其它八条线段上对称位置的点。
例如,搜索(3,1)点时,接着依次搜索(-3,1)、(-3,-1)、(3,-1)、(1,3)、(-1,3)、(-1,-3)、(1,-3)。搜索完一组对称点后,更新起始搜索点(3,1)为(3,2),即每次纵坐标递增(向上偏移)1个像素点,重复上述步骤,直到起始点纵坐标大于a,a为外圈的边上的点所在的纵坐标,完成在该圆环区域内的搜索。
本发明采用上述按顺序搜索的方式,具体如下优点:
更新一次起始点位置,可以计算出八个点的结果,节省计算量;
同时由于上述8个点中的相邻两点是关于坐标轴轴对称的,两个像素点的存储位置靠近,内存局部性更好。
步骤3中,图像中的每个点都按上述方法处理。
在步骤3的一优选实施例中,对于图像中的非零第一像素点(例如最左边点)(Xi,Yi)和图像中的其他任意零像素点(Xj,Yj),计算DIST_L2距离d(i,j)的公式如下:
很多方法在计算DIST_L2距离时,后一个点的计算需要前一个点的计算信息更新后才能计算,从而使得多个点并行计算变得困难,本发明上述实施例实现了一种点与点之间可以并行计算的方法,比较适合在GPU这种多核的处理器上部署,同时可以在不增加计算量的情况下,将二值化的操作和distance transform融合。
在本发明上述实施例中,判断图像中的零像素点,可以采用如下方法:
针对二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val==0;当if val==0为true时,像素点为零像素点;否则,if val==0为false,像素点为非零像素点;
针对非二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val<二值化的阈值;当if val<二值化的阈值为true时,像素点为零像素点;否则,if val<二值化的阈值为false,像素点为非零像素点。
在输入为非二值化图像时,判断是否为零像素点采用判断该点像素值是否小于二值化对应的阈值,判断是否为非零像素点采用判断该点像素值是否大于等于二值化对应的阈值,即可实现二值化和distance transform的融合。
distance transform的输入一般都是二值化后的图像,常规的处理方法:
当输入为非二值化图像时,将图像上的每个像素点和一个阈值比较大小,像素点比这个阈值大时,输出1,像素点比这个阈值小或者等于时,输出0。上述计算结果是0和1组成的一张图像(二值化图像)。把这张图像作为输入执行distance transform计算,也就是对于图像上不是0的点,找出离它点最近的0。从上述过程可以知道,计算出来的二值化图像要先存放到内存中,在算distance transform时再从内存中读取。
当输入为二值化图像时,在distance transform计算过程中需要判断哪一个点是1哪一个点是0。在输入为非二值化图像时,只要将像素点和阈值比较,如果小于等于阈值,就可以认为这个是二值化图像对应位置的零点。如果大于阈值,可以认为二值化图像对应的位置是1。这样就不存在常规方法中将二值化图像保存在内存的过程,在计算量没有增加的同时,较少了对内存的读写,性能更高。
如何理解:输入为二值化图像时,distance transform计算,是对于图像上不是0的点,找出离它点最近的0点。而输入为非二值化图像时,distance transform计算,是对于图像上大于阈值的点,找出离它点最近的小于等于阈值的点。
下面结合一组测试数据,对本发明上述上述实施例提供的技术方案所能达到的技术效果进一步说明。
表1为本发明上述实施例提供的用于图像检测的距离变换计算方法控制均匀分布的零像素点在整张图上出现的概率生成对应的测试图像的测试结果。例如,对图像上每一个点进行如下操作:随机产生一个0到10的小数,当小数小于2时,将像素点的值设置成0,大于2设置成1,这样整张图像上0出现的概率就是20%,并且0随机的分布在整张图像上。测试数据中零点比例就是通过控制图像的阈值来控制,上述阈值为2,如果设置为3,则零点比例为30%,对应表中的第三项。
该测试结果使用Mal i G78测试,GPU信息如下所示:
Mali G78
核数:24Core
主频:759MHz算力1076GFLOPs
Memory主频2750MHz
Memory带宽:44GB/s
表1均匀分布的零点测试
零点比例 | 512x512 | 1024x1024 | 2048x2048 |
1% | 4.5402ms | 10.6155ms | 32.7983ms |
10% | 1.1622ms | 3.8681ms | 10.6091ms |
30% | 0.6967ms | 2.1217ms | 5.4679ms |
50% | 0.5082ms | 1.8570ms | 3.8610ms |
70% | 0.4312ms | 1.089ms | 2.8010ms |
通过上述测试结果可知,在图像2048x2048以下尺寸,零点比例大于1%时,速率可以实现30帧每秒以上,表明对于算力更强的云端GPU效果更好。
本发明一实施例提供了一种本发明上述实施例中任一项的用于图像检测的距离变换计算方法,应用于车辆自动驾驶控制系统,进行目标车辆和车道线之间的距离检测。
进一步地,在自动驾驶中,由于车道线有多条,并且是等间隔排布的,采用本发明上述实施例提供的距离变换计算方法,检测每个点距离车道线的距离,算法性能较好。
本发明一实施例提供了一种本发明上述实施例中任一项的用于图像检测的距离变换计算方法,应用于目标检测系统,进行多张图像中同一目标物体的检测。
进一步地,在目标检测中,判断前一张图像和后一张图像上的物体是否为同一个物体时,当间隔很短的时间采集两张图像,图像上的一个物体的位移距离很小,两张图像物体通过distancetransform计算距离,图像一和图像二中距离最短的物体即为同一个物体。采用本发明上述实施例提供的距离变换计算方法,性能较高。
本发明一实施例提供了一种本发明上述实施例中任一项的用于图像检测的距离变换计算方法,应用于医学图像处理系统,进行细胞或细菌分布规律的检测。
进一步地,在处理医学图像时,计算细菌或者细胞的分布是否有规律,在某些部分细菌较多,每个点的distance距离较小,反之距离较大,算法性能较好。
本发明一实施例提供一种终端,包括:存储器、GPU处理器及存储在存储器上并可在处理器上运行的计算机程序,GPU处理器执行程序时可用于执行本发明上述实施例中任一项的方法,或,运行本发明上述实施例中任一项的系统。
可选地,存储器,用于存储程序;存储器,可以包括易失性存储器(英文:volati lememory),例如随机存取存储器(英文:random-access memory,缩写:RAM),如静态随机存取存储器(英文:static random-access memory,缩写:SRAM),双倍数据率同步动态随机存取存储器(英文:Double Data Rate Synchronous Dynamic Random Access Memory,缩写:DDR SDRAM)等;存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory)。存储器用于存储计算机程序(如实现上述方法的应用程序、功能模块等)、计算机指令等,上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
GPU处理器,用于执行存储器存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤或系统各种的各个模块。具体可以参见前面方法和系统实施例中的相关描述。
GPU处理器和存储器可以是独立结构,也可以是集成在一起的集成结构。当处理器和存储器是独立结构时,存储器、处理器可以通过总线耦合连接。
本发明一实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行本发明上述实施例中任一项的方法,或,运行本发明上述实施例中的系统。
本发明上述实施例提供的用于图像检测的距离变换计算方法、应用、终端及介质,其中每个点的计算不依赖于其他点的计算,也不需要中间缓存,能够适用于GPU并行计算实现;在零点均匀分布的情况下,非零像素值占比较高时同样可以获得较高的性能;可以在不增加计算量的情况下,实现二值化和距离变换计算的融合;可以应用于自动驾驶、目标检测、医学图像处理等图像检测中,当物体在图像中分布相对均匀时(例如具有较小且密集的格子的棋盘格图像、医学领域的细菌分布图像等),加速效果明显;只要一次遍历图像,并且不需要中间缓存,提高了图像检测的效率,降低了对计算环境的要求。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本发明上述实施例中未尽事宜均为本领域公知技术。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (9)
1.一种用于图像检测的距离变换计算方法,其特征在于,包括:
以图像中的一非零像素点为坐标原点,构建坐标轴;
以所述坐标原点为中心,分别以坐标轴上相邻的第一像素点和第二像素点为半径画圆,得到内圆和外圆,形成圆环区域;
在所述圆环区域内搜索零像素点,如果没有找到零像素点,则将所述圆环区域的外圆半径增加到坐标轴上与所述第二像素点相邻的第三像素点,重复搜索的步骤,直到搜索到零像素点为止;如果找到零像素点,则根据搜索到的零像素点,计算坐标原点与零像素点之间的欧几里得距离;
重复上述过程,直至遍历图像中的每一个像素点,完成图像中的距离变换计算;
其中:
所述圆环区域包括所述内圆的边以及所述内圆的边至所述外圆的边之间的区域。
2.根据权利要求1所述的用于图像检测的距离变换计算方法,其特征在于,在所述圆环区域内搜索零像素点,包括:
分别搜索所述圆环区域的内圆的边在坐标轴上的坐标点是否包含零像素点;如果包含零像素点,则结束搜索;如果不包含零像素点,则继续执行一下步骤;
将所述内圆的边在坐标轴上的坐标点中的任意一个作为起始点;
以逆时针或顺时针方向为起始方向,从所述起始点开始沿所述起始方向递增一个像素点,并以该像素点作为第一目标点,搜索零像素点;
确定第二目标点至第八目标点,其中,所述第二目标点至所述第四目标点分别为沿所述起始方向所形成的所述第一目标点的对称点,所述第五目标点为沿所述起始方向所形成的所述第一目标点的互换点,所述第六目标点至所述第八目标点分别为沿所述起始方向所形成的所述第五目标点的对称点;
从所述第一目标点开始,按照所述起始方向,分别依次搜索所述第一目标点至所述第八目标点是否包含零像素点,完成一组零像素点搜索;如果包含零点,则结束搜索;如果不包含零像素点,则继续执行一下步骤;
将上一组的第一目标点作为起始点,沿所述起始方向递增一个像素点作为下一组的第一目标点,重复上述搜索的步骤,直至当前第一目标点的坐标点超出所述圆环区域的外圆的边,完成在该圆环区域内的搜索。
4.根据权利要求1-3中任一项所述的用于图像检测的距离变换计算方法,其特征在于,判断图像中的零像素点,包括:
针对二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val==0;当if val==0为true时,所述像素点为零像素点;否则,if val==0为false,所述像素点为非零像素点;
针对非二值化图像,设图像中的一个像素点的像素值为val,判断其是否为零像素点的方法为if val<二值化的阈值;当if val<二值化的阈值为true时,所述像素点为零像素点;否则,if val<二值化的阈值为false,所述像素点为非零像素点。
5.一种权利要求1-4中任一项所述的用于图像检测的距离变换计算方法,其特征在于,应用于车辆自动驾驶控制系统,进行目标车辆和车道线之间的距离检测。
6.一种权利要求1-4中任一项所述的用于图像检测的距离变换计算方法,其特征在于,应用于目标检测系统,进行多张图像中同一目标物体的检测。
7.一种权利要求1-4中任一项所述的用于图像检测的距离变换计算方法,其特征在于,应用于医学图像处理系统,进行细胞或细菌分布规律的检测。
8.一种终端,包括:存储器、GPU处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述GPU处理器执行所述程序时可用于执行权利要求1~4中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时可用于执行权利要求1~4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211563386.8A CN116228634B (zh) | 2022-12-07 | 2022-12-07 | 用于图像检测的距离变换计算方法、应用、终端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211563386.8A CN116228634B (zh) | 2022-12-07 | 2022-12-07 | 用于图像检测的距离变换计算方法、应用、终端及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116228634A true CN116228634A (zh) | 2023-06-06 |
CN116228634B CN116228634B (zh) | 2023-12-22 |
Family
ID=86568640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211563386.8A Active CN116228634B (zh) | 2022-12-07 | 2022-12-07 | 用于图像检测的距离变换计算方法、应用、终端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116228634B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000689A (zh) * | 2006-12-29 | 2007-07-18 | 四川大学 | 放射治疗计划系统中肿瘤三维解剖结构的投影轮廓线方法 |
CN101794446A (zh) * | 2010-02-11 | 2010-08-04 | 东南大学 | 一种图像角点的线搜索式检测方法 |
CN103049753A (zh) * | 2012-06-04 | 2013-04-17 | 深圳市强华科技发展有限公司 | 基于骨架提取和距离变换来检测印刷电路板缺陷的方法 |
CN103227864A (zh) * | 2013-04-10 | 2013-07-31 | 深圳市金立通信设备有限公司 | 一种检测图像边缘的方法和移动终端 |
US9830532B1 (en) * | 2014-08-22 | 2017-11-28 | Matrox Electronic Systems Ltd. | Object detection in images using distance maps |
CN108007355A (zh) * | 2017-10-20 | 2018-05-08 | 西安电子科技大学 | 基于图像距离变换的混凝土裂缝检测方法 |
CN108596924A (zh) * | 2018-05-17 | 2018-09-28 | 南方医科大学 | 一种基于距离场融合和椭球先验的mr前列腺图像分割方法 |
CN108919249A (zh) * | 2018-09-18 | 2018-11-30 | 湖北晧天智能科技有限公司 | 一种基于二维局部插值的雷达目标距离联合估计方法 |
CN109886122A (zh) * | 2019-01-23 | 2019-06-14 | 珠海市杰理科技股份有限公司 | 车道线检测方法、装置、计算机设备和存储介质 |
CN110473139A (zh) * | 2018-05-11 | 2019-11-19 | 台达电子工业股份有限公司 | 利用双向扫描的影像距离转换装置及其方法 |
CN110738219A (zh) * | 2019-10-15 | 2020-01-31 | 腾讯科技(深圳)有限公司 | 图像中线条提取方法和装置、存储介质及电子装置 |
WO2020134082A1 (zh) * | 2018-12-28 | 2020-07-02 | 歌尔股份有限公司 | 一种路径规划方法、装置和移动设备 |
CN111524156A (zh) * | 2020-04-29 | 2020-08-11 | 浙江工业大学 | 一种基于距离变换和角点检测的重叠柑橘分割方法 |
CN112541942A (zh) * | 2020-12-08 | 2021-03-23 | 深圳市华成工业控制股份有限公司 | 一种基于距离变换的中药丸视觉引导定位方法 |
-
2022
- 2022-12-07 CN CN202211563386.8A patent/CN116228634B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000689A (zh) * | 2006-12-29 | 2007-07-18 | 四川大学 | 放射治疗计划系统中肿瘤三维解剖结构的投影轮廓线方法 |
CN101794446A (zh) * | 2010-02-11 | 2010-08-04 | 东南大学 | 一种图像角点的线搜索式检测方法 |
CN103049753A (zh) * | 2012-06-04 | 2013-04-17 | 深圳市强华科技发展有限公司 | 基于骨架提取和距离变换来检测印刷电路板缺陷的方法 |
CN103227864A (zh) * | 2013-04-10 | 2013-07-31 | 深圳市金立通信设备有限公司 | 一种检测图像边缘的方法和移动终端 |
US9830532B1 (en) * | 2014-08-22 | 2017-11-28 | Matrox Electronic Systems Ltd. | Object detection in images using distance maps |
CN108007355A (zh) * | 2017-10-20 | 2018-05-08 | 西安电子科技大学 | 基于图像距离变换的混凝土裂缝检测方法 |
CN110473139A (zh) * | 2018-05-11 | 2019-11-19 | 台达电子工业股份有限公司 | 利用双向扫描的影像距离转换装置及其方法 |
CN108596924A (zh) * | 2018-05-17 | 2018-09-28 | 南方医科大学 | 一种基于距离场融合和椭球先验的mr前列腺图像分割方法 |
CN108919249A (zh) * | 2018-09-18 | 2018-11-30 | 湖北晧天智能科技有限公司 | 一种基于二维局部插值的雷达目标距离联合估计方法 |
WO2020134082A1 (zh) * | 2018-12-28 | 2020-07-02 | 歌尔股份有限公司 | 一种路径规划方法、装置和移动设备 |
CN109886122A (zh) * | 2019-01-23 | 2019-06-14 | 珠海市杰理科技股份有限公司 | 车道线检测方法、装置、计算机设备和存储介质 |
CN110738219A (zh) * | 2019-10-15 | 2020-01-31 | 腾讯科技(深圳)有限公司 | 图像中线条提取方法和装置、存储介质及电子装置 |
CN111524156A (zh) * | 2020-04-29 | 2020-08-11 | 浙江工业大学 | 一种基于距离变换和角点检测的重叠柑橘分割方法 |
CN112541942A (zh) * | 2020-12-08 | 2021-03-23 | 深圳市华成工业控制股份有限公司 | 一种基于距离变换的中药丸视觉引导定位方法 |
Non-Patent Citations (3)
Title |
---|
YVES LUCET 等: "New sequential exact Euclidean distance transform algorithms based on convex analysis", 《IMAGE AND VISION COMPUTING》, pages 349 - 357 * |
任勇勇 等: "基于围线分层扫描的 完全欧氏距离变换算法", 《中国图象图形学报》, vol. 16, no. 1, pages 32 - 36 * |
耿协鹏;胡鹏;: "基于最短欧氏距离的空间点集聚类的栅格算法", 测绘科学, no. 03 * |
Also Published As
Publication number | Publication date |
---|---|
CN116228634B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9971959B2 (en) | Performing object detection operations via a graphics processing unit | |
CN110991311B (zh) | 一种基于密集连接深度网络的目标检测方法 | |
EP3098762B1 (en) | Data-optimized neural network traversal | |
CN110910422A (zh) | 目标跟踪方法、装置、电子设备和可读存储介质 | |
JP6202147B2 (ja) | 曲線検出方法と曲線検出装置 | |
US10289634B2 (en) | Data clustering employing mapping and merging | |
CN112906865B (zh) | 神经网络架构搜索方法、装置、电子设备及存储介质 | |
CN114241388A (zh) | 基于时空记忆信息的视频实例分割方法和分割装置 | |
US20100325382A1 (en) | Triangulated irregular network | |
US11704546B2 (en) | Operation processing apparatus that calculates addresses of feature planes in layers of a neutral network and operation processing method | |
CN116228634B (zh) | 用于图像检测的距离变换计算方法、应用、终端及介质 | |
US20200327638A1 (en) | Connected component detection method, circuit, device and computer-readable storage medium | |
US20190304057A1 (en) | Pooling method, device, and system, computer-readable storage medium | |
CN113900813B (zh) | 一种基于双口ram的盲元填充方法、系统及装置 | |
CN113033578B (zh) | 基于多尺度特征匹配的图像校准方法、系统、终端及介质 | |
Ngo et al. | Real time iris segmentation on FPGA | |
CN117710235B (zh) | 图像目标增强方法、装置、计算机设备和存储介质 | |
CN116245894B (zh) | 一种地图分割方法、装置、电子设备及介质 | |
US10043081B2 (en) | Image processing device and image processing program | |
CN117971501B (zh) | 一种数据访问方法、设备、存储介质及程序产品 | |
CN114090470B (zh) | 数据预加载装置及其预加载方法、存储介质和计算机设备 | |
CN110503109B (zh) | 图像特征提取方法和装置、图像处理方法和装置 | |
CN116342955A (zh) | 一种基于改进的特征金字塔网络的目标检测方法及系统 | |
CN115841499A (zh) | Sem图像的轮廓获取方法、装置、计算机设备及存储介质 | |
CN116703695A (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 |