谈谈我学习图像处理的经历与收获

谈谈我学习图像处理的经历与收获

大概是在2011年年底的时候,我在家里整理以前的IT书籍、发现我买的几本图像处理的书,于是我又随手翻了翻,发现自己还是挺感兴趣的,就直接放到书架上了,说实话做Java这么多年了,一直都是做外包,想想自己也没什么拿得出手的竞争力、想想英语没英国人讲的好、工作没年纪轻的加班猛、沟通交流没有文科生那圆滑、还是走技术吧,毕竟自己还做了这么久,想想大学毕业设计是关于图像处理的,于是我又捡了起来、从2012年初、坚持自己研究图像处理、期间也有几次想放弃、想去学学安卓什么的,但是又强迫自己放弃了这些乱七八糟的念头、既然选择了就要坚持到底、死磕到底、墨子有句名言我很赞同,“言不信者行不果、志不强者智不达”意思是什么呢,就是说言而无信的人行动往往没有结果、意志不够坚定的人智力上往往达不到目标。就这样我开始了坚持慢慢的写博客分享我自己的学习图像处理的经历、从简单的像素处理到复杂的各种经典算法、两年多之后我在CSDN的博客上关于图像处理的文章已经超过60篇,

学习图像处理过程也是磨练自己意志、不断自我更新、自我总结的历程。想对那些一直徘徊在图像处理大门之外的人说,学习图像处理,没有你想象中的那么难、那些数学知识也没你看上去那么复杂,有时候只要你稍微有点决心、有点毅力、你就会发现那些看上去很难的各种数学公式在你的努力之下就会土崩瓦解、灰飞烟灭再也无法阻挡你前进的步伐、我结合自己的学习经历,觉得在学习过程中要由浅入深、先易后难、一个一个的攻克那些算法与数学知识,要从基本的像素知识开始学习、边理论学习边实践,古语有云:“纸上得来终觉浅、绝知此事要躬行”,学习二值图像处理、慢慢的过渡到学习距离变化、霍夫变换等知识、进一步学习卷积的基础知识、然后再学习低通滤波与高通滤波、各种算子、去噪、增强等处理、有了这些知识之后就可以过渡到高斯滤波、各种边缘保留算法、图像的插值、旋转、高斯金字塔、拉普拉斯、高斯分差等知识、有了这些知识之后就可以进一步学习图像的各种特征提取,图像分割等知识。在这些基础上就可以去研究一下比较流行的SIFT算法、HOG算法等基于空间域的图像处理的经典算法、同时可以看一看傅立叶变换到频率域尝试各种滤波等处理、看一下图像的模板匹配、识别等比较偏向应用的知识、可以学习一下小波变换等知识、然后就可以选择方向对图像处理中某个应用领域发起一阵猛攻、综合运用所学的各种知识,这个时候就是全面展示你应用图像处理知识,设计图像处理步骤算法的大好机会,继续搞下去,属于你的钱和机会就会从天上掉下来,别紧张,接住就行,因为你已经准备了这么久了,能接住的…

 

研究图像处理以后,发现图像处理相对来说有一定的技术门槛,不是一般技术短平快、很快就可以学会。所以很多时候只要你真的会图像处理,到应用层面,选择什么的语言与库去做不是太大的问题,要知道你学的是图像处理知识、而不是一些API与库的接口编程,学那些真的不要两三年。我研究过imageJ的多数源代码,但是我没看过openCV的,因为c++我不熟悉,我下一步的计划是学习openCV,正如一句话说的好:“君子性非异也善假于物也”。我要做一个快速的图像处理应用开发者。

 

这三年多来,学习图像处理给我带了一些私活收入同时我在2014年的时候收到来自机械工业出版社、华章图书的书约,经过一年多的挑灯夜战,图书已经结稿、通过编辑审核付型了,估计下个月(2015-11)新书会上市跟大家见面。


给初学者的一些建议:

学习图像处理,重要的是算法而非语言,所以建议多关注算法本身,此外,掌握一门编程语言也很重要个人推荐C++或者Java,原因是OpenCV是基于C/C++编写的,是图像处理与机器学习最好开源框架!有了基本图像处理知识以后建议学习OpenCV可以成倍提高开发效率!本人也贡献了两套OpenCV图像处理教程给大家:

《OpenCV图像处理》

《OpenCV For Android基础入门教程》

分别针对C++与Java开发者的OpenCV学习者!希望对大家有所帮助!

你可能感兴趣的:(杂项技巧,图像处理,JAVA)