CN104503731A - 二值图像连通域标记快速识别方法 - Google Patents

二值图像连通域标记快速识别方法 Download PDF

Info

Publication number
CN104503731A
CN104503731A CN201410768038.3A CN201410768038A CN104503731A CN 104503731 A CN104503731 A CN 104503731A CN 201410768038 A CN201410768038 A CN 201410768038A CN 104503731 A CN104503731 A CN 104503731A
Authority
CN
China
Prior art keywords
gpu
result
server
scanning result
pagesize
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
CN201410768038.3A
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.)
Liuzhou Vocational and Technical College
Original Assignee
Liuzhou Vocational and Technical College
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 Liuzhou Vocational and Technical College filed Critical Liuzhou Vocational and Technical College
Priority to CN201410768038.3A priority Critical patent/CN104503731A/zh
Publication of CN104503731A publication Critical patent/CN104503731A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

本发明公开了一种二值图像连通域标记快速识别方法,包括以下步骤: CPU和GPU的初始化:扫描图像:将扫描结果保存在服务器环境的磁盘中;对扫描过的结果合并处理;判断是否迭代扫描,保存结果处理,结束。实现提高效率,并适合于并行化以及对大图像实时处理的优点。

Description

二值图像连通域标记快速识别方法
技术领域
本发明涉及图像处理领域,具体地,涉及一种二值图像连通域标记快速识别方法。
背景技术
目前,二值图像(binary image)是指每个像素不是黑就是白,其灰度值没有中间过渡的图像。其优点是占用空间少。缺点是当表示人物、风景的图像时,二值图像只能描述其轮廓,不能描述细节。现有的连通域标记方法有:连通逐点扫描法,该方法需要处理大量重复标记,逻辑复杂,效率较低。
种子填充法,该方法效率较高,但不适合并行化。
以上两大类方法都是串行设计,不具备对大图像实时处理的条件。
统一计算设备架构(Compute Unified Device Architecture,CUDA),能够解决复杂的计算问题。例如,CUDA 能够加快AMBER这款分子动力学模拟程序的速度,可以实现18倍速度提升,因此,在机电领域CUDA是一个巨大的市场。现有方法存在效率低、不适合并行化以及不具备对大图像实时处理的缺陷。
发明内容
本发明的目的在于,针对上述问题,提出一种二值图像连通域标记快速识别方法,以实现提高效率,适合于并行化以及对大图像实时处理的优点。
为实现上述目的,本发明采用的技术方案是:
一种二值图像连通域标记快速识别方法,包括以下步骤:
S1、CPU和GPU的初始化:
S2、扫描图像:
S2a、建立独立的图像标记缓存和连通关系数组,利用GPU的CUDA架构并行执行扫描,搜索邻域内最小标号值的像素点对连通域进行标记;
S2b、分配N个线程,每个线程扫描对应行目标像素,并对目标做标记,利用CUDA平台内置的blockIdx变量跟踪每个进程的运行,并且每个线程返回该行连通域的个数;
S2c、实现进程block间的同步;
S3、将上述步骤S2扫描结果保存在服务器环境的磁盘中;
S4、对扫描过的结果合并处理;
S5、判断是否迭代扫描,如果迭代扫描结果是否,则重复步骤S1;
S6、如果迭代扫描结果是是则保存结果处理,结束。
优选的,所述步骤S1中CPU和GPU的初始化具体为:利用服务器环境建立虚拟图形工作站集群,所述服务器环境包括服务器计算机或服务器集群以及主控服务器,所述服务器计算机或服务器集群上安装有多块CUDA架构的GPU显卡,该服务器计算机或服务器集群作为计算节点,所述的主控服务器负责对所有任务进行调度控制,并负责管理各个节点的计算和对存储资源进行整合;
优选的,所述虚拟图形工作站集群为过逻辑组合构成动态虚拟机,各块GPU显卡之间通过SLI接口连接。
优选的,所述的CUDA架构平台的块大小为256或512。
优选的,在步骤S3中,设定连续地址空间每次的最大执行记录数PAGESIZE大小为8Kbytes,将扫描结果分割成pixSize/PAGESIZE个页面,pixSize为单个扫描结果的大小;对于不足PAGESIZE大小的文本将填充至PAGESIZE;对于一个扫描结果分割成M个PAGESIZE,第i页的最后maxPatternLength长度的内容和第i+1页的前面maxPatternLength长度的内容是一样的,i = 0,1,2,3…M-1,maxPatternLength为最长样本的长度;保存每一个扫描结果对应的存储空间,而且在以固定的缓冲大小传入GPU之前对文件的标识采用链表和数组的形式,即链表的每一节点用固定大小的数组记录固定数量的扫描结果。
优选的,所述步骤S4.对扫描过的结果合并处理包括以下步骤:
S4a. 利用GPU中的全局内存对扫描结果的合并处理;每16个线程合并读取全局内存中的一页存储页64B到共享内存中进行合并处理;
S4b.匹配完64B再去全局内存取出存放入共享内存,如此循环。
本发明的技术方案具有以下有益效果:
1.适用于对大图像实时处理:
本发明技术方案利用GPU进行二值图像连通域标记识别,通过GPU的并行匹配技术的优势,将图像扫描与GPU有机结合起来,加速连通域识别算法,不仅可以提高系统整体性能,也为工业裂痕扫描、遥感图像的路径提取、生物信息分析、海量信息检索等领域提供了重要方法和工具,比较适用于对大图像实时处理。
2.效率高:
本发明技术方案利用CPU与 GPU可协同处理的特性,分配N个线程,每个线程扫描对应行目标像素,并对目标做标记,利用CUDA平台内置的blockIdx变量跟踪每个进程的运行,避免了现在扫描方法中“4连通”和“8连通”那些繁杂的判断,而且执行的效率不受连通域形状及数量的影响,大大提高了复杂图像扫描效率,其方法简单、便捷。
3.可适合并行化:
因为GPU设备的分支转移控制和数据缓存机制都非常弱,而且GPU与GPU全局内存之间的数据传输速率和CPU与CPU高速缓存之间的数据传输速率相比要慢很多,本发明技术方案相对合理地设计与实现数据存储和并行计算的模式,避免了GPU设备的分支转移控制和数据缓存机制较弱、GPU与GPU全局内存之间的数据传输速率较慢的问题。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明实施例所述的二值图像连通域标记快速识别方法的流程图;
图2为本发明实施例所述图像扫描结果存储形式示意图;
图3为本发明实施例所述图像合并处理中GPU内存执行模型示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例一:
如图1所示,一种二值图像连通域标记快速识别方法,包括以下步骤:
S1.CPU和GPU的初始化:
利用服务器环境建立虚拟图形工作站集群,该虚拟图形工作站经过逻辑组合构成动态虚拟机,服务器环境包括服务器集群和主控服务器,即服务器环境包括服务器集群上安装有多块CUDA架构的GPU显卡,各块GPU显卡之间通过SLI接口(Scalable Link Interface、可升级连接接口)连接,CUDA架构平台的块大小为256或512;该服务器集群作为计算节点,主控服务器负责对所有任务进行调度控制,并负责管理集群上各个节点的计算和对存储资源进行整合;
S2.扫描图像:
S2a.建立独立的图像标记缓存和连通关系数组,利用GPU的CUDA架构并行执行扫描,搜索邻域内最小标号值的像素点对连通域进行标记;
S2b.分配N个线程,每个线程扫描对应行目标像素,并对目标做标记,利用CUDA平台内置的blockIdx变量跟踪每个进程的运行,并且每个线程返回该行连通域的个数;
S2c.主控程序实现进程block间的同步;
S3.将扫描结果保存在服务器环境的磁盘中;存储形式如图2所示。
S4.对扫描过的结果合并处理;图像合并处理中GPU内存执行如图3所示。
S5.判断是否迭代扫描,如果结果为是,则进入步骤S6,如果结果为否,则重复步骤S1;
S6.保存结果处理,结束。
在上述步骤S3中,设定连续地址空间每次的最大执行记录数PAGESIZE大小为8Kbytes,将扫描结果分割成pixSize/PAGESIZE个页面,pixSize为单个扫描结果的大小;对于不足PAGESIZE大小的文本将填充至PAGESIZE;对于一个扫描结果分割成M个PAGESIZE,第i页的最后maxPatternLength长度的内容和第i+1页的前面maxPatternLength长度的内容是一样的,i = 0,1,2,3…M-1,maxPatternLength为最长样本的长度;只需要保存每一个扫描结果对应于哪个存储空间,而且在以固定的缓冲大小传入GPU之前对文件的标识都采用链表和数组的形式,即链表的每一节点用固定大小的数组记录固定数量的扫描结果(图像扫描结果存储形式示意图参见图2)。
上述步骤S4.对扫描过的结果合并处理包括以下步骤:
S4a. 利用GPU中的全局内存(Global Memory)对扫描结果的合并处理;每16个线程合并读取Global Memory中的一页存储页64B到共享内存中进行合并处理;
S4b.匹配完64B再去Global Memory取出存放入共享内存,如此循环(图像合并处理中GPU内存执行模型示意图参见图3)。
实施例二:
与实施例一的区别在于,服务器环境包括一台服务器计算机和主控服务器。
S1.CPU和GPU的初始化具体为:
利用服务器环境建立虚拟图形工作站集群,该虚拟图形工作站经过逻辑组合构成动态虚拟机,服务器环境包括一台服务器计算机和主控服务器,即服务器环境包括服务器计算机上安装有多块CUDA架构的GPU显卡,各块GPU显卡之间通过SLI接口连接,CUDA架构平台的块大小为256或512;该服务器计算机作为计算节点,主控服务器负责对所有任务进行调度控制,并负责管理各个节点的计算和对存储资源进行整合;
本发明技术方案用于裂纹识别、遥感图像的路径提取及形状的目标识别等图像识别(目标提取)方法
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种二值图像连通域标记快速识别方法,其特征在于,包括以下步骤:
S1、CPU和GPU的初始化:
S2、扫描图像:
S2a、建立独立的图像标记缓存和连通关系数组,利用GPU的CUDA架构并行执行扫描,搜索邻域内最小标号值的像素点对连通域进行标记;
S2b、分配N个线程,每个线程扫描对应行目标像素,并对目标做标记,利用CUDA平台内置的blockIdx变量跟踪每个进程的运行,并且每个线程返回该行连通域的个数;
S2c、实现进程block间的同步;
S3、将上述步骤S2扫描结果保存在服务器环境的磁盘中;
S4、对扫描过的结果合并处理;
S5、判断是否迭代扫描,如果迭代扫描结果是否,则重复步骤S1;
S6、如果迭代扫描结果是是则保存结果处理,结束。
2.根据权利要求1所述的二值图像连通域标记快速识别方法,其特征在于,所述步骤S1中CPU和GPU的初始化具体为:利用服务器环境建立虚拟图形工作站集群,所述服务器环境包括服务器计算机或服务器集群以及主控服务器,所述服务器计算机或服务器集群上安装有多块CUDA架构的GPU显卡,该服务器计算机或服务器集群作为计算节点,所述的主控服务器负责对所有任务进行调度控制,并负责管理各个节点的计算和对存储资源进行整合。
3.根据权利要求2所述的二值图像连通域标记快速识别方法,其特征在于,所述虚拟图形工作站集群为过逻辑组合构成动态虚拟机,各块GPU显卡之间通过SLI接口连接。
4.根据权利要求3所述的二值图像连通域标记快速识别方法,其特征在于,所述的CUDA架构平台的块大小为256或512。
5.根据权利要求1至4任一所述的二值图像连通域标记快速识别方法,其特征在于,在步骤S3中,设定连续地址空间每次的最大执行记录数PAGESIZE大小为8Kbytes,将扫描结果分割成pixSize/PAGESIZE个页面,pixSize为单个扫描结果的大小;对于不足PAGESIZE大小的文本将填充至PAGESIZE;对于一个扫描结果分割成M个PAGESIZE,第i页的最后maxPatternLength长度的内容和第i+1页的前面maxPatternLength长度的内容是一样的,i = 0,1,2,3…M-1,maxPatternLength为最长样本的长度;保存每一个扫描结果对应的存储空间,而且在以固定的缓冲大小传入GPU之前对文件的标识采用链表和数组的形式,即链表的每一节点用固定大小的数组记录固定数量的扫描结果。
6.根据权利要求5所述的二值图像连通域标记快速识别方法,其特征在于,
所述步骤S4.对扫描过的结果合并处理包括以下步骤:
S4a. 利用GPU中的全局内存对扫描结果的合并处理;每16个线程合并读取全局内存中的一页存储页64B到共享内存中进行合并处理;
S4b.匹配完64B再去全局内存取出存放入共享内存,如此循环。
CN201410768038.3A 2014-12-15 2014-12-15 二值图像连通域标记快速识别方法 Pending CN104503731A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410768038.3A CN104503731A (zh) 2014-12-15 2014-12-15 二值图像连通域标记快速识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410768038.3A CN104503731A (zh) 2014-12-15 2014-12-15 二值图像连通域标记快速识别方法

