买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:广东欧谱曼迪科技有限公司
摘要:本发明公开了一种基于FPGA的高清图像超低延时的OTSU实现方法,FPGA首先将接收到的视频数据存入FIFO,直方图统计模块从FIFO里面获取数据用于统计整幅图像的直方图,直方图统计结束后,为实现OTSU的算法,需要例化4个BRAM,分别存储前景和背景的统计结果,最后使用FPGA内部的专用乘法器来实现算法中的乘法运行;通过使用FPGA实现了接近实时的FPGA处理算法,保证高分辨率的图像实时处理的实现。
主权项:1.一种基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,具体包括以下步骤:步骤S1:将视频数据输入到FPGA后进行缓存;步骤S2:从缓存中获取图像数据,统计出整幅图像的直方图;步骤S3:读取直方图数据,基于最大类间方差法通过FPGA内部的数学运算得到最大类间方差和最佳分割阈值;步骤S4:根据最佳分割阈值提取出图像的前景区域;步骤S5:输出提取出的前景区域;步骤S6:判断缓存中是否还有图像数据可以提取,是,执行步骤S7,否,执行步骤S8;步骤S7:执行步骤S3-步骤S5;步骤S8:图像处理结束;所述步骤S3的具体过程如下:预设初始分割阀值,根据预设初始分割阀值计算出前景区域和背景区域的参数;根据前景区域和背景区域的参数,通过FPGA内部的数学运算得到图像的类间方差;根据图像的类间方差,得到最大类间方差和最佳分割阈值;根据最佳分割阈值提取出图像的前景区域;所述步骤S3中,具体包括步骤:步骤s31:设定图像为Vx,y,预设将[0,255]中共256级灰阶逐一作为图像Vx,y的分割阈值thresh,统计每一个分割阈值thresh对应的亮区域点数占图像比例为w0,平均灰度为u0;每一个分割阈值thresh对应的暗区域点数占图像比例为w1,平均灰度为u1;通过公式(1)得出每一个分割阈值thresh对应的图像的总平均灰度u:(1)步骤s32:通过公式(2)得出每一个分割阈值thresh对应的亮、暗区域灰度的类间方差g: (2)步骤s33:判断图像[0,255]中共256级灰阶是否已计算完毕,是,执行步骤s34,否,执行步骤s35;步骤s34:将256级灰阶对应的类间方差g形成类间方差g的集合,从中查找出类间方差g的最大值maxDelta,以及其对应的thresh,其中,该thresh就是对图像进行亮、暗区域分割的最佳分割阈值thresh;步骤s35:执行步骤s31;所述步骤s31中,在FPGA内定义4个RAM块,分别用于储存统计每个图形Vx,y的w0,u0,w1和u1;所述步骤s31中,通过除法器计算得到u0,通过除法器计算得到u1,通过加法器计算得到u;所述步骤s31中,使用一个时钟同时计算出u0,u1和u;所述步骤s32中,通过加法器计算得到u0-u,通过加法器计算得到u1-u,再通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,最后通过加法器得到类间方差g=+;所述步骤s32中,使用一个时钟同时计算出u0-u和u1-u,使用一个时钟同时计算出和,使用一个时钟同时计算出和;通过统计状态机不断循环统计图像Vx,y的每一个分割阈值thresh对应的w0,u0,w1,u1;通过遍历状态机不断根据每一个分割阈值thresh对应的w0,u0,w1,u1计算出对应的类间方差g。
全文数据:基于FPGA的高清图像超低延时的OTSU实现方法技术领域本发明涉及一种图像处理方法,尤其涉及的是一种基于FPGA的高清图像超低延时的OTSU实现方法。背景技术OTSU分割算法是1978年otsu提出的一种图像分割阈值计算方法。在对图像进行阈值分割时,选定的分割阈值应使前景区域的平均灰度与整幅图像的平均灰度之间、背景区域的平均灰度与整幅图像的平均灰度之间差别最大,这种差异用区域的方差来表示。OTSU算法是在判决分析最小二乘法原理的基础上推导得出,计算简单,广泛应用于工业界的图像处理的目标分割、提取上。一般地,在实时性能要求不高的使用场景下,OTSU分割算法可以基于工控机来实现,例如,一些检测速度要求较低的机器视觉应用场景。然而,在实时性要求较高的应用中,例如内窥镜摄像系统(含基于OTSU的处理算法),需要严格保证主刀医生操作和显示画面的同步性、一致性,否则将给手术效果带来不可估量的影响。而日新月异发展下的内窥镜摄像系统,其图像分辨率已达到全高清(1080P)、4K甚至8K的水平,基于高分辨率的图像处理已超出工控机的处理能力范围,无法满足内窥镜摄像系统的图像实时处理的需求。因此,现有技术还有待于改进和发展。发明内容本发明的目的在于提供一种基于FPGA的高清图像超低延时的OTSU实现方法,旨在解决现有内窥镜摄像系统中的工控机无法满足内窥镜摄像系统的高分辨率的图像实时处理需求的问题。本发明的技术方案如下:一种基于FPGA的高清图像超低延时的OTSU实现方法,其中,具体包括以下步骤:步骤S1:将视频数据输入到FPGA后进行缓存;步骤S2:从缓存中获取图像数据,统计出整幅图像的直方图;步骤S3:读取直方图数据,基于最大类间方差法通过FPGA内部的数学运算得到最大类间方差和最佳分割阈值;步骤S4:根据最佳分割阈值提取出图像的前景区域;步骤S5:输出提取出的前景区域;步骤S6:判断缓存中是否还有图像数据可以提取,是,执行步骤S7,否,执行步骤S8;步骤S7:执行步骤S3-步骤S5;步骤S8:图像处理结束。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤S1中,将视频数据输入FPGA内部的FIFO进行缓存。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤S2中,通过直方图统计模块从FIFO中获取图像数据用于统计整幅图像的直方图。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤S3的具体过程如下:预设初始分割阀值,根据预设初始分割阀值计算出前景区域和背景区域的参数;根据前景区域和背景区域的参数,通过FPGA内部的数学运算得到图像的类间方差;根据图像的类间方差,得到最大类间方差和最佳分割阈值;根据最佳分割阈值提取出图像的前景区域。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤S3中,具体包括步骤:步骤s31:设定图像为Vx,y,预设将[0,255]中共256级灰阶逐一作为图像Vx,y的分割阈值thresh,统计每一个分割阈值thresh对应的亮区域点数占图像比例为w0,平均灰度为u0;每一个分割阈值thresh对应的暗区域点数占图像比例为w1,平均灰度为u1;通过公式(1)得出每一个分割阈值thresh对应的图像的总平均灰度u:(1)步骤s32:通过公式(2)得出每一个分割阈值thresh对应的亮、暗区域灰度的类间方差g:(2)步骤s33:判断图像[0,255]中共256级灰阶是否已计算完毕,是,执行步骤s34,否,执行步骤s35;步骤s34:将256级灰阶对应的类间方差g形成类间方差g的集合,从中查找出类间方差g的最大值maxDelta,以及其对应的thresh,其中,该thresh就是对图像进行亮、暗区域分割的最佳分割阈值thresh;步骤s35:执行步骤s31。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤s31中,在FPGA内定义4个RAM块,分别用于储存统计每个图形Vx,y的w0,u0,w1和u1。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤s31中,通过除法器计算得到u0,通过除法器计算得到u1,通过加法器计算得到u;所述步骤s31中,使用一个时钟同时计算出u0,u1和u。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,所述步骤s32中,通过加法器计算得到u0-u,通过加法器计算得到u1-u,再通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,最后通过加法器得到类间方差g=+;所述步骤s32中,使用一个时钟同时计算出u0-u和u1-u,使用一个时钟同时计算出和,使用一个时钟同时计算出和。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,通过统计状态机不断循环统计图像Vx,y的每一个分割阈值thresh对应的w0,u0,w1,u1。所述的基于FPGA的高清图像超低延时的OTSU实现方法,其中,通过遍历状态机不断根据每一个分割阈值thresh对应的w0,u0,w1,u1计算出对应的类间方差g。本发明的有益效果:本发明通过提供一种基于FPGA的高清图像超低延时的OTSU实现方法,FPGA首先将接收到的视频数据存入FIFO,直方图统计模块从FIFO里面获取数据用于统计整幅图像的直方图,直方图统计结束后,为实现OTSU的算法,需要例化4个BRAM,分别存储前景和背景的统计结果,最后使用FPGA内部的专用乘法器来实现算法中的乘法运行;通过使用FPGA实现了接近实时的FPGA处理算法,保证高分辨率的图像实时处理的实现。附图说明图1是本发明中基于FPGA的高清图像超低延时的OTSU实现方法的步骤流程图。具体实施方式下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。下文的公开提供了许多不同的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和或其他材料的使用。如图1所示,一种基于FPGA(Field-ProgrammableGateArray,即现场可编程门阵列)的高清图像超低延时的OTSU实现方法,具体包括以下步骤:步骤S1:将视频数据输入到FPGA后进行缓存;步骤S2:从缓存中获取图像数据,统计出整幅图像的直方图;步骤S3:读取直方图数据,基于最大类间方差法通过FPGA内部的数学运算得到最大类间方差和最佳分割阈值;步骤S4:根据最佳分割阈值提取出图像的前景区域;步骤S5:输出提取出的前景区域;步骤S6:判断缓存中是否还有图像数据可以提取,是,执行步骤S7,否,执行步骤S8;步骤S7:执行步骤S3-步骤S5;步骤S8:图像处理结束。进一步地,所述步骤S1中,将视频数据输入FPGA内部的FIFO(FirstInputFirstOutput,先进先出,是一个常用于数据缓存的一个数据缓冲器)进行缓存。进一步地,所述步骤S2中,通过直方图统计模块从FIFO中获取图像数据用于统计整幅图像的直方图。进一步地,所述步骤S3的具体过程如下:预设初始分割阀值,根据预设初始分割阀值计算出前景区域和背景区域的参数;根据前景区域和背景区域的参数,通过FPGA内部的数学运算得到图像的类间方差;根据图像的类间方差,得到最大类间方差和最佳分割阈值;根据最佳分割阈值提取出图像的前景区域。其中,所述步骤S3中,通过以下具体步骤加以说明:步骤s31:设定图像为Vx,y,预设将[0,255]中共256级灰阶(灰度)逐一作为图像Vx,y的分割阈值thresh,统计每一个分割阈值thresh对应的亮区域(亮区域为Vx,y≥thresh的区域)点数占图像比例为w0,平均灰度为u0;每一个分割阈值thresh对应的暗区域(暗区域为Vx,ythresh的区域)点数占图像比例为w1,平均灰度为u1;通过公式(1)得出每一个分割阈值thresh对应的图像的总平均灰度u:(1)步骤s32:通过公式(2)得出每一个分割阈值thresh对应的亮、暗区域灰度的类间方差g:(2)步骤s33:判断图像[0,255]中共256级灰阶是否已计算完毕,是,执行步骤s34,否,执行步骤s35;步骤s34:将256级灰阶对应的类间方差g形成类间方差g的集合,从中查找出类间方差g的最大值maxDelta,以及其对应的thresh,其中,该thresh就是对图像进行亮、暗区域分割的最佳分割阈值thresh;步骤s35:执行步骤s31。其中,所述步骤s31中,在FPGA内定义4个RAM块(RAM块为内嵌于FPGA内,用于数据的存取),分别用于储存统计每个图形Vx,y的w0,u0,w1和u1。其中,所述步骤s31中,通过除法器计算得到u0,通过除法器计算得到u1,通过加法器计算得到u。其中,所述步骤s31中,使用一个时钟同时计算出u0,u1和u。其中,所述步骤s32中,通过加法器计算得到u0-u,通过加法器计算得到u1-u,再通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,最后通过加法器得到类间方差g=+。其中,所述步骤s32中,使用一个时钟同时计算出u0-u和u1-u,使用一个时钟同时计算出和,使用一个时钟同时计算出和。其中,通过统计状态机不断循环统计图像Vx,y的每一个分割阈值thresh对应的w0,u0,w1,u1。其中,通过遍历状态机不断根据每一个分割阈值thresh对应的w0,u0,w1,u1计算出对应的类间方差g。例如,对于一张大小为1920x1080分辨率的图像,从图像输入到阈值计算输出图像仅需要大约70000个时钟(工作于148.5M时,约471us),本技术方案借助了FPGA的并行计算的优势及设计的算法并行实现的架构,保证了算法的高效实现。本技术方案中,FPGA首先将接收到的视频数据存入FIFO,直方图统计模块从FIFO里面获取数据用于统计整幅图像的直方图,直方图统计结束后,为实现OTSU的算法,需要例化4个BRAM,分别存储前景和背景的统计结果,最后使用FPGA内部的专用乘法器来实现算法中的乘法运行;通过使用FPGA实现了接近实时的FPGA处理算法,保证高分辨率的图像实时处理的实现。在本说明书的描述中,参考术语“一个实施方式”、“某些实施方式”、“示意性实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
权利要求:1.一种基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,具体包括以下步骤:步骤S1:将视频数据输入到FPGA后进行缓存;步骤S2:从缓存中获取图像数据,统计出整幅图像的直方图;步骤S3:读取直方图数据,基于最大类间方差法通过FPGA内部的数学运算得到最大类间方差和最佳分割阈值;步骤S4:根据最佳分割阈值提取出图像的前景区域;步骤S5:输出提取出的前景区域;步骤S6:判断缓存中是否还有图像数据可以提取,是,执行步骤S7,否,执行步骤S8;步骤S7:执行步骤S3-步骤S5;步骤S8:图像处理结束。2.根据权利要求1所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤S1中,将视频数据输入FPGA内部的FIFO进行缓存。3.根据权利要求1所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤S2中,通过直方图统计模块从FIFO中获取图像数据用于统计整幅图像的直方图。4.根据权利要求1所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤S3的具体过程如下:预设初始分割阀值,根据预设初始分割阀值计算出前景区域和背景区域的参数;根据前景区域和背景区域的参数,通过FPGA内部的数学运算得到图像的类间方差;根据图像的类间方差,得到最大类间方差和最佳分割阈值;根据最佳分割阈值提取出图像的前景区域。5.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤S3中,具体包括步骤:步骤s31:设定图像为Vx,y,预设将[0,255]中共256级灰阶逐一作为图像Vx,y的分割阈值thresh,统计每一个分割阈值thresh对应的亮区域点数占图像比例为w0,平均灰度为u0;每一个分割阈值thresh对应的暗区域点数占图像比例为w1,平均灰度为u1;通过公式(1)得出每一个分割阈值thresh对应的图像的总平均灰度u:(1)步骤s32:通过公式(2)得出每一个分割阈值thresh对应的亮、暗区域灰度的类间方差g:(2)步骤s33:判断图像[0,255]中共256级灰阶是否已计算完毕,是,执行步骤s34,否,执行步骤s35;步骤s34:将256级灰阶对应的类间方差g形成类间方差g的集合,从中查找出类间方差g的最大值maxDelta,以及其对应的thresh,其中,该thresh就是对图像进行亮、暗区域分割的最佳分割阈值thresh;步骤s35:执行步骤s31。6.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤s31中,在FPGA内定义4个RAM块,分别用于储存统计每个图形Vx,y的w0,u0,w1和u1。7.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤s31中,通过除法器计算得到u0,通过除法器计算得到u1,通过加法器计算得到u;所述步骤s31中,使用一个时钟同时计算出u0,u1和u。8.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,所述步骤s32中,通过加法器计算得到u0-u,通过加法器计算得到u1-u,再通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,通过乘法器计算得到,最后通过加法器得到类间方差g=+;所述步骤s32中,使用一个时钟同时计算出u0-u和u1-u,使用一个时钟同时计算出和,使用一个时钟同时计算出和。9.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,通过统计状态机不断循环统计图像Vx,y的每一个分割阈值thresh对应的w0,u0,w1,u1。10.根据权利要求4所述的基于FPGA的高清图像超低延时的OTSU实现方法,其特征在于,通过遍历状态机不断根据每一个分割阈值thresh对应的w0,u0,w1,u1计算出对应的类间方差g。
百度查询: 广东欧谱曼迪科技有限公司 基于FPGA的高清图像超低延时的OTSU实现方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。