CN101221135A - 基于fpga的印刷电路板图像骨架化方法 - Google Patents
基于fpga的印刷电路板图像骨架化方法 Download PDFInfo
- Publication number
- CN101221135A CN101221135A CNA2008103001335A CN200810300133A CN101221135A CN 101221135 A CN101221135 A CN 101221135A CN A2008103001335 A CNA2008103001335 A CN A2008103001335A CN 200810300133 A CN200810300133 A CN 200810300133A CN 101221135 A CN101221135 A CN 101221135A
- Authority
- CN
- China
- Prior art keywords
- pixel
- image
- fpga
- output
- center pixel
- 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
Images
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
一种基于FPGA的印刷电路板图像骨架化方法,先输入图像,分析每个像素的3?邻域,并统计周围8像素中向素值为1的个数n,和0和1转换的次数S,输出为1,保留为1的像素;然后,判断中心像素是否为1,如为0,删除中心像素;当1<n≤6,S=2,且循环次数为奇数次时,考察中心像素的右、下两个方向像素,及中心像素的左、上两个方向像素,判断0和1是否有交叉,输出0,删除该像素;当1<n≤6,S=4,n=4,且循环次数为奇数次时,考察中心像素的左上、右上两个方向像素,及中心像素的左下、右下两个方向像素;判断中心像素的下方像素是否为1,0和1是否分为两个连通区域,若为0,删除该像素。可快速准确抽取图像骨架。
Description
(一)技术领域
本发明涉及一种印刷电路板缺陷的检测方法。
(二)背景技术
目前,公知的印刷电路板缺陷的检测方法是基于图像的加、减等简单逻辑运算,对运算结果的分析比较简单,难以确定图像之间的差异并确定其缺陷类型,检测速度较慢,难以实现对采集图像的实时处理,影响检测效率。已有抽取图像骨架的方法为细化算法,利用二值形态操作判断像素点的8邻域的情况。骨架抽取的过程中,因为上、下、左、右方向和对角线方向删除像素的速度不同,结果会丢失一些图像的基本特征,焊盘的骨架抽取为十字或者×字,严重影响后续的图像处理;而且细化算法需要对每个像素进行8邻域分析,在软件上处理一幅较大图像,费时很多,难以实现实时处理。
(三)发明内容
本发明的目的是提供一种基于FPGA的印刷电路板图像骨架化方法,要解决现有细化抽取图像骨架的算法常常会丢失图像特征、且检测费时、难以实现实时处理的技术问题。
为实现上述目的,本发明采用如下技术方案:
一种基于FPGA的印刷电路板图像骨架化方法,应用光学取像、成像装置和图像数据分析处理系统,图像数据分析处理系统应用现场可编程门阵列采集卡FPGA,其特征在于步骤为:
步骤1,输入图像数据。
步骤2,分析每个像素的3×3邻域,并统计周围8像素中向素值为1的个数n,和0和1转换的次数S,输出为1,保留为1的像素。
步骤3,判断中心像素是否为1,如输出为0,删除中心像素。
步骤4,当1<n≤6,S=2,且循环次数为奇数次时,考察中心像素的右、下两个方向像素,以及中心像素的左、上两个方向像素,判断0和1是否有交叉,输出0,删除该像素。
步骤5,当1<n≤6,S=4,n=4,且循环次数为奇数次时,考察中心像素的左上、右上两个方向像素,以及中心像素的左下、右下两个方向像素;判断中心像素的下方像素是否为1,0和1是否分为两个连通区域,输出为0,删除该像素。
一种基于FPGA的印刷电路板图像骨架化方法,其特征在于:
在图像数据分析处理系统中生成查找表,此查找表的输入是代表3×3区域的像素排列的9位地址,输出是每次循环中3×3区域的中心像素是要保留或者要删除。
将查找表下载到FPGA的存储器内,对输入图像的每个像素并行处理,分析其3×3区域内像素的排列情况,得到一个查找地址,然后在查找表中查找该地址所对应的输出,是1则保留该中心像素,是0则删除该中心像素,输出图像骨架。
所述查找表生成方法:
a、统计以该像素为中心的3×3区域周围8个像素的像素值为1的个数n和0、1转换次数S;
b、根据n和S的值,确定输出结果,当1<n≤6,S=2时,是删除的候选点,循环次数为奇数次时,考察下、右两个方向;当循环次数为偶数次时,考察左、上两个方向;当1<n≤6,S=4,n=4时,是删除的候选点,考察对角线上的点,满足条件时,即可删除。
一种基于FPGA的印刷电路板图像骨架化的系统,包括光学取像、成像装置和图像数据分析处理系统,其特征在于:图像数据分析处理系统包括一个含有可配置逻辑块、存储器、数字时钟管理模块、接口模块和互联布线的现场可编程门阵列采集卡,其中,存储器中存有查找表;可配置逻辑块包括顺次连接的:图象数据二值化模块、比较器模块、计算器模块和特征处理器模块。
与现有技术相比本发明具有以下特点和有益效果:本发明根据内部点、孤立点不能删除,除此之外的不影响连通性的像素点都可以删除,同时保留图像基本特征的原则,在计算机上利用程序生成一个静态查找表,此查找表的输入是代表3×3区域的像素排列的9位地址,输出是每次循环中3×3区域的中心像素是要保留(1)或者要删除(0)。然后根据此查找表,在硬件FPGA中,处理图像的每个像素,检查以此像素为中心的3×3区域的像素排列状况,得到一个查找地址,然后在查找表中查找该地址所对应的输出,是1则保留该中心像素,是0则删除该中心像素,输出图像骨架。
本发明使用新的骨架化规则,对图像的上、下、左、右、及对角线方向左上、左下、右上、右下八个方向并且分奇偶次进行骨架化,保证了各方向的骨架化速度一致,保留图像的基本特征。图像的骨架是描述图像几何及拓扑性质的重要特征之一,在文字识别、地质构造识别、工业零件形状识别和图像理解中,首先对被处理的图像进行骨架抽取有助于突出形状特征和减少信息量的冗余。
本发明提供的这种新型Skel算法,使用查找表,特别适合在硬件FPGA中并行处理,同时释放软件资源,大大提高处理速度。
本发明克服了现有细化算法丢失图像特征、费时的不足,可以快速并行处理,去除图像中的冗余信息,准确抽取图像的骨架,保留图像的基本特征。
参见图2、图3,利用本发明,克服了现有细化算法丢失图像基本特征、纯软件执行效率低下的不足,可以快速并行处理,去除图像中冗余信息,准确抽取图像骨架,保留图像基本特征。
(四)附图说明
下面结合附图对本发明做进一步详细的说明。
图1是本方法所述的特征类型示意图。
图2是图像处理前的示意图。
图3是图像经本算法的处理后的示意图。
图4是本方法的步骤框图。
(五)具体实施方式
实施例参见图4:
步骤1,输入图像数据。
步骤2,分析每个像素的3×3邻域,并统计周围8像素中向素值为1的个数n,和0和1转换的次数S,输出为1,保留为1的像素。
步骤3,判断中心像素是否为1,如输出为0,删除中心像素。
步骤4,当1<n≤6,S=2,且循环次数为奇数次时,考察中心像素的右、下两个方向像素,以及中心像素的左、上两个方向像素,判断0和1是否有交叉,输出0,删除该像素。
步骤5,当1<n≤6,S=4,n=4,且循环次数为奇数次时,考察中心像素的左上、右上两个方向像素,以及中心像素的左下、右下两个方向像素;判断中心像素的下方像素是否为1,0和1是否分为两个连通区域,输出为0,删除该像素。
本发明在计算机上使用新的规则生成静态查找表,下载到FPGA中,对输入的图像中的每个像素,考察以该像素为中心的3×3区域的像素分布,以此排列作为查找的地址,在查找表中查找该地址该次循环对应的输出,1为保留该点,0为删除该点,实现图像的骨架抽取。
该方法的实施例:
根据上下左右及对角线方向的骨架速度须保持一致的原则,在计算机上生成查找表。具体方法如下:
1)如图1所示,对每个3×3区域的像素排列,统计下列数据:
n=b0+b1+b2+b3+b5+b6+b7+b8
S=3×3区域周围8个像素的0和1的转换次数,只能为偶数。
2)当中心像素为1,且1<n≤6,S=2时,考察上下左右四个方向,即像素值为0和像素值为1的像素没有交叉,是删除的候选点:
当循环次数为奇数次时,考察右、下两个方向,当满足下列条件时,删除该点:
!(b1&&b3&&b5)&&!(b1&b3&b7)=1
当循环次数为偶数次时,考察左、上两个方向,当满足下列条件时,删除该点:
!(b1&&b5&&b7)&&!(b3&b5&b7)=1
3)当中心像素为1,1<n≤6,S=4,n=4时,考察对角线上四个方向,即所有像素值为1的像素点分为两块儿,是删除的候选点。
当循环次数为奇数次时,考察左上、右上两个方向,当满足下列条件时,删除该点:
(b7=0)&&(!b6&&!b3&&!b2)‖(!b8&&!b5&&!b0)=1
当循环次数为偶数次时,考察左下、右下两个方向,当满足下列条件时,删除该点:
(b0=0)&&(!b0&&!b3&&!b8)‖(!b2&&!b5&&!b6)=1
4)对于每个3×3区域,进行上述处理,最后生成查找表。
将查找表下载到FPGA,对输入图像中的每个像素进行3×3邻域的像素分析,根据循环次数,在查找表中查找骨架化的输出结果。
Claims (4)
1.一种基于FPGA的印刷电路板图像骨架化方法,应用光学取像、成像装置和图像数据分析处理系统,图像数据分析处理系统应用现场可编程门阵列采集卡FPGA,其特征在于步骤为:
步骤1,输入图像数据;
步骤2,分析每个像素的3×3邻域,并统计周围8像素中向素值为1的个数n,和0和1转换的次数S,输出为1,保留为1的像素;
步骤3,判断中心像素是否为1,如输出为0,删除中心像素;
步骤4,当1<n≤6,S=2,且循环次数为奇数次时,考察中心像素的右、下两个方向像素,以及中心像素的左、上两个方向像素,判断0和1是否有交叉,输出0,删除该像素;
步骤5,当1<n≤6,S=4,n=4,且循环次数为奇数次时,考察中心像素的左上、右上两个方向像素,以及中心像素的左下、右下两个方向像素;判断中心像素的下方像素是否为1,0和1是否分为两个连通区域,输出为0,删除该像素。
2.一种基于FPGA的印刷电路板图像骨架化方法,其特征在于:
在图像数据分析处理系统中生成查找表,此查找表的输入是代表3×3区域的像素排列的9位地址,输出是每次循环中3×3区域的中心像素是要保留或者要删除;
将查找表下载到FPGA的存储器内,对输入图像的每个像素并行处理,分析其3×3区域内像素的排列情况,得到一个查找地址,然后在查找表中查找该地址所对应的输出,是1则保留该中心像素,是0则删除该中心像素,输出图像骨架。
3.根据权利要求2所述的基于FPGA的印刷电路板图像骨架化方法,其特征在于所述查找表生成方法:
a、统计以该像素为中心的3×3区域周围8个像素的像素值为1的个数n和0、1转换次数S;
b、根据n和S的值,确定输出结果,当1<n≤6,S=2时,是删除的候选点,循环次数为奇数次时,考察下、右两个方向;当循环次数为偶数次时,考察左、上两个方向;当1<n≤6,S=4,n=4时,是删除的候选点,考察对角线上的点,满足条件时,即可删除。
4.一种基于FPGA的印刷电路板图像骨架化的系统,包括光学取像、成像装置和图像数据分析处理系统,其特征在于:图像数据分析处理系统包括一个含有可配置逻辑块、存储器、数字时钟管理模块、接口模块和互联布线的现场可编程门阵列采集卡,其中,存储器中存有查找表;可配置逻辑块包括顺次连接的:图象数据二值化模块、比较器模块、计算器模块和特征处理器模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008103001335A CN101221135B (zh) | 2008-01-17 | 2008-01-17 | 基于fpga的印刷电路板图像骨架化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008103001335A CN101221135B (zh) | 2008-01-17 | 2008-01-17 | 基于fpga的印刷电路板图像骨架化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101221135A true CN101221135A (zh) | 2008-07-16 |
CN101221135B CN101221135B (zh) | 2011-05-11 |
Family
ID=39631106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008103001335A Expired - Fee Related CN101221135B (zh) | 2008-01-17 | 2008-01-17 | 基于fpga的印刷电路板图像骨架化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101221135B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102901735A (zh) * | 2012-08-29 | 2013-01-30 | 上海美迪索科电子科技有限公司 | 利用计算机对工件缺损、裂变、变形进行自动检测的系统 |
CN103049753A (zh) * | 2012-06-04 | 2013-04-17 | 深圳市强华科技发展有限公司 | 基于骨架提取和距离变换来检测印刷电路板缺陷的方法 |
CN104422832A (zh) * | 2013-08-28 | 2015-03-18 | 深圳麦逊电子有限公司 | 一种pcb板的网络分析方法 |
CN104820979A (zh) * | 2015-03-20 | 2015-08-05 | 深圳市纳研科技有限公司 | 一种用于产品缺陷检测以及质量控制的图像减薄和特征分类方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133572B2 (en) * | 2002-10-02 | 2006-11-07 | Siemens Corporate Research, Inc. | Fast two dimensional object localization based on oriented edges |
CN100375124C (zh) * | 2003-12-17 | 2008-03-12 | 中国科学院自动化研究所 | 一种骨架化物体重建方法 |
-
2008
- 2008-01-17 CN CN2008103001335A patent/CN101221135B/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049753A (zh) * | 2012-06-04 | 2013-04-17 | 深圳市强华科技发展有限公司 | 基于骨架提取和距离变换来检测印刷电路板缺陷的方法 |
CN103049753B (zh) * | 2012-06-04 | 2016-01-20 | 深圳市强华科技发展有限公司 | 基于骨架提取和距离变换来检测印刷电路板缺陷的方法 |
CN102901735A (zh) * | 2012-08-29 | 2013-01-30 | 上海美迪索科电子科技有限公司 | 利用计算机对工件缺损、裂变、变形进行自动检测的系统 |
CN102901735B (zh) * | 2012-08-29 | 2015-02-25 | 上海美迪索科电子科技有限公司 | 利用计算机对工件缺损、裂变、变形进行自动检测的系统 |
CN104422832A (zh) * | 2013-08-28 | 2015-03-18 | 深圳麦逊电子有限公司 | 一种pcb板的网络分析方法 |
CN104422832B (zh) * | 2013-08-28 | 2017-04-19 | 深圳麦逊电子有限公司 | 一种pcb板的网络分析方法 |
CN104820979A (zh) * | 2015-03-20 | 2015-08-05 | 深圳市纳研科技有限公司 | 一种用于产品缺陷检测以及质量控制的图像减薄和特征分类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101221135B (zh) | 2011-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Huyan et al. | Detection of sealed and unsealed cracks with complex backgrounds using deep convolutional neural network | |
Ding et al. | TDD‐net: a tiny defect detection network for printed circuit boards | |
TWI557650B (zh) | 用於識別材料中之缺陷之系統及方法 | |
CN110502985B (zh) | 表格识别方法、装置及表格识别设备 | |
CN105160654A (zh) | 基于特征点提取的毛巾标签缺陷检测方法 | |
CN105092598A (zh) | 一种基于连通域的大幅面pcb板缺陷快速识别方法及系统 | |
CN101216522A (zh) | 基于fpga的印刷电路板快速抽取图像特征值检测方法 | |
CN101221135B (zh) | 基于fpga的印刷电路板图像骨架化方法 | |
CN101216438B (zh) | 基于fpga的印刷电路板大缺陷图像检测方法及系统 | |
CN106650647A (zh) | 基于传统算法和深度学习算法级联的车辆检测方法及系统 | |
CN116168351B (zh) | 电力设备巡检方法及装置 | |
JP6128617B2 (ja) | 画像認識装置およびプログラム | |
Nosrat et al. | Hardware description of multidirectional fast sobel edge detection processor by VHDL for implementing on FPGA | |
US7922087B2 (en) | Image processing apparatus, image processing method, and computer program stored in storage medium | |
Kowalczyk et al. | Real-time FPGA implementation of parallel connected component labelling for a 4K video stream | |
Caliskan et al. | Design and realization of an automatic optical inspection system for PCB solder joints | |
CN106169431A (zh) | 基于gpu的掩膜版和晶圆缺陷检测方法 | |
Zhang et al. | An automatic defect detection method for TO56 semiconductor laser using deep convolutional neural network | |
CN105139400A (zh) | 基于图像处理的工件缺陷定位系统 | |
Pohl et al. | An efficient FPGA-based hardware framework for natural feature extraction and related computer vision tasks | |
CN116402771A (zh) | 缺陷检测方法、装置和模型训练方法、装置 | |
CN107767372B (zh) | 一种分层并行计算的芯片管脚在线视觉检测系统及其方法 | |
CN116128823A (zh) | Ic载板的金点检测方法、装置和电子设备 | |
US11748865B2 (en) | Hierarchical image decomposition for defect detection | |
CN105092591A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110511 Termination date: 20140117 |