要写好一个图像处理软件,仅靠自己看书是完全不够的,要多方面学习,借鉴前人的经验,要集思广益、多面出击。如今网络发达,图像学的资料其实也到处都是。只是往往个人能力或精力有限,在短时间内无法找到那些也许藏于角落里的金子。本人研究图像至今也历时7年,在慢慢的摸索和累积中也找到了一些相关资料,共享给大家学习。
1、 最著名的开源图像软件:GIMP。
开发语言:C
GIMP号称Linux下的PhotoShop,总观其工程,确实达到了PhotoShop早期版本的功能。三大利器:选区、图层、蒙板一应俱全,滤镜也非常丰富,支持插件。缺点就是界面不美观,用户体验差,执行速度在Windows下慢(Linux下不清楚)。
官方网址为:http://www.gimp.org/
源码下载:因其源码体积过大,请大家直接到其官网下载。
对应的可执行文件可在官方网站下载。
界面预览:
2、 微软曾支持过的"开源"图像软件:Paint.NET。
开发语言:C#
Paint.NET是Windows 平台上的一个图像和照片处理软件,早期定位于MSPaint的免费替代软件,支持图层、通道、无限制的历史记录、特效和许多实用工具,在3.3版本之前开源,之后由于种种原因放弃开源。其界面看起来有点像Photoshop,执行速度上也不快。
源码下载:http://files.cnblogs.com/Imageshop/Paint.net.rar
界面预览:
3、一个响当当的图像开源软件:ImageEditor
开发语言:JAVA
一个用JAVA开发的图像处理软件,具有图层、选区、滤镜以及其他一些工具。整体来说较上述两个软件稍次一些,但依旧强劲。提供了很多独特的滤镜算法,工具箱中的透视变形工具很给力,是用JAVA开发图像值得借鉴的好代码。算法的执行速度一般。
官方网址为:http://www.jhlabs.com/
源码下载:http://files.cnblogs.com/Imageshop/jhlabs.rar
源码中包含对应的EXE文件,但需要机器上安装了JAVA运行环境方可正常运行。
界面预览:
4、优秀的图像操作类库: CxImage
开发语言:C++
它可以快捷地存取、显示、转换各种图像,自带了较多图像模式转换算法,以及一些滤镜,是VC使用者最为常用的图像类库。
官方网址:http://www.codeproject.com/KB/graphics/cximage.aspx
源码下载:http://files.cnblogs.com/Imageshop/cximage.rar
界面预览:
5、国人的开源图像处理软件: Imagestone
开发语言:C++
ImageStone是一套功能强大的C++图像处理库,能读写JPG、GIF、PNG、TIFF、TGA等多种图像文件,有多达100多中预定义的特效。其算法很多是取自GIMP的代码,如果认为GIMP的代码过于复杂,可以从该软件中很轻松分解出你需要的部分。
官方网址为:http://www.codeproject.com/KB/graphics/ImageStone.aspx
源码下载:http://files.cnblogs.com/Imageshop/ImageStone.rar
界面预览:
6、基于AForge.NET的开源软件:iplab
开发语言:C#
和CxImage似乎是一个作者,包含了很多滤镜,也有一些图像识别上常用的分析方法。
官方网址为:http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab.aspx
源码下载:http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab/iplab_src.zip
界面预览:
7、一款VB值得爱好者学习的软件:iBmp
开发工具:VB6
虽然在提供的算法上没有什么太多值得说明的地方,但在图像缩放的坐标计算、偏移、图像导航器方面的代码确实值得大家学习。
官方网址为:http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=42376&lngWId=1
源码下载:http://files.cnblogs.com/Imageshop/iBMP.rar
界面预览:
8、图像编码解码的利器:FreeImage、ImageMagick
开发语言:C
FreeImage 是一款免费的、开源的、跨平台(Windows 、Linux 和Mac OS X )的,支持20 多种图像类型的(如BMP 、JPEG 、GIF 、PNG 、TIFF 等)图像处理库。其最大优点就是采用插件驱动型架构,具有快速、灵活、简单易用的特点,得到了广泛使用。
ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF、JPEG、GIF、 PNG、PDF以及PhotoCD等格式。利用ImageMagick,你可以对图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。
9、其他的一些开源软件:
(1) PhotoSprite:一个国产的用C#开发的类似PHOTOSHOP的软件(太抬举他了),用到了很多图形算法,新手可以参考。
下载地址:http://files.cnblogs.com/Imageshop/PhotoSprite.rar
(2)FilterExplorer: 一个小的VC写的图像处理代码,有一些比较好的滤镜代码。