今天特别感慨,自己从决定研究图像处理,势必要做出一键修图算法。

经历了,三个多月的书籍积累,三个多月的算法调整以及优化。

人是一种奇怪的动物,当你做不到的时候,你以为做到了,自己会感觉很爽,很有成就感。

而当你做到了,却会觉得也就那么回事。

一开始自己只是很意外性地做到了一种劣质的颜色矫正算法,就觉得自己牛上天了。

再到后来一次又一次改进算法,最后那个最原始的算法,烂到我自己都不好意思说。

仅仅一个颜色的修复我就耗费了四五个月,再到半个月做完智能曝光算法,一切好像就是那么顺理成章,自然而然。

跟大多数人不同的是,我是从一开始就坚持每一个算法都要自己写,自己实现。

包括图像裁剪,图像翻转,图像模糊,图像锐化,图像降噪,图像缩放,PS曲线等等很基础的算法,

我都是自己一句一句敲出来的,在写的过程中,也不记得自己修改了多少次了。

我固执地认为,图像修复是所有图像算法,包括识别分析以及深度学习机器学习等等算法,最基础也是最核心的东西。

因为如果图像能修复到一定的程度,对所有上层算法,绝对是质量的飞跃,例如识别算法,识别准确率必然是提升的。

在这个过程中,最大的感受就是千万不要小看每一个算法,你只要用每一个算法最核心最优秀的思想,就能创造更多更优秀的算法。

至于算法优化其实就是一句话:时空,时间空间,用时间换空间,用空间换时间,如果能两者兼顾则更佳。

所以我自己在写算法的时候,就是时刻考虑内存空间,算法耗时,这非常重要。

昨天看了下自己离职的日期:2015.9.16,时至今日已经半年多了。

半年多的坚持和努力,白发也多了起来,人也憔悴多了。

最近也开始投简历了,在这个过程中也碰到了不少挫折,

主要是没多少人相信我是真的想回企业里踏实成长,

经历了那么多事情,其实也只是希望自己能真正地稳定下来,特别是在图像算法这个领域能有所建树。

这段时间,认识了不少网友,得到了不少网友的认可,自己也尽自己所能,回答一些他们询问我的问题,分享自己的一些心得体会。

也有不少网友热情地邀我去加盟他们,不过说实话,北京,上海,杭州,这几个地方自己就是不太喜欢,最喜欢的还是深圳。

原因很简单,我把深圳图书馆当成了家。

在深圳的那段时间,除了上班,偶尔跟朋友出去,我去得最多的地方就是图书馆。

为了能稳定一点,若非特殊情况,现在我只考虑大公司。

学习是一生的事情,投资自己不会错的。

在珠海金山的时候,每个月,薪水里都有一千多元被我用来买书学习,

在学习这方面我真的不节俭,所以到现在,自己除了一身的能力和知识,也没什么积蓄。

而在深圳,图书馆经常有新书,资料非常全,省去了我很大一部分的开销,这也是为什么我很喜欢深圳这个图书馆城市最大的原因。

我的QQ和微信签名是:

To get where you want to go, you have to know where you are.

不记得什么时候写的,然后一直没再改过,你要去什么地方的前提是,你必须知道你自己现在在哪里。

在学图像算法的过程中,我经常看一些招聘信息,看看企业要求的条件是什么,

自己是不是满足这个条件,如果不满足,排个期,一步一步学起来。

学习以及能力培养,没有捷径,一步一个脚印,踏踏实实,稳稳当当。

虽然到现在,自己很多能力还是没达到标准。

我一直认为,100分只是及格.

所以很多东西还不够好,还有缺陷。

有网友跟我聊,他说他是在学习,而我是在超越。

其实也很正常,只有超越别人,才有核心竞争力。

我把100分当及格分,你把100分当满分,这是非常不一样的。

很多时候,心态要好,傻逼样的去坚持,必有牛逼样的结果。

想想自己最惨的时候,在大学里,5片面包过一天。

现在与那时候相比,已经好太多了。

那些看不起我的人,就让他们看不起呗,与我无关。

前段时间向一个老同事请教,他说他经历跟我有点像,但也有不同。

不过他告诉我最深刻的话就是:

  人太在意别人对自己的看法,而忽略了自己最重要的东西。

要放下执念,稳稳当当地走下去。

一键修图也算是自己最近一段时间的短期目标,从不懂到做出来,也只有自己知道这之间的苦楚。

很多时候,我想做什么事情的时候,都有朋友笑我天真,不自量力。

但是,我是强执行力,行动派,不去做,我不知道自己能做到什么样子,但是要去做。

很多人做事情只停留在想和想去做,而不是立刻去做。

其实失败没那么可怕,失败又不会死,没什么好怕的,如果你连死都不怕,那就更没什么好怕的了。

有不少网友也一直想我分享这个算法,不是我不愿意,是我觉得授人以鱼不如授人以渔,而且自己那么辛苦做出来的东西,真的没那么容易就分享出去。

我不是伟人,我没那么伟大。

这个世界还有很多事情,值得我们用心去做好它。

贴一些一键修图的效果图(图片源自网络)。

原图->效果图。

Demo下载:  

http://files.cnblogs.com/files/tntmonks/%E4%B8%80%E9%94%AE%E4%BF%AE%E5%9B%BE.zip