Publications (1)

Publication Number Publication Date
CN104503731A true CN104503731A (zh) 2015-04-08

Family

ID=52945132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410768038.3A Pending CN104503731A (zh) 2014-12-15 2014-12-15 二值图像连通域标记快速识别方法

Country Status (1)

Country Link
CN (1) CN104503731A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106530285A (zh) * 2016-10-21 2017-03-22 国网山东省电力公司电力科学研究院 一种基于gpu与cpu混合数据处理的输电线路部件识别方法
CN107194304A (zh) * 2016-03-15 2017-09-22 中国石油化工股份有限公司 三维数字岩心的连通区域识别方法及装置
CN107316041A (zh) * 2017-06-07 2017-11-03 太仓诚泽网络科技有限公司 一种基于背景自学习的高光谱图像生物信息提取方法
CN107945190A (zh) * 2017-12-22 2018-04-20 成都华栖云科技有限公司 二值图像快速连通区域计算方法
WO2018119951A1 (zh) * 2016-12-29 2018-07-05 深圳前海达闼云端智能科技有限公司 Gpu虚拟化方法、装置、系统及电子设备、计算机程序产品
WO2020198997A1 (zh) * 2019-03-29 2020-10-08 深圳市大疆创新科技有限公司 连通域处理方法、数据处理设备及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5386561A (en) * 1992-03-31 1995-01-31 International Business Machines Corporation Method of integrated system load control through dynamic time-slicing in a virtual storage environment
CN103049241A (zh) * 2013-01-24 2013-04-17 重庆邮电大学 一种提高cpu+gpu异构装置计算性能的方法
CN103605497A (zh) * 2013-11-29 2014-02-26 柳州职业技术学院 一种二值图像连通域标记快速识别方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5386561A (en) * 1992-03-31 1995-01-31 International Business Machines Corporation Method of integrated system load control through dynamic time-slicing in a virtual storage environment
CN103049241A (zh) * 2013-01-24 2013-04-17 重庆邮电大学 一种提高cpu+gpu异构装置计算性能的方法
CN103605497A (zh) * 2013-11-29 2014-02-26 柳州职业技术学院 一种二值图像连通域标记快速识别方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107194304A (zh) * 2016-03-15 2017-09-22 中国石油化工股份有限公司 三维数字岩心的连通区域识别方法及装置
CN107194304B (zh) * 2016-03-15 2020-09-04 中国石油化工股份有限公司 三维数字岩心的连通区域识别方法及装置
CN106530285A (zh) * 2016-10-21 2017-03-22 国网山东省电力公司电力科学研究院 一种基于gpu与cpu混合数据处理的输电线路部件识别方法
CN106530285B (zh) * 2016-10-21 2019-04-09 国网山东省电力公司电力科学研究院 一种基于gpu与cpu混合数据处理的输电线路部件识别方法
WO2018119951A1 (zh) * 2016-12-29 2018-07-05 深圳前海达闼云端智能科技有限公司 Gpu虚拟化方法、装置、系统及电子设备、计算机程序产品
CN107316041A (zh) * 2017-06-07 2017-11-03 太仓诚泽网络科技有限公司 一种基于背景自学习的高光谱图像生物信息提取方法
CN107945190A (zh) * 2017-12-22 2018-04-20 成都华栖云科技有限公司 二值图像快速连通区域计算方法
WO2020198997A1 (zh) * 2019-03-29 2020-10-08 深圳市大疆创新科技有限公司 连通域处理方法、数据处理设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN104503731A (zh) 二值图像连通域标记快速识别方法
CN103605497A (zh) 一种二值图像连通域标记快速识别方法
US11430134B2 (en) Hardware-based optical flow acceleration
US10013731B2 (en) Maximizing parallel processing in graphics processors
US20130179377A1 (en) Decision tree computation in hardware
TW201447776A (zh) 透過圖形處理單元執行物件偵測運算
CN102566981A (zh) 并行处理机器学习决策树训练
CN108716916B (zh) 一种基于超级块的分布式并行星点质心提取方法及fpga实现装置
CN102648450A (zh) 用于并行命令列表生成的硬件
Cao et al. Traffic sign detection and recognition using multi-scale fusion and prime sample attention
Ma et al. Research on the application of visual SLAM in embedded GPU
US20210374490A1 (en) Method and apparatus of processing image, device and medium
Liang et al. The design of objects bounding boxes non-maximum suppression and visualization module based on FPGA
US11397615B2 (en) Methods and apparatuses for coalescing function calls for ray-tracing
Zhao et al. A memory-efficient hardware architecture for connected component labeling in embedded system
CN105205476A (zh) 一种基于lbp特征的人脸识别硬件架构
Oberhofer et al. Natural feature tracking in javascript
Guo et al. UDTIRI: An online open-source intelligent road inspection benchmark suite
CN106952215B (zh) 一种图像金字塔特征提取电路、装置及方法
Zhang et al. Weighted mean shift object tracking implemented on gpu for embedded sustems
Rajpura et al. Dataset augmentation with synthetic images improves semantic segmentation
KR20160030871A (ko) 그래픽 프로세싱 유닛을 사용하여 히스토그램 계산을 위한 시스템 및 방법
Zhang et al. Efficient large-scale oblique image matching based on cascade hashing and match data scheduling
CN111814594A (zh) 物流违规行为识别方法、装置、设备和存储介质
CN113011223A (zh) 一种图像识别方法、系统、设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150408