用于对图像应用滤波器的方法和系统的制作方法

上传人:ting****789 文档编号:310015307 上传时间:2022-06-14 格式:DOCX 页数:4 大小:21.27KB
返回 下载 相关 举报
用于对图像应用滤波器的方法和系统的制作方法_第1页
第1页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用于对图像应用滤波器的方法和系统的制作方法》由会员分享,可在线阅读,更多相关《用于对图像应用滤波器的方法和系统的制作方法(4页珍藏版)》请在金锄头文库上搜索。

1、用于对图像应用滤波器的方法和系统的制作方法专利名称:用于对图像应用滤波器的方法和系统的制作方法技术领域:本发明总体地涉及用于图像处理的方法和系统,更具体地涉及用于对图像应用图像滤波器(filter)的方法和系统。背景技术:数字图像处理是使用计算机算法来对数字图像执行图像处理。图像处理的软件实现日益地被专业用户和临时用户用于编辑和操纵照片、图像和视频。一种常见的图像操纵形式是通过对图像应用滤波器来执行的。根据使用的滤波器,可以实现广泛的效果。例如,通过高斯函数使图像模糊的高斯模糊滤波器产生通过不透明屏幕观看图像的效果。发明内容用于对图像应用滤波器的计算机实现方法包括:接收滤波器设置;至少基于滤波

2、器设置,从存储在计算机可读存储介质上的滤波器族中选择选定的滤波器,其中,滤波器族包括多个滤波器,每一个滤波器是不同阶上的函数的近似;以及使用处理器对存储的图像应用选定的滤波器。用于对图像应用滤波器的系统包括:处理器、存储器和输入装置。在处理器执行在存储器上存储的可执行程序指令时,该系统被配置为:从输入装置接收滤波器设置;至少基于滤波器设置,从存储在存储器上的滤波器族中选择选定的滤波器,其中,滤波器族包括多个滤波器,每一个滤波器是不同阶上的函数的近似;以及使用处理器对存储的图像应用选定的滤波器。用于对图像应用模糊的计算机实现方法包括:接收模糊强度;至少基于模糊强度,确定标准差值;基于标准差值,从

3、存储在计算机可读存储介质上的高斯模糊滤波器族中选择高斯模糊滤波器;确定高斯模糊滤波器的参数;以及使用处理器对图像应用滤波器。根据下面结合附图呈示的对本发明的更具体的描述,本发明的若干实施例的上述和其他方面、特征和优点将更加清楚。图1是根据一个或多个实施例的对图像应用滤波器的计算机系统的框图。图2是根据一个或多个实施例的对图像应用滤波器的方法的流程图。图3是根据一个或多个实施例的对图像应用高斯模糊滤波器的方法的流程图。图4是示出根据一个或多个实施例的高斯函数的曲线图。在附图的若干图中,相应的附图标记表示相应的部件。本领域的技术人员将会认识到,这些图中的元件是出于简单和清楚的目的而被示出,并且不必

4、一定是按照比例绘制的。例如,为了帮助改善对本发明的各种实施例的理解,这些图中的某些元件的尺寸可以相对于其他元件而被放大。此外,为了便于本发明的上述各种实施例的较不模糊的视图,通常不绘出在商业上可行的实施例中有用或需要的常用且公知的元件。具体实施例方式下面的描述不是在限制性的意义上进行的,而仅仅是出于描述示例性实施例的普遍原理的目的而作出的。本发明的范围应该参考权利要求书被确定。在整个说明书中对“一个实施例”、“实施例”或类似语言的提及是指,在本发明的至少一个实施例中包含与实施例结合描述的具体特征、结构或特性。因此,在整个说明书中短语“在一个实施例中”、“在实施例中”或类似语言的出现可以但不必一

5、定全部是指同一实施例。此外,在一个或多个实施例中,可以以任何合适的方式组合本发明的上述特征、结构或特性。在下面的描述中,提供大量的特定细节,例如,编程、软件模块、用户选择、网络交易、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等的例子,以提供对本发明的实施例的全面理解。但是,本领域的技术人员将会认识到,可以在没有一个或多个上述特定细节的情况下实施本发明,或者,可以通过其他方法、部件、材料等来实施本发明。在其他的情况中,为了避免使本发明的各方面模糊,公知的结构、材料或操作没有被详细地示出或描述。首先,参照图1,示出了计算机系统,其通常以100表示,该计算机系统包括中央处理单元(CPU)

