`
haoningabc
  • 浏览: 1445357 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

opencv的helloworld

阅读更多
参考
http://blog.csdn.net/tmxyz1950/article/details/19031893
http://blog.csdn.net/morewindows/article/details/8225783/
http://www.cnblogs.com/freedomshe/archive/2012/04/25/2470540.html
工具
vs2013 opencv2.4.9  64位win7操作系统

1.vs2013新建项目



安装完opencv后
需要把E:\tools\opencv2410\opencv\build\x64\vc12\bin
加到环境变量PATH中
否则运行时找不到dll文件
2设置属性
选择“空项目”》完成,接着找到“属性管理器”,如果没有的话就在“视图”》属性管理器


之后便是双击“Debug | Win32”打开“Debug属性页”,选择“VC++目录”


配置 include的的路径 为opencv解压路径下的
E:\vs\opencv\build\include


配置 include的的路径 为opencv解压路径下的
E:\vs\opencv\build\x64\vc12\lib
由于我的是64位win7,所以选x64

选连接器
Debug Property Pages
Linker
Input
Additional Dependencies



注意,我们选的是debug,所以每个lib都是以d结尾的,如果我们选的是release,则没有d
例如,重复上面所有的对release| Win32进行操作



有时候需要这是链接库,但是会慢
看情况设置吧,如果不选,第一次运行可能会报错
工具--》选项--》》调试--》符号


3,新建个显示图片的helloworld
在Source file上右键,新建  new item ,选c++.cpp

代码如下
#include <opencv2/opencv.hpp>
using namespace std;
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")//运行时不显示DOS框
int main()
{
	const char *pstrImageName = "pp.jpg";
	const char *pstrWindowsTitle = "Demo";
	IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);//从文件中读取图像
	cvNamedWindow(pstrWindowsTitle, 0);	//创建窗口
	cvShowImage(pstrWindowsTitle, pImage);	//在指定窗口中显示图像
	cvWaitKey();//等待按键事件
	cvDestroyWindow(pstrWindowsTitle);//销毁对话框,释放空间
	cvReleaseImage(&pImage);
	return 0;
}

另外把一张jpg的图片放到工程目录下

运行之前设置64为运行



F5运行


附录:
其中的库为
opencv_core249d.lib
opencv_imgproc249d.lib
opencv_highgui249d.lib

后续参考http://wiki.opencv.org.cn/index.php/OpenCV_%E7%BC%96%E7%A8%8B%E7%AE%80%E4%BB%8B%EF%BC%88%E7%9F%A9%E9%98%B5/%E5%9B%BE%E5%83%8F/%E8%A7%86%E9%A2%91%E7%9A%84%E5%9F%BA%E6%9C%AC%E8%AF%BB%E5%86%99%E6%93%8D%E4%BD%9C%EF%BC%89
缩放图片的例子
#include <opencv2/opencv.hpp>
using namespace std;
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")//运行时不显示DOS框
int main()
{
	const char *pstrImageName = "pp.jpg";
	const char *pstrSaveImageName = "save.jpg";
	double fScale = 0.314;      //缩放倍数  
	CvSize czSize;              //目标图像尺寸 

	const char *pstrWindowsTitle = "Demo";
	IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);//从文件中读取图像
	IplImage *pDstImage = NULL;
	czSize.width = pImage->width * fScale;
	czSize.height = pImage->height * fScale;
	pDstImage = cvCreateImage(czSize, pImage->depth, pImage->nChannels);
	cvResize(pImage, pDstImage, CV_INTER_AREA);
	cvNamedWindow("this title", CV_WINDOW_AUTOSIZE);
	cvShowImage("this title", pDstImage);

	cvNamedWindow(pstrWindowsTitle, 0);	//创建窗口
	cvShowImage(pstrWindowsTitle, pImage);	//在指定窗口中显示图像
	cvWaitKey();//等待按键事件
	cvDestroyWindow(pstrWindowsTitle);//销毁对话框,释放空间
	cvReleaseImage(&pImage);
	return 0;
}


边缘检测:
// 图像的Canny边缘检测
//By MoreWindows (http://blog.csdn.net/MoreWindows)  
#include <opencv2/opencv.hpp>  
using namespace std;
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")  
IplImage *g_pSrcImage, *g_pCannyImg;
const char *pstrWindowsCannyTitle = "边缘检测图(http://blog.csdn.net/MoreWindows)";
//cvCreateTrackbar的回调函数  
void on_trackbar(int threshold)
{
	//canny边缘检测  
	cvCanny(g_pSrcImage, g_pCannyImg, threshold, threshold * 3, 3);
	cvShowImage(pstrWindowsCannyTitle, g_pCannyImg);
}
int main()
{
	const char *pstrImageName = "pp.jpg";
	const char *pstrWindowsSrcTitle = "原图(http://blog.csdn.net/MoreWindows)";
	const char *pstrWindowsToolBar = "Threshold";

	//从文件中载入图像的灰度图CV_LOAD_IMAGE_GRAYSCALE - 灰度图  
	g_pSrcImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_GRAYSCALE);
	g_pCannyImg = cvCreateImage(cvGetSize(g_pSrcImage), IPL_DEPTH_8U, 1);

	//创建窗口  
	cvNamedWindow(pstrWindowsSrcTitle, CV_WINDOW_AUTOSIZE);
	cvNamedWindow(pstrWindowsCannyTitle, CV_WINDOW_AUTOSIZE);

	//创建滑动条  
	int nThresholdEdge = 1;
	cvCreateTrackbar(pstrWindowsToolBar, pstrWindowsCannyTitle, &nThresholdEdge, 100, on_trackbar);

	//在指定窗口中显示图像  
	cvShowImage(pstrWindowsSrcTitle, g_pSrcImage);
	on_trackbar(1);

	//等待按键事件  
	cvWaitKey();

	cvDestroyWindow(pstrWindowsSrcTitle);
	cvDestroyWindow(pstrWindowsCannyTitle);
	cvReleaseImage(&g_pSrcImage);
	cvReleaseImage(&g_pCannyImg);
	return 0;
}

效果
  • 大小: 77.4 KB
  • 大小: 37.2 KB
  • 大小: 26.3 KB
  • 大小: 72.2 KB
  • 大小: 125.8 KB
  • 大小: 121.6 KB
  • 大小: 88.2 KB
  • 大小: 209.3 KB
  • 大小: 103.7 KB
  • 大小: 116.3 KB
  • 大小: 77.7 KB
  • 大小: 48.9 KB
  • 大小: 98.5 KB
  • 大小: 90.6 KB
  • 大小: 148.6 KB
  • 大小: 70.1 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics