图像处理有意思的项目

2018-09-06 14:09:07 weixin_42717711 阅读数 12654

首先,搞图像处理,熟悉图像算法是必经之路,如果上过图像处理这门课的话,再好不过。如果没有,我推荐中科院研究生院刘定生老师的数字图像处理与分析(视频),这位老师上课引人入胜,值得推荐。其次,在这个阶段,配套的书籍自然是《冈萨雷斯版数字图像处理》这本书,最好同时用matlab软件,仿真每一个图像算法案例,推荐《matlab宝典》。大概花一个月时间,基本的图像算法,相信你已经学完了。第二阶段,希望你再次认真学习C++,推荐《C++ Primer》,因为以后我们开发程序,都是基于类的开发,什么虚函数,类的继承、多态、命名空间、文件的输入输出、模板STL都应非常熟悉。在这之后,VC++你也应该掌握,圣经级的书籍自然是孙鑫的《VC++深入详解》,大概花一个时间,将书上每一个代码都敲一边,消息的映射机制,尤其要非常熟悉,MFC的框架结构也应明白。在此阶段,有时间的话,看看中科院研究生院杨力祥老师的高级windows程序设计(视频),这些代码开发都是基于VC6.0的。

以上如果你都搞明白了,就进入重头戏了。将图像处理算法和代码结合起来,进行开发。首推北航老师谢凤英,赵主培主编的《Visual C++数字图像处理》这本书,将上面的代码都敲一边,你会有不一样的感觉。

最后一个阶段,因为在实际的开发过程中,不可能每一基本算法都要自己写,前人已经写好了。所以推荐大家使用opencv这个开源库,他实现了大多数图像算法,实际开发中,用他的函数就够了,推荐书籍《学习opencv》,《opencv教程》,视频自然是庞峰老师的视频,大家可以在opencv中文论坛上免费观看。至此,该掌握的工具你已经掌握了,但是将MFC和opencv结合起来开发,最好是要有一个项目,你会理解许多。下面是一些大牛:

第一波是一些资源丰富的博客,有算法介绍,也有代码实现:


1、毕业于荷兰特温特大学的Dirk-Jan Kroon博士,在Mathworks的FileExchange上的链接,曾经到访过他原来读书时的主页,当时有句话对他的评价是,他非常喜欢计算机编程,这个真不假,下面这个链接里有他用Matlab写成的近百个程序源码,质量非常高,而且涉猎广泛。

http://www.mathworks.com/matlabcentral/fileexchange/authors/29180


2、这是研究 image matting(中文叫抠图——这名字真难听,不知道是谁始作俑者)必去的一个网站,里面有大量关于这个主题内容的介绍,包括最新的成果,评测和对比。
http://www.alphamatting.com/


3、laviewpbt的专栏,他有两个基本同步的博客,一个在CSDN,一个在博客园,自称是“一心无二用,本人只专注于基础图像算法的实现与优化,如图像增强、滤镜、分割、解码编码等,无心恋及图像识别。 ”。博客中很少有提供完整的源代码,但是对理论算法的介绍非常到位,我也同意博主的看法,如果真的对算法理解到位了,写代码处理并不是难事。
http://www.cnblogs.com/Imageshop/


4、Rachel Zhang的专栏(浙大计算机女硕士),CSDN博客排名百名以内的名博,里面有大量图像处理和计算机视觉的资料,有算法讲解,也有很多代码实现(OpenCV居多,少量Matlab)
http://blog.csdn.net/abcjennifer/article/category/1173803/2


5、小魏的修行路(又一个女学霸,博主应该是北大女硕士),博客都是图文并茂的,很详细很用心,代码实现上也是用OpenCV的居多。
http://blog.csdn.net/xiaowei_cqu/


6、非常棒的网站,超多资源。IPOL is a research journal of image processing and image analysis. Each article contains a text on an algorithm and its source code。讨论了超过20个大的Topics,具体每个Topics里面还有许多具体的实现分支,配有可供研究的源代码。研究图像处理不可不看的网站。

http://www.ipol.im/

 

7、LIBROW,口号是The Helpful Mathematics,算法文章 && C++代码(算法偏基础),适合初学者参考。

http://www.librow.com/articles

 

8、采石工的博客

数学功底深厚、原理推导明晰的博客。非常值得推荐!

http://www.cnblogs.com/quarryman/

 

第二波是我所关注的一些研究方向上比较前沿的学者主页:

 

1、KAZE特征检测作者的主页,里面有文章,也有代码实现。Pablo F. Alcantarilla博士人非常Nice,我给他写Email讨论问题,基本上8个小时之内就能收到回复,也非常感谢他提供的一些参考资料。

http://www.robesafe.com/personal/pablo.alcantarilla/kaze.html

 

2、在去噪领域中当前最成功的算法莫过于BM3D系列(当然还有BM4D等等),下面这个是项目的主页,非常值得推荐,对于研究降噪问题的同学实在应该仔细看看。

http://www.cs.tut.fi/~foi/GCF-BM3D/

 

3、布朗大学Douglas Lanman博士的主页,很多有意思的成果,部分有代码资源下载
http://mesh.brown.edu/dlanman/courses.html

 

4、两位以色列学者(犹太人)的主页。经验中,大部分Paper的作者会在自己的网站上贴出文章,但很少附有代码,如果你自己去写个代码,很多都无法达到作者paper中给出的效果,吹水的可能性极大。但是在研究Close-form soluting 的图像matting时,看到了以色列女学者Anat Levin的主页,作者就提供有matlab代码,很值得推荐。
http://www.wisdom.weizmann.ac.il/~levina/
另外一个以色列学者(以色列理工的Guy Gilboa教授)的主页(有关于TV去噪的代码)。
http://visl.technion.ac.il/~gilboa/PDE-filt/tv_denoising.html

2014-05-04 19:03:15 guangmingsky 阅读数 4055

