一、 前提准备

安装环境:Win10(ver1903)+ VS2017(ver15.0)+ OPENCV(ver4.3.0)

0.ViSP官方教程文档:https://visp-doc.inria.fr/doxygen/visp-daily/index.html
选择从源代码安装: Tutorials for ViSP users-> Installation from source-> Tutorial: Installation from source for Windows with Visual C++ 2017 (vc15)

1.VS2017社区版
https://www.visualstudio.com/downloads/
注意:
工作负荷:使用C ++进行桌面开发,使用.net进行桌面开发。
组件:除建议外,Windows 10 SDK全选。

2.CMake
https://cmake.org/download/
选最新版本的cmake-X.XX.X-win64-x64.msi

3.GIT
https://git-for-windows.github.io/
选最新版本
若github无法直连,可以科学上网或者利用手机开4G热点
Git-X.XX.X-64-bit

4.opencv
http://opencv.org/releases.html
这里选用4.3.0,点击windows图标下载。

二、 基本安装方法

直接利用官方文档里面的命令行去做。

步骤如下。

1.快捷键win+r,输入cmd,并运行。(进入dos命令行)

输入如下命令并点击回车

setx VISP_WS "C:\visp-ws"
exit

2.再次进入cmd,输入如下命令并回车。

mkdir %VISP_WS%
exit

3.再次进入cmd,输入如下命令并回车

cd %VISP_WS%git clone https://github.com/lagadic/visp.git
 (输入之后等待下载完毕再输入下一条)
cmake -G "Visual Studio 15 2017" -A "x64" %VISP_WS%\visp        cmake --build . --config Release --target install

(同上)

setx Path "%Path%:%VISP_WS%\visp-build-vc15\install\x64\vc15\bin"exit

此处可能设置不成功,见后面常见问题部分。

4.再次进入cmd,输入如下命令并回车

setx VISP_DIR "%VISP_WS%\visp-build-vc15\install"exit

5.安装opencv。


将文件夹改名为opencv-4.3.0
再次进入cmd,输入如下命令并回车

setx OpenCV_DIR "%VISP_WS%\opencv-4.3.0\build"
exit

然后修改环境变量。我的电脑->右键->属性->高级系统设置->环境变量->path
添加一条C:\visp-ws\opencv-4.3.0\build\x64\vc15\bin

再次进入cmd,输入如下命令并回车

cd %VISP_WS%
cmake -G "Visual Studio 15 2017" -A "x64" %VISP_WS%\visp        cmake --build . --config Release --target install

6.测试代码

准备文件。

打开教程网页。
Tutorials for ViSP users-> Getting started-> Tutorial: How to create and build a project that uses ViSP and CMake on Unix or Windows

翻到Advanced getting started。

在任意位置新建一个文件夹。打开之后,打开vs2017新建一个.cpp文件,复制网页中的Get tutorial-viewer.cpp file的代码,并保存为tutorial-viewer.cpp。

