灰色图像格式的边缘检测及其FPGA实现外文翻译资料

 2022-08-09 10:08

英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料


灰色图像格式的边缘检测及其FPGA实现

摘要:

本文的目的是分析FPGA中用于图像格式实现的方法。所有的摄像机在FPGA应用给出了原始的RGB输出视频格式,一些摄像机也提供了YUV,YCbCr,RGB565/555或压缩的JPEG格式。如果FPGA电路的可配置逻辑块(CLB)数量有限,JPEG格式似乎是一个好的解决方法,对于如何增大处理图像的大小。另一方面,使用有损压缩的图像或多或少会影响图像处理的整体结果。本文的第一个目标是证明有损图像压缩是否会影响边缘检测的质量。本文给出的结果表示,图像有损压缩会使边缘检测的效率下降6%。许多研究者提出了FPGA实现的一些边缘检测方法。通常他们的第一步RGB到灰度转换,因为他们对灰度图像使用边缘检测方法。本文的第二个目标是证明如果使用YUV,YCbCr或Raw RGB,可以提高FPGA实现的性能相机输出格式代替了RGB格式。

1.简介

边缘检测是数字领域中图像处理最常用的方法之一。目标定位是:1车牌;2指纹识别;3火灾报警;4SAR图像处理;5高亮的边缘可以帮助医生识别结肠镜检查中的息肉。在过去的40年李,有几百个数字图像边缘检测的方法被提出。更具他们所依据的原则,发表的边缘检测器可以分为若干组。清单所有相关的边缘检测类型都超出了本文的范围。但是,应该提到最著名的算法-梯度运算符,如Prewitt和Sobel或Canny,肯是日常实践中最常用的。形态学算子和基于小波变换的检测器也得到了较好的结果。新的趋势下,最近几年几种新的方法被提出来了,包括模糊逻辑,字典学习和分数阶导数。每一个新的方法在多幅图像上进行了测试。有时研究人员使用JPEG格式的图像来测试他们提出的算法。但是有损图像压缩会影响边缘检测的效率。本文的第一个目标是证明图像有损压缩是否会影响边缘检测的质量。要测试大量的边缘检测器是不可能的。所以只能得到结果提出了四种基于梯度算子的方法。

关于FPGA实现图像边缘检测的文章很多,而关于FPGA实现颜色边缘检测的文章有一篇。颜色边缘检测十分罕见,因为它的计算要求是灰度图像的三倍,而且在90%的情况下,灰度值和彩色图像边缘基本相同,很明显,没用必要对彩色图像进行处理,除了某些特殊情况。一些文章的作者使用彩色相机,他们的FPGA实现包括转换到灰度图像。Sagar等人使用带有模拟摄像机的数字解码器TVP5146。一些作者使用了来自non的灰度图像指定的源程序,有一些使用了来自Matlab的灰度图像,还有一些作者只是用灰度图像模拟了他们的FPGA实现。作者似乎没有特别注意相机,市场上有几个FPGA的摄像头,知道摄像头的特点对于使用者来说非常有用,这样他们就可以提出更有效的实施方案。特别是摄像头输出图像格式可以改善FPGA实现边缘检测算法。

论文的其他部分如下。第二部分简要描述了JPEG图像压缩。对常用边缘检测方法的描述在第三部分。用不同的质量因子值创建图像的实验在第四部分,对真实图像的测试在第五部分。第六部分综述了13种FPGA用相机,并对其结构进行了描述。第七部分中对摄像机输出数据格式进行了分析,以说明哪些格式适合FPGA实现的边缘检测方法。结论在第八部分。

2.JEPG图像压缩

分析有损压缩对边缘检测系统效率的影响,最好是了解使用JPEG压缩的算法。整个过程由四步组成。首先,原始图像被分成大小不一的方块8像素。然后,对每一块进行二维离散余弦变换,得到1个直流系数和63个交流系数。第三步是量子化,每个系数除以一个相应的常数,结果四舍五入得到一个整数。用于量子化的常数由基矩阵定义,根据质量因素值变化。有些频率分量经过量子化后变为0。压缩的最后一步是无损熵编码。很明显,图像质量压缩比由使用的量化矩阵确定。解码后的JPEG图像与原始图像不同,存在一些可见的伪影和失真。解码图像与原始图像不同,会影响边缘检测的性能。

3.常用的边缘检测方法

要测量大量的边缘检测方法是不实际的,因此我们决定测试其中的四种。三种最常用的检测方法是Prewitt,Sobel和Canny。选择这三个检测方法的优势是,它们通常是通过Matlab实现的功能既由用户决定,也由研究人员决定。他们用旧的算法提出了边缘检测方法。第四种是基于分数阶导数的边缘检测方法,我们选择它是因为它的新颖性。这种检测方法的作者声明,它比旧的梯度边缘检测方法更好。Prewitt,Sobel和分数阶导数是基于卷积核:

Prewitt:

Sobel:

分数阶导数:

对于图像可以计算出边缘强度

图1创建的测试图像

Quality

Figure of merit(fom)

Prewitt

Sobel

Canny

Fract

Uncomp.

0.9993

0.9998

0.9925

0.9465

100

0.9999

0.9998

0.9907

0.9465

90

0.9998

0.9998

0.9908

0.9414

80

0.9998

0.9998

0.9903

0.9329

70

0.9999

0.9998

0.8936

0.9307

60

0.9998

0.9998

0.7637

0.9095

表格1创建的图像的FoM计算