最近版上有不少人在讨论图像处理的就业方向,似乎大部分都持悲观的态度。我想结合我今年找工作的经验谈谈我的看法。就我看来,个人觉得图像处理的就业还是不错的。首先可以把图像看成二维、三维或者更高维的信号,从这个意义上来说,图像处理是整个信号处理里面就业形势最好的,因为你不仅要掌握一维信号处理的基本知识,也要掌握图像处理的知识。其次,图像处理是计算机视觉和视频处理的基础,掌握好了图像处理的基本知识,就业时就可以向这些方向发展。目前的模式识别,大部分也都是图像模式识别。在实际应用场合,采集的信息很多都是图像信息,比如指纹、条码、人脸、虹膜、车辆等等。说到应用场合,千万不能忘了医学图像这一块,如果有医学图像处理的背景,去一些医疗器械公司或者医疗软件公司也是不错的选择。图像处理对编程的要求比较高,如果编程很厉害,当然就业也多了一个选择方向,并不一定要局限在图像方向。
下面谈谈我所知道的一些公司信息,不全,仅仅是我所了解到的或者我所感兴趣的,实际远远不止这么多。
搜索方向
基于内容的图像或视频搜索是很多搜索公司研究的热点。要想进入这个领域,必须有很强的编程能力,很好的图像处理和模式识别的背景。要求高待遇自然就不错,目前这方面的代表公司有微软、googleyahoo和百度,个个鼎鼎大名。
医学图像方向
目前在医疗器械方向主要是几大企业在竞争,来头都不小,其中包括西门子、飞利浦和柯达,主要生产CTMRI等医疗器材。由于医疗器械的主要功能是成像,必然涉及到对图像的处理,做图像处理的很有机会进入这些公司。它们在国内都设有研发中心,simens的在上海和深圳,GE和柯达都在上海,飞利浦的在沈阳。由于医疗市场是一个没有完全开发的市场,而一套医疗设备的价格是非常昂贵的,所以在这些地方的待遇都还可以,前景也看好。国内也有一些这样的企业比如深圳安科和迈瑞。
模式识别方向
我没去调研过有哪些公司在做,但肯定不少,比如指纹识别、人脸识别、虹膜识别。还有一个很大的方向是车牌识别,这个我倒是知道有一个公司高德威智能交通似乎做的很不错的样子。目前视频监控是一个热点问题,做跟踪和识别的可以在这个方向找到一席之地。上海法视特位于上海张江高科技园区,在视觉和识别方面做的不错。北京的我也知道两个公司:大恒和凌云,都是以图像作为研发的主体。
视频方向
一般的高校或者研究所侧重在标准的制定和修改以及技术创新方面,而公司则侧重在编码解码的硬件实现方面。一般这些公司要求是熟悉或者精通MPEGH.264或者AVS,选择了这个方向,只要做的还不错,基本就不愁饭碗。由于这不是我所感兴趣的方向,所以这方面的公司的信息我没有收集,但平常在各个论坛或者各种招聘网站经常看到。我所知道的两个公司:诺基亚和pixelworks。


其实一般来说,只要涉及到成像或者图像的基本都要图像处理方面的人。比方说一个成像设备,在输出图像之前需要对原始图像进行增强或者去噪处理,存储时需要对图像进行压缩,成像之后需要对图像内容进行自动分析,这些内容都是图像处理的范畴。下面列举一些与图像有关或者招聘时明确说明需要图像处理方面人才的公司:上海豪威集成电路有限公司、中芯微、摩托罗拉上海研究院、威盛、松下、索尼、清华同方、三星。所有与图像(静止或者运动图像)有关的公司都是一种选择。比如数码相机、显微镜成像、超声成像、工业机器人控制、显示器、电视、遥感等等,都可以作为求职方向。
要求:
1
、外语。如果进外企,外语的重要性不言而喻。一般外企的第一轮面试都是英语口语面试。
2
、编程。这方面尤以C++为重,很多公司的笔试都是考c++知识。
3
、专业水平。如果要找专业相关的工作,研究生期间的研究经历和发表的论文就显的比较重要。
4
、知识面的宽度。我觉得在研究生期间,除了做好自己的研究方向之外,扩宽一下知识面也有很大的帮助,当然这个知识面指的是图像处理、计算机视觉和模式识别,知识面越宽,就业时的选择就会越多。
图像处理方向毕业的就业面非常广,而且待遇在应届生应该是中上等。其实还是一句话,能力决定一切。只要研究生三年没有白过,根本不愁找不到好工作。祝所有正在读研或者即将读研的朋友将来都能有一份满意的工作。
我说点不好的,版主的说法我同意都是正面的,反面的来说:现在大学和研究机构做图象的越来越多了,这里面老板自己懂图象的不知道有多少?!老板不懂,影响还是很大的。多数做图象的是用MATLAB,用别人的代码。在研究生三年学好C++毕业的有多少?在公司C++是重要的。图象其实就是信号处理,除了本科是学信号的以外,信号与系统、数字信号处理是一定要学好的,那相应的数学方面的概率,多元统计,甚至泛函也要了解。外语的基本要求是看懂英文文献(不一定全看懂),相应的英文书。去外企做研发,这是必备的。然后是口语和听力。说这些不是波冷水,希望大家了解清楚。
Compared to the number of jobs available each year in the imaging soceity, the people who are majoring on it are way too much. I have to say most of the people who studied the this area were not end up with working on this area anymore.
The most important thing here is to understand image processing, it requires a broad level of knowledge including, some math (algrebra, statistics, PDE), dsp, pattern recognition, programming skills...
It is all these background skills will find you a job, so prepare to have a deep understanding on all these areas related to image processing
我也是学模式识别的,但是研究方向是遥感图像处理和识别.总的来说这个方向是比较专,但也是目前图像处理中比较难做的一个方向,因为遥感图像的复杂性超过我们所见过的任何图像.
其实谈到就业问题,我觉得如果研究方向比较适合,特别是读研期间能到斑竹谈的那些牛比的公司实习,了解企业真正需要的方向可能做起来有目标性.
顺便提下:高德威公司还是不要考虑,因为本人在毕业面试过程中,虽然面试的人力资源人员很友善,但是通过他们老板写的一些文章可以发现他们还是一个比较自恋和自大的公司.
楼主是好人,不过此文更多是安慰,新手不可太当真
衡量专业好坏的标准有两个:应用前景和技术门槛。个人觉得图像处理应用前景一般,比通信,计算机差远了,而技术门槛,相信不是新手都清楚,比微波之类低不少。总的来说图像方向就业一般,it业算较冷得,特别是模式识别,人工智能之类,看起来高深邪乎,其实就是博士都不好找工作(亲身所见)

1)说到图像处理比通信差,很大部分的原因是当前行业背景,但通信真正的研发在中国又有多少,我的朋友中很多做工程的,况且现在在通信领域,很大的一个难点,也是多媒体通信。
2
)说到比计算机差,我觉得这与你怎么看待计算机专业有关,有人觉得是基础,是工具,有人觉得是专业。况且计算机那边,现在研究图像的也不少。
3
)再者,说微波,RFID等入门难,但要做精又谈何容易,而且兴趣真的很重要,没有兴趣,再有前景的专业,你也不一定能做好,还有女生并不适合搞这个,就业时,单位一般会暗示。另外,就业面也较窄,好公司真的难进,找工的时候,真的很郁闷,特别对女生。或许将来很大发展前途,这个另当别论。
4
)说回图像处理,我觉得还是较中肯的,略有好的嫌疑,关键还是在读研的时候能把方向做宽。一般做图像处理,需要何模式识别等相结合,拓宽知识面是必要的,在真正做研究的时候,也发现是必须的。研究点做深入,注重实现能力、创新能力和学习能力,通过论文多培养自己的材料组织提炼能力,锻炼逻辑思维。如果真的能做到三年光阴不虚度,找工应该不是问题,到时真正要考虑的是定位问题。
5
)当然,最后,找工的时候,包装是一种技巧,整合是一种需要。
我觉得做图像处理还是很有前途的。

 

作图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的出版物(阅读上面最新的文献),解决第二个问题的办法是你最好能够找到一个实际应用的项目,边做边写文章。

做好这几点的途径之一就是充分利用网络资源,特别是权威网站和大拿们的个人主页。下面是我收集的一些资源,希望对大家有用。(这里我要感谢SMTH AI版的alamarik和Graphics版的faintt)

导航栏: [1]研究群体、[2]大拿主页、[3]前沿期刊、[4]GPL软件资源、[5]搜索引擎。

一、研究群体
http://www-2.cs.cmu.edu/~cil/vision.html
这是卡奈基梅隆大学的计算机视觉研究组的主页,上面提供很全的资料,从发表文章的下载到演示程序、测试图像、常用链接、相关软硬件,甚至还有一个搜索引擎。

http://www.cmis.csiro.au/IAP/zimage.htm
这是一个侧重图像分析的站点,一般。但是提供一个Image Analysis环境---ZIMAGE and SZIMAGE。

http://www.via.cornell.edu/
康奈尔大学的计算机视觉和图像分析研究组,好像是电子和计算机工程系的。侧重医学方面的研究,但是在上面有相当不错资源,关键是它正在建设中,能够跟踪一些信息。

http://www2.parc.com/istl/groups/did/didoverview.shtml
有一个很有意思的项目:DID(文档图像解码)。

http://www-cs-students.stanford.edu/
斯坦福大学计算机系主页,自己找吧:(

http://www.fmrib.ox.ac.uk/analysis/
主要研究:Brain Extraction Tool,Nonlinear noise reduction,Linear Image Registration,

Automated Segmentation,Structural brain change analysis,motion correction,etc.

http://www.cse.msu.edu/prip/
这是密歇根州立大学计算机和电子工程系的模式识别--图像处理研究组,它的FTP上有许多的文章(NEW)。

http://pandora.inf.uni-jena.de/p/e/index.html
德国的一个数字图像处理研究小组,在其上面能找到一些不错的链接资源。

http://www-staff.it.uts.edu.au/~sean/CVCC.dir/home.html
CVIP(used to be CVCC for Computer Vision and Cluster Computing) is a research group focusing on cluster-based computer vision within the Spiral Architecture.

http://cfia.gmu.edu/
The mission of the Center for Image Analysis is to foster multi-disciplinary research in image, multimedia and related technologies by establishing links

between academic institutes, industry and government agencies, and to transfer key technologies to

help industry build next

generation commercial and military imaging and multimedia systems.

http://peipa.essex.ac.uk/info/groups.html
可以通过它来搜索全世界各地的知名的计算机视觉研究组(CV Groups),极力推荐。

二、图像处理GPL库
http://www.ph.tn.tudelft.nl/~klamer/cppima.html
Cppima 是一个图像处理的C++函数库。这里有一个较全面介绍它的库函数的文档,当然你也可以下载压缩的GZIP包,里面包含TexInfo格式的文档。

http://iraf.noao.edu/
Welcome to the IRAF Homepage! IRAF is the Image Reduction and Analysis Facility, a general purpose software

system for the reduction and analysis of astronomical data.

http://entropy.brni-jhu.org/tnimage.html
一个非常不错的Unix系统的图像处理工具,看看它的截图。你可以在此基础上构建自己的专用图像处理工具包。

http://sourceforge.net/projects/
这是GPL软件集散地,到这里找你想要得到的IP库吧。

三、搜索资源
当然这里基本的搜索引擎还是必须要依靠的,比如Google等,可以到我常用的链接看看。下面的链接可能会节省你一些时间:

http://sal.kachinatech.com/
http://cheminfo.pku.edu.cn/mirrors/SAL/index.shtml
四、大拿网页
http://www.ai.mit.edu/people/wtf/
这位可是MIT人工智能实验室的BILL FREEMAN。大名鼎鼎!专长是:理解--贝叶斯模型。

http://www.merl.com/people/brand/
MERL(Mitsubishi Electric Research Laboratory)中的擅长“Style Machine”高手。

http://research.microsoft.com/~ablake/
CV界极有声望的A.Blake 1977年毕业于剑桥大学三一学院并或数学与电子科学学士学位。之后在MIT,Edinburgh,Oxford先后组建过研究小组并成为Oxford的教授,直到1999年进入微软剑桥研究中心。主要工作领域是计算机视觉。

http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/har/Web/home.html
这位牛人好像正在学习汉语,并且搜集了诸如“两只老虎(Two Tigers)”的歌曲,嘿嘿:)
他的主页上面还有几个牛:Shumeet Baluja, Takeo Kanade。他们的Face Detection作的绝对是世界一流。他毕业于卡奈基梅隆大学的计算机科学系,兴趣是计算机视觉。

http://www.ifp.uiuc.edu/yrui_ifp_home/html/huang_frame.html
这位老牛在1963年就获得了MIT的博士学位!他领导的Image Lab比较出名的是指纹识别。

五、前沿期刊(TOP10)
这里的期刊大部分都可以通过上面的大拿们的主页间接找到,在这列出主要是为了节省直接想找期刊投稿的兄弟的时间:)

IEEE Trans. On PAMIhttp://www.computer.org/tpami/index.htm
IEEE Transactionson Image Processing http://www.ieee.org/organizations/pubs/transactions/tip.htm
Pattern Recognition http://www.elsevier.com/locate/issn/00313203
Pattern Recognition Letters http://www.elsevier.com/locate/issn/01678655

2019-06-26 13:39:59 weixin_42572978 阅读数 728

首先你不仅要掌握(一维)信号处理的基本知识,也要掌握图像处理(二维或者高维信号处理)的知识。其次,图像处理是计算机视觉和视频处理的基础,掌握好了图像处理的基本知识,就业时就可以向这些方向发展。目前的模式识别,大部分也都是图像模式识别。在实际应用场合,采集的信息很多都是图像信息,比如指纹、条码、人脸、虹膜、车辆等等。说到应用场合,千万不能忘了医学图像这一块,如果有医学图像处理的背景,去一些医疗器械公司或者医疗软件公司也是不错的选择

搜索方向

基于内容的图像或视频搜索是很多搜索公司研究的热点。要想进入这个领域,必须有很强的编程能力,很好的图像处理和模式识别的背景。要求高待遇自然就不错,目前这方面的代表公司有微软、google、yahoo和百度,个个鼎鼎大名。

医学图像方向

目前在医疗器械方向主要是几个大企业在竞争,来头都不小,其中包括Simens、GE、飞利浦和柯达,主要生产CT和MRI等医疗器材。由于医疗器械的主要功能是成像,必然涉及到对图像的处理,做图像处理的很有机会进入这些公司。它们在国内都设有研发中心,simens的在上海和深圳,GE和柯达都在上海,飞利浦的在沈阳。由于医疗市场是一个没有完全开发的市场,而一套医疗设备的价格是非常昂贵的,所以在这些地方的待遇都还可以,前景也看好。国内也有一些这样的企业比如深圳安科和迈瑞

计算机视觉和模式识别方向

我没去调研过有哪些公司在做,但肯定不少,比如指纹识别、人脸识别、虹膜识别。还有一个很大的方向是车牌识别,这个我倒是知道有一个公司高德威智能交通似乎做的很不错的样子。目前视频监控是一个热点问题,做跟踪和识别的可以在这个方向找到一席之地。
上海法视特位于上海张江高科技园区,在视觉和识别方面做的不错。北京的我也知道两个公司:大恒和凌云,都是以图像作为研发的主体。

视频方向

一般的高校或者研究所侧重在标准的制定和修改以及技术创新方面,而公司则侧重在编码解码的硬件实现方面。一般这些公司要求是熟悉或者精通MPEG、H.264或者AVS,选择了这个方向,只要做的还不错,基本就不愁饭碗。由于这不是我所感兴趣的方向,所以这方面的公司的信息我没有收集,但平常在各个bbs或者各种招聘网站经常看到。
我所知道的两个公司:诺基亚和pixelworks


其实一般来说,只要涉及到成像或者图像的基本都要图像处理方面的人。比方说一个成像设备,在输出图像之前需要对原始图像进行增强或者去噪处理,存储时需要对图像进行压缩,成像之后需要对图像内容进行自动分析,这些内容都是图像处理的范畴。下面列举一些与图像有关或者招聘时明确说明需要图像处理方面人才的公司:上海豪威集成电路有限公司(www.ovt.com.cn)、中芯微、摩托罗拉上海研究院、威盛(VIA)、松下、索尼、清华同方、三星。

所有与图像(静止或者运动图像)有关的公司都是一种选择。比如数码相机、显微镜成像、超声成像、工业机器人控制、显示器、电视、遥感等等,都可以作为求职方向。

要求:

1、外语。如果进外企,外语的重要性不言而喻。一般外企的第一轮面试都是英语口语面试。
2、编程。这方面尤以C++为重,很多公司的笔试都是考c++知识。
3、专业水平。如果要找专业相关的工作,研究生期间的研究经历和发表的论文就显的比较重要
4、知识面的宽度。我觉得在研究生期间,除了做好自己的研究方向之外,扩宽一下知识面也有很大的帮助,当然这个知识面指的是图像处理、计算机视觉和模式识别,知识面越宽,就业时的选择就会越多
图像处理方向毕业的就业面非常广,而且待遇在应届生应该是中上等。其实还是一句话,能力决定一切。只要研究生三年没有白过,根本不愁找不到好工作。祝所有正在读研或者即将读研的朋友将来都能有一份满意的工作。
我说点不好的 呵呵 版主的说法我同意 都是正面的


图象其实就是信号处理,除了,信号与系统、数字信号处理是一定要学好的,那相应的数学方面的概率,多元统计,甚至泛函也要了解。


其实谈到就业问题,我觉得如果研究方向比较适合,特别是读研期间能到斑竹谈的那些牛比的公司实习,了解企业真正需要的方向可能做起来有目标性.

4)说回图像处理,我觉得还是较中肯的,略有好的嫌疑,关键还是在读研的时候能把方向做宽(一般做图像处理,需要和模式识别等相结合,拓宽知识面是必要的,在真正做研究的时候,也发现是必须的),研究点做深入,注重实现能力、创新能力和学习能力,通过论文。多培养自己的材料组织提炼能力,锻炼逻辑思维。

作图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的出版物(阅读上面最新的文献),解决第二个问题的办法是你最好能够找到一个实际应用的项目,边做边写文章。

一、研究群体
http://www-2.cs.cmu.edu/~cil/vision.html
这是卡奈基梅隆大学的计算机视觉研究组的主页,上面提供很全的资料,从发表文章的下载到演示程序、测试图像、常用链接、相关软硬件,甚至还有一个搜索引擎。

http://www.cmis.csiro.au/IAP/zimage.htm 
这是一个侧重图像分析的站点,一般。但是提供一个Image Analysis环境---ZIMAGE and SZIMAGE。

http://www.via.cornell.edu/
康奈尔大学的计算机视觉和图像分析研究组,好像是电子和计算机工程系的。侧重医学方面的研究,但是在上面有相当不错资源,关键是它正在建设中,能够跟踪一些信息。

http://www2.parc.com/istl/groups/did/didoverview.shtml
有一个很有意思的项目:DID(文档图像解码)。

http://www-cs-students.stanford.edu/
斯坦福大学计算机系主页,自己找吧:(

http://www.fmrib.ox.ac.uk/analysis/
主要研究:Brain Extraction Tool,Nonlinear noise reduction,Linear Image Registration,

Automated Segmentation,Structural brain change analysis,motion correction,etc.

http://www.cse.msu.edu/prip/
这是密歇根州立大学计算机和电子工程系的模式识别--图像处理研究组,它的FTP上有许多的文章(NEW)。

http://pandora.inf.uni-jena.de/p/e/index.html
德国的一个数字图像处理研究小组,在其上面能找到一些不错的链接资源。

http://www-staff.it.uts.edu.au/~sean/CVCC.dir/home.html 
CVIP(used to be CVCC for Computer Vision and Cluster Computing) is a research group focusing on cluster-based computer vision within the Spiral Architecture.

http://cfia.gmu.edu/
The mission of the Center for Image Analysis is to foster multi-disciplinary research in image, multimedia and related technologies by establishing links

between academic institutes, industry and government agencies, and to transfer key technologies to

help industry build next

generation commercial and military imaging and multimedia systems.

http://peipa.essex.ac.uk/info/groups.html 
可以通过它来搜索全世界各地的知名的计算机视觉研究组(CV Groups),极力推荐。

二、图像处理GPL库
http://www.ph.tn.tudelft.nl/~klamer/cppima.html
Cppima 是一个图像处理的C++函数库。这里有一个较全面介绍它的库函数的文档,当然你也可以下载压缩的GZIP包,里面包含TexInfo格式的文档。

http://iraf.noao.edu/
Welcome to the IRAF Homepage! IRAF is the Image Reduction and Analysis Facility, a general purpose software

system for the reduction and analysis of astronomical data.

http://entropy.brni-jhu.org/tnimage.html 
一个非常不错的Unix系统的图像处理工具,看看它的截图。你可以在此基础上构建自己的专用图像处理工具包。

http://sourceforge.net/projects/
这是GPL软件集散地,到这里找你想要得到的IP库吧。

三、搜索资源
当然这里基本的搜索引擎还是必须要依靠的,比如Google等,可以到我常用的链接看看。下面的链接可能会节省你一些时间:

http://sal.kachinatech.com/
http://cheminfo.pku.edu.cn/mirrors/SAL/index.shtml
四、大拿网页
http://www.ai.mit.edu/people/wtf/
这位可是MIT人工智能实验室的BILL FREEMAN。大名鼎鼎!专长是:理解--贝叶斯模型。

http://www.merl.com/people/brand/
MERL(Mitsubishi Electric Research Laboratory)中的擅长“Style Machine”高手。

http://research.microsoft.com/~ablake/
CV界极有声望的A.Blake 1977年毕业于剑桥大学三一学院并或数学与电子科学学士学位。之后在MIT,Edinburgh,Oxford先后组建过研究小组并成为Oxford的教授,直到1999年进入微软剑桥研究中心。主要工作领域是计算机视觉。

http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/har/Web/home.html 
这位牛人好像正在学习汉语,并且搜集了诸如“两只老虎(Two Tigers)”的歌曲,嘿嘿:)
他的主页上面还有几个牛:Shumeet Baluja, Takeo Kanade。他们的Face Detection作的绝对是世界一流。他毕业于卡奈基梅隆大学的计算机科学系,兴趣是计算机视觉。

http://www.ifp.uiuc.edu/yrui_ifp_home/html/huang_frame.html
这位老牛在1963年就获得了MIT的博士学位!他领导的Image Lab比较出名的是指纹识别。

--------------------------------------------------------------------------------

下面这些是我搜集的牛群(大部分是如日中天的Ph.D们),可以学习的是他们的Study Ways!