6、110、图形处理器120、存储器130、输入装置140和显示装置150,这些部件通过总线160通信地连接。计算机系统100可以是个人计算机装置、联网的计算机系统、计算机服务器等。图形处理器120可以被称为图形处理单元(GPU)或视频处理单元(VPU)。存储器130包括随机存取存储器(RAM) 132和大容量存储器(mass storage) 134,该大容量存储器可以是硬盘驱动器。虽然CPU110、图形处理器120和RAM132被示出为分离的部件,但是,在一些实施例中,RAM132可以与CPUllO和图形处理器120中的一个或两个集成。在一些实施例中,RAM132由CPUllO和图形处理器12

7、0动态地共享。在一些实施例中,RAM132由CPUllO使用,并且,第二图形RAM专用于图形处理器120。在一些实施例中,图形处理器120可以与CPUllO集成。在一些实施例中,计算机系统100缺少专用的图形处理器120,并且,CPUllO适合于替代图形处理器120执行计算。CPUllO和图形处理器120可以以单精度浮点(32位)或双精度浮点(64位)格式操作。输入装置140可以是用于给计算机系统提供用户输入的公知的装置,例如,鼠标、键盘、触摸垫和/或触摸屏。显示装置150可以是用于给用户显示图像的公知的装置。在一些实施例中,总线160包括用于连接CPUl 10、图形处理器120和存储器130

8、的北桥,以及用于连接输入装置140和显示装置150的南桥。在一些实施例中,输入装置140适合于向CPUllO提供对图像文件应用滤波器的命令。该命令可以通过在显示装置150上显示的诸如Sony Vegas Pro系列软件的用户界面来被输入。例如,用户可以选择图像,从可用滤波器的列表中选择一种滤波器,并且,通过用户界面来选择滤波器设置。在一些实施例中,所述一种滤波器可以是高斯模糊滤波器、边缘检测滤波器、Retinex滤波器和双边滤波器中的一种。图像可以是图片或视频。在一些实施例中,可以针对像素行和像素列分开地设置滤波器设置。在一些实施例中,用户可以通过该界面来选择图像中的一个或多个部分以应用滤波器

9、。在其他实施例中,可以通过在计算机装置100上运行的另一种程序来触发滤波器的应用。图像文件可以被存储在存储器30上并由CPUllO检索以被显示在显示装置150上。存储器130还可以存储可由CPUllO或图形处理器120检索以应用于图像的每一种滤波器类型的滤波器族。响应于对图像应用滤波器的命令,CPUllO适合于执行在存储器中存储的代码以从滤波器族中选择滤波器。滤波器族可以包括多个滤波器,每一个滤波器是不同阶的函数的近似。在一些实施例中,处理器还适合于基于由用户通过输入装置140输入的滤波器设置来确定滤波器的系数。在整个描述中,滤波器系数有时被称为参数。CPUllO可以适合于基于滤波器设置来从滤

10、波器族中选择一个滤波器。在一些实施例中,CPUl 10从滤波器设置规划(pro ject)计算资源需求,并且,对于具有较低的规划的计算资源需求的滤波器设置,从滤波器族选择较高阶的滤波器,对于具有较高的规划的计算资源需求的滤波器设置,从滤波器族选择较低阶的滤波器。图形处理器120适合于用选定的滤波器处理图像,以输出滤波的图像。可以针对图像的X轴(像素行)和图像的y轴(像素列)分开地执行该处理。可以将该滤波器应用于单个图像或包括一系列静止图像的视频,或者压缩视频文件。在一些实施例中,图形处理器120可以不存在于计算机系统100中,或者,以另外的方式在计算机系统100上不可用。在一些实施例中,CPU

11、l 10适合于替代图形处理器120或者作为其补充来执行滤波器应用。滤波的图像可以被显示在显示装置150上并被存储到存储器130中。接下来,参照图2,示出对图像应用滤波器的处理。在步骤201中,在计算机系统处接收滤波器选择。在一些实施例中,选择滤波器可以是模糊滤波器、边缘检测滤波器、Retinex滤波器或双边滤波器。边缘检测滤波器还可以是Roberts滤波器、Sobel滤波器、Prewitt滤波器、La Placian滤波器和emboss滤波器中的一种。通常,选定的滤波器可以是用于图像滤波的任何数学函数,其可以由无限冲击响应(IIR)滤波器近似。滤波器选择可以包括滤波器的滤波器类型和一种或多个设

