
图像处理 / 特效 / 滤镜
文章平均质量分 91
grafx
这个作者很懒,什么都没留下…
展开
-
图像处理之图像亮度调节
图像处理中,图像亮度调节可能是最简单的算法了,非常常见的线性运算即可完成亮度调节,比如所有像素点亮度值乘或者加一个增强系数,使得图像整体变亮或者变暗。photoshop中是如何实现的不得而知,每个版本可能也不一样。还是说说我的实现方法,其实就是在调节过程中,根据像素点亮度,做非线性调节,即高光、阴影部分调节小一点,中间部分多调节一些,这样亮度调节看着更自然一些。原创 2017-05-07 17:13:49 · 18625 阅读 · 8 评论 -
图像处理中使用多线程及图像分块实现加速运算
很多图像处理算法,编写完毕、调试正确后,就是漫长的算法优化。有些算法处理效果很棒,但是运算非常耗时,还是无法集成进产品给用户用。本文介绍的基于多线程和图像分块实现加速运算,只是众多加速方法的一种,比较容易编写和实现。原创 2017-05-02 17:25:32 · 9826 阅读 · 3 评论 -
图像处理算法之变老特效
用了美颜app,瞬间可以将自己变成脸小、大眼、白肤的女神、男神。那有没有人想看看自己一脸皱纹的样子呢?好奇心大家都应该有,不过没人想变老,虽然这个现实每个人都要面对。app store上有相关应用,曾经在做变老特效时,特意下载几个,当用自己照片体验时,真心做不到从容面对自己变老时的模样。那么变老特效是如何实现的呢?下面简单讲讲我做变老特效时的思路。 1. 面部皱纹纹理...原创 2017-04-22 18:40:03 · 19417 阅读 · 25 评论 -
图像处理算法之瘦脸及放大眼睛
现在很多图像美颜app,处理后不但使人物皮肤变得平滑、白皙,还会稍微瘦下脸、放大眼睛,给人眼前一亮的感觉。这其中涉及人脸检测及特征点提取算法,一般提取68个特征点就足够了,同时也涉及图像局部变形算法。原创 2017-04-18 21:20:12 · 35704 阅读 · 50 评论 -
一种简单的图像白平衡计算方法
简单白平衡算法,核心思想是:在rgb三通道上分别计算直方图,然后将1%的最大值和最小值设置为255和0,其余值映射到(0, 255)区间内,这样使得每个通道的值均匀分布,以实现简单的颜色平衡。原创 2017-04-09 22:56:04 · 11523 阅读 · 1 评论 -
图像处理算法之美颜
和滤镜一样,美颜也是图像类app必不可少的功能之一,也有的app叫人像美容,主要包括美肤及美白等几大功能。甚至有很多专门美颜的app,比如美颜相机什么的,可见美颜功能需求量之大。很多女孩子自拍必美颜,发朋友圈必美颜,爱美之心人皆有之,每个人都想变成美颜之后的样子。原创 2017-04-04 18:21:56 · 21036 阅读 · 2 评论 -
图像处理算法之滤镜
程序员拿到设计师的滤镜设计稿后,要做的就是编写程序高度还原设计效果。这一点多多少少还是有些挑战,因为ps经过多年发展后,不同版本有些功能效果还不一样,比如最为常见的亮度、对比度调节,算法很简单,但是要做到和ps效果一样,还是要花时间摸索、调试。原创 2017-04-04 16:24:42 · 14129 阅读 · 8 评论 -
图像处理算法之图像暗角特效
基本所有图像美化app都有该特效,有的app叫晕影效果,有的app叫暗角效果,其实就是以图像为中心,提高图像四角的亮度或者降低亮度。为图像四角提高亮度的不多,更多的还是给图像增加暗角效果,以突出图像主体。 尤其是很多lomo滤镜,基本都会加一个暗角。原创 2017-04-03 14:40:24 · 4529 阅读 · 2 评论 -
RGB与Lab色彩空间相互转换c++代码
本文主要是单纯分享代码,具体关于Lab色彩空间是怎么被设计出来的,相互转换公式是什么样的,这里就不做过多介绍了,相关文章很多。工作中用的比较多是yuv空间,Lab空间用的少,实际RGB与Lab转换还是挺复杂的,完全套公式的话,还是挺耗时的,因为中间还涉及到通过XYZ空间中转。原创 2017-03-02 10:05:16 · 10887 阅读 · 10 评论 -
图像处理之水彩画特效生成算法
在研究非真实感绘制相关算法时,水彩画算法是第一个开始看的,不过却拖到最后总结。水彩画算法主要涉及的计算环节有:(1)简化细节;(2)边缘抖动;(3)边缘加深;(4)颜料分散;(5)紊流效果;(6)叠加纸张纹理等。原创 2017-03-01 16:04:03 · 8892 阅读 · 8 评论 -
图像处理算法之鱼眼镜头特效模拟
鱼眼镜头拍摄的图像还是挺好玩的,当时做这个特效时,下载了很多应用一一体验,但是发现苹果应用商店或者安卓应用市场上很多鱼眼镜头相关应用,很多都是按照图像变形做的,与真正鱼眼镜头拍摄的效果相差较远。原创 2017-02-25 18:21:41 · 16179 阅读 · 19 评论 -
卡通画(矢量风格画)特效生成算法
当初做这个算法时,参考的是相机360中的卡通特效。实际对比发现,有些图片处理后,效果要优于相机360中的效果。原创 2017-02-12 16:10:35 · 6797 阅读 · 20 评论 -
基于L0范数平滑的图像漫画特效生成算法
图像漫画特效算法,主要思路可以分两部分,第一,简化图像,即去除图像细节,仅保留图像主要信息,第二,生成合适的边缘线条,最后将两者合成即可,合成其实就是将两者简单一乘即可。原创 2017-02-05 20:28:54 · 6308 阅读 · 9 评论 -
改进的《Combining Sketch and Tone for Pencil Drawing Production》铅笔画算法
本文实现的铅笔画算法,基于论文《Combining Sketch and Tone for Pencil Drawing Production》算法实现。不过有些细节并没有完全按照论文算法实现,而是根据自己所学,做了一些二次创新。整体效果,接近原文算法,不过对于某些图片处理效果感觉要优于原文。原创 2017-02-04 21:04:12 · 3118 阅读 · 2 评论 -
图像处理算法之水面倒影特效
本文实现的水面倒影特效算法,实际上并没有具体原理或者公式推导,当时是参考网上一篇ps教程——《使用ps制作水面倒影特效 》实现的,即将教程中的步骤,依次程序化,这样就可以实现图像一键水面倒影特效了。原创 2017-01-18 20:21:42 · 9325 阅读 · 13 评论 -
图像自动增强拉亮,让照片充满阳光的味道
图像增强拉亮方法很多,这个算法也是无意中设计出来的,感觉效果还可以,增强拉亮后的图片看着很自然。并且算法没什么复杂原理,计算逻辑也简单,处理速度很快。原创 2017-01-08 15:34:50 · 3064 阅读 · 2 评论 -
基于优化对比度增强的图像去雾算法
图像去雾的最大挑战是:去雾的同时,能够保持图像不偏色,并且速度要快。本文算法来自《 Optimized contrast enhancement for real-time image and video dehazing》这篇文章,在实际测试中效果还可以。原创 2017-01-07 16:31:12 · 8849 阅读 · 15 评论 -
限制对比度自适应直方图均衡(CLAHE算法)
这个算法还是挺需要编程技巧的,写程序水平也都是随着解决问题难度而无形中提高的。本程序主要改写自下面的C代码,经过二次加工后感觉可读性高了一些。原创 2016-11-23 21:22:41 · 25290 阅读 · 6 评论 -
低照度图像增强(附步骤及源码)
本文提到的低照度图像增强的算法,这个算法很简单,但是效果尚可。当时在查阅相关资料时,无意中看到一个使用Photoshop拉亮低照度图像的方法,按照教程介绍,自己使用Photoshop操作一遍,觉得效果还可以。对,做图像算法还是要掌握一点Photoshop用法的,因为有时候图像算法就是把Photoshop上面的处理图像步骤程序化一下。原创 2016-11-19 19:40:38 · 23375 阅读 · 16 评论 -
Tone Mapping
最近做了一点hdr方面的工作,在查找资料过程中,看到这篇文章,虽然在我的算法中没有用到这篇文章提到的相关计算方法,但是觉得这篇文章提到的思路和计算公式以后工作中可能会用到,于是做了转载。原文链接《Tone Mapping》。 Tone Mapping原是摄影学中的一个术语,因为打印相片所能表现的亮度范围不足以表现现实世界中的亮度域,而如果简单的将真实世界的整个亮度域线性压缩转载 2015-06-14 11:01:58 · 2705 阅读 · 0 评论 -
低照度图像增强
最近在做图像增强时,发现一种简单、有效的低照度图像增强方法,仅用了几次简单的图层混合操作,没有复杂的公式和计算过程,但效果还可以,同时对逆光拍摄的图像,也有较好的增强效果。 如果修改其中一些参数,还可以得到增强更明显的图像,当然,随之噪点也会变得明显,如下图:原创 2015-05-24 17:58:50 · 10981 阅读 · 12 评论 -
一种计算图像曝光度(Exposure)的方法
前几天在做图像曝光度(Exposure)这个小功能时,找了半天资料都没找到,后来在stackoverflow上翻到了计算方法,方法很简单,实际测试时,发现和photoshop效果还挺接近的。下面是基于opencv的相关代码示例,strength范围可以设置为-2.0到2.0。原创 2015-05-10 12:12:10 · 20869 阅读 · 4 评论 -
几种不同的彩色图像转灰度方法
最近在分析几个开源图像处理程序时,发现了几种不同的彩色图像转灰度算法,方法都很简单,也非常容易理解,但是效果还是有明显不同。在介绍计算方法前,先要说说亮度(lightness)与照度(luminosity)的区别。亮度(lightness),指的是人在看到光源时,眼睛感觉到的光亮度。照度(luminosity),指的是光源照射到物体上,单位被照射面积上的光通量。原创 2015-05-02 18:48:48 · 7115 阅读 · 0 评论 -
使用OpenCV训练级联分类器
虽然opencv已经自带了人脸、嘴巴、鼻子等分类器,但工作中有时候由于项目需要,还是需要自己训练分类器,最近我做了一下这方面工作,现在把训练分类器的过程写出来,希望对打算做这方面工作的同学有帮助。我主要参考了这篇文章。先介绍下我的工作环境,windows 7 + opencv243,下面是我的工作目录:原创 2014-03-31 22:35:36 · 3395 阅读 · 0 评论 -
一种简单高效的OpenCV图像遍历方式
前几天在一个技术讨论群里看到有位同学贴了些代码问问题,看了一下代码,虽然没搞明白他的程序问题出在哪,但觉得他的程序在图像遍历时效率较低。在使用OpenCV遍历图像时有好几种方式,这里将自己经常用的遍历方式(指针方式)与那位同学的遍历方式(at方法遍历)做下简单对比,希望能对正在学习OpenCV的同学有帮助。下面的实例代码实际上实现了一个小功能,即图像的反色,反色原理很简单,在一个rgb色彩空间中,原创 2014-01-21 23:14:32 · 6252 阅读 · 0 评论 -
使用颜色转换算法实现图像调色
在使用图像处理软件给图像调色时,我们通常会使用色彩平衡或曲线等功能,有时调来调去似乎总是不太满意。有没有一种方便、省事的方法,通过鼠标简单点选,就能将待处理的图片调成自己喜欢的某张图片色调呢?前几天浏览SIGGRAPH 2013会议论文集,发现几篇调色相关文章,但在算法实现步骤上作者似乎讲的不是很详细,实现起来难度较大。在进一步查阅资料过程中,发现了这篇文章《Color Transfer betw原创 2014-01-02 23:27:35 · 6818 阅读 · 3 评论 -
使用颜色分布法计算图像相似度
基于比较灰度直方图的方法计算两幅图像相似度误判较多,一个原因上篇博客已经提到,就是直方图自身局限性:仅反映图像像素各灰度值的数量,不能反映图像纹理结构;另一个原因就是在使用该方法时,对于彩色图像,一般都是将其转为灰度图像,然后在计算其灰度直方图,最后再参与运算比较,很明显在彩色转灰度的转换过程中将损失图像颜色信息,所以在计算时存在大量误判。由第一个原因产生的误判很难找到解决方案,除非不用这个方法;原创 2013-12-28 16:59:57 · 10782 阅读 · 4 评论 -
基于直方图比较的图像相似度计算
由于项目需要,这两天看了一些图像相似度计算方面的资料,图像相似度计算就是对两幅图片之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相似程度。在查找资料过程中,首先看到的图像相似度计算方法就是直方图比较。该算法计算过程很容易理解,首先对于两幅图像分别计算其直方图,然后根据某种衡量标准进行比较,比较结果即为两幅图像的相似度。贴心的OpenCV已提供了直方图比较的函数,即compareHist原创 2013-12-26 22:19:51 · 16431 阅读 · 3 评论 -
使用大津法二值化灰度图像
二值化是图像分割的一种方法,即将256个亮度等级的灰度图像通过适当的阈值选取,使得所有小于该阈值的像素置为一个值,所有大于该阈值的像素置为另一个值,最终得到一张非黑即白的二值图像。可见阈值的选择非常重要,不同的阈值,运算后得到的结果图像是完全不同的。对于多张图像,如何选取每一张图像合适的阈值呢?采用主观判定显然不太现实,合理的选择应该是采用一种自适应的阈值计算方法。自适应阈值计算,我主要看了大津法原创 2013-12-26 20:59:50 · 6954 阅读 · 0 评论 -
基于OpenCV的RGB和HSV色彩空间相互转换C++程序
之所以说基于opencv,由于转换程序用到了一些OpenCV函数(imread())及数据类型(uchar)。 OpenCV全称:Open Source Computer Vision Library,开源、免费,很好很强大。帮助文档:http://docs.opencv.org/index.html入门教程:http://www.opencv.org.cn/ope原创 2013-12-22 14:35:31 · 9755 阅读 · 3 评论