Finn Lindgren(Sweden):Statistical image analysis http://www.maths.lth.se/matstat/staff/finn/
Pavel Paclik(Prague):statistical pattern recognition http://www.ph.tn.tudelft.nl/~pavel/
Dr. Mark Burge:machine learning and graph theory http://cs.armstrong.edu/burge/
yalin Wang:Document Image Analysis http://students.washington.edu/~ylwang/
Geir Storvik: Image analysis http://www.math.uio.no/~geirs/
Heidorn http://alexia.lis.uiuc.edu/~heidorn/
Joakim Lindblad:Digital Image Cytometry http://www.cb.uu.se/~joakim/index_eng.html
S.Lavirotte: http://www-sop.inria.fr/cafe/Stephane.Lavirotte/
Sporring:scale-space techniques http://www.lab3d.odont.ku.dk/~sporring/
Mark Jenkinson:Reduction of MR Artefacts http://www.fmrib.ox.ac.uk/~mark/
Justin K. Romberg:digital signal processing http://www-dsp.rice.edu/~jrom/
Fauqueur:Image retrieval by regions of interest http://www-rocq.inria.fr/~fauqueur/
James J. Nolan:Computer Vision http://cs.gmu.edu/~jnolan/
Daniel X. Pape:Information http://www.bucho.org/~dpape/
Drew Pilant:remote sensing technology http://www.geo.mtu.edu/~anpilant/index.html

五、前沿期刊(TOP10)
这里的期刊大部分都可以通过上面的大拿们的主页间接找到,在这列出主要是为了节省直接想找期刊投稿的兄弟的时间:)

IEEE Trans. On PAMI http://www.computer.org/tpami/index.htm
IEEE Transactionson Image Processing http://www.ieee.org/organizations/pubs/transactions/tip.htm
Pattern Recognition http://www.elsevier.com/locate/issn/00313203
Pattern Recognition Letters http://www.elsevier.com/locate/issn/01678655

 

神经网络

Neural Networks Tutorial Review 
http://hem.hj.se/~de96klda/NeuralNetworks.htm 
ftp://ftp.sas.com/pub/neural/FAQ.html


Image Compression with Neural Networks 
http://www.comp.glam.ac.uk/digimaging/neural.htm


Backpropagator's Review 
http://www.dontveter.com/bpr/bpr.html


Bibliographies on Neural Networks 
http://liinwww.ira.uka.de/bibliography/Neural/


Intelligent Motion Control with an Artificial Cerebellum 
http://www.q12.org/phd.html


Kernel Machines 
http://www.kernel-machines.org/


Some Neural Networks Research Organizations 
http://www.ieee.org/nnc/ 
http://www.inns.org/


Neural Network Modeling in Vision Research 
http://www.rybak-et-al.net/nisms.html


Neural Networks and Machine Learning 
http://learning.cs.toronto.edu/


Neural Application Software 
http://attrasoft.com


Neural Network Toolbox for MATLAB 
http://www.mathworks.com/products/neuralnet/


Netlab Software 
http://www.ncrg.aston.ac.uk/netlab/


Kunama Systems Limited 
http://www.kunama.co.uk/

 

Computer Vision

Computer Vision Homepage, Carnegie Mellon University
www.cs.cmu.edu/~cil/vision.html

Annotated Computer Vision Bibliography 
http://iris.usc.edu/Vision-Notes/bibliography/contents.html 
http://iris.usc.edu/Vision-Notes/rosenfeld/contents.html

Lawrence Berkeley National Lab Computer Vision and Robotics Applications 
http://www-itg.lbl.gov/ITG.hm.pg.docs/VISIon/vision.html

CVonline by University of Edinburgh 
The Evolving, Distributed, Non-Proprietary, On-Line Compendium of Computer Vision, www.dai.ed.ac.uk/CVonline

Computer Vision Handbook, www.cs.hmc.edu/~fleck/computer-vision-handbook

Vision Systems Courseware 
www.cs.cf.ac.uk/Dave/Vision_lecture/Vision_lecture_caller.html

Research Activities in Computer Vision 
http://www-syntim.inria.fr/syntim/analyse/index-eng.html

Vision Systems Acronyms 
www.vision-systems-design.com/vsd/archive/acronyms.html

Dictionary of Terms in Human and Animal Vision 
http://cns-web.bu.edu/pub/laliden/WWW/Visionary/Visionary.html

Metrology based on Computer Vision 
www.cranfield.ac.uk/sme/amac/research/metrology/metrology.html

Digital Photography

Digital Photography, Scanning, and Image Processing 
www.dbusch.com/scanners/scanners.html

 

Educational Resources, Universities

Center for Image Processing in Education 
www.cipe.com 
Library of Congress Call Numbers Related to Imaging Science by Rochester Institute of Technology 
http://wally2.rit.edu/pubs/guides/imagingcall.html

Mathematical Experiences through Image Processing, University of Washington 
www.cs.washington.edu/research/metip/metip.html

Vismod Tech Reports and Publications, MIT 
http://vismod.www.media.mit.edu/cgi-bin/tr_pagemaker

Vision Lab PhD dissertation list, University of Antwerp 
http://wcc.ruca.ua.ac.be/~visielab/theses.html

INRIA (France) Research Projects: Human-Computer Interaction, Image Processing, Data Management, Knowledge Systems 
www.inria.fr/Themes/Theme3-eng.html

Image Processing Resources 
http://eleceng.ukc.ac.uk/~rls3/Contents.htm

Publications of Carsten Steger 
http://www9.informatik.tu-muenchen.de/people/steger/publications.html

FAQs

comp.dsp FAQ 
www.bdti.com/faq/dsp_faq.htm 
Robotics FAQ 
www.frc.ri.cmu.edu/robotics-faq

Where's the sci.image.processing FAQ? 
www.cc.iastate.edu/olc_answers/packages/graphics/sci.image.processing.faq.html

comp.graphics.algorithms FAQ, Section 3, 2D Image/Pixel Computations 
www.exaflop.org/docs/cgafaq

Astronomical Image Processing System FAQ 
www.cv.nrao.edu/aips/aips_faq.html

2015-10-30 22:10:00 cafucwxy 阅读数 26070
2010-10-23 22:42 19465人阅读 评论(10) 收藏 举报

