专利名称:图像分割方法和图像集分割方法
技术领域:
本发明涉及一种图像分割方法,具体涉及一种基于均值漂移算法和模糊C均值算法的混合图像分割方法。
背景技术:
图像分割技术是计算机图像处理和视觉学的重要研究内容之一,且为研究的热点和难点。它是模式识别和图像分析的重要关键步骤,分割效果的好坏直接影响着后续图像的处理。现今所广泛使用的各种图像分割方法,都具有耗时长、分割效率低、分割效果差的缺点,因此不能广泛用于需要实时处理的系统,例如基于图像内容的图像搜索引擎等。
发明内容
有鉴于此,本发明的一个目的在于提供一种图像分割方法,其具有耗时短、分割效率高、分割效果好的优点。本发明的另一个目的在于提供一种图像集分割方法,其具有耗时短、分割效率高、 分割效果好的优点。一种图像分割方法,包括如下步骤CPU读取一图像,初始化图像的参数,分配CPU和GPU所需要的内存空间,并将图像传给GPU ;GPU根据均值漂移算法对图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;CPU根据最初RGB颜色信息和最初坐标信息对图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对区域的参数进行计算,以获得图像的最终分割结果,并将其传送到CPU ;CPU输出图像的最终分割结果。CPU根据最初RGB颜色信息和最初坐标信息将RGB颜色信息相同且相邻的像素为一类。区域的参数包括区域的个数、区域内像素点数以及区域的颜色均值。图像的最终分割结果包括最终RGB颜色信息及最终坐标信息。一种图像集分割方法,包括如下步骤CPU接收多个图像,并确定多个图像的数量;CPU读取第i个图像,初始化图像的参数,分配CPU和GPU所需要的内存空间,并将第i个图像传给GPU;CPU判断i+Ι是否小于或等于多个图像的数量;如果是,则GPU根据均值漂移算法对第i个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU,同时CPU读取第i+Ι个图像,初始化第i+Ι个图像的参数,分配CPU和GPU所需要的内存空间,并将第i+Ι个图像传给GPU ;CPU根据最初RGB颜色信息和最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU,同时GPU根据均值漂移算法对第i+Ι个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU ;GPU根据模糊C均值算法对区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU,同时CPU根据最初RGB颜色信息和最初坐标信息对第i+Ι个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;CPU判断i+2是否小于或等于多个图像的数量;如果是,则CPU输出第i个图像的最终分割结果,读取第i+2个图像,初始化第i+2 个图像的参数,分配CPU和GPU所需要的内存空间,并将第i+2个图像传给GPU,同时GPU根据模糊C均值算法对区域的参数进行计算,以获得第i+Ι个图像的最终分割结果,并将其传送到CPU,CPU判断i+3是否小于或等于多个图像的数量;如果是,则CPU输出第i+Ι个图像的最终分割结果,读取第i+3个图像,初始化第 i+3个图像的参数,分配CPU和GPU所需要的内存空间,并将第i+3个图像传给GPU,GPU根据均值漂移算法对第i+2个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU ;设置i = i+2 ;重复CPU根据最初RGB颜色信息和最初坐标信息对第i个图像的像素进行聚类, 从而形成多个区域,统计区域的参数,并将其传送到GPU,同时GPU根据均值漂移算法对第 i+Ι个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU的步骤。本发明的图像集分割方法,还包括步骤如果i+Ι不是小于或等于多个图像的数量,则GPU根据均值漂移算法对第i个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU ;CPU根据最初RGB颜色信息和最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU;CPU输出第i个图像的最终分割结果。本发明的图像集分割方法,还包括步骤若i+2不是小于或等于多个图像的数量,则CPU输出第i个图像的分割结果,同时 GPU根据模糊C均值算法对区域的参数进行计算,以获得第i+Ι个图像的最终分割结果,并将其传送到CPU ;设置i = i+Ι ;CPU输出第i个图像的最终分割结果。本发明的图像集分割方法,还包括步骤若i+3不是小于或等于多个图像的数量,则CPU输出第i+Ι个图像的最终分割结果,同时GPU根据均值漂移算法对第i+2个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;
设置i = i+2 ;CPU根据最初RGB颜色信息和最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU;CPU输出第i个图像的最终分割结果。CPU根据最初RGB颜色信息和最初坐标信息将RGB颜色信息相同且相邻的像素聚
为一类。区域的参数包括区域的个数、区域内像素点数以及区域的颜色均值,图像的最终分割结果包括最终RGB颜色信息及最终坐标信息。本发明的方法具有以下优点(1)均值漂移算法与模糊C均值算法的结合,使得本发明对图像以及图像集都能达到较好的分割效果;( 分割速度快,采用CPU与GPU相结合的异步并发执行模式,充分利用GPU的并行计算能力以及CPU的控制能力,合理分配任务, 最大化利用硬件;(3)将图像分割成用户需要的区域数,模糊C均值算法聚类时输入聚类中心参数,便将图像分割成此数目的区域数,这对需要提取固定数目的图像区域特征应用很重要。
图1为本发明图像分割方法的流程图;图2为本发明图像集分割方法的流程图。
具体实施例方式下面结合附图和具体实施例对本发明进行详细说明。如图1所示,本发明的图像分割方法,包括以下步骤(1) CPU读取一图像,初始化图像的参数,分配CPU和GPU所需要的内存空间,并将图像传给GPU;(2) GPU根据均值漂移算法对图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;(3) CPU根据最初RGB颜色信息和最初坐标信息对图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;(4)GPU根据模糊C均值算法对区域的参数进行计算,以获得图像的最终分割结果,并将其传送到CPU;(5) CPU输出图像的最终分割结果。在步骤(1)中,将图像的RGB数据转换成LUV空间型数据,存储到内存空间中。初始化图像的参数包括颜色空间半径、坐标空间半径以及区域最小像素数,传输的图像包括原始的图像数据和权重数据。在步骤O)中,一个图像块的线程数设置为nThread(取值64,1观或256),每个线程处理一个像素点的计算,根据图像大小动态地分配图像块数目。图像块数目为 (width*height)/nThread+l,其中width代表图像宽度,height代表图像高度。
每个线程执行一个像素点yy的飘移计算,计算公式为
权利要求
1.一种图像分割方法,其特征在于,包括如下步骤CPU读取一图像,初始化所述图像的参数,分配CPU和GPU所需要的内存空间,并将所述图像传给GPU;GPU根据均值漂移算法对所述图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;CPU根据所述RGB颜色信息和所述坐标信息对所述图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对所述区域的参数进行计算,以获得所述图像的最终分割结果,并将其传送到CPU;CPU输出所述图像的分割结果。
2.根据权利要求1所述的图像分割方法,其特征在于,CPU根据RGB颜色信息和坐标信息将RGB颜色信息相同且相邻的像素聚为一类。
3.根据权利要求1所述的图像分割方法,其特征在于,区域的参数包括区域的个数、区域内像素点数以及区域的颜色均值。
4.根据权利要求1所述的图像分割方法,其特征在于,所述图像的最终分割结果包括最终RGB颜色信息及最终坐标信息。
5.一种图像集分割方法,其特征在于,包括如下步骤CPU接收多个图像,并确定所述多个图像的数量;CPU读取第i个图像,初始化所述图像的参数,分配CPU和GPU所需要的内存空间,并将第i个图像传给GPU;CPU判断i+Ι是否小于或等于所述多个图像的数量;如果是,则GPU根据均值漂移算法对第i个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU,同时CPU读取第i+Ι个图像,初始化第i+Ι个图像的参数, 分配CPU和GPU所需要的内存空间,并将第i+Ι个图像传给GPU ;CPU根据所述最初RGB颜色信息和所述最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU,同时GPU根据均值漂移算法对第i+1 个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU ;GPU根据模糊C均值算法对所述区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU,同时CPU根据所述RGB颜色信息和所述坐标信息对第i+Ι个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;CPU判断i+2是否小于或等于所述多个图像的数量;如果是,则CPU输出第i个图像的最终分割结果,读取第i+2个图像,初始化第i+2个图像的参数,分配CPU和GPU所需要的内存空间,并将第i+2个图像传给GPU,同时GPU根据模糊C均值算法对所述区域的参数进行计算,以获得第i+Ι个图像的最终分割结果,并将其传送到CPU,CPU判断i+3是否小于或等于所述多个图像的数量;如果是,则CPU输出第i+Ι个图像的最终分割结果,读取第i+3个图像,初始化第i+3 个图像的参数,分配CPU和GPU所需要的内存空间,并将第i+3个图像传给GPU,GPU根据均值漂移算法对第i+2个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回 CPU ;设置i = i+2 ;重复所述CPU根据所述最初RGB颜色信息和所述最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU,同时GPU根据均值漂移算法对第i+Ι个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU的步骤。
6.根据权利要求5所述的图像集分割方法,其特征在于,还包括步骤如果i+Ι不是小于或等于所述多个图像的数量,则GPU根据均值漂移算法对第i个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU ;CPU根据所述最初RGB颜色信息和所述最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对所述区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU;CPU输出第i个图像的最终分割结果。
7.根据权利要求5所述的图像集分割方法,其特征在于,还包括步骤若i+2不是小于或等于所述多个图像的数量,则CPU输出第i个图像的最终分割结果, 同时GPU根据模糊C均值算法对所述区域的参数进行计算,以获得第i+Ι个图像的最终分割结果,并将其传送到CPU;设置i = i+Ι ;CPU输出第i个图像的最终分割结果。
8.根据权利要求5所述的图像集分割方法,其特征在于,还包括步骤若i+3不是小于或等于所述多个图像的数量,则CPU输出第i+Ι个图像的最终分割结果,同时GPU根据均值漂移算法对第i+2个图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;设置i = i+2 ;CPU根据所述最初RGB颜色信息和所述最初坐标信息对第i个图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU ;GPU根据模糊C均值算法对所述区域的参数进行计算,以获得第i个图像的最终分割结果,并将其传送到CPU;CPU输出第i个图像的最终分割结果。
9.根据权利要求5所述的图像集分割方法,其特征在于,CPU根据最初RGB颜色信息和最初坐标信息将RGB颜色信息相同且相邻的像素聚为一类。
10.根据权利要求5所述的图像集分割方法,其特征在于,区域的参数包括区域的个数、区域内像素点数以及区域的颜色均值;所述图像的最终分割结果包括最终RGB颜色信息及最终坐标信息。
全文摘要
本发明提供了一种图像分割方法,包括如下步骤CPU读取一图像,初始化图像的参数,分配CPU和GPU所需要的内存空间,并将图像传给GPU;GPU根据均值漂移算法对图像进行计算,以获得最初RGB颜色信息和最初坐标信息,并将其传回CPU;CPU根据最初RGB颜色信息和最初坐标信息对图像的像素进行聚类,从而形成多个区域,统计区域的参数,并将其传送到GPU;GPU根据模糊C均值算法对区域的参数进行计算,以获得图像的最终分割结果,并将其传送到CPU;CPU输出图像的最终分割结果。本方法具有通用性好、分割速度快、可将图像分割成用户需要的区域数的特点。
文档编号G06T7/00GK102314688SQ20111026736
公开日2012年1月11日 申请日期2011年9月9日 优先权日2011年9月9日
发明者冯晓文, 汪聪, 郑然 , 金海 申请人:华中科技大学