这里要十分注意一点 就是 路径中写 选择的是 VC11 而不是 VC12 ,尽管我们安装的是 VS2012 ,但这里仍然用的是VC11,因为这个,我白白耗费了一小时,辛苦同桌一分钟。
然后点击完成
对my_first_code 右击后 在菜单中 选择属性
然后 按照
http://blog.youkuaiyun.com/liukun321/article/details/38373277
别人的博客设置就可以了
opencv_core249.lib
opencv_imgproc249.lib
opencv_highgui249.lib
opencv_ml249.lib
opencv_video249.lib
opencv_features2d249.lib
opencv_calib3d249.lib
opencv_objdetect249.lib
opencv_contrib249.lib
opencv_legacy249.lib
opencv_flann249.lib
opencv_core249d.lib
opencv_imgproc249d.lib
opencv_highgui249d.lib
opencv_ml249d.lib
opencv_video249d.lib
opencv_features2d249d.lib
opencv_calib3d249d.lib
opencv_objdetect249d.lib
opencv_contrib249d.lib
opencv_legacy249d.lib
opencv_flann249d.lib
下面是 附加类库, 不带 d 的是 release需要的类库,加 d 的是debug 模式需要的类库
http://www.cnblogs.com/csulennon/p/3775980.html
下面是我遇到的第一个问题,就是 缺少 opencv_core249.dll 文件,
http://www.cnblogs.com/csulennon/p/3775980.html 这个博客中有方法
http://blog.sina.com.cn/s/blog_7e8b29a60102uy7b.html 下面这个和上面那个一样,看你的理解吧。
最后对于找不到图片问题,http://blog.youkuaiyun.com/klein_yang/article/details/46948457 这个博客给了一个解决办法,或者说遗忘的细节
我打开图片的程序是
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc, char* argv[])
{
const char* imagename = "C:\\zoro.jpg";
//从文件中读入图像
Mat img = imread(imagename);
//如果读入图像失败
if(img.empty())
{
fprintf(stderr, "Can not load image %s\n", imagename);
return -1;
}
//显示图像
imshow("image", img);
//此函数等待按键,按键盘任意键就返回
waitKey();
return 0;
}
下面是我启动摄像头的程序
-
#include <opencv2/highgui/highgui.hpp>
-
#include <opencv2/imgproc/imgproc.hpp>
-
#include <opencv2/core/core.hpp>
-
-
using namespace cv;
-
-
-
int main()
-
{
-
VideoCapture cap(0);
-
if(!cap.isOpened())
-
{
-
return -1;
-
}
-
Mat frame;
-
Mat edges;
-
-
bool stop = false;
-
while(!stop)
-
{
-
cap>>frame;
-
cvtColor(frame, edges, CV_BGR2GRAY);
-
GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
-
Canny(edges, edges, 0, 30, 3);
-
imshow("当前视频",edges);
-
if(waitKey(30) >=0)
-
stop = true;
-
}
-
return 0;
-
}