这里x和y方向上的梯度估计是通过上述卷积掩模计算得到的。该操作的结果是边缘强度图像(灰度)。从边缘强度图像中获取边缘图像(二值化)需要两个过程:阈值化和细化。在本文的实验中,我们使用Matlab函数边缘(默认设置)来计算Prewitt,Sobel和Canny的边缘检测。

对于基于分数阶导数的边缘检测,根据公式在Matlab中计算边缘强度图像,然后分别得到Matlab函数im2bw和bwmorph用于阈值化和细化。阈值水平由Matlab函数graythresh计算。

4.创建图像的实验

选取4个边缘检测方法分别对生成的图像和2张真实图像进行检测。图1中创建的是8位灰度测试图像。背景层是40,前景层是220。使用Matlab函数imwrite创建5幅质量从100到60的JPEG图像。可以获得完全相同的图像,同样用程序irfanView也进行上述步骤。然后根据原始图像和五幅JPEG图像计算边缘图。为了评估边缘检测性能,我们使用了一个优点图。品质因数(FoM)由Pratt引入,它平衡了边缘检测过程中三种类型的错误:缺失边缘点,假边缘点,检测到的边缘点相对于原始边缘的偏移的位置。品质因数(FoM)定义如下:

delta;是比例常数(通常是1/9),e(k)是第k个边缘点的距离,Id为检测到的边缘点个数,Ii为一些实际的边缘点。显然0le;FoMle;1.如果两个比较的边缘点是相同的,那么FoM=1。FoM值越低,说明比较的边缘图像差异越大。表1总结了用不同的质量计算的五幅JPEG图像的FoM值。

用有噪声的图像重复上述实验。如果高斯噪声标准差sigma;n是添加到无噪声图像Iu(c,r),信噪比SNR可以由公式计算

式中Pu为原值的幂次均值的平方根,图像Iu(c,r)大小为N*M像素

FPGA实现中使用的摄像头的信噪比为36db到42db。这些值是在良好的光照条件中定义的。在我们的实验中,我们决定使用信噪比为30db的噪声图像。由于测试图像的Pu为124.79,高斯噪声的标准差应该为3.95,这个值四舍五入为4。从原始图像中提取未压缩的噪声图像图像Iu(c,r)采用以下公式

其中,randn是Matlab函数,它产生一个伪随机数,其正态分布的均值为0,标准差为1.获得的图像被用来创建5个质量从100到60的噪声JPEG图像。然后根据这五幅有噪声的JPEG图像计算出边缘图,并根据无噪声的原始边缘图计算出相应的FoM值。结果如表2所示。

Quality

Figure of merit(fom)

Prewitt

Sobel

Canny

Fract

Uncomp.

0.9997

0.9998

0.5902

0.9446

100

0.9997

0.9998

0.5851

0.9446

90

0.9998

0.9998

0.4798

0.9414

80

0.9998

0.9998

0.3745

0.9307

70

0.9998

0.9998

0.1756

0.9167

60

0.9984

0.9965

0.1640

0.9027

表2创建的噪声图像的FoM值

结果表示,对于Prewitt和Sobel边缘检测方法,图像压缩对于边缘检测性能没有实际影响。使用无噪声或是有噪声的图像并不重要。基于分数阶导数的边缘检测对噪声步敏感,但对图像压缩敏感。令人惊讶的是Canny边缘检测方法对噪声和压缩的灵敏度。如前所述,边缘映射是使用Matlab函数边缘在默认设置下计算的。这意味着Canny检测器的参数是自动设置的。从现有的资料中去确认Matlab是如何确定更低和滞后阈值的上阈值是不太可能的。所创建的图像的直方图与真实图像的直方图有很大的区别,如果在Matlab中从图像直方图中计算出阈值,阈值可能太低,会导致不好的结果。

对生成的图像进行边缘检测得到的结果可能很有趣,但它们不能反映边缘检测在真实的图像上。

5.实像实验

在本章中,将介绍在两个不同的图像Castle.png和Capsicum.png上的实验。 原始图片Castle.png其三个边缘图在图2中。图2a是利希滕斯坦城堡(Schloss Lichtenstein)的灰度图片。选择该图片是因为它包含许多小细节。 由未压缩图片Castle.png计算得出的边缘贴图。边缘图是根据Sobel,Canny和Unbel的未压缩图片Castle.png计算得出的分数导数边缘检测器在图2b–图2d。 由Prewitt边缘检测器计算出的边缘图非常接近So bel检测器的乘积,因此在图2中未给出。

从图2b,图2c和图2d中获得的边缘图可以很明显得出,Sobel(Prewitt),Canny和分数导数边缘检测器产生或多或少的不同边缘图。 在表1和表2中的数据确认相同的结论。

图2原始图片Castle.png(a)和Sobel(b),Canny(c)和分数导数(d)边缘检测器

Matlab函数的imwrite应用于Castle.png以获得质量为100至60的9张JPEG图像。对于每个JPEG图像,计算了四个边缘图,并计算了相应的FoM值。将原始图像Cas tle.png(图3a)的缩放部分与压缩版本(图3b)进行比较,可以看到在压缩版本的对象边缘出现了伪影。乍一看,利用Sobel边缘检测器从原始图像计算出的边缘图(图3c)似乎与从JPEG版本获得的图(图3d)相同。 但是缩放边缘贴图揭示了它们之间的一些差异(图3e和图3f)。这些差异对于正常使用而言并不重要,但可能会影响一些边缘检测方法的比较

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[239656],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。