连通分量标记连通分量标记(或者称连通分量分析,连通区域标记)是图论应用中的一种算法,给二值图像中的每个连通区域标上一个特定的标号。该算法可用来对图像的目标进行定位和计数。该算法不要和图像分割相混淆。 连通分量标记通常在计算机视觉领域中对二值图像的连通区域进行检测,也可以处理彩色图像和更高维的数据。[1][2]当将其集成到图像识别系统或者是人机交互系统时,该算法也起到重要作用。[3][4] 概述中间像素和它周围像素的位置决定了是几邻域连接,4邻域连接是周围像素处在中间像素的上下左右的位置,8邻域连接则还包括其对角的4个像素的位置。 算法一次扫描算法两次扫描算法两次扫描算法的图形解释以一个8领域的例子来说明两次扫描算法。 该算法的数据结构为并查集。 1,第一次扫描: 将0视为背景像素,1为目标像素。原始图像如下。 从左往右从上到下扫描,背景像素保持0不变,遇到1值时,分析它的8邻域(只考虑已被扫描的的像素点,即左边、左上、上和右上这四个方向的像素值)
第一次扫描结束后得到如下标好号的图: 并且同时得到哪些标号相同的。
2,第二次扫描: 合并这些相同的标号,得到结果 最后可以将这两个区域以不同颜色显示出来 其伪代码如下: algorithm TwoPass(data) linked = [] labels = structure with dimensions of data, initialized with the value of Background First pass for row in data: for column in row: if data[row][column] is not Background neighbors = connected elements with the current element's value if neighbors is empty linked[NextLabel] = set containing NextLabel labels[row][column] = NextLabel NextLabel += 1 else Find the smallest label L = neighbors labels labels[row][column] = min(L) for label in L linked[label] = union(linked[label], L) Second pass for row in data for column in row if data[row][column] is not Background labels[row][column] = find(labels[row][column]) return labels 参考文献
|
Index:
pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve