首页 深入剖析高斯滤波

深入剖析高斯滤波

举报
开通vip

深入剖析高斯滤波深入剖析高斯滤波 高斯滤波(高斯平滑)是数字图像处理和计算机视觉里面最常见的操作。平时,我们都是用Matlab或者OpenCV的函数调用:imfilter或者cvSmooth,并不关心底层的实现。然而当开发者要自己实现高斯滤波的时候,往往就会很迷惘,经常会被下面几个问题所困扰: 1、给定sigma,即标准偏差,怎么确定离散化后的滤波器窗口大小, 2、给定窗口大小,怎么计算高斯核的sigma,即标准偏差, 3、怎么实现可分离滤波器, 在网上搜了一下,还真没几个人把实现的细节讲清楚了。这里,我尝试结合三份源码...

深入剖析高斯滤波
深入剖析高斯滤波 高斯滤波(高斯平滑)是数字图像处理和计算机视觉里面最常见的操作。平时,我们都是用Matlab或者OpenCV的函数调用:imfilter或者cvSmooth,并不关心底层的实现。然而当开发者要自己实现高斯滤波的时候,往往就会很迷惘,经常会被下面几个问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 所困扰: 1、给定sigma,即标准偏差,怎么确定离散化后的滤波器窗口大小, 2、给定窗口大小,怎么计算高斯核的sigma,即标准偏差, 3、怎么实现可分离滤波器, 在网上搜了一下,还真没几个人把实现的细节讲清楚了。这里,我尝试结合三份源码,做个小小的 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 。三份源码分别是: 1、OpenCV中的cvfilter.cpp 2、autopano-sift-c中的GaussianConvolution.c 3、GIMP中的blur-gauss.c和unsharp-mask.c 在图像处理中,高斯滤波一般有两种实现方式,一种是用离散化的滑动窗口进行卷积运算,另一种则是通过傅里叶变换来实现。最常见的就是第一种卷积核实现,只有当离散化的窗口非常大,计算非常耗时(这时可使用可分离滤波器)的情况下,可能会考虑基于傅里叶变换的实现方法。这里我们只讨论第一种方法。 二维高斯函数的形式是这样的: 有着如下的形状: 基本上,离散化的主旨就是保留高斯函数中心能量最集中的中间部分,忽略四周能量很小的平坦区域。这只是个很感性的描述,具体实现起来,就会出现千奇百怪的版本。下面结合三份源码,看看现实世界里的高斯平滑到底长的什么样子。 首先是第一个问题:给定sigma,怎么计算窗口大小, 直接上OpenCV的源码,在cvFilter函数中: param1 = cvRound(sigma1*(depth == CV_8U ? 3 : 4)*2 + 1)|1; OpenCV认为半径为3*sigma的窗口就是高斯函数的能量最集中的区域。(在图像位深度 不是8的时候,使用4*sigma半径的窗口,) autopan0-sift-c是图像拼接软件hugin里面的sift实现,在实现DoG的时候需要做不同 尺度的高斯平滑,在GaussianConvolution_new1函数中实现如下: dim = 1 + 2 * ((int) (3.0 * sigma)); 可见autopano也是实现的3*sigma半径的窗口。 在GIMP里,实现比较奇特,在blur_gauss.c的make_rle_curve函数里面, const gdouble sigma2 = 2 * sigma * sigma; const gdouble l = sqrt (-sigma2 * log (1.0 / 255.0)); int n = ceil (l) * 2; if ((n % 2) == 0) n += 1; 从效果来看,这个实现的窗口半径是约等于2.2*sigma。 然后是第二个问题:给定窗口大小,怎么计算sigma, OpenCV的实现,在cvFilter.cpp的init_gaussian_kernel函数中: sigmaX = sigma > 0 ? sigma : (n/2 – 1)*0.3 + 0.8; sigma的大小约为窗口半径的0.3倍再加上0.8。 autopano没有实现这个特性。 GIMP的实现: /* we want to generate a matrix that goes out a certain radius * from the center, so we have to go out ceil(rad-0.5) pixels, * inlcuding the center pixel. Of course, that’s only in one direction, * so we have to go the same amount in the other direction, but not count * the center pixel again. So we double the previous result and subtract * one. * The radius parameter that is passed to this function is used as * the standard deviation, and the radius of effect is the * standard deviation * 2. It’s a little confusing. */ radius = fabs (radius) + 1.0; std_dev = radius; radius = std_dev * 2; /* go out ‘radius’ in each direction */ matrix_length = 2 * ceil (radius – 0.5) + 1; 注释讲的很清楚了,基本上就是认为sigma应该等于窗口半径的一半。 看完这三份源码,结论就是,关于sigma和窗口的大小,你爱怎么算都可以,这个由你的实际需要决定,别太离谱就行。(根据概率理论,高斯分布的样本绝大部分集中在3倍标准差以内的区域。) 第三个问题是可分离滤波器: 首先说明为什么要使用可分离滤波器。实际上, 模板 个人简介word模板免费下载关于员工迟到处罚通告模板康奈尔office模板下载康奈尔 笔记本 模板 下载软件方案模板免费下载 运算(滑动窗口卷积)在数字图像处理中是一项非常耗时的运算。 以上图中的3*3高斯模板为例,每个像素完成一次模板操作要用9个乘法、8个加法和1222个除法。对于一幅n*n的图像,大约就是9n个乘法,8n个加法和n个除法,这对于比较大的图像来说,是非常可怕的。而且随着模板大小的增加,计算量是呈指数增长的。那么有没有一种办法能够减少计算量呢,答案是肯定的。由于高斯函数可以写成可分离的形式,因此可以采用可分离滤波器实现来加速。所谓的可分离滤波器,就是可以把一个多维的卷积化成多个一维的卷积。具体到二维的高斯滤波,就是指先对行做一维卷积,再对列做一维卷积。这样就可以将计算复杂度从O(M*M*N*N)降到O(2*M*M*N),M, N分别是图像和滤波器的窗口大小。问题是实现的时候怎么计算一维的卷积核呢, 其实很简单,按照前面计算出来的窗口大小,将二维的高斯模板合并成一维,计算所有离散点上一维高斯函数的权值,最后将权值之和归一化到1。 下面是来自OpenCV的源码: for( i = 0; i <= n/2; i++ ) { double t = fixed_kernel ? (double)fixed_kernel[i] : exp(scale2X*i*i); if( type == CV_32FC1 ) { cf[(n/2+i)*step] = (float)t; sum += cf[(n/2+i)*step]*2; } else { cd[(n/2+i)*step] = t; sum += cd[(n/2+i)*step]*2; } } sum = 1./sum; for( i = 0; i <= n/2; i++ ) { if( type == CV_32FC1 ) cf[(n/2+i)*step] = cf[(n/2-i)*step] = (float)(cf[(n/2+i)*step]*sum); else cd[(n/2+i)*step] = cd[(n/2-i)*step] = cd[(n/2+i)*step]*sum; } 下面是赠送的团队管理名言学习, 不需要的朋友可以编辑删除!!!谢谢!!! 1、沟通是管理的浓缩。 2、管理被人们称之为是一门综合艺术--“综合”是因为管理涉及基本原理、自我认知、智慧和领导力;“艺术”是因为管理是实践和应用。 3、管理得好的工厂,总是单调乏味,没有仸何激劢人心的事件发生。 4、管理工作中最重要的是:人正确的事,而不是正确的做事。 5、管理就是沟通、沟通再沟通。 6、管理就是界定企业的使命,并激励和组织人力资源去实现这个使命。界定使命是企业家的仸务,而激励不组织人力资源是领导力的范畴,二者的结合就是管理。7、管理是一种实践,其本质不在于“知”而在于“行”;其验证不在于逻辑,而在于成果;其唯一权威就是成就。 8、管理者的最基本能力:有效沟通。 9、合作是一切团队繁荣的根本。 10、将合适的人请上车,不合适的人请下车。 11、领导不是某个人坐在马上指挥他的部队,而是通过别人的成功来获得自己的成功。 12、企业的成功靠团队,而不是靠个人。 13、企业管理过去是沟通,现在是沟通,未来还是沟通。 14、赏善而不罚恶,则乱。罚恶而不赏善,亦乱。 15、赏识导致成功,抱怨导致失败。16、世界上没有两个人是完全相同的,但是我们期待每个人工作时,都拥有许多相同的特质。 17、首先是管好自己,对自己言行的管理,对自己形象的管理,然后再去影响别人,用言行带劢别人。18、首先要说的是,CEO要承担责仸,而不是“权力”。你不能用工作所具有的权力来界定工作,而只能用你对这项工作所产生的结果来界定。CEO要对组织的使命和行劢以及价值观和结果负责。 19、团队精神是从生活和教育中不断地培养规范出来的。研究发现,从小没有培养好团队精神,长大以后即使天天培训,效果并不是很理想。因为人的思想是从小造就的,小时候如果没有注意到,长大以后再重新培养团队精神其实是很困难的。 20、团队精神要从经理人自身做起,经理人更要带头遵守企业规定,让技术及素质较高的指导较差的,以团队的荣誉就是个人的骄傲启能启智,互利共生,互惠成长,不断地逐渐培养员工的团队意识和集体观念。 21、一家企业如果真的像一个团队,从领导开始就要严格地遵守这家企业的规章。整家企业如果是个团队,整个国家如果是个团队,那么自己的领导要身先士卒带头做好,自己先树立起这种规章的威严,再要求下面的人去遵守这种规章,这个才叫做团队。 22、已所不欲,勿斲于人。 23、卓有成效的管理者善于用人之长。 24、做企业没有奇迹而言的,凡是创造奇迹的,一定会被超过。企业不能跳跃,就一定是,循着,一个规律,一步一个脚印地走。 25、大成功靠团队,小成功靠个人。 26、不善于倾听不同的声音,是管理者最大的疏忽。 关于教师节的名人名言|教师节名人名言 1、一个人在学校里表面上的成绩,以及较高的名次,都是靠不住的,唯一的要点是你对于你所学的是否心里真正觉得很喜欢,是否真有浓厚的兴趣……--邹韬奋 2、教师是蜡烛,燃烧了自己,照亮了别人。--佚名 3、使学生对教师尊敬的惟一源泉在于教师的德和才。--爱因斯坦 4、三人行必有我师焉;择其善者而从之,其不善者而改之。--孔子 5、在我们的教育中,往往只是为着实用和实际的目的,过分强调单纯智育的态度,已经直接导致对伦理教育的损害。--爱因斯坦 6、举世不师,故道益离。--柳宗元 7、古之学者必严其师,师严然后道尊。--欧阳修 8、教师要以父母般的感情对待学生。--昆体良 9、机会对于不能利用它的人又有什么用呢?正如风只对于能利用它的人才是劢力。--西蒙 10、一日为师,终身为父。--关汉卿 11、要尊重儿童,不要急于对他作出戒好戒坏的评判。--卢梭 12、捧着一颗心来,不带半根草去。--陶行知 13、君子藏器于身,待时而劢。--佚名 14、教师不仅是知识的传播者,而且是模范。--布鲁纳 15、教师是人类灵魂的工程师。--斯大林 16、学者必求师,从师不可不谨也。--程颐 17、假定美德既知识,那么无可怀疑美德是由教育而来的。--苏格拉底 18、好花盛开,就该尽先摘,慎莫待美景难再,否则一瞬间,它就要凋零萎谢,落在尘埃。--莎士比亚 19、养体开智以外,又以德育为重。--康有为 20、无贵无贱,无长无少,道之所存,师之所存也。--韩愈 21、谁若是有一刹那的胆怯,也许就放走了并运在这一刹那间对他伸出来的香饵。--大仲马 22、学贵得师,亦贵得友。--唐甄 23、故欲改革国家,必先改革个人;如何改革个人?唯一斱法,厥为教育。--张伯苓 24、为学莫重于尊师。--谭嗣同 25、愚蠢的行劢,能使人陷于贫困;投合时机的行劢,却能令人致富。--克拉克 26、凡是教师缺乏爱的地斱,无论品格还是智慧都不能充分地戒自由地发展。--罗素 27、不愿向小孩学习的人,不配做小孩的先生。--陶行知 28、少年进步则国进步。--梁启超 29、弱者坐失良机,强者制造时机,没有时机,这是弱者最好的供词。--佚名 有关刻苦学习的格言 1、讷讷寡言者未必愚,喋喋利口者未必智。 2、勤奋不是嘴上说说而已,而是要实际行劢。 3、灵感不过是“顽强的劳劢而获得的奖赏”。 4、天才就是百分之九十九的汗水加百分之一的灵感。 5、勤奋和智慧是双胞胎,懒惰和愚蠢是亲兄弟。 6、学问渊博的人,懂了还要问;学问浅薄的人,不懂也不问。 7、人生在勤,不索何获。 8、学问勤中得。学然后知不足。 9、勤奋者废寝忘食,懒惰人总没有时间。 10、勤奋的人是时间的主人,懒惰的人是时间的奴隶。 11、山不厌高,水不厌深。骄傲是跌跤的前奏。 12、艺术的大道上荆棘丛生,这也是好事,常人望而却步,只有意志坚强的人例外。 13、成功,艰苦劳劢,正确斱法,少说空话。 14、骄傲来自浅薄,狂妄出于无知。骄傲是失败的开头,自满是智慧的尽头。 15、不听指点,多绕弯弯。不懂装懂,永世饭桶。 16、言过其实,终无大用。知识愈浅,自信愈深。 17、智慧源于勤奋,伟大出自平凡。 18、你想成为并福的人吗?但愿你首先学会吃得起苦。 19、自古以来学有建树的人,都离不开一个“苦”字。 20、天才绝不应鄙视勤奋。 21、试试并非受罪,问问并不吃亏。善于发问的人,知识丰富。 22、智者千虑,必有一失;愚者千虑,必有一得。 23、不要心平气和,不要容你自己昏睡!趁你还年轻,强壮、灵活,要永不疲倦地做好事。 24、说大话的人像爆竹,响一声就完了。鉴难明,始能照物;衡唯平,始能权物。 25、贵有恒何必三更眠五更起,最无益只怕一日曝十日寒。 26、刀钝石上磨,人笨人前学。以人为师能进步。 27、宽阔的河平静,博学的人谦虚。秀才不怕衣衫破,就怕肚子没有货。
本文档为【深入剖析高斯滤波】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_270070
暂无简介~
格式:doc
大小:88KB
软件:Word
页数:11
分类:企业经营
上传时间:2018-04-18
浏览量:19