12、置。例如,对于模糊滤波器,可以输入模糊强度设置,并且,对于边缘检测滤波器,可以输入半径设置。通常,滤波器设置可以是影响应用滤波器所需的计算资源的参数。滤波器选择可以通过提供的界面来输入。界面可以提供用于接收滤波器设置的浮动块(slider)或数值输入区。在步骤203中,基于在步骤201中接收到的滤波器设置,由计算机处理器从滤波器族选择与接收到的滤波器类型相关联的滤波器。用于滤波器选择的算法可以是存储在计算机可读存储器装置上的一组预编程的指令。滤波器族包括作为不同阶上的同一函数的近似的滤波器。用于图像滤波的数学函数,例如,高斯函数,可以由不同阶上的滤波器函数近似,以提高滤波器应用的速度。滤波器的

13、阶被定义为描述数字滤波器的z域传递函数的分子或分母中的最高指数的数值。近似的滤波器函数可以是无限冲击响应(IIR)滤波器。通常,较高阶的滤波器提供函数的更精确的近似,但是需要更多的计算资源。由于在计算中使用的反馈,高阶IIR滤波器可能会具有不稳定、算法溢出和限制周期的问题。对于应用滤波器的计算资源的需求还可能会受滤波器函数的复杂性、图像的大小和诸如滤波范围或强度的滤波器设置的影响。例如,用高阶滤波器对大的图像进行滤波,可能需要处理器(CPU或GPU)处理非常大的数值,并且倾向于浮点溢出或反向规格化(denormaIization),从而导致不准确的滤波结果。在一些情况中,应用高阶滤波器还可能会

14、导致处理器执行大量的操作,这样降低可以应用滤波器的速度。在一些实施例中,当执行一组指令的计算机处理器规划滤波器设置和图像大小会导致低的计算资源需求时,选择高阶滤波器;当计算机处理器规划滤波器设置和图像大小会导致高的计算资源需求时,选择低阶滤波器。在一些实施例中,滤波器设置值的范围由一个或多个阈值分开,并且,将滤波器阶分配给滤波器设置的每一个范围。由此,对滤波器阶的动态选择可以减少数值不稳定性并提高图像滤波处理的速度。在步骤205中,将在步骤203中选择的滤波器应用于图像。滤波器可以由CPU或GPU应用。以单浮点(36位)操作的CPU和GPU比以双浮点(64位)操作的CPU和GPU更易受来自浮点

15、溢出误差的不稳定性和不精确性。在一些实施例中,根据执行滤波的处理器(CPU或GPU)以32位还是以64位操作,可以选择性地触发对滤波器阶的动态选择。在一些实施例中,根据执行滤波的处理器以32位还是以64位操作,可以不同地设置用于在滤波器阶之间选择的滤波器设置阈值。在一些实施例中,沿着图像的X轴(像素行)和I轴(像素列)分开地应用滤波器。在一些实施例中,在滤波器的第一应用之后,处理器适合于检测滤波器应用中的不稳定性。当在先前的滤波器应用中检测到不稳定性时,来自同一滤波器族的较低阶滤波器被选择并被重新应用于原始图像,以产生输出图像。在一些实施例中,最高可能阶滤波器首先被选择,并且,计算估计的不稳定

16、性。如果估计的不稳定性超出了预定的可接受度阈值,那么应用下一较低阶滤波器。对于较低阶滤波器重复该处理,直到计算出的估计的不稳定性低于可接受度阈值。在一些实施例中,在步骤205中应用滤波器之前,基于滤波器设置来确定在滤波器中使用的参数。在一些实施例中,可以从查找表检索参数。例如,查找表可以包含用于滤波器族中的每一个滤波器的一定范围的可能滤波器设置值的参数。在一些实施例中,通过使用数值优化技术使选定的滤波器的误差函数最小化,接收滤波器设置来计算参数。误差函数是用于确定滤波器多么接近诸如高斯函数的函数的函数。在一些实施例中,用于一些滤波器设置的参数值被存储在查找表中,但是,在接收滤波器设置之后,计算用于其他滤波器设置的参数。接下来,参照图3,示出对图像应用高斯模糊滤波器的过程。模糊滤波器是广泛地用于图形软件以减少图像噪声和细节的滤波器。模糊也可以被应用于图像的选定的部分,以产生各种效果。通常使用的一种模糊是高斯模糊,该高斯模糊用高斯函数卷积图像以减少图像的高频分量。在卷积操作期间,从其邻近像素的加权平均值计算图像的每一个像素的值。模糊滤波器的视觉效果类似通

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号