最近版上有不少人在讨论图像处理的就业方向,似乎大部分都持悲观的态度。我想结合我今年找工作的经验谈谈我的看法。就我看来,个人觉得图像处理的就业还是不错的。首先可以把图像看成二维、三维或者更高维的信号,从这个意义上来说,图像处理是整个信号处理里面就业形势最好的,因为你不仅要掌握一维信号处理的基本知识,也要掌握图像处理的知识。其次,图像处理是计算机视觉和视频处理的基础,掌握好了图像处理的基本知识,就业时就可以向这些方向发展。目前的模式识别,大部分也都是图像模式识别。在实际应用场合,采集的信息很多都是图像信息,比如指纹、条码、人脸、虹膜、车辆等等。说到应用场合,千万不能忘了医学图像这一块,如果有医学图像处理的背景,去一些医疗器械公司或者医疗软件公司也是不错的选择。图像处理对编程的要求比较高,如果编程很厉害,当然就业也多了一个选择方向,并不一定要局限在图像方向。
下面谈谈我所知道的一些公司信息,不全,仅仅是我所了解到的或者我所感兴趣的,实际远远不止这么多。
搜索方向
基于内容的图像或视频搜索是很多搜索公司研究的热点。要想进入这个领域,必须有很强的编程能力,很好的图像处理和模式识别的背景。要求高待遇自然就不错,目前这方面的代表公司有微软、googleyahoo和百度,个个鼎鼎大名。
医学图像方向
目前在医疗器械方向主要是几大企业在竞争,来头都不小,其中包括西门子、飞利浦和柯达,主要生产CTMRI等医疗器材。由于医疗器械的主要功能是成像,必然涉及到对图像的处理,做图像处理的很有机会进入这些公司。它们在国内都设有研发中心,simens的在上海和深圳,GE和柯达都在上海,飞利浦的在沈阳。由于医疗市场是一个没有完全开发的市场,而一套医疗设备的价格是非常昂贵的,所以在这些地方的待遇都还可以,前景也看好。国内也有一些这样的企业比如深圳安科和迈瑞。
模式识别方向
我没去调研过有哪些公司在做,但肯定不少,比如指纹识别、人脸识别、虹膜识别。还有一个很大的方向是车牌识别,这个我倒是知道有一个公司高德威智能交通似乎做的很不错的样子。目前视频监控是一个热点问题,做跟踪和识别的可以在这个方向找到一席之地。上海法视特位于上海张江高科技园区,在视觉和识别方面做的不错。北京的我也知道两个公司:大恒和凌云,都是以图像作为研发的主体。
视频方向
一般的高校或者研究所侧重在标准的制定和修改以及技术创新方面,而公司则侧重在编码解码的硬件实现方面。一般这些公司要求是熟悉或者精通MPEGH.264或者AVS,选择了这个方向,只要做的还不错,基本就不愁饭碗。由于这不是我所感兴趣的方向,所以这方面的公司的信息我没有收集,但平常在各个论坛或者各种招聘网站经常看到。我所知道的两个公司:诺基亚和pixelworks。


其实一般来说,只要涉及到成像或者图像的基本都要图像处理方面的人。比方说一个成像设备,在输出图像之前需要对原始图像进行增强或者去噪处理,存储时需要对图像进行压缩,成像之后需要对图像内容进行自动分析,这些内容都是图像处理的范畴。下面列举一些与图像有关或者招聘时明确说明需要图像处理方面人才的公司:上海豪威集成电路有限公司、中芯微、摩托罗拉上海研究院、威盛、松下、索尼、清华同方、三星。所有与图像(静止或者运动图像)有关的公司都是一种选择。比如数码相机、显微镜成像、超声成像、工业机器人控制、显示器、电视、遥感等等,都可以作为求职方向。
要求:
1
、外语。如果进外企,外语的重要性不言而喻。一般外企的第一轮面试都是英语口语面试。
2
、编程。这方面尤以C++为重,很多公司的笔试都是考c++知识。
3
、专业水平。如果要找专业相关的工作,研究生期间的研究经历和发表的论文就显的比较重要。
4
、知识面的宽度。我觉得在研究生期间,除了做好自己的研究方向之外,扩宽一下知识面也有很大的帮助,当然这个知识面指的是图像处理、计算机视觉和模式识别,知识面越宽,就业时的选择就会越多。
图像处理方向毕业的就业面非常广,而且待遇在应届生应该是中上等。其实还是一句话,能力决定一切。只要研究生三年没有白过,根本不愁找不到好工作。祝所有正在读研或者即将读研的朋友将来都能有一份满意的工作。
我说点不好的,版主的说法我同意都是正面的,反面的来说:现在大学和研究机构做图象的越来越多了,这里面老板自己懂图象的不知道有多少?!老板不懂,影响还是很大的。多数做图象的是用MATLAB,用别人的代码。在研究生三年学好C++毕业的有多少?在公司C++是重要的。图象其实就是信号处理,除了本科是学信号的以外,信号与系统、数字信号处理是一定要学好的,那相应的数学方面的概率,多元统计,甚至泛函也要了解。外语的基本要求是看懂英文文献(不一定全看懂),相应的英文书。去外企做研发,这是必备的。然后是口语和听力。说这些不是波冷水,希望大家了解清楚。
Compared to the number of jobs available each year in the imaging soceity, the people who are majoring on it are way too much. I have to say most of the people who studied the this area were not end up with working on this area anymore.
The most important thing here is to understand image processing, it requires a broad level of knowledge including, some math (algrebra, statistics, PDE), dsp, pattern recognition, programming skills...
It is all these background skills will find you a job, so prepare to have a deep understanding on all these areas related to image processing
我也是学模式识别的,但是研究方向是遥感图像处理和识别.总的来说这个方向是比较专,但也是目前图像处理中比较难做的一个方向,因为遥感图像的复杂性超过我们所见过的任何图像.
其实谈到就业问题,我觉得如果研究方向比较适合,特别是读研期间能到斑竹谈的那些牛比的公司实习,了解企业真正需要的方向可能做起来有目标性.
顺便提下:高德威公司还是不要考虑,因为本人在毕业面试过程中,虽然面试的人力资源人员很友善,但是通过他们老板写的一些文章可以发现他们还是一个比较自恋和自大的公司.
楼主是好人,不过此文更多是安慰,新手不可太当真
衡量专业好坏的标准有两个:应用前景和技术门槛。个人觉得图像处理应用前景一般,比通信,计算机差远了,而技术门槛,相信不是新手都清楚,比微波之类低不少。总的来说图像方向就业一般,it业算较冷得,特别是模式识别,人工智能之类,看起来高深邪乎,其实就是博士都不好找工作(亲身所见)

1)说到图像处理比通信差,很大部分的原因是当前行业背景,但通信真正的研发在中国又有多少,我的朋友中很多做工程的,况且现在在通信领域,很大的一个难点,也是多媒体通信。
2
)说到比计算机差,我觉得这与你怎么看待计算机专业有关,有人觉得是基础,是工具,有人觉得是专业。况且计算机那边,现在研究图像的也不少。
3
)再者,说微波,RFID等入门难,但要做精又谈何容易,而且兴趣真的很重要,没有兴趣,再有前景的专业,你也不一定能做好,还有女生并不适合搞这个,就业时,单位一般会暗示。另外,就业面也较窄,好公司真的难进,找工的时候,真的很郁闷,特别对女生。或许将来很大发展前途,这个另当别论。
4
)说回图像处理,我觉得还是较中肯的,略有好的嫌疑,关键还是在读研的时候能把方向做宽。一般做图像处理,需要何模式识别等相结合,拓宽知识面是必要的,在真正做研究的时候,也发现是必须的。研究点做深入,注重实现能力、创新能力和学习能力,通过论文多培养自己的材料组织提炼能力,锻炼逻辑思维。如果真的能做到三年光阴不虚度,找工应该不是问题,到时真正要考虑的是定位问题。
5
)当然,最后,找工的时候,包装是一种技巧,整合是一种需要。
我觉得做图像处理还是很有前途的。

 

作图像处理方面的研究工作,最重要的两个问题:其一是要把握住国际上最前沿的内容;其二是所作工作要具备很高的实用背景。解决第一个问题的办法就是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的出版物(阅读上面最新的文献),解决第二个问题的办法是你最好能够找到一个实际应用的项目,边做边写文章。

做好这几点的途径之一就是充分利用网络资源,特别是权威网站和大拿们的个人主页。下面是我收集的一些资源,希望对大家有用。(这里我要感谢SMTH AI版的alamarik和Graphics版的faintt)