2016.04.19更新:

优化算法,改进背光图片的修复。

新Demo下载:

http://files.cnblogs.com/files/tntmonks/autotone.zip

(注:可能会被杀毒软件误杀,添加为信任即可)

不少网友在问,我就补充一下这个我这个算法的核心思路是: 拟合曲线

只能说这么多,说破没酒喝。

俺的联系方式如下:

邮箱: gaozhihan@vip.qq.com

QQ:200759103

联系我时请说明来意,不然一律忽略,谢谢。

除了IT技术之外,本人也涉猎了很多其他领域的知识,欢迎大家一起来互相探讨学习。

学习图像算法阶段性总结 (附一键修图Demo) 2016.04.19更新demo的更多相关文章

  1. 学习图像算法阶段性总结 (附一键修图Demo)

    今天特别感慨.自己从决定研究图像处理.势必要做出一键修图算法. 经历了,三个多月的书籍积累,三个多月的算法调整以及优化. 人是一种奇怪的动物.当你做不到的时候,你以为做到了.自己会感觉非常爽,非常有成 ...

  2. (转) 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文)

    本文转自:http://mp.weixin.qq.com/s/aAHbybdbs_GtY8OyU6h5WA 专题 | 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文) 原创 201 ...

  3. 【转载】 第四范式首席科学家杨强:AlphaGo的弱点及迁移学习的应对(附视频)

    原文地址: https://www.jiqizhixin.com/articles/2017-06-02-2 ============================================= ...

  4. 从编程实现角度学习Faster R-CNN(附极简实现)

    https://www.jianshu.com/p/9da1f0756813 从编程实现角度学习Faster R-CNN(附极简实现) GoDeep 关注 2018.03.11 15:51* 字数 5 ...

  5. JPG学习笔记3(附完整代码)

    #topics h2 { background: rgba(43, 102, 149, 1); border-radius: 6px; box-shadow: 0 0 1px rgba(95, 90, ...

  6. Linux Shell编程学习笔记——目录(附笔记资源下载)

    LinuxShell编程学习笔记目录附笔记资源下载 目录(?)[-] 写在前面 第一部分 Shell基础编程 第二部分 Linux Shell高级编程技巧 资源下载 写在前面 最近花了些时间学习She ...

  7. Python爬虫学习记录【内附代码、详细步骤】

    引言: 昨天在网易云课堂自学了<Python网络爬虫实战>,视频链接 老师讲的很清晰,跟着实践一遍就能掌握爬虫基础了,强烈推荐! 另外,在网上看到一位学友整理的课程记录,非常详细,可以优先 ...

  8. ESFramework Demo -- P2P通信Demo(附源码)

    现在我们将在ESFramework Demo -- 文件传送Demo 的基础上,使用ESPlus提供的第四个武器,为其增加P2P通信的功能.在阅读本文之前,请务必先掌握ESFramework 开发手册 ...

  9. Linux学习笔记之秋水BBR一键部署

    0x00 本脚本适用环境 系统支持:CentOS 6+,Debian 7+,Ubuntu 12+内存要求:≥128M 阅读文章时请除手动删出干扰字符“1”.(Shadowsocks) 0x01 关于本 ...

随机推荐

  1. [deviceone开发]-doSpace应用源码开源

    一.简介 这个是我们的一个门户App,能够动态加载示例,查看文档,视频,朋友圈聊天等功能.目前开源供大家参考学习,另外"讨论"里对应的BBS上有详细的文档说明,非常值得大家参考和学 ...

  2. [html5+java]文件异步读取及上传核心代码

    html5+java 文件异步读取及上传关键代码段 功能: 1.多文件文件拖拽上传,file input 多文件选择 2.html5 File Api 异步FormData,blob上传,图片显示 3 ...

  3. 关于web软件信息安全问题资料的整理(四)

    整理出了几点解决方案 1.修护漏洞.对于防护的一方来看,如果先于攻击一方发现Web系统中存在的漏洞,尽早修复它们,就可以防患于未然,获得最低的防护成本.漏洞的修复方式并不是一定要依靠修改网页代码才可以 ...

  4. Android Property Animation动画

    3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三 ...

  5. Git 撤销修改

    Git 撤销修改 增补提交 git commit –C HEAD –a --amend -C表示复用指定提交的提交留言,这个例子中是HEAD,实际上可以指定其他有效的提交名称. 如果参数是小写的-c, ...

  6. Swift使用注意

    二.函数的可选参数 参数名:参数类型? = 默认值 // 调用的时候会发现生成了两个函数,一个带imageName,一个不带,选择不带的,调用此函数时将使用参数值nil convenience ini ...

  7. NSFileManager和NSFileHandler的作用

    NSFileManager类可以管理文件系统中的文件和目录,也可以定位.判断是否存在.创建.拷贝.删除文件和目录,还可以获得文件和目录的信息: 对于读写文件,NSFileManager只可以读写字符串 ...

  8. android 图片加载库 Glide 的使用介绍

    一:简介 在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech.这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会 ...

  9. iOS 获取设备版本型号

    #import "sys/utsname.h" /** *  设备版本 * *  @return e.g. iPhone 5S */+ (NSString*)deviceVersi ...

  10. CodeForce Round#49 untitled (Hdu 5339)

    Untitled Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...