参考
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
分享到:
相关推荐
cv::imshow("OpenCV HelloWorld", img); // 显示图片 cv::waitKey(0); // 等待用户按键,0表示无限等待 cv::destroyAllWindows(); // 关闭所有窗口 return 0; } ``` 在这个程序中,我们使用`imread`函数读取...
这篇博客“ios的opencv的helloworld”可能介绍了如何在iOS应用中引入OpenCV库,并实现一个简单的HelloWorld示例。OpenCV(开源计算机视觉库)是一个强大的工具,用于图像和视频分析、处理以及计算机视觉算法的实现。...
hello world 的opencv
OpenCV你好世界 这只是Processing 3中的一个简单的OpenCV项目,它跟踪前景对象中的运动,并使用它来允许这些运动来回移动弹跳球。 绘制一个球,并绘制任何前景对象。 通过移动前景对象(如手),可以在屏幕上移动球...
这个"androidNDK helloworld"资源就是一个入门级别的示例,旨在帮助初学者理解如何在Android项目中集成和使用NDK。下面将详细讲解Android NDK的基础知识以及如何创建并运行一个简单的"Hello, World!"程序。 首先,...
"NDK_Helloworld_DEMO"就是一个入门级的示例,旨在帮助初学者理解NDK的基本用法。 1. **NDK简介** NDK是Google提供的一个开源工具,用于在Android平台上编译和运行原生代码。与Java SDK不同,NDK允许开发者直接...
public class HelloWorld { public static void main(String[] args) throws Exception { NativeLoader.loadLibrary(Core.NATIVE_LIBRARY_NAME);//关键步骤不能使用System.loadLibrary Mat hello = Mat.zeros(3, ...
通过"matconvnet_helloworld"这样的简单示例,我们可以逐步掌握CNN的原理和实践,为进一步深入学习和研究打下坚实基础。无论你是MATLAB的老手还是新手,MatConvNet都能让你在深度学习的道路上走得更远。
一个简单的OpenCV程序通常从读取和显示图像开始,这就是所谓的“HelloWorld”。这段代码展示了如何使用OpenCV打开一个图像文件并显示它,从而帮助初学者理解基本的图像操作。 ```cpp #include <opencv2/opencv.hpp>...
- 创建测试程序:编写一个简单的“Hello, OpenCV”程序,验证环境配置是否成功。 2. **第3章:核心模块core** - Mat数据结构:OpenCV的核心数据结构,用于存储图像和其他多维数组。 - 数据类型:了解各种像素...
4. 链接器输入(Linker/Input)中,添加所需的lib文件,如opencv_world340.lib。 OpenCV支持多种图像和视频格式的读写,提供了丰富的图像处理功能,如图像缩放、旋转、颜色转换、滤波、边缘检测、特征匹配等。此外...
然后,我们需要创建一个控制台程序,也就是hello world那个程序。这一步骤非常简单,但却是整个过程的基础。 四、添加环境变量 将opencv的路径加入到系统环境变量里。如果项目已经建好了,请重启vs重新加载系统...
比如,你可以尝试运行"hello_world.cpp",这是一个简单的程序,用于加载、显示和保存图像,这将帮助你熟悉OpenCV的基本操作。 OpenCV 2.3.1提供的API广泛而强大,涵盖了图像处理的各个方面,如图像读取和显示、颜色...
文件中还包含了一个简单的示例代码,即hello-world.cpp。这个程序加载了一张图像,并创建了一个窗口用于显示它。通过对图像数据的直接操作,实现了图像的简单变换。 7. OpenCV的应用和资源 OpenCV的应用领域包括...
在文件名`helloworld`中,虽然没有明确说明,但通常在编程示例中,"helloworld"代表一个入门级别的程序,用于展示基础的代码结构和运行流程。在这个项目中,它可能是主程序或包含主函数的源代码文件,负责初始化Qt...
1. **创建测试项目**:在`D:\opencv2.3.1\opencv`目录下创建一个名为`helloworld`的文件夹。 2. **编写代码**:在`helloworld`文件夹中创建一个名为`Helloworld.cpp`的文件,并复制示例代码。 3. **设置CMakeLists....
在这个例子中,我们以"HelloWorld_CV"为例,创建一个简单的“Hello, World!”应用程序,同时展示OpenCV的功能。项目中,我们需要导入OpenCV框架,例如在Objective-C中使用`#import <opencv2/opencv.h>`,在Swift中...
具体库文件根据OpenCV版本和你选择的模块可能会有所不同,但通常包括`opencv_world3.x.x.lib`(x代表版本号)。 8. **编写代码并测试** 现在你可以开始编写使用OpenCV的代码了。例如,简单的“Hello, OpenCV”程序...
对于初学者,可以从"Getting Started"教程开始,了解如何安装OpenCV,配置开发环境,并编写第一个“Hello, World!”级别的图像显示程序。随着对库的熟悉,可以逐步深入到更复杂的领域,如图像分析、特征匹配、目标...
【标题】"HelloWorld:10 队的 HelloWorld" 提到的是一个项目或程序,可能是一个编程竞赛或团队合作的成果,其中“10 队”可能指的是参与的团队数量,而“HelloWorld”是编程界的一个传统示例,通常用于教学和测试...