CN109146953A - 基于fpga的标记面积块上限分离分道方法 - Google Patents
基于fpga的标记面积块上限分离分道方法 Download PDFInfo
- Publication number
- CN109146953A CN109146953A CN201811053501.0A CN201811053501A CN109146953A CN 109146953 A CN109146953 A CN 109146953A CN 201811053501 A CN201811053501 A CN 201811053501A CN 109146953 A CN109146953 A CN 109146953A
- Authority
- CN
- China
- Prior art keywords
- area
- channel
- block
- limit value
- upper limit
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Transforming Light Signals Into Electric Signals (AREA)
- Image Processing (AREA)
Abstract
本发明公开了基于FPGA的标记面积块上限分离分道方法,包括以下步骤:设定起始像素和结束像素,使图像像素与滑槽宽度相对应;将起始像素、结束像素、设定的连通面积块下限值和上限值发送至FPGA;设定比较器组;设定k个寄存器,将上限通道值缓存k行后输出;根据连通域算法得到的面积块面积值来确定是否需要对这k个寄存器进行清零;在I+2N时钟之后,一行像素扫描完毕,当前行通道值压入寄存器队列,k行之前的通道寄存器发送给高速气阀控制板,满足喷气吹离要求的通道为1,否则为0。本发明精确有效地识别某个预设范围内的面积块并且做出相应操作,极大地降低了误识别或误操作的概率。
Description
技术领域
本发明属于工业机器视觉领域,涉及一种基于FPGA的标记面积块上限分离分道方法。
背景技术
分选设备是工业上一种较为常用的装置,将物料放入滑槽中均匀滑落,由线阵相机采集物料的图像数据,根据图像的特征不同,通过高速气阀喷气吹离来剔除物料。通过以图像连通域算法为基础的标记面积块面积计算方法,可以较为容易地分辨出大于某一面积的面积块,但是由于面积是从小到大累计得到的,因此难以区分出小于某一面积的面积块。并且,由于线阵相机的拍摄范围和滑槽的宽度不尽相同,需要确定出整个滑槽和相机拍摄的像素之间的对应关系,才能完全识别所有的面积块。目前的面积块上限分离分道方法,大多以DSP或CPU实现,难以达到极高的实时性,因此时常会有喷不中或漏喷的现象,所以,需要一种高速且精确的面积块上限分离分道算法,判断标记面积块大小是否小于某一面积值,并确定面积块所在的位置,来实现高速气阀对小于某个值的面积块的精确喷气吹离。
发明内容
本发明针对现有技术的不足,提供了一种基于FPGA的标记面积块上限分离分道方法,这种方法主要使用在分选设备上对面积块大小进行区分的功能中,主要包括:通过初始化线阵图像的起始像素和结束像素,来设定滑槽通道划分和图像像素的一一对应关系;通过标记面积块面积和预设面积下限值的对比,确定是否需要对某个标记的面积块进行喷气吹离,并进行缓存;通过标记面积块和预设面积上限值的对比,确定是否需要对缓存的通道值进行清零操作,从而达到不喷气的效果。
为实现上述目的,本发明的技术方案为一种基于FPGA的标记面积块上限分离分道方法,包括以下步骤:
S10,设定起始像素pixstart和结束像素pixend,使其与滑槽的宽度相对应,则通道对应的图像总像素数量odd=pixend-pixstart+1,再将这些数据以及面积上限值AREA_max和下限值AREA_min全部发送给FPGA,则当前像素所在的通道cal_temp=((data_cnt-pixstart)*2N*M/odd)>>N,其中,2N为一行像素数量,M为划分的通道数,data_cnt为当前像素标号;
S20,设定k个M位通道寄存器,分别为channel_temp1、channel_temp2、channel_temp3、channel_temp4…channel_tempk,以队列形式用于缓存输出的通道值,每一行像素结束时输出一个M位的通道值,当前行的面积块判决结果会延迟k行像素之后再输出;
S30,设定比较器,输入为cal_temp和0,如果相等,则表示当前处理的像素处于第一个通道,需要对通道寄存器channel_tempk进行清零;
S40,设定比较器组;
S50,设定比较器D,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;设定比较器E,输入为当前像素clr_in和0;同时设定状态机S(0)-S(i),用来对超过上限值的面积块对应的通道值进行清零;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块上限值AREA_max,且当前像素clr_in大于0,说明当前面积块不满足喷气吹离要求,需要对寄存的前k行通道值进行清零;
S60,在I+2N时钟之后,一行像素扫描完毕,当前行通道值channel_temp1压入寄存器队列,k行之前的通道寄存器channel_tempk发送给高速气阀控制板,满足喷气吹离要求的通道为1,不满足喷气吹离要求的通道为0。
优选地,在所述S40中,设定比较器A,输入为当前面积块面积sum_data_up和连通面积块下限值AREA_min;设定比较器B,输入为当前像素clr_in和0;设定比较器C,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块下限值AREA_min,且当前像素clr_in大于0,且当前连通面积块的面积sum_data_up小于连通面积块上限值AREA_max,说明此时面积块的面积在下限值AREA_min和上限值AREA_max之间,暂时满足预先设定的面积阈值,则将M位通道寄存器channel_temp1的第cal_temp位设置为1。
优选地,在所述S50中,在S(0)状态,对k个M位通道寄存器的cal_temp位进行清零;在S(1)状态,对k个M位通道寄存器的cal_temp-1位进行清零;在S(2)状态,对k个M位通道寄存器的cal_temp+1位进行清零,在S(3)状态,对k个M位通道寄存器的cal_temp-2位进行清零,在S(4)状态,对k个M位通道寄存器的cal_temp+2位进行清零…在S(i)状态,对k个M位通道寄存器的cal_temp+m位进行清零。
本发明的有益效果如下:
实现了一种基于FPGA的标记面积块上限分离分道方法,通过缓存k行通道值,实现对前k行的面积块是否需要喷气的判决,可以识别出处于某个面积范围的面积块,并且精确有效地做出相应操作,极大地降低了误识别或误操作的概率。
附图说明
图1为本发明实施例的基于FPGA的标记面积块上限分离分道方法的步骤流程图;
图2为本发明实施例的基于FPGA的标记面积块上限分离分道方法中S50中通道寄存器的状态转换图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
参见图1,为本发明实施例的本发明的技术方案为基于FPGA的标记面积块上限分离分道方法的步骤流程图,包括以下步骤:
S10,设定起始像素pixstart和结束像素pixend,使其与滑槽的宽度相对应,则通道对应的图像总像素数量odd=pixend-pixstart+1,再将这些数据以及面积上限值AREA_max和下限值AREA_min全部发送给FPGA,则当前像素所在的通道cal_temp=((data_cnt-pixstart)*2N*M/odd)>>N,其中,2N为一行像素数量,M为划分的通道数,data_cnt为当前像素标号;
S20,设定k个M位通道寄存器,分别为channel_temp1、channel_temp2、channel_temp3、channel_temp4…channel_tempk,以队列形式用于缓存输出的通道值,每一行像素结束时输出一个M位的通道值,当前行的面积块判决结果会延迟k行像素之后再输出;
S30,设定比较器,输入为cal_temp和0,如果相等,则表示当前处理的像素处于第一个通道,需要对通道寄存器channel_tempk进行清零;
S40,设定比较器组;
在S40中设定比较器组包括:设定比较器A,输入为当前面积块面积sum_data_up和连通面积块下限值AREA_min;设定比较器B,输入为当前像素clr_in和0;设定比较器C,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块下限值AREA_min,且当前像素clr_in大于0,且当前连通面积块的面积sum_data_up小于连通面积块上限值AREA_max,说明此时面积块的面积在下限值AREA_min和上限值AREA_max之间,暂时满足预先设定的面积阈值,则将M位通道寄存器channel_temp1的第cal_temp位设置为1;
S50,设定比较器D,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;设定比较器E,输入为当前像素clr_in和0;同时设定状态机S(0)-S(i),用来对超过上限值的面积块对应的通道值进行清零;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块上限值AREA_max,且当前像素clr_in大于0,说明当前面积块不满足喷气吹离要求,需要对寄存的前k行通道值进行清零;
参见图2为在S50中通道寄存器的状态转换图,在具体实施例中,设定比较器D,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;设定比较器E,输入为当前像素clr_in和0。同时设定状态机S(0)-S(10),用来对超过上限值的面积块对应的通道值进行清零。在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块上限值AREA_max,且当前像素clr_in大于0,说明当前面积块不满足喷气吹离要求,需要对寄存的前100行通道值进行清零。在S(0)状态,对100个64位通道寄存器的cal_temp位进行清零;在S(1)状态,对100个64位通道寄存器的cal_temp-1位进行清零;在S(2)状态,对100个64位通道寄存器的cal_temp+1位进行清零,在S(3)状态,对100个64位通道寄存器的cal_temp-2位进行清零,在S(4)状态,对100个64位通道寄存器的cal_temp+2位进行清零…在S(10)状态,对100个64位通道寄存器的cal_temp+5位进行清零。
S60,在I+2N时钟之后,一行像素扫描完毕,当前行通道值channel_temp1压入寄存器队列,k行之前的通道寄存器channel_tempk发送给高速气阀控制板,满足喷气吹离要求的通道为1,不满足喷气吹离要求的通道为0。
在具体实施例中,从系统来讲,上位机设定面积块上限值、面积块下限值、起始像素和结束像素,发送给FPGA,最后通过FPGA实现标记面积块通道值的输出。在这个实例中,线阵相机的一行像素数量为2048个,但实际可用像素约为1800-2000个。滑槽将被划分为64个通道,pixstart在滑槽的第一个通道,pixend在滑槽的第64个通道。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于FPGA的标记面积块上限分离分道方法,其特征在于,包括以下步骤:
S10,设定起始像素pixstart和结束像素pixend,使其与滑槽的宽度相对应,则通道对应的图像总像素数量odd=pixend-pixstart+1,再将这些数据以及面积上限值AREA_max和下限值AREA_min全部发送给FPGA,则当前像素所在的通道cal_temp=((data_cnt-pixstart)*2N*M/odd)>>N,其中,2N为一行像素数量,M为划分的通道数,data_cnt为当前像素标号;
S20,设定k个M位通道寄存器,分别为channel_temp1、channel_temp2、channel_temp3、channel_temp4…channel_tempk,以队列形式用于缓存输出的通道值,每一行像素结束时输出一个M位的通道值,当前行的面积块判决结果会延迟k行像素之后再输出;
S30,设定比较器,输入为cal_temp和0,如果相等,则表示当前处理的像素处于第一个通道,需要对通道寄存器channel_tempk进行清零;
S40,设定比较器组;
S50,设定比较器D,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;设定比较器E,输入为当前像素clr_in和0;同时设定状态机S(0)-S(i),用来对超过上限值的面积块对应的通道值进行清零;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块上限值AREA_max,且当前像素clr_in大于0,说明当前面积块不满足喷气吹离要求,需要对寄存的前k行通道值进行清零;
S60,在I+2N时钟之后,一行像素扫描完毕,当前行通道值channel_temp1压入寄存器队列,k行之前的通道寄存器channel_tempk发送给高速气阀控制板,满足喷气吹离要求的通道为1,不满足喷气吹离要求的通道为0。
2.根据权利要求1所述的方法,其特征在于,在所述S40中,设定比较器A,输入为当前面积块面积sum_data_up和连通面积块下限值AREA_min;设定比较器B,输入为当前像素clr_in和0;设定比较器C,输入为当前面积块面积sum_data_up和连通面积块上限值AREA_max;在I+pixstart时钟和I+pixend时钟之间,如果当前连通面积块的面积sum_data_up大于连通面积块下限值AREA_min,且当前像素clr_in大于0,且当前连通面积块的面积sum_data_up小于连通面积块上限值AREA_max,说明此时面积块的面积在下限值AREA_min和上限值AREA_max之间,暂时满足预先设定的面积阈值,则将M位通道寄存器channel_temp1的第cal_temp位设置为1。
3.根据权利要求1所述的方法,其特征在于,在所述S50中,在S(0)状态,对k个M位通道寄存器的cal_temp位进行清零;在S(1)状态,对k个M位通道寄存器的cal_temp-1位进行清零;在S(2)状态,对k个M位通道寄存器的cal_temp+1位进行清零,在S(3)状态,对k个M位通道寄存器的cal_temp-2位进行清零,在S(4)状态,对k个M位通道寄存器的cal_temp+2位进行清零…在S(i)状态,对k个M位通道寄存器的cal_temp+m位进行清零。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811053501.0A CN109146953B (zh) | 2018-09-11 | 2018-09-11 | 基于fpga的标记面积块上限分离分道方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811053501.0A CN109146953B (zh) | 2018-09-11 | 2018-09-11 | 基于fpga的标记面积块上限分离分道方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109146953A true CN109146953A (zh) | 2019-01-04 |
CN109146953B CN109146953B (zh) | 2021-12-10 |
Family
ID=64824438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811053501.0A Active CN109146953B (zh) | 2018-09-11 | 2018-09-11 | 基于fpga的标记面积块上限分离分道方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109146953B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140086488A1 (en) * | 2012-09-21 | 2014-03-27 | Fujitsu Limited | Image processing device and image processing method |
US20150078672A1 (en) * | 2013-04-15 | 2015-03-19 | Microsoft Corporation | Hardware-amenable connected components labeling |
CN104680531A (zh) * | 2015-02-28 | 2015-06-03 | 西安交通大学 | 一种连通量统计信息提取方法及vlsi结构 |
CN105374032A (zh) * | 2015-10-14 | 2016-03-02 | 合肥安晶龙电子股份有限公司 | 连通区域标记方法 |
CN106412374A (zh) * | 2016-12-13 | 2017-02-15 | 长沙麦斯森信息科技有限公司 | 基于投影的图像连通域单次扫描方法及装置 |
CN106778769A (zh) * | 2016-11-23 | 2017-05-31 | 北京电子工程总体研究所 | 一种基于fpga的弹上图像连通域提取方法 |
CN107705288A (zh) * | 2017-09-04 | 2018-02-16 | 武汉工程大学 | 伪目标运动强干扰下的危险气体泄漏红外视频检测方法 |
CN107704922A (zh) * | 2017-04-19 | 2018-02-16 | 北京深鉴科技有限公司 | 人工神经网络处理装置 |
CN107895342A (zh) * | 2017-11-29 | 2018-04-10 | 杭州电子科技大学 | 一种基于fpga的高速颜色筛选方法的实现方法 |
CN108090932A (zh) * | 2017-12-21 | 2018-05-29 | 南京理工大学 | 基于fpga的炸点目标检测系统及方法 |
-
2018
- 2018-09-11 CN CN201811053501.0A patent/CN109146953B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140086488A1 (en) * | 2012-09-21 | 2014-03-27 | Fujitsu Limited | Image processing device and image processing method |
US20150078672A1 (en) * | 2013-04-15 | 2015-03-19 | Microsoft Corporation | Hardware-amenable connected components labeling |
CN104680531A (zh) * | 2015-02-28 | 2015-06-03 | 西安交通大学 | 一种连通量统计信息提取方法及vlsi结构 |
CN105374032A (zh) * | 2015-10-14 | 2016-03-02 | 合肥安晶龙电子股份有限公司 | 连通区域标记方法 |
CN106778769A (zh) * | 2016-11-23 | 2017-05-31 | 北京电子工程总体研究所 | 一种基于fpga的弹上图像连通域提取方法 |
CN106412374A (zh) * | 2016-12-13 | 2017-02-15 | 长沙麦斯森信息科技有限公司 | 基于投影的图像连通域单次扫描方法及装置 |
CN107704922A (zh) * | 2017-04-19 | 2018-02-16 | 北京深鉴科技有限公司 | 人工神经网络处理装置 |
CN107705288A (zh) * | 2017-09-04 | 2018-02-16 | 武汉工程大学 | 伪目标运动强干扰下的危险气体泄漏红外视频检测方法 |
CN107895342A (zh) * | 2017-11-29 | 2018-04-10 | 杭州电子科技大学 | 一种基于fpga的高速颜色筛选方法的实现方法 |
CN108090932A (zh) * | 2017-12-21 | 2018-05-29 | 南京理工大学 | 基于fpga的炸点目标检测系统及方法 |
Non-Patent Citations (4)
Title |
---|
KURT SCHWENK 等: "Connected Component Labeling Algorithm for very complex and high", 《PROC.OF SPIE》 * |
VATSALA ANAND 等: "Implementation of energy efficient FIR Gaussian filter on FPGA", 《2017 4TH INTERNATIONAL CONFERENCE ON SIGNAL PROCESSING, COMPUTING AND CONTROL (ISPCC)》 * |
余淑华 等: "基于 FPGA 的脱绒棉种色选机实现", 《农业机械学报》 * |
王凯 等: "面向图像目标提取的改进连通域标记算法", 《计算机工程与设计》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109146953B (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108734105B (zh) | 车道线检测方法、装置、存储介质和电子设备 | |
US8184859B2 (en) | Road marking recognition apparatus and method | |
CN108090911B (zh) | 一种光学遥感图像的近岸舰船分割方法 | |
CN104794688A (zh) | 基于深度信息分离天空区域的单幅图像去雾方法及装置 | |
CN105184812B (zh) | 一种基于目标跟踪的行人徘徊检测方法 | |
CN110715622B (zh) | 一种电缆导体截面积测量方法 | |
CN106971376A (zh) | 一种基于显著性模型的图像缩放方法 | |
CN105912977B (zh) | 基于点聚类的车道线检测方法 | |
CN102509095B (zh) | 一种车牌图像的预处理方法 | |
CN104915940A (zh) | 一种基于图像对齐的图像去噪的方法和系统 | |
CN101945210B (zh) | 运动跟踪预测方法 | |
JP2020504383A (ja) | 画像前景の検出装置、検出方法及び電子機器 | |
CN109146953A (zh) | 基于fpga的标记面积块上限分离分道方法 | |
CN108154114A (zh) | 一种车道线检测的方法 | |
CN103810713A (zh) | 一种八连通图像处理方法和装置 | |
Sahoo et al. | A fast valley-based segmentation for detection of slowly moving objects | |
CN107563374B (zh) | 一种数显式仪表数码管定位方法 | |
JP5189556B2 (ja) | 車線検出装置 | |
CN105913405B (zh) | 用于呈现图像细节的处理方法、装置及车辆 | |
CN109993695B (zh) | 一种不规则图形标注的图像碎片拼接方法及系统 | |
Cheng | Highway traffic flow estimation for surveillance scenes damaged by rain | |
CN102663395B (zh) | 基于自适应多尺度快速离散Beamlet变换的直线检测方法 | |
CN110858879B (zh) | 视频流处理方法、装置及计算机可读存储介质 | |
CN107154045B (zh) | 一种基于计算机视觉的导流区违章轧线车辆精确定位方法 | |
CN108510527B (zh) | 一种基于帧差法和运动点聚类的运动目标检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |