这个拼图并非自带的直接使用sources中的代码。而是把必要的内容放到工程中,改造成自己的图像拼接。参考博文:http://www.tuicool.com/articles/fMbUfaF

该篇博文总体上来讲,很好的指导了思路,但是在尝试的过程中屡次碰壁。所以现在就来把整个搭建过程再来复述一遍。

希望有那么一点帮助。

//前提先把opencv跑通,也就是上一篇随笔的内容。上一篇从体来讲还可以写的,主要是因为原博文非常详尽,所以我在写的时候就把我这里需要怎么跑,比较清楚的写了一下。

这篇真的是跑得我脑袋冒泡却也没跑成功,所以发个博来记述一下。

首先创建工程:

原文中的描述可以自己看一下。还是很好的

“新建工程,将H:\opencv\sources\modules\stitching的文件夹中的include和src复制到工程文件夹中,将sample\cpp中的stitching_detailed.cpp也复制到工程文件夹中。”

—— http://www.tuicool.com/articles/fMbUfaF

注意下这段话的描述:反复看了很久。我还复制粘贴过,简直醉了,可能是还是不熟悉vs的环境。这个句话的正确步骤是:

1、先去opencv目录下面。

1)选中include 和src目录。

2)Ctrl+C完成复制。

3)到vs环境中

点到这个工程目录里面。左键单击一下这个tryMosic这个工程

然后Ctrl+V。

然后她会自动帮我们把头文件和cpp文件分开放好。

2、基本环境的问题。这也就是我们需要用到上一篇文章——配置的原因。

看看问题在哪里:

随便单击一个刚刚复制进来的.hpp 或者.cpp文件。

就发现报了好多红。同eclipse里面一样一片一片的爆红就是没有导包嘛~,这里面我们是没有导入必要的类库。

解决:

项目->属性->VC++目录->包含目录->

依然是新建。

补上三个

包含目录 下移两行 到库目录中进行修改

链接器输入部分:

opencv_ml249d.lib

opencv_calib3d249d.lib

opencv_contrib249d.lib

opencv_core249d.lib

opencv_features2d249d.lib

opencv_flann249d.lib

opencv_gpu249d.lib

opencv_highgui249d.lib

opencv_imgproc249d.lib

opencv_legacy249d.lib

opencv_objdetect249d.lib

opencv_ts249d.lib

opencv_video249d.lib

opencv_nonfree249d.lib

opencv_ocl249d.lib

opencv_photo249d.lib

opencv_stitching249d.lib

opencv_superres249d.lib

opencv_videostab249d.lib

opencv_objdetect249.lib

opencv_ts249.lib

opencv_video249.lib

opencv_nonfree249.lib

opencv_ocl249.lib

opencv_photo249.lib

opencv_stitching249.lib

opencv_superres249.lib

opencv_videostab249.lib

opencv_calib3d249.lib

opencv_contrib249.lib

opencv_core249.lib

opencv_features2d249.lib

opencv_flann249.lib

opencv_gpu249.lib

opencv_highgui249.lib

opencv_imgproc249.lib

opencv_legacy249.lib

opencv_ml249.lib

复制这一堆。

然后运行。

找不到:

gcgraph.hpp

就是缺少目录的事情。

这样我们只要找到路径就可以了。这个路径确实比较难找,有需要的话我可以帮助找一下。但是其实也并不难,最重要的是相信自己可以解决这很重要。

现加上我们看看能不能跑通。<插曲>之所以加上这个目录是因为:

在precomp.hpp 里面include的目录除了<> 系统目录,都是当前路径下的文件,而他们都在包含目录里面进行的添加,所以如法炮制,加上了opencv里面的这个头文件。然后把程序找到这个目录。

运行

这个就是怎么也跑不出来了.

所以拿上一版试出来的,来展示这个成果:

那个时候的名字还叫做testmosic

生成这样一个文件:

插曲:

出现问题

1>------ 已启动生成:  项目: trymosic, 配置: Debug Win32 ------

1>MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用

1>F:\code4vs\trymosic\Debug\trymosic.exe : fatal error LNK1120: 1 个无法解析的外部命令

========== 生成:  成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

根据度娘教程:

http://jingyan.baidu.com/article/d621e8da0d7c022864913f40.html

将

改成:

导致问题生了小问题:

1>------ 已启动生成:  项目: trymosic, 配置: Debug Win32 ------

1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用

1>F:\code4vs\trymosic\Debug\trymosic.exe : fatal error LNK1120: 1 个无法解析的外部命令

========== 生成:  成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

度娘后的结果是要我再改回去。。。

蒙蔽了。。。

这程序本就没入口啊~~~,需要我们生成一个:

控制台应用程序。

就是理论上,插曲这部分出现之前,程序应该是编译通过的。

经过一番努力发现就是没有函数入口,如果发现反复要求变更控制台跟窗口,那么说明函数真的缺少入口。所以现在想到的办法就是重新提取一下opencv。再做一次尝试

opencv中stitching_detail的运行的更多相关文章

  1. 解析opencv中Box Filter的实现并提出进一步加速的方案(源码共享)。

    说明:本文所有算法的涉及到的优化均指在PC上进行的,对于其他构架是否合适未知,请自行试验. Box Filter,最经典的一种领域操作,在无数的场合中都有着广泛的应用,作为一个很基础的函数,其性能的好 ...

  2. 【OpenCV】OpenCV中GPU模块使用

    CUDA基本使用方法 在介绍OpenCV中GPU模块使用之前,先回顾下CUDA的一般使用方法,其基本步骤如下: 1.主机代码执行:2.传输数据到GPU:3.确定grid,block大小: 4.调用内核 ...

  3. 图像金字塔及其在 OpenCV 中的应用范例(下)

    前言 本文将主要讲解如何使用 OpenCV 实现图像分割,这也是图像金字塔在 OpenCV 中的一个重要应用. 关于图像分割 在计算机视觉领域,图像分割(Segmentation)指的是将数字图像细分 ...

  4. opencv中的Bayes分类器应用实例

    转载:http://blog.csdn.net/yang_xian521/article/details/6967515 PS:很多时候,我们并不需要特别精通某个理论,而且有的时候即便你非常精通,但是 ...

  5. 立体视觉-opencv中立体匹配相关代码

    三种匹配算法比较 BM算法: 该算法代码: view plaincopy to clipboardprint? CvStereoBMState *BMState = cvCreateStereoBMS ...

  6. Windows7 32位机上,OpenCV中配置GPU操作步骤

    1.  查看本机配置,查看显卡类型是否支持NVIDIA GPU: 2.  从http://www.nvidia.cn/Download/index.aspx?lang=cn下载最新驱动并安装: 3.  ...

  7. OpenCV中的SVM參数优化

    SVM(支持向量机)是机器学习算法里用得最多的一种算法.SVM最经常使用的是用于分类,只是SVM也能够用于回归,我的实验中就是用SVM来实现SVR(支持向量回归). 对于功能这么强的算法,opencv ...

  8. Windows7 64位机上,OpenCV中配置CUDA,实现GPU操作步骤

    原文地址:http://blog.csdn.net/haorenka2010/article/details/24385955 按语:首先感谢http://blog.csdn.net/fengbing ...

  9. 让opencv程序在没有安装opencv的电脑上运行

    经常需要把用opencv写的程序拿到没有装opencv的电脑上去运行和演示,要让opencv程序脱离opencv环境,一般有两种方法: 一种是动态链接opencv,即把相应的dll拷贝到exe所在目录 ...

随机推荐

  1. HDU 5534 Partial Tree 完全背包

    一棵树一共有2*(n-1)度,现在的任务就是将这些度分配到n个节点,使这n个节点的权值和最大. 思路:因为这是一棵树,所以每个节点的度数都是大于1的,所以事先给每个节点分配一度,答案 ans=f[1] ...

  2. [Tommas] 测试用例覆盖率(二)

    二.详细用例的设计 划分好了测试项,接着就是针对各个测试项,考虑具体的测试用例了.根据测试项的特点,测试用例的设计角度也有所不同.下面我们就来看看通常的功能点测试用例,该从哪些角度出发来进行设计: 1 ...

  3. js自定义排序

    摘要 有个js对象数组 var ary=[{id:1,name:"b"},{id:2,name:"b"}] 需求是根据name 或者 id的值来排序,这里有个风 ...

  4. hive 配置mysql元数据库

    在 hive的配置文件hive-site.xml中 <?xml version="1.0"?> <!-- Licensed to the Apache Softw ...

  5. xhtml知识及head部分名词解

    W3C: World Wide Web Con??? DTD: Document Type Defination DOCTYPE:Document Type meta:????? http-equiv ...

  6. NOIP 2014 无线网络发射器选址

    水题..直接暴力 #include<cstdio> #include<algorithm> using namespace std; const int inf = 0x3f3 ...

  7. Struts2.x jsp页面无法使用jsp:forward跳转到action

    问题:使用<jsp:forward page="test"></jsp:forward>语句无法跳转到test所对应的action. 解决办法:在web.x ...

  8. 曝光卖假币的店铺和旺旺ID

    1:店铺名称:九玖邮币 掌柜ID:九玖邮币[此人较贼,价格只比我们低一点,图用的不太清晰的,或者直接用真品图,而且卖假币卖到2钻了,很多人上当了.]1.5 店铺名称:聚鑫钱币 掌柜ID:聚鑫钱币 [1 ...

  9. 荔枝FM架构师刘耀华:异地多活IDC机房架构 - 极客头条 - CSDN.NET

    荔枝FM架构师刘耀华:异地多活IDC机房架构 - 极客头条 - CSDN.NET 荔枝FM架构师刘耀华:异地多活IDC机房架构 - 极客头条 - CSDN.NET 途牛谭俊青:多数据中心状态同步&am ...

  10. 如何把匿名类型.GetType()返回的对象传进泛型里面[转]

    //怎么取得匿名类型的Type放到 //泛型T当中?? var 匿名 = new { A = 0, B = 1 }; Type t = 匿名.GetType(); //然后下面 var xx = db ...