The invention discloses a fast connected region labeling algorithm for binary image streams. A fast connected region labeling algorithm for binary image streams formed by linear image sensors is proposed, which is suitable for parallel implementation of FPGA. The algorithm scans the image from left to right, from top to bottom row by row, marks the target pixels, calculates the number of connected areas and counts the maximum number of horizontal and vertical target pixels in each connected area. It only needs two adjacent rows of data to mark and judge each time, and only scans the image once. The algorithm can not only realize connected domain labeling of binary continuous image stream, but also realize connected domain labeling of static binary image.
【技术实现步骤摘要】
一种二值图像流快速连通域标记算法
本专利技术涉及图像信息处理
,具体公开了一种二值图像快速连通域标记算法,适用于高速运动图像流以及静止图像的连通域分析。
技术介绍
随着计算机图像处理技术不断进步,在模式识别,机器人视觉,检测技术等众多相关学科不断的发展,二值图像连通域检测效率已成为这一类图像相关领域研究的基础问题之一,国内外有较多学者对二值图像连通域标记问题进行了研究。在这一类的应用中二值图像连通域标记算法效率始终是一个共同面临的瓶颈问题。目前很多文献介绍连通域标记算法主要有像素标记算法和游程连通域标记算法。如局部邻域算法,这类算法有多种不同形式,基本思想是从局部到整体,要逐个检查每个连通成分,对每一个都要先确定一个“种子点”,再向周围邻域扩展地填入标记;还有“分而治之”算法,基本思想是从整体到局部,先确定不同的连通成分,再对每一个区域用填充方法填入标记。例如,采用区域分割方法、轮廓追踪方法、等价标记类算法,都可以区分出不同的连通域。两类方法都很难避免对图像做多次扫描,效率不高。基于游程连通域标记算法首先采用标记矫正来减少图像扫描次数,然后再对标记采用RLE ...
【技术保护点】
1.一种二值图像流快速连通域标记算法,其特征在于,其包括以下步骤:A.图像数据预处理:在对各个变量初始化后,首先在原图像左端和右端各插入一列像素值为0的像素点以此保证每行的像素值都是以0开始并以0结束;B.数据读取:对图像从上到下逐行扫描,依次读取相邻两行数据进行连通域检测,采用8邻域对每个目标像素点进行连通域检测,将当前像素点邻域按照8邻域划分为8种情况,将当前像素点标记为Dj,i,j表示当前像素点的行,i表示当前像素点的列;对Dj,i的8邻域连通检测时,只需要检测Dj,i‑1、Dj‑1,i‑1、Dj‑1,i和Dj‑1,i+1的像素值,若Dj,i=0,则标记该点为背景像素 ...
【技术特征摘要】
1.一种二值图像流快速连通域标记算法,其特征在于,其包括以下步骤:A.图像数据预处理:在对各个变量初始化后,首先在原图像左端和右端各插入一列像素值为0的像素点以此保证每行的像素值都是以0开始并以0结束;B.数据读取:对图像从上到下逐行扫描,依次读取相邻两行数据进行连通域检测,采用8邻域对每个目标像素点进行连通域检测,将当前像素点邻域按照8邻域划分为8种情况,将当前像素点标记为Dj,i,j表示当前像素点的行,i表示当前像素点的列;对Dj,i的8邻域连通检测时,只需要检测Dj,i-1、Dj-1,i-1、Dj-1,i和Dj-1,i+1的像素值,若Dj,i=0,则标记该点为背景像素点,若Dj,i=1,则标记该点为目标像素点;C.连通域检测:根据当前像素值的不同情况采用优先等级顺序对目标像素点进行处理;D.若目标像素点没有检测完毕则回到步骤B,直到所有目标像素点检测结束。2.如权利要求1所述的一种二值图像流快速连通域标记算法,其特征在于,步骤C中所述的优先等级顺序如下所示:a:Dj,i=0且Dj,i-1=X,Dj-1,i-1=X,Dj-1,i=X,Dj-1,i+1=X;b:Dj,i=1且Dj,i-1=0,Dj-1,i-1=0,Dj-1,i=0,Dj-1,i+1=0;c:Dj,i=1且Dj,i-1=X,Dj-1,i-1=1,Dj-1,i=0,Dj-1,i+1=1;d:Dj,i=1且Dj,i-1=1,Dj-1,i-1=0,Dj-1,i=0,Dj-1,i+1=1;e:Dj,i=1且Dj,i-1=1,Dj-1,i-1=X,Dj-1,i=X,Dj-1,i+1=X;f:Dj,i=1且Dj,i-1=X,Dj-1,i-1=1,Dj-1,i=X,Dj-1,i+1=X;g:Dj,i=1且Dj,i-1=X,Dj-1,i-1=X,Dj-1,i=1,Dj-1,i+1=X;h:Dj,i=1且Dj,i-1=0,Dj-1,i-1=0,Dj-1,i=0,Dj-1,i+1=1;其中,X表示1或0。3.如权利要求2所述的一种二值图像流快速连通域标记算法,其特征在于,步骤C所述的连通域检测步骤及算法如下:若邻域情况满足条件a:C1-1:DATA[i]对应像素点Dj,i,DATA[i-1]对应像素点Dj,i-1,判断当前像素点的像素值,若DATA[i]=0,则标记该点为背景像素点,并不对该点做连通域分析处理,只进行X[]更新;判断DATA[i-1]是否等于1,若是则进行步骤C1-2,若不是则进行步骤C1-4;C1-2:比较X_count和X[Flag_data[i-1]]的大小,如果X_count大于X[Flag_data[i-1]],则进行步骤C1-3,否则进行步骤C1-4;C1-3:用X_count更新X[Flag_data[i-1]];C1-4:结束;若邻域情况满足条件b:C2-1:将连通域计数n加1,将X_count赋值为1,进行步骤C2-2;C2-2:判断m是否大于0,若大于0则进行步骤C2-3,否则进行步骤C2-4;C2-3:将X[Flag_data_bak[i-1]]与Y[Flag_data_bak[i-1]]赋值为1,Flag_data[i]赋值为Flag_data_bak[m],然后m减1,...
【专利技术属性】
技术研发人员:曲立国,方明星,卢自宝,郑睿,
申请(专利权)人:安徽师范大学,
类型:发明
国别省市:安徽,34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。