Sub-pixel Level Image Edge Detection Algorithm Based on Cubic B-spline Wavelet Transform and Franklin Moment
-
摘要: 为了满足精密测量和红外与可见光图像配准对图像边缘定位的高精确度和高抗噪性的要求,提出一种基于三次B样条小波变换和Franklin矩结合的亚像素级图像边缘检测算法。首先,利用三次B样条小波窗函数对图像边缘多层分解,根据小波模极大值原理对各层检测得到初始边缘信息,随后将其边缘点与多尺度范围下3×3邻域内的点进行比较,将模值和幅角相近的点保留,建立新的边缘图像。然后,建立亚像素边缘模型,根据Franklin矩旋转不变性原理,分析图像边缘旋转至一定角度之后各级Franklin矩之间的关系,得到计算亚像素边缘点的模板关键参数,将模板在小波变换得到的新边缘图像上移动并与其覆盖下的子图进行卷积运算,进而得到图像的亚像素级边缘点。实验结果表明,并与当下表现较优的3种算法进行对比,本文提出的基于三次B样条小波变换和Franklin矩结合的算法精确度更高且抗噪性更强,能够更好地满足对于红外与可见光图像配准稳定可靠及高精度测量的要求。Abstract: To meet the requirements of high accuracy and strong anti-noise performance of image edge positioning for infrared and visible image registration and precision measurement, a sub-pixel image edge detection algorithm based on the cubic B-spline wavelet transform and Franklin moment is proposed. First, the image edge was decomposed using a cubic B-spline wavelet window function. Under the premise of setting the threshold, according to the principle of wavelet modulus maxima, the initial edge information is detected for each layer, and then the edge points are compared with the points in the 3 × 3 neighborhood in the multi-scale range. Points with similar moduli and amplitudes were reserved to establish a new edge image. Subsequently, a subpixel edge model is established. According to the principle of Franklin moment rotation invariance, the relationship between Franklin moments at all levels after the image edge is rotated to a certain angle is analyzed and the key parameters of the template for calculating the sub-pixel edge points are obtained. The template is moved on the new edge image obtained by wavelet transform and convoluted with the sub-image covered by it, and then the sub-image of the image is obtained from the edge points of the prime level. The experimental results show that, compared with the three algorithms with the current best performance, the algorithm based on the combination of the cubic B-spline wavelet transform and Franklin moments proposed in this paper has higher accuracy and stronger noise resistance. It can better meet the requirements for stable, reliable, and high-precision measurements of infrared and visible image registration.
-
Keywords:
- edge detection /
- cubic B-spline wavelet /
- Franklin moment /
- sub-pixel /
- image registration
-
0. 引言
太阳光中包含各种波段的光,但是地球大气层中的臭氧层会对220~280 nm波段的紫外光进行吸收,因此该波段的光很难到达地球表面,该波段又被称为“日盲”紫外波段[1]。我们通过220~280 nm紫外光的日盲特性对处于该波段的目标物进行检测成像,能够有效地排除掉阳光对其造成的影响。而高压输电线路由于其自身的故障会在大气中产生电晕,电晕放电会放射出波段为220~280 nm的紫外光[2-6]。传统的电晕探测技术有红外热探测和超声波探测,日盲紫外电晕探测相比于这两种技术有极大的改进:和红外技术相比,在早期就能检测到高压输电线上的电晕放电现象,并且不受周边环境干扰;和超声波技术相比,能够探测的距离长,并且能够检测出电晕放电产生的位置。如今,国内的紫外检测技术飞速发展,以国产碲铯阴极紫外像增强器为核心的紫外成像仪能够对电力设备故障进行实时的检测[7-9]。
1. 光子计数原理
在日盲紫外电晕成像探测过程中,一般是根据显示器上所显示的日盲紫外图像来主观判断电晕放电的程度,这样会带来很大的误差,所以需要通过具体的算法对日盲紫外电晕放电进行量化分析。考虑到日盲紫外电晕信号十分微弱,达到了单光子水平,普通的量化分析方法不能满足要求,因此需要设计合理的光子计数算法来对日盲紫外信号进行量化分析。
图 1是单光子探测的原理图。首先,光信号通过光学镜头进行光学聚焦;然后,前端光电探测器将光信号转化成电信号;其次,将电信号输入至信号处理模块进行处理;最后,后端读出电路模块将处理之后的信号进行输出。其中,因为日盲紫外信号十分微弱,传统的固体探测器件难以达到要求,因此一般会采用真空器件对信号进行光电转换和电子倍增。与此同时,当需要对目标信号强弱进行分析并对其进行成像时,采用像增强器作为光电转换和成像器件[10]。
当日盲紫外光子信号低于3×10-15 W/cm2时,光电转换器就会产生离散脉冲信号,合适的CMOS传感器就能探测到光子信号,所以能够统计日盲紫外信号光子的数量来实现对目标源信号的定量化分析。光子的能量公式为:
$$ E = h\frac{c}{\lambda } $$ (1) 式中:h为普朗克常数;c为真空中的光速;λ为光的波长。其中日盲紫外波段为200~280 nm[3],通过计算得出一个日盲紫外光子的能量为7.1×10-19~1×10-18 J。
日盲紫外光光功率P表示为:
$$ P=N×E $$ (2) 式中:N表示光子数;E表示单光子能量,所以单位时间内通过的光能量表示光流强度。
目标源信号的光功率可以通过统计一个截面上的光子数量来计算得到[4-7]。由于图像传感器靶面尺寸约为1.56 cm2,通过对单位时间内探测到的紫外图像上出现的光斑进行计数统计,就能计算得出一帧图像的光子数以及日盲紫外信号源的光功率。
2. 测试系统
本文所设计的日盲紫外成像系统原理框图如图 2所示,成像系统主要由紫外ICMOS模组、可见光探测器、ARM+FPGA嵌入式处理系统组成。其中,紫外ICMOS模组用来采集日盲紫外微弱信号,并经过模数转换将数字图像信号输入嵌入式平台中;可见光探测器采集可见光图像为日盲紫外信号提供位置信息;ARM+FPGA嵌入式处理系统通过采集紫外数字图像信息,完成图像处理和光子计数算法,并将处理后的图像输出显示。
图 3是所设计的日盲紫外成像系统整机实物图,尺寸(长×宽×高)为244 mm×135 mm×96 mm。其中1为相机窗口,2为LCD液晶屏,3为按键控制面板,4为电源充电口和TF卡槽,5为腕带。
3. 日盲紫外光子计数算法设计
3.1 传统光子计数算法分析
传统的光子计数算法通常为连通域标记光子计数算法,其算法主要思路为:假设单光子经过像增强器倍增以后,在荧光屏上所显示的每一个光斑都未重合。那么每一个光斑就对应了一个光电子,因此只需要对一帧图像中光斑出现的数量,就可以得出一帧图像中日盲紫外光子数。在连通域标记算法中,对经过图像预处理后的紫外图像进行二值化处理,得到一幅二值化图像。每个由灰度255组成的连通域表示为一个光子事件,图 4为连通域标记算法的示意图。
然后,对所采集到的一帧紫外图像进行连通域算法仿真分析,图 5为所采集到的日盲紫外图像和二值化后的图像。
通过对图进行连通域标记光子计数算法仿真,可以得出共有12个光子。通过分析二值化后的图像可知,连通域标记算法将光斑较大和较小的区域都默认为一个光子事件进行统计,这样显然影响了光子计数的准确度,因此需要对此光子计数算法进行改进。
3.2 基于时间相关的光子计数算法设计
弥散圆斑算法是一种从三维空间上统计光子数的方法,由于所设计的高帧频算法,可以使得光斑的变化在时间域上被捕获,因此本文在此基础上添加了时间因素,弥补光斑出现时间的随机性,找出四维空间中的最大点,约束条件如式(3):
$$ \left\{ \begin{gathered} {f_x}'(x,y,z) \leqslant 0 \hfill \\ {f_y}'(x,y,z) \leqslant 0 \hfill \\ {f_t}'(x,y,z) \leqslant 0 \hfill \\ \end{gathered} \right. $$ (3) 由于加入了时间的约束,所以只有找出一段时间内几帧图像同一位置光斑的极大值点才能准确计算光子数。本文采用的CMOS传感器图像输出频率为3 ms每帧,而荧光屏的余晖时间为6 ms,即光斑在荧光屏上的起伏时间为6 ms,因此我们通过连续采样得到3帧图像就能得到光斑的变化范围,如图 6所示,其中a、b、c表示图像中光斑的灰度值。
如图 6所示,中间一帧图像中b灰度值最大,可以将b记作一个光子数,因此只要中间帧图像中光斑的灰度值大于前后帧图像光斑的灰度值,就能将其记为一个光子数。
这样就能统计出一帧图像的光子数[10]:
$$ n = \sum\limits_{k = 1}^f {\sum\limits_{i = 1}^m {\sum\limits_{j = 1}^n {Y(i,j,k)} } } $$ (4) 式中:f为日盲紫外成像探测器的帧频;k为第k帧图像;(i, j)为二维空间坐标;Y(i, j, k)为四维空间中的极大值点。由于日盲紫外成像探测器能达到300帧/s的帧频,两帧之间的变化时间较小,因此Y(i, j, k)又能满足:
$$ B(i,j,k)≥B(i±i′,j±j′,k±k′) $$ (5) 式中:B(i, j, k)为第k帧(i, j)点的灰度值。由上式可见,极大值点Y(i, j, k)的约束条件为:B(i, j)在i′×j′矩阵像素中具有最大的灰度值,且在前后k′帧的同一位置的灰度值也是最大的。根据日盲紫外成像探测器的输出帧频,这里k′=1,同时i′×j′矩阵可设定为3×3矩阵或5×5矩阵。
4. 实验流程与不确定性度分析
4.1 光子计数算法的仿真实验分析
首先,本文用日盲紫外成像探测器采集图像,然后运用Matlab软件分别对两种算法进行仿真,比较仿真结果来判断时间相关的光子计数算法能否提高计数精度。
首先选用260 nm波段的紫外光源,然后日盲紫外成像探测器的增益电压调节为2.5 V,调节紫外光源光功率密度,从3×10-19 W/cm2每次往上增加一个数量级,采集3组不同光强的实验图像,每组实验记录3幅图像,如图 7所示。
运用MATLAB软件对采集的图像仿真,得出的光子数如表 1所示。表 1中的两种算法为连通域计数算法和基于时间相关算法。
表 1 两种算法光子计数统计表Table 1. Photon counting statistic table of two algorithmConnected domain labeling algorithm Dispersion circular algorithm Group 1 7 6 Group 2 78 78 Group 3 88 291 结果显示,当信号源很弱时,光子就会分散分布,因此两种算法的计数结果比较相近。在增强紫外光源的光功率后,光斑会重叠,并且连通域标记光子计数算法得出的光子数量没有太大变化,而本文所设计的算法随着信号的增强,计数值不断增加,由此可知,弥散圆斑算法相对于连通域计数算法更加精确,可对日盲紫外单光子进行准确统计。
4.2 基于日盲紫外成像系统的光子计数算法实验及分析
通过对两种算法的仿真分析可知,本文所设计的光子计数算法更具准确性,但由于所设计成像系统的资源和速度限制,我们将日盲紫外图像的14 bit数据压缩成8 bit数据进行处理,因此会使得计数精度上有所偏差,所以通过对紫外光源的实验来验证硬件实现的效果。
实验采用氘灯作为日盲紫外目标源进行光子计数实验测试,紫外ICMOS模组的增益电压保持不变,进行了如下3组实验:
第一组,关闭日盲紫外信号源,实验结果如图 8所示。
通过采集3帧图像,所计算的光子数一直为0,说明所设计的成像系统暗计数良好。
第二组,打开氘灯光源,并调节光源强度到最弱,采集到的图像如图 9所示。
第三组,输出光源光功率密度加到1×10-18 W/cm2,采集到的图像如图 10所示。
然后,我们利用Matlab对每组连续的3帧图像进行所设计的光子计数算法仿真,仿真结果与FPGA计算的结果如表 2所示。
表 2 四组光子计数实验结果Table 2. Results of four groups of photon counting experimentsGroup1 Group 2 Group 3 FPGA output result 0 24 141 Matlab simulation result 0 23 149 通过表 2可知,硬件实验的光子计数算法与仿真结果相近,证明了所设计的基于时间域的弥散圆斑光子计数算法在成像系统中可以硬件实现,并且效果良好。
5. 结论
日盲紫外电晕探测是近年来一种新型的电晕探测方式,但是紫外图像单靠人眼无法精确地判断电晕信号的强弱,因此本文研究了日盲紫外光子计数算法,通过对连通域标记算法和弥散圆斑算法进行分析提出了基于时间相关算法,然后使用Matlab对两种算法进行了实验仿真,结果显示基于时间相关算法对光子计数更加准确,最后,通过实验验证所设计的算法可以在成像系统中的FPGA硬件平台上实现,并且实现的效果良好,能够用于紫外成像仪中对信号进行量化分析。
-
表 1 Franklin径向多项式Rnm
Table 1 Franklin radial polynomials Rnm
m/n 0 1 2 3 4 0 1 Non-existent 2r2−1 Non-existent 6r4−6r2+1 1 Non-existent r Non-existent 3r3−2r Non-existent 表 2 Franklin矩的复数域多项式Vnm
Table 2 Complex domain polynomial of Franklin moment Vnm
n/m 0 1 0 1 Non-existent 1 Non-existent x+yi 2 2x2+2y2−1 Non-existent 3 Non-existent (3x3+3xy2−2x)+(3y3+3x2y−2y)i 4 6x4+6y4+12x2y2−6x2−6y2+1 不存在 表 3 检测的亚像素坐标
Table 3 The detected sub-pixel coordinates
Coordinate of actual pixel Coordinate of our algorithm Error (64, 114) (64.09, 114.07) (0.09, 0.07) (64, 14) (64.10, 14.11) (0.10, 0.11) (114, 64) (114.09, 63.92) (0.09, 0.08) (14, 64) (14.11, 64.07) (0.11, 0.07) (103.37, 94.24) (103.4676, 94.3183) (0.0976, 0.0783) (103.37, 33.76) (103.5185, 33.9097) (0.1485, 0.1497) (24.63, 94.24) (24.7282, 94.3364) (0.0982, 0.0964) (24.63, 33.76) (24.7442, 33.8883) (0.1142, 0.1283) (92.63, 104.52) (92.7297, 104.6079) (0.0997, 0.0879) (92.63, 23.48) (92.7538, 23.6226) (0.1238, 0.1426) 表 4 四种算法运行时间
Table 4 The running time of four algorithm
Algorithm Zernike moment Franklin moment Roberts operator+Zernike moment Ours Running time/s 0.3853 0.314 2 0.8256 0.3313 表 5 四种算法峰值信噪比
Table 5 PSNR for four algorithms
Algorithm Zernike moment Franklin moment Roberts operator+Zernike moment Ours PSNR 31.8625 40.5871 36.6297 46.782 -
[1] 金光远. 图像测量技术与系统[D]. 长春: 吉林大学, 2008. JIN G Y. The Design and Realization for the Measuring System Based on Image Processing[D]. Changchun: Jilin University, 2008.
[2] 戴宪策, 刘昌锦. 快速亚像素图像配准算法研究[J]. 红外技术, 2015, 37(7): 579-581. http://hwjs.nvir.cn/article/id/0034469b-9aca-4927-8c01-0790b9e344c4 DAI Xiance, LIU Changjin. Research on fast sub-pixel image registration algorithm[J]. Infrared Technology, 2015, 37(7): 579-581. http://hwjs.nvir.cn/article/id/0034469b-9aca-4927-8c01-0790b9e344c4
[3] Ghosal S, Mehrotra R. Orthogonal moment operators for subpixel edge detection[J]. Pattern Recognition, 1993, 26(2): 295-306. DOI: 10.1016/0031-3203(93)90038-X
[4] 李金泉, 王建伟, 陈善本, 等. 一种改进的Zernike正交矩亚像素边缘检测算法[J]. 光学技术, 2003, 29(4): 500-503. DOI: 10.3321/j.issn:1002-1582.2003.04.036 LI J Q, WANG J W, CHEN SH B, et al. An improved Zernike orthogonal moment sub-pixel edge detection algorithm[J]. Optical Technology, 2003, 29(4): 500-503. DOI: 10.3321/j.issn:1002-1582.2003.04.036
[5] 高世一, 赵明扬, 张雷, 等. 基于Zernike正交矩的图像亚像素边缘检测算法改进[J]. 自动化学报, 2008, 34(9) : 1163-1168. https://www.cnki.com.cn/Article/CJFDTOTAL-MOTO200809019.htm GAO S Y, ZHAO M Y, ZHANG L, et al. Improvement of image sub-pixel edge detection algorithm based on Zernike orthogonal moments[J]. Journal of Automation, 2008, 34(9): 1163-1168. https://www.cnki.com.cn/Article/CJFDTOTAL-MOTO200809019.htm
[6] 吴一全, 龙云淋, 周杨. 基于Arimoto熵和Zernike矩的刀具图像亚像素边缘检测[J]. 华南理工大学学报: 自然科学版, 2017, 45(12): 50-56. DOI: 10.3969/j.issn.1000-565X.2017.12.008 WU Y Q, LONG Y L, ZHOU Y. Sub-pixel edge detection of tool image based on Arimoto entropy and Zernike moment[J]. Journal of South China University of Technology: Natural Science Edition, 2017, 45(12): 50-56. DOI: 10.3969/j.issn.1000-565X.2017.12.008
[7] 魏本征, 赵志敏, 华晋. 基于改进形态学梯度和Zernike矩的亚像素边缘检测算法[J]. 仪器仪表学报, 2010, 31(4): 838-844. https://www.cnki.com.cn/Article/CJFDTOTAL-YQXB201004020.htm WEI B Z, ZHAO Z M, HUA J. Sub-pixel edge detection algorithm based on improved morphological gradient and Zernike moment[J]. Chinese Journal of Scientific Instrument, 2010, 31(4): 838-844. https://www.cnki.com.cn/Article/CJFDTOTAL-YQXB201004020.htm
[8] 吴一全, 邹宇, 刘忠林. 基于Franklin矩的亚像素级图像边缘检测算法[J]. 仪器仪表学报, 2019, 29(5): 221-229. https://www.cnki.com.cn/Article/CJFDTOTAL-YQXB201905026.htm WU Y Q, ZOU Y, LIU Z l. Sub-pixel image edge detection algorithm based on Franklin moment[J]. Chinese Journal of Scientific Instrument, 2019, 29(5): 221-229. https://www.cnki.com.cn/Article/CJFDTOTAL-YQXB201905026.htm
[9] 杨小娜, 黄欢, 徐晓煜, 等. 基于小波模极大值多尺度的图像边缘提取[J]. 贵州大学学报: 自然版, 2013, 30(1): 91-93. DOI: 10.3969/j.issn.1000-5269.2013.01.020 YANG X N, HUANG H, XU X Y, et al. Multi scale image edge extraction based on wavelet modulus maxima[J]. Journal of Guizhou University: Natrual Edition, 2013, 30(1): 91-93. DOI: 10.3969/j.issn.1000-5269.2013.01.020
[10] Franklin P. A set of continuous orthogonal functions[J]. Mathematische Annalen, 1928, 100(1): 522-529. DOI: 10.1007/BF01448860
[11] DA F, ZHANG H. Sub-pixel edge detection based on an improved moment[J]. Image & Vision Computing, 2010, 28(12): 1645-1658. https://www.sciencedirect.com/science/article/pii/S0262885610000788
[12] 朱文斌, 雷秉山, 雷志勇. 基于小波变换的红外探测系统信号去噪[J]. 红外技术, 2018, 40(11): 1047-1051. http://hwjs.nvir.cn/article/id/59ccddf6-ee9a-43da-983b-35ee872dd707 ZHU W B, LEI B S, LEI ZY. Signal denoising of infrared detection system based on wavelet transform[J]. Infrared Technology, 2018, 40(11): 1047-1051. http://hwjs.nvir.cn/article/id/59ccddf6-ee9a-43da-983b-35ee872dd707
[13] 刘小豫, 韩丽娜, 赵蔷. 基于B样条小波的图像边缘检测算法[J]. 电子设计工程, 2013, 21(14): 178-180. DOI: 10.3969/j.issn.1674-6236.2013.14.055 LIU X Y, HAN L, ZHAO Q. Image edge detection algorithm based on B -spline wavelet[J]. Electronic Design Engineering, 2013, 21(14): 178-180. DOI: 10.3969/j.issn.1674-6236.2013.14.055
-
期刊类型引用(1)
1. 杨晓超,郝慧良. 矿用电缆放电监测系统研究设计. 中国煤炭. 2024(S1): 406-410 . 百度学术
其他类型引用(1)