导航栏: [1]研究群体、[2]大拿主页、[3]前沿期刊、[4]GPL软件资源、[5]搜索引擎。

一、研究群体
http://www-2.cs.cmu.edu/~cil/vision.html
这是卡奈基梅隆大学的计算机视觉研究组的主页,上面提供很全的资料,从发表文章的下载到演示程序、测试图像、常用链接、相关软硬件,甚至还有一个搜索引擎。

http://www.cmis.csiro.au/IAP/zimage.htm
这是一个侧重图像分析的站点,一般。但是提供一个Image Analysis环境---ZIMAGE and SZIMAGE。

http://www.via.cornell.edu/
康奈尔大学的计算机视觉和图像分析研究组,好像是电子和计算机工程系的。侧重医学方面的研究,但是在上面有相当不错资源,关键是它正在建设中,能够跟踪一些信息。

http://www2.parc.com/istl/groups/did/didoverview.shtml
有一个很有意思的项目:DID(文档图像解码)。

http://www-cs-students.stanford.edu/
斯坦福大学计算机系主页,自己找吧:(

http://www.fmrib.ox.ac.uk/analysis/
主要研究:Brain Extraction Tool,Nonlinear noise reduction,Linear Image Registration,

Automated Segmentation,Structural brain change analysis,motion correction,etc.

http://www.cse.msu.edu/prip/
这是密歇根州立大学计算机和电子工程系的模式识别--图像处理研究组,它的FTP上有许多的文章(NEW)。

http://pandora.inf.uni-jena.de/p/e/index.html
德国的一个数字图像处理研究小组,在其上面能找到一些不错的链接资源。

http://www-staff.it.uts.edu.au/~sean/CVCC.dir/home.html
CVIP(used to be CVCC for Computer Vision and Cluster Computing) is a research group focusing on cluster-based computer vision within the Spiral Architecture.

http://cfia.gmu.edu/
The mission of the Center for Image Analysis is to foster multi-disciplinary research in image, multimedia and related technologies by establishing links

between academic institutes, industry and government agencies, and to transfer key technologies to

help industry build next

generation commercial and military imaging and multimedia systems.

http://peipa.essex.ac.uk/info/groups.html
可以通过它来搜索全世界各地的知名的计算机视觉研究组(CV Groups),极力推荐。

二、图像处理GPL
http://www.ph.tn.tudelft.nl/~klamer/cppima.html
Cppima 是一个图像处理的C++函数库。这里有一个较全面介绍它的库函数的文档,当然你也可以下载压缩的GZIP包,里面包含TexInfo格式的文档。

http://iraf.noao.edu/
Welcome to the IRAF Homepage! IRAF is the Image Reduction and Analysis Facility, a general purpose software

system for the reduction and analysis of astronomical data.

http://entropy.brni-jhu.org/tnimage.html
一个非常不错的Unix系统的图像处理工具,看看它的截图。你可以在此基础上构建自己的专用图像处理工具包。

http://sourceforge.net/projects/
这是GPL软件集散地,到这里找你想要得到的IP库吧。

三、搜索资源
当然这里基本的搜索引擎还是必须要依靠的,比如Google等,可以到我常用的链接看看。下面的链接可能会节省你一些时间:

http://sal.kachinatech.com/
http://cheminfo.pku.edu.cn/mirrors/SAL/index.shtml
四、大拿网页
http://www.ai.mit.edu/people/wtf/
这位可是MIT人工智能实验室的BILL FREEMAN。大名鼎鼎!专长是:理解--贝叶斯模型。

http://www.merl.com/people/brand/
MERL(Mitsubishi Electric Research Laboratory)
中的擅长“Style Machine”高手。

http://research.microsoft.com/~ablake/
CV
界极有声望的A.Blake 1977年毕业于剑桥大学三一学院并或数学与电子科学学士学位。之后在MIT,Edinburgh,Oxford先后组建过研究小组并成为Oxford的教授,直到1999年进入微软剑桥研究中心。主要工作领域是计算机视觉。

http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/har/Web/home.html
这位牛人好像正在学习汉语,并且搜集了诸如“两只老虎(Two Tigers)”的歌曲,嘿嘿:)
他的主页上面还有几个牛:Shumeet Baluja, Takeo Kanade。他们的Face Detection作的绝对是世界一流。他毕业于卡奈基梅隆大学的计算机科学系,兴趣是计算机视觉。

http://www.ifp.uiuc.edu/yrui_ifp_home/html/huang_frame.html
这位老牛在1963年就获得了MIT的博士学位!他领导的Image Lab比较出名的是指纹识别。

五、前沿期刊(TOP10)
这里的期刊大部分都可以通过上面的大拿们的主页间接找到,在这列出主要是为了节省直接想找期刊投稿的兄弟的时间:)

IEEE Trans. On PAMIhttp://www.computer.org/tpami/index.htm
IEEE Transactionson Image Processing http://www.ieee.org/organizations/pubs/transactions/tip.htm
Pattern Recognition http://www.elsevier.com/locate/issn/00313203
Pattern Recognition Letters http://www.elsevier.com/locate/issn/01678655



原文链接:http://blog.csdn.net/mpzsw/article/details/5961354

2019-08-02 13:55:46 Unicornshawn 阅读数 572

在这里我们将会简单了解到什么是卷积操作,并使用卷积对图像进行处理。

1.预备知识

Alt
我们需要知道的是,在计算机中,图像是由很多个像素点组合而成,我们对图像的卷积处理其实就是对这些像素点进行一定的运算处理。知道这一点我们就可以开始以下的学习了。

2.卷积操作

在图像处理中,卷积操作指的就是使用一个卷积核(kernel)对一张图像中的每个像素进行一系列操作。卷积核通常是一个四方形网格结构(例如2x2、3x3的方形区域),该区域内每个方格都有一个权重值。当对图像中的某个像素进行卷积时,我们会把卷积核的中心放置于该像素上,翻转核之后再依次计算核中每个元素和其覆盖的图像像素值的乘积并求和,得到的结果就是该位置的新像素值。
Alt
动态演示如下:
Alt
动态演示中我们会发现6 * 6的图经过卷积处理后我们得到了4 * 4的图,这是因为我们在处理图像边界的时候有两种选择。其一,我们可以把最外围的像素“丢弃”掉,这是最直接的;其二,我们在最外围再添加一圈0像素,这样我们就可以同样使用卷积得到边界像素。

3.卷积的应用

在了解了卷积操作后,我们来实际地使用卷积处理原图,得到有趣的图片吧!

(1)锐化
在这里插入图片描述
(2)浮雕
在这里插入图片描述
(3)强调边缘
在这里插入图片描述
代码如下:
(注:以下代码还实现了图像的灰白化、黑白化、镜像等,有兴趣可以参考了解一下)

package imagePro;