#include <visp3/gui/vpDisplayD3D.h>
#include <visp3/gui/vpDisplayGDI.h>
#include <visp3/gui/vpDisplayGTK.h>
#include <visp3/gui/vpDisplayOpenCV.h>
#include <visp3/gui/vpDisplayX.h>
#include <visp3/io/vpImageIo.h>
int main(int argc, char **argv)
{if (argc != 2) {printf("Usage: %s <image name.[pgm,ppm,jpeg,png,tiff,bmp,ras,jp2]>\n", argv[0]);return -1;}vpImage<vpRGBa> I;try {vpImageIo::read(I, argv[1]);} catch (...) {std::cout << "Cannot read image \"" << argv[1] << "\"" << std::endl;return -1;}try {#if defined(VISP_HAVE_X11)vpDisplayX d(I, vpDisplay::SCALE_AUTO);
#elif defined(VISP_HAVE_GDI)vpDisplayGDI d(I, vpDisplay::SCALE_AUTO);
#elif defined(VISP_HAVE_OPENCV)vpDisplayOpenCV d(I, vpDisplay::SCALE_AUTO);
#elif defined(VISP_HAVE_GTK)vpDisplayGTK d(I, vpDisplay::SCALE_AUTO);
#elif defined(VISP_HAVE_D3D9)vpDisplayD3D d(I, vpDisplay::SCALE_AUTO);
#elsestd::cout << "No image viewer is available..." << std::endl;
#endifvpDisplay::setTitle(I, "My image");vpDisplay::display(I);vpDisplay::flush(I);std::cout << "A click to quit..." << std::endl;vpDisplay::getClick(I);} catch (const vpException &e) {std::cout << "Catch an exception: " << e << std::endl;}
}

新建一个txt文档,命名为CMakeLists.txt,打开文档复制下面的内容进去并保存。

project(tutorial-image)
cmake_minimum_required(VERSION 2.8)
find_package(VISP REQUIRED)
include_directories(${VISP_INCLUDE_DIRS})
add_executable(tutorial-viewer tutorial-viewer.cpp)
target_link_libraries(tutorial-viewer ${VISP_LIBRARIES})

打开cmd命令行,输入如下命令

C:\> xcopy /E /I %VISP_WS%\visp\tutorial\image %VISP_WS%\image

然后在C:\visp-ws\image中找到monkey.ppm复制粘贴到自己新建的文件夹。
这样自己新建的文件夹里就有tutorial-viewer.cpp和CMakeLists.txt以及monkey.ppm三个文件
Cmake进行编译。


上边是自己新建文件夹的位置。下面,在自己的文件夹新建一个build文件夹。


注意选择VS2017和x64.点击finish
之后点击configure。出现红线后再点击configure。最后点击generate。
此时build文件夹已经生成.SLN文件。打开进入VS2017.

选择release以及x64,然后设置.CPP文件为启动项

之后选择选项卡:生成-生成tutorial-viewer。该文件位于build文件夹的release文件夹中。同时把monkey.ppm这个图片文件复制到该文件夹内。
将monkey.ppm拖到tutorial-viewer.exe上,测试程序。
结果如图。

三、 常见问题。

1.第二部分里的步骤3:
Git clone指令处:由于部分网络运营商无法直连github,可能造成无法下载。
可以选择切换4G等可以直连github的网络条件。也可以科学上网。
但需要注意:ssr等代理工具可能占用443端口,需要在git中设置一下使用全局代理。Git指令如下。
设置代理:

git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'

查看代理:

git config --global --get http.proxy
git config --global --get https.proxy

取消代理:

git config --global --unset http.proxy
git config --global --unset https.proxy

setx Path "%Path%:%VISP_WS%…处:

此处由于cmd只能处理短字节指令,因此此处可能设置不成功,需要手动设置环境变量。
我的电脑->右键->属性->高级系统设置->环境变量->path
添加一条C:\visp-ws\visp-build-vc15\install\x64\vc15\bin

测试示例代码时:
如果测试的是Quick getting started或者Advanced getting started,可能会因为ViSP自带的显示程序(即所谓的vsDisplayGDI这个API)和系统提供的win10 sdk不兼容造成程序闪退,此时的解决办法是采用第三方库opencv的GDI。(在ViSP的开发者论坛里,维护小组的建议也是如此)。这也就是这个教程为什么讲到了OPENCV第三方库的安装,就是为了调用vpDisplayOpenCV这个API去代替ViSP的原生显示程序。
解决办法:在Advanced getting started的Get tutorial-viewer.cpp代码中做如下修改:
删去该行

#elif defined(VISP_HAVE_GDI)
vpDisplayGDI d(I, vpDisplay::SCALE_AUTO);

此时

#elif defined(VISP_HAVE_OPENCV)

这一行应该被识别,从而变成彩色。
然后重新对项目进行编译即可。

ViSP学习:一、ViSP的快速安装。相关推荐

  1. Docker 快速安装搭建 Ngnix 环境,并配置反向代理

    欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

  2. VISP学习:二、Visp的手动安装

    一. 简要说明 可能有的同学在快速安装之后已经注意到了,原生GDI的调用依然遇到问题.比如某些不能指定显示支持的类和api,无法指定使用opencv的显示框架.所以此处采用手动安装的方法禁用GDI,以 ...

  3. ViSP学习笔记(一):Ubuntu环境下ViSP安装

    开发环境:Unbuntu 18.04 LTS + ROS Melodic + ViSP 3.3.1 文章内容主要参考ViSP官方教学文档:https://visp-doc.inria.fr/doxyg ...

  4. ViSP学习笔记(三):新建Visp工程并使用CMake完成编译

    开发环境:Unbuntu 18.04 LTS + ROS Melodic + ViSP 3.3.1 文章内容主要参考ViSP官方教学文档:https://visp-doc.inria.fr/doxyg ...

  5. 【 ViSP(1) - Linux Melodic 源码安装 ViSP】

    Linux Melodic 源码安装 ViSP Linux Melodic 源码安装 ViSP 1. ViSP 简介 2. 源码安装 2.1 Required packages 需要的安装包 2.2 ...

  6. Ubuntu18.04环境下visp、visp_ros、vision_visp手动安装完整指南

      visp全称是visual servoing platform,是一个可以用于开发视觉跟踪和视觉伺服技术的库.其能够计算机器人的控制律,提供多种可用于追踪的视觉特征,更多的信息可以去官网查看.vi ...

  7. ViSP学习笔记(二十五):基于图像的视觉伺服

    开发环境:Ubuntu 18.04 LTS + ROS Melodic + ViSP 3.3.1 文章内容主要参考ViSP官方教学文档:https://visp-doc.inria.fr/doxyge ...

  8. 学习PHP7如何快速安装WEB服务器

    文章作者:Lccee 原创说明:欢迎转载,注明出处即可 如何安装web服务器? 学习php7需要安装web服务器,那么新手如何快速安装web服务器 首先我们来简单了解一下,什么叫web服务器 在了解什 ...

  9. c++入门代码_Golang Gin 实战(一)| 快速安装入门

    Golang Gin 实战(一)| 快速安装入门 Gin 是一个非常优秀的Golang Web Framework,它不光API友好,性能也非常高,并且设计简洁,便于入门.所以它(Gin)非常受欢迎, ...

  10. ubuntu eclipse java,Ubuntu快速安装eclipse

    Ubuntu快速安装eclipse教程,供大家参考,具体内容如下 1.先安装jdk,详情见链接 2.下载eclipse.tar.gz安装包(官网下载) 3.把下载好的安装包复制到/usr目录下 先cd ...

最新文章

  1. FPGA的设计艺术(5)STA实战之时钟偏斜对建立保持时间的影响以及时序报告分析
  2. netty 对 protobuf 协议的解码与包装探究(2)
  3. mongodb 存储过程 java_Java面试题分享-MongoDB
  4. ASP.NET Core 2.1 : 十五.图解路由(2.1 or earler)
  5. [2dPIC调试笔记]初始化变量1014(2)
  6. LeetCode 147. 对链表进行插入排序(链表)
  7. iBatis——执行原理
  8. JavaScript的类型自动转换高级玩法JSFuck
  9. 8.2-HSRP 第二次:重新搭建拓扑 //IOU
  10. HDU2200 Eddy's AC难题【组合计算】
  11. 称重传感器并联后的误差及附加误差
  12. 不使用手机代理,进行手机抓包
  13. 汉字unicode编码范围
  14. MapGuide应用开发系列(11)----创建自己的第一个MapGuide应用程序
  15. 华为安装gsm框架_华为mate30怎么安装谷歌服务?华为mate30系列安装GMS框架图文教程...
  16. 传奇客户端小地图上的文字描述修改方法
  17. VUE 动态响应的实现
  18. GNSS/INS组合导航(九):三维简化的INS/GPS组合导航系统
  19. 中级微观经济学笔记整理
  20. 计算机学硕专硕数学,考研常识:五类数学的区别

热门文章

  1. java traits,java traits还是mixins模式?
  2. CIFAR-10 数据集可视化详细讲解(附代码)
  3. 11月16日实验报告
  4. java 清空scanner_Java Scanner reset()用法及代码示例
  5. Java函数式编程入门之Function<T,R>接口
  6. java装箱问题_三维装箱问题Java代码的简单实现过程
  7. 2020软件工程夏令营分享贴
  8. c#俄罗斯方块视频教程下载地址[陈广老师]
  9. 看陈广老师c#参考视频总结(第八篇)
  10. 看陈广老师c#参考视频总结(第十篇 完)