终于找到了一个合适的开源协议,开源一个图像分析库,详见正文
——————————————————————————————————
有关EasyAnalysis的使用文档,我会在Blog上陆续发布。
我的Blog
http://Blog.csdn.net/depraved_survival
库函数和源程序的下载地址为:
http://www.5941ts.com/EasyAnalysis/EasyAnalysis.rar
——————————————————————————————————
写了个图像分析库EasyAnalysis,很多复杂的图像处理都能一行代码搞定,支持MFC,VC写程序的朋友可以试用一下。
EasyAnalysis具体用起来有多Easy,举个Sobel变换的例子:
CBmp m_Bmp;
CEdge m_Edge(&m_Bmp);
m_Bmp.CreateImage("test.bmp"); //从文件创建图像对象
m_Edge.Sobel(); //索贝尔变换
搞定!要显示到Dialog窗体上?请看下面代码
CWindowGraph m_Graph(GetDC());
m_Graph.SetImage(1,1,m_Bmp.GetHeight(),m_Bmp.GetWidth(),m_Bmp.GetBits());
完成。
目前版本支持的功能都是已经在实际使用的,还有很多功能正在测试中,随时发布。测试版EasyAnalysis支持的功能如下:
一. 图像文件
目前只支持2,4,8,16,24位BMP文件的读取和保存操作。有兴趣的朋友可以参考类图支持自己希望的图像格式。也可以用其他控件或库读出其他格式的图像内容,然后规范化为EasyAnalysis库支持的格式输入到库中,比如使用cxImage。以后我会陆续加上对其他文件格式支持的模块。
二. 图像运算:
1. 算术运算:图像间加减,图像与常数的加减乘。
2. 统计:RGB分量出现次数、频率、直方图。
3. 对图像一维和二维卷积。
4. 取临域、判断连通性。
5. 形态学运算:腐蚀、膨胀、开启、闭合
6. 几何缩放、旋转、翻转
7. 1D,2D傅立叶变换
三. 边缘提取:
1. 高斯——拉普拉斯
2. Kirsch八方向
3. 拉普拉斯
4. Prewiit
5. Sobert
6. Robert
7. 自定义模板
四. 滤波:
1. 线形平滑、锐化
2. 非线性滤波,支持自定义函数
3. 中值滤波
4. 浮雕化
5. Butterworth高通、低通滤波器
6. 理想高通、低通滤波器
五. 灰度变换
1. 均衡化
2. 线性变换、非线性变换
3. 窗口变换
4. 底片
六. 图像分割
1. 固定阈值分割
2. 迭代法
3. 区域增长
4. Outas
5. 梯度自动调整的矩不变法