import java.awt.Graphics;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class Pro {
	Graphics g;//画布
	public void showUI(){
		//窗口基本属性
		JFrame jf=new JFrame();
		jf.setSize(1100, 1100);
		jf.setDefaultCloseOperation(jf.DISPOSE_ON_CLOSE);
		jf.setLocationRelativeTo(null);
		
		//监听器对象
		ImgListener lis=new ImgListener();
		
		//菜单栏
		JMenuBar bar=new JMenuBar();
		
		//菜单选项
		JMenu menu1=new JMenu("图片处理");
		
		//子选项
		JMenuItem loadPic=new JMenuItem("加载图片");
		JMenuItem drawPic=new JMenuItem("绘制图片");
		JMenuItem grayPic=new JMenuItem("灰度化");
		JMenuItem blackPic=new JMenuItem("黑白化");
		JMenuItem mirrorPic=new JMenuItem("镜像");
		JMenuItem guessPic=new JMenuItem("高斯模糊");
		JMenuItem relievoPic=new JMenuItem("浮雕");
		JMenuItem sharpenPic=new JMenuItem("锐化");
		JMenuItem edgePic=new JMenuItem("强调边缘");
		
		//添加监听器
		loadPic.addActionListener(lis);
		drawPic.addActionListener(lis);
		grayPic.addActionListener(lis);
		blackPic.addActionListener(lis);
		mirrorPic.addActionListener(lis);
		guessPic.addActionListener(lis);
		relievoPic.addActionListener(lis);
		sharpenPic.addActionListener(lis);
		edgePic.addActionListener(lis);
		
		//菜单添加选项
		menu1.add(loadPic);
		menu1.add(drawPic);
		menu1.add(grayPic);
		menu1.add(blackPic);
		menu1.add(mirrorPic);
		menu1.add(guessPic);
		menu1.add(relievoPic);
		menu1.add(sharpenPic);
		menu1.add(edgePic);
		
		//添加菜单
		bar.add(menu1);
		//设置菜单栏
		jf.setJMenuBar(bar);
		
		jf.setVisible(true);//窗体可见
		g=jf.getGraphics();//获取窗体的画布
		lis.setGraphics(g);
	}
	public static void main(String[] args){
		Pro pro=new Pro();
		pro.showUI();
	}
}

监听器类

package imagePro;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

public class ImgListener implements ActionListener{

	BufferedImage image;//图片
	BufferedImage img;//临时图片
	BufferedImage img_1;//图片黑白化
	Graphics temp_g;//临时画布
	
	Graphics g;
	public void actionPerformed(ActionEvent e) {
		String str=e.getActionCommand();
		System.out.println(str);
		if("加载图片".equals(str)){
			load();
		}
		if("绘制图片".equals(str)){
			draw();
		}
		if("灰度化".equals(str)){
			huidu();
		}
		if("黑白化".equals(str)){
			heibai();
		}
		if("镜像".equals(str)){
			mirror();
		}
		if("高斯模糊".equals(str)){
			Guess();
		}
		if("浮雕".equals(str)){
			fudiao();
		}
		if("锐化".equals(str)){
			ruihua();
		}
		if("强调边缘".equals(str)){
			edge();
		}
		
	}
	public void load(){
		try {
			image =ImageIO.read(new File("DVA.jpg"));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	public void draw(){
		g.drawImage(image, 100, 100, null);
	}
	public void huidu(){
		img=new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB);
		temp_g=img.getGraphics();
		//分别获取R/G/B值
		for(int i=0;i<image.getWidth();i++){
			for(int j=0;j<image.getHeight();j++){
				int RGB=image.getRGB(i, j);
				int R=(RGB>>16)&0xff;
				int G=(RGB>>8)&0xff;
				int B=RGB&0xff;
				//绘制该点
				int gray=(int)(0.3*R+0.59*G+0.11*B);
				temp_g.setColor(new Color(gray,gray,gray));
				temp_g.drawLine(i, j, i, j);
			}
		}
		g.drawImage(img, 100, 100, null);
	}
	public void heibai(){
		img=new BufferedImage(image.getWidth(),image.getHeight(),BufferedImage.TYPE_INT_RGB);
		temp_g=img.getGraphics();
		//分别获取R/G/B值
		for(int i=0;i<image.getWidth();i++){
			for(int j=0;j<image.getHeight();j++){
				int RGB=image.getRGB(i, j);
				int R=(RGB>>16)&0xff;
				int G=(RGB>>8)&0xff;
				int B=RGB&0xff;
				//绘制该点
				int ave=(R+G+B)/3;
				if(ave<78){
					temp_g.setColor(Color.BLACK);
				}else
					temp_g.setColor(Color.WHITE);

				temp_g.drawLine(i, j, i, j);
			}
		}
		img_1=img;
		g.drawImage(img, 100, 100, null);
	}
	public void mirror(){
		img=new BufferedImage(image.getWidth(),image.getHeight(),BufferedImage.TYPE_INT_RGB);
		temp_g=img.getGraphics();
		
		//分别获取R/G/B值
		for(int i=0;i<image.getWidth();i++){
			for(int j=0;j<image.getHeight();j++){
				int RGB=image.getRGB(i, j);
				int R=(RGB>>16)&0xff;
				int G=(RGB>>8)&0xff;
				int B=RGB&0xff;
				//绘制该点
				temp_g.setColor(new Color(R,G,B));
				temp_g.drawLine(image.getWidth()-i-1, j, image.getWidth()-i-1, j);
			}
		}
		g.drawImage(img, 100, 100, null);
	} 
	public void Guess(){
		double value[]={0.075,0.124,0.075,0.124,0.204,0.124,0.075,0.124,0.075};
		drawPic(img, value);
	}
	private void fudiao() {
		double value[]={1,0,-1,1,0,-1,1,0,-1};
		drawPic(img, value);
	}
	private void edge() {		
		double value[]={1,1,1,1,-7,1,1,1,1};
		drawPic(img, value);
	}
	private void ruihua() {
		double value[]={-1,-1,-1,-1,9,-1,-1,-1,-1};
		drawPic(img, value);
	}
	public void drawPic(BufferedImage img,double[] value){
		img=new BufferedImage(image.getWidth(),image.getHeight(),BufferedImage.TYPE_INT_RGB);
		temp_g=img.getGraphics();
		int pix[]=new int[9];
		for(int i=1;i<img.getWidth()-1;i++){
			for(int j=1;j<img.getHeight()-1;j++){
				readPix(image, i, j, pix);//获取图像该点周围的像素值
				temp_g.setColor(changePix(pix, value));//设置该点的颜色
				temp_g.drawLine(i, j, i, j);
			}
		}
		g.drawImage(img, 100, 100, null);
	}	
	public void readPix(BufferedImage img,int x,int y,int[]pix){
		int start=0;
		for(int i=x-1;i<x+2;i++){
			for(int j=y-1;j<y+2;j++){
				pix[start++]=img.getRGB(i, j);//3*3的数组转化为1*9的数组
			}
		}
	}
	public Color changePix(int[] pix,double[] value){
		double R=0;
		double G=0;
		double B=0;
		//分别获取R、G、B的值
		for(int i=0;i<pix.length;i++){
			R+=((pix[i]>>16)&0xff)*value[i];
			G+=((pix[i]>>8)&0xff)*value[i];
			B+=(pix[i]&0xff)*value[i];
		}
		if(R>255)R=255;
		if(R<0)R=0;
		if(G>255)G=255;
		if(G<0)G=0;
		if(B>255)B=255;
		if(B<0)B=0;
		return new Color((int)R,(int)G,(int)B);
	}
	public void setGraphics(Graphics g){
		this.g=g;
	}
}

参考:(图像处理基本知识)https://zhuanlan.zhihu.com/p/55013828