opencv 图片处理,分割字符


利用opencv 对图片处理,例如二值化,滤波,调整角度,然后对处理完之后的图片进行分割,保存
资源截图
代码片段和文件信息
// PicDigRecDll.cpp : 定义 DLL 的初始化例程。
//

#include “stdafx.h“
#include “PicDigRecDll.h“
#include “mydiblib.h“
#include 
#include 

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

//
//TODO: 如果此 DLL 相对于 MFC DLL 是动态链接的,
// 则从此 DLL 导出的任何调入
// MFC 的函数必须将 AFX_MANAGE_STATE 宏添加到
// 该函数的最前面。
//
// 例如:
//
// extern “C“ BOOL PASCAL EXPORT ExportedFunction()
// {
// AFX_MANAGE_STATE(AfxGetStaticModuleState());
// // 此处为普通函数体
// }
//
// 此宏先于任何 MFC 调用
// 出现在每个函数中十分重要。这意味着
// 它必须作为函数中的第一个语句
// 出现,甚至先于所有对象变量声明,
// 这是因为它们的构造函数可能生成 MFC
// DLL 调用。
//
// 有关其他详细信息,
// 请参阅 MFC 技术说明 33 和 58。
//

// CPicDigRecDllApp

BEGIN_MESSAGE_MAP(CPicDigRecDllApp CWinApp)
END_MESSAGE_MAP()


// CPicDigRecDllApp 构造



CPicDigRecDllApp::CPicDigRecDllApp()
{
// TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
//Image = NULL;
}


// 唯一的一个 CPicDigRecDllApp 对象

CPicDigRecDllApp theApp;


// CPicDigRecDllApp 初始化

BOOL CPicDigRecDllApp::InitInstance()
{
CWinApp::InitInstance();

return TRUE;
}


IplImage* CPicDigRecDllApp::Image = NULL;

//打开256色位图文件并转化为灰度图
BOOL CPicDigRecDllApp::FileOpenBmp(const char* lpszPathName) 
{
/*if (!CDocument::OnOpenDocument(lpszPathName))
return false;*/
 //TODO: Add your specialized creation code here

//m_image.Load(lpszPathName);//以图片原本的通道方式打开图片  
//m_image.Load(lpszPathName);
//MyImage.CopyOf(m_image);//复制图片,接受以后的处理
//
//Image=MyImage.GetImage();//得到IplImage*指针,方便运用opencv进行处理

//IplImage* Image11   = cvLoadImage(lpszPathName0);
//Image = cvLoadImage(lpszPathName0);
//cvCvtColor(pImg pImg1 CV_BGR2GRAY);

//IplImage* img=cvCreateImage(cvSize(Image->widthImage->height)IPL_DEPTH_8U1);

IplImage* img1 = cvLoadImage(lpszPathName-1);

IplImage* img2 = cvCreateImage(cvSize(img1->widthimg1->height)IPL_DEPTH_8U1);
cvCvtColor(img1 img2CV_BGR2GRAY);

Image=cvCreateImage(cvSize(img1->widthimg1->height)IPL_DEPTH_8U1);

cvCopy(img2 Image NULL);



cvReleaseImage(&img2);//释放IplImage指针src  

return TRUE;
}

////图像预处理第1步:将256色图像转化为灰度图像
void CPicDigRecDllApp::IMGPRC256ToGray()
{
//IplImage* img=cvCreateImage(cvSize(Image->widthImage->height)IPL_DEPTH_8U1);
//for(int j=0;jheight;j++)
//for(int i=0;iwidth;i++)
//{
//CV_IMAGE_ELEM(imgucharji)=(uchar)(CV_IMAGE_ELEM(Imageucharji*3)*0.114+CV_IMAGE_ELEM(Imageucharji*3+1)*0.587+CV_IMAGE_ELEM(Imageucharji*3+2)*0.299);
//}
//*MyImage.CopyOf(img);
//UpdateAllViews(NULL);*/

//Image = img;
//cvReleaseImage(&img);//释放IplImage指针src  
//cvMinMaxLoc()
}

//图像预处理第2步:将灰度图二值化
void CPicDigRecDllApp::IMGPRCGrayToWhiteBlack()
{
//得到图片的最大灰度值和最小灰度值


double min_val = 0;double max_val = 0;  
    cvMinMaxLoc(Image&min_val&max_val);   //取图像中的最大最小像素值  


/*int thresMax=0thresMin=255;
for(int j=0;jheight;j++)
for(int i=0;iwidth;i++)
{
if(CV_IMAGE_ELEM(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-delayload-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-errorhandling-l1-1-0.dll

     文件       5120  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-file-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-handle-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-heap-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-interlocked-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-io-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-libraryloader-l1-1-0.dll

     文件       4096  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-localregistry-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-memory-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-misc-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-processenvironment-l1-1-0.dll

     文件       4608  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-processthreads-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-profile-l1-1-0.dll

     文件       4096  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-synch-l1-1-0.dll

     文件       4096  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-core-sysinfo-l1-1-0.dll

     文件       3584  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-security-lsalookup-l1-1-0.dll

     文件       3072  2009-07-14 09:24  PicDigRecDllDebugapi-ms-win-security-sddl-l1-1-0.dll

     文件      36864  2012-02-10 15:43  PicDigRecDllDebugcryptbase.dll

     文件      78848  2012-02-10 15:40  PicDigRecDllDebugcryptsp.dll

     文件     717824  2012-02-14 08:35  PicDigRecDllDebugdui70.dll

     文件      39936  2006-11-02 17:46  PicDigRecDllDebugdwmapi.dll

     文件     197632  2010-09-19 09:24  PicDigRecDllDebugieshims.dll

     文件     161792  2012-10-16 14:24  PicDigRecDllDebugPicDigRecDll.dll

     文件        816  2012-10-16 14:24  PicDigRecDllDebugPicDigRecDll.exp

     文件    1108532  2012-10-16 14:24  PicDigRecDllDebugPicDigRecDll.ilk

     文件       2008  2012-10-16 14:24  PicDigRecDllDebugPicDigRecDll.lib

     文件    5008384  2012-10-16 14:24  PicDigRecDllDebugPicDigRecDll.pdb

     文件      99840  2012-03-20 13:53  PicDigRecDllDebugsspicli.dll

     文件     142552  2011-05-10 18:28  PicDigRecDllDebug bb_debug.dll

............此处省略66个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)