随笔分类 - [03] 图像算法优化
解释图像算法的优化技巧。
摘要:对图像算法进行SSE优化时,有很多常用的过程,本文列举了十几个例子,有些是很高效的,有些是很常用的,对研究图像的朋友有一定的帮助。
阅读全文
摘要:分支判断的语句一般来说是不太适合进行SSE优化的,因为他会破坏代码的并行性,但是也不是所有的都是这样的,在合适的场景中运用SSE还是能对分支预测进行一定的优化的,我们这里以经典的USM锐化算法的部分代码为例进行讲解。
阅读全文
摘要:使用SSE优化两种颜色空间的转换,测试1080P的图像能达到455fps左右,可显著提高视频算法的实时性。
阅读全文
摘要:关于局部均方差有着较为广泛的应用,但是直接计算其计算量较大,本文描述了基于SSE优化的思路,并提出使用均布平方差代替均方差来提高某些场合的效果。
阅读全文
摘要:再次触发灵感,终于将懒惰算法的图像模糊算法使用了SIMD指令集实现,速度比opencv的cvSmooth函数快近5倍,在一台老旧的I3笔记本上处理3000*2000的灰度图达到了6ms的速度,本文分享该优化过程并提供灰度版本的优化代码供大家学习和讨论。
阅读全文
摘要:理论分析和工程实践之间还有很长的路要走,本文描述了作者在实践FFT用于快速卷积过程中的若干经验和技巧。
阅读全文
摘要:在很多场合需要高效率的肤色检测代码,这里分享一个简单的肤色检测的SSE实现算法。
阅读全文
摘要:这半年多时间,基本都在折腾一些基本的优化,有很多都是十几年前的技术了,从随大流的角度来考虑,研究这些东西在很多人看来是浪费时间了,即不能赚钱,也对工作能力提升无啥帮助。可我觉得人类所谓的幸福,可以分为物质档次的享受,还有更为复杂的精神上的富有,哪怕这种富有只是存在于短暂的自我满足中也是值得的。
阅读全文
摘要:PS中自然饱和度算法对于图像的调节有着比较特别的作用,本文分享了模拟其效果的实现代码,并就代码本身的优化进行了深入探讨,同时结合SSE加以进一步的优化,达到相对于原始代码约80倍的速度提升,同时对于初学SSE进行图像处理的朋友有着很好的指导和教学意义。
阅读全文
摘要:腐蚀和膨胀是形态学中最常用的两个算法,扩展到普通图像则可以称之为最大值和最小值(PS-滤镜-其他),其在图像去雾、增强方面都有应用,本文提供了一种非常高效的该算法实现方式,欢迎各位指导。
阅读全文
摘要:最近一直沉迷于SSE方面的优化,实在找不到想学习的参考资料了,就拿个笔记本放在腿上翻翻OpenCv的源代码,无意中看到了OpenCv中关于积分图的代码,仔细研习了一番,觉得OpenCv对SSE的灵活运用真的做的很好,这里记录下我对该段代码的品味并将其思路扩展到其他通道数的图像。
阅读全文
摘要:转置操作在很多算法上都有着广泛的应用,在数学上矩阵转置更有着特殊的意义。在图像处理上,某些情况下,转置也能有效的提高算法效率,比如很多行列可分离的算法,在很多情况下,行和列方向的算法逻辑随相同,但是由于多方面原因(比如Cache miss, 优化水平等)行列处理时间还是由很大的差异的,这个时候如果转置的耗时和处理时间相比所占比例甚小,则可以考虑在进行耗时处理前先转置数据,然后调用不耗时的方向的算法,处理完后再次进行转置。因此,一个高效的图像转置算法的设计时非常有必要的。
阅读全文
摘要:自从何凯明提出导向滤波后,因为其算法的简单性和有效性,该算法得到了广泛的应用,以至于新版的matlab都将其作为标准自带的函数之一了,利用他可以解决的所有的保边滤波器的能解决的问题,比如细节增强、HDR压缩、细节羽化、去雾、风格化,而且由于其保边特性,如果很多传统函数中使用高斯滤波或者均值滤波的地方用他代替,能很好解决一些强边缘的过渡不自然问题,比如retinex、Highlight/shadow等应用中,因此,快速的实现该算法具有很强的适用意义。
阅读全文
摘要:在高斯模糊算法的全面优化过程分享(一)一文中我们已经给出了一种相当高性能的高斯模糊过程,但是优化没有终点,经过上一个星期的发愤图强和测试,对该算法的效率提升又有了一个新的高度,这里把优化过程中的一些心得和收获用文字的形式记录下来。
阅读全文
摘要:高斯模糊可谓是图像处理中最基础的一种算法,也是应用最广泛的算法,无论是在图像的那个分之方向,都可能与之有交集,本文分享了作者在优化该算法过程中的一些经验,优化后的结果应该比现有网络中的代码都高效。
阅读全文
摘要:从Github上淘到可以的一段SIMD代码,主要就是实现简单的RGB转Y的计算,源作者说比opencv的代码要快2倍,这里分享下对该代码一些解读和理解。
阅读全文
摘要:关于积分图的资料网络上有很多,不多在我看来,都是不够优秀的,有些甚至是错误的,本文用最简单的代码实现最高效的算法,欢迎指点。
阅读全文
摘要:卷积其实是图像处理中最基本的操作,我们常见的一些算法比如:均值模糊、高斯模糊、锐化、Sobel、拉普拉斯、prewitt边缘检测等等一些和领域相关的算法,都可以通过卷积算法实现,本文则重点描述了任意卷积核的快速实现。
阅读全文
摘要:图像处理中,有很多算法由于其内在的复杂性是天然的耗时大户,加之图像本身蕴涵的数据量比一般的对象就大,因此,针对这类算法,执行速度的提在很大程度上依赖于硬件的性能,现在流行的CPU都是至少2核的,稍微好点的4核,甚至8核,因此,如果能充分利用这些资源,必将能发挥机器的强大优势,为算法的执行效果提升一个档次。
阅读全文
摘要:本文涉及的很多算法,在网络上也有不少同类型的文章,但是肯定的一点就是,很多都是不配代码的,或者所附带的代码都是象征性的,速度慢,不优雅,不具有实用价值,本文努力解决这些问题。
阅读全文
浙公网安备 33010602011771号