第二节 如何导入EasyAnalysis库

 

由于这个库主要用于VC MFC下开发应用,因此目前可以下载到版本只支持MFC开发。如果您需要标准Win32的库,可以在回复时留下您的邮箱,或跟我联系。

       Email[email protected]

       QQ81954377258KB

EasyAnalysis 图像分析库测试版以及源代码下载地址:
下载地址:
http://www.5941ts.com/EasyAnalysis/EasyAnalysis.rar

本小节所涉及的源程序:

http://www.5941ts.com/EasyAnalysis/demo/2/TestDll.rar

一.EasyAnalysis库文件组成

文件解压缩后,共有两个文件夹,分别是IncludeLib 。其中Include文件夹中包含了所有需要用到的头文件,看似Include中的文件很多,实际上再使用的时候只需要加载一个头文件就OK了,不用担心。Lib文件夹中为编译好的dlllib文件。

二.导入EasyAnalysis

1.  建立一个名为TestDLLMFC工程。选择应用程序类型为“基本对话框”类型。

2.  Include文件夹和Lib中的DllLib文件拷贝到工程的根目录下。

3.  TestDllDlg.cpp文件中添加如下代码

 

  编译运行。如果程序没有报错,那么说明 EasyAnalysis 库已经成功添加到程序中了。

 

#include “Include/ EasyAnalysisDLL.h”

#pragma  comment(lib,” EasyAnalysisDLLMFC.lib”)

4.

三.编写第一个程序

现在我们实现上一小节提到的那个程序,即对图像进行Sobel变换然后显示在Dialog上。

1.  打开上面生成的工程

2.  在资源中双击Dialog窗体上的OK按钮,在消息影射函数OnOK中添加如下代码

 

  运行程序,单击 OK

 

CBmp m_Bmp;

m_Bmp.CreateImage(
" test.bmp " ); 

 

CEdge m_Edge(
& m_Bmp);

m_Edge.Sobel();

 

CWindowGraph m_Graph(GetDC());

m_Graph.SetImage(
1 , 1 ,m_Bmp.GetHeight(),m_Bmp.GetWidth(),m_Bmp.GetBits);

3.

怎么样?是不是看到一副二值化过的图像被显示在对话框窗口上了?

注:如果运行时程序提示找不到DLL文件,请检查是否将EasyAnalysisDLLMFC.DLL文件拷贝到了工程根目录下。

 

由于EasyAnalysis库异常处理机制为try…catch方式,而库中产生的所有异常都回抛出CPException对象。因此为能让程序更加稳定,我们在上述代码中添加异常处理的代码。并将处理好的图像保存为Test1.bmp

 

 

 

 

try

{

CBmp m_Bmp;

m_Bmp.CreateImage(
"test.bmp"); 

 

CEdge m_Edge(
&m_Bmp);

m_Edge.Sobel();

 

CWindowGraph m_Graph(GetDC());

m_Graph.SetImage(
1,1,m_Bmp.GetHeight(),m_Bmp.GetWidth(),m_Bmp.GetBits());

 

m_Bmp.SaveData(“Test1.bmp”);

 

}


catch (CPException  & err)

{

    
int nErrCode=err.GetErrCode();           //取错误类型代码

    MessageBox(err.GetErrMsg());       
//弹出错误信息

}

原始图片和出处理结果见下图:

第二节 如何导入EasyAnalysis库_第1张图片 第二节 如何导入EasyAnalysis库_第2张图片

EasyAnalysis库使用上的简单,相信您已经从本节的内容中窥得一斑。 从下一节开始,我将逐个类去详细介绍EasyAnlysis库的所有功能,相信您会发现,原来VC写图像分析程序也可以像matlab一样Easy

你可能感兴趣的:(第二节 如何导入EasyAnalysis库)