发明内容
本发明的目的在于至少解决上述问题,并至少提供下述优点。本发明的一方面在于提供一种提高图像质量的方法和设备,所述方法和设备通过将图像数据从时域变换到频域,并去除部分高频信息来降低图像的高频信息中的噪声。
本发明的另一方面在于提供一种提高图像质量的方法和设备,所述方法和设备可在频域中拉伸图像的变换系数来增强图像的对比度。
本发明的一方面在于提供一种提高图像质量的方法和设备,所述方法和设备可采用FPGA实现对多个像素块的并行处理。
根据本发明的一方面,提供了一种提高图像质量的设备,所述设备包括:输入模块,输入图像数据;变换模块,以N×N的像素块为单位将图像数据从时域变换到频域,得到多个N×N的第一变换系数矩阵,其中,N为等于或大于1的整数;运算模块,将所述多个N×N的第一变换系数矩阵分别与N×N的第一去噪矩阵相乘,得到多个N×N的第二变换系数矩阵;反变换模块,将所述多个N×N的第二变换系数矩阵从频域反变换到时域,其中,所述N×N的第一去噪矩阵是左上角区域系数为1,其余区域系数为0的矩阵,其中,左上角区域包括的系数1的数量和分布是预定的或由用户根据期望的图像质量而设置的。
所述设备还可包括:FPGA模块,使变换模块、运算模块和反变换模块对多个N×N的像素块进行并行处理。
并行处理的N×N的像素块的数量可根据算法速度要求、输出图像速率限制、FPGA资源限制中的至少一个而被选择。
N可以为8,并且变换模块进行的变换可以是DCT变换,反变换模块进行的变换可以是反DCT变换。
第一去噪矩阵可以为:
运算模块在将所述多个N×N的第一变换系数矩阵分别与N×N的第一去噪矩阵相乘时,可先将N×N的第一去噪矩阵与大于1的系数相乘,得到N×N的第二去噪矩阵,再将所述多个N×N的第一变换系数矩阵分别与所述N×N的第二去噪矩阵相乘,得到多个N×N的第二变换系数矩阵,其中,所述大于1的系数是预定的或由用户根据期望的图像质量而设置的。
所述大于1的系数可以为1.15。
根据本发明的另一方面,提供了一种提高图像质量的方法,所述方法包括:通过输入模块输入图像数据;通过变换模块以N×N的像素块为单位将图像数据从时域变换到频域,得到多个N×N的第一变换系数矩阵,其中,N为等于或大于1的整数;通过运算模块将所述多个N×N的第一变换系数矩阵分别与N×N的第一去噪矩阵相乘,得到多个N×N的第二变换系数矩阵;通过反变换模块将所述多个N×N的第二变换系数矩阵从频域反变换到时域,其中,所述N×N的第一去噪矩阵是左上角区域系数为1,其余区域系数为0的矩阵,其中,左上角区域包括的系数1的数量和分布是预定的或由用户根据期望的图像质量而设置的。
可通过FPGA模块使变换模块、运算模块和反变换模块对多个N×N的像素块进行并行处理。
并行处理的N×N的像素块的数量可根据算法速度要求、输出图像速率限制、FPGA资源限制中的至少一个而被选择。
N可以为8,并且通过变换模块进行的变换可以是DCT变换,通过反变换模块进行的变换可以是反DCT变换。
第一去噪矩阵可以为:
通过运算模块将所述多个N×N的第一变换系数矩阵分别与N×N的第一去噪矩阵相乘,得到多个N×N的第二变换系数矩阵的步骤可包括:将N×N的第一去噪矩阵与大于1的系数相乘,得到N×N的第二去噪矩阵;将所述多个N×N的第一变换系数矩阵分别与所述N×N的第二去噪矩阵相乘,得到多个N×N的第二变换系数矩阵;其中,所述大于1的系数是预定的或由用户根据期望的图像质量而设置的。
所述大于1的系数可以为1.15。
所述提高图像质量的方法和设备可通过在频域中部分去除高频信息来去除图像的高频部分中包含的噪声,从而提高图像质量。所述提高图像质量的方法和设备还可通过在频域中拉伸图像的变换系数来增强对比度,从而进一步提高图像质量。所述提高图像质量的方法和设备还可采用FPGA实现对多个像素块的并行处理,从而可实现对图像的高速处理。
具体实施方式
提供参照附图的以下描述以帮助对由权利要求及其等同物限定的本发明的实施例的全面理解。包括各种特定细节以帮助理解,但这些细节仅被视为是示例性的。因此,本领域的普通技术人员将认识到在不脱离本发明的范围和精神的情况下,可对描述于此的实施例进行各种改变和修改。此外,为了清楚和简洁,省略对公知的功能和结构的描述。
图1是根据本发明的示例性实施例的用于提高图像质量的设备的框图。
参照图1,根据本发明的示例性实施例的用于提高图像质量的设备100包括输入模块101、变换模块102、运算模块103、反变换模块104。
输入模块101可接收输入的图像数据,并将图像数据输入到变换模块102。
变换模块102可以以N×N的像素块为单位,将输入的图像数据从时域变换到频域,得到多个N×N的第一变换系数矩阵。其中,N为等于或大于1的整数。这里,变换模块102可使用各种变换方法来将输入的图像数据从时域变换到频域,例如,离散余弦变换(DCT)、小波变换等。
根据本发明的示例性实施例,例如,变换模块102可以以8×8的像素块为单位,采用二维DCT变换来将8×8的像素块从时域变换到频域。
根据本发明的另一示例性实施例,由于二维DCT变换较复杂,变换模块102还可以将二维DCT变换转换为两次一维DCT变换。如图2所示,变换模块102可通过先对8×8的像素矩阵(201)进行一次一维DCT变换(202),将此次DCT变换后的矩阵转置(203),对转置后的矩阵再进行一次一维DCT变换(204),并将此次DCT变换后的矩阵转置(205),来得到对8×8的像素矩阵进行二维DCT变换后的变换系数矩阵(206)。
根据本发明的另一示例性实施例,变换模块102将二维DCT变换转换为两次一维DCT变换之后,还可以进一步简化一维DCT的运算。例如,如图3所示,变换模块102可将8×8的像素矩阵的奇数行和偶数行分离,将一个8×8的像素矩阵的乘法转换为两个4×4的像素矩阵的乘法,使得乘法运算次数减半,从而提高了计算效率,其中,X是8×8的像素矩阵,C是DCT变换矩阵,Y是变换后的DCT系数矩阵。
根据本发明的另一示例性实施例,变换模块102在进行4×4的像素矩阵的乘法运算时,还可采用分布式算法(即,将乘累加算法转换为加法和移位运算)来进行乘法运算,从而节省了乘法器资源,同时提高了计算效率。
返回参照图1,运算模块103可将所述多个N×N的第一变换系数矩阵分别与N×N的去噪矩阵相乘,得到多个N×N的第一变换系数矩阵。
具体地说,在变换模块102将图像数据从时域变换到频域,得到多个N×N的第一变换系数矩阵之后,图像的低频信息和高频信息被有效地分离。N×N的变换系数矩阵左上角区域代表图像的低频信息,右下角区域代表图像的高频信息。通常,大部分噪声包含在高频信息中,因此,如果将N×N的变换系数矩阵与一个能够去除部分高频信息而保留低频信息的去噪矩阵相乘,则可达到有效地去噪的效果。
因此,运算模块103可将所述多个N×N的第一变换系数矩阵分别与N×N的去噪矩阵相乘,得到多个N×N的第二变换系数矩阵。这里,所述N×N的去噪矩阵是左上角区域系数为1,其余区域系数为0的矩阵。其中,左上角区域包括的系数1的数量和分布不同,去噪的效果也不同。因此,所述N×N的去噪矩阵的左上角区域包括的系数1的数量和分布可根据期望达到的不同的去噪效果(即,不同的图像质量)而被不同地设置。
例如,左上角区域系数仅有一个1的8×8的去噪矩阵为
该去噪矩阵的去噪效果最强,但是去噪效果过强会导致图像细节信息的丢失,也会影响图像质量。
例如,系数全部为1的8×8的去噪矩阵为
该去噪矩阵没有去噪效果。
通常,运算模块103可设置一个预定的N×N的去噪矩阵,即,左上角区域系数包括预定数量以及预定分布的1。例如,运算模块103可设置去噪效果适中的一个8×8的去噪矩阵,作为预定的去噪矩阵,例如,
此外,用户可根据期望的图像质量来设置N×N的去噪矩阵的左上角区域包括的系数1的数量以及分布。
此外,运算模块103在将所述多个N×N的第一变换系数矩阵分别与N×N的去噪矩阵相乘时,可先将N×N的去噪矩阵与用于增强对比度的系数(大于1的系数)相乘,得到N×N的增强对比度的去噪矩阵,再将所述多个N×N的第一变换系数矩阵分别与所述N×N的增强对比度的去噪矩阵相乘,得到多个N×N的第二变换系数矩阵。这样得到的第二变换系数矩阵即达到了去噪的效果,又达到了增强对比度的效果。用于增强对比度的系数大小不同,对比度增强的效果也不同。根据本发明的示例性实施例,运算模块103可设置一个对比度增强适中的预定系数,例如,1.15。此外,用户可根据期望的图像质量来设置用于增强对比度的系数。
反变换模块104可将达到去噪效果或者达到去噪和增强对比度效果的多个N×N的第二变换系数矩阵从频域反变换到时域,从而可以得到质量提高的图像数据。此外,可通过输出模块(未示出)来输出质量提高的图像数据。这里,反变换模块104采用与变换模块102的变换方法对应的反变换方法。根据本发明的示例性实施例,当变换模块102的变换方法是DCT变换时,反变换模块104采用反DCT(IDCT)变换。
此外,根据本发明的示例性实施例,设备100还可包括FPGA(现场可编程门阵列)模块(未示出)。FPGA模块可使变换模块102、运算模块103和反变换模块104对多个N×N的像素块进行并行处理。如图4所示,FPGA模块实现M个N×N的像素块的并行处理。这里,并行处理的N×N的像素块的数量M可根据算法速度要求、输出图像速率限制、FPGA资源限制中的至少一个而被选择。使用FPGA模块对多个N×N的像素块进行并行处理可提高计算速度,从而实现对图像的高速处理。
图5是示出根据本发明的示例性实施例的提高图像质量的方法的流程图。
参照图5,在步骤501,输入模块101可接收输入的图像数据,并将图像数据输入到变换模块102。
在步骤502,变换模块102可以以N×N的像素块为单位,将输入的图像数据从时域变换到频域,得到多个N×N的第一变换系数矩阵。其中,N为等于或大于1的整数。这里,变换模块102可使用各种变换方法来将输入的图像数据从时域变换到频域,例如,离散余弦变换(DCT)、小波变换等。
在步骤503,运算模块103可将所述多个N×N的第一变换系数矩阵分别与N×N的去噪矩阵相乘,得到多个N×N的第一变换系数矩阵。这里,所述N×N的去噪矩阵是左上角区域系数为1,其余区域系数为0的矩阵。其中,左上角区域包括的系数1的数量和分布不同,去噪的效果也不同。因此,所述N×N的去噪矩阵的左上角区域包括的系数1的数量和分布可根据期望达到的不同的去噪效果(即,不同的图像质量)而被不同地设置。
通常,运算模块103可设置一个预定的N×N的去噪矩阵,即,左上角区域系数包括预定数量以及预定分布的1。例如,运算模块103可设置去噪效果适中的一个8×8的去噪矩阵,作为预定的去噪矩阵,例如,
此外,用户可根据期望的图像质量来设置N×N的去噪矩阵的左上角区域包括的系数1的数量以及分布。
此外,运算模块103在将所述多个N×N的第一变换系数矩阵分别与N×N的去噪矩阵相乘时,可先将N×N的去噪矩阵与用于增强对比度的系数(大于1的系数)相乘,得到N×N的增强对比度的去噪矩阵,再将所述多个N×N的第一变换系数矩阵分别与所述N×N的增强对比度的去噪矩阵相乘,得到多个N×N的第二变换系数矩阵。这样得到的第二变换系数矩阵即达到了去噪的效果,又达到了增强对比度的效果。用于增强对比度的系数大小不同,对比度增强的效果也不同。根据本发明的示例性实施例,运算模块103可设置一个对比度增强适中的预定系数,例如,1.15。此外,用户可根据期望的图像质量来设置用于增强对比度的系数。
在步骤504,反变换模块104可将达到去噪效果或者达到去噪和增强对比度效果的多个N×N的第二变换系数矩阵从频域反变换到时域,从而可以得到质量提高的图像数据。此外,还可通过输出模块(未示出)来输出质量提高的图像数据。这里,反变换模块104采用与变换模块102的变换方法对应的反变换方法。根据本发明的示例性实施例,当变换模块102的变换方法是DCT变换时,反变换模块104采用反DCT(IDCT)变换。
此外,根据本发明的示例性实施例,所述方法还可包括:通过FPGA模块使变换模块、运算模块和反变换模块对多个N×N的像素块进行并行处理。这里,并行处理的N×N的像素块的数量M可根据算法速度要求、输出图像速率限制、FPGA资源限制中的至少一个而被选择。使用FPGA模块对多个N×N的像素块进行并行处理可提高计算速度,从而实现对图像的高速处理。
本发明提供了一种提高图像质量的方法和设备。所述方法和设备通过将图像数据从时域变换到频域,并去除部分高频信息来降低图像的高频信息中的噪声,从而提高了图像质量。所述方法和设备还可在频域中拉伸变换系数来增强图像的对比度,从而提高了图像质量。所述方法和设备还可采用FPGA实现对多个像素块的并行处理,从而可实现对图像的高速处理。通过所述方法和设备对图像质量的提高,有利于提高视频压缩、图像压缩、图像检测等后续处理的速度和质量,能够广泛应用于智能交通、电子警察、工业检测、医学显微等领域。
虽然本发明是参照其示例性的实施例被显示和描述的,但是本领域的技术人员应该理解,在不脱离由权利要求及其等同物限定的本发明的精神和范围的情况下,可以对其形式和细节进